whatthewhat 1.0

2014-02-17 Thread Doug Hellmann
whatthewhat 1.0

   [1]whatthewhat is a tool for launching a Google search for exceptions
   from Python apps. It was inspired by some comments [2]Lynn Root made
   about teaching new developers that it is OK to search for error
   messages as part of learning about Python and programming in general.

References

   1. https://pypi.python.org/pypi/whatthewhat
   2. https://twitter.com/roguelynn

-- 
https://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations/


Re: Explanation of list reference

2014-02-17 Thread Steven D'Aprano
On Sun, 16 Feb 2014 22:28:23 -0500, Roy Smith wrote:

 So when does code become data? When it's represented by an object.
 
 OK, now take somebody who knows lisp and try to explain to him or her
 why Python's eval() doesn't mean data is code.  Yeah, I know that's
 pushing things a bit, but I'm trying to point out that people come into
 things with pre-conceived notions that are hard to shake (the psychology
 of learning people would call this the Law of Primacy).


There are ways to treat code as values:

- you can use a string (an object/value) representing source code;

- you can create a code object using compile(), passing it a string;

- you can eval or exec on a string or a code object;

- you can extract bits and pieces of function objects;

and possibly others.

But, and I think this is critical, you can't evaluate source code 
directly in Python. You can only do so indirectly, after creating some 
sort of object: a string, a code object, a function, etc. There is always 
an intermediate step: first, create a string object, then treat it as 
code. There's no functionality in Python for taking source code directly 
*as source code* and treating it as a value:

function(import this)

doesn't work, because `import this` is not a value that can be passed to 
the function. You have to make it a string first:

function(import this)


The Python compiler can check the syntax of actual source code at compile 
time, but it can't do anything about mock source code until runtime when 
you pass it to exec, eval or compile. That's because until that moment, 
it's just a string of characters, not source code.




-- 
Steven
-- 
https://mail.python.org/mailman/listinfo/python-list


Does CPython already has Peephole optimizations?

2014-02-17 Thread Laxmikant Chitare
Hello All,

I read about this article:
http://www.python.org/workshops/1998-11/proceedings/papers/montanaro/montanaro.html

Just wanted to clarify whether CPython already includes these kind of byte
code optimizations? Are all the temporary variables removed when byte code
is generated?

Regards,
Laxmikant
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Does CPython already has Peephole optimizations?

2014-02-17 Thread Peter Otten
Laxmikant Chitare wrote:

 Hello All,
 
 I read about this article:
 
http://www.python.org/workshops/1998-11/proceedings/papers/montanaro/montanaro.html
 
 Just wanted to clarify whether CPython already includes these kind of byte
 code optimizations? Are all the temporary variables removed when byte code
 is generated?

You can find out for yourself:

Python 3.4.0rc1+ (default:2ba583191550+, Feb 12 2014, 00:08:44) 
[GCC 4.6.1] on linux
Type help, copyright, credits or license for more information.
 import dis
 def f():
... a, b, c = 1, 2, 3
... 
 dis.dis(f)
  2   0 LOAD_CONST   4 ((1, 2, 3))
  3 UNPACK_SEQUENCE  3
  6 STORE_FAST   0 (a)
  9 STORE_FAST   1 (b)
 12 STORE_FAST   2 (c)
 15 LOAD_CONST   0 (None)
 18 RETURN_VALUE
 def g():
... q = 2 + 3j
... 
 dis.dis(g)
  2   0 LOAD_CONST   3 ((2+3j))
  3 STORE_FAST   0 (q)
  6 LOAD_CONST   0 (None)
  9 RETURN_VALUE

If you can read C there is also

http://hg.python.org/cpython/file/180e4b678003/Python/peephole.c

-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Does CPython already has Peephole optimizations?

2014-02-17 Thread Steven D'Aprano
On Mon, 17 Feb 2014 13:54:25 +0530, Laxmikant Chitare wrote:

 I read about this article:
 http://www.python.org/workshops/1998-11/proceedings/papers/montanaro/
montanaro.html
 
 Just wanted to clarify whether CPython already includes these kind of
 byte code optimizations? Are all the temporary variables removed when
 byte code is generated?


You can check these things for yourself:

import dis
dis.dis(function)


will show you the byte code.

But in general, I would expect not. CPython (that's the Python you 
probably use) doesn't do a lot of optimization apart from some simple 
constant folding. If you're interested in optimizing Python, you should 
look at the JIT optimizing Python compiler, PyPy.


-- 
Steven
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Python version problem for rpm

2014-02-17 Thread Mark Lawrence

On 17/02/2014 06:00, anju tiwari wrote:


Hi all,

I have two version of python 2.4 and 2.7.

By default python version is 2.4 . I want to install need to install
some rpm
which needs python 2.7 interpreter. how can I enable 2.7 interpreter for
only those
packages which are requiring python 2.7, I don’t want to change my
default python version(2.4).
--
ANJU TIWARI...




Please refer to the answer Dave Angel gave you to the same question you 
posed three days ago.


--
My fellow Pythonistas, ask not what our language can do for you, ask 
what you can do for our language.


Mark Lawrence

---
This email is free from viruses and malware because avast! Antivirus protection 
is active.
http://www.avast.com


--
https://mail.python.org/mailman/listinfo/python-list


Re: How to use logging

2014-02-17 Thread Mark Lawrence

On 17/02/2014 07:37, kumar wrote:

Hi folks,

 i'm new to python i understood the logging mechanism but unable to 
understand how these are applied in real time examples can any body help me out



Start here http://docs.python.org/3/howto/logging.html, if that's not 
good enough please come back with a more detailed question, I'm certain 
that someone will be able to help you.


Slight aside you appear to be using google groups.  If that is the case 
would you read and action this 
https://wiki.python.org/moin/GoogleGroupsPython to prevent the problems 
that gg causes.  if not sorry about the noise :)


--
My fellow Pythonistas, ask not what our language can do for you, ask 
what you can do for our language.


Mark Lawrence

---
This email is free from viruses and malware because avast! Antivirus protection 
is active.
http://www.avast.com


--
https://mail.python.org/mailman/listinfo/python-list


[OT]Internet Trolls Really Are Horrible People

2014-02-17 Thread Mark Lawrence

http://www.slate.com/articles/health_and_science/climate_desk/2014/02/internet_troll_personality_study_machiavellianism_narcissism_psychopathy.html

Dedicated to all trolls everywhere.

--
My fellow Pythonistas, ask not what our language can do for you, ask 
what you can do for our language.


Mark Lawrence

---
This email is free from viruses and malware because avast! Antivirus protection 
is active.
http://www.avast.com


--
https://mail.python.org/mailman/listinfo/python-list


Re: Does CPython already has Peephole optimizations?

2014-02-17 Thread Ned Batchelder

On 2/17/14 3:59 AM, Steven D'Aprano wrote:

On Mon, 17 Feb 2014 13:54:25 +0530, Laxmikant Chitare wrote:


I read about this article:
http://www.python.org/workshops/1998-11/proceedings/papers/montanaro/

montanaro.html


Just wanted to clarify whether CPython already includes these kind of
byte code optimizations? Are all the temporary variables removed when
byte code is generated?



You can check these things for yourself:

import dis
dis.dis(function)


will show you the byte code.

But in general, I would expect not. CPython (that's the Python you
probably use) doesn't do a lot of optimization apart from some simple
constant folding. If you're interested in optimizing Python, you should
look at the JIT optimizing Python compiler, PyPy.




