[issue19512] Avoid temporary Unicode strings, use identifiers to only create the string once

2013-11-19 Thread STINNER Victor
STINNER Victor added the comment: No reaction, I close the issue. Reopen it if you still have complains ;-) -- resolution: - fixed status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue19512

[issue19512] Avoid temporary Unicode strings, use identifiers to only create the string once

2013-11-12 Thread STINNER Victor
STINNER Victor added the comment: @Georg, Serhiy, Martin: Sorry for having commits directly without more review. I didn't expect negative feedback on such changes, I thaught to moving from literal C byte string to Python identifiers was a well accepted practice since identifiers are used in a

[issue19512] Avoid temporary Unicode strings, use identifiers to only create the string once

2013-11-08 Thread Roundup Robot
Roundup Robot added the comment: New changeset bf9c77bac36d by Victor Stinner in branch 'default': Issue #19512, #19526: Exclude the new _PyDict_DelItemId() function from the http://hg.python.org/cpython/rev/bf9c77bac36d -- ___ Python tracker

[issue19512] Avoid temporary Unicode strings, use identifiers to only create the string once

2013-11-07 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: What is the problem with these changes? Usually CPython team avoids code churn without serious reasons. Performance reasons for the change PySys_GetObject(stdout) to _PySys_GetObjectId(_PyId_stdout) are ridiculous. You changed hundreds lines of code for

[issue19512] Avoid temporary Unicode strings, use identifiers to only create the string once

2013-11-07 Thread STINNER Victor
STINNER Victor added the comment: Another problem is that PyUnicode_FromString() failure is not handled correctly in some cases. PyUnicode_FromString() can fail because an decoder error, but also because of a MemoryError. It can't fail on stdout because an decoder error. It can fail on

[issue19512] Avoid temporary Unicode strings, use identifiers to only create the string once

2013-11-07 Thread Georg Brandl
Georg Brandl added the comment: You mean for PyRun_InteractiveOneObject()? Oh, it can be made private, but what is the problem of adding yet another PyRun_Interactive*() function? There are already a lot of them :-) And this is a problem. Newly added function is not even documented.

[issue19512] Avoid temporary Unicode strings, use identifiers to only create the string once

2013-11-07 Thread STINNER Victor
STINNER Victor added the comment: Serhiy is right. You have to be responsible with the Py* namespace, and keep new functions private unless they are useful enough to the outside and you document them. I created the issue #19518 to discuss this part (but also to propose other enhancements

[issue19512] Avoid temporary Unicode strings, use identifiers to only create the string once

2013-11-07 Thread STINNER Victor
STINNER Victor added the comment: Errors become more unlikely because objects are only initialized once, near startup. So it put also less pressure on code handling errors :) (it is usually the least tested part of the code) If there are bugs in code handling errors, they should be fixed

[issue19512] Avoid temporary Unicode strings, use identifiers to only create the string once

2013-11-07 Thread Arfrever Frehtes Taifersar Arahesis
Changes by Arfrever Frehtes Taifersar Arahesis arfrever@gmail.com: -- nosy: +Arfrever ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue19512 ___

[issue19512] Avoid temporary Unicode strings, use identifiers to only create the string once

2013-11-07 Thread Roundup Robot
Roundup Robot added the comment: New changeset 01c4a0af73cf by Victor Stinner in branch 'default': Issue #19512, #19515: remove shared identifiers, move identifiers where they http://hg.python.org/cpython/rev/01c4a0af73cf -- ___ Python tracker

[issue19512] Avoid temporary Unicode strings, use identifiers to only create the string once

2013-11-06 Thread STINNER Victor
STINNER Victor added the comment: I changed the issue title to make it closer to the real changesets related to the issue. -- title: Avoid most calls to PyUnicode_DecodeUTF8Stateful() in Python interactive mode - Avoid temporary Unicode strings, use identifiers to only create the

[issue19512] Avoid temporary Unicode strings, use identifiers to only create the string once

2013-11-06 Thread Roundup Robot
Roundup Robot added the comment: New changeset 77bebcf5c4cf by Victor Stinner in branch 'default': Issue #19512: add _PyUnicode_CompareWithId() function http://hg.python.org/cpython/rev/77bebcf5c4cf New changeset 3f9f2cfae53b by Victor Stinner in branch 'default': Issue #19512: Use the new