summaryrefslogtreecommitdiffstats
path: root/Objects
Commit message (Collapse)AuthorAgeFilesLines
* Rearrange code to beat an optimizer bug affecting Release x64 on windowsKristján Valur Jónsson2012-06-061-12/+10
| | | | with VS2010sp1
* Issue #14993: Use standard "unsigned char" instead of a unsigned char bitfieldVictor Stinner2012-06-042-11/+11
|
* Eric Snow's implementation of PEP 421.Barry Warsaw2012-06-032-0/+228
| | | | Issue 14673: Add sys.implementation
* Issue #14909: A number of places were using PyMem_Realloc() apis andKristjan Valur Jonsson2012-05-312-4/+8
| | | | | PyObject_GC_Resize() with incorrect error handling. In case of errors, the original object would be leaked. This checkin fixes those cases.
* Issue #14744: Fix compilation on Windows (part 2)Victor Stinner2012-05-291-1/+1
|
* Issue #14744: Fix compilation on WindowsVictor Stinner2012-05-291-2/+2
|
* Issue #14744: Use the new _PyUnicodeWriter internal API to speed up str%args ↵Victor Stinner2012-05-296-221/+540
| | | | | | | | | | | | | | | | | and str.format(args) * Formatting string, int, float and complex use the _PyUnicodeWriter API. It avoids a temporary buffer in most cases. * Add _PyUnicodeWriter_WriteStr() to restore the PyAccu optimization: just keep a reference to the string if the output is only composed of one string * Disable overallocation when formatting the last argument of str%args and str.format(args) * Overallocation allocates at least 100 characters: add min_length attribute to the _PyUnicodeWriter structure * Add new private functions: _PyUnicode_FastCopyCharacters(), _PyUnicode_FastFill() and _PyUnicode_FromASCII() The speed up is around 20% in average.
* Issue #14930: Make memoryview objects weakrefable.Richard Oudkerk2012-05-281-1/+4
|
* Close #14857: fix regression in references to PEP 3135 implicit __class__ ↵Nick Coghlan2012-05-271-1/+1
| | | | closure variable. Reopens issue #12370, but also updates unittest.mock to workaround that issue
* Issue #14889: PyBytes_FromObject(bytes) now just increfs and returns.Larry Hastings2012-05-251-0/+6
| | | | | Previously, if you passed in a bytes object, it would create a whole new object.
* issue 14660: Implement PEP 420, namespace packages.Eric V. Smith2012-05-251-2/+31
|
* Issue #14829: Fix bisect and range() indexing with large indices (>= 2 ** ↵Antoine Pitrou2012-05-161-1/+1
|\ | | | | | | | | | | 32) under 64-bit Windows. (untested, because of Windows build issues under 3.x)
| * Issue #14829: Fix bisect and range() indexing with large indices (>= 2 ** ↵Antoine Pitrou2012-05-161-1/+1
| | | | | | | | 32) under 64-bit Windows.
* | Fix build failure.Antoine Pitrou2012-05-161-1/+2
| |
* | Issue #14624: UTF-16 decoding is now 3x to 4x faster on various inputs.Antoine Pitrou2012-05-152-199/+227
| | | | | | | | Patch by Serhiy Storchaka.
* | Silence VS 2010 signed/unsigned warnings.Martin v. Löwis2012-05-151-2/+5
| |
* | PEP 415: Implement suppression of __context__ display with an exception ↵Benjamin Peterson2012-05-151-19/+20
| | | | | | | | | | | | attribute This replaces the original PEP 409 implementation. See #14133.
* | Use size_t, not ssize_t (issue #14801).Antoine Pitrou2012-05-141-1/+1
|\ \ | |/
| * Remove tab charactersAntoine Pitrou2012-05-141-8/+8
| |
| * Use size_t, not ssize_t (issue #14801).Antoine Pitrou2012-05-141-1/+1
| |
* | Issue #14417: Mutating a dict during lookup now restarts the lookup instead ↵Antoine Pitrou2012-05-131-8/+9
| | | | | | | | of raising a RuntimeError (undoes issue #14205).
* | Fix #13210. Port the Windows build from VS2008 to VS2010.Brian Curtin2012-05-131-0/+28
| |
* | Make the reference counting of dictkeys objects participate in refleak huntingAntoine Pitrou2012-05-121-6/+10
| | | | | | | | (issue #13903).
* | Fix refleaks introduced by 83da67651687.Antoine Pitrou2012-05-121-2/+8
| |
* | Fix logic error introduced by 83da67651687.Antoine Pitrou2012-05-121-2/+2
| |
* | simplify by shortcutting when the kind of the needle is larger than the haystackBenjamin Peterson2012-05-111-21/+11
| |
* | Issue #14738: Speed-up UTF-8 decoding on non-ASCII data. Patch by Serhiy ↵Antoine Pitrou2012-05-107-552/+313
| | | | | | | | Storchaka.
* | Rename unicode_write_t structure and its methods to "_PyUnicodeWriter"Victor Stinner2012-05-092-25/+25
| |
* | Issue #14744: Inline unicode_writer_write_char() and unicode_write_str()Victor Stinner2012-05-092-76/+79
| | | | | | | | | | Optimize also PyUnicode_Format(): call unicode_writer_prepare() only once per argument.
* | unicode_writer_finish() checks string consistencyVictor Stinner2012-05-091-0/+1
| |
* | merge 3.2 (#14752)Benjamin Peterson2012-05-081-2/+4
|\ \ | |/
| * fix possible refleak (closes #14752)Benjamin Peterson2012-05-081-2/+4
| |
* | Backout ab500b297900: the check for integer overflow is wrongVictor Stinner2012-05-071-4/+2
| | | | | | | | | | | | Issue #14716: Change integer overflow check in unicode_writer_prepare() to compute the limit at compile time instead of runtime. Patch writen by Serhiy Storchaka.
* | Issue #14716: Change integer overflow check in unicode_writer_prepare()Victor Stinner2012-05-071-2/+4
| | | | | | | | | | to compute the limit at compile time instead of runtime. Patch writen by Serhiy Storchaka.
* | Close #14716: str.format() now uses the new "unicode writer" API instead of theVictor Stinner2012-05-072-170/+148
| | | | | | | | PyAccu API. For example, it makes str.format() from 25% to 30% faster on Linux.
* | Issue #14700: Fix two broken and undefined-behaviour-inducing overflow ↵Mark Dickinson2012-05-071-2/+2
| | | | | | | | checks in old-style string formatting. Thanks Serhiy Storchaka for report and original patch.
* | unicode_writer: don't force inline when it is not necessaryVictor Stinner2012-05-031-3/+3
| | | | | | | | Keep inline for performance critical functions (functions used in loops)
* | merge 3.2 (#14717)Benjamin Peterson2012-05-031-1/+1
|\ \ | |/
| * close() doesn't take any args (closes #14717)Benjamin Peterson2012-05-031-1/+1
| |
* | if the kind of the string to count is larger than the string to search, ↵Benjamin Peterson2012-05-031-10/+3
| | | | | | | | shortcut to 0
* | unicode_writer: add finish() method and assertions to write_str() methodVictor Stinner2012-05-031-13/+33
| | | | | | | | | | * The write_str() method does nothing if the length is zero. * Replace "struct unicode_writer_t" with "unicode_writer_t"
* | Issue #14687: Remove redundant length attribute of unicode_write_tVictor Stinner2012-05-031-12/+8
| | | | | | | | The length can be read directly from the buffer
* | Issue #14687: Cleanup unicode_writer_prepare()Victor Stinner2012-05-031-23/+19
| | | | | | | | "Inline" PyUnicode_Resize(): call directly resize_compact()
* | Issue #14687: str%tuple now uses an optimistic "unicode writer" instead of anVictor Stinner2012-05-031-100/+166
| | | | | | | | | | accumulator. Directly write characters into the output (don't use a temporary list): resize and widen the string on demand.
* | Issue #14624, #14687: Optimize unicode_widen()Victor Stinner2012-05-031-7/+9
| | | | | | | | Don't convert uninitialized characters. Patch written by Serhiy Storchaka.
* | Remove buggy assertion in PyUnicode_Substring()Victor Stinner2012-05-031-2/+2
| | | | | | | | Use also directly unicode_empty, instead of PyUnicode_New(0,0).
* | Fix PyUnicode_Substring() for start >= length and start > endVictor Stinner2012-05-031-6/+8
| | | | | | | | | | Remove the fast-path for 1-character string: unicode_fromascii() and _PyUnicode_FromUCS*() now have their own fast-path for 1-character strings.
* | Unicode: optimize creating of 1-character stringsVictor Stinner2012-05-031-8/+50
| |
* | Issue #14687: Optimize str%tuple for the "%(name)s" syntaxVictor Stinner2012-05-021-2/+3
| | | | | | | | Avoid an useless and expensive call to PyUnicode_READ().
* | unicodeobject.c: Add MAX_MAXCHAR() macro to (micro-)optimize the computationVictor Stinner2012-05-011-48/+49
| | | | | | | | | | | | | | | | of the second argument of PyUnicode_New(). * Create also align_maxchar() function * Optimize fix_decimal_and_space_to_ascii(): don't compute the maximum character when ch <= 127 (it is ASCII)