CPython does some constant folding, and also jump optimizations.  In my 
role as coverage.py maintainer, I would love to see a way to disable all 
those optimizations.  I tried filing a bug about it 
(http://bugs.python.org/issue2506), but it did not win the popular 
support I had hoped for.


--
Ned Batchelder, http://nedbatchelder.com

--
https://mail.python.org/mailman/listinfo/python-list


Import order question

2014-02-17 Thread Nagy László Zsolt

I have a class hierarchy like this:

Widget - VisualWidget - BsWidget

and then BsWidget has many descendants: Desktop, Row, Column, Navbar etc.

Widgets can have children. They are stored in a tree. In order to manage 
the order of widgets, I need methods to append children. (And later: 
insert or prepend because they also have an order). So I would like to 
have methods like this:


BsWidget.AppendNavbar()
BsWidget.AppendRow(...)

Here is the problem: these methods should create instances of Row, 
Column and Navbar. But this leads to circular imports.


Here is code for BsWidget:

from shopzeus.yaaf.ui.visualwidget import VisualWidget

from shopzeus.yaaf.ui.bootstrap.row import Row
from shopzeus.yaaf.ui.bootstrap.column import Column
from shopzeus.yaaf.ui.bootstrap.navbar import Navbar

class BsWidget(VisualWidget):
Visual widget for bootstrap.

Adds extra methods for adding/removing content like rows columnsetc.
def __init__(self,parent):
more code here

def AppendRow(self):
return Row(self)

def AppendColumn(self):
return Row(self)

def PrependRow(self):
return Row(self,position=-1)

more code here


Here is code for ClassX (where ClassX can be: Row, Column, Desktop, 
Navbar etc.):


from shopzeus.yaaf.ui.bootstrap.bswidget import BsWidget
more imports here

class ClassX(BsWidget):
more code here

The circular import is as follows:

 * I want to create a Desktop instance
 * I try to import shopzeus.yaaf.ui.bootstrap.desktop
 * That tries to import BsWidget
 * That tries to import Row
 * That tries to import BsWidget, which is importing - I get an
   ImportError: cannot import name BsWidger

Of course, instead of AppendRow() method I could just use this pattern:

from shopzeus.yaaf.ui.bootstrap.desktop import Desktop
from shopzeus.yaaf.ui.bootstrap.row import Row

desktop = Desktop(None)
row = Row(desktop)

However, I really want to avoid this, because there will be at least 100 
different widget classes. For a usual UI, I would have to use many of 
them and then I would have to start any UI builder code like this:


from shopzeus.yaaf.ui.bootstrap.class1 import Class1
from shopzeus.yaaf.ui.bootstrap.class2 import Class2
...
from shopzeus.yaaf.ui.bootstrap.class100 import Class100

Most of the UI building code should look like this instead:

with self.desktop.AddRow() as row:
with row.AddColumn() as col1:

with row.AddColumn() as col2:


The child can only be created with its parent anyway, and UI building 
code will have to focus of the strucutre of the UI. So to me, it seems 
logical to create children using methods of the parent. But how do I 
avoid circular imports and achieve my goal at the same time?


Here are my expectations:

 * I want to put different widget classes into their corresponding
   different source files
 * I want to have a base class (BsWidget) with methods that can
   prepend/append/insert all kinds of other subclasses
 * I do NOT want to import all classes of all used widgets in UI
   building code, just use the above methods

This might be a bad idea, but then please tell me why it is bad, and 
what would be the right code pattern for this task.


Thanks,

   Laszlo


-- 
https://mail.python.org/mailman/listinfo/python-list


Re: select(sock) indicates not-ready, but sock.recv does not block

2014-02-17 Thread Roy Smith
In article mailman.7083.1392618926.18130.python-l...@python.org,
 Nikolaus Rath nikol...@rath.org wrote:

 Hello,
 
 I have a problem with using select. I can reliably reproduce a situation
 where select.select((sock.fileno(),), (), (), 0) returns ((),(),())
 (i.e., no data ready for reading), but an immediately following
 sock.recv() returns data without blocking.
 
 I am pretty sure that this is not a race condition. The behavor is 100%
 reproducible, the program is single threaded, and even waiting for 10
 seconds before the select() call does not change the result.
 
 I'm running Python 3.3.3 under Linux 3.12.
 
 Has anyone an idea what might be going wrong here?
 
 Thanks,
 -Nikolaus

Can you post the code which demonstrates this?

Also, with any kind of networking problem, tcpdump is your fried.  When 
you run your code, use tcpdump to watch all the network traffic on 
whatever port your socket is bound to.  That might give you some clues 
what's going on.

Likewise, I would also strace the process and watch all the network 
system calls.  The problem you're describing might be unexpected 
behavior in Python, or it might be in the kernel.  Watching the actual 
system calls that are generated will narrow it down to which.
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Import order question

2014-02-17 Thread Ben Finney
Nagy László Zsolt gand...@shopzeus.com writes:

 I have a class hierarchy like this:

 Widget - VisualWidget - BsWidget

 and then BsWidget has many descendants: Desktop, Row, Column, Navbar
 etc.

None of this implies anything about which modules you place these in;
Python is not Java, and you should be putting your class definitions
wherever makes the most sense for reading and access.

 Here is the problem: these methods should create instances of Row,
 Column and Navbar. But this leads to circular imports.

It should not; Python is not Java.

Use modules to group your class definitions conceptually. There is no
need whatever to separate every class into a different module.

  * I want to put different widget classes into their corresponding
different source files

Please, don't.

 This might be a bad idea, but then please tell me why it is bad, and
 what would be the right code pattern for this task.

Not only does it lead to the problem you've described, it makes the code
needlessly difficult to read.

Pyth is not Java
URL:http://dirtsimple.org/2004/12/python-is-not-java.html.

-- 
 \   “I do not believe in forgiveness as it is preached by the |
  `\church. We do not need the forgiveness of God, but of each |
_o__)other and of ourselves.” —Robert G. Ingersoll |
Ben Finney

-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Import order question

2014-02-17 Thread Peter Otten
Nagy László Zsolt wrote:

 I have a class hierarchy like this:
 
 Widget - VisualWidget - BsWidget
 
 and then BsWidget has many descendants: Desktop, Row, Column, Navbar etc.
 
 Widgets can have children. They are stored in a tree. In order to manage
 the order of widgets, I need methods to append children. (And later:
 insert or prepend because they also have an order). So I would like to
 have methods like this:
 
 BsWidget.AppendNavbar()
 BsWidget.AppendRow(...)
 
 Here is the problem: these methods should create instances of Row,
 Column and Navbar. But this leads to circular imports.
 
 Here is code for BsWidget:
 
 from shopzeus.yaaf.ui.visualwidget import VisualWidget
 
 from shopzeus.yaaf.ui.bootstrap.row import Row
 from shopzeus.yaaf.ui.bootstrap.column import Column
 from shopzeus.yaaf.ui.bootstrap.navbar import Navbar
 
 class BsWidget(VisualWidget):
  Visual widget for bootstrap.
 
  Adds extra methods for adding/removing content like rows
  columnsetc. def __init__(self,parent):
  more code here
 
  def AppendRow(self):
  return Row(self)
 
  def AppendColumn(self):
  return Row(self)
 
  def PrependRow(self):
  return Row(self,position=-1)
 
  more code here
 
 
 Here is code for ClassX (where ClassX can be: Row, Column, Desktop,
 Navbar etc.):
 
 from shopzeus.yaaf.ui.bootstrap.bswidget import BsWidget
 more imports here
 
 class ClassX(BsWidget):
  more code here
 
 The circular import is as follows:
 
   * I want to create a Desktop instance
   * I try to import shopzeus.yaaf.ui.bootstrap.desktop
   * That tries to import BsWidget
   * That tries to import Row
   * That tries to import BsWidget, which is importing - I get an
 ImportError: cannot import name BsWidger

Hm, is that cut-and-paste? If so fix the name. If that doesn't work use 
qualified names:

from shopzeus.yaaf.ui.bootstrap import row

[...]
 def AppendRow(self):
 return row.Row(self)

If that still doesn't work follow Ben's advice and be enlightened...

-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Explanation of list reference

2014-02-17 Thread Rustom Mody
On Monday, February 17, 2014 12:01:18 PM UTC+5:30, Steven D'Aprano wrote:
 I take it that you haven't spent much time around beginners? Perhaps you 
 should spend some time on the tutor mailing list. If you do, you will 
 see very few abstract or philosophical questions such as whether 
 references are themselves things or what identity means. But you will 
 find plenty of questions about:

 - Will you do my homework for me?

Right
And what that 'homework' consists of is determined by the educational
context of the questioner.
'Teacher' is of course a big but hardly exclusive part of that
'Syllabus-setters' (who can be more clueless than teachers) are another
'Other attendant factors' big one being programming language.

Hang out on a Haskell list and you will get questions about
- category theory
- typesystems
- structural induction

and so on and so forth

Does that mean Haskell is better than Python?

That depends on which side of the balance-sheet is plus for you.
For some getting the job done with a minimum of heavy-duty concepts is a plus
For some lots of profound concepts is wonderful

Basic to python philosophy is to get people off to a running start quickly.
If NOT starting until you/your ward have mulled on some profundity is your thing
then python is not for you
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Does CPython already has Peephole optimizations?

2014-02-17 Thread Terry Reedy

On 2/17/2014 3:59 AM, Steven D'Aprano wrote:

On Mon, 17 Feb 2014 13:54:25 +0530, Laxmikant Chitare wrote:


I read about this article:
http://www.python.org/workshops/1998-11/proceedings/papers/montanaro/

montanaro.html


Just wanted to clarify whether CPython already includes these kind of
byte code optimizations?


Most of the easily seen and obviously safe low-hanging fruits for the 
compile step have been plucked. Note that the effect of the peephole 
process would only save a few percent, if any, for real apps*. Improving 
the C code invoked by bytecode has resulted in much larger gains.


* We now have a much better benchmark suite with some real apps. This is 
thanks in part to the pypy project.



Are all the temporary variables removed when byte code is generated?


You can check these things for yourself:

import dis
dis.dis(function)

will show you the byte code.

But in general, I would expect not. CPython (that's the Python you
probably use) doesn't do a lot of optimization apart from some simple
constant folding. If you're interested in optimizing Python, you should
look at the JIT optimizing Python compiler, PyPy.


For CPython, new optimization has mostly moved to AST tranformations 
prior to compilation. (Python ASTs are new since Skip started the 
peephole work.)  I believe there are some open issues on the tracker.


Once optimization constraint Skip did not mention is the correspondence 
between source lines and blocks of bytecode, which is used by profiling, 
tracing, and tracebacks. Effectively transforming


if type(a) == types.ComplexType:
x = cmath.sin(a)
foo(x)
else:
x = math.sin(a)
foo(x)

into

if type(a) == types.ComplexType:
x = cmath.sin(a)
else:
x = math.sin(a)
foo(x)

breaks the correspondence. If foo(x) raises, which original line should 
be reported as the source of the exception?


--
Terry Jan Reedy

--
https://mail.python.org/mailman/listinfo/python-list


Re: Import order question

2014-02-17 Thread Terry Reedy

On 2/17/2014 8:01 AM, Nagy László Zsolt wrote:

I have a class hierarchy like this:

Widget - VisualWidget - BsWidget

and then BsWidget has many descendants: Desktop, Row, Column, Navbar etc.

Widgets can have children. They are stored in a tree. In order to manage
the order of widgets, I need methods to append children. (And later:
insert or prepend because they also have an order). So I would like to
have methods like this:

BsWidget.AppendNavbar()
BsWidget.AppendRow(...)


I would write one prepend/insert/append method that 
prepends/inserts/appends the widget passed.



Here is the problem: these methods should create instances of Row,
Column and Navbar.


I disagree, without strong justification. Create the instances by 
directly calling the classes and do with them as you want.


--
Terry Jan Reedy


--
https://mail.python.org/mailman/listinfo/python-list


Why is the interpreter is returning a 'reference'?

2014-02-17 Thread Nir
 k = ['hi','boss']

 k
['hi', 'boss']
 k= [s.upper for s in k]
 k
[built-in method upper of str object at 0x021B2AF8, built-in method 
upper of str object at 0x02283F58]

Why doesn't the python interpreter just return
['HI, 'BOSS'] ?

This isn't a big deal, but I am just curious as to why it does this.
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Why is the interpreter is returning a 'reference'?

2014-02-17 Thread Joel Goldstick
On Feb 17, 2014 12:05 PM, Nir nircher...@gmail.com wrote:

  k = ['hi','boss']
 
  k
 ['hi', 'boss']
  k= [s.upper for s in k
S.upper()
  k
 [built-in method upper of str object at 0x021B2AF8, built-in
method upper of str object at 0x02283F58]

 Why doesn't the python interpreter just return
 ['HI, 'BOSS'] ?

 This isn't a big deal, but I am just curious as to why it does this.
 --
 https://mail.python.org/mailman/listinfo/python-list
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Why is the interpreter is returning a 'reference'?

2014-02-17 Thread Ned Batchelder

On 2/17/14 12:00 PM, Nir wrote:

k = ['hi','boss']

k

['hi', 'boss']

k= [s.upper for s in k]
k

[built-in method upper of str object at 0x021B2AF8, built-in method 
upper of str object at 0x02283F58]

Why doesn't the python interpreter just return
['HI, 'BOSS'] ?

This isn't a big deal, but I am just curious as to why it does this.



You have to invoke s.upper, with parens:

k = [s.upper() for s in k]

In Python, a function or method is a first-class object, so s.upper is 
a reference to the method, s.upper() is the result of calling the method.


--
Ned Batchelder, http://nedbatchelder.com

--
https://mail.python.org/mailman/listinfo/python-list


Re: Why is the interpreter is returning a 'reference'?

2014-02-17 Thread emile

On 02/17/2014 09:00 AM, Nir wrote:

k = ['hi','boss']

k

['hi', 'boss']

k= [s.upper for s in k]


s.upper is a reference to the method upper of s -- to execute the method 
add parens -- s.upper()


Emile



k

[built-in method upper of str object at 0x021B2AF8, built-in method 
upper of str object at 0x02283F58]

Why doesn't the python interpreter just return
['HI, 'BOSS'] ?

This isn't a big deal, but I am just curious as to why it does this.




--
https://mail.python.org/mailman/listinfo/python-list


Re: Why is the interpreter is returning a 'reference'?

2014-02-17 Thread Marko Rauhamaa
Nir nircher...@gmail.com:

 k= [s.upper for s in k]
 k
 [built-in method upper of str object at 0x021B2AF8, built-in 
 method upper of str object at 0x02283F58]

 Why doesn't the python interpreter just return
 ['HI, 'BOSS'] ?

Try:

   k = [ s.upper() for s in k ]


Marko
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Why is the interpreter is returning a 'reference'?

2014-02-17 Thread Zachary Ware
On Mon, Feb 17, 2014 at 11:00 AM, Nir nircher...@gmail.com wrote:
 k = ['hi','boss']

 k
 ['hi', 'boss']
 k= [s.upper for s in k]
 k
 [built-in method upper of str object at 0x021B2AF8, built-in 
 method upper of str object at 0x02283F58]

 Why doesn't the python interpreter just return
 ['HI, 'BOSS'] ?

It's just doing exactly what you are telling it to :).  Your list
comprehension is constructing a list consisting of the 'upper' method
(which are themselves objects, able to be passed around just like any
other value) for each string object in list 'k'.  Consider this:

k = ['hi', 'boss']
s = k[0]
s
   'hi'
s.upper  # this just accesses the 'upper' attribute of 's',
which turns out to be its 'upper' method
   built-in method upper of str object at 0xdeadbeef
s.upper() # this actually calls the 'upper' method on 's'
   'HI'

Change your comprehension to actually call the upper method like so:
k = [s.upper() for s in k].  It will do what you expected with that
change.

Hope this helps,

-- 
Zach
-- 
https://mail.python.org/mailman/listinfo/python-list


Getting a stable virtual env

2014-02-17 Thread P J
Hi ppl,

I'm trying to figure out the whole virtualenv story.
Right now I'm using it to creating an environment for our upcoming debian
upgrade to squeeze.

I'm doing some tests in our current distrib (python 2.5).
I have come to realize that a lot of packages in the version I'm interested
in are not available anymore on pypi. The pip installer fails a lot.

Squeeze features python 2.7 so I'm pretty sure that everything will work
fine. I've actually tested it. The question is, how do I protect myself
from future package removal ?
Do I absolutely need to run a local pypi server (I've seen some python
package doing this), and mirror all the packages I'm interested in ?

cheers,

JM
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Getting a stable virtual env

2014-02-17 Thread JM
This one should be in plain text, sorry guys I'm trying to get used to
this new mail address and client.

Hi ppl,

I'm trying to figure out the whole virtualenv story.
Right now I'm using it to creating an environment for our upcoming
debian upgrade to squeeze.

I'm doing some tests in our current distrib (python 2.5).
I have come to realize that a lot of packages in the version I'm
interested in are not available anymore on pypi. The pip installer
fails a lot.

Squeeze features python 2.7 so I'm pretty sure that everything will
work fine. I've actually tested it. The question is, how do I protect
myself from future package removal ?
Do I absolutely need to run a local pypi server (I've seen some python
package doing this), and mirror all the packages I'm interested in ?

cheers,

JM

2014-02-17 14:21 GMT+01:00 P J bobi...@gmail.com:
 Hi ppl,

 I'm trying to figure out the whole virtualenv story.
 Right now I'm using it to creating an environment for our upcoming debian
 upgrade to squeeze.

 I'm doing some tests in our current distrib (python 2.5).
 I have come to realize that a lot of packages in the version I'm interested
 in are not available anymore on pypi. The pip installer fails a lot.

 Squeeze features python 2.7 so I'm pretty sure that everything will work
 fine. I've actually tested it. The question is, how do I protect myself from
 future package removal ?
 Do I absolutely need to run a local pypi server (I've seen some python
 package doing this), and mirror all the packages I'm interested in ?

 cheers,

 JM
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Import order question

2014-02-17 Thread Nagy László Zsolt



Here is the problem: these methods should create instances of Row,
Column and Navbar. But this leads to circular imports.

It should not; Python is not Java.

Use modules to group your class definitions conceptually. There is no
need whatever to separate every class into a different module.
If there is a consensus, and it is really desireable to put all these 
related classes into the same module, then this is what I'm going to do.



This might be a bad idea, but then please tell me why it is bad, and
what would be the right code pattern for this task.

Not only does it lead to the problem you've described, it makes the code
needlessly difficult to read.

Pyth is not Java
URL:http://dirtsimple.org/2004/12/python-is-not-java.html.
This is funny, because I was working for wxPython for years and this 
article is making an example with wxPython. It is one of the best 
toolkits around. Some years ago I wondered why did they not follow PEP8 
and used lower case method names. Then I found out that these are C++ 
wrapper classes, many of them automatically generated from C++ code. So 
that is why.  But by that time I was using captialized method names for 
UI widgets everywhere, and I guess this is my bad habit now. Probably 
when it comes to UI widgets I do not think the Pythonic way for the same 
reason.


I never know when to put classes in different modules. I usually draw an 
UML diagram and group classes into packages. Wich makes sense because 
there can be sub-groups with subpackages. But I'm always confused with 
modules, I don't know why.


Thanks for the help.

--
https://mail.python.org/mailman/listinfo/python-list


Re: Explanation of list reference

2014-02-17 Thread Rotwang

On 17/02/2014 06:21, Steven D'Aprano wrote:

On Mon, 17 Feb 2014 11:54:45 +1300, Gregory Ewing wrote:

[...]

[1] Mathematicians tried this. Everything is a set! Yeah, right...


No, that's okay. You only get into trouble when you have self-referential
sets, like the set of all sets that don't contain themselves.


Actually there's nothing wrong with self-referential sets per se. For 
example set theory with Aczel's anti-foundation axiom instead of the 
axiom of foundation is consistent if ZF is; see e.g.


http://en.wikipedia.org/wiki/Non-well-founded_set_theory

The trouble comes not with self-reference, but with unrestricted 
comprehension.

--
https://mail.python.org/mailman/listinfo/python-list


Re: Import order question

2014-02-17 Thread Dave Angel
 Terry Reedy tjre...@udel.edu Wrote in message:
 On 2/17/2014 8:01 AM, Nagy László Zsolt wrote:
 I have a class hierarchy like this:

 Widget - VisualWidget - BsWidget

 and then BsWidget has many descendants: Desktop, Row, Column, Navbar etc.

 Widgets can have children. They are stored in a tree. In order to manage
 the order of widgets, I need methods to append children. (And later:
 insert or prepend because they also have an order). So I would like to
 have methods like this:

 BsWidget.AppendNavbar()
 BsWidget.AppendRow(...)
 
 I would write one prepend/insert/append method that 
 prepends/inserts/appends the widget passed.
 
 Here is the problem: these methods should create instances of Row,
 Column and Navbar.
 
 I disagree, without strong justification. Create the instances by 
 directly calling the classes and do with them as you want.
 

I agree with Terry,  and will try to justify it. Whenever you have
 a large group of modules recursively importing each other,  you
 need to look hard at the reason. (And saying ' because java does
 it that way' isn't a good enough one).  Chances are things are
 too coupled. 

Your reason is because you have a base class instantiating child
 classes, for most if not all its children.  Problem with that is
 you then need to modify that base class in about 4 places each
 time you add a child class. Very messy.

So how do you avoid modifying the base class?  Have an instance
 passed in, instead,  as Terry implied. 

Now you say you don't want the application code to have to import
 all of those child classes? There are several solutions to that, 
 depending. 

You can make a module which imports each of those, and stores a
 reference to each class.  That becomes the only place to modify
 as new ones are added. 

Or you can have each of these extra modules add its factory
 function to a common list or dict,  either at import time or in a
 once-called function.  That common list could be defined (with
 only the base class in it initially) in the module with the base
 class.

You could even add these methods you're trying to define to the
 base class, by defining them as ordinary functions in the
 corresponding module, and adding the appropriate attribute to the
 base.

Or you could have each new class add itself as a top level module
 attribute to the module you plan for your users to
 import.

Many more choices with various tradeoffs, and the best depends on
 a number of factors not yet discussed.  For example,  do all
 these classes take the same arguments to __init__?  If so, then a
 single factory that takes the class reference as a parameter
 might be useful. 



-- 
DaveA

-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Problem importing libraries installed with PIP in Eclipse

2014-02-17 Thread Fabio Zadrozny
On Sun, Feb 16, 2014 at 11:52 AM, Renato rvernu...@gmail.com wrote:

 It's solved now, oh my god I was so stupid! I created a package named
 pybrain for testing PyBrain module, so obviously when I tryed to import
 something from PyBrain library, Python would import all modules from this
 personal package I created. The problem was not being reproduced outside
 Eclipse because only within Eclipse my personal workstation directory
 (which contained the personal package pybrain) was visible. The solution
 was simple: I just deleted the personal package named pybrain and now
 everything is working. Thank you very much for your help!



Hi Renato,

Nice that you got it working...

Now, just as a heads up, that version of PyDev is quite old (the latest
PyDev release: 3.3.3 is in many ways improved when comparing to older PyDev
versions). I know Aptana Studio still has the older version, so, if you use
mostly Python and you don't need the other features that Aptana Studio
adds, it might be worth going to pure Eclipse + PyDev (or using LiClipse
which also adds support for other languages -- besides being better
configured out of the box, although it's a commercial counterpart of PyDev
-- whose funds help to keep PyDev development going forward).

Cheers,

Fabio
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: How to use logging

2014-02-17 Thread John Gordon
In 5a53c1ca-1104-40f2-9401-a6d3b3673...@googlegroups.com kumar 
arun.achu...@gmail.com writes:

 Hi folks,

 i'm new to python i understood the logging mechanism but unable to
 understand how these are applied in real time examples can any body help
 me out

Here are some very simple examples:

import logging

logging.info('This message will be logged at the INFO level.')
logging.error('This message will be logged at the ERROR level.')
logging.debug('This message will be logged at the DEBUG level.')

Did you need help with some specific aspect of logging, like sending the
output to a file instead of the default destination?

-- 
John Gordon Imagine what it must be like for a real medical doctor to
gor...@panix.comwatch 'House', or a real serial killer to watch 'Dexter'.

-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Why is the interpreter is returning a 'reference'?

2014-02-17 Thread John Gordon
In 9b80c233-ad31-44c8-8a6e-9002ab11b...@googlegroups.com Nir 
nircher...@gmail.com writes:

  k = ['hi','boss']
 
  k
 ['hi', 'boss']
  k= [s.upper for s in k]
  k
 [built-in method upper of str object at 0x021B2AF8, built-in 
 method upper of str object at 0x02283F58]

 Why doesn't the python interpreter just return
 ['HI, 'BOSS'] ?

 This isn't a big deal, but I am just curious as to why it does this.

Because you typed 'str.upper' instead of 'str.upper()'.

-- 
John Gordon Imagine what it must be like for a real medical doctor to
gor...@panix.comwatch 'House', or a real serial killer to watch 'Dexter'.

-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Problem importing libraries installed with PIP in Eclipse

2014-02-17 Thread Renato Vernucio
Hi Fabio,

I wish I could use the latest PyDev, unfortunately I need Aptana studio.
It's a pity they won't let us install individual packages from their
bundle. If they did, I could install only the other packages and install
PyDev separately.

Thanks for your help once again.

Yours,
Renato


2014-02-17 16:07 GMT-03:00 Fabio Zadrozny fabi...@gmail.com:


 On Sun, Feb 16, 2014 at 11:52 AM, Renato rvernu...@gmail.com wrote:

 It's solved now, oh my god I was so stupid! I created a package named
 pybrain for testing PyBrain module, so obviously when I tryed to import
 something from PyBrain library, Python would import all modules from this
 personal package I created. The problem was not being reproduced outside
 Eclipse because only within Eclipse my personal workstation directory
 (which contained the personal package pybrain) was visible. The solution
 was simple: I just deleted the personal package named pybrain and now
 everything is working. Thank you very much for your help!



 Hi Renato,

 Nice that you got it working...

 Now, just as a heads up, that version of PyDev is quite old (the latest
 PyDev release: 3.3.3 is in many ways improved when comparing to older PyDev
 versions). I know Aptana Studio still has the older version, so, if you use
 mostly Python and you don't need the other features that Aptana Studio
 adds, it might be worth going to pure Eclipse + PyDev (or using LiClipse
 which also adds support for other languages -- besides being better
 configured out of the box, although it's a commercial counterpart of PyDev
 -- whose funds help to keep PyDev development going forward).

 Cheers,

 Fabio

-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Import order question

2014-02-17 Thread Ben Finney
Nagy László Zsolt gand...@shopzeus.com writes:

  Use modules to group your class definitions conceptually. There is
  no need whatever to separate every class into a different module.

 If there is a consensus, and it is really desireable to put all these
 related classes into the same module, then this is what I'm going to
 do.

You should use multiple modules to separate the code where it makes
sense, along *conceptual* lines. Make separate modules that each
represent a conceptually-separate area of functionality in your
application, and put the classes which implement that functionality in
that module.

 I never know when to put classes in different modules. I usually draw
 an UML diagram and group classes into packages. Wich makes sense
 because there can be sub-groups with subpackages. But I'm always
 confused with modules, I don't know why.

You can start by making one module for each of those groupings. (The
term “package” already has a specific technical meaning in Python, and
I'm not sure whether that's what you meant here.)

 Thanks for the help.

Welcome to Python!

-- 
 \  “If sharing a thing in no way diminishes it, it is not rightly |
  `\   owned if it is not shared.” —Augustine of Hippo |
_o__)  |
Ben Finney

