Commit Graph

4351 Commits

Author SHA1 Message Date
Neal Norwitz e6e383f498 Revert SF #1615701 (rev 53655): dict.update() does *not* call __getitem__() or
keys() if subclassed.  This is to remain consistent with 2.5.

See discussion here:
  http://mail.python.org/pipermail/python-dev/2007-April/072565.html
2007-04-16 06:59:13 +00:00
Neal Norwitz 8d61db5a00 Revert 54805 for 2.5.1 release. Can be applied after 2.5 branch is unfrozen. 2007-04-16 06:20:14 +00:00
Barry Warsaw 9bd522d7d1 Add code to read from master_fd in the parent, breaking when we get an OSError
(EIO can occur on Linux) or there's no more data to read.  Without this,
test_pty.py can hang on the waitpid() because the child is blocking on the
stdout write.  This will definitely happen on Mac OS X and could potentially
happen on other platforms.  See the comment for details.
2007-04-13 16:12:02 +00:00
Raymond Hettinger 3608f0570e Bug #1563759: struct.unpack doens't support buffer protocol objects 2007-04-04 20:32:03 +00:00
Martin v. Löwis 8863544522 Bug #1686475: Support stat'ing open files on Windows again. 2007-04-04 18:30:56 +00:00
Raymond Hettinger d6030acd7f Array module's buffer interface can now handle empty arrays. 2007-04-02 22:39:08 +00:00
Raymond Hettinger 4bbcb64d5d SF #1693079 Array module cannot pickle empty arrays 2007-04-02 17:03:46 +00:00
Neal Norwitz 65407fb734 Backport 54594:
Fix SF #1688393, sock.recvfrom(-24) crashes

Also fix some method names that were copied incorrectly (trunk fixed).
2007-03-31 18:56:11 +00:00
Žiga Seilnacht e5df857cc3 Bug #1675967: re patterns pickled with older Python versions can
now be unpickled.
 (backport form rev. 54492)
2007-03-21 20:37:39 +00:00
Raymond Hettinger 7ed0a65831 Test and fix fromkeys optional argument. 2007-03-21 20:36:45 +00:00
Georg Brandl 8a10ea4613 Patch #1682205: a TypeError while unpacking an iterable is no longer
masked by a generic one with the message "unpack non-sequence".
 (backport from rev. 54480)
2007-03-21 09:00:55 +00:00
Raymond Hettinger f94e89c578 Extend work on rev 52962 and 53830 eliminating redundant PyObject_Hash() calls and fixing set/dict interoperability. 2007-03-20 21:45:04 +00:00
Collin Winter 7d9ac78384 Patch #1642547: Fix an error/crash when encountering syntax errors in complex if statements.
Backported from r54404.
2007-03-16 04:12:48 +00:00
Žiga Seilnacht c1b4e8e6e2 Patch #1462488: prevent a segfault in object_reduce_ex() by splitting
the implementation for __reduce__ and __reduce_ex__ into two separate
functions. Fixes bug #931877.
 (backport from rev. 54397)
2007-03-15 11:47:59 +00:00
Martin v. Löwis 7520df439a Patch #1559413: Fix test_cmd_line if sys.executable contains a space. 2007-03-14 20:02:38 +00:00
Žiga Seilnacht 94c887258c Patch #1680015: Don't modify __slots__ tuple if it contains an unicode
name. Remove a reference leak that happened if the name could not be
converted to string.
 (backport from rev. 54378)
2007-03-14 12:34:30 +00:00
Georg Brandl 027ac24650 Bug #767111: fix long-standing bug in urllib which caused an
AttributeError instead of an IOError when the server's response didn't
contain a valid HTTP status line.
 (backport from rev. 54376)
