[issue20493] asyncio: OverflowError('timeout is too large')

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio
nosy: +yselivanov

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



[issue20336] test_asyncio: relax timings even more

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio
nosy: +gvanrossum, yselivanov

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



[issue20154] Deadlock in asyncio.StreamReader.readexactly() (fix applied, need unit test)

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio
nosy: +yselivanov

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



[issue21080] asyncio.subprocess: connect pipes of two programs

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio

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



[issue21163] asyncio task possibly incorrectly garbage collected

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio

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



[issue20847] asyncio docs should call out that network logging is a no-no

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio

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



[issue21205] Unable to make decorated generator object to inherit generator function's __name__

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio
nosy: +gvanrossum, haypo, yselivanov

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



[issue21247] test_asyncio: test_subprocess_send_signal hangs on Fedora builders

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio, Tests
keywords: +buildbot

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



[issue21447] Intermittent asyncio.open_connection / futures.InvalidStateError

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio

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



[issue21437] document that asyncio.ProactorEventLoop doesn't support SSL

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio

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



[issue21595] asyncio: Creating many subprocess generates lots of internal BlockingIOError

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio
title: Creating many subprocess generates lots of internal BlockingIOError - 
asyncio: Creating many subprocess generates lots of internal BlockingIOError

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



[issue21596] asyncio.wait fails when futures list is empty

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio

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



[issue21595] asyncio: Creating many subprocess generates lots of internal BlockingIOError

2014-06-06 Thread STINNER Victor

STINNER Victor added the comment:

Hum, maybe I need to add a unit test for it.

--

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



[issue21595] asyncio: Creating many subprocess generates lots of internal BlockingIOError

2014-06-06 Thread STINNER Victor

STINNER Victor added the comment:

Can someone please review asyncio_read_from_self.patch?

--

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



[issue21443] asyncio logging documentation clarifications

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio

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



[issue777588] asyncore is broken for windows if connection is refused

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
components: +Asyncio
nosy: +gvanrossum, yselivanov

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



[issue21679] Prevent extraneous fstat during open()

2014-06-06 Thread Bohuslav Slavek Kabrda

New submission from Bohuslav Slavek Kabrda:

Hi,
with Python 3.3/3.4, I noticed that there are lots of syscalls on open() - I 
noticed 2x fstat, 2x ioctl and 2x lseek. This is not noticable when working 
with small amounts of files on local filesystem, but if working with files via 
NSF or if working with huge amounts of files, lots of syscalls cost a lot of 
time. Therefore I'd like to create patches that would reduce the number of 
syscalls on open().
I've already managed to create first one (attached), that gets rid of one of 
the fstat calls (all the information are obtained from one fstat call).
I hope this makes sense and that the patch is acceptable. If not, I'll be happy 
to work on it to make it better. (This is my first real patch for C part of 
Python, so I hope I did everything right...)

--
components: IO
files: python3-remove-extraneous-fstat-on-file-open.patch
keywords: patch
messages: 219874
nosy: bkabrda
priority: normal
severity: normal
status: open
title: Prevent extraneous fstat during open()
type: resource usage
versions: Python 3.4, Python 3.5
Added file: 
http://bugs.python.org/file35494/python3-remove-extraneous-fstat-on-file-open.patch

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



[issue777588] asyncore/Windows: select() doesn't report errors for a non-blocking connect()

2014-06-06 Thread STINNER Victor

Changes by STINNER Victor victor.stin...@gmail.com:


--
title: asyncore is broken for windows if connection is refused - 
asyncore/Windows: select() doesn't report errors for a non-blocking connect()

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



[issue21595] asyncio: Creating many subprocess generates lots of internal BlockingIOError

2014-06-06 Thread STINNER Victor

STINNER Victor added the comment:

asyncio_read_from_self_test.patch: Unit test to check that running the loop 
once reads all bytes. The unit test is ugly: it calls private methods, and it 
is completly different on UNIX (selector) and on Windows (proactor).

I would prefer to *not* add such test, and just enhance the code (apply  
asyncio_read_from_self.patch).

