Commit graph

21128 commits

Author SHA1 Message Date
Antoine Pitrou
658fad8aae Issue #3697: "Fatal Python error: Cannot recover from stack overflow"
could be easily encountered under Windows in debug mode when exercising
the recursion limit checking code, due to bogus handling of recursion
limit when USE_STACKCHEK was enabled.

Reviewed by Amaury Forgeot d'Arc on IRC.
2008-09-03 18:34:34 +00:00
Jesse Noller
338f5786ea merge 66184 to fix issue3110 to py3k 2008-09-03 18:22:19 +00:00
Jesse Noller
b814d6a704 Fix issue 3110 - solaris compilation of multiprocessing fails, reviewed by pitrou 2008-09-03 18:10:30 +00:00
Marc-André Lemburg
b339b2aa6f Issue #2562: Fix distutils PKG-INFO writing logic to allow having
non-ascii characters and Unicode in setup.py meta-data.
2008-09-03 11:13:56 +00:00
Vinay Sajip
6a2fd81316 Issue #3726: Allowed spaces in separators in logging configuration files. 2008-09-03 09:20:05 +00:00
Amaury Forgeot d'Arc
d8976f12d4 Merged revisions 66171 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r66171 | amaury.forgeotdarc | 2008-09-03 01:19:56 +0200 (mer., 03 sept. 2008) | 9 lines

  Issue 2975: when compiling multiple extension modules with visual studio 2008
  from the same python instance, some environment variables (LIB, INCLUDE)
  would grow without limit.

  Tested with these statements:
      distutils.ccompiler.new_compiler().initialize()
      print os.environ['LIB']
  But I don't know how to turn them into reliable unit tests.
........
2008-09-02 23:22:56 +00:00
Amaury Forgeot d'Arc
293924bf31 Issue 2975: when compiling multiple extension modules with visual studio 2008
from the same python instance, some environment variables (LIB, INCLUDE)
would grow without limit.

Tested with these statements:
    distutils.ccompiler.new_compiler().initialize()
    print os.environ['LIB']
But I don't know how to turn them into reliable unit tests.
2008-09-02 23:19:56 +00:00
Marc-André Lemburg
31a0a1478b Add news item for #3719. 2008-09-02 12:11:19 +00:00
Marc-André Lemburg
7b2b1f9b20 Add news item for #3719. 2008-09-02 12:10:46 +00:00
Gregory P. Smith
d712203d17 Issue #3708: os.urandom no longer goes into an infinite loop when passed a
non-integer floating point number.
2008-09-02 05:36:11 +00:00
Gregory P. Smith
2bb25cc1e2 Issue #3678: Correctly pass LDFLAGS and LDLAST to the linker on shared
library targets in the Makefile.
2008-09-02 05:29:51 +00:00
Brett Cannon
54bd41d81b The _warnings module did not properly handle cases where strings were not being
passed in as the message to use for a warning. Fixed along with making the code
more robust against other errors where return values were not checked.

Closes issue 3639.
Code review by Benjamin Peterson.
2008-09-02 04:01:42 +00:00
Brett Cannon
ec92e181fb Merge in r66135. Doing also required removing a stale DeprecationWarning along
with moving warnings.catch_warnings() over to keyword-only parameters for its
constructor (as documented in the 2.6 docs).
2008-09-02 02:46:59 +00:00
Brett Cannon
1eaf0742d8 Move test.test_support.catch_warning() to the warnings module, rename it
catch_warnings(), and clean up the API.

While expanding the test suite, a bug was found where a warning about the
'line' argument to showwarning() was not letting functions with '*args' go
without a warning.

Closes issue 3602.
Code review by Benjamin Peterson.
2008-09-02 01:25:16 +00:00
Benjamin Peterson
973e6c2cf3 remove py3k warnings about the threading api; update docs
Reviewer: Benjamin Peterson
2008-09-01 23:12:58 +00:00
Benjamin Peterson
b3085c9e26 remove the deprecation warnings for the old threading API; update the docs
Reviewer: Benjamin Peterson
2008-09-01 23:09:31 +00:00
Amaury Forgeot d'Arc
afa0d58a2d Issue #3751: str.rpartition would perform a left-partition when called with
a unicode argument.

Backport of r66119
2008-09-01 20:05:08 +00:00
Amaury Forgeot d'Arc
3571fbfed7 Issue #3751: str.rpartition would perform a left-partition when called with
a unicode argument.

