[issue12844] Support more than 255 arguments

2011-09-02 Thread David Benjamin

David Benjamin  added the comment:

I don't think that patch works. Consider a dict subclass which has overridden 
update. Or perhaps a list subclass which has overridden addition. It would be 
quite poor if Python's behavior here w.r.t. which overrides are followed 
switched as you added more arguments.

--
nosy: +davidben

___
Python tracker 
<http://bugs.python.org/issue12844>
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue9334] argparse does not accept options taking arguments beginning with dash (regression from optparse)

2011-02-06 Thread David Benjamin

Changes by David Benjamin :


--
nosy: +davidben

___
Python tracker 
<http://bugs.python.org/issue9334>
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue16112] platform.architecture does not correctly escape argument to /usr/bin/file

2012-10-02 Thread David Benjamin

New submission from David Benjamin:

The implementation of platform.architecture shells out to the file command. It 
tries to escape quotes by replacing " with \", but that's not sufficient.

$ python3.2 -c 'import platform; platform.architecture("foo\\\"; echo Hi there 
> /tmp/Z; echo \\\"")' && cat /tmp/Z
Hi there

Here's a patch to make it use subprocess instead. I haven't tested it 
thoroughly building everything from trunk and running tests, but I verified it 
works by replacing the platform.py in my system Python install.

--
components: Library (Lib)
files: fix-platform-architecture.patch
keywords: patch
messages: 171825
nosy: David.Benjamin
priority: normal
severity: normal
status: open
title: platform.architecture does not correctly escape argument to /usr/bin/file
type: security
versions: Python 2.6, Python 2.7, Python 3.1, Python 3.2, Python 3.3, Python 
3.4, Python 3.5
Added file: http://bugs.python.org/file27391/fix-platform-architecture.patch

___
Python tracker 
<http://bugs.python.org/issue16112>
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue16112] platform.architecture does not correctly escape argument to /usr/bin/file

2012-10-04 Thread David Benjamin

David Benjamin added the comment:

Well, the theoretical deadlock's just if stdin is also a pipe, right? I think 
there isn't be a difference between communicate and stdout.read if only stdout 
is a pipe. Though it might be worth passing DEVNULL to stdin instead of 
inheriting, just to be tidy.

--

___
Python tracker 
<http://bugs.python.org/issue16112>
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue16112] platform.architecture does not correctly escape argument to /usr/bin/file

2012-10-04 Thread David Benjamin

David Benjamin added the comment:

Yes, communicate is needed if you have multiple pipes and need to be careful 
about both ends doing a blocking reads/writes on different ones. There's only 
one pipe here. Eh, whatever. If you guys really want to use communicate, I 
don't really care.

--

___
Python tracker 
<http://bugs.python.org/issue16112>
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue16278] os.rename documentation slightly inaccurate

2012-10-18 Thread David Benjamin

New submission from David Benjamin:

This is somewhat of a nitpick. os.rename's documentation says "If dst is a 
directory, OSError will be raised". On Unix, this isn't completely true. If the 
source is a directory and the destination is an empty directory, it'll 
overwrite the former with the latter. (Actually if the source is a directory 
the inverse is true; if dst is a file, OSError will be raised.)

In [1]: import os

In [2]: os.mkdir("aaa")

In [3]: open("aaa/blah", "w").close()

In [4]: os.mkdir("bbb")

In [5]: os.rename("aaa", "bbb")

In [6]: os.listdir("bbb")
Out[6]: ['blah']

--
assignee: docs@python
components: Documentation
messages: 173285
nosy: David.Benjamin, docs@python
priority: normal
severity: normal
status: open
title: os.rename documentation slightly inaccurate
type: enhancement
versions: Python 2.7, Python 3.4, Python 3.5

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