diff --git a/CHANGES.md b/CHANGES.md index c4857e9e7..ad584c7ea 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,6 +1,9 @@ 1.4.1 (in development) ====================== +- Restore compat with loading dynamic classes pickled with cloudpickle + version 1.2.1 that would reference the `types.ClassType` attribute. + ([PR #359](https://github.com/cloudpipe/cloudpickle/pull/359)) 1.4.0 diff --git a/cloudpickle/cloudpickle.py b/cloudpickle/cloudpickle.py index 73ca30cc7..fb5beb5f5 100644 --- a/cloudpickle/cloudpickle.py +++ b/cloudpickle/cloudpickle.py @@ -388,6 +388,11 @@ def _cell_set_factory(value): def _builtin_type(name): + if name == "ClassType": # pragma: no cover + # Backward compat to load pickle files generated with cloudpickle + # < 1.3 even if loading pickle files from older versions is not + # officially supported. + return type return getattr(types, name)