--
Added file: http://bugs.python.org/file35495/asyncio_read_from_self_test.patch

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



[issue15014] smtplib: add support for arbitrary auth methods

2014-06-06 Thread R. David Murray

R. David Murray added the comment:

Ah, you are right, I wasn't looking at the full context of the diff when I made 
the comment about backward compatibility.  So ignore that part :)

On the other hand, exposing perferred_auth on the class would be a simple API 
for allowing auth extension (since one really needs to subclass to add an 
authobject, given that it needs access to self.user and self.password).  But, 
like I said before, that can be a separate issue.

--

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



[issue21596] asyncio.wait fails when futures list is empty

2014-06-06 Thread STINNER Victor

STINNER Victor added the comment:

 Probably this was the intended behavior as I see there's a test case for 
 that. If such, then I would propose to document that behavior.

The code has an explicit check:

if not fs:
raise ValueError('Set of coroutines/Futures is empty.')

And yes, the behaviour is tested by test_asyncio.

Attached patch changes mention this behaviour in the documentation. Does it 
look correct?

--
keywords: +patch
Added file: http://bugs.python.org/file35496/wait_doc.patch

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



[issue21680] asyncio: document event loops

2014-06-06 Thread STINNER Victor

New submission from STINNER Victor:

Currently, the different implementations of asyncio event loop are not listed 
in the documentation. But they are mentionned in some places, like in the 
subprocess section to mention that Proactor doesn't support subprocess or that 
they are issues with Kqueue on old Mac OS X versions.

It would be useful to mention at least the name of each event loop.

Each event loop has specific features or different limitations. See for example 
the issue #21437 which asks to mention that the proactor event loop doesn't 
support SSL.

--
assignee: docs@python
components: Documentation, asyncio
messages: 219878
nosy: docs@python, gvanrossum, haypo, yselivanov
priority: normal
severity: normal
status: open
title: asyncio: document event loops
versions: Python 3.4, Python 3.5

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



[issue21437] document that asyncio.ProactorEventLoop doesn't support SSL

2014-06-06 Thread STINNER Victor

STINNER Victor added the comment:

The first problem is that event loops are not documented at all: I created the 
issue #21680 to document them.

--

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



[issue21669] Custom error messages when print exec are used as statements

2014-06-06 Thread Nick Coghlan

Nick Coghlan added the comment:

Heuristic based approach that just does a fairly simple check for the syntax 
error text starting with print  or exec  when the text doesn't contain a 
left parenthesis.

This will still miss a few cases where the left parenthesis is inside a larger 
expression (like a string, list or dict), but that extra check avoids false 
triggering on cases like print (a.).

--
Added file: 
http://bugs.python.org/file35497/issue21669_custom_error_messages.diff

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



[issue21596] asyncio.wait fails when futures list is empty

2014-06-06 Thread Sebastian Kreft

Sebastian Kreft added the comment:

LGTM.

--

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



[issue20336] test_asyncio: relax timings even more

2014-06-06 Thread Stefan Krah

Stefan Krah added the comment:

Let's open a new issue for system load detection. This one is not asyncio 
specific.

--
resolution:  - not a bug
stage: needs patch - 
status: open - closed

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



[issue20336] test_asyncio: relax timings even more

2014-06-06 Thread STINNER Victor

STINNER Victor added the comment:

 Let's open a new issue for system load detection. This one is not asyncio 
 specific.

I opened issues #20910 and #20964 for example.

--

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



[issue10740] sqlite3 module breaks transactions and potentially corrupts data

2014-06-06 Thread Aymeric Augustin

Aymeric Augustin added the comment:

I'm attaching a documentation patch describing improvements of the transaction 
management APIs that would address this issue as well as three others.

It's preserving the current transaction handling by default for backwards 
compatibility. It's introducing two new, more simple and less surprising 
transaction modes.

Could someone have a look and tell me if such improvements seem reasonable? If 
so, I'll try to write a patch targeting Python 3.5.

--
Added file: 
http://bugs.python.org/file35498/transaction-api-proposal-issues-8145-9924-10740-16958.patch

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



