Cannot save visualization with traits v 5.0.0
- Dominant language
- Python
- Stars
- 1.4k
- Forks
- 316
- Avg merge
- 7h 44m
- Merged PRs (30d)
- 5
Description
To reproduce (Ubuntu 18.04):
```
conda create -n test python
conda activate test
python --version
Python 3.7.2
pip install mayavi
pip install PyQt5
pip list
Package Version
---------- ----------
apptools 4.4.0
certifi 2018.11.29
configobj 5.0.6
envisage 4.7.1
mayavi 4.6.2
numpy 1.16.1
pip 19.0.1
pyface 6.0.0
Pygments 2.3.1
PyQt5 5.11.3
PyQt5-sip 4.19.13
setuptools 40.7.3
six 1.12.0
traits 5.0.0
traitsui 6.0.0
vtk 8.1.2
wheel 0.32.3
```
Then launch mayavi, add any data source and try to save the visualization. Traceback:
```
ERROR|2019-02-06 17:56:38,559|Exception
Traceback (most recent call last):
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/mayavi/plugins/script.py", line 99, in save_visualization
self.engine.save_visualization(fname)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/scripting/recordable.py", line 45, in _wrapper
result = func(*args, **kw)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/mayavi/core/engine.py", line 263, in save_visualization
state = state_pickler.get_state(self)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 982, in get_state
s = dumps(obj)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 954, in dumps
return StatePickler().dumps(value)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 292, in dumps
return pickle.dumps(self._do(value))
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 343, in _do
return self._do_instance(obj)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 395, in _do_instance
data = self._do(state)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 332, in _do
return self.type_map[obj_type](obj)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 442, in _do_dict
vals = [self._do(x) for x in list(value.values())]
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 442, in
vals = [self._do(x) for x in list(value.values())]
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 338, in _do
return self._do_list(obj)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 437, in _do_list
data = [self._do(x) for x in value]
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 437, in
data = [self._do(x) for x in value]
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 343, in _do
return self._do_instance(obj)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 395, in _do_instance
data = self._do(state)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 332, in _do
return self.type_map[obj_type](obj)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 442, in _do_dict
vals = [self._do(x) for x in list(value.values())]
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 442, in
vals = [self._do(x) for x in list(value.values())]
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 343, in _do
return self._do_instance(obj)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 395, in _do_instance
data = self._do(state)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 332, in _do
return self.type_map[obj_type](obj)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 442, in _do_dict
vals = [self._do(x) for x in list(value.values())]
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 442, in
vals = [self._do(x) for x in list(value.values())]
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 343, in _do
return self._do_instance(obj)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 395, in _do_instance
data = self._do(state)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 332, in _do
return self.type_map[obj_type](obj)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 442, in _do_dict
vals = [self._do(x) for x in list(value.values())]
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 442, in
vals = [self._do(x) for x in list(value.values())]
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 332, in _do
return self.type_map[obj_type](obj)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 442, in _do_dict
vals = [self._do(x) for x in list(value.values())]
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 442, in
vals = [self._do(x) for x in list(value.values())]
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 343, in _do
return self._do_instance(obj)
File "/opt/miniconda/envs/test/lib/python3.7/site-packages/apptools/persistence/state_pickler.py", line 382, in _do_instance
state = value.__get_pure_state__()
TypeError: 'NoneType' object is not callable
```
Workaround: `pip install traits==4.6.0`
Don't know if this is a problem of mayavi or traits, though.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.