-- 
https://mail.python.org/mailman/listinfo/python-list


NEW INFORMATION ON HUMAN DEVONIAN ORIGINS

2014-02-17 Thread MAOIST

http://thrinaxodon.wordpress.com/faq/
--
Thrinaxodon, the ultimate defender of USENET.

--
https://mail.python.org/mailman/listinfo/python-list


Re: Google Cloud Platform and GlassSolver Project

2014-02-17 Thread Physics
Does ANYONE have a clue how to do this? I understand that it is hard but geez...
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: NEW INFORMATION ON HUMAN DEVONIAN ORIGINS

2014-02-17 Thread Physics
On Monday, February 17, 2014 7:44:20 PM UTC-5, MAOIST wrote:
 http://thrinaxodon.wordpress.com/faq/
 -- 
 Thrinaxodon, the ultimate defender of USENET.

What
The
HELL?
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: NEW INFORMATION ON HUMAN DEVONIAN ORIGINS

2014-02-17 Thread Chris Angelico
On Tue, Feb 18, 2014 at 11:58 AM, Physics eliasbylar...@gmail.com wrote:
 On Monday, February 17, 2014 7:44:20 PM UTC-5, MAOIST wrote:
 [ link deleted ]
 --
 Thrinaxodon, the ultimate defender of USENET.

 What
 The
 HELL?

