[issue23572] functools.singledispatch fails when "not BaseClass" is True

2015-05-01 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

An example is Enum.

--
nosy: +serhiy.storchaka

___
Python tracker 

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



[issue24105] Use after free during json encoding a dict (3)

2015-05-01 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

Yes, if they are related. I didn't look at the code close, but at first glance 
all your recently opened issues look related (may be I wrong).

--

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

The use of PYTHONDONTWRITEBYTECODE is not a workaround because it makes your to 
have memory overhead unconditionally. The compiler needs more momory than 
require compiled data itself. If this is an issue, I suggest to use different 
representation for the data: JSON, pickle, or just marshal. Also it may be 
faster. Try also CSV or custom simple format if it is appropriate.

--
nosy: +serhiy.storchaka

___
Python tracker 

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



[issue24105] Use after free during json encoding a dict (3)

2015-05-01 Thread paul

paul added the comment:

You want multiple bugs in the same module grouped in one issue?

--

___
Python tracker 

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



[issue24105] Use after free during json encoding a dict (3)

2015-05-01 Thread Raymond Hettinger

Raymond Hettinger added the comment:

Please don't file a multiple tracker items for the same module.

--

___
Python tracker 

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



[issue24082] Obsolete note in argument parsing (c-api/arg.rst)

2015-05-01 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

About wording see also issue23088.

About possible deprecating see issue24009.

--
nosy: +serhiy.storchaka

___
Python tracker 

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



[issue24105] Use after free during json encoding a dict (3)

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
components: +Extension Modules
nosy: +ezio.melotti, pitrou, rhettinger, serhiy.storchaka

___
Python tracker 

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



[issue24103] Use after free in xmlparser_setevents (1)

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
components: +XML
nosy: +christian.heimes, serhiy.storchaka

___
Python tracker 

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



[issue24104] Use after free in xmlparser_setevents (2)

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
components: +XML
nosy: +serhiy.storchaka

___
Python tracker 

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



[issue24102] Multiple type confusions in unicode error handlers

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
components: +Interpreter Core, Unicode
nosy: +doerwalter, ezio.melotti, haypo, lemburg, serhiy.storchaka

___
Python tracker 

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



[issue24101] Use after free in siftup

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
nosy: +serhiy.storchaka

___
Python tracker 

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



[issue24100] Use after free in siftdown (2)

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
stage:  -> patch review

___
Python tracker 

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



[issue24100] Use after free in siftdown (2)

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
nosy: +serhiy.storchaka

___
Python tracker 

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



[issue24098] Multiple use after frees in obj2ast_* methods

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
nosy: +serhiy.storchaka

___
Python tracker 

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



[issue24099] Use after free in siftdown (1)

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
nosy: +serhiy.storchaka

___
Python tracker 

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



[issue24096] Use after free in get_filter

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
nosy: +ezio.melotti, pitrou, rhettinger, serhiy.storchaka

___
Python tracker 

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



[issue24097] Use after free in PyObject_GetState

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
nosy: +alexandre.vassalotti, pitrou, serhiy.storchaka

___
Python tracker 

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



[issue24094] Use after free during json encoding (PyType_IsSubtype)

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
nosy: +ezio.melotti, pitrou, rhettinger, serhiy.storchaka

___
Python tracker 

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



[issue24095] Use after free during json encoding a dict (2)

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
nosy: +ezio.melotti, pitrou, rhettinger, serhiy.storchaka

___
Python tracker 

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



[issue24092] Use after free in Element.extend (2)

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
nosy: +eli.bendersky, scoder, serhiy.storchaka

___
Python tracker 

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



[issue24093] Use after free in Element.remove

2015-05-01 Thread Serhiy Storchaka

Changes by Serhiy Storchaka :


--
nosy: +eli.bendersky, scoder, serhiy.storchaka

___
Python tracker 

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



[issue24052] sys.exit(code) returns "success" to the OS for some nonzero values of code

2015-05-01 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

Python 2 prints large return code only by accident, because it have unsupported 
type (sys.exit supports only int, not long). This is considered as a bug 
(issue14376) because small return codes of type long (0L or 1L) are printed too.

I don't think this issue need other fix besides a note that the program can 
return "success" for some non-zero values.

--
nosy: +serhiy.storchaka

___
Python tracker 

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



[issue24110] zipfile.ZipFile.write() does not accept bytes arcname

2015-05-01 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

Indeed, the note is outdated and incorrect. First, general unicode filename are 
allowed. They are encoded with UTF-8 internally. Second, currently there is no 
way to create an entry without encoding the filename to UTF-8 (if it is not 
ASCII-only). So you can't create ZIP file with arbitrary encoding (e.g. cp866) 
for old DOS/Windows unzippers.

Adding support of bytes filenames is different issue (issue10757).

--
nosy: +serhiy.storchaka
stage:  -> needs patch
versions:  -Python 3.6

___
Python tracker 

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



[issue24101] Use after free in siftup

2015-05-01 Thread Raymond Hettinger

Changes by Raymond Hettinger :


--
assignee:  -> rhettinger
nosy: +rhettinger

___
Python tracker 

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



[issue24110] zipfile.ZipFile.write() does not accept bytes arcname

2015-05-01 Thread R. David Murray

R. David Murray added the comment:

We should either make it work with byte filenames, or allow control of the 
filename encoding.  See also issue 20329.  Unfortunately that part is probably 
a new feature.  In the meantime the docs should be fixed: I believe we 
automatically encode the filename using the default zip filename codec (but 
someone should check).