[issue21600] mock.patch.stopall doesn't work with patch.dict to sys.modules

2014-06-06 Thread fumihiko kakuma

fumihiko kakuma added the comment:

Thank you for your reply.
Yes, you are right. The patch was too slapdash. I re-created it and added unit 
tests.

--
Added file: http://bugs.python.org/file35499/support_patch_dict_by_stopall.diff

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



[issue15014] smtplib: add support for arbitrary auth methods

2014-06-06 Thread Milan Oberkirch

Milan Oberkirch added the comment:

Here comes the patch implementing your suggestions. Changing the API to make 
adding new auth methods and still using login() would only require to make 
preferred_auth accessable as you mentioned. Using custom authobjects is 
possible with this patch.

--
Added file: http://bugs.python.org/file35500/smtplib_auth_060614.patch

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



[issue21600] mock.patch.stopall doesn't work with patch.dict to sys.modules

2014-06-06 Thread Michael Foord

Michael Foord added the comment:

That's better - thanks. Another minor tweak needed though. stopall should only 
stop patches that were started with start, not those used as context managers 
or decorators (or they will be stopped twice!). 

See how the main patch object only adds to the set of active patches in the 
start method, not in __enter__ (and removes in stop rather than __exit__).

--

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



[issue18235] _sysconfigdata.py wrong on AIX installations

2014-06-06 Thread Michael Haubenwallner

Michael Haubenwallner added the comment:

Hmm... instead of reversing the order while keeping in _generate_posix_vars(), 
feels like it would have been better to move the code from 2000 back to 
_init_posix() where it originally was, without changing the order - because now 
for sysconfig within Python build, the working B-value of LDSHARED is lost.

Something like (note the function names):

--- a/Lib/sysconfig.py  Fri Jun 06 01:23:53 2014 -0500
+++ b/Lib/sysconfig.py  Fri Jun 06 17:11:02 2014 +0200
@@ -364,11 +364,6 @@ def _generate_posix_vars():
 if hasattr(e, strerror):
 msg = msg +  (%s) % e.strerror
 raise OSError(msg)
-# On AIX, there are wrong paths to the linker scripts in the Makefile
-# -- these paths are relative to the Python source, but when installed
-# the scripts are in another directory.
-if _PYTHON_BUILD:
-vars['BLDSHARED'] = vars['LDSHARED']
 
 # There's a chicken-and-egg situation on OS X with regards to the
 # _sysconfigdata module after the changes introduced by #15298:
@@ -409,6 +404,11 @@ def _init_posix(vars):
 # _sysconfigdata is generated at build time, see _generate_posix_vars()
 from _sysconfigdata import build_time_vars
 vars.update(build_time_vars)
+# On AIX, we have different paths for building the Python modules
+# relative to the Python source, and building third party modules
+# after installing the Python dist.
+if _PYTHON_BUILD:
+vars['LDSHARED'] = vars['BLDSHARED']
 
 def _init_non_posix(vars):
 Initialize the module as appropriate for NT

--

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



[issue21650] add json.tool option to avoid alphabetic sort of fields

2014-06-06 Thread Pavel Kazlou

Pavel Kazlou added the comment:

The idea is to keep the same order as in input.

--

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



[issue21669] Custom error messages when print exec are used as statements

2014-06-06 Thread Guido van Rossum

Guido van Rossum added the comment:

Nice! I put it through a bit of a torture test and found a few odd corners. 
E.g. it doesn't catch this:

if 1: print 42

nor this:

if 1:
print 42

nor this:

def foo():
print 42

I also notice that if the printed expression starts with a unary + or -, it is 
not a syntax error but a type error. But I don't think we should try to do 
anything about that.

--

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



[issue21650] add json.tool option to avoid alphabetic sort of fields

2014-06-06 Thread R. David Murray

R. David Murray added the comment:

Yes but the input is turned into a dict, and dicts do not preserve order.  
Further, what is passed to the object_hook is already a dict, so the order is 
already lost before object_hook is called.

