-
Notifications
You must be signed in to change notification settings - Fork 13
Open
Labels
Description
UPDATED:
When you use mamba to create a fresh install of jupyter-forward, it installs the incorrect version of openssl (version 3.0.2) which is incompatible with cryptography, a dependency of paramiko. Installation proceeds, but when you try to run jupyter-forward, you get the following error:
Traceback (most recent call last):
File "/Users/kpaul/Software/miniconda3/envs/t/bin/jupyter-forward", line 6, in <module>
from jupyter_forward.cli import main
File "/Users/kpaul/Software/miniconda3/envs/t/lib/python3.10/site-packages/jupyter_forward/__init__.py", line 6, in <module>
from .core import RemoteRunner
File "/Users/kpaul/Software/miniconda3/envs/t/lib/python3.10/site-packages/jupyter_forward/core.py", line 12, in <module>
import paramiko
File "/Users/kpaul/Software/miniconda3/envs/t/lib/python3.10/site-packages/paramiko/__init__.py", line 22, in <module>
from paramiko.transport import SecurityOptions, Transport
File "/Users/kpaul/Software/miniconda3/envs/t/lib/python3.10/site-packages/paramiko/transport.py", line 132, in <module>
class Transport(threading.Thread, ClosingContextManager):
File "/Users/kpaul/Software/miniconda3/envs/t/lib/python3.10/site-packages/paramiko/transport.py", line 207, in Transport
if KexCurve25519.is_available():
File "/Users/kpaul/Software/miniconda3/envs/t/lib/python3.10/site-packages/paramiko/kex_curve25519.py", line 30, in is_available
X25519PrivateKey.generate()
File "/Users/kpaul/Software/miniconda3/envs/t/lib/python3.10/site-packages/cryptography/hazmat/primitives/asymmetric/x25519.py", line 39, in generate
from cryptography.hazmat.backends.openssl.backend import backend
File "/Users/kpaul/Software/miniconda3/envs/t/lib/python3.10/site-packages/cryptography/hazmat/backends/openssl/__init__.py", line 6, in <module>
from cryptography.hazmat.backends.openssl.backend import backend
File "/Users/kpaul/Software/miniconda3/envs/t/lib/python3.10/site-packages/cryptography/hazmat/backends/openssl/backend.py", line 64, in <module>
from cryptography.hazmat.bindings.openssl import binding
File "/Users/kpaul/Software/miniconda3/envs/t/lib/python3.10/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 14, in <module>
from cryptography.hazmat.bindings._openssl import ffi, lib
ImportError: dlopen(/Users/kpaul/Software/miniconda3/envs/t/lib/python3.10/site-packages/cryptography/hazmat/bindings/_openssl.abi3.so, 2): Library not loaded: @rpath/libssl.1.1.dylib
Referenced from: /Users/kpaul/Software/miniconda3/envs/t/lib/python3.10/site-packages/cryptography/hazmat/bindings/_openssl.abi3.so
Reason: image not foundFurther investigation shows that when you install jupyter-forward with conda, it correctly installs openssl version 1.1.1n, which is compatible with cryptography. Similarly, if you install jupyter-forward with pip, everything works fine (no openssl is installed with pip, as that is a conda package).
This definitely appears to be a bug in mamba, and users of jupyter-forward should be cautious!