Commit Graph

51733 Commits

Author SHA1 Message Date
Antoine Pitrou 4574e62c6e Fix massive slowdown in string formatting with str.format.
Example:
./python -m timeit -s "f='{}' + '-' * 1024 + '{}'; s='abcd' * 16384" "f.format(s, s)"

-> before: 547 usec per loop
-> after: 13 usec per loop
-> 3.2: 22.5 usec per loop
-> 2.7: 12.6 usec per loop
2011-10-07 02:26:47 +02:00
Antoine Pitrou 5c0ba36d5f Fix massive slowdown in string formatting with the % operator 2011-10-07 01:54:09 +02:00
Ned Deily 438818b4b0 Issue #7367: merge from 3.2 2011-10-06 14:41:30 -07:00
Ned Deily 7b847a46bc Issue #7367: add NEWS item. 2011-10-06 14:31:14 -07:00
Ned Deily 9403071277 merge from 3.2 2011-10-06 14:24:31 -07:00
Ned Deily ed27df7aaa Issue #7367: Fix pkgutil.walk_paths to skip directories whose
contents cannot be read.
2011-10-06 14:19:08 -07:00
Ned Deily caf5a22c5f Issue #7367: Add test case to test_pkgutil for walking path with
an unreadable directory.
2011-10-06 14:19:06 -07:00
Ned Deily 92a81a1eec Issue #7425: Refactor test_pydoc test case for '-k' behavior and add
new test cases for importing bad packages and unreadable packages dirs.
2011-10-06 14:19:03 -07:00
Benjamin Peterson 17a332ac1b fix compiler warnings 2011-10-06 17:06:25 -04:00
Antoine Pitrou 399df55496 Fix expected memory consumption for test_translate 2011-10-06 22:41:08 +02:00
Antoine Pitrou b6080b6967 Fix size estimate for test_unicode_repr 2011-10-06 22:32:10 +02:00
Antoine Pitrou a5d9917d21 Fix test_splitlines to reach its size estimate 2011-10-06 22:19:07 +02:00
Antoine Pitrou f81ad6fa5a Make the formula for this estimate more explicit 2011-10-06 22:09:18 +02:00
Antoine Pitrou 7c46da7993 Ensure that 1-char singletons get used 2011-10-06 22:07:51 +02:00
Antoine Pitrou 8ac582f746 Fix size estimation for test_bigmem.StrTest.test_format 2011-10-06 21:55:51 +02:00
Antoine Pitrou de21f84680 Fix the expected memory consumption for some tests 2011-10-06 21:46:23 +02:00
Victor Stinner b09460f038 Issue #10141: Don't use hardcoded frame size in example, use struct.calcsize() 2011-10-06 20:27:20 +02:00
Charles-François Natali 47413c1171 Issue #10141: socket: add SocketCAN (PF_CAN) support. Initial patch by Matthias
Fuchs, updated by Tiago Gonçalves.
2011-10-06 19:47:44 +02:00
Antoine Pitrou 90c30e87be Remove now duplicate code in _json.c; instead, reuse the new private lib 2011-10-06 19:09:51 +02:00
Antoine Pitrou c61c8d7a5e Issue #12911: Fix memory consumption when calculating the repr() of huge tuples or lists.
This introduces a small private API for this common pattern.
The issue has been discovered thanks to Martin's huge-mem buildbot.
2011-10-06 19:04:12 +02:00
Antoine Pitrou eeb7eea1f9 Issue #12911: Fix memory consumption when calculating the repr() of huge tuples or lists.
This introduces a small private API for this common pattern.
The issue has been discovered thanks to Martin's huge-mem buildbot.
2011-10-06 18:57:27 +02:00
Victor Stinner c6f0df7b20 Fix PyUnicode_Join() for len==1 and non-exact string 2011-10-06 15:58:54 +02:00
Victor Stinner b066cc6aba Fix PyUnicode_CHARACTER_SIZE and PyUnicode_KIND_SIZE 2011-10-06 15:54:53 +02:00
Antoine Pitrou 1d4bd25f56 Fix compilation warnings under 64-bit Windows 2011-10-06 15:44:15 +02:00
Antoine Pitrou dbf697ae5c Fix compilation warnings under 64-bit Windows 2011-10-06 15:34:41 +02:00
Antoine Pitrou 45d9c91d4b Issue #3163: The struct module gets new format characters 'n' and 'N'
supporting C integer types `ssize_t` and `size_t`, respectively.
2011-10-06 15:27:40 +02:00
Antoine Pitrou 15a66cf134 Fix compilation under Windows 2011-10-06 15:25:32 +02:00
Victor Stinner 200f21340d Fix assertion in unicode_adjust_maxchar() 2011-10-06 13:27:56 +02:00
Éric Araujo 207dc73ece Merge 3.2 2011-10-06 13:23:50 +02:00
Éric Araujo 0f4ee93b06 Branch merge 2011-10-06 13:22:21 +02:00
Éric Araujo bb2095f1e2 Branch merge 2011-10-06 13:10:34 +02:00
Victor Stinner acf47b807f Fix my last change on PyUnicode_Join(): don't process separator if len==1 2011-10-06 12:32:37 +02:00
Victor Stinner 25a4b29c95 str.replace() avoids memory when it's possible 2011-10-06 12:31:55 +02:00
Éric Araujo 6fd287e6c2 Fix return code of “pysetup run COMMAND” (closes #12222) 2011-10-06 05:28:56 +02:00
Éric Araujo 8ed34a130e Minor: improve one test name, address pyflakes warnings 2011-10-06 05:18:41 +02:00
Éric Araujo fa23cc842c Add test that was promised in a comment but not actually written 2011-10-06 05:15:09 +02:00
Éric Araujo 9556a5bab2 Fix incorrect test.
The packaging.install.remove function (a.k.a. the uninstall feature)
takes a path argument to allow client code to use custom directories
instead of sys.path.  The test used to give self.root_dir as path, which
corresponds to a prefix option, but prefix is not on sys.path, it’s only
the base directory used to compute the stdlib and site-packages
directory paths.  The test now gives a valid site-packages path to the
function.
2011-10-06 05:10:09 +02:00
Éric Araujo 2c30e3999c Change one name in packaging’s test_uninstall to avoid confusion.
install_lib may be the name of a module, a command or an option, so I
find it clearer to use site_packages to refer to a string object
containing the path of the site-packages directory created in a
temporary directory during tests.
2011-10-06 04:59:41 +02:00
Victor Stinner 56c161ab00 _copy_characters() fails more quickly in debug mode on inconsistent state 2011-10-06 02:47:11 +02:00
Éric Araujo 76558e12ad Add regrtest check for caches in packaging.database (see #12167) 2011-10-06 02:44:19 +02:00
Victor Stinner 46084bad88 Fix find_module_path(): make the string ready 2011-10-06 02:39:42 +02:00
Victor Stinner c729b8e92f Fix a compiler warning: don't define unicode_is_singleton() in release mode 2011-10-06 02:36:59 +02:00
Victor Stinner b62a7b268a Fix _warnings.c: make the filename string ready 2011-10-06 02:34:51 +02:00
Victor Stinner 1d4b35f4e5 rephrase PyUnicode_1BYTE_KIND documentation 2011-10-06 01:51:19 +02:00
Victor Stinner fb9ea8c57e Don't check for the maximum character when copying from unicodeobject.c
* Create copy_characters() function which doesn't check for the maximum
   character in release mode
 * _PyUnicode_CheckConsistency() is no more static to be able to use it
   in _PyUnicode_FormatAdvanced() (in formatter_unicode.c)
 * _PyUnicode_CheckConsistency() checks the string hash
2011-10-06 01:45:57 +02:00
Victor Stinner 05d1189566 Fix post-condition in unicode_repr(): check the result, not the input 2011-10-06 01:13:58 +02:00
Victor Stinner f48323e3b3 replace() uses unicode_fromascii() if the input and replace string is ASCII 2011-10-05 23:27:08 +02:00
Victor Stinner 0617b6e18b unicode_fromascii() checks that the input is ASCII in debug mode 2011-10-05 23:26:01 +02:00
Victor Stinner a336de7ae1 traceback: fix dump_ascii() for string with kind=PyUnicode_WCHAR_KIND 2011-10-05 22:44:12 +02:00
Amaury Forgeot d'Arc 3484c09c97 Merge from 3.2 2011-10-05 22:37:06 +02:00