]> granicus.if.org Git - python/commitdiff
The default shelve pickle protocol should have been 3.
authorRaymond Hettinger <python@rcn.com>
Tue, 3 Feb 2009 04:19:10 +0000 (04:19 +0000)
committerRaymond Hettinger <python@rcn.com>
Tue, 3 Feb 2009 04:19:10 +0000 (04:19 +0000)
Doc/library/shelve.rst
Lib/shelve.py
Misc/NEWS

index b39a92ca963e857501aeec8f02e57141db609ecb..44eff59d67da75f22af1e75c1585d72c157ce3ff 100644 (file)
@@ -23,7 +23,7 @@ lots of shared  sub-objects.  The keys are ordinary strings.
    database file is opened for reading and writing.  The optional *flag* parameter
    has the same interpretation as the *flag* parameter of :func:`dbm.open`.
 
-   By default, version 2 pickles are used to serialize values.  The version of the
+   By default, version 3 pickles are used to serialize values.  The version of the
    pickle protocol can be specified with the *protocol* parameter.
 
    By default, mutations to persistent-dictionary mutable entries are not
index cf6dac65f47e08d2f2b1383e53b7bafa3feaa8b6..fb2fa93b0100ae51c6a953374d7c2eeb254d7b55 100644 (file)
@@ -84,7 +84,7 @@ class Shelf(collections.MutableMapping):
                  keyencoding="utf-8"):
         self.dict = dict
         if protocol is None:
-            protocol = 2
+            protocol = 3
         self._protocol = protocol
         self.writeback = writeback
         self.cache = {}
index 54260466306bc7f3b8d29d971e6b2585d9fd2f24..68cea16ac502e607ab8d18e2c355345705e20719 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -157,6 +157,8 @@ Library
 
 - Issue #1581476: Always use the Tcl global namespace when calling into Tcl.
 
+- The shelve module now defaults to pickle protocol 3.
+
 - Fix a bug in the trace module where a bytes object from co_lnotab had its
   items being passed through ord().