--
nosy: +r.david.murray

___
Python tracker 

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



[issue24109] Documentation for difflib uses optparse

2015-05-01 Thread R. David Murray

R. David Murray added the comment:

It wouldn't be a bad idea.  Of course, you'd also need to update 
Tools/script/diff.py.  Tests should be added as well, since we have started 
adding tests for things in Tools.   The tests should be written first, to make 
sure that the behavior of 'diff' does not change, since I know there are people 
actively using it (on Windows).

I think it would also be a good idea to change the docs so that the actual diff 
script is embedded in the docs (sphinx has a directive for doing that), rather 
that duplicating the code.

--
nosy: +r.david.murray

___
Python tracker 

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



[issue24106] Messed up indentation makes undesired piece of code being run!

2015-05-01 Thread R. David Murray

R. David Murray added the comment:

Oops.  Yes, that's what I meant :)  Thanks for the correction and link, Eric.

--

___
Python tracker 

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



[issue24068] statistics module - incorrect results with boolean input

2015-05-01 Thread Steven D'Aprano

Changes by Steven D'Aprano :


--
stage:  -> test needed

___
Python tracker 

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



[issue24068] statistics module - incorrect results with boolean input

2015-05-01 Thread Steven D'Aprano

Steven D'Aprano added the comment:

The patch seems simple and straightforward enough. It just needs some tests, 
and a Round Tuit.

--
assignee:  -> steven.daprano

___
Python tracker 

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



[issue24088] yield expression confusion

2015-05-01 Thread R. David Murray

R. David Murray added the comment:

Yes, and it is not using generator function in two different ways: it is 
literally the case that calling the generator function returns a generator 
object, which in turn controls the execution of the generator function.  The 
text then goes on to explain how this works.

I think it would make sense to change "controls execution of a generator 
function" to "controls execution of the generator function", but I can't think 
of any other change that would make things clearer.

--
nosy: +r.david.murray

___
Python tracker 

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



[issue24060] Clearify necessities for logging with timestamps

2015-05-01 Thread R. David Murray

R. David Murray added the comment:

Sounds good to me.

--

___
Python tracker 

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



[issue24052] sys.exit(code) returns "success" to the OS for some nonzero values of code

2015-05-01 Thread R. David Murray

R. David Murray added the comment:

I meant when it is otherwise out of range.  That is, treat it like any other 
object that can't be returned as the return code: print it.  But only if it 
can't otherwise be used as the exit code.

--

___
Python tracker 

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



[issue24082] Obsolete note in argument parsing (c-api/arg.rst)

2015-05-01 Thread R. David Murray

R. David Murray added the comment:

The note is still valid concerning the length.  (Perhaps Victor should have 
deprected u instead of fixing it.)

--
nosy: +haypo, r.david.murray

___
Python tracker 

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



[issue24081] Obsolete caveat in reload() docs

2015-05-01 Thread R. David Murray

R. David Murray added the comment:

This generally comes up in the context of a module importing another module, 
and *that* module fails to import.  The first module is left in sys.modules as 
a stub.  Try that experiment, I'm pretty sure that is still true.

--
nosy: +r.david.murray

___
Python tracker 

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



[issue24090] Add a "copy vale to clipboard" option to the debugger

2015-05-01 Thread Terry J. Reedy

Terry J. Reedy added the comment:

As presented, this idea seems out of scope for Idle.  First, Idle is concerned 
with editing code, submitting it for execution, and displaying stdout and 
seterr output from the execution.  Idle normally knows nothing about name 
bindings created by user code in the user process. The code for menu commands 
is executed in the Idle process.  The code you displayed would have to be 
executed in the user process as part of user code.

Second, your request is for a very specific personal need. Running 
for i in range(1000): print('a'*100)
in 3.4.3 does not make Shell sluggish for me.  How much output, on what system, 
with what version, is a problem for you?

However, selecting a 1000 line block -- which is at least as likely to be 
output (as above) as an output representation -- is not pleasant.  A new Select 
Block option, active in Shell, would be generally useful.  The selected block 
could then be copied.  Deletion is not currently possible, but I might like to 
change that too. 


The debugger is an exception to Idle's normal ignorance of user code global and 
local namespaces.  The debugger window (which needs upgrading) can display 
names and object representations of both namespaces.  I do not know what it 
currently does with long representations (say 1000 chars or more), but they  
are clearly problematical and might best be truncated if not already.  Once the 
debugger has already pulled a string representation into the Idle process. 
reusing the existing Copy (to clipboard) function should be fairly easy.

--
nosy: +terry.reedy
title: Add a "copy variable to clipboard" option to the edit menu -> Add a 
"copy vale to clipboard" option to the debugger

___
Python tracker 

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



[issue24090] Add a "copy value to clipboard" option to the debugger

2015-05-01 Thread Terry J. Reedy

Changes by Terry J. Reedy :


--
title: Add a "copy vale to clipboard" option to the debugger -> Add a "copy 
value to clipboard" option to the debugger

___
Python tracker 

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




[issue24071] Python 2.7.8, 2.7.9 re.MULTILINE failure

2015-05-01 Thread R. David Murray

R. David Murray added the comment:

It is, however, frequently reported as a bug, if that makes you feel any better 
:)

--
nosy: +r.david.murray

___
Python tracker 

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



[issue24068] statistics module - incorrect results with boolean input

