summaryrefslogtreecommitdiffstats
path: root/Modules/_pickle.c
Commit message (Collapse)AuthorAgeFilesLines
...
* | merge 3.4 (#25245)Benjamin Peterson2015-09-271-0/+1
|\ \ | |/
| * initialize return value to NULL to avoid compiler compliants (closes #25245)Benjamin Peterson2015-09-271-0/+1
| |
* | merge 3.4Benjamin Peterson2015-09-261-0/+6
|\ \ | |/
| * prevent overflow in _Unpickler_ReadBenjamin Peterson2015-09-261-0/+6
| |
* | Issue #19235: Add new RecursionError exception. Patch by Georg Brandl.Yury Selivanov2015-07-031-1/+1
| |
* | merge 3.4 (#24552)Benjamin Peterson2015-07-021-1/+1
|\ \ | |/
| * fix use after free (closes #24552)Benjamin Peterson2015-07-021-1/+1
| |
* | merge 3.4Benjamin Peterson2015-06-271-16/+10
|\ \ | |/
| * merge 3.3Benjamin Peterson2015-06-271-16/+10
| |\
| | * use safe allocation and reallocation macrosBenjamin Peterson2015-06-271-16/+10
| | |
* | | Issue #23944: Argument Clinic now wraps long impl prototypes at column 78.Larry Hastings2015-04-141-14/+23
| | |
* | | Issue #23501: Argumen Clinic now generates code into separate files by default.Serhiy Storchaka2015-04-031-2/+1
| | |
* | | Issue #23611: Serializing more "lookupable" objects (such as unbound methodsSerhiy Storchaka2015-03-311-47/+71
| | | | | | | | | | | | or nested classes) now are supported with pickle protocols < 4.
* | | Issue #18473: Fixed 2to3 and 3to2 compatible pickle mappings.Serhiy Storchaka2015-03-311-12/+14
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | Fixed ambigious reverse mappings. Added many new mappings. Import mapping is no longer applied to modules already mapped with full name mapping. Added tests for compatible pickling and unpickling and for consistency of _compat_pickle mappings.
| * | Issue #18473: Fixed 2to3 and 3to2 compatible pickle mappings.Serhiy Storchaka2015-03-311-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | Fixed ambigious reverse mappings. Added many new mappings. Import mapping is no longer applied to modules already mapped with full name mapping. Added tests for compatible pickling and unpickling and for consistency of _compat_pickle mappings.
* | | Issue #23096: Pickle representation of floats with protocol 0 now is the sameSerhiy Storchaka2015-02-151-1/+1
| | | | | | | | | | | | for both Python and C implementations.
* | | Issue #22783: Pickling now uses the NEWOBJ opcode instead of the NEWOBJ_EXSerhiy Storchaka2014-12-161-13/+12
| | | | | | | | | | | | opcode if possible.
* | | Issue #15513: Added a __sizeof__ implementation for pickle classes.Serhiy Storchaka2014-12-161-1/+57
|\ \ \ | |/ /
| * | Issue #15513: Added a __sizeof__ implementation for pickle classes.Serhiy Storchaka2014-12-161-1/+57
| | |
* | | Fix uninitialized variable after #22676.Antoine Pitrou2014-12-011-7/+17
| | |
* | | Issue #22676: Make the pickling of global objects which don't have a ↵Antoine Pitrou2014-10-231-36/+72
| | | | | | | | | | | | __module__ attribute less slow.
* | | Silenced some warnings about comparison between signed and unsigned integerSerhiy Storchaka2014-09-051-3/+3
| | | | | | | | | | | | expressions.
* | | Issue #22207: Fix "comparison between signed and unsigned integers" warning inVictor Stinner2014-08-171-2/+3
| | | | | | | | | | | | | | | test checking for integer overflow on Py_ssize_t type: cast explicitly to size_t.
* | | _pickle: Optimize raw_unicode_escape(), use directly a bytes object, don't useVictor Stinner2014-08-171-10/+9
| | | | | | | | | | | | a temporary bytearray object.
* | | Issue #22218: Fix "comparison between signed and unsigned integers" warnings inVictor Stinner2014-08-171-10/+11
|/ / | | | | | | Modules/_pickle.c.
* | Issue #20326: Argument Clinic now uses a simple, unique signature toLarry Hastings2014-01-281-17/+17
| | | | | | | | | | | | | | | | | | | | annotate text signatures in docstrings, resulting in fewer false positives. "self" parameters are also explicitly marked, allowing inspect.Signature() to authoritatively detect (and skip) said parameters. Issue #20326: Argument Clinic now generates separate checksums for the input and output sections of the block, allowing external tools to verify that the input has not changed (and thus the output is not out-of-date).
* | Issue #20395: Extract generated clinic code in Modules/_pickle.c to separate ↵Serhiy Storchaka2014-01-271-479/+28
| | | | | | | | file.
* | silence compiler warning that 's' may be used uninitialized in the load ↵Christian Heimes2014-01-271-1/+1
| | | | | | | | function.
* | Issue #20390: Small fixes and improvements for Argument Clinic.Larry Hastings2014-01-261-41/+8
| |
* | Issue #20189: Four additional builtin types (PyTypeObject,Larry Hastings2014-01-241-48/+48
| | | | | | | | | | | | PyMethodDescr_Type, _PyMethodWrapper_Type, and PyWrapperDescr_Type) have been modified to provide introspection information for builtins. Also: many additional Lib, test suite, and Argument Clinic fixes.
* | Two minor Argument Clinic bugfixes: use the name of the class in theLarry Hastings2014-01-221-4/+4
| | | | | | | | | | docstring for __new__ and __init__, and always use "goto exit" instead of returning "NULL" for failure to parse (as _new__ and __init__ return ints).
* | Issue #20294: Argument Clinic now supports argument parsing for __new__ andLarry Hastings2014-01-191-48/+26
| | | | | | | | __init__ functions.
* | Issue #20287: Argument Clinic's output is now configurable, allowingLarry Hastings2014-01-181-51/+19
| | | | | | | | delaying its output or even redirecting it to a separate file.
* | Issue #20228: Argument Clinic now has special support for class specialLarry Hastings2014-01-121-8/+2
| | | | | | | | methods.
* | Issue #19273: The marker comments Argument Clinic uses have been changedLarry Hastings2014-01-071-61/+61
| | | | | | | | to improve readability.
* | Issue #19976: Argument Clinic METH_NOARGS functions now alwaysLarry Hastings2014-01-041-18/+122
| | | | | | | | take two parameters.
* | Issue #19972: Add rarely used freefunc. This fixes a leak if sys.exit()Stefan Krah2013-12-141-8/+14
| | | | | | | | is used in a program.
* | Issue #6784: Strings from Python 2 can now be unpickled as bytes objects.Alexandre Vassalotti2013-12-071-189/+217
| | | | | | | | | | | | | | Initial patch by Merlijn van Deen. I've added a few unrelated docstring fixes in the patch while I was at it, which makes the documentation for pickle a bit more consistent.
* | Issue #19881: Fix bad pickling of large bytes in cpickle.Alexandre Vassalotti2013-12-061-1/+1
| |
* | Issue #6477: Merge with 3.3.Alexandre Vassalotti2013-12-011-2/+2
|\ \ | |/
| * Issue #6477: Keep PyNotImplemented_Type and PyNone_Type private.Alexandre Vassalotti2013-12-011-2/+2
| |
* | Issue #6477: Merge with 3.3.Alexandre Vassalotti2013-12-011-1/+31
|\ \ | |/
| * Issue #6477: Added support for pickling the types of built-in singletons.Alexandre Vassalotti2013-12-011-1/+31
| |
* | Merge with 3.3.Alexandre Vassalotti2013-11-301-1/+1
|\ \ | |/
| * Fixed _pickle.Unpickler to handle empty persistent IDs correctly.Alexandre Vassalotti2013-11-301-1/+1
| |
* | Issue #17897: Optimized unpickle prefetching.Serhiy Storchaka2013-11-301-30/+22
| |
* | Use PyDict_GetItemWithError instead of PyDict_GetItem in cpickle.Alexandre Vassalotti2013-11-291-12/+35
| |
* | Remove explicit empty tuple reuse in cpickle.Alexandre Vassalotti2013-11-281-12/+6
| | | | | | | | | | | | PyTuple_New(0) always returns the same empty tuple from its free list anyway, so we are not saving much here. Plus, the code where this was used is on uncommon run paths.
* | Remove the tuple reuse optimization in _Pickle_FastCall.Alexandre Vassalotti2013-11-281-30/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | I have noticed a race-condition occurring on one of the buildbots because of this optimization. The function called may release the GIL which means multiple threads may end up accessing the shared tuple. I could fix it up by storing the tuple to the Pickler and Unipickler object again, but honestly it really not worth the trouble. I ran many benchmarks and the only time the optimization helps is when using a fin-memory file, like io.BytesIO on which reads are super cheap, combined with pickle protocol less than 4. Even in this contrived case, the speedup is a about 5%. For everything else, this optimization does not provide any noticable improvements.
* | Encapsulate cpickle global state in a dedicated object.Alexandre Vassalotti2013-11-281-270/+426
| | | | | | | | | | This implements PEP 3121 module finalization as well. This change does not cause any significant impact on performance.