These are just spam. Ignore them. And if you must respond, please
remove the link :)

ChrisA
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: select(sock) indicates not-ready, but sock.recv does not block

2014-02-17 Thread Nikolaus Rath
Nikolaus Rath nikol...@rath.org writes:
 Hello,

 I have a problem with using select. I can reliably reproduce a situation
 where select.select((sock.fileno(),), (), (), 0) returns ((),(),())
 (i.e., no data ready for reading), but an immediately following
 sock.recv() returns data without blocking.
[...]

Turns out that I fell into the well-known (except to me) ssl-socket
trap: http://docs.python.org/3/library/ssl.html#notes-on-non-blocking-sockets

TL;DR: Relying on select() on an SSL socket is not a good idea because
some internal buffering is done. Better put the socket in non-blocking
mode and try to read something, catching the ssl.Want* exception if
nothing is ready.

Best,
-Nikolaus

-- 
Encrypted emails preferred.
PGP fingerprint: 5B93 61F8 4EA2 E279 ABF6  02CF A9AD B7F8 AE4E 425C

 »Time flies like an arrow, fruit flies like a Banana.«
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Google Cloud Platform and GlassSolver Project

2014-02-17 Thread Steven D'Aprano
On Mon, 17 Feb 2014 16:57:34 -0800, Physics wrote:

 Does ANYONE have a clue how to do this? I understand that it is hard but
 geez...


