Commit Graph

3241 Commits

Author SHA1 Message Date
Antoine Pitrou 1fc0231a22 Issue #3002: `shutil.copyfile()` and `shutil.copytree()` now raise an
error when a named pipe is encountered, rather than blocking infinitely.
2009-05-01 20:55:35 +00:00
Gregory P. Smith 1d499265e0 Adds the ipaddr module to the standard library. Issue #3959.
Based off of subversion r69 from http://code.google.com/p/ipaddr-py/

This code is 2to3 safe, I'll merge it into py3k later this afternoon.
2009-05-01 19:59:52 +00:00
Eric Smith 9139cc6a3b Issue #1588: Add complex.__format__. 2009-04-30 00:58:58 +00:00
Mark Dickinson 92fcc9c991 Issue #5864: format(1234.5, '.4') gives misleading result
(Backport of r72109 from py3k.)
2009-04-29 20:41:00 +00:00
Matthias Klose 10cbe4886e - Issue #4587: Add configure option --with-dbmliborder=db1:db2:... to specify
the order that backends for the dbm extension are checked.
2009-04-29 17:18:19 +00:00
R. David Murray 25b4add5b0 Fix issue 2245. aifc now skips any chunk type it doesn't actually
process instead of throwing errors for anything not in an explicit
skip list.  This is per this spec: http://www.cnpbagwell.com/aiff-c.txt.
Spec reference and test sound file provided by Santiago Peresón, fix
based on patch by Hiroaki Kawai.
2009-04-29 13:17:37 +00:00
Tarek Ziadé a1b91d944b Fixed #5874 : distutils.tests.test_config_cmd is not locale-sensitive anymore 2009-04-29 08:03:46 +00:00
Thomas Heller 90c61a2e09 Issue #4305: ctypes fails to build on mipsel-linux-gnu (detects mips
instead of mipsel)
2009-04-28 19:23:41 +00:00
Antoine Pitrou e988e286b2 Issue #1734234: Massively speedup `unicodedata.normalize()` when the
string is already in normalized form, by performing a quick check beforehand.
Original patch by Rauli Ruohonen.
2009-04-27 21:53:26 +00:00
Antoine Pitrou f2651e193c Issue #5853: calling a function of the mimetypes module from several threads
at once could hit the recursion limit if the mimetypes database hadn't been
initialized before.
2009-04-27 20:50:20 +00:00
Eric Smith cac7af6863 Issue #5793: rationalize isdigit / isalpha / tolower, etc. Will port to py3k. Should fix Windows buildbot errors. 2009-04-27 19:04:37 +00:00
Vinay Sajip e34d6aa86f Issue #5854: Updated __all__ to include some missing names and remove some names which should not be exported. 2009-04-27 13:44:27 +00:00
Martin v. Löwis 99f277933e Issue #4971: Fix titlecase for characters that are their own
titlecase, but not their own uppercase.
2009-04-26 00:53:18 +00:00
Eric Smith 068f06568b Issue #5835, deprecate PyOS_ascii_formatd.
If anyone wants to clean up the documentation, feel free. It's my first documentation foray, and it's not that great.

Will port to py3k with a different strategy.
2009-04-25 21:40:15 +00:00
Walter Dörwald 5d98ec76bb Issue #5828 (Invalid behavior of unicode.lower): Fixed bogus logic in
makeunicodedata.py and regenerated the Unicode database (This fixes
u'\u1d79'.lower() == '\x00').
2009-04-25 14:03:16 +00:00
Tarek Ziadé bcddf6777a #5810: Fixed Distutils test_build_scripts 2009-04-25 12:51:59 +00:00
Tarek Ziadé d567c38ef2 Issue #4951: Fixed failure in test_httpservers 2009-04-25 12:38:08 +00:00
Walter Dörwald a145317be9 Issue #5837: Certain sequences of calls to set() and unset() for
support.EnvironmentVarGuard objects restored the environment variables
incorrectly on __exit__.