2007-03-14 08:27:57 +00:00
Collin Winter e19d7a3c0a Bug #742342: make Python stop segfaulting on infinitely-recursive reload()s. Fixed by patch #922167.
Backported from r54291.
2007-03-12 16:49:23 +00:00
Vinay Sajip fbf1f3e602 Fix resource leak reported in SF #1516995. 2007-03-11 18:37:20 +00:00
Collin Winter 69fe9e478f Convert an assert to a raise so it works even in the presence of -O. 2007-03-10 14:35:22 +00:00
Georg Brandl 237458b2bf Revert rev. 54198, it's not really backwards compatible. 2007-03-10 08:06:14 +00:00
Collin Winter 86d8d3520d Bug #1531963: Make SocketServer.TCPServer's server_address always be equal to calling getsockname() on the server's socket. Fixed by patch #1545011.
Backported from r54253.
2007-03-10 03:31:44 +00:00
Brett Cannon afd9b2b54d Manual backport of r54233. This will help prevent spurious Buildbot failures
by HTTPS connections that time out.
2007-03-09 04:57:00 +00:00
Collin Winter 590af0a7c9 Backported r54226 from p3yk: Move test_unittest, test_doctest and test_doctest2 higher up in the testing order. 2007-03-08 19:58:46 +00:00
Georg Brandl 0c4f3fda50 Backport skipping fromtimestamp(negative value) tests on Windows (from rev. 54209) 2007-03-07 16:12:05 +00:00
Georg Brandl 84a0b8d4b6 Patch #1001604: glob.glob() now returns unicode filenames if it was
given a unicode argument and os.listdir() returns unicode filenames.
 (backport from rev. 54197)
2007-03-07 08:32:24 +00:00
Walter Dörwald 05b5c7fe0e Backport checkin:
Patch for bug #1633621: if curses.resizeterm() or
curses.resize_term() is called, update _curses.LINES,
_curses.COLS, curses.LINES and curses.COLS.
2007-03-06 20:46:26 +00:00
Georg Brandl 62b1b001e6 Patch #1654417: make operator.{get,set,del}slice use the full range
of Py_ssize_t.
 (backport from rev. 54177)
2007-03-06 19:00:09 +00:00
Georg Brandl ffb0a804c6 Patch #1638879: don't accept strings with embedded NUL bytes in long().
(backport from rev. 54173)
2007-03-06 18:44:35 +00:00
Georg Brandl 02d7cffb8f Patch #1646728: datetime.fromtimestamp fails with negative
fractional times.  With unittest.
  (backport from rev. 54167 by Guido)
2007-03-06 17:46:17 +00:00
Georg Brandl 1a74b4325c A test case for the defaultdict KeyError bug.
(backport from rev. 54162)
2007-03-06 13:35:08 +00:00
Georg Brandl 0520e03d0f A test case for the fix in #1674228.
(backport from rev. 54154)
2007-03-06 11:51:27 +00:00
Georg Brandl 0ea891603d Patch #1674228: when assigning a slice (old-style), check for the
sq_ass_slice instead of the sq_slice slot.
 (backport from rev. 54139)