will backport.
2008-09-01 19:52:00 +00:00
Antoine Pitrou
c6b09ebe58 #3712: The memoryview object had a reference leak and didn't support cyclic garbage collection.
Reviewed by Benjamin Peterson.
2008-09-01 15:10:14 +00:00
Vinay Sajip
35e3b03e86 logging: fixed lack of use of encoding attribute specified on a stream. 2008-09-01 14:33:59 +00:00
Benjamin Peterson
17f03ca962 Fix compilation when --without-threads is given #3683
Reviewer: Georg Brandl, Benjamin Peterson
2008-09-01 14:18:30 +00:00
Benjamin Peterson
f22c26ecf4 #3703 unhelpful _fileio.FileIO error message when trying to open a directory
Reviewer: Gregory P. Smith
2008-09-01 14:13:43 +00:00
Jesus Cea
6ba3329c27 bsddb code updated to version 4.7.3pre2. This code is the same than
Python 2.6 one, since the intention is to keep an unified 2.x/3.x
codebase.

The Python code is automatically translated using "2to3". Please, do not
update this code in Python 3.0 by hand. Update the 2.6 one and then do
"2to3".
2008-08-31 14:12:11 +00:00
Jesus Cea
4907d27c1f Update bsddb code to version 4.7.3pre2. This code should
be compatible with Python 3.0, also.

  http://www.jcea.es/programacion/pybsddb.htm#bsddb3-4.7.3
2008-08-31 14:00:51 +00:00
Antoine Pitrou
d4ae97bc38 #3668: When PyArg_ParseTuple correctly parses a s* format, but raises an
exception afterwards (for a subsequent parameter), the user code will
not call PyBuffer_Release() and memory will leak.

Reviewed by Amaury Forgeot d'Arc.
2008-08-29 18:39:48 +00:00
Antoine Pitrou
f7199578be #3668: When PyArg_ParseTuple correctly parses a s* format, but raises an
exception afterwards (for a subsequent parameter), the user code will
not call PyBuffer_Release() and memory will leak.

Reviewed by Amaury Forgeot d'Arc.
2008-08-29 18:37:05 +00:00
Amaury Forgeot d'Arc
db26f7c137 Issue 3611: in some cases (a __del__ re-raising an exception, when called from inside
an 'except' clause), the exception __context__ would be reset to None.
This crases the interpreter if this precisely happens inside PyErr_SetObject.

- now the __context__ is properly preserved
- in any case, PyErr_SetObject now saves the current exc_value in a local variable, to
avoid such crashes in the future.

Reviewer: Antoine Pitrou.
2008-08-29 07:13:32 +00:00
Benjamin Peterson
9edd2bd35c Fix #3651 various memory leaks when using the buffer interface
by Amaury Forgeot d'Arc
Reviewer: Antoine Pitrou
2008-08-27 00:31:37 +00:00
Antoine Pitrou
0668c62677 Issue #2534: speed up isinstance() and issubclass() by 50-70%, so as to
match Python 2.5 speed despite the __instancecheck__ / __subclasscheck__
mechanism. In the process, fix a bug where isinstance() and issubclass(),
when given a tuple of classes as second argument, were looking up
__instancecheck__ / __subclasscheck__ on the tuple rather than on each
type object.

Reviewed by Benjamin Peterson and Raymond Hettinger.
2008-08-26 22:42:08 +00:00
Antoine Pitrou
ec569b7947 Issue #2534: speed up isinstance() and issubclass() by 50-70%, so as to
match Python 2.5 speed despite the __instancecheck__ / __subclasscheck__
mechanism. In the process, fix a bug where isinstance() and issubclass(),
when given a tuple of classes as second argument, were looking up
__instancecheck__ / __subclasscheck__ on the tuple rather than on each
type object.

Reviewed by Benjamin Peterson and Raymond Hettinger.
2008-08-26 22:40:48 +00:00
Antoine Pitrou
e2dffc0aeb #3663: extra DECREF on syntax errors.
Patch by Amaury Forgeot d'Arc, reviewed by Benjamin Peterson.
2008-08-26 22:02:58 +00:00
Benjamin Peterson
14cb6bcf2b sort of backport 66038 by aliasing PyObject_Bytes to PyObject_Str 2008-08-26 17:08:40 +00:00
Benjamin Peterson
c15a07333e make bytes(o) respect __bytes__ #2415
This adds two new C-API functions: PyObject_Bytes and PyBytes_FromObject.