Absolutely no clue what your question is. You seem to assume that:

- we know what God's algorithm is;

- we know what God's Number is;

- we understand what you mean by 3x3s, 2x2s, 4x4s and 5x5s (five 
  what by five what?).

and then to add insult to injury, you're asking us to write your program 
for you! Quote: I am asking for a Python (2.7 please!) script for each 
cube.

So, we don't fully understand the problem you are trying to solve, we 
don't understand the terminology you are using, and we're not really 
inclined to do all the work doing the hard part -- the part you 
apparently don't know how to solve -- just so that you can mention our 
name somewhere in a Read Me file and then claim the program as your own 
work. Especially since the problem you are trying to solve appears to be 
impossible, according to the link you posted earlier:

http://www.speedsolving.com/forum/showthread.php?46268-Introducing-GlassSolver-back-and-better-than-ever!p=951473

tl;dr: you've announced a project that never existed as back and better 
than ever, and asked others to write the code for you.



-- 
Steven
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: Google Cloud Platform and GlassSolver Project

2014-02-17 Thread Chris Angelico
On Tue, Feb 18, 2014 at 1:52 PM, Steven D'Aprano st...@pearwood.info wrote:
 On Mon, 17 Feb 2014 16:57:34 -0800, Physics wrote:

 Does ANYONE have a clue how to do this? I understand that it is hard but
 geez...


 Absolutely no clue what your question is. You seem to assume that:

 - we know what God's algorithm is;

 - we know what God's Number is;

 - we understand what you mean by 3x3s, 2x2s, 4x4s and 5x5s (five
   what by five what?).

They'll be Rubik's Cubes, as Dave said earlier in the thread. God's
Number is the theoretical fewest-moves-to-solve, called that because
you would need to be the omniscient Deity to know which moves to
actually do. But I agree that it should have been said. Not everyone
knows what your research is :)

ChrisA
-- 
https://mail.python.org/mailman/listinfo/python-list


Re spam

2014-02-17 Thread Terry Reedy

On 2/17/2014 7:58 PM, Physics wrote:

A response to a spammer who changed email to avoid filters.

If you want to do anything, forward the message with headers to
Original-X-Complaints-To: ab...@aioe.org
asking them to try harder to block the person.


--
Terry Jan Reedy

--
https://mail.python.org/mailman/listinfo/python-list


Re: Does CPython already has Peephole optimizations?

2014-02-17 Thread Laxmikant Chitare
Thank you all for the enlightening inputs. I have learnt a lot just with
this one question. Great to know about dis library. Ned, from explanation
I now realize how important it is to do impact analysis. Things are not
always rosy :).

I have always appreciated everyone over this list. This is just another
opportunity.

Best regards,
Laxmikant



On Mon, Feb 17, 2014 at 7:21 PM, Terry Reedy tjre...@udel.edu wrote:

 On 2/17/2014 3:59 AM, Steven D'Aprano wrote:

 On Mon, 17 Feb 2014 13:54:25 +0530, Laxmikant Chitare wrote:

  I read about this article:
 http://www.python.org/workshops/1998-11/proceedings/papers/montanaro/

 montanaro.html


 Just wanted to clarify whether CPython already includes these kind of
 byte code optimizations?


 Most of the easily seen and obviously safe low-hanging fruits for the
 compile step have been plucked. Note that the effect of the peephole
 process would only save a few percent, if any, for real apps*. Improving
 the C code invoked by bytecode has resulted in much larger gains.

 * We now have a much better benchmark suite with some real apps. This is
 thanks in part to the pypy project.


  Are all the temporary variables removed when byte code is generated?


 You can check these things for yourself:

 import dis
 dis.dis(function)

 will show you the byte code.

 But in general, I would expect not. CPython (that's the Python you
 probably use) doesn't do a lot of optimization apart from some simple
 constant folding. If you're interested in optimizing Python, you should
 look at the JIT optimizing Python compiler, PyPy.


 For CPython, new optimization has mostly moved to AST tranformations prior
 to compilation. (Python ASTs are new since Skip started the peephole work.)
  I believe there are some open issues on the tracker.

 Once optimization constraint Skip did not mention is the correspondence
 between source lines and blocks of bytecode, which is used by profiling,
 tracing, and tracebacks. Effectively transforming

 if type(a) == types.ComplexType:
 x = cmath.sin(a)
 foo(x)
 else:
 x = math.sin(a)
 foo(x)

 into

 if type(a) == types.ComplexType:
 x = cmath.sin(a)
 else:
 x = math.sin(a)
 foo(x)

 breaks the correspondence. If foo(x) raises, which original line should be
 reported as the source of the exception?

 --
 Terry Jan Reedy

 --
 https://mail.python.org/mailman/listinfo/python-list

-- 
https://mail.python.org/mailman/listinfo/python-list


[issue20655] test_subprocess is not executed in python -m test.test_asyncio

2014-02-17 Thread Vajrasky Kok

New submission from Vajrasky Kok:

ethan@amiau:~/Documents/code/python/cpython3.4$ cat 
Lib/test/test_asyncio/tests.txt 
test_asyncio.test_base_events
test_asyncio.test_events
test_asyncio.test_futures
test_asyncio.test_locks
test_asyncio.test_proactor_events
test_asyncio.test_queues
test_asyncio.test_selector_events
test_asyncio.test_streams
test_asyncio.test_tasks
test_asyncio.test_transports
test_asyncio.test_unix_events
test_asyncio.test_windows_events
test_asyncio.test_windows_utils
ethan@amiau:~/Documents/code/python/cpython3.4$ ls 
Lib/test/test_asyncio/test_subprocess.py 
Lib/test/test_asyncio/test_subprocess.py

I provide two alternatives to fix this problem.

The first is to add subprocess in tests.txt.

--
components: Tests
files: add_subprocess_to_tests.patch
keywords: patch
messages: 211398
nosy: gvanrossum, haypo, vajrasky
priority: normal
severity: normal
status: open
title: test_subprocess is not executed in python -m test.test_asyncio
type: behavior
versions: Python 3.4
Added file: http://bugs.python.org/file34114/add_subprocess_to_tests.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20655
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20655] test_subprocess is not executed in python -m test.test_asyncio

2014-02-17 Thread Vajrasky Kok

Vajrasky Kok added the comment:

The second is the permanent fix so we don't need to add new test to tests.txt 
every time we want to add new test to asyncio test bundle.