2015-05-01 Thread R. David Murray

R. David Murray added the comment:

I wonder if it would be better to reject Bool data in this context?  Bool is 
only a numeric type for historical reasons.

--
nosy: +r.david.murray

___
Python tracker 

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



[issue24066] send_message should take all the addresses in the To: header into account

2015-05-01 Thread R. David Murray

R. David Murray added the comment:

Can you write a test that shows the failure?  There is an existing test that 
demonstrates sending to multiple addresses (testSendMessageWithAddresses), so 
you must have found an edge case that isn't tested.  (Either that, or the 
existing test is broken.)

--
stage: patch review -> test needed

___
Python tracker 

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



[issue24056] Expose closure & generator status in function repr()

2015-05-01 Thread Terry J. Reedy

Terry J. Reedy added the comment:

Describing generator functions as such is a great idea.  But how about


Marking closure functions as such is a bit more subtle. However, there ia a 
real point that closure functions have a hidden input.  If it is mutated or 
rebound, the function will not be deterministic with respect to its overt input 
arguments.  Closure functions are similar to methods in this respect.

Await functions (Guido's name choice as of today), if the PEP is approved, will 
also need to be identified as such.  I propose a uniform format of no prefix, a 
single prefic or a (tuple) of prefixes.

--
nosy: +terry.reedy

___
Python tracker 

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



[issue24052] sys.exit(code) returns "success" to the OS for some nonzero values of code

2015-05-01 Thread Steven D'Aprano

Steven D'Aprano added the comment:

Maybe I've misunderstood RDM's comment, but if sys.exit(code) starts 
automatically printing the return code, that's going to break a lot of scripts.

--
nosy: +steven.daprano

___
Python tracker 

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



[issue24069] Option to delete obsolete bytecode files

2015-05-01 Thread Steven D'Aprano

Steven D'Aprano added the comment:

This would be risky, as byte-code only libraries do exist.

I think that deleting orphaned .pyc files from inside the __pycache__ directory 
is safe, but deleting orphaned .pyc files outside of that risks deleting 
legitimate byte-code libraries which are in use.

--
nosy: +steven.daprano

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Antoine Pitrou

Changes by Antoine Pitrou :


--
nosy: +benjamin.peterson, brett.cannon, georg.brandl, ncoghlan

___
Python tracker 

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



[issue24076] sum() several times slower on Python 3

2015-05-01 Thread Steven D'Aprano

Steven D'Aprano added the comment:

Antoine asked: 
> If someone has actual code that suffers from this, it would be good to know 
> about it.

You might have missed Łukasz' earlier comment: "In this particular case, 
there's internal usage at Twitter that unearthed it. The example is just a 
simplified repro."

--
nosy: +steven.daprano

___
Python tracker 

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



[issue24110] zipfile.ZipFile.write() does not accept bytes arcname

2015-05-01 Thread Stéphane Wirtel

Stéphane Wirtel added the comment:

This documentation is correct for python2 but maybe not for python3.

To check.

--
nosy: +matrixise

___
Python tracker 

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



[issue24110] zipfile.ZipFile.write() does not accept bytes arcname

2015-05-01 Thread July Tikhonov

Changes by July Tikhonov :


--
components: +Library (Lib)

___
Python tracker 

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



[issue24110] zipfile.ZipFile.write() does not accept bytes arcname

2015-05-01 Thread July Tikhonov

New submission from July Tikhonov:

In documentation of zipfile.ZipFile.write() there is following notice:

"There is no official file name encoding for ZIP files. If you have unicode 
file names, you must convert them to byte strings in your desired encoding 
before passing them to write()."

I understand it as that 'arcname' argument to write() shouldn't be of type str, 
but rather bytes.

But it is str that works, and bytes that does not:

$ ./python
Python 3.5.0a4+ (default:6f6e78931875, May  1 2015, 23:18:40) 
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import zipfile
>>> zf = zipfile.ZipFile('foo.zip', 'w')
>>> zf.write('python', 'a')
>>> zf.write('python', b'b')
Traceback (most recent call last):
  File "", line 1, in 
  File "/home/july/source/python/Lib/zipfile.py", line 1442, in write
zinfo = ZipInfo(arcname, date_time)
  File "/home/july/source/python/Lib/zipfile.py", line 322, in __init__
null_byte = filename.find(chr(0))
TypeError: a bytes-like object is required, not 'str'

(ZipInfo ostensibly attempts to find a zero byte in the filename, but searches 
instead for a unicode character chr(0). There are several other places in 
ZipInfo class that assume filename being str rather than bytes.)

I consider this a documentation issue: the notice is misleading. Although maybe 
there is someone who wants to fix the behavior of ZipInfo to allow bytes 
filename.

--
assignee: docs@python
components: Documentation
messages: 242355
nosy: docs@python, july
priority: normal
severity: normal
status: open
title: zipfile.ZipFile.write() does not accept bytes arcname
type: behavior
versions: Python 3.4, Python 3.5, Python 3.6

___
Python tracker 

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



[issue24108] fnmatch.translate('*.txt') fails

2015-05-01 Thread Guido van Rossum

Changes by Guido van Rossum :


--
nosy:  -gvanrossum

___
Python tracker 

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



[issue24108] fnmatch.translate('*.txt') fails

2015-05-01 Thread Christophe BAL

Christophe BAL added the comment:

Oups, sorry I want to say that you are totally RIGHT, and I am definitely
WRONG. :-)

--