Since the parser (or at least the Python version of the parser) first turns the 
input into a list of pairs, and a Python OrderedDict can be instantiated from a 
list of pairs, it would theoretically be possible to extend the object_hook API 
to allow an OrderedDict to be used on decode.  Exactly how to do that so as to 
retain backward compatibility is a bit of a question.

So, it is *possible* to achieve your aim, but it isn't as simple as allowing 
sort= to be set False.

IMO being able to preserve the order of the input when desired (ie: use an 
OrderedDict object_hook) would be a nice feature to have.

--
stage: patch review - needs patch

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



[issue21669] Custom error messages when print exec are used as statements

2014-06-06 Thread Guido van Rossum

Guido van Rossum added the comment:

I also found some amusing false positives (syntax errors that weren't valid 
print statements in Python 2):

print [/
print /
print )# but not print) !
print]

None of these matter though.  Perhaps more concerning is how many things are 
valid syntax, despite making little sense:

print [42]
print

Still I like the idea -- even if it only catches 50% of all print statements 
that would still be a huge win. (And I think it's probably closer to 80%.)

--

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



[issue21650] add json.tool option to avoid alphabetic sort of fields

2014-06-06 Thread R. David Murray

R. David Murray added the comment:

Wait, I read the code wrong.

You can define object_pairs_hook, and use that to return an OrderedDict.  So it 
should be possible to do this without changing the json module itself.  This is 
actually documented as a place to use OrderedDict.  Guess I should have read 
the docs instead of the code :)

--

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



[issue21677] Exception context set to string by BufferedWriter.close()

2014-06-06 Thread Serhiy Storchaka

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


--
nosy: +benjamin.peterson, pitrou, serhiy.storchaka, stutzbach

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



[issue21679] Prevent extraneous fstat during open()

2014-06-06 Thread Serhiy Storchaka

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


--
nosy: +benjamin.peterson, pitrou, serhiy.storchaka, stutzbach

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



[issue21561] help() on enum34 enumeration class creates only a dummy documentation

2014-06-06 Thread Andy Maier

Andy Maier added the comment:

Using Ethan's sample code (Thanks!!), I was pointed in the right direction and 
was able to produce a simple piece of code that reproduces the behavior without 
depending on enum34, as well as a proposal for a fix in pydoc.py.

The problem can be reproduced with a class that specifies a metaclass that has 
class attributes and includes these class attributes in its __dir__() result, 
which causes them to propagate as class attributes to the class using that 
metaclass, at least for the purposes of pydoc.

In the course of the processing within pydoc.py, the tuple returned by 
inspect.classify_class_attrs() for such class attributes then has None for its 
class item, which triggers the issue I originally reported (pydoc traps and 
produces just a dummy help description).

In my original problem with the enum34 module, the same thing happens, just 
here the propagated class attributes include the __members__ list, which is 
defined as a property. So I do believe that my simple code represents the same 
error situation as the original enum34 issue.

Because pydoc.py already has its own classify_class_attrs() function that 
wrappers inspect.classify_class_attrs() for the purpose of treating data 
descriptors correctly, I think it would be acceptable to continue down the path 
of fixing it up, just this case for class attributes propagated by the 
metaclass. That's what my proposed fix does.

Unfortunately, it seems one can attach only one file, so I paste the 
reproduction code in here, and attach the fixed pydoc.py.

Here is the code that reproduces the issue:
 bug2.py
# Boolean test switches that control whether a class variable of the metaclass
# is added to the dir() result.
# If the fix is not present, then enabling each one triggers the error
# behavior; If none of them is enabled, the error behavior is not triggered.
with_food = True  # Add the 'normal' class attribute 'food'
with_drink = True # Add the property-based class attribute 'drink'

class FoodMeta(type):
Metaclass that adds its class attributes to dir() of classes using it.

food = 'ham'  # 'normal' class attribute

@property
def drink(cls):   # property-based class attribute
return 'beer'

def __dir__(cls):
ret = [name for name in cls.__dict__] # the normal list
if with_food:
ret += ['food']
if with_drink:
ret += ['drink']
print bug2.FoodMeta.__dir__(): return=%s % (repr(ret),)
return ret

class Food(object):
docstring for Food class
__metaclass__ = FoodMeta