--
Added file: 
http://bugs.python.org/file34115/permanent_fix_for_executing_test_asyncio_in_bundle.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20655
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20654] Pydoc (and help) fails with socket.AddressFamily

2014-02-17 Thread Vajrasky Kok

Vajrasky Kok added the comment:

This is the preliminary patch for this bug.

The bug happens because AddressFamily.AF_UNSPEC is 0. Then you have this if 
condition:
getattr(object, name, None) or homecls.__dict__[name]

I'll contemplate whether we should add unit test for this or not.

--
keywords: +patch
nosy: +vajrasky
Added file: 
http://bugs.python.org/file34116/preliminary_patch_for_AF_UNSPEC_pydoc_error.diff

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20654
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20654] Pydoc (and help) fails with socket.AddressFamily

2014-02-17 Thread Vajrasky Kok

Vajrasky Kok added the comment:

I just realized that Enum member could be None. I'll think how to improve this 
patch.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20654
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20655] test_subprocess is not executed in python -m test.test_asyncio

2014-02-17 Thread STINNER Victor

STINNER Victor added the comment:

I prefer to dynamically discover tests, as we do in all other Python tests. I 
don't like hardcoded list, it leads to such issue.

@Guido: What do you think?

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20655
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20652] Example in asyncio task gives resource warning

2014-02-17 Thread Roundup Robot

Roundup Robot added the comment:

New changeset ea4c74cc4da5 by Victor Stinner in branch 'default':
Close #20652: asyncio doc: close the event loop in run_forever() example. Fix
http://hg.python.org/cpython/rev/ea4c74cc4da5

--
nosy: +python-dev
resolution:  - fixed
stage:  - committed/rejected
status: open - closed

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20652
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20648] 3.4 cherry-pick: multiple changesets for asyncio

2014-02-17 Thread STINNER Victor

STINNER Victor added the comment:

changeset:   89231:ea4c74cc4da5
tag: tip
user:Victor Stinner victor.stin...@gmail.com
date:Mon Feb 17 10:54:30 2014 +0100
files:   Doc/library/asyncio-task.rst
description:
Close #20652: asyncio doc: close the event loop in run_forever() example. Fix
also typo. Patch written by Vajrasky Kok.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20648
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20638] KeyError building the Python html doc with sphinx

2014-02-17 Thread Xavier de Gaye

Xavier de Gaye added the comment:

$ hg log -r tip
changeset:   89198:72f9b6222476
tag: tip
parent:  89195:dcbbff7e6b56
parent:  89197:f45d4823f63c
user:Ezio Melotti ezio.melo...@gmail.com
date:Sat Feb 15 16:59:39 2014 +0200
summary: #19890: merge with 3.3.


The README.txt says:
A make update updates the Subversion checkouts in `tools/`

After running 'make update', 'make html' does not fail anymore.
Maybe 'update' should be made a prerequisite of 'html' in the Makefile. 
Otherwise, sorry for the noise.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20638
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20638] KeyError building the Python html doc with sphinx

2014-02-17 Thread Georg Brandl

Georg Brandl added the comment:

Thanks for the feedback. This was not the latest tip anyway: in the current tip 
the checked-out toolchain is gone and your system Sphinx is used.

--
resolution:  - out of date
status: open - closed

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20638
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue16468] argparse only supports iterable choices

2014-02-17 Thread Masato HASHIMOTO

Changes by Masato HASHIMOTO cabezon.hashim...@gmail.com:


--
nosy: +hashimo

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue16468
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue19363] Python 2.7's future_builtins.map is not compatible with Python 3's map

2014-02-17 Thread Gareth Rees

Gareth Rees added the comment:

Sorry about that; here it is. I had second thoughts about recommending zip() as 
an alternative (that would only work for cases where the None was constant; in 
other cases you might need lambda *args: args, but this seemed too 
complicated), so the note now says only:

Note: In Python 3, map() does not accept None for the
function argument.

--
keywords: +patch
Added file: http://bugs.python.org/file34117/issue19363.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue19363
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue13720] argparse print_help() fails if COLUMNS is set to a low value

2014-02-17 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

Thank you Zbyszek and Steven for your report and patch, but this was fixed in 
issue13107.

--
nosy: +serhiy.storchaka
resolution:  - duplicate
stage:  - committed/rejected
status: open - closed
superseder:  - Text width in optparse.py can become negative

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue13720
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20654] Pydoc (and help) fails with socket.AddressFamily

2014-02-17 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

Just use getattr() without third argument and catch AttributeError.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20654
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20654] Pydoc (and help) fails with socket.AddressFamily

2014-02-17 Thread Serhiy Storchaka

Changes by Serhiy Storchaka storch...@gmail.com:


--
assignee:  - serhiy.storchaka
keywords: +easy
stage:  - needs patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20654
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20656] OpenBSD: timeval.tv_sec type is long, not time_t

2014-02-17 Thread STINNER Victor

New submission from STINNER Victor:

select.select() doesn't work on OpenBSD 64-bit because timeval.tv_sec is a 
long, whereas Python uses a time_t.

Attached patch should fix this issue.

--
messages: 211410
nosy: belopolsky, haypo, neologix, rpointel
priority: normal
severity: normal
status: open
title: OpenBSD: timeval.tv_sec type is long, not time_t
versions: Python 3.4, Python 3.5

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20656
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20656] OpenBSD: timeval.tv_sec type is long, not time_t

2014-02-17 Thread STINNER Victor

STINNER Victor added the comment:

Hum, Python 3.3 seems to be also affected. Nobody tried Python 3 on OpenBSD 
since at lease Python 3.2?

--
versions: +Python 3.3

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20656
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20656] OpenBSD: timeval.tv_sec type is long, not time_t

2014-02-17 Thread Remi Pointel

Remi Pointel added the comment:

Hi,

I think you forgot to attach the diff.

Python 3.3 is in OpenBSD since 5.4.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20656
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20657] OpenBSD: Merge patches

2014-02-17 Thread STINNER Victor

New submission from STINNER Victor:

OpenBSD has its own collection of patches for Python 3.3:
http://www.openbsd.org/cgi-bin/cvsweb/ports/lang/python/3.3/patches/

These patches should be merged into Python directly.

--
messages: 211413
nosy: haypo, rpointel
priority: normal
severity: normal
status: open
title: OpenBSD: Merge patches
versions: Python 3.3, Python 3.4

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20657
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20656] OpenBSD: timeval.tv_sec type is long, not time_t

2014-02-17 Thread STINNER Victor

STINNER Victor added the comment:

 I think you forgot to attach the diff.

Oops.

 Python 3.3 is in OpenBSD since 5.4.

So you should work more with upstream (Python) ;-) = see issue #20657

--
keywords: +patch
Added file: http://bugs.python.org/file34118/pytime_objectotimeval.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20656
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20658] os.environ.clear() fails with empty keys (posix.unsetenv)

2014-02-17 Thread daniel hahler

New submission from daniel hahler:

posix.unsetenv fails to clear the environment if there's an entry with an empty 
key.

TEST CASE:

Python 2.7.6 (default, Jan  6 2014, 17:05:19) 
[GCC 4.8.1] on linux2
Type help, copyright, credits or license for more information.
 import os
 os.environ['']='foo'
 os.environ.clear()
Traceback (most recent call last):
  File stdin, line 1, in module
  File /path/to/python/2.7.6/lib/python2.7/os.py, line 499, in clear
unsetenv(key)
OSError: [Errno 22] Invalid argument

I believe that os.environ.clear() via unsetenv should handle empty keys.

--
components: Interpreter Core
messages: 211415
nosy: blueyed
priority: normal
severity: normal
status: open
title: os.environ.clear() fails with empty keys (posix.unsetenv)
type: crash
versions: Python 2.7, Python 3.3

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20658
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20659] Want to make a class method a property by combining decorators

2014-02-17 Thread the mulhern

New submission from the mulhern:

The problems is that it is quite possible to define a property using @property 
in a class and then later to realize that it really ought to be a class method, 
not an instance method. But then, if you change it to a class method, using 
@classmethod annotation, the @property annotation will fail to work. If you are 
a pedantic person, and name your properties differently than you name your 
methods, you have to:
1) Change all uses of this former property back to method invocations, with a 
()
2) Change the name, so it now reflects that it is an actual function, not a 
property any longer.

I think an @classproperty and an @staticproperty decorator would take this 
problem away.

An alternative would be to make it possible to chain @property and 
@classmethod. I know that this is sort of doable for ABC.abstractproperty which 
is now deprecated in favor of @property combined with @ABC.abstractmethod. This 
would be ideal, but I can not pretend to know if it would be possible. Also, I 
suspect that the order would matter as it does for ABC as described in 
http://bugs.python.org/issue16267.

--
components: Library (Lib)
messages: 211416
nosy: the.mulhern
priority: normal
severity: normal
status: open
title: Want to make a class method a property by combining decorators
type: enhancement
versions: Python 2.7, Python 3.1, Python 3.2, Python 3.3, Python 3.4

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20659
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20145] unittest.assert*Regex functions should verify that expected_regex has a valid type