Fix this by recording the initial value of each environment variable on the
first access in set() or unset().
2009-04-25 12:15:07 +00:00
Benjamin Peterson 5083dc552b fix a segfault when setting __class__ in __del__ #5283 2009-04-25 00:41:22 +00:00
Thomas Heller 5c6af808f7 Issue #3102: All global symbols that the _ctypes extension defines are
now prefixed with 'Py' or '_ctypes'.
2009-04-24 20:31:47 +00:00
Thomas Heller ec21ccde12 Issue 5041: ctypes unwilling to allow pickling wide character. 2009-04-24 20:00:41 +00:00
Mark Dickinson 4af8e745c4 Issue #5812: The two-argument form of the Fraction constructor
now accepts arbitrary Rational instances.
2009-04-24 13:56:07 +00:00
Mark Dickinson 95bc980d9e Issue #5816:
- simplify parsing and printing of complex numbers
 - make complex(repr(z)) round-tripping work for complex
   numbers involving nans, infs, or negative zeros
 - don't accept some of the stranger complex strings
   that were previously allowed---e.g., complex('1..1j')
2009-04-24 12:46:53 +00:00
Mark Dickinson 8100bd8431 Issue #5812: make Fraction('1e-6') valid. Backport of r71806. 2009-04-22 18:15:25 +00:00
Nick Coghlan 5533ff6a2e Issue 5354: Change API for import_fresh_module() to better support test_warnings use case (also fixes some bugs in the original implementation) 2009-04-22 15:26:04 +00:00
Eric Smith aca19e6a74 Backport of some of the work in r71665 to trunk. This reworks much of
int, long, and float __format__(), and it keeps their implementation
in sync with py3k.

Also added PyOS_double_to_string. This is the "fallback" version
that's also available in trunk, and should be kept in sync with that
code. I'll add an issue to document PyOS_double_to_string in the C
API.

There are many internal cleanups. Externally visible changes include:

- Implement PEP 378, Format Specifier for Thousands Separator, for
  floats, ints, and longs.

- Issue #5515: 'n' formatting for ints, longs, and floats handles
  leading zero formatting poorly.

- Issue #5772: For float.__format__, don't add a trailing ".0" if
  we're using no type code and we have an exponent.