def diet(self):
return no!

if __name__ == '__main__':
print bug2: Calling help(Food):
help(Food)



- Please review the reproduction code and the fix and let me know how to 
proceed.

Andy

--
Added file: http://bugs.python.org/file35501/pydoc_fix2.py

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



[issue21561] help() on enum34 enumeration class creates only a dummy documentation

2014-06-06 Thread Andy Maier

Andy Maier added the comment:

Here is the bug2.py file pasted into the previous message, for convenience.

--
Added file: http://bugs.python.org/file35502/bug2.py

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



[issue21681] version string printed on STDERR

2014-06-06 Thread larkost

New submission from larkost:

When getting the version of the Python interpreter with `python --version` the 
output is going to STDERR rather than STDOUT. This is non-standard behavior, 
and is surprising.

For example I was writing a dependency into a makefile, and this behavior 
caused me a good 5 minutes of debugging my script before I realized it was bad 
behavior on the command line.

--
messages: 219896
nosy: larkost
priority: normal
severity: normal
status: open
title: version string printed on STDERR
type: behavior
versions: Python 2.7

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



[issue21681] version string printed on STDERR

2014-06-06 Thread Berker Peksag

Berker Peksag added the comment:

This was fixed for Python 3.4 in issue 18338. See also 
https://docs.python.org/3/whatsnew/3.4.html#other-improvements for release 
notes.

--
nosy: +berker.peksag

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



[issue21681] version string printed on STDERR

2014-06-06 Thread R. David Murray

Changes by R. David Murray rdmur...@bitdance.com:


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

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



[issue7932] print statement delayed IOError when stdout has been closed

2014-06-06 Thread Mark Lawrence

Mark Lawrence added the comment:

Is there any interest in following this up as 2.6 is out of support?

--
nosy: +BreamoreBoy

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



[issue18910] IDle: test textView.py

2014-06-06 Thread Terry J. Reedy

Terry J. Reedy added the comment:

Since all tests create a widget with widgets (or destroy it), the new patch 
moves root to class scope and simplifies the code a bit. It also subclasses 
TextViewer instead of monkey-patching it. Modules have to be monkey-patched 
because they cannot be 'sub-moduled'.

--
nosy: +sahutd

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



[issue18910] IDle: test textView.py

2014-06-06 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 86ba41b7bb46 by Terry Jan Reedy in branch '2.7':
Issue #18910: test_textView - since all tests require 'gui', make root global.
http://hg.python.org/cpython/rev/86ba41b7bb46

New changeset 5a46ebfa5d90 by Terry Jan Reedy in branch '3.4':
Issue #18910: test_textView - since all tests require 'gui', make root global.
http://hg.python.org/cpython/rev/5a46ebfa5d90

--

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



[issue9194] winreg:fixupMultiSZ should check that P Q in the inner loop

2014-06-06 Thread Mark Lawrence

Mark Lawrence added the comment:

@Tim is this something that you can comment on?

--
nosy: +BreamoreBoy, tim.golden

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



[issue9194] winreg:fixupMultiSZ should check that P Q in the inner loop

2014-06-06 Thread Brian Curtin

Changes by Brian Curtin br...@python.org:


--
nosy:  -brian.curtin

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



[issue21597] Allow turtledemo code pane to get wider.

2014-06-06 Thread Lita Cho

Lita Cho added the comment:

Hi Terry!

I went ahead and added a movable divider (also known as a sash) using the 
PanedWindow widget. http://effbot.org/tkinterbook/panedwindow.htm#reference

I also converted the master window to use a grid geometry manager. It looks 
like you can use pack manager and grid managers together as long as each 
manager is separated by a container/frame. So I use the pack manager to manage 
the scrollbars within the Frame. It ended up working out nicely.

I've attached a patch and would like to submit it for review!

--
keywords: +patch
Added file: http://bugs.python.org/file35503/turtledemo_pane.patch

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



[issue5235] distutils seems to only work with VC++ 2008 (9.0)

2014-06-06 Thread Mark Lawrence

Mark Lawrence added the comment:

Given that we're already using VC++ 2010 for 3.4 and there is discussion here 
http://code.activestate.com/lists/python-dev/131023/ about changing for 3.5 can 
this be closed?

--
nosy: +BreamoreBoy

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



[issue10747] Include version info in Windows shortcuts

2014-06-06 Thread Olive Kilburn

Olive Kilburn added the comment:

The included patch is probably fine, but I have given up testing it, because I 
think msi.py needs the paid-for version of Microsoft C++ to run.

--
keywords: +patch
Added file: http://bugs.python.org/file35504/mywork.patch

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



[issue21647] Idle unittests: make gui, mock switching easier.

2014-06-06 Thread Terry J. Reedy

Terry J. Reedy added the comment:

Tests that need at most tkinter Variables and message boxes run without gui 
since those are easy to mock and we want to set and retrieve values on MBox. 
Tests of displayed widgets other than Text are gui tests (unless we were to 
developed a substantial tk mock, which is beyond current plans). So the present 
issue is limited to test functions that involve Text and nothing else visible.

Having tried it, I prefer if-(and sometimes)-else blocks to commented out code. 
I dislike the latter in idle files: did someone just forget to remove it? If 
not, why is it there?  So I think your idea of completely switching to 
conditional code is a good idea. 

We must not directly switch on _is_gui_available(). If a system running tests 
under test, which means under test.regrtest, does not request 'gui', the gui 
tests should not run even if they could be. Try python -m test -v test_idle 
and you will see (at the moment) 67 OK and many skips, versus 110 ok and no 
skips with 'python -m test.text_idle'.

I think this should work:

import unicode
from test.support import requires
try:
requires('gui')
from tkinter import Tk, Text
running_gui = True
except unicode.SkipTest:
from idlelib.idle_test.mock_tk import Text
running_gui = False

running_gui would then be used for conditional expressions. I believe we could 
wrap the above, modified, in a function, such as mock_tk.get_text.

def get_text(gui_ok=True):
if gui_ok:
import unicode
from test.support import requires
try:
requires('gui')
from tkinter import Text
return Text, True
except unicode.SkipTest:
pass
   # else gui not ok or not available
   return Text, False

and use it as follows in a test_file.

from idlelib.idle_test.mock_tk import get_text # and anything else
Text, running_gui = get_text()  # (0), temporarily, to force non-gui 

This needs to be tested. Tests would be committed without 0, though forgetting 
to remove it would not be tragic.

Running a non-gui test on all buildbots is considered better than a gui test on 
a few. After thinking about your idea, I believe gui when possible, non-gui 
otherwise is even better. Should get_text work, but it be decided that all 
non-gui is better, the sense of the get_text parameter could be flipped to 
change all tests at once.

--

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



[issue21635] difflib.SequenceMatcher stores matching blocks as tuples, not Match named tuples

2014-06-06 Thread Terry J. Reedy

Terry J. Reedy added the comment:

Why do you think this is a bug? What behavior both looks wrong and gets 
improved by the change?

--
nosy: +terry.reedy, tim.peters
stage:  - test needed

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



[issue21678] Add operation plus for dictionaries

2014-06-06 Thread Terry J. Reedy

Terry J. Reedy added the comment:

This has been proposed, discussed on both python-list and python-ideas, and 
rejected more than once because there are there are multiple possible response 
to multiple keys: keep first value, keep second value (.update), keep both (in 
a list), or keep neither and raise.

'Obvious' ideas like this should be floated on one of those two lists to find 
out past response.

--
nosy: +terry.reedy
resolution:  - rejected
stage:  - resolved
status: open - closed
type:  - enhancement
versions: +Python 3.5 -Python 3.4

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



[issue21627] Concurrently closing files and iterating over the open files directory is not well specified

2014-06-06 Thread Steven Stewart-Gallus

Steven Stewart-Gallus added the comment:

Okay, now I'm confused. How would I conditionally compile and use the 
setcloexec object and header on POSIX platforms and not on Windows?

--

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



[issue11907] SysLogHandler can't send long messages

2014-06-06 Thread Garrett Cooper

Garrett Cooper added the comment:

The code doesn't appear to be conforming to RFC-3164 or RFC-5424:

(From RFC-3164):

4.1 syslog Message Parts

   The full format of a syslog message seen on the wire has three
   discernable parts.  The first part is called the PRI, the second part
   is the HEADER, and the third part is the MSG.  The total length of
   the packet MUST be 1024 bytes or less.  There is no minimum length of
   the syslog message although sending a syslog packet with no contents
   is worthless and SHOULD NOT be transmitted.

(From RFC-5424)

   The reason syslog transport receivers need only support receiving up
   to and including 480 octets has, among other things, to do with
   difficult delivery problems in a broken network.  Syslog messages may
   use a UDP transport mapping with this 480 octet restriction to avoid
   session overhead and message fragmentation.  In a network with
   problems, the likelihood of getting one single-packet message
   delivered successfully is higher than getting two message fragments
   delivered successfully.  Therefore, using a larger size may prevent
   the operator from getting some critical information about the
   problem, whereas using small messages might get that information to
   the operator.  It is recommended that messages intended for
   troubleshooting purposes should not be larger than 480 octets.  To
   further strengthen this point, it has also been observed that some
   UDP implementations generally do not support message sizes of more
   than 480 octets.  This behavior is very rare and may no longer be an
   issue.

...

   It must be noted that the IPv6 MTU is about 2.5 times 480.  An
   implementation targeted towards an IPv6-only environment might thus
   assume this as a larger minimum size.

With MTUs being what they are by default with ethernet, using an MTU 1500 with 
UDP when jumbo frames aren't available seems like a foolhardy thing to do.

I believe part of the problem is that the socket send buffer size is not being 
set in the SysLogHandler via socket.setsockopt and it's trying to jam as much 
information as it can down the pipe and failing, but I need to do more 
digging...

--
nosy: +yaneurabeya

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



[issue21665] 2.7.7 ttk widgets not themed

2014-06-06 Thread Steve Dower

Steve Dower added the comment:

You're right, I had OPTS for tk and tix. I think I'm going to modify my build 
scripts to use the buildbot scripts wherever possible. I also need to 
parameterise msi.py a bit so I don't have to modify it for releases.

--

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



[issue11907] SysLogHandler can't send long messages

2014-06-06 Thread Garrett Cooper

Garrett Cooper added the comment:

Please note that when I said the code I was looking at python 3.3 on OSX 
(compiled with MacPorts):

$ python3.3
Python 3.3.5 (default, Mar 11 2014, 15:08:59) 
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.2.79)] on darwin
Type help, copyright, credits or license for more information.

It's of course similar in lineage (BSD-foundation), but not the same of course..

I have a couple FreeBSD systems I can test this out on as well..

--

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



[issue21463] RuntimeError when URLopener.ftpcache is full

2014-06-06 Thread Jessica McKellar

Jessica McKellar added the comment:

I want to state explicitly what the error is for some new contributors who 
might pick this up at a sprint this weekend:

The issue is that you can't change a dictionary while iterating over it:

 d = {a: b}
 for elt in d.keys():
... del d[elt]
... 
Traceback (most recent call last):
  File stdin, line 1, in module
RuntimeError: dictionary changed size during iteration

In Python 2, d.keys() produced a copy of the list of keys, and we delete items 
from the dictionary while iterating over that copy, which is safe. In Python 3, 
d.keys() produces a view object* instead, and mutating the dictionary while 
iterating over it is unsafe and raises an error.

The patch makes a copy of the keys before iterating over it so that it is safe 
in Python 3.

* https://docs.python.org/3/library/stdtypes.html#dict-views

--
nosy: +jesstess

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



[issue21665] 2.7.7 ttk widgets not themed

2014-06-06 Thread Steve Dower

Steve Dower added the comment:

The buildbot scripts don't build tix and the build_tkinter.py script has a 
blatant error which prevents it from ever working (and old version numbers). I 
have no experience with the buildbots, but I don't see how they can possibly be 
producing correct builds of tk and friends.

Am I missing something?

--

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



[issue21682] Refleak in idle_test test_autocomplete

