Serhiy Storchaka
d26b66313e
Got rid of "with" for compatibility test_xpickle with Python 2.5.
2015-11-29 16:13:51 +02:00
Serhiy Storchaka
bf19ce27c4
Issue #25761 : Added more test cases for testing unpickling broken data.
...
Output raised exception at verbose level 2 (-vv).
2015-11-29 13:12:40 +02:00
Zachary Ware
916c7c7ae1
Issue #23914 : Fix test_xpickle with python 2.4 and 2.5
...
Remove 'b' prefix from strings, remove unused import.
2015-11-27 01:21:51 -06:00
Serhiy Storchaka
5c137669e3
Issue #23914 : Fixed SystemError raised by unpickler on broken pickle data.
2015-11-23 15:20:43 +02:00
Serhiy Storchaka
da87e45add
Issue #892902 : Fixed pickling recursive objects.
2015-11-07 11:15:32 +02:00
Serhiy Storchaka
f6eced52cc
Removed the "b" string prefix to make test_xpickle compatible with Python 2.5.
2015-10-02 20:23:46 +03:00
Serhiy Storchaka
22afc506fb
Backported additional unpickling tests from 3.x.
2015-09-29 15:51:40 +03:00
Serhiy Storchaka
4d2cf5587c
Moved unpickling tests with prepickled data to separate class.
2015-09-29 15:36:28 +03:00
Alexandre Vassalotti
df9460f8dc
Issue #6477 : Revert fbb97f6eb3b3 as it broke test_xpickle.
2013-11-30 17:43:42 -08:00
Alexandre Vassalotti
a2934280e5
Issue #6477 : Added pickling support for singletons and their types.
2013-11-30 16:52:03 -08:00
Alexandre Vassalotti
1d3a173326
Issue #16231 : Allow false values other than None to be used as persistent IDs.
2013-11-30 13:24:13 -08:00
Antoine Pitrou
be92971b38
Issue #17710 : Fix cPickle raising a SystemError on bogus input.
2013-04-15 21:35:25 +02:00
Benjamin Peterson
f3ad030a74
G -> M ( closes #17533 )
2013-03-30 15:30:28 -04:00
Benjamin Peterson
d627e122d7
fall back when an old test_support doesn't have various data and functions ( closes #17533 )
2013-03-30 10:36:31 -04:00
Ezio Melotti
a84ecc649b
#17346 : make sure pickle tests are run against all protocols.
2013-03-04 15:23:12 +02:00
Serhiy Storchaka
cdc7a91dde
Issue #13555 : cPickle now supports files larger than 2 GiB.
2013-02-12 21:36:47 +02:00
Ezio Melotti
030aa35a1b
Silence a couple of warnings.
2011-11-06 18:50:32 +02:00
Antoine Pitrou
561a821e93
Issue #7689 : Allow pickling of dynamically created classes when their
...
metaclass is registered with copyreg. Patch by Nicolas M. Thiéry and
Craig Citro.
2011-10-04 09:34:48 +02:00
Ezio Melotti
aa98058cc4
use assert[Not]In where appropriate
2010-01-23 23:04:36 +00:00
Antoine Pitrou
0d423b870b
Issue #7455 : Fix possible crash in cPickle on invalid input. Patch by
...
Florent Xicluna.
2010-01-07 17:46:49 +00:00
Alexandre Vassalotti
8b2d713d32
Issue 7128: Removed reference to the non-existent copyreg module.
...
The reference to copyreg was a unnoticed leftover from the compatibility
support for the grand renaming of the standard library in Python 3. The
compatibility support was reverted in r63493, but not completely as this
patch shows.
Based on a patch by Amaury Forgeot d'Arc.
2009-11-24 17:53:23 +00:00
Amaury Forgeot d'Arc
74b3016783
#6553 : crash in cPickle.load(), when given a StringIO with incomplete data.
...
Will backport to 2.6, 3.x already fixed a similar issue with issue4298.
2009-07-23 19:26:02 +00:00
Benjamin Peterson
5c8da86f3a
convert usage of fail* to assert*
2009-06-30 22:57:08 +00:00
Collin Winter
57bef68bc0
Issue 5794: fix cPickle's unpickling of recursive tuples.
2009-05-26 04:12:39 +00:00
Antoine Pitrou
7430989cda
Isue #5084 : unpickling now interns the attribute names of pickled objects,
...
saving memory and avoiding growth in size of subsequent pickles. Proposal
and original patch by Jake McGuire.
2009-05-02 21:13:23 +00:00
Collin Winter
f8089c7789
Issue 5665: add more pickling tests.
...
- Add tests for the module-level load() and dump() functions.
- Add tests for cPickle's internal data structures, stressing workloads
with many gets/puts.
- Add tests for the Pickler and Unpickler classes, in particular the
memo attribute.
- test_xpickle is extended to test backwards compatibility with Python
2.4, 2.5 and 2.6 by round-tripping pickled objects through a worker
process. This is guarded with a regrtest -u xpickle resource.
2009-04-09 16:46:46 +00:00
Mark Dickinson
a3ecd2c668
Issue #1672332 : Fix unpickling of subnormal floats, which was raising
...
ValueError on some platforms as a result of the platform strtod setting
errno on underflow.
2009-01-24 16:40:29 +00:00
Alexandre Vassalotti
e57e9990e7
Fix bogus unicode tests in pickletester.
2008-12-27 10:02:59 +00:00
Alexandre Vassalotti
f852bf97ef
Fix issue #4730 : cPickle corrupts high-unicode strings.
...
Update outdated copy of PyUnicode_EncodeRawUnicodeEscape.
Add a test case.
2008-12-27 07:08:47 +00:00
Amaury Forgeot d'Arc
69a9c5b539
Issue #4176 : Pickle would crash the interpreter when a __reduce__ function
...
does not return an iterator for the 4th and 5th items.
(sequence-like and mapping-like state)
A list is not an iterator...
Will backport to 2.6 and 2.5.
2008-10-30 21:18:34 +00:00
Georg Brandl
dffbf5f542
Revert copy_reg -> copyreg rename.
2008-05-20 07:49:57 +00:00
Alexandre Vassalotti
9510e4a9f8
Added module stub for copy_reg renaming in 3.0.
...
Renamed copy_reg to copyreg in the standard library, to avoid
spurious warnings and ease later merging to py3k branch. Public
documentation remains intact.
2008-05-11 08:25:28 +00:00
Žiga Seilnacht
20f43d3018
Patch #1462488 : prevent a segfault in object_reduce_ex() by splitting
...
the implementation for __reduce__ and __reduce_ex__ into two separate
functions. Fixes bug #931877 . Will backport.
2007-03-15 11:44:55 +00:00
Georg Brandl
de9b624fb9
Bug #1473625 : stop cPickle making float dumps locale dependent in protocol 0.
...
On the way, add a decorator to test_support to facilitate running single
test functions in different locales with automatic cleanup.
2006-04-30 11:13:56 +00:00
Martin v. Löwis
544f1195b1
Patch #995766 : Keyword argument support in cPickle.
2004-07-27 05:22:33 +00:00
Armin Rigo
2b3eb4062c
Deleting cyclic object comparison.
...
SF patch 825639
http://mail.python.org/pipermail/python-dev/2003-October/039445.html
2003-10-28 12:05:48 +00:00
Guido van Rossum
206b9a779a
MyComplex now works.
2003-03-02 13:53:18 +00:00
Tim Peters
fc27375d5a
test_load_from_canned_string(): Created a DATA2 string to test a canned
...
proto 2 pickle too.
2003-03-02 04:54:24 +00:00
Guido van Rossum
2a30b21f64
Three test cases for __reduce_ex__. This fails for cPickle, until Tim
...
checks in his changes to support this in cPickle.c.
2003-02-18 22:41:24 +00:00
Tim Peters
080c88b912
cPickle.c, load_build(): Taught cPickle how to pick apart
...
the optional proto 2 slot state.
pickle.py, load_build(): CAUTION: Noted that cPickle's
load_build and pickle's load_build really don't do the same
things with the state, and didn't before this patch either.
cPickle never tries to do .update(), and has no backoff if
instance.__dict__ can't be retrieved. There are no tests
that can tell the difference, and part of what cPickle's
load_build() did looked accidental to me, so I don't know
what the true intent is here.
pickletester.py, test_pickle.py: Got rid of the hack for
exempting cPickle from running some of the proto 2 tests.
dictobject.c, PyDict_Next(): documented intended use.
2003-02-15 03:01:11 +00:00
Tim Peters
71fcda5ba7
cPickle produces NEWOBJ appropriately now. It still doesn't know
...
how to unpickle the new slot-full state tuples.
2003-02-14 23:05:28 +00:00
Tim Peters
c0c9370985
We didn't have any tests making pickles with one of {pickle, cPickle},
...
and loading them via the other, except for the special cases of this
Guido added to test_datetime.py for datetime module objects. The new
test_xpickle.py tries all of pickletester's AbstractPickleTests in
both x-module ways.
2003-02-13 19:30:57 +00:00
Tim Peters
e9ef203ea6
Added a simple NEWOBJ test. This is in the pickle-only part of the
...
test for now (cPickle can't yet produce NEWOBJ).
2003-02-13 18:42:00 +00:00
Tim Peters
8587b3c073
Added a HIGHEST_PROTOCOL module attribute to pickle and cPickle.
2003-02-13 15:44:41 +00:00
Tim Peters
42f08ac1e3
Implemented batching for dicts in cPickle. This is after two failed
...
attempts to merge the C list-batch and dict-batch code -- they worked, but
it was a godawful mess to read.
2003-02-11 22:43:24 +00:00
Tim Peters
1092d64002
Implemented list batching in cPickle.
2003-02-11 21:06:20 +00:00
Tim Peters
8d2613adbe
Added tests to ensure that list and dict "chunking" are actually
...
getting done. Since this isn't yet implemented in cPickle, the
new tests are in TempAbstractPickleTests (which cPickle doesn't
run).
2003-02-11 16:40:16 +00:00
Tim Peters
3e667d5452
cPickle: exempt two_tuple from GC -- it's a speed hack, and doesn't
...
guarantee to keep valid pointers in its slots.
tests: Moved ExtensionSaver from test_copy_reg into pickletester, and
use it both places. Once extension codes get assigned, it won't be
safe to overwrite them willy nilly in test suites, and ExtensionSaver
does a thorough job of undoing any possible damage.
Beefed up the EXT[124] tests a bit, to check the smallest and largest
codes in each opcode's range too.
2003-02-04 21:47:44 +00:00
Tim Peters
731098b3ff
cPickle now generates proto 2 EXT[124] when appropriate.
...
Moved such EXT tests as currently exist from TempAbstractPickleTests to
AbstractPickleTests, so that test_cpickle runs them too.
2003-02-04 20:56:09 +00:00
Tim Peters
894453a28d
test_newobj_tuple(), test_newobj_list(): These tests should work under
...
all protocols, so tried them under all.
2003-02-03 22:32:18 +00:00