opencobra / memote

memote – the genome-scale metabolic model test suite
https://memote.readthedocs.io/
Apache License 2.0
123 stars 26 forks source link

TypeError: can't pickle SwigPyObject objects #725

Open susanGhaderi opened 2 years ago

susanGhaderi commented 2 years ago

Problem description

I try to get the diff between two models by this command $ memote report diff /Users/GEM_01.xml /Users/GEM_02.xml and then at the end I got this error --> ========================================================================== 88 failed, 56 passed, 21 skipped in 352.64s (0:05:52) =========================================================================== Traceback (most recent call last): File "/opt/anaconda3/bin/memote", line 8, in sys.exit(cli()) File "/opt/anaconda3/lib/python3.7/site-packages/click/core.py", line 829, in call return self.main(args, kwargs) File "/opt/anaconda3/lib/python3.7/site-packages/click/core.py", line 782, in main rv = self.invoke(ctx) File "/opt/anaconda3/lib/python3.7/site-packages/click/core.py", line 1259, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/opt/anaconda3/lib/python3.7/site-packages/click/core.py", line 1259, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/opt/anaconda3/lib/python3.7/site-packages/click/core.py", line 1066, in invoke return ctx.invoke(self.callback, ctx.params) File "/opt/anaconda3/lib/python3.7/site-packages/click/core.py", line 610, in invoke return callback(args, kwargs) File "/opt/anaconda3/lib/python3.7/site-packages/memote/suite/cli/reports.py", line 422, in diff results = pool.map(partial_test_diff, model_and_model_ver_tuple) File "/opt/anaconda3/lib/python3.7/multiprocessing/pool.py", line 268, in map return self._map_async(func, iterable, mapstar, chunksize).get() File "/opt/anaconda3/lib/python3.7/multiprocessing/pool.py", line 657, in get raise self._value File "/opt/anaconda3/lib/python3.7/multiprocessing/pool.py", line 431, in _handle_tasks put(task) File "/opt/anaconda3/lib/python3.7/multiprocessing/connection.py", line 206, in send self._send_bytes(_ForkingPickler.dumps(obj)) File "/opt/anaconda3/lib/python3.7/multiprocessing/reduction.py", line 51, in dumps cls(buf, protocol).dump(obj) TypeError: can't pickle SwigPyObject objects**

Could someone please help me to figure it out, what is the reason? and how can I fix it?

Midnighter commented 2 years ago

@susanGhaderi apologies for the long wait. Can you please provide the platform and version information that we ask for?