tutorial
tutorial copied to clipboard
LinkError on ipywebrtc while building environment with conda
Hi, I'm getting this error when I try install the widgets using the command given in the README
Install widgets from conda-forge conda install -c conda-forge ipywidgets=7.2 bqplot ipyvolume ipyleaflet pythreejs ipyevents
I tried to run with it with conda 4.6.14 first and after downgrading to conda 4.5.13 after reading https://github.com/conda/conda/issues/8306
I'm running debian
uname -a Linux debian 4.9.0-9-amd64 #1 SMP Debian 4.9.168-1+deb9u2 (2019-05-13) x86_64 GNU/Linux
Regards, Sasha
Preparing transaction: ...working... done
Verifying transaction: ...working... done
Executing transaction: ...working... ===> LINKING PACKAGE: conda-forge::traittypes-0.2.1-py_1 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
source=/home/sasha/miniconda3/pkgs/traittypes-0.2.1-py_1
===> LINKING PACKAGE: conda-forge::branca-0.3.1-py_0 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
source=/home/sasha/miniconda3/pkgs/branca-0.3.1-py_0
===> LINKING PACKAGE: conda-forge::widgetsnbextension-3.2.1-py36_1 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
source=/home/sasha/miniconda3/pkgs/widgetsnbextension-3.2.1-py36_1
Enabling notebook extension jupyter-js-widgets/extension...
- Validating: OK
===> LINKING PACKAGE: conda-forge::ipywidgets-7.2.1-py36_1 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
source=/home/sasha/miniconda3/pkgs/ipywidgets-7.2.1-py36_1
===> LINKING PACKAGE: conda-forge::ipyevents-0.5.0-py_0 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
source=/home/sasha/miniconda3/pkgs/ipyevents-0.5.0-py_0
===> LINKING PACKAGE: conda-forge::ipyscales-0.3.0-py_0 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
source=/home/sasha/miniconda3/pkgs/ipyscales-0.3.0-py_0
===> LINKING PACKAGE: conda-forge::ipywebrtc-0.4.0-py36_1 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
source=/home/sasha/miniconda3/pkgs/ipywebrtc-0.4.0-py36_1
$ bash -x /home/sasha/miniconda3/envs/widgets-tutorial/bin/.ipywebrtc-post-link.sh
==> cwd: /home/sasha/miniconda3/envs/widgets-tutorial/bin <==
==> exit code: 1 <==
==> stdout <==
b''
==> stderr <==
b'+ /home/sasha/miniconda3/envs/widgets-tutorial/bin/jupyter-nbextension enable ipywebrtc --py --sys-prefix\nTraceback (most recent call last):\n File "/home/sasha/miniconda3/envs/widgets-tutorial/bin/jupyter-nbextension", line 11, in <module>\n sys.exit(main())\n File "/home/sasha/miniconda3/envs/widgets-tutorial/lib/python3.6/site-packages/jupyter_core/application.py", line 266, in launch_instance\n return super(JupyterApp, cls).launch_instance(argv=argv, **kwargs)\n File "/home/sasha/miniconda3/envs/widgets-tutorial/lib/python3.6/site-packages/traitlets/config/application.py", line 658, in launch_instance\n app.start()\n File "/home/sasha/miniconda3/envs/widgets-tutorial/lib/python3.6/site-packages/notebook/nbextensions.py", line 988, in start\n super(NBExtensionApp, self).start()\n File "/home/sasha/miniconda3/envs/widgets-tutorial/lib/python3.6/site-packages/jupyter_core/application.py", line 255, in start\n self.subapp.start()\n File "/home/sasha/miniconda3/envs/widgets-tutorial/lib/python3.6/site-packages/notebook/nbextensions.py", line 896, in start\n self.toggle_nbextension_python(self.extra_args[0])\n File "/home/sasha/miniconda3/envs/widgets-tutorial/lib/python3.6/site-packages/notebook/nbextensions.py", line 872, in toggle_nbextension_python\n logger=self.log)\n File "/home/sasha/miniconda3/envs/widgets-tutorial/lib/python3.6/site-packages/notebook/nbextensions.py", line 483, in enable_nbextension_python\n logger=logger)\n File "/home/sasha/miniconda3/envs/widgets-tutorial/lib/python3.6/site-packages/notebook/nbextensions.py", line 380, in _set_nbextension_state_python\n m, nbexts = _get_nbextension_metadata(module)\n File "/home/sasha/miniconda3/envs/widgets-tutorial/lib/python3.6/site-packages/notebook/nbextensions.py", line 1122, in _get_nbextension_metadata\n m = import_item(module)\n File "/home/sasha/miniconda3/envs/widgets-tutorial/lib/python3.6/site-packages/traitlets/utils/importstring.py", line 42, in import_item\n return __import__(parts[0])\n File "/home/sasha/miniconda3/envs/widgets-tutorial/lib/python3.6/site-packages/ipywebrtc/__init__.py", line 5, in <module>\n from .webrtc import *\n File "/home/sasha/miniconda3/envs/widgets-tutorial/lib/python3.6/site-packages/ipywebrtc/webrtc.py", line 12, in <module>\n from ipywidgets import DOMWidget, Image, Video, Audio, register, widget_serialization\nImportError: cannot import name \'Video\'\n'
===> REVERSING PACKAGE LINK: conda-forge::ipywebrtc-0.4.0-py36_1 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
failed
An error occurred while installing package 'conda-forge::ipywebrtc-0.4.0-py36_1'.
LinkError: post-link script failed for package conda-forge::ipywebrtc-0.4.0-py36_1
running your command again with `-v` will provide additional information
location of failed script: /home/sasha/miniconda3/envs/widgets-tutorial/bin/.ipywebrtc-post-link.sh
==> script messages <==
<None>
Attempting to roll back.
Rolling back transaction: ...working... ===> REVERSING PACKAGE LINK: conda-forge::ipyscales-0.3.0-py_0 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
===> REVERSING PACKAGE LINK: conda-forge::ipyevents-0.5.0-py_0 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
===> REVERSING PACKAGE LINK: conda-forge::ipywidgets-7.2.1-py36_1 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
===> REVERSING PACKAGE LINK: conda-forge::widgetsnbextension-3.2.1-py36_1 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
===> REVERSING PACKAGE LINK: conda-forge::branca-0.3.1-py_0 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
===> REVERSING PACKAGE LINK: conda-forge::traittypes-0.2.1-py_1 <===
prefix=/home/sasha/miniconda3/envs/widgets-tutorial
done
Traceback (most recent call last):
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/core/link.py", line 799, in run_script
subprocess_call(command_args, env=env, path=dirname(path))
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/gateways/subprocess.py", line 56, in subprocess_call
output=_format_output(command_str, path, rc, stdout, stderr))
subprocess.CalledProcessError: Command '['bash', '-x', '/home/sasha/miniconda3/envs/widgets-tutorial/bin/.ipywebrtc-post-link.sh']' returned non-zero exit status 1.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/core/link.py", line 563, in _execute_actions
run_script(target_prefix, prec, 'post-unlink' if is_unlink else 'post-link')
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/core/link.py", line 815, in run_script
raise LinkError(message)
conda.exceptions.LinkError: post-link script failed for package conda-forge::ipywebrtc-0.4.0-py36_1
running your command again with `-v` will provide additional information
location of failed script: /home/sasha/miniconda3/envs/widgets-tutorial/bin/.ipywebrtc-post-link.sh
==> script messages <==
<None>
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/core/link.py", line 498, in _execute
cls._execute_actions(pkg_idx, axngroup)
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/core/link.py", line 579, in _execute_actions
reverse_excs,
conda.CondaMultiError: post-link script failed for package conda-forge::ipywebrtc-0.4.0-py36_1
running your command again with `-v` will provide additional information
location of failed script: /home/sasha/miniconda3/envs/widgets-tutorial/bin/.ipywebrtc-post-link.sh
==> script messages <==
<None>
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/exceptions.py", line 819, in __call__
return func(*args, **kwargs)
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/cli/main.py", line 78, in _main
exit_code = do_call(args, p)
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/cli/conda_argparse.py", line 77, in do_call
exit_code = getattr(module, func_name)(args, parser)
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/cli/main_install.py", line 11, in execute
install(args, parser, 'install')
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/cli/install.py", line 253, in install
handle_txn(unlink_link_transaction, prefix, args, newenv)
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/cli/install.py", line 282, in handle_txn
unlink_link_transaction.execute()
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/core/link.py", line 228, in execute
self._execute(tuple(concat(interleave(itervalues(self.prefix_action_groups)))))
File "/home/sasha/miniconda3/lib/python3.7/site-packages/conda/core/link.py", line 526, in _execute
rollback_excs,
conda.CondaMultiError: post-link script failed for package conda-forge::ipywebrtc-0.4.0-py36_1
running your command again with `-v` will provide additional information
location of failed script: /home/sasha/miniconda3/envs/widgets-tutorial/bin/.ipywebrtc-post-link.sh
==> script messages <==
<None>
This seems like an issue with the ipywebrtc conda-forge package. @maartenbreddels input?
Sorry I didn't see this message before. What you could do, is skip ipywebrtc from conda, and install that separately using pip. If you are going to the tutorials, I might be able to debug this.
It would be nice to fix the conda forge package as well though :)
Hi @akielbowicz -- I think the problem is with the version of ipywidgets you were using (the error was generated when Video was unrecognized during an ipywidgets import).
Could you please try again but with ipywidgets=7.4?
You may need to erase the conda environment you started to create with conda remove -n widgets-tutorial before trying to create it again.