2014-02-17 Thread the mulhern

the mulhern added the comment:

Yes. I'ld check if it was a string or a regex object...there is already code 
that converts the string to a regular expression in there.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20145
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20654] Pydoc (and help) fails with socket.AddressFamily

2014-02-17 Thread Vajrasky Kok

Vajrasky Kok added the comment:

Here is the second preliminary patch. I'll think about the way to avoid 
dependency to socket module.

--
Added file: 
http://bugs.python.org/file34119/pydoc_display_enum_member_value_0.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20654
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20654] Pydoc (and help) fails with socket.AddressFamily

2014-02-17 Thread Vajrasky Kok

Vajrasky Kok added the comment:

Here is the second patch, avoiding dependency to socket.AddressFamily (though 
it adds dependency to enum library) in test.

--
Added file: 
http://bugs.python.org/file34120/pydoc_display_enum_member_value_0_v2.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20654
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20653] Pickle enums by name

2014-02-17 Thread Barry A. Warsaw

Barry A. Warsaw added the comment:

On Feb 17, 2014, at 07:03 AM, Serhiy Storchaka wrote:


Currently enums are pickled by values. It means that if the value of enum is
platform depending, pickling one enum you can unpickle other enum on other
platform.

It's probably a good idea to pickle by name by default, in order to support
the stdlib use case.  Please just be sure to preserve the ability for user
code to pickle by value via subclassing.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20653
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20660] Starting a second multiprocessing.Manager causes INCREF on all object created by the first one.

2014-02-17 Thread mythsmith

New submission from mythsmith:

I seems that upon the start of a second manager, all objects referenced in the 
first one gets an INCREF. On the third start, all objects created by the first 
and the second manager get another INCREF. And so on. I cannot understand why 
the start of a totally new manager, in a new process, will cause all these 
INCREF about object hosted on other managers - which cause the program to take 
forever to start/stop.

This small script fully reproduces the behaviour, tested in python 2.7 and 3.2:

from __future__ import print_function
import multiprocessing, logging
# # Activate multiprocessing logging
mplog = multiprocessing.get_logger()
mplog.setLevel(multiprocessing.util.DEBUG)
mplog.addHandler(logging.StreamHandler())
objs=[]
def newman(n=50):
global objs
m=multiprocessing.Manager()
print('created')
for i in range(n):
objs.append(m.Value('i',i)) 
return m

print(' first man')
m1=newman()

print (' second man')
m2=newman()

print (' third man')
m3=newman(0)

(Output is attached)

After the start of the first manager, the logger prints out the messages 
relative to the creation of the first 50 objects.

But when the second manager is starting - before any object was created by it - 
the logger prints out exactly 50 INCREF messages.Then follows the messages 
relating to the creation of the 50 new objects on manager 2.

When the third manager starts - before any object was created by it - 100 more 
INCREF messages are printed.

No object creation message is seen after m3 creation, as I passed 0 to the 
newman() function.

When the program ends, a similar amount of DECREF messages is printed.

It seems that, when I start a new manager, it creates a reference to all 
objects referenced by previous managers. In a big application this translates 
into extremely slow startup/shutdown.

--
components: Library (Lib)
files: output.txt
messages: 211421
nosy: mythsmith
priority: normal
severity: normal
status: open
title: Starting a second multiprocessing.Manager causes INCREF on all object 
created by the first one.
type: behavior
versions: Python 2.7, Python 3.2
Added file: http://bugs.python.org/file34121/output.txt

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20660
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20648] 3.4 cherry-pick: multiple changesets for asyncio

2014-02-17 Thread Larry Hastings

Larry Hastings added the comment:

Yeah, I considered getting fussy about you didn't follow instructions.  But 
this actually is better for me, as it means I can apply the patches in 
chronological order.

Like Guido said, I intend to be permissive when it comes to asyncio for 3.4.0.  
I'm assuming that these patches don't touch anything outside asyncio 
(implementation and doc).  If that's all they touch, then yeah I'll accept 
them.  If any of them touch other files then we may need to discuss it.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20648
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20661] 3.4 cherry-pick: eef7899ea7ab use system doc toolchain instead of checking out of svn

2014-02-17 Thread Georg Brandl

New submission from Georg Brandl:

3.4 cherry-pick: eef7899ea7ab use system doc toolchain instead of checking out 
of svn

--
assignee: larry
messages: 211423
nosy: georg.brandl, larry
priority: release blocker
severity: normal
status: open
title: 3.4 cherry-pick: eef7899ea7ab use system doc toolchain instead of 
checking out of svn
versions: Python 3.4

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20661
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20619] lineno and col_offset attributes of _ast.arg objects are not set

2014-02-17 Thread Benjamin Peterson

Changes by Benjamin Peterson bp+pyb...@benjamin-peterson.org:


--
assignee:  - larry
resolution: fixed - 
status: closed - open

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20619
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20594] [PATCH] fail to compile posixmodule due to name clash with posix_close

2014-02-17 Thread Benjamin Peterson

Changes by Benjamin Peterson bp+pyb...@benjamin-peterson.org:


--
nosy: +benjamin.peterson, georg.brandl
priority: high - release blocker
resolution: fixed - 
status: closed - open

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20594
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20594] [PATCH] fail to compile posixmodule due to name clash with posix_close

2014-02-17 Thread Benjamin Peterson

Changes by Benjamin Peterson bp+pyb...@benjamin-peterson.org:


--
assignee:  - larry

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20594
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue17899] os.listdir() leaks FDs if invoked on FD pointing to a non-directory

2014-02-17 Thread Jesús Cea Avión

Changes by Jesús Cea Avión j...@jcea.es:


--
nosy: +jcea

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue17899
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20654] Pydoc (and help) fails with socket.AddressFamily

2014-02-17 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

The fix itself looks good, but the test can be better. You write temporary file 
in current directory. this can fail for different reasons, Python can crash and 
left undeleted file, this file can overwrite existing file. The render_doc() 
function is last module level function in a traceback, and it can be used for 
testing, temporary file will be not needed.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20654
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue18352] collections.Counter with added attributes are not deepcopied properly.

2014-02-17 Thread Jesús Cea Avión

Changes by Jesús Cea Avión j...@jcea.es:


--
nosy: +jcea

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue18352
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20654] Pydoc (and help) fails with socket.AddressFamily

2014-02-17 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

Interesting, that the documentation for AddressFamily (unlike to SocketType) 
isn't generated in html doc. May be this is unrelated issue, but if this is 
related, it would be good to fix it too. Otherwise it needs separate issue.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20654
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20662] Pydoc doesn't escape parameter defaults in html

2014-02-17 Thread Serhiy Storchaka

New submission from Serhiy Storchaka:

Pydoc doesn't escape parameter defaults in generated html files. For example 
for the socket.__init__() method in the socket module following html code is 
generated:

dldta name=socket-__init__strong__init__/strong/a(self, 
family=AddressFamily.AF_INET: 2, type=SocketType.SOCK_STREAM: 1, proto=0, 
fileno=None)/dt/dl

As result AddressFamily.AF_INET: 2 and SocketType.SOCK_STREAM: 1 aren't 
visible in browser (they are illegal html tags).

--
components: Library (Lib)
messages: 211426
nosy: georg.brandl, serhiy.storchaka
priority: normal
severity: normal
status: open
title: Pydoc doesn't escape parameter defaults in html
type: behavior
versions: Python 3.4

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20662
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue16278] Improve os.rename documentation and tests

2014-02-17 Thread Benjamin Peterson

Benjamin Peterson added the comment:

1. You removed the note about files being on the same filesystem on Unix. 
That's useful.
2. I don't think it needs to be mentioned that you'll get an error if *src* 
doesn't exist.
3. The table is strange because the destination header spans 2 columns, while 
the description of destination types seems to be 3 columns.
4. The destination type entries are marked as the table header, but the source 
type entries are not.

--
nosy: +benjamin.peterson

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue16278
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20655] test_subprocess is not executed in python -m test.test_asyncio

2014-02-17 Thread Guido van Rossum

Guido van Rossum added the comment:

Please apply the fix and make sure it gets cherry-picked.

I agree on dynamic test recovery but don't find it a high priority.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20655
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20653] Pickle enums by name

2014-02-17 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

To pickle by value, the subclass needs only restore current implementation of 
__reduce_ex__():

def __reduce_ex__(self, proto):
return self.__class__, (self.value,)

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20653
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20663] Introduce exception argument to iter

2014-02-17 Thread Ram Rachum

New submission from Ram Rachum:

See discussion: 
https://groups.google.com/forum/#!searchin/python-ideas/iter/python-ideas/UCaNfAHkBlQ/5vX7JbpCxDkJ

`iter` has a very cool `sentinel` argument. I suggest an additional argument 
`exception`; when it's supplied, instead of waiting for a sentinel value, we 
wait for a sentinel exception to be raised, and then the iteration is finished.