2014-06-06 Thread Zachary Ware

New submission from Zachary Ware:

The recently added test_autocomplete seems to be hanging onto a reference 
somewhere that it shouldn't be, see below.  This output was obtained by running 
`python -m test -R :: -uall test_idle`.  I tracked it down to test_autocomplete 
with hg bisect, and proved it by running the same test with test_autocomplete 
deleted. This refleak also causes extra scary-looking output when running other 
GUI tests, see 
http://buildbot.python.org/all/builders/x86%20Windows7%203.x/builds/8412/steps/test/logs/stdio
 (look for test_tk).

[1/1] test_idle
beginning 9 repetitions
123456789
warning: callback failed in WindowList class '_tkinter.TclError' : invalid 
command name .140195409867984.windows
...
repeat ad nauseum
...
warning: callback failed in WindowList class '_tkinter.TclError' : invalid 
command name .140195377829800.windows
.
test_idle leaked [6411, 6411, 6411, 6411] references, sum=25644
test_idle leaked [5150, 5153, 5152, 5152] memory blocks, sum=20607
1 test failed:
test_idle

--
assignee: terry.reedy
components: IDLE, Tests
messages: 219914
nosy: sahutd, terry.reedy, zach.ware
priority: normal
severity: normal
stage: needs patch
status: open
title: Refleak in idle_test test_autocomplete
type: resource usage
versions: Python 2.7, Python 3.4, Python 3.5

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



[issue21665] 2.7.7 ttk widgets not themed

2014-06-06 Thread Zachary Ware

Zachary Ware added the comment:

Tix was finally added to the pcbuild solution for 3.5 a couple months
ago, until that point it was never built on the buildbots.  If my
understanding of history is correct, build_tkinter.py has never been
used regularly, but was an initial push towards building Tcl/Tk/Tix
the same way OpenSSL is built in 3.4.  See #15968 and #21141 if you
want more information on the situation in 3.5.  The buildbot scripts
for 2.7 and 3.4 do build usable, debug versions of Tcl and Tk, though.
 The lack of Tix is hard to notice since there are absolutely no tests
for it yet.

I'm wary of backporting the Tcl/Tk/Tix building changes, especially to
2.7, but it should be possible to tack Tix onto the current buildbot
scripts.  I'll open an issue for that.

--

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



[issue21683] Add Tix to the Windows buildbot scripts

2014-06-06 Thread Zachary Ware

Changes by Zachary Ware zachary.w...@gmail.com:


--
assignee: zach.ware
components: Build, Tkinter, Windows
nosy: steve.dower, zach.ware
priority: normal
severity: normal
stage: needs patch
status: open
title: Add Tix to the Windows buildbot scripts
versions: Python 2.7, Python 3.4

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



[issue21684] inspect.signature bind doesn't include defaults or empty tuple/dicts

2014-06-06 Thread Ryan McCampbell

New submission from Ryan McCampbell:

I'm not sure if this is really a bug, but it is unexpected behavior. When you 
call bind on a Python 3.3 signature object, if you omit an optional argument, 
the default is not provided in the arguments dict. Similarly, if there is a 
var positional or var keyword parameter but there are no extra arguments, 
it will not be included. To emulate the effect on the namespace of an actual 
function, I would expect these to be included, as an empty tuple/dict in the 
case of variable arguments. I realize the current behavior may be useful in 
some cases, but if so, then another method could be added: bind_full, which 
would include all parameters of the signature.

--
messages: 219916
nosy: rmccampbell7
priority: normal
severity: normal
status: open
title: inspect.signature bind doesn't include defaults or empty tuple/dicts
type: behavior
versions: Python 3.3, Python 3.4

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



[issue21665] 2.7.7 ttk widgets not themed

2014-06-06 Thread Steve Dower

Steve Dower added the comment:

That's fine for 2.7.

I'm working on streamlining the project files for 3.5 to make my life easier 
dealing with both installers and the multiple compiler situation, so I'll no 
doubt poke that project at some point until my grand vision of 
single-click-install-build-sign-test comes true :)

--

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



<    1   2