2009-04-22 13:29:05 +00:00
Mark Dickinson 6736cf8d20 Issue #3166: Make long -> float (and int -> float) conversions
correctly rounded, using round-half-to-even.  This ensures that the
value of float(n) doesn't depend on whether we're using 15-bit digits
or 30-bit digits for Python longs.
2009-04-20 21:13:33 +00:00
Tarek Ziadé 31559b6123 adding a NEWS note for #5795 (previously checked via the buildbot) 2009-04-20 14:29:42 +00:00
Benjamin Peterson d4d400cb8a try to initalize all builtin types with PyType_Ready to avoid problems like #5787 2009-04-18 20:12:47 +00:00
Mark Dickinson 1bdf7e9cab Issue #1869: Fix a couple of minor round() issues. 2009-04-18 14:59:42 +00:00
Vinay Sajip 22aa4bbdc5 Issue #5768: Change to Unicode output logic and test case for same. 2009-04-16 19:15:49 +00:00
Benjamin Peterson 99d36f1563 call __float__ on str subclasses #5759
tests by R. David Murray
2009-04-15 21:26:36 +00:00
R. David Murray abc26603a4 Add missing NEWS item for issue1161031 fix. 2009-04-13 16:56:32 +00:00
Tarek Ziadé 156c31a7be Fixed #5607: Distutils test_get_platform was failing fo Mac OS X fat binaries. 2009-04-13 12:34:01 +00:00
Georg Brandl 21cf5ee6fd #5741: dont disallow double percent signs in SafeConfigParser.set() keys. 2009-04-12 17:24:11 +00:00
Georg Brandl 3c4a5463b2 #5704: let python -3 imply -t as well. 2009-04-12 12:08:12 +00:00
Tarek Ziadé 942825f7de #5732: added the check command into Distutils 2009-04-11 14:55:07 +00:00
R. David Murray 0374a82f75 Issue #2170: refactored xml.dom.minidom.normalize, increasing both
its clarity and its speed.
2009-04-09 21:54:50 +00:00
Tarek Ziadé ad95826c33 Fixed #5731: Distutils bdist_wininst no longer worked on non-Windows platforms 2009-04-09 21:36:44 +00:00
Andrew M. Kuchling 5963185b23 Typo fixes 2009-04-09 11:23:36 +00:00
Gregory P. Smith 923ba361d8 - Issue #2254: Fix CGIHTTPServer information disclosure. Relative paths are
now collapsed within the url properly before looking in cgi_directories.
2009-04-06 06:33:26 +00:00
Gregory P. Smith 2b3eb37f92 news entry for r71299. 2009-04-05 23:48:26 +00:00
Tarek Ziadé 64408fb4c5 Fixed #5095: msi missing from Distutils bdist formats 2009-04-05 22:51:09 +00:00
Tarek Ziadé faa6b121fb Fixed #1491431: distutils.filelist.glob_to_re was broken for some edge cases (detailed in the test 2009-04-05 21:44:08 +00:00
Matthias Klose 91a3b9e4f0 Issue #1113244: Py_XINCREF, Py_DECREF, Py_XDECREF: Add `do { ... } while (0)'
to avoid compiler warnings.
2009-04-05 21:19:13 +00:00
Matthias Klose a5d58c831f - Issue #2703: SimpleXMLRPCDispatcher.__init__: Provide default values for
new arguments introduced in 2.5.
2009-04-05 21:00:48 +00:00
Georg Brandl 29c6a281b1 Normalize issue referencing style. 2009-04-05 20:23:13 +00:00
Michael Foord f2dfef1637 Adding assertIs and assertIsNot methods to unittest.TestCase
Issue #2578
2009-04-05 19:19:28 +00:00
Tarek Ziadé 453d953f3e Fixed 5694: removed spurious test output in Distutils 2009-04-05 18:31:24 +00:00
Georg Brandl 3f0ef20269 #5471: fix expanduser() for $HOME set to "/". 2009-04-05 14:48:49 +00:00
Georg Brandl 1956d5c15f Add NEWS entry for r71237. 2009-04-05 14:25:41 +00:00
Matthias Klose 0610e0808b - Py_DECREF: Add `do { ... } while (0)' to avoid compiler warnings.
(avoiding brown paper typo this time)
2009-04-05 12:43:08 +00:00
Georg Brandl 50ba6e1b50 #1726172: dont raise an unexpected IndexError if a voidresp() call has an empty response. 2009-04-05 10:48:47 +00:00
Benjamin Peterson ea0d7444c8 revert r71159 since it broke the build 2009-04-04 16:05:51 +00:00
Matthias Klose 8212a82371 - Py_DECREF: Add `do { ... } while (0)' to avoid compiler warnings. 2009-04-04 15:51:23 +00:00
Matthias Klose edb5e1e09e - Issue #3845: In PyRun_SimpleFileExFlags avoid invalid memory access with
short file names.
2009-04-04 14:18:13 +00:00
Antoine Pitrou 789be0c0a0 Issue #2396: backport the memoryview object. 2009-04-02 21:18:34 +00:00
Georg Brandl d3f03fa715 PyErr_NormalizeException may not set an error, so convert the PyErr_SetObject
call on hitting the recursion limit into just assigning it to the arguments provided.
2009-04-02 18:09:04 +00:00
R. David Murray 52720c5455 Add missing iteritems() call to the for loop in mailbox.MH.get_message().
Fixes issue2625.
2009-04-02 14:05:35 +00:00
Jesse Noller 7152f6d915 Add custom initializer argument to multiprocess.Manager*, courtesy of lekma 2009-04-02 05:17:26 +00:00
Jesse Noller 5053fbbb38 Issue 3551: Raise ValueError if the size causes ERROR_NO_SYSTEM_RESOURCES 2009-04-02 04:22:09 +00:00
Michael Foord 345b2fe21e Better exception messages for unittest assert methods.
- unittest.assertNotEqual() now uses the inequality operator (!=) instead
  of the equality operator.

- Default assertTrue and assertFalse messages are now useful.

- TestCase has a longMessage attribute. This defaults to False, but if set to True
  useful error messages are shown in addition to explicit messages passed to assert methods.

