- Fix regression in 0.6.0 which breaks the pickling of local function defined in a module, making it impossible to access builtins. (issue #211)
-
Ensure that unpickling a function defined in a dynamic module several times sequentially does not reset the values of global variables. (issue #187)
-
Restrict the ability to pickle annotations to python3.7+ (issue #193 and issue #196)
-
Stop using the deprecated
impmodule under Python 3. (issue #207) -
Fixed pickling issue with singleton types
NoneType,type(...)andtype(NotImplemented)(issue #209)
- Ensure that unpickling a locally defined function that accesses the global variables of a module does not reset the values of the global variables if they are already initialized. (issue #187)
- Fixed inconsistent version in
cloudpickle.__version__.
-
Fixed a pickling issue for ABC in python3.7+ (issue #180).
-
Fixed a bug when pickling functions in
__main__that access global variables (issue #187).
-
Fixed a crash in Python 2 when serializing non-hashable instancemethods of built-in types (issue #144).
-
itertools objects can also pickled (PR #156).
-
logging.RootLoggercan be also pickled (PR #160).
-
Fixed a regression:
AttributeErrorwhen loading pickles that hold a reference to a dynamically defined class from the__main__module. (issue #131). -
Make it possible to pickle classes and functions defined in faulty modules that raise an exception when trying to look-up their attributes by name.
- Fixed
cloudpickle.__version__.
- Use
pickle.HIGHEST_PROTOCOLby default.
logging.RootLoggercan be also pickled (PR #160).
-
Fixed a regression:
AttributeErrorwhen loading pickles that hold a reference to a dynamically defined class from the__main__module. (issue #131). -
Fixed a crash in Python 2 when serializing non-hashable instancemethods of built-in types. (issue #144)
- Restored compatibility with pickles from 0.4.0.
- Handle the
func.__qualname__attribute.
- Fixed a crash when pickling dynamic classes whose
__dict__attribute was defined as aproperty. Most notably, this affected dynamic namedtuples in Python 2. (cloudpipe#113) - Cloudpickle now preserves the
__module__attribute of functions (cloudpipe#118). - Fixed a crash when pickling modules that don't have a
__package__attribute (cloudpipe#116).
- Fix functions with empty cells
- Allow pickling Logger objects
- Fix crash when pickling dynamic class cycles
- Ignore "None" mdoules added to sys.modules
- Support WeakSets and ABCMeta instances
- Remove non-standard
__transient__support - Catch exception from
pickle.whichmodule()
- Fix version information and ship a changelog
- Import submodules accessed by pickled functions
- Support recursive functions inside closures
- Fix
ResourceWarningsandDeprecationWarnings - Assume modules with
__file__attribute are not dynamic
- Support Python 3.6
- Support Tornado Coroutines
- Support builtin methods
- Packaging fix
- Support
method_descriptor - Support unbound instancemethods
- Fixes for PyPy3
- More support for pickling dynamic imports
Released on 2015-04-16 from the (real) clouds somewhere between Montréal and Atlanta.