Skip to content

Commit d8d25a0

Browse files
committed
Fix Setuptools Pickle Problem
see pypa/setuptools#1888
1 parent 6d2b4fc commit d8d25a0

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

colcon_python_setup_py/package_identification/run_setup_py.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,13 @@ def run_setup_py(cwd, env, script_args=(), stop_after='run'):
2828
result = distutils.core.run_setup(
2929
'setup.py', script_args=script_args, stop_after=stop_after)
3030

31+
try:
32+
# hack to make this class pickle to an ordinary set
33+
from setuptools.extern.ordered_set import OrderedSet
34+
OrderedSet.__reduce__ = lambda self: (set, (list(self),))
35+
except ImportError:
36+
pass
37+
3138
return {
3239
key: value for key, value in result.__dict__.items()
3340
if (

0 commit comments

Comments
 (0)