Issue #5663
2009-04-02 03:20:38 +00:00
Brett Cannon c4f90ebea7 PyImport_AppendInittab() took a char * as a first argument even though that
string was stored beyond the life of the call. Changed the signature to be
const char * to help make this point.

Closes issue #1419652.
2009-04-02 03:17:39 +00:00
Jesse Noller b502bc7a1a Issue 3110: Additional protection for SEM_VALUE_MAX on platforms, thanks to Martin Loewis 2009-04-02 02:32:55 +00:00
Georg Brandl 58b8b95cdb In Pdb, stop assigning values to __builtin__._ which interferes with the one commonly installed by gettext. 2009-04-01 21:54:21 +00:00
Georg Brandl 5942b91759 Add NEWS item. 2009-04-01 21:05:44 +00:00
Brett Cannon ce3d221447 test_warnings ironically had a single test that was not protecting the warnings
filter and was resetting it.
2009-04-01 20:25:48 +00:00
Brett Cannon 2da4d628a5 test_logging was blindly clearing the warnings filter. This caused
PendingDeprecationWarnings to be spewed all over by unittest.failIf*(). Fix
moves over to using warnings.catch_warning to protect the warnings filter.
2009-04-01 19:57:10 +00:00
Raymond Hettinger 66c4a6b51c Issue #5647: MutableSet.__iand__() no longer mutates self during iteration. 2009-04-01 18:50:56 +00:00
Brett Cannon 15ba4dae5a _warnings was importing itself to get an attribute. That's bad if warnings gets
called in a thread that was spawned by an import itself.

Last part to close #1665206.
2009-04-01 18:03:59 +00:00
Brett Cannon ad078a0d7a The cgitb module had imports in its functions. This can cause deadlock with the
import lock if called from within a thread that was triggered by an import.

Partially fixes issue #1665206.
2009-04-01 16:00:34 +00:00
Georg Brandl e92d4b6f57 The SimpleXMLRPCServer's CGI handler now runs like a pony. 2009-04-01 04:21:14 +00:00
R. David Murray a83da3507f Fix issue 2522. locale.format now checks that it is passed
exactly one pattern, which avoids mysterious errors where it
had seemed to fail to do localization.
2009-04-01 03:21:43 +00:00
Georg Brandl d8fb6ac9da Issue #5635: Fix running test_sys with tracing enabled. 2009-04-01 00:04:33 +00:00
Jack Diederich d60c29ed8b #5228: add pickle support to functools.partial 2009-03-31 23:46:48 +00:00
Tarek Ziadé 9e47ce49a0 #5583 Added optional Extensions in Distutils 2009-03-31 22:27:23 +00:00
Jesse Noller 42f9b4e5b4 Issue 5619: Pass MS CRT debug flags into subprocesses 2009-03-31 22:20:35 +00:00
Benjamin Peterson d906ea62c8 fix Thread.ident when it is the main thread or a dummy thread #5632 2009-03-31 21:34:42 +00:00
R. David Murray 41448c58d2 Add NEWS entry for regrtest change. 2009-03-31 19:57:24 +00:00
Jesse Noller 1f0a55523f missed the news/acks for netbsd patch 2009-03-31 18:27:14 +00:00
Gregory P. Smith 2839985c7e The unittest.TestCase.assertEqual() now displays the differences in lists,
tuples, dicts and sets on failure.

Many new handy type and comparison specific assert* methods have been added
that fail with error messages actually useful for debugging.  Contributed in
by Google and completed with help from mfoord and GvR at PyCon 2009 sprints.