This'll be useful to construct things like this: 

my_iterator = iter(my_deque.popleft, exception=IndexError)

I also suggest being able to pass multiple exceptions in a tuple to have any of 
them trigger a `StopIteration`.

--
components: Interpreter Core
messages: 211431
nosy: cool-RR, terry.reedy
priority: normal
severity: normal
status: open
title: Introduce exception argument to iter
type: enhancement
versions: Python 3.5

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20663
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue19619] Blacklist base64, hex, ... codecs from bytes.decode() and str.encode()

2014-02-17 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

I don't think that adding underscored parameter to public API is best solution, 
but we need the fix for 3.3. So here is a patch for backporting d68df99d7a57 to 
3.3.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue19619
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20653] Pickle enums by name

2014-02-17 Thread Ethan Furman

Ethan Furman added the comment:

I agree that pickling by name is the better solution.

Serhiy, could you explain how the un-pickling works with protocol 4?

--
assignee:  - ethan.furman

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20653
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20653] Pickle enums by name

2014-02-17 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

This is new feature of protocol 4 (PEP 3154, section 'Serializing more 
lookupable objects'). When __reduce_ex__() returns a string (instead of a 
tuple), this is interpreted as the name of a global, and qualnames with dots 
are now supported in protocol 4.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20653
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20653] Pickle enums by name

2014-02-17 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

May be a number of tests which test pickling subclasses with or without some 
special methods are not needed longer. Fell free to improve my patch if you 
want to make all cleanup changes in one commit.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20653
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15871] Online docs: make index search always available.

2014-02-17 Thread Ezio Melotti

Changes by Ezio Melotti ezio.melo...@gmail.com:


--
versions: +Python 3.5 -Python 3.2

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue15871
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20651] 3.4 cherry-pick: 52ab9e1ff46a rolls back bad zipimport changes

2014-02-17 Thread Larry Hastings

Larry Hastings added the comment:

Okay.

I'm holding off a couple days just to get all the requests lined up, so I can 
apply them in chronological order--that'll cut down on the conflicts.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20651
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14976] queue.Queue() is not reentrant, so signals and GC can cause deadlocks

2014-02-17 Thread Itamar Turner-Trauring

Itamar Turner-Trauring added the comment:

This is not specifically a signal issue; it can happen with garbage collection 
as well if you have a Queue.put that runs in __del__ or a weakref callback 
function.

This can happen in real code. In my case, a thread that reads log messages from 
a Queue and writes them to disk. The thread putting log messages into the Queue 
can deadlock if GC happens to cause a log message to be written right after 
Queue.put() acquired the lock.
(see https://github.com/itamarst/crochet/issues/25).

--
nosy: +itamarst
title: Queue.PriorityQueue() is not interrupt safe - queue.Queue() is not 
reentrant, so signals and GC can cause deadlocks
versions: +Python 3.3

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14976
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20621] Issue with zipimport in 3.3.4 and 3.4.0rc1

2014-02-17 Thread Gregory P. Smith

Gregory P. Smith added the comment:

Thanks for trying. :)  I've got a complicated test case of zipping up the
stdlib into python27.zip and running the Python test suite against that
which also tends to trigger the bugs.  Some tests failing with SystemError
and such.

It smells like a memory corruption issue but I haven't had time to sit down
and dive in to find it. I won't proceed on my patches for the original bug
until I can figure it out and come up with a more exhaustive unittest that
demonstrates the bug.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20621
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20664] _findLib_crle and _get_soname broken on latest SunOS 5.11

2014-02-17 Thread Ryan Gordon

New submission from Ryan Gordon:

On SunOS 5.11, both the _findLib_crle and _get_soname are broken.

With _findLib_crle, the function returns the following:

# env LC_ALL=C /usr/bin/crle -64

Default configuration file (/var/ld/64/ld.config) not found
  Platform: 64-bit LSB AMD64
  Default Library Path (ELF):   /lib/64:/usr/lib/64  (system default)
  Trusted Directories (ELF):/lib/secure/64:/usr/lib/secure/64  (system 
default)

# env LC_ALL=C /usr/bin/crle

Configuration file [version 4]: /var/ld/ld.config  
  Platform: 32-bit LSB 80386
  Default Library Path (ELF):   /lib:/usr/lib
  Trusted Directories (ELF):/lib/secure:/usr/lib/secure  (system default)

Command line:
  crle -c /var/ld/ld.config -l /lib:/usr/lib

The Default Library Path (ELF):   /lib:/usr/lib is extracted to 
/lib:/usr/lib and only those two paths are checked for the library in 
question. Unfortunately this means that there is absolutely no way to configure 
any environment variable to check on other paths and both /lib and /usr/lib are 
read-only directories mounted from the global zone:

[ /usr/lib] # touch test.txt
touch: cannot touch `test': Read-only file system
[ /lib] # touch test.txt
touch: cannot touch `test': Read-only file system

An environment variable should be read in that can be configured to override 
this functionality.

The second issue with _get_soname is that is calls /usr/ccs/bin/dump which 
doesn't exist at all: (/usr/ccs/bin/ is an old deprecated directory which has 
since been removed)

# ll /usr/ccs/bin/dump
ls: cannot access /usr/ccs/bin/dump: No such file or directory

--
components: ctypes
messages: 211438
nosy: rygorde4
priority: normal
severity: normal
status: open
title: _findLib_crle and _get_soname broken on latest SunOS 5.11
type: behavior
versions: Python 2.7, Python 3.1, Python 3.2, Python 3.3, Python 3.4, Python 3.5

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20664
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue12691] tokenize.untokenize is broken

2014-02-17 Thread Terry J. Reedy

Changes by Terry J. Reedy tjre...@udel.edu:


--
assignee: docs@python - terry.reedy
nosy: +terry.reedy
stage: test needed - patch review
versions: +Python 2.7, Python 3.3

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue12691
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue8478] tokenize.untokenize first token missing failure case

2014-02-17 Thread Terry J. Reedy

Changes by Terry J. Reedy tjre...@udel.edu:


--
assignee:  - terry.reedy
nosy: +terry.reedy
stage:  - patch review
versions: +Python 2.7, Python 3.3, Python 3.4 -Python 2.6

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue8478
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20594] [PATCH] fail to compile posixmodule due to name clash with posix_close

2014-02-17 Thread Larry Hastings

Larry Hastings added the comment:

I created a cherry-pick issue (#20665) to track that separately.

--
resolution:  - fixed
status: open - closed

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20594
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20665] 3.4 cherry-pick: 400a8e4599d9 rename posix_close to avoid namespace clash

2014-02-17 Thread Larry Hastings

New submission from Larry Hastings:

Creating new issue from #20594 to track cherry-picking this into 3.4.0.

--
assignee: larry
components: Build
messages: 211439
nosy: larry
priority: release blocker
severity: normal
stage: commit review
status: open
title: 3.4 cherry-pick: 400a8e4599d9 rename posix_close to avoid namespace clash
type: compile error
versions: Python 3.4

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20665
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20665] 3.4 cherry-pick: 400a8e4599d9 rename posix_close to avoid namespace clash

2014-02-17 Thread Larry Hastings

Larry Hastings added the comment:

400a8e4599d9 is the revision.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20665
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20265] Bring Doc/using/windows up to date

2014-02-17 Thread Zachary Ware

Zachary Ware added the comment:

The plan is to eventually have enough time to pick through the file and make 
sure everything is actually up to date :).

From just a quick glance, here's a couple of the things that still need to be 
done:
- all of the external links should be checked for whether they are up to date 
(and still relevant to current Python)
- the 'Excursus: Setting environment variables' section needs a major overhaul 
('autoexec.bat' isn't used (or at least not recommended) anymore, among other 
things)

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20265
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20661] 3.4 cherry-pick: eef7899ea7ab use system doc toolchain instead of checking out of svn

2014-02-17 Thread Larry Hastings

Larry Hastings added the comment:

Okay.  I'll do the first round of cherry-picking Tuesday or Wednesday (my 
time).  I'm waiting for the list of requests to settle down so I can do them in 
chronological order.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20661
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20645] 3.4 cherry-pick: 1166b3321012 Revert changes of issue #19466 (clear thread state earlier)

2014-02-17 Thread Larry Hastings

Larry Hastings added the comment:

Okay.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20645
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20510] Test cases in test_sys don't match the comments

2014-02-17 Thread Zachary Ware

Zachary Ware added the comment:

The newer patch looks good to me, I'll get it committed as soon as I can test 
it.  Thanks!

--
assignee:  - zach.ware

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20510
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20646] 3.4 cherry-pick: 180e4b678003 select and kqueue round the timeout aways from zero

2014-02-17 Thread Larry Hastings

Larry Hastings added the comment:

This one worries me a little.  Antoine, do you agree that this should be 
cherry-picked for 3.4.0?

--
nosy: +pitrou

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20646
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



  1   2   >