Reviewer: Barry
2008-08-26 16:46:47 +00:00
Benjamin Peterson
a786b026c9 Merged revisions 65910,65977,65980,65984,65986,66000,66011-66012,66014,66017,66020 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r65910 | benjamin.peterson | 2008-08-20 09:07:59 -0500 (Wed, 20 Aug 2008) | 1 line

  fix up the multiprocessing docs a little
........
  r65977 | christian.heimes | 2008-08-22 14:47:25 -0500 (Fri, 22 Aug 2008) | 3 lines

  Silenced compiler warning
  Objects/stringlib/find.h:97: warning: 'stringlib_contains_obj' defined but not used
  Reviewed by Benjamin Peterson
........
  r65980 | christian.heimes | 2008-08-22 15:10:27 -0500 (Fri, 22 Aug 2008) | 3 lines

  Fixed two format strings in the _collections module. For example
  Modules/_collectionsmodule.c:674: warning: format '%i' expects type 'int', but argument 2 has type 'Py_ssize_t'
  Reviewed by Benjamin Peterson
........
  r65984 | christian.heimes | 2008-08-22 16:23:47 -0500 (Fri, 22 Aug 2008) | 1 line

  d is the correct format string
........
  r65986 | mark.hammond | 2008-08-22 19:59:14 -0500 (Fri, 22 Aug 2008) | 2 lines

  Fix bug 3625: test issues on 64bit windows. r=pitrou
........
  r66000 | benjamin.peterson | 2008-08-23 15:27:43 -0500 (Sat, 23 Aug 2008) | 5 lines

  #3643 add a few more checks to _testcapi to prevent segfaults

  Author: Victor Stinner
  Reviewer: Benjamin Peterson
........
  r66011 | neal.norwitz | 2008-08-24 12:27:43 -0500 (Sun, 24 Aug 2008) | 1 line

  Ignore a couple more tests that report leaks inconsistently.
........
  r66012 | neal.norwitz | 2008-08-24 12:29:53 -0500 (Sun, 24 Aug 2008) | 1 line

  Use the actual blacklist of leaky tests
........
  r66014 | georg.brandl | 2008-08-24 13:11:07 -0500 (Sun, 24 Aug 2008) | 2 lines

  #3654: fix duplicate test method name. Review by Benjamin P.
........
  r66017 | benjamin.peterson | 2008-08-24 16:55:03 -0500 (Sun, 24 Aug 2008) | 1 line

  remove note about unimplemented feature
........
  r66020 | brett.cannon | 2008-08-24 18:15:19 -0500 (Sun, 24 Aug 2008) | 1 line

  Clarify that some attributes/methods are listed somewhat separately because they are not part of the threading API.
........
2008-08-25 21:05:21 +00:00
Neal Norwitz
6ae2eb268d Issue #3657: Fix uninitialized memory read when pickling longs.
The conversion to the unicode API was incorrect, it should use bytes.
repr is a bad variable name.  The use is overloaded, but I'll leave
that to fix later.

R=Brett
TESTED=./python -E -tt ./Lib/test/regrtest.py -uall
	valgrind -q --leak-check=yes --suppressions=Misc/valgrind-python.supp \
		./python -E -tt ./Lib/test/regrtest.py test_pickletools
2008-08-24 23:50:08 +00:00
Neal Norwitz
8f2f22ad27 Fix gdbinit to handle new types/APIs. 2008-08-24 20:59:23 +00:00
Benjamin Peterson
712ee92309 generate py3k warnings on __getslice__, __delslice__, and __setslice__
Reviewer: Brett Cannon
2008-08-24 18:10:20 +00:00
Neal Norwitz
a403e4141a Use the actual blacklist of leaky tests 2008-08-24 17:29:53 +00:00
Neal Norwitz
3782fba588 Ignore a couple more tests that report leaks inconsistently. 2008-08-24 17:27:43 +00:00
Neal Norwitz
3ce5d9207e Closes release blocker #3627.
Merged revisions 65335 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

TESTED=./python -E -tt ./Lib/test/regrtest.py -uall (both debug and opt)

........
  r65335 | neal.norwitz | 2008-07-31 10:17:14 -0700 (Thu, 31 Jul 2008) | 1 line

  Security patches from Apple:  prevent int overflow when allocating memory
........
2008-08-24 07:08:55 +00:00
Neal Norwitz
2f99b24172 Merged revisions 66006 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

TESTED=./python -E -tt ./Lib/test/regrtest.py -uall (both debug and opt modes)