Discussion lives in http://bugs.python.org/issue2578.
2009-03-31 16:54:10 +00:00
Hirokazu Yamamoto 9d2ee5ded2 Issue #5387: Fixed mmap.move crash by integer overflow. 2009-03-31 13:13:05 +00:00
Jesse Noller 82eb5902ce merge in patch from tim golden to fix contextmanager support for mp.Lock() 2009-03-30 23:29:31 +00:00
Ronald Oussoren e0154ed7ff Fix issue #4865: add /Library/Python/2.7/site-packages to
sys.path on OSX, to make it easier to share (some) installed
packages between the system install and a user install.
2009-03-30 23:10:35 +00:00
Jesse Noller 459a648166 Issue 5177: use socket.SO_REUSEADDR on multiprocessing SocketManager sockets 2009-03-30 15:50:42 +00:00
Guilherme Polo 1972d16230 Adjusted _tkinter to compile without warnings when WITH_THREAD is not
defined (part of issue #5035)
2009-03-27 21:43:08 +00:00
Marc-André Lemburg cbdf15b0e7 News item for the platform.py fix (r70594). 2009-03-25 19:45:33 +00:00
Benjamin Peterson 692428e77f implement test skipping and expected failures
patch by myself #1034053
2009-03-23 21:50:21 +00:00
Antoine Pitrou f8387af262 Issue #4688: Add a heuristic so that tuples and dicts containing only
untrackable objects are not tracked by the garbage collector. This can
reduce the size of collections and therefore the garbage collection overhead
on long-running programs, depending on their particular use of datatypes.

(trivia: this makes the "binary_trees" benchmark from the Computer Language
Shootout 40% faster)
2009-03-23 18:41:45 +00:00
Mark Dickinson 0b666bfdf9 Issue #5512: speed up the long division algorithm for Python longs.
The basic algorithm remains the same; the most significant speedups
come from the following three changes:

  (1) normalize by shifting instead of multiplying and dividing
  (2) the old algorithm usually did an unnecessary extra iteration of
      the outer loop; remove this.  As a special case, this means that
      long divisions with a single-digit result run twice as fast as
      before.
  (3) make inner loop much tighter.

Various benchmarks show speedups of between 50% and 150% for long
integer divisions and modulo operations.
2009-03-23 18:25:13 +00:00
Lars Gustäbel 2020a59563 Issue #5068: Fixed the tarfile._BZ2Proxy.read() method that would loop
forever on incomplete input. That caused tarfile.open() to hang when used
with mode 'r' or 'r:bz2' and a fileobj argument that contained no data or
partial bzip2 compressed data.
2009-03-22 20:09:33 +00:00
Benjamin Peterson b364bfe2f4 close the file even if an exception occurs #5536 2009-03-22 17:45:11 +00:00
Mark Dickinson efc82f7e8e Issue #4258: Use 30-bit digits for Python longs, on 64-bit platforms.
Backport of r70459.
2009-03-20 15:51:55 +00:00
Raymond Hettinger 91852ca673 Issue 5381: Add object_pairs_hook to the json module. 2009-03-19 19:19:03 +00:00
Benjamin Peterson 6ffe852f90 fix strange errors when setting attributes on tracebacks #4034 2009-03-18 20:52:15 +00:00
Mark Dickinson 6b265f1bf8 Issue 4474: On platforms with sizeof(wchar_t) == 4 and
sizeof(Py_UNICODE) == 2, PyUnicode_FromWideChar now converts
each character outside the BMP to the appropriate surrogate pair.

Thanks Victor Stinner for the patch.

(backport of r70452 from py3k to trunk)
2009-03-18 16:07:26 +00:00
Mark Dickinson 277859d591 Issue #2110: Add support for thousands separator and 'n' format specifier
to Decimal __format__ method.
2009-03-17 23:03:46 +00:00
Mark Dickinson b065e52bc2 Fix bug in Decimal __format__ method that swapped left and right
alignment.
2009-03-17 18:01:03 +00:00
Eric Smith 6f42edb682 Issue 5237, Allow auto-numbered replacement fields in str.format() strings.
For simple uses for str.format(), this makes the typing easier. Hopfully this
will help in the adoption of str.format().

For example:
'The {} is {}'.format('sky', 'blue')

You can mix and matcth auto-numbering and named replacement fields:
'The {} is {color}'.format('sky', color='blue')

But you can't mix and match auto-numbering and specified numbering:
'The {0} is {}'.format('sky', 'blue')
ValueError: cannot switch from manual field specification to automatic field numbering

Will port to 3.1.
2009-03-14 11:57:26 +00:00
Antoine Pitrou feeafff052 Issue #1222: locale.format() bug when the thousands separator is a space character. 2009-03-14 00:07:21 +00:00