jupyter-widgets / pythreejs

A Jupyter - Three.js bridge
https://pythreejs.readthedocs.io
Other
936 stars 187 forks source link

Issue installing pythreejs 2.0.2 using conda on Ubuntu 18.04 - No module named 'TypedTuple' #247

Closed tpaviot closed 3 years ago

tpaviot commented 5 years ago

On an up-to-date Ubuntu 18.4 machine, using conda fails installing latest pythreejs release:

$ conda create -n tst_py3js python=3.6
$ source activate tst_py3js
$ conda install -c conda-forge pythreejs=2.0.2
[...]

LinkError: post-link script failed for package conda-forge::pythreejs-2.0.2-py36_1000
running your command again with `-v` will provide additional information
location of failed script: /home/thomas/miniconda3/envs/tst_py3js/bin/.pythreejs-post-link.sh
==> script messages <==
+ /home/thomas/miniconda3/envs/tst_py3js/bin/jupyter-nbextension enable pythreejs --py --sys-prefix
Traceback (most recent call last):
  File "/home/thomas/miniconda3/envs/tst_py3js/bin/jupyter-nbextension", line 11, in <module>
    sys.exit(main())
  File "/home/thomas/.local/lib/python3.6/site-packages/jupyter_core/application.py", line 266, in launch_instance
    return super(JupyterApp, cls).launch_instance(argv=argv, **kwargs)
  File "/home/thomas/.local/lib/python3.6/site-packages/traitlets/config/application.py", line 658, in launch_instance
    app.start()
  File "/home/thomas/.local/lib/python3.6/site-packages/notebook/nbextensions.py", line 988, in start
    super(NBExtensionApp, self).start()
  File "/home/thomas/.local/lib/python3.6/site-packages/jupyter_core/application.py", line 255, in start
    self.subapp.start()
  File "/home/thomas/.local/lib/python3.6/site-packages/notebook/nbextensions.py", line 896, in start
    self.toggle_nbextension_python(self.extra_args[0])
  File "/home/thomas/.local/lib/python3.6/site-packages/notebook/nbextensions.py", line 872, in toggle_nbextension_python
    logger=self.log)
  File "/home/thomas/.local/lib/python3.6/site-packages/notebook/nbextensions.py", line 483, in enable_nbextension_python
    logger=logger)
  File "/home/thomas/.local/lib/python3.6/site-packages/notebook/nbextensions.py", line 380, in _set_nbextension_state_python
    m, nbexts = _get_nbextension_metadata(module)
  File "/home/thomas/.local/lib/python3.6/site-packages/notebook/nbextensions.py", line 1122, in _get_nbextension_metadata
    m = import_item(module)
  File "/home/thomas/.local/lib/python3.6/site-packages/traitlets/utils/importstring.py", line 42, in import_item
    return __import__(parts[0])
  File "/home/thomas/miniconda3/envs/tst_py3js/lib/python3.6/site-packages/pythreejs/__init__.py", line 11, in <module>
    from .pythreejs import *
  File "/home/thomas/miniconda3/envs/tst_py3js/lib/python3.6/site-packages/pythreejs/pythreejs.py", line 22, in <module>
    from .core.BufferAttribute import BufferAttribute
  File "/home/thomas/miniconda3/envs/tst_py3js/lib/python3.6/site-packages/pythreejs/core/BufferAttribute.py", line 4, in <module>
    from .BufferAttribute_autogen import BufferAttribute as BaseBufferAttribute
  File "/home/thomas/miniconda3/envs/tst_py3js/lib/python3.6/site-packages/pythreejs/core/BufferAttribute_autogen.py", line 5, in <module>
    from ipywidgets.widgets.trait_types import TypedTuple
ImportError: cannot import name 'TypedTuple'
maartenbreddels commented 5 years ago

My guess is that the recipe for pythreejs should be updated to use a more modern ipywidgets. A workaround is to install the most recent ipywidgets first.

vidartf commented 3 years ago

Closing this as answered.