___
Python tracker 

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



[issue24108] fnmatch.translate('*.txt') fails

2015-05-01 Thread Christophe BAL

Christophe BAL added the comment:

You're totally wrong and I am wrong.

There is still the tiny problem of the documentation.

Thanks for all.

*Christophe BAL*
*Enseignant de mathématiques en Lycée **et développeur Python amateur*
*---*
*French math teacher in a "Lycée" **and **Python **amateur developer*

2015-05-01 22:16 GMT+02:00 Merlijn van Deen :

>
> Merlijn van Deen added the comment:
>
> They are subtly different; the new regex also matches filenames with
> newlines, the old one doesn't (see Issue #6665 [1]).
>
> Patch (although crazily minor) attached. With some fuzz, it applies on
> everything from 2.6..default.
>
> [1] https://bugs.python.org/issue6665
>
> --
> assignee:  -> docs@python
> components: +Documentation -asyncio
> keywords: +patch
> nosy: +docs@python
> Added file: http://bugs.python.org/file39261/default.diff
>
> ___
> Python tracker 
> 
> ___
>

--

___
Python tracker 

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



[issue24054] Invalid syntax in inspect_fodder2.py (on Python 2.x)

2015-05-01 Thread David D. Riddle

David D. Riddle added the comment:

I have made the changes you suggested. Please look at lines 87-97. I am not 
certain if that is correct behavior. I was surprised that a SyntaxError is 
thrown in addition to the UnicodeDecodeError when linecache.getlines takes a 
file with bad unicode. Please tell me if this or other parts of the patch need 
work.

--
Added file: http://bugs.python.org/file39262/new.mywork.patch

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Buck Evan

Buck Evan added the comment:

New data: The memory consumption seems to be in the compiler rather than the 
marshaller:


```
$ PYTHONDONTWRITEBYTECODE=1 python -c 'import repro'
16032
$ PYTHONDONTWRITEBYTECODE=1 python -c 'import repro'
16032
$ PYTHONDONTWRITEBYTECODE=1 python -c 'import repro'
16032

$ python -c 'import repro'
16032

$ PYTHONDONTWRITEBYTECODE=1 python -c 'import repro'
8984
$ PYTHONDONTWRITEBYTECODE=1 python -c 'import repro'
8984
$ PYTHONDONTWRITEBYTECODE=1 python -c 'import repro'
8984
```

We were trying to use PYTHONDONTWRITEBYTECODE as a workaround to this issue, 
but it didn't help us because of this.

--

___
Python tracker 

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



[issue24108] fnmatch.translate('*.txt') fails

2015-05-01 Thread Merlijn van Deen

Merlijn van Deen added the comment:

They are subtly different; the new regex also matches filenames with newlines, 
the old one doesn't (see Issue #6665 [1]).

Patch (although crazily minor) attached. With some fuzz, it applies on 
everything from 2.6..default.

[1] https://bugs.python.org/issue6665

--
assignee:  -> docs@python
components: +Documentation -asyncio
keywords: +patch
nosy: +docs@python
Added file: http://bugs.python.org/file39261/default.diff

___
Python tracker 

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



[issue24108] fnmatch.translate('*.txt') fails

2015-05-01 Thread Yury Selivanov

Changes by Yury Selivanov :


--
nosy:  -yselivanov

___
Python tracker 

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



[issue24108] fnmatch.translate('*.txt') fails

2015-05-01 Thread Christophe BAL

Christophe BAL added the comment:

Ok.

But in that case, the official documentation should be updated because it
saids that string regex is  *'.*\\.txt\\Z(?ms)'*  and not  *'.*\\.txt$'*.

On the other hand, using this writing seems a bit strange. The 2nd one
should do the job.

*Christophe BAL*
*Enseignant de mathématiques en Lycée **et développeur Python amateur*
*---*
*French math teacher in a "Lycée" **and **Python **amateur developer*

2015-05-01 21:42 GMT+02:00 Merlijn van Deen :