2007-03-05 22:28:13 +00:00
Georg Brandl 131069b3a0 Fix a bug in test_dict and test_userdict, found at the PyPy sprint.
(backport from rev. 54114)
2007-03-04 17:19:02 +00:00
Raymond Hettinger d882e36f45 Fix constantification of None. 2007-03-02 19:19:05 +00:00
Thomas Wouters 25e7cfa4b9 Backported r51621 from p3yk:
Don't use a fixed temporary name (gdbm).
Don't use our own temp name creation (dbm).
2007-02-25 22:15:04 +00:00
Raymond Hettinger 1bff796983 Extend work on revision 52962: Eliminate redundant calls to PyObject_Hash(). 2007-02-19 03:04:45 +00:00
Martin v. Löwis 497380f48c Revert r53672. 2007-02-18 08:54:32 +00:00
Martin v. Löwis 626b2e992f Patch 1463026: Support default namespace in XMLGenerator.
Fixes #847665.
2007-02-12 12:21:41 +00:00
Martin v. Löwis 2e8b602ac1 Bug #1653736: Complain about keyword arguments to time.isoformat. 2007-02-08 09:13:51 +00:00
Raymond Hettinger 9f0e1ea964 Do not let overflows in enumerate() and count() pass silently. 2007-02-07 23:57:05 +00:00
Raymond Hettinger 127ef44c7b Bug #1575169: operator.isSequenceType() now returns False for subclasses of dict. 2007-02-07 22:12:01 +00:00
Raymond Hettinger 113776c411 Check for a common user error with defaultdict(). 2007-02-07 21:40:49 +00:00
Raymond Hettinger 20dcf1cb9d SF #1615701: make d.update(m) honor __getitem__() and keys() in dict subclasses 2007-02-07 20:01:28 +00:00
Georg Brandl cd7a78e0a4 [Patch #783050 from Patrick Lynch] The emulation of forkpty() is incorrect;
the master should close the slave fd.

Added a test to test_pty.py that reads from the master_fd after doing
a pty.fork(); without the fix it hangs forever instead of raising an
exception.  (<crossing fingers for the buildbots>)

Backport from trunk rev. 53146.
2007-01-31 07:48:49 +00:00
Georg Brandl 20aa477a2d Patch #1638243: the compiler package is now able to correctly compile
a with statement; previously, executing code containing a with statement
compiled by the compiler package crashed the interpreter.
 (backport from rev. 53575)
2007-01-27 17:43:07 +00:00
Brett Cannon 6d8e5ad09d Backport fix for bug #1643943. 2007-01-25 23:22:24 +00:00
Brett Cannon 75ba075110 If you created a weakref in an object's __del__ method to itself it would
segfault the interpreter during weakref clean up.  Now any new weakrefs created
after __del__ is run are removed silently.

Fixes bug #1377858 and the weakref_in_del crasher for new-style classes.
Classic classes are still affected.
2007-01-23 22:41:20 +00:00
Andrew M. Kuchling f446a9b00a [Bug #1633678] Improve pattern used for mbox 'From' lines; add a simple test 2007-01-22 20:49:44 +00:00
Georg Brandl 962e9165aa Patch #1627441: close sockets properly in urllib2.
(backport from rev. 53511)
2007-01-21 10:35:14 +00:00
Georg Brandl 8e932e7d68 Bug #1486663: don't reject keyword arguments for subclasses of builtin
types.
 (backport from rev. 53509)
2007-01-21 10:28:56 +00:00
Peter Astrand 29794ecd43 Fix for bug #1634343: allow specifying empty arguments on Windows 2007-01-13 22:37:11 +00:00
Raymond Hettinger 535989ecb6 SF #1486663 -- Allow keyword args in subclasses of set() and frozenset(). 2007-01-11 18:21:04 +00:00
Raymond Hettinger 5b44cbe6d8 Fix zero-length corner case for iterating over a mutating deque. 2007-01-08 18:05:53 +00:00
Raymond Hettinger ca516d21ab Fix stability of heapq's nlargest() and nsmallest(). 2007-01-04 17:53:16 +00:00
Raymond Hettinger 9cdf70399f For sets with cyclical reprs, emit '...' instead of recursing. 2006-12-29 18:49:13 +00:00
Thomas Wouters 04e820443b Backport trunk checkin r51565:
Fix SF bug #1545837: array.array borks on deepcopy. array.__deepcopy__()
needs to take an argument, even if it doesn't actually use it.
2006-12-29 14:42:17 +00:00
Lars Gustäbel f9a2c63c79 Patch #1504073: Fix tarfile.open() for mode "r" with a fileobj argument.
Backport from rev. 53161.
2006-12-27 10:36:58 +00:00
Lars Gustäbel 12e087a1b1 Patch #1262036: Prevent TarFiles from being added to themselves under
certain conditions.

(backport from rev. 53155)

Moved message from my previous change to the right place in
Misc/NEWS.
2006-12-23 18:13:57 +00:00
Lars Gustäbel aedb92e59c Patch #1230446: tarfile.py: fix ExFileObject so that read() and tell()
work correctly together with readline().

(backport from rev. 53153)
2006-12-23 16:51:47 +00:00
Raymond Hettinger 5425a67331 Bug #1590891: random.randrange don't return correct value for big number 2006-12-20 07:43:59 +00:00
Raymond Hettinger 775ebe29a5 Backport fixes to set objects:
rev 52964 sf 1576657 KeyError unpacks tuple arguments
rev 52963 sf 1456209 obscure resizing vulnerability
rev 52962 redundant calls to PyObject_Hash()
2006-12-08 18:12:24 +00:00
Georg Brandl 25f58f6b5a Patch #1610437: fix a tarfile bug with long filename headers.
(backport from rev. 52938)
2006-12-06 22:21:23 +00:00
Walter Dörwald 9ff1d39402 Backport checkin:
Change decode() so that it works with a buffer (i.e. unicode(..., 'utf-8-sig'))
SF bug #1601501.
2006-11-23 05:06:31 +00:00
Andrew M. Kuchling 90e23c4769 Add extra SHA tests 2006-11-20 13:31:09 +00:00
Andrew M. Kuchling 830358af09 Remove locking of individual message files in MH.pack().
[Backport of rev52776 from the trunk.]
2006-11-17 16:16:28 +00:00
Georg Brandl dd3bffb679 Bug #1588217: don't parse "= " as a soft line break in binascii's
a2b_qp() function, instead leave it in the string as quopri.decode()
does.
 (backport from rev. 52765)
2006-11-16 17:08:48 +00:00
Andrew M. Kuchling d52a0b8583 [Bug #1569790] mailbox.Maildir.get_folder() loses factory information
Both the Maildir and MH classes had this bug; the patch fixes both classes
and adds a test.
2006-11-09 13:33:53 +00:00
Martin v. Löwis a1e3422205 Correctly forward exception in instance_contains().
Fixes #1591996. Patch contributed by Neal Norwitz.
2006-11-08 06:46:49 +00:00
Neal Norwitz a3ce6aa8b7 Backport 52621:
Bug #1588287: fix invalid assertion for `1,2` in debug builds.
2006-11-04 19:32:54 +00:00
Georg Brandl 5e9f94ac7a Bug #1576657: when setting a KeyError for a tuple key, make sure that
the tuple isn't used as the "exception arguments tuple".
 (backport from rev. 52535)
2006-10-29 18:31:45 +00:00
Georg Brandl f96b162b68 I thought I had already fixed this error in the test. 2006-10-29 15:22:43 +00:00
Georg Brandl c68d2cc3f2 Bug #1586613: fix zlib and bz2 codecs' incremental en/decoders.
(backport from rev. 52529)
2006-10-29 14:39:13 +00:00
Georg Brandl b8205a1188 Fix the new EncodedFile test to work with big endian platforms.
(backport from rev. 52527)
2006-10-29 09:32:19 +00:00
Georg Brandl 2a5a3027f2 Fix codecs.EncodedFile which did not use file_encoding in 2.5.0, and
fix all codecs file wrappers to work correctly with the "with"
statement (bug #1586513).
 (backport from rev. 52517)
2006-10-29 08:39:27 +00:00
Neal Norwitz 2f0940b6ca Backport 52504:
Fix bug #1565514, SystemError not raised on too many nested blocks.
It seems like this should be a different error than SystemError, but
I don't have any great ideas and SystemError was raised in 2.4 and earlier.
2006-10-28 21:38:43 +00:00
Thomas Heller a0a50feea8 WindowsError.str should display the windows error code,
not the posix error code; with test.
Fixes #1576174.

Backported from trunk, revision 52485.
2006-10-27 18:47:29 +00:00
Andrew M. Kuchling 7d1d540cc3 [Bug #1575506] The _singlefileMailbox class was using the wrong file object in its flush() method, causing an error 2006-10-27 16:57:44 +00:00
Andrew M. Kuchling 3d6a834e29 [Bug #1576241] Let functools.wraps work with built-in functions 2006-10-27 16:42:19 +00:00
Martin v. Löwis 62e58040c1 [Backport of r52452]
Patch #1549049: Rewrite type conversion in structmember.
Fixes #1545696 and #1566140.

The new warnings have been omitted in the backport.
2006-10-27 06:17:21 +00:00
Georg Brandl ee23f4bba7 Patch [ 1583506 ] tarfile.py: 100-char filenames are truncated
(backport from rev. 52431)
2006-10-24 16:54:23 +00:00
Martin v. Löwis 920fa6a102 Remove passwd.adjunct.byname from list of maps
for test_nis.
2006-10-22 13:46:23 +00:00
Georg Brandl dd4c398c27 Bug #1545497: when given an explicit base, int() did ignore NULs
embedded in the string to convert.
 (backport from rev. 52305)
2006-10-12 11:28:04 +00:00
Georg Brandl 3c48709e3a Bug #1548891: The cStringIO.StringIO() constructor now encodes unicode
arguments with the system default encoding just like the write()
method does, instead of converting it to a raw buffer.
 (backport from rev. 52301)
2006-10-12 09:47:17 +00:00
Martin v. Löwis 463a42b5de Bug #1565150: Fix subsecond processing for os.utime on Windows. 2006-10-09 20:44:50 +00:00
Hye-Shik Chang f4fe46d74b Backport from trunk r52223:
Bug #1572832: fix a bug in ISO-2022 codecs which may cause segfault
when encoding non-BMP unicode characters.  (Submitted by Ray Chason)
2006-10-08 14:01:45 +00:00
Georg Brandl a5fe3ef8d8 Fix #1569998: no break inside try statement (outside loop) allowed.
(backport from rev. 52129)
2006-10-08 07:12:23 +00:00
Georg Brandl 74284b9606 Patch #1542451: fix crash with continue in nested try/finally
(backport from rev. 51439)
2006-10-08 07:06:29 +00:00
Armin Rigo 4b63c21d6f Forward-port of r52136: a review of overflow-detecting code.
* unified the way intobject, longobject and mystrtoul handle
  values around -sys.maxint-1.

* in general, trying to entierely avoid overflows in any computation
  involving signed ints or longs is extremely involved.  Fixed a few
  simple cases where a compiler might be too clever (but that's all
  guesswork).

* more overflow checks against bad data in marshal.c.

* 2.5 specific: fixed a number of places that were still confusing int
  and Py_ssize_t.  Some of them could potentially have caused
  "real-world" breakage.

* list.pop(x): fixing overflow issues on x was messy.  I just reverted
  to PyArg_ParseTuple("n"), which does the right thing.  (An obscure
  test was trying to give a Decimal to list.pop()... doesn't make
  sense any more IMHO)

* trying to write a few tests...
2006-10-04 11:44:06 +00:00
Martin v. Löwis 10525ad313 Fix integer negation and absolute value to not rely
on undefined behaviour of the C compiler anymore.
2006-10-04 05:47:47 +00:00
Georg Brandl 6d7c36332f Bug #1556784: allow format strings longer than 127 characters in
datetime's strftime function.
 (backport from rev. 52072)
2006-09-30 11:17:43 +00:00
Georg Brandl 7037745be7 Bug #1560617: in pyclbr, return full module name not only for classes,
but also for functions.
 (backport from rev. 52069)
2006-09-30 11:06:55 +00:00
Georg Brandl 506cc189a9 Bug #1566800: make sure that EnvironmentError can be called with any
number of arguments, as was the case in Python 2.4.
 (backport from rev. 52061)
2006-09-30 09:03:45 +00:00
Georg Brandl af4337a017 Patch #1567691: super() and new.instancemethod() now don't accept
keyword arguments any more (previously they accepted them, but didn't
use them).
 (backport from rev. 52058)
2006-09-30 08:43:50 +00:00
Georg Brandl c57221e158 Backport rev. 51972:
Bug #1557232: fix seg fault with def f((((x)))) and def f(((x),)).

These tests should be improved.  Hopefully this fixes variations when
flipping back and forth between fpdef and fplist.
2006-09-25 07:04:10 +00:00
Georg Brandl edd81b2402 Fix a bug in traceback.format_exception_only() that led to an error
being raised when print_exc() was called without an exception set.
In version 2.4, this printed "None", restored that behavior.
 (backport from rev. 51995)
2006-09-24 12:50:28 +00:00
Georg Brandl a6b9ce185e Fix a bug in the parser's future statement handling that led to "with"
not being recognized as a keyword after, e.g., this statement:
from __future__ import division, with_statement
 (backport from rev. 51993)
2006-09-24 12:35:40 +00:00
Jack Diederich 187e64806f backport of r51950
* regression bug, count_next was coercing a Py_ssize_t to an unsigned Py_size_t
  which breaks negative counts
* added test for negative numbers
2006-09-21 18:32:11 +00:00
Brett Cannon c70e003f75 Backport of fix to allow exception instances to be sliced once again. 2006-09-21 18:12:15 +00:00
Neal Norwitz 48829ba61d As mentioned on python-dev, reverting patch #1504333 because it introduced
an infinite loop in rev 47154.

This patch also adds a test to prevent the regression.

Will backport to 2.4 and head later.
2006-09-11 04:05:18 +00:00