Commit graph

197 commits

Author SHA1 Message Date
Serhiy Storchaka
4a1e70fc31 Issue #20440: Applied yet one patch for using Py_SETREF.
The patch is automatically generated, it replaces the code that uses Py_CLEAR.
2015-12-27 12:36:18 +02:00
Serhiy Storchaka
5c4064e8bd Issue #25421: __sizeof__ methods of builtin types now use dynamic basic size.
This allows sys.getsize() to work correctly with their subclasses with
__slots__ defined.
2015-12-19 20:05:25 +02:00
Serhiy Storchaka
77a61d292a Fixed reference leak when read truncated pickle. 2015-12-01 00:20:36 +02:00
Serhiy Storchaka
ca28eba3d3 Fixed reference leak when read truncated pickle. 2015-12-01 00:18:23 +02:00
Serhiy Storchaka
c5f3b4285a Issue #25725: Fixed a reference leak in pickle.loads() when unpickling
invalid data including tuple instructions.
2015-11-25 15:06:49 +02:00
Serhiy Storchaka
a49de6be36 Issue #25725: Fixed a reference leak in pickle.loads() when unpickling
invalid data including tuple instructions.
2015-11-25 15:01:53 +02:00
Serhiy Storchaka
4409c6cfae Issue #23914: Fixed SystemError raised by unpickler on broken pickle data. 2015-11-23 15:19:23 +02:00
Serhiy Storchaka
e9b3074cf9 Issue #23914: Fixed SystemError raised by unpickler on broken pickle data. 2015-11-23 15:17:43 +02:00
Martin Panter
2eb819f7a8 Issue #25523: Merge "a" to "an" fixes from 3.4 into 3.5 2015-11-02 04:04:57 +00:00
Martin Panter
7462b64911 Issue #25523: Correct "a" article to "an" article
This changes the main documentation, doc strings, source code comments, and a
couple error messages in the test suite. In some cases the word was removed
or edited some other way to fix the grammar.
2015-11-02 03:37:02 +00:00
Serhiy Storchaka
525faaeffc Issue #25262. Added support for BINBYTES8 opcode in Python implementation of
unpickler.  Highest 32 bits of 64-bit size for BINUNICODE8 and BINBYTES8
opcodes no longer silently ignored on 32-bit platforms in C implementation.
2015-09-29 22:12:29 +03:00
Serhiy Storchaka
e060619d4b Issue #25262. Added support for BINBYTES8 opcode in Python implementation of
unpickler.  Highest 32 bits of 64-bit size for BINUNICODE8 and BINBYTES8
opcodes no longer silently ignored on 32-bit platforms in C implementation.
2015-09-29 22:10:07 +03:00
Benjamin Peterson
bdb93c3e63 merge 3.4 (#25245) 2015-09-27 01:16:12 -07:00
Benjamin Peterson
6aa1564e9c initialize return value to NULL to avoid compiler compliants (closes #25245) 2015-09-27 01:16:03 -07:00
Benjamin Peterson
03c59b9bef merge 3.4 2015-09-26 00:09:32 -07:00
Benjamin Peterson
e48cf7e729 prevent overflow in _Unpickler_Read 2015-09-26 00:08:34 -07:00
Yury Selivanov
f488fb422a Issue #19235: Add new RecursionError exception. Patch by Georg Brandl. 2015-07-03 01:04:23 -04:00
Benjamin Peterson
42e913aa3a merge 3.4 (#24552) 2015-07-02 16:18:58 -05:00
Benjamin Peterson
80f78a3efc fix use after free (closes #24552) 2015-07-02 16:18:38 -05:00
Benjamin Peterson
7763c68dcd merge 3.4 2015-06-27 14:18:23 -05:00
Benjamin Peterson
ff0f322edb merge 3.3 2015-06-27 13:56:46 -05:00
Benjamin Peterson
59b08c18a8 use safe allocation and reallocation macros 2015-06-27 13:41:33 -05:00
Larry Hastings
89964c48d1 Issue #23944: Argument Clinic now wraps long impl prototypes at column 78. 2015-04-14 18:07:59 -04:00
Serhiy Storchaka
1009bf18b3 Issue #23501: Argumen Clinic now generates code into separate files by default. 2015-04-03 23:53:51 +03:00
Serhiy Storchaka
58e4134a1c Issue #23611: Serializing more "lookupable" objects (such as unbound methods
or nested classes) now are supported with pickle protocols < 4.
2015-03-31 14:07:24 +03:00
Serhiy Storchaka
d5d818d40b Issue #18473: Fixed 2to3 and 3to2 compatible pickle mappings.
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.
2015-03-31 13:17:10 +03:00
Serhiy Storchaka
bfe1824d08 Issue #18473: Fixed 2to3 and 3to2 compatible pickle mappings.
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.
2015-03-31 13:12:37 +03:00
Serhiy Storchaka
c86ca26d32 Issue #23096: Pickle representation of floats with protocol 0 now is the same
for both Python and C implementations.
2015-02-15 14:18:32 +02:00
Serhiy Storchaka
707b5ccde5 Issue #22783: Pickling now uses the NEWOBJ opcode instead of the NEWOBJ_EX
opcode if possible.
2014-12-16 19:43:46 +02:00
Serhiy Storchaka
01bdd9a980 Issue #15513: Added a __sizeof__ implementation for pickle classes. 2014-12-16 19:40:58 +02:00
Serhiy Storchaka
5bbd231f27 Issue #15513: Added a __sizeof__ implementation for pickle classes. 2014-12-16 19:39:08 +02:00
Antoine Pitrou
6cd5eda0dd Fix uninitialized variable after #22676. 2014-12-02 00:20:03 +01:00
Antoine Pitrou
fce60eaf15 Issue #22676: Make the pickling of global objects which don't have a __module__ attribute less slow. 2014-10-23 22:47:50 +02:00
Serhiy Storchaka
67c719b34b Silenced some warnings about comparison between signed and unsigned integer
expressions.
2014-09-05 10:10:23 +03:00
Victor Stinner
049e509a9f Issue #22207: Fix "comparison between signed and unsigned integers" warning in
test checking for integer overflow on Py_ssize_t type: cast explicitly to
size_t.
2014-08-17 22:20:00 +02:00
Victor Stinner
7270b7f1aa _pickle: Optimize raw_unicode_escape(), use directly a bytes object, don't use
a temporary bytearray object.
2014-08-17 21:14:46 +02:00
Victor Stinner
f13c46cc69 Issue #22218: Fix "comparison between signed and unsigned integers" warnings in
Modules/_pickle.c.
2014-08-17 21:05:55 +02:00
Larry Hastings
581ee3618c Issue #20326: Argument Clinic now uses a simple, unique signature to
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).
2014-01-28 05:00:08 -08:00
Serhiy Storchaka
3c1f0f1b42 Issue #20395: Extract generated clinic code in Modules/_pickle.c to separate file. 2014-01-27 10:34:22 +02:00
Christian Heimes
27ea78b352 silence compiler warning that 's' may be used uninitialized in the load function. 2014-01-27 01:03:53 +01:00
Larry Hastings
c20472640c Issue #20390: Small fixes and improvements for Argument Clinic. 2014-01-25 20:43:29 -08:00
Larry Hastings
5c66189e88 Issue #20189: Four additional builtin types (PyTypeObject,
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.
2014-01-24 06:17:25 -08:00
Larry Hastings
462582651c Two minor Argument Clinic bugfixes: use the name of the class in the
docstring for __new__ and __init__, and always use "goto exit" instead of
returning "NULL" for failure to parse (as _new__ and __init__ return ints).
2014-01-22 03:05:49 -08:00
Larry Hastings
b7ccb20423 Issue #20294: Argument Clinic now supports argument parsing for __new__ and
__init__ functions.
2014-01-18 23:50:21 -08:00
Larry Hastings
bebf73511a Issue #20287: Argument Clinic's output is now configurable, allowing
delaying its output or even redirecting it to a separate file.
2014-01-17 17:47:17 -08:00
Larry Hastings
8666e65206 Issue #20228: Argument Clinic now has special support for class special
methods.
2014-01-12 14:12:59 -08:00
Larry Hastings
61272b77b0 Issue #19273: The marker comments Argument Clinic uses have been changed
to improve readability.
2014-01-07 12:41:53 -08:00
Larry Hastings
3cceb38486 Issue #19976: Argument Clinic METH_NOARGS functions now always
take two parameters.
2014-01-04 11:09:09 -08:00
Stefan Krah
f483b0f3a9 Issue #19972: Add rarely used freefunc. This fixes a leak if sys.exit()
is used in a program.
2013-12-14 13:43:10 +01:00
Alexandre Vassalotti
d05c9ff845 Issue #6784: Strings from Python 2 can now be unpickled as bytes objects.
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.
2013-12-07 01:09:27 -08:00