........
  r66006 | neal.norwitz | 2008-08-23 22:04:52 -0700 (Sat, 23 Aug 2008) | 25 lines

  Fix:
   * crashes on memory allocation failure found with failmalloc
   * memory leaks found with valgrind
   * compiler warnings in opt mode which would lead to invalid memory reads
   * problem using wrong name in decimal module reported by pychecker

  Update the valgrind suppressions file with new leaks that are small/one-time
  leaks we don't care about (ie, they are too hard to fix).

  TBR=barry
  TESTED=./python -E -tt ./Lib/test/regrtest.py -uall (both debug and opt modes)
    in opt mode:
    valgrind -q --leak-check=yes --suppressions=Misc/valgrind-python.supp \
      ./python -E -tt ./Lib/test/regrtest.py -uall,-bsddb,-compiler \
                          -x test_logging test_ssl test_multiprocessing
    valgrind -q --leak-check=yes --suppressions=Misc/valgrind-python.supp \
      ./python -E -tt ./Lib/test/regrtest.py test_multiprocessing
    for i in `seq 1 4000` ; do
      LD_PRELOAD=~/local/lib/libfailmalloc.so FAILMALLOC_INTERVAL=$i \
          ./python -c pass
    done

  At least some of these fixes should probably be backported to 2.5.
........
2008-08-24 05:48:10 +00:00
Neal Norwitz
18aa388ca0 Fix:
* crashes on memory allocation failure found with failmalloc
 * memory leaks found with valgrind
 * compiler warnings in opt mode which would lead to invalid memory reads
 * problem using wrong name in decimal module reported by pychecker

Update the valgrind suppressions file with new leaks that are small/one-time
leaks we don't care about (ie, they are too hard to fix).

TBR=barry
TESTED=./python -E -tt ./Lib/test/regrtest.py -uall (both debug and opt modes)
  in opt mode:
  valgrind -q --leak-check=yes --suppressions=Misc/valgrind-python.supp \
    ./python -E -tt ./Lib/test/regrtest.py -uall,-bsddb,-compiler \
                        -x test_logging test_ssl test_multiprocessing
  valgrind -q --leak-check=yes --suppressions=Misc/valgrind-python.supp \
    ./python -E -tt ./Lib/test/regrtest.py test_multiprocessing
  for i in `seq 1 4000` ; do
    LD_PRELOAD=~/local/lib/libfailmalloc.so FAILMALLOC_INTERVAL=$i \
        ./python -c pass
  done

At least some of these fixes should probably be backported to 2.5.
2008-08-24 05:04:52 +00:00
Benjamin Peterson
6784eb79c9 #3643 add more checks to _testcapi to prevent segfaults
Author: Victor Stinner
Reviewer: Benjamin Peterson
2008-08-23 20:32:27 +00:00
Benjamin Peterson
37346b2b9b #3643 add a few more checks to _testcapi to prevent segfaults
Author: Victor Stinner
Reviewer: Benjamin Peterson
2008-08-23 20:27:43 +00:00
Benjamin Peterson
bc74e5be1a add NEWS note and test for last commit 2008-08-23 20:19:17 +00:00
Hye-Shik Chang
50d1f7935d #1276: Add temporary encoding aliases for non-supported Mac CJK
encodings that are detected as system defaults in MacOS with CJK
locales.  Will be replaced by properly-implemented codecs in 3.1.
2008-08-23 08:03:03 +00:00
Amaury Forgeot d'Arc
20443f3043 #3650: fix a reference leak in bytes.split('x')
Actually the same as r65785, but trunk only has bytearray.
2008-08-22 22:05:20 +00:00
Christian Heimes
1cc69636ef Fixed two format strings in the _collections module. For example
Modules/_collectionsmodule.c:674: warning: format '%i' expects type 'int', but argument 2 has type 'Py_ssize_t'
Reviewed by Benjamin Peterson
2008-08-22 20:10:27 +00:00
Christian Heimes
a27a62e74c Silenced a compiler warning in the sqlite module
Modules/_sqlite/row.c:187: warning: suggest parentheses around && within ||
Reviewed by Benjamin Peterson
2008-08-22 19:55:54 +00:00
Christian Heimes
7d4c3177d5 Silenced compiler warning
Objects/stringlib/find.h:97: warning: 'stringlib_contains_obj' defined but not used
Reviewed by Benjamin Peterson
2008-08-22 19:47:25 +00:00