Reordering of __new__ to minimize isinstance() calls to most
used types. Thanks Mark Dickinson.
........
r59238 | christian.heimes | 2007-11-30 20:18:08 +0100 (Fri, 30 Nov 2007) | 6 lines
Removed or replaced some more deprecated preprocessor macros.
Moved the _DEBUG and NDEBUG macros to two new property files.
Fixed #1527 Problem with static libs on Windows
Updated README.txt
........
Christian Heimes [Fri, 30 Nov 2007 15:13:13 +0000 (15:13 +0000)]
Backmerge -r59233:59232
Guido said:
Please roll this back. The error message you added is inappropriate
when the parameter to a legitimate register() call is omitted, e.g.
vc2008: Move python.vcproj first in the solution file, so that
it becomes the default startup project when opening the file
for the first time.
........
r59230 | georg.brandl | 2007-11-30 00:00:03 +0100 (Fri, 30 Nov 2007) | 3 lines
Add more examples to the wsgiref docs.
From GHOP by Josip Dzolonga.
........
r59231 | amaury.forgeotdarc | 2007-11-30 00:35:25 +0100 (Fri, 30 Nov 2007) | 7 lines
Issue #1402: PyInterpreterState_Clear() may still invoke user code
(in deallocation of running threads, for example), so the PyGILState_Release()
function must still be functional.
On the other hand, _PyGILState_Fini() only frees memory, and can be called later.
Backport candidate, but only after some experts comment on it.
........
Christian Heimes [Fri, 30 Nov 2007 10:18:26 +0000 (10:18 +0000)]
Partial fix for bug #1306
Multiple reinitializations of Python 3.0 failed on a system without a hardcoded default fs encoding. The patch makes sure that the default fs encoding is freed and reset to NULL on e.g. Linux.
I've also taken the liberty to increase the debugging in Objects/object.c:_Py_ForgetReference(). The method is used to validate the reference chain.
Reinitialization still fails in the 3rd round of my test suite:
* ob
object : <refcnt 0 at 0x821c840>
type : str
refcount: 0
address : 0x821c840
* op->_ob_prev->_ob_next
object : <refcnt 0 at 0x821c840>
type : str
refcount: 0
address : 0x821c840
* op->_ob_next->_ob_prev
object : bytearray(b'')
type : bytearray
refcount: 1
address : 0x826b838
Fatal Python error: UNREF invalid object
Christian Heimes [Thu, 29 Nov 2007 22:35:39 +0000 (22:35 +0000)]
Added all PyTypeObjects to the appropriate header files.
Before the patch a lot of internal types weren't available in the header files. The patch exposes the new iterators, views and some other types to all C modules. I've also renamed some of the types and tp_names.
Credits go to Thomas Lamb, who wrote this as a task in the GHOP contest.
........
r59223 | guido.van.rossum | 2007-11-29 10:25:12 -0800 (Thu, 29 Nov 2007) | 2 lines
Fix bug #1517, a segfault in lookdict().
........
r59224 | georg.brandl | 2007-11-29 10:33:01 -0800 (Thu, 29 Nov 2007) | 2 lines
Patch # 1507 by Mark Dickinson. Make complex(x, -0) retain the sign of
the imaginary part (as long as it's not complex).
Backport candidate?
........
r59204 | christian.heimes | 2007-11-28 00:16:44 +0100 (Wed, 28 Nov 2007) | 2 lines
Expose Py_Py3kWarningFlag as sys.py3kwarning as discussed in #1504
Also added a warning.warnpy3k() as convenient method for Python 3.x related deprecation warnings.
........
r59206 | christian.heimes | 2007-11-28 00:53:14 +0100 (Wed, 28 Nov 2007) | 1 line
I forgot to fix one occurence of new in test_descr
........
r59208 | christian.heimes | 2007-11-28 09:02:36 +0100 (Wed, 28 Nov 2007) | 1 line
Added py3kwarning to the documentation of the sys module.
........
Moved the errno import from inside the functions to the
module level. Fixes issue 1755179.
........
r59199 | christian.heimes | 2007-11-27 22:28:40 +0100 (Tue, 27 Nov 2007) | 1 line
Backport of changes to PCbuild9 from the py3k branch
........
r59200 | christian.heimes | 2007-11-27 22:34:01 +0100 (Tue, 27 Nov 2007) | 1 line
Replaced import of the 'new' module with 'types' module and added a deprecation warning to the 'new' module.
........
r59201 | christian.heimes | 2007-11-27 22:35:44 +0100 (Tue, 27 Nov 2007) | 1 line
Added a deprecation warning to the 'new' module.
........
Christian Heimes [Tue, 27 Nov 2007 13:05:10 +0000 (13:05 +0000)]
The changes to PyMethod_New and the removal of unbound methods breaks ctypes' COMError on Windows. This patch doesn't address the problem but re-enables the import of _ctypes until somebody has time to fix it right. I've no time to dig into it. Also see http://bugs.python.org/issue1505
Christian Heimes [Tue, 27 Nov 2007 10:40:20 +0000 (10:40 +0000)]
Removed the API to create unbound methods and simplified the API for bound methods. The signature is PyMethod_New(func, instance).
Also removed im_class and renamed im_self to __self__ and im_func to __func__. im_class can be substituted with method.__self__.__class__.
I've also updated some parts of the documenation.
Backport of the PCbuild9 directory from the py3k branch.
I've finished the last task for the PCbuild9 directory today. I don't think there is much left to do. Now you can all play around with the shiny new VS 2008 and try the PGO builds. I was able to get a speed improvement of about 10% on py3k.
Have fun! :)
........
r59126 | brett.cannon | 2007-11-22 16:06:51 -0800 (Thu, 22 Nov 2007) | 2 lines
Fix a bug in the test for using __loader__.get_data().
........
r59131 | christian.heimes | 2007-11-22 23:05:03 -0800 (Thu, 22 Nov 2007) | 1 line
Backport of PCbuild9 fixes from py3k r59130
........
r59132 | christian.heimes | 2007-11-23 01:10:36 -0800 (Fri, 23 Nov 2007) | 2 lines
Applied patch #1754273 and #1754271 from Thomas Glee
The patches are adding deprecation warnings for back ticks and <>
........
r59133 | christian.heimes | 2007-11-23 04:12:02 -0800 (Fri, 23 Nov 2007) | 2 lines
Fixed problems in the last commit. Filenames and line numbers weren't reported correctly.
Backquotes still don't report the correct file. The AST nodes only contain the line number but not the file name.
........
r59134 | christian.heimes | 2007-11-23 04:16:35 -0800 (Fri, 23 Nov 2007) | 1 line
How did the comment get there?
........
r59135 | christian.heimes | 2007-11-23 05:25:31 -0800 (Fri, 23 Nov 2007) | 1 line
And yet another fix for the patch. Paul Moore has send me a note that I've missed a declaration. The additional code has moved the declaration in the middle of the block.
........
r59136 | andrew.kuchling | 2007-11-23 05:37:39 -0800 (Fri, 23 Nov 2007) | 1 line
Make trace and doctest play nice together (issue 1429818). Will backport.
........
r59139 | skip.montanaro | 2007-11-23 09:12:47 -0800 (Fri, 23 Nov 2007) | 1 line
Major change in the internal structure of the Decimal
number: now it does not store the mantissa as a tuple
of numbers, but as a string.
This avoids a lot of conversions, and achieves a
speedup of 40%. The API remains intact.
Thanks Mark Dickinson.
........
r59146 | facundo.batista | 2007-11-23 10:14:50 -0800 (Fri, 23 Nov 2007) | 3 lines
Test cases from Cowlishaw, v2.57. All are pased cleanly.
........
r59156 | christian.heimes | 2007-11-23 17:36:02 -0800 (Fri, 23 Nov 2007) | 2 lines
Added filename to compiling struct based on Martin's suggestion.
I'm wonder why I was trying to add the filename to the node all the time. The compiling struct is more obvious.
........
r59158 | christian.heimes | 2007-11-23 17:53:59 -0800 (Fri, 23 Nov 2007) | 2 lines
Backport of fixes from py3k branch
svn merge -r59131:HEAD ../../py3k/PCbuild9/ .
........
r59159 | skip.montanaro | 2007-11-23 20:29:08 -0800 (Fri, 23 Nov 2007) | 1 line
revert change that breaks test_doctest (which I forgot to run - sorry)
........
r59162 | skip.montanaro | 2007-11-23 20:31:15 -0800 (Fri, 23 Nov 2007) | 1 line
#1344: document that you need to open std{in,out,err} with PIPE if you want
communicate() to work as described.
........
r59165 | georg.brandl | 2007-11-24 03:39:13 -0800 (Sat, 24 Nov 2007) | 2 lines
#1467: fix documentation for TestResult.add{Error,Failure}.
........
r59166 | georg.brandl | 2007-11-24 03:42:14 -0800 (Sat, 24 Nov 2007) | 2 lines
#1355: remove mention of PyXML from xml.dom docs.
........
r59169 | amaury.forgeotdarc | 2007-11-24 05:20:22 -0800 (Sat, 24 Nov 2007) | 2 lines
Warning "<> not supported in 3.x" should be enabled only when the -3 option is set.
........
r59170 | amaury.forgeotdarc | 2007-11-24 05:44:17 -0800 (Sat, 24 Nov 2007) | 3 lines
Issue #1445: Fix a SystemError when accessing the ``cell_contents``
attribute of an empty cell object. Now a ValueError is raised.
........
r59172 | georg.brandl | 2007-11-24 05:56:09 -0800 (Sat, 24 Nov 2007) | 3 lines
#1735632: add O_NOATIME constant to os module.
Also document a few other O_ constants that were missing from documentation.
........
r59173 | skip.montanaro | 2007-11-24 06:30:47 -0800 (Sat, 24 Nov 2007) | 1 line
back in these go - thanks to Titus Brown for the fix
........
r59176 | martin.v.loewis | 2007-11-24 10:33:40 -0800 (Sat, 24 Nov 2007) | 2 lines
Georg Brandl [Sun, 25 Nov 2007 00:45:05 +0000 (00:45 +0000)]
#1480: fix refleak in the sqlite module.
It came from rev 58682. The reason is that PyString_Concat
and PyUnicode_Concat work differently -- the equivalent to
PyString_Concat is PyUnicode_Append.
Christian Heimes [Sat, 24 Nov 2007 05:50:35 +0000 (05:50 +0000)]
Updated readme.txt
Added user macro for tcltk 64bit directory
Redone some changes to the ssl project. From now on the _ssl project depends on a 32bit build of Python to aid cross compiling on a 32bit OS.
Christian Heimes [Fri, 23 Nov 2007 17:32:38 +0000 (17:32 +0000)]
Implemented request from Marc-Andre Lemburg
For license reasons Python must not ship with IDEA, RC5 and MDC2. The latter are disabled by default but IDEA is enabled by default.
Christian Heimes [Thu, 22 Nov 2007 07:46:41 +0000 (07:46 +0000)]
Removed blocks from several functions in unicodeobject and stringobject where a PyString function was still checking for PyUnicode or the other way around.
PyUnicode and PyString shouldn't magically convert the other type.
Remove a unneeded line that had typos.
........
r59081 | christian.heimes | 2007-11-20 16:46:21 -0800 (Tue, 20 Nov 2007) | 1 line
Fixed #1372: zlibmodule.c: int overflow in PyZlib_decompress
........
r59082 | brett.cannon | 2007-11-20 16:47:36 -0800 (Tue, 20 Nov 2007) | 6 lines
doctest assumed that a package's __loader__.get_data() method used universal
newlines; it doesn't. To rectify this the string returned replaces all
instances of os.linesep with '\n' to fake universal newline support.
Add a missing check before deleting a package's __loader__.
........
r59088 | christian.heimes | 2007-11-20 17:17:28 -0800 (Tue, 20 Nov 2007) | 2 lines
Added NEWS entry
Thanks for the reminder, Brett
........
r59089 | amaury.forgeotdarc | 2007-11-20 17:38:26 -0800 (Tue, 20 Nov 2007) | 2 lines
Add a NEWS entry for r59076.
........
r59091 | christian.heimes | 2007-11-20 18:50:06 -0800 (Tue, 20 Nov 2007) | 2 lines
Final fix for #1403
The Windows installer and some Linux distros are using compileall to compile all py files in the Lib/ directory. However no test exists to check if all py files can be compiled. I figured out that make testall is the easiest way to test compileall.
........
Guido van Rossum [Wed, 21 Nov 2007 22:26:24 +0000 (22:26 +0000)]
Add ABC ByteString which unifies bytes and bytearray (but not memoryview).
There's no ABC for "PEP 3118 style buffer API objects" because there's no
way to recognize these in Python (apart from trying to use memoryview()
on them).
Note that array.array really should be registered as a MutableSequence
but that would require importing it whenever collections is imported.
Guido van Rossum [Wed, 21 Nov 2007 22:09:45 +0000 (22:09 +0000)]
Convert the socket module to insist on bytes for input, and to return bytes
(not bytearray) on output. Discovered a bunch of places that were still
depending on it accepting text strings.
Christian Heimes [Wed, 21 Nov 2007 02:51:50 +0000 (02:51 +0000)]
Final fix for #1403
> The Windows installer and some Linux distros are using compileall to compile all py files in the Lib/ directory. However no test exists to check if all py files can be compiled. I figured out that make testall is the easiest way to test compileall.
For py3k unit tests do some extra checks with -bb.
Christian Heimes [Wed, 21 Nov 2007 02:20:59 +0000 (02:20 +0000)]
Removed character set = unicode as requested by Amaury
Removed more project configs in order to use the defaults defined in the property files. The 'sed' tool was more than helpful for the job.
Patch #1468: Package Lib/test/*.pem.
........
r59068 | christian.heimes | 2007-11-20 04:21:02 +0100 (Tue, 20 Nov 2007) | 1 line
Another fix for test_shutil. Martin pointed out that it breaks some build bots
........
r59073 | nick.coghlan | 2007-11-20 15:55:57 +0100 (Tue, 20 Nov 2007) | 1 line
Backport some main.c cleanup from the py3k branch
........
r59076 | amaury.forgeotdarc | 2007-11-21 00:31:27 +0100 (Wed, 21 Nov 2007) | 6 lines
The incremental decoder for utf-7 must preserve its state between calls.
Solves issue1460.
Might not be a backport candidate: a new API function was added,
and some code may rely on details in utf-7.py.
........
Mark Summerfield [Tue, 20 Nov 2007 13:22:19 +0000 (13:22 +0000)]
The Identifiers and keywords syntax diagram did not appear correctly in the
HTML output. I've now fixed this as best I can (but could do with
improvement).
Note that there are two terms used, "Other_ID_Start" and
"Other_ID_Continue" that are not explained; I've added an extra see
reference to PEP 3131 though.
Christian Heimes [Tue, 20 Nov 2007 05:57:30 +0000 (05:57 +0000)]
Report #1473 Drop _EXPORTS macros in PCbuild9
I've removed a bunch of obsolete defines. I've also taken the opportunity to fix the pre-link event of sqlite3 and some optimization flags.
Christian Heimes [Tue, 20 Nov 2007 01:45:17 +0000 (01:45 +0000)]
Fixed bug #1470
py3k unit tests are removing %TEMP% dir on Windows
os.removedirs removes all parent directories until it hits a non empty directory. In my case my %TEMP% directory was clean and empty.
Oops, I missed this one again (test_univnewlines fails):
Some incremental decoders return multiple characters, even when fed with
only one more byte. In this case the tell() state must subtract the
number of extra characters.
Guido van Rossum [Mon, 19 Nov 2007 18:36:41 +0000 (18:36 +0000)]
Make test_cmd_line_scripts pass by using a unicode string instead of
a bytes string to hold argv0 in RunMainFromImporter().
Also changed the code lay-out a bit to be more readable (for me :-),
and print any unexpected errors rather than suppressing them.
Christian Heimes [Mon, 19 Nov 2007 18:35:20 +0000 (18:35 +0000)]
Fixed build order of the _ssl project. The openssl project needs to come first because the makefile puts the header files in the right place.
Added some optimization flags to the Release builds of pythoncore and the executables.
Guido van Rossum [Mon, 19 Nov 2007 18:03:44 +0000 (18:03 +0000)]
Merged revisions 59041-59055 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r59044 | neal.norwitz | 2007-11-18 17:46:20 -0800 (Sun, 18 Nov 2007) | 1 line
Use a slightly more recent version than 1.5.2b2.
........
r59047 | walter.doerwald | 2007-11-19 04:14:05 -0800 (Mon, 19 Nov 2007) | 2 lines
Fix typo in comment.
........
r59049 | walter.doerwald | 2007-11-19 04:41:10 -0800 (Mon, 19 Nov 2007) | 4 lines
Fix for #1444: utf_8_sig.StreamReader was (indirectly through decode())
calling codecs.utf_8_decode() with final==True, which falled with incomplete
byte sequences. Fix and test by James G. Sack.
........
r59051 | nick.coghlan | 2007-11-19 05:56:27 -0800 (Mon, 19 Nov 2007) | 1 line
Enable some test_cmd_line_script debugging output to investigate failure on Mac OSX buildbot
........
r59053 | facundo.batista | 2007-11-19 08:30:24 -0800 (Mon, 19 Nov 2007) | 3 lines
Make this work stand-alone, too.
........
r59055 | guido.van.rossum | 2007-11-19 09:50:22 -0800 (Mon, 19 Nov 2007) | 3 lines
Fix the OSX failures in this test -- they were due to /tmp being a symlink
to /private/tmp. Adding a call to os.path.realpath() to temp_dir() fixed it.
........
Christian Heimes [Mon, 19 Nov 2007 08:36:32 +0000 (08:36 +0000)]
I've spend some time to automate more steps of the build process. Now bzip2, bsddb, sqlite and openssl are automatically build by prelink steps.
I had to use some tricks to build openssl for 32 and 64bit CPUs in two separate build dirs.
Christian Heimes [Mon, 19 Nov 2007 01:23:57 +0000 (01:23 +0000)]
Removed ReleaseAMD64 and replaced it with platform x64. The x64 builds fine except of the modules that depend on external libraries like tkinter and openssl. And I can't test the build on my 32bit CPU.
Christian Heimes [Sun, 18 Nov 2007 21:30:36 +0000 (21:30 +0000)]
I'm using the xxmodule and xxsubtype to test the msvccompiler on Windows. I'm having trouble to compile the module with VS 2008 cl.exe because "initializer is not a constant".
Now in find, rfind, index, and rindex, you can use None as defaults,
as usual with slicing (both with str and unicode strings). This
fixes issue 1259.
For str only the stringobject.c file was modified. But for unicode,
I needed to repeat in the four functions a lot of code, so created
a new function that does part of the job for them (and placed it in
find.h, following a suggestion of Barry).
Also added tests for this behaviour.
........
r59021 | facundo.batista | 2007-11-16 19:41:24 +0100 (Fri, 16 Nov 2007) | 4 lines
Fix for stupid error (I need to remember to do a full 'make clean + make'
cycle before the tests...). Sorry.
........
r59022 | facundo.batista | 2007-11-16 20:16:15 +0100 (Fri, 16 Nov 2007) | 3 lines
Made _ParseTupleFinds only defined to unicodeobject.c
........
r59024 | raymond.hettinger | 2007-11-17 02:51:22 +0100 (Sat, 17 Nov 2007) | 1 line
Fix signature in example
........
r59033 | brett.cannon | 2007-11-17 08:07:29 +0100 (Sat, 17 Nov 2007) | 5 lines
Remove a confusing sentence about pth files and which directories are searched
for them.
Closes issue #1431. Thanks Giambattista Bloisi for the help.
........
r59039 | nick.coghlan | 2007-11-18 12:56:28 +0100 (Sun, 18 Nov 2007) | 1 line
Patch #1739468: Directories and zipfiles containing __main__.py are now executable
........
Christian Heimes [Sun, 18 Nov 2007 18:18:41 +0000 (18:18 +0000)]
Updates to the msi builder and PCbuild9 directory. msi.py can now create installers from the PCbuild9 directory with MSVCR90.dll. PCbuild and MSVCR71.dll are still the default.
Christian Heimes [Sat, 17 Nov 2007 08:15:27 +0000 (08:15 +0000)]
Initial import of new PCbuild9 for VS 2008. It partly based on PCbuild and partly hand crafted with some idea from PCbuild8. I've recreated all the extension module projects.
The new directory needs some more love and care but it works. I'm not able to test the AMD64 build.
The new tree is heavily using the *.vcprops property sheets. Please set any global settings in the property sheets.