summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2016-01-18 21:35:22 +0200
committerSerhiy Storchaka <storchaka@gmail.com>2016-01-18 21:35:22 +0200
commit111c7b9011c5838f8276e8729bc8cbeb693d4ac7 (patch)
treeeec5c3fee71a7c2f78dfb50507bd7a5f19d0d0dc
parent084f7e4012f5d9e16f82ab5527bb592fdf1badef (diff)
downloadcpython-git-111c7b9011c5838f8276e8729bc8cbeb693d4ac7.tar.gz
Issue #26013: Added compatibility with broken protocol 2 pickles created
in old Python 3 versions (3.4.3 and lower).
-rw-r--r--Lib/_compat_pickle.py7
-rw-r--r--Misc/NEWS3
2 files changed, 10 insertions, 0 deletions
diff --git a/Lib/_compat_pickle.py b/Lib/_compat_pickle.py
index 6e39d4aee3..c0e0443cf2 100644
--- a/Lib/_compat_pickle.py
+++ b/Lib/_compat_pickle.py
@@ -177,6 +177,13 @@ IMPORT_MAPPING.update({
'DocXMLRPCServer': 'xmlrpc.server',
'SimpleHTTPServer': 'http.server',
'CGIHTTPServer': 'http.server',
+ # For compatibility with broken pickles saved in old Python 3 versions
+ 'UserDict': 'collections',
+ 'UserList': 'collections',
+ 'UserString': 'collections',
+ 'whichdb': 'dbm',
+ 'StringIO': 'io',
+ 'cStringIO': 'io',
})
REVERSE_IMPORT_MAPPING.update({
diff --git a/Misc/NEWS b/Misc/NEWS
index 735e420ac2..69441424f1 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -44,6 +44,9 @@ Core and Builtins
Library
-------
+- Issue #26013: Added compatibility with broken protocol 2 pickles created
+ in old Python 3 versions (3.4.3 and lower).
+
- Issue #25850: Use cross-compilation by default for 64-bit Windows.
- Issue #17633: Improve zipimport's support for namespace packages.