>
> Merlijn van Deen added the comment:
>
> As far as I can see, the regex is correct:
>
> \Z
> Matches only at the end of the string.
>
> (?iLmsux)
> The group matches the empty string; the letters set the corresponding
> flags: (...)
>   - re.M (multi-line),
>   - re.S (dot matches all)
>
> See https://docs.python.org/3.4/library/re.html
>
> Do you have an example where the regex does not match a file it should
> match (or matches a file it shouldn't)?
>
> --
> nosy: +valhallasw
>
> ___
> Python tracker 
> 
> ___
>

--

___
Python tracker 

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



[issue24108] fnmatch.translate('*.txt') fails

2015-05-01 Thread Merlijn van Deen

Merlijn van Deen added the comment:

As far as I can see, the regex is correct:

\Z
Matches only at the end of the string.

(?iLmsux)
The group matches the empty string; the letters set the corresponding flags: 
(...)
  - re.M (multi-line),
  - re.S (dot matches all)

See https://docs.python.org/3.4/library/re.html

Do you have an example where the regex does not match a file it should match 
(or matches a file it shouldn't)?

--
nosy: +valhallasw

___
Python tracker 

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



[issue24109] Documentation for difflib uses optparse

2015-05-01 Thread Keith Gray

New submission from Keith Gray:

The documentation for optparse states it has been deprecated in favor of 
argparse since 2.7. However, the library documentation for difflib still uses 
optparse in the example.

https://docs.python.org/2/library/difflib.html#a-command-line-interface-to-difflib

https://docs.python.org/3.5/library/difflib.html#a-command-line-interface-to-difflib

I am willing to update the documentation if there is agreement that it is 
needed.

--
assignee: docs@python
components: Documentation
messages: 242347
nosy: docs@python, idahogray
priority: normal
severity: normal
status: open
title: Documentation for difflib uses optparse
type: enhancement
versions: Python 2.7, Python 3.2, Python 3.3, Python 3.4, Python 3.5, Python 3.6

___
Python tracker 

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



[issue24108] fnmatch.translate('*.txt') fails

2015-05-01 Thread Christophe BAL

New submission from Christophe BAL:

Hello.

I find the following bug on Python 3.4.

>>> import fnmatch, re
>>> regex = fnmatch.translate('*.txt')
>>> regex
'.*\\.txt\\Z(?ms)'

The string regex should be '.*\\.txt$'.

--
components: asyncio
messages: 242346
nosy: gvanrossum, haypo, projetmbc, yselivanov
priority: normal
severity: normal
status: open
title: fnmatch.translate('*.txt') fails
versions: Python 3.4

___
Python tracker 

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



[issue13044] pdb throws AttributeError at end of debugging session

2015-05-01 Thread Charles F. Bearden

Charles F. Bearden added the comment:

One further observation: the exception is thrown only if a breakpoint (apart 
from the call to pdb.set_trace) is set. If no breakpoint is set, the exception 
is not raised.

--

___
Python tracker 

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



[issue24107] Add support for retrieving the certificate chain

2015-05-01 Thread Ian Cordasco

Changes by Ian Cordasco :


--
nosy: +icordasc

___
Python tracker 

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



[issue13044] pdb throws AttributeError at end of debugging session

2015-05-01 Thread Charles F. Bearden

Charles F. Bearden added the comment:

I can reproduce this bug on Ubuntu 14.04.2 LTS with Python 2.7.6 using akl's 
debug.py.

--
nosy: +cfbearden

___
Python tracker 

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



[issue24106] Messed up indentation makes undesired piece of code being run!

2015-05-01 Thread Eric V. Smith

Eric V. Smith added the comment:

I think David meant the "else" clause on a "for" statement:

https://docs.python.org/2/reference/compound_stmts.html#the-for-statement

--
nosy: +eric.smith

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Geoffrey Spear

Changes by Geoffrey Spear :


--
components: +Interpreter Core
nosy: +geoffreyspear
type:  -> resource usage
versions: +Python 3.5

___
Python tracker 

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



[issue24107] Add support for retrieving the certificate chain

2015-05-01 Thread Christian Heimes

Christian Heimes added the comment:

I have an experimental branch that adds the feature and also exposes the 
subject public key information.

https://github.com/tiran/cpython/tree/feature/x509cert

--

___
Python tracker 

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



[issue24107] Add support for retrieving the certificate chain

2015-05-01 Thread Alex Gaynor

Changes by Alex Gaynor :


--
nosy: +alex, christian.heimes, dstufft, giampaolo.rodola, janssen, pitrou

___
Python tracker 

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



[issue24107] Add support for retrieving the certificate chain

2015-05-01 Thread Cory Benfield

New submission from Cory Benfield:

In order to perform HTTP Public Key Pinning (HPKP), it's necessary to have 
access to every certificate in the certificate trust chain. This is because the 
pinned key may actually be an intermediate or root certificate, rather than the 
leaf certificate.

PyOpenSSL offers this functionality, and it ought to be a relatively simple 
enhancement to expose the equivalent function in the stdlib.

For more background, see the urllib3 issue tracking the HPKP feature: 
https://github.com/shazow/urllib3/pull/607

--
components: Library (Lib)
messages: 242341
nosy: Lukasa
priority: normal
severity: normal
status: open
title: Add support for retrieving the certificate chain
type: enhancement
versions: Python 2.7, Python 3.5, Python 3.6

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Antoine Pitrou

Antoine Pitrou added the comment:

(by the way, my numbers are with Python 3.5 - the in-development version - on 
64-bit Linux)

--

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Antoine Pitrou

Antoine Pitrou added the comment:

Ok, I can reproduce:

$ rm -r __pycache__/; ./python repro2.py 
ready

1047656
VmHWM:   1047656 kB
VmRSS: 50660 kB

$ ./python repro2.py 
ready

77480
VmHWM: 77480 kB
VmRSS: 15664 kB


My guess is that memory fragmentation prevents the RSS mark to drop any 
further, though one cannot rule out the possibility of an actual memory leak.

--

___
Python tracker 

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



[issue24106] Messed up indentation makes undesired piece of code being run!

2015-05-01 Thread R. David Murray

R. David Murray added the comment:

Whitespace is significant in Python.  This is a fundamental part of the 
language.  So yes, this is intentional.  (Look up what the 'else' clause means 
on an if statement in the language reference.)

--
nosy: +r.david.murray
resolution:  -> not a bug
stage:  -> resolved
status: open -> closed

___
Python tracker 

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



[issue24078] inspect.getsourcelines ignores context and returns wrong line #

2015-05-01 Thread James Edwards

James Edwards added the comment:

Added Yury (inspect module) and Antoine (PEP 3155) to nosy -- apologies  if 
you're not interested.

--

___
Python tracker 

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



[issue24078] inspect.getsourcelines ignores context and returns wrong line #

2015-05-01 Thread James Edwards

Changes by James Edwards :


--
nosy: +pitrou, yselivanov

___
Python tracker 

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



[issue24106] Messed up indentation makes undesired piece of code being run!

2015-05-01 Thread jentyk

New submission from jentyk:

In [14]: for i in xrange(10):
   : if 1==1:
   : print "It's true"
   : else:
   : print "It isn't true. Seriously??"
   :
It's true
It's true
It's true
It's true
It's true
It's true
It's true
It's true
It's true
It's true
It isn't true. Seriously??

Is the behaviour intentional? I do not think so...

--
components: Interpreter Core
messages: 242336
nosy: jentyk
priority: normal
severity: normal
status: open
title: Messed up indentation makes undesired piece of code being run!
type: behavior
versions: Python 2.7

___
Python tracker 

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



[issue24078] inspect.getsourcelines ignores context and returns wrong line #

2015-05-01 Thread James Edwards

James Edwards added the comment:

Inspect could probably be updated to use 3.3's __qualname__ in the case of 
classes-in-classes; classes-in-functions or functions-in-functions would likely 
be harder, but I'm not sure it's impossible.

--
nosy: +jedwards

___
Python tracker 

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



[issue24064] Make the property doctstring writeable

2015-05-01 Thread Serhiy Storchaka

Serhiy Storchaka added the comment:

If make docstrings writable, it would be good to ensure that they exactly are 
strings. And if make the property doctstring writable, may be make other 
docstrings writable? It may be useful for setting the same docstring for Python 
implementation and C accelerator.

--
nosy: +serhiy.storchaka

___
Python tracker 

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



[issue24099] Use after free in siftdown (1)

2015-05-01 Thread Raymond Hettinger

Changes by Raymond Hettinger :


--
assignee:  -> rhettinger
nosy: +rhettinger

___
Python tracker 

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



[issue24100] Use after free in siftdown (2)

2015-05-01 Thread Raymond Hettinger

Raymond Hettinger added the comment:

Paul, this was nice work.  Thanks.

Attaching a patch to make 3.4 match the Python 3.5 version of the code which 
rearranges the object pointers without changing their reference counts.

With that patch, your crasher no longer seg-faults, but gives this instead:

len(L): 112234
__del__
__del__
Exception ignored in: >
Traceback (most recent call last):
  File "heap_crasher.py", line 18, in __del__
IndexError: list index out of range

--
keywords: +patch
versions: +Python 2.7
Added file: http://bugs.python.org/file39260/sc2.diff

___
Python tracker 

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



[issue24064] Make the property doctstring writeable

2015-05-01 Thread Chris Rebert

Changes by Chris Rebert :


--
nosy: +cvrebert

___
Python tracker 

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



[issue24100] Use after free in siftdown (2)

2015-05-01 Thread Raymond Hettinger

Changes by Raymond Hettinger :


--
assignee:  -> rhettinger
nosy: +rhettinger

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Anthony Sottile

Changes by Anthony Sottile :


Added file: http://bugs.python.org/file39259/anon_city_hoods.tar.gz

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Anthony Sottile

Anthony Sottile added the comment:

Attached is repro2.py (slightly different so my editor doesn't hate itself when 
editing the file)

I'll attach the other file in another comment since it seems I can only do one 
at a time

--
Added file: http://bugs.python.org/file39257/repro2.py

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Antoine Pitrou

Antoine Pitrou added the comment:

Is there any chance you can upload a script that's large enough to exhibit the 
problem?
(perhaps with anonymized data if there's something sensitive in there)

--

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Anthony Sottile

Anthony Sottile added the comment:

Ah, then 3.4 still has the problem:

$ rm -rf __pycache__/ *.pyc; python3.4 repro.py
ready

1112892
VmHWM:   1112892 kB
VmRSS:127196 kB
asottile@work:/tmp$ python3.4 repro.py 
ready

77468
VmHWM: 77468 kB
VmRSS: 65228 kB

--

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Antoine Pitrou

Antoine Pitrou added the comment:

Note under 3.x, you need to "rm -r __pycache__", not "rm *.pyc", since the pyc 
files are now stored in the __pycache__ subdirectory.

--

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Anthony Sottile

Anthony Sottile added the comment:

3.4 seems happier:

asottile@work:/tmp$ rm *.pyc; python3.4 repro.py
ready

77472
VmHWM: 77472 kB
VmRSS: 65228 kB
asottile@work:/tmp$ python3.4 repro.py
ready

77472
VmHWM: 77472 kB
VmRSS: 65232 kB


The nasty result above is from 2.7:

$ python
Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
[GCC 4.8.2] on linux2


3.3 also seems to have the same exaggerated problem:

$ rm *.pyc -f; python3.3 repro.py
ready

1112996
VmHWM:   1112996 kB
VmRSS:133468 kB
asottile@work:/tmp$ python3.3 repro.py
ready

81392
VmHWM: 81392 kB
VmRSS: 69304 kB


$ python3.3
Python 3.3.6 (default, Jan 28 2015, 17:27:09) 
[GCC 4.8.2] on linux


So seems the leaky behaviour was fixed at some point, any ideas of what change 
fixed it and is there a possibility of backporting it to 2.7?

--

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Antoine Pitrou

Antoine Pitrou added the comment:

Which Python version is that? Can you try with 3.4 or 3.5?
(is it under GNU/Linux?)

> This file is significantly larger than the one attached, not sure
> if it makes much of a difference.

Python doesn't make a difference internally, but perhaps it has some impact on 
your OS' memory management.

--

___
Python tracker 

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



[issue24017] Implemenation of the PEP 492 - Coroutines with async and await syntax

2015-05-01 Thread Guido van Rossum

Guido van Rossum added the comment:

I think we can continue this discussion *after* the PEP's been accepted.

--

___
Python tracker 

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



[issue24096] Use after free in get_filter

2015-05-01 Thread Christian Heimes

Christian Heimes added the comment:

Thanks Paul!

May I ask how you found that many use-after-free bugs? Are you using some sort 
of tool for static code analysis or fuzzying?

--

___
Python tracker 

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



[issue24085] large memory overhead when pyc is recompiled

2015-05-01 Thread Anthony Sottile

Anthony Sottile added the comment:

I'm still seeing a very large difference:

asottile@work:/tmp$ python repro.py 
ready

72604
VmHWM: 72604 kB
VmRSS: 60900 kB
asottile@work:/tmp$ rm *.pyc; python repro.py 
ready

1077232
VmHWM:   1077232 kB
VmRSS:218040 kB

This file is significantly larger than the one attached, not sure if it makes 
much of a difference.

--

___
Python tracker 

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



[issue24096] Use after free in get_filter

2015-05-01 Thread paul

paul added the comment:

Issue for poc_enc_dict3.py is here: https://bugs.python.org/issue24105

Please ignore first and third message.

--

___
Python tracker 

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



[issue24096] Use after free in get_filter

2015-05-01 Thread paul

Changes by paul :


Removed file: http://bugs.python.org/file39246/poc_enc_dict3.py

___
Python tracker 

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



[issue24105] Use after free during json encoding a dict (3)

2015-05-01 Thread paul

New submission from paul:

# Program received signal SIGSEGV, Segmentation fault.
# 0x40036740 in encoder_listencode_dict (s=0x405b43fc, acc=0xbf86438c, dct=, indent_level=0)
# at /home/p/Python-3.4.1/Modules/_json.c:1557
# 1557PyList_SET_ITEM(items, i, item);
# (gdb)  print *(PyListObject*)items
# $1 = {ob_base = {ob_base = {_ob_next = 0x405bcab4, _ob_prev = 0x40591184, 
ob_refcnt = 2, ob_type = 0x830e1c0 }, 
# ob_size = 0}, ob_item = 0x0, allocated = 0}
# (gdb) print i
# $2 = 112233
# 
# "items" was cleared in __hash__, so we get a wild write at a controlled 
address.

--
files: poc_enc_dict3.py
messages: 242322
nosy: pkt
priority: normal
severity: normal
status: open
title: Use after free during json encoding a dict (3)
type: crash
versions: Python 3.4
Added file: http://bugs.python.org/file39256/poc_enc_dict3.py

___
Python tracker 

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



[issue24099] Use after free in siftdown (1)

2015-05-01 Thread paul

New submission from paul:

# _siftdown(PyListObject *heap, Py_ssize_t startpos, Py_ssize_t pos)
# ...
# newitem = PyList_GET_ITEM(heap, pos);
# Py_INCREF(newitem);
# /* Follow the path to the root, moving parents down until finding
#a place newitem fits. */
# while (pos > startpos){
# parentpos = (pos - 1) >> 1;
# 1   parent = PyList_GET_ITEM(heap, parentpos);
# 2   cmp = PyObject_RichCompareBool(newitem, parent, Py_LT);
# if (cmp == -1) {
# Py_DECREF(newitem);
# return -1;
# }
# 3   if (size != PyList_GET_SIZE(heap)) {
# Py_DECREF(newitem);
# PyErr_SetString(PyExc_RuntimeError,
# "list changed size during iteration");
# return -1;
# }
# if (cmp == 0)
# break;
# 4   Py_INCREF(parent);
# ...
# 
# 1. parent isn't protected (refcnt==1)
# 2. custom compare function deletes all objects in "heap" and repopulates it 
with
#fresh instances. "parent" is freed
# 3. check is ineffective. Heap was mutated while preserving its size
# 4. use after free. Crash will manifest itself later.

--
files: poc_siftdown1.py
messages: 242316
nosy: pkt
priority: normal
severity: normal
status: open
title: Use after free in siftdown (1)
type: crash
versions: Python 3.4
Added file: http://bugs.python.org/file39250/poc_siftdown1.py

___
Python tracker 

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



[issue24104] Use after free in xmlparser_setevents (2)

2015-05-01 Thread Christian Heimes

Changes by Christian Heimes :


--
components: +Extension Modules
nosy: +christian.heimes
stage:  -> needs patch
versions: +Python 3.5

___
Python tracker 

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



[issue24103] Use after free in xmlparser_setevents (1)

2015-05-01 Thread Christian Heimes

Changes by Christian Heimes :


--
components: +Extension Modules
stage:  -> needs patch
versions: +Python 3.5

___
Python tracker 

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



[issue24104] Use after free in xmlparser_setevents (2)

2015-05-01 Thread paul

New submission from paul:

# Program received signal SIGSEGV, Segmentation fault.
# 0x4068565c in xmlparser_setevents (self=0x4064b13c, args=([], []))
# at /home/p/Python-3.4.1/Modules/_elementtree.c:3562
# 3562if (PyUnicode_Check(event_name_obj)) {
# (gdb) print *event_name_obj
# $6 = {_ob_next = 0xdbdbdbdb, _ob_prev = 0xdbdbdbdb, ob_refcnt = -606348325, 
ob_type = 0xdbdbdbdb}
# 
# 
# "event_name_obj" is deleted inside a custom destructor. Use after free.

--
files: poc_xml_setevents2.py
messages: 242321
nosy: pkt
priority: normal
severity: normal
status: open
title: Use after free in xmlparser_setevents (2)
type: crash
versions: Python 3.4
Added file: http://bugs.python.org/file39255/poc_xml_setevents2.py

___
Python tracker 

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



[issue24102] Multiple type confusions in unicode error handlers

2015-05-01 Thread Christian Heimes

Changes by Christian Heimes :


--
components: +Extension Modules
nosy: +christian.heimes
stage:  -> needs patch
versions: +Python 3.5

___
Python tracker 

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



[issue24103] Use after free in xmlparser_setevents (1)

2015-05-01 Thread paul

New submission from paul:

# xmlparser_setevents(XMLParserObject *self, PyObject* args)
# {
# ...
# /* clear out existing events */
# Py_CLEAR(target->start_event_obj);
# 1   Py_CLEAR(target->end_event_obj);
# Py_CLEAR(target->start_ns_event_obj);
# Py_CLEAR(target->end_ns_event_obj);
# 
# ...
# 
# seqlen = PySequence_Size(events_seq);
# for (i = 0; i < seqlen; ++i) {
# 3   PyObject *event_name_obj = PySequence_Fast_GET_ITEM(events_seq, i);
# ...
# 
# if (event_name == NULL) {
# ...
# return NULL;
# } else if (strcmp(event_name, "start") == 0) {
# ...
# } else if (strcmp(event_name, "end") == 0) {
# Py_INCREF(event_name_obj);
# 2   Py_XDECREF(target->end_event_obj);
# target->end_event_obj = event_name_obj;
# }
# ...
#   }
# ...
#   }
# 
# This one leverages nested _setevents invocations. First invocation sets 
# target->end_event_obj to S1 instance. On seconds invocation, 
# target->end_event_obj has refcnt==1, so DECREF at line 1 triggers 
S1.__del__().
# Destructor invokes _setevents again and sets target->end_event_obj to a S3 
# instance (with refcnt==1). After we return from nested call at line 1, 
# execution continues until it hits an "end" element. At line 2 S3.__del__() is
# called and it deallocates "events_seq". This triggers a controlled OOB (we can
# call it a use after free too) read at line 3. We can control a PyObject 
pointer.
# 
# Program received signal SIGSEGV, Segmentation fault.
# 0x4068563b in xmlparser_setevents (self=0x40669e4c, args=([], [])) at 
/home/p/Python-3.4.1/Modules/_elementtree.c:3560
# 3560PyObject *event_name_obj = 
PySequence_Fast_GET_ITEM(events_seq, i);
# (gdb) print i
# $1 = 1337
# (gdb) print *(PyListObject*)events_seq
# $2 = {ob_base = {ob_base = {_ob_next = 0x40669df4, _ob_prev = 0x4055f814, 
ob_refcnt = 3, ob_type = 0x830e1c0 }, 
# ob_size = 0}, ob_item = 0x0, allocated = 0}
#

--
files: poc_xml_setevents1.py
messages: 242320
nosy: pkt
priority: normal
severity: normal
status: open
title: Use after free in xmlparser_setevents (1)
type: crash
versions: Python 3.4
Added file: http://bugs.python.org/file39254/poc_xml_setevents1.py

___
Python tracker 

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



[issue24102] Multiple type confusions in unicode error handlers

2015-05-01 Thread paul

New submission from paul:

# Breakpoint 1, PyUnicodeEncodeError_GetEnd (exc=, 
end=0xbf9e8f7c) at Objects/exceptions.c:1643
# 1643PyObject *obj = get_unicode(((PyUnicodeErrorObject *)exc)->object,
# (gdb) s
# get_unicode (attr=, name=0x82765ea "object") at 
Objects/exceptions.c:1516
# 1516if (!attr) {
# (gdb) print *attr
# $4 = {_ob_next = 0xfefefefe, _ob_prev = 0xfefefefe, ob_refcnt = -16843010, 
ob_type = 0xfefefefe}
# (gdb) c
# Continuing.
# 
# Program received signal SIGSEGV, Segmentation fault.
# 0x080bc7d9 in get_unicode (attr=, name=0x82765ea 
"object") at Objects/exceptions.c:1521
# 1521if (!PyUnicode_Check(attr)) {
#
# Type confusion. IsInstance check is ineffective because of custom 
# __getattribute__ method. Contents of string instance is interpreted as
# an exception object.

--
files: poc_unicode_errors.py
messages: 242319
nosy: pkt
priority: normal
severity: normal
status: open
title: Multiple type confusions in unicode error handlers
type: crash
versions: Python 3.4
Added file: http://bugs.python.org/file39253/poc_unicode_errors.py

___
Python tracker 

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



[issue24101] Use after free in siftup

2015-05-01 Thread Christian Heimes

Changes by Christian Heimes :


--
components: +Extension Modules
nosy: +christian.heimes
stage:  -> needs patch
versions: +Python 3.5

___
Python tracker 

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



[issue24098] Multiple use after frees in obj2ast_* methods

2015-05-01 Thread Christian Heimes

Changes by Christian Heimes :


--
components: +Extension Modules
stage:  -> needs patch
versions: +Python 3.5

___
Python tracker 

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



  1   2   >