spyder-ide / spyder

Official repository for Spyder - The Scientific Python Development Environment
https://www.spyder-ide.org
MIT License
8.35k stars 1.62k forks source link

Can't connect to certain remote kernel #22616

Closed SchroedingersLion closed 1 month ago

SchroedingersLion commented 1 month ago

Problem Description

Greetings, I cannot connect to kernel started on a remote server, accessible via SSH and VPN. On another server (also accessible via SSH and VPN) everything works fine.

When trying to connect to the server via the connect to existing kernel button, specifying the path to the kernel file on my local machine and entering the ssh data (port remains default 22), I get the following error message:

Paste Traceback/Error Below (if applicable)

Exception in comm_msg for 007cde0a7f2f11efb07f2c3358735082
Traceback (most recent call last):
  File "/home/user/miniconda3/envs/PYTORCH/lib/python3.12/site-packages/comm/base_comm.py", line 296, in comm_msg
    comm.handle_msg(msg)
  File "/home/user/miniconda3/envs/PYTORCH/lib/python3.12/site-packages/spyder_kernels/comms/frontendcomm.py", line 206, in handle_msg
    comm._msg_callback(msg)
  File "/home/user/miniconda3/envs/PYTORCH/lib/python3.12/site-packages/spyder_kernels/comms/commbase.py", line 339, in _comm_message
    self._message_handlers[spyder_msg_type](msg_dict, buffers)
  File "/home/user/miniconda3/envs/PYTORCH/lib/python3.12/site-packages/spyder_kernels/comms/commbase.py", line 487, in _handle_remote_call_reply
    return_value = content['call_return_value']
                   ~~~~~~~^^^^^^^^^^^^^^^^^^^^^
KeyError: 'call_return_value'

The error message keeps getting printed iteratively. I updated via conda update --all, to no avail.

Versions

Dependencies

# Mandatory:
atomicwrites >=1.2.0                             :  1.4.0 (OK)
chardet >=2.0.0                                  :  4.0.0 (OK)
cloudpickle >=0.5.0                              :  2.2.1 (OK)
cookiecutter >=1.6.0                             :  2.5.0 (OK)
diff_match_patch >=20181111                      :  20200713 (OK)
intervaltree >=3.0.2                             :  3.1.0 (OK)
IPython >=7.31.1,<9.0.0,!=8.8.0,!=8.9.0,!=8.10.0 :  8.20.0 (OK)
jedi >=0.17.2,<0.19.0                            :  0.18.1 (OK)
jellyfish >=0.7                                  :  1.0.1 (OK)
jsonschema >=3.2.0                               :  4.19.2 (OK)
keyring >=17.0.0                                 :  24.3.1 (OK)
nbconvert >=4.0                                  :  7.10.0 (OK)
numpydoc >=0.6.0                                 :  1.5.0 (OK)
parso >=0.7.0,<0.9.0                             :  0.8.3 (OK)
pexpect >=4.4.0                                  :  4.8.0 (OK)
pickleshare >=0.4                                :  0.7.5 (OK)
psutil >=5.3                                     :  5.9.0 (OK)
pygments >=2.0                                   :  2.15.1 (OK)
pylint >=2.5.0,<3.0                              :  2.16.2 (OK)
pylint_venv >=2.1.1                              :  3.0.3 (OK)
pyls_spyder >=0.4.0                              :  0.4.0 (OK)
pylsp >=1.7.2,<1.8.0                             :  1.7.2 (OK)
pylsp_black >=1.2.0                              :  2.0.0 (OK)
qdarkstyle >=3.0.2,<3.2.0                        :  3.0.2 (OK)
qstylizer >=0.2.2                                :  0.2.2 (OK)
qtawesome >=1.2.1                                :  1.2.2 (OK)
qtconsole >=5.4.2,<5.5.0                         :  5.4.2 (OK)
qtpy >=2.1.0                                     :  2.4.1 (OK)
rtree >=0.9.7                                    :  1.0.1 (OK)
setuptools >=49.6.0                              :  68.2.2 (OK)
sphinx >=0.6.6                                   :  5.0.2 (OK)
spyder_kernels >=2.4.3,<2.5.0                    :  2.4.4 (OK)
textdistance >=4.2.0                             :  4.2.1 (OK)
three_merge >=0.1.1                              :  0.1.1 (OK)
watchdog >=0.10.3                                :  2.1.6 (OK)
xdg >=0.26                                       :  0.27 (OK)
zmq >=22.1.0                                     :  25.1.2 (OK)

# Optional:
cython >=0.21                                    :  None (NOK)
matplotlib >=3.0.0                               :  3.8.3 (OK)
numpy >=1.7                                      :  1.26.4 (OK)
pandas >=1.1.1                                   :  2.2.2 (OK)
scipy >=0.17.0                                   :  1.12.0 (OK)
sympy >=0.7.3                                    :  1.12 (OK)
ccordoba12 commented 1 month ago

Hey @SchroedingersLion, thanks for reporting. What's the version of spyder-kernels you have installed in your remote machine?

SchroedingersLion commented 1 month ago

Hey @SchroedingersLion, thanks for reporting. What's the version of spyder-kernels you have installed in your remote machine?

I just re-installed Spyder on the remote machine. It works now as it should. I did not consider that the remote version was the problem.

On another note, is there a way to change the default folder that is opened when first clicking on connect to an existing kernel and then browse?

ccordoba12 commented 1 month ago

I just re-installed Spyder on the remote machine. It works now as it should. I did not consider that the remote version was the problem.

Great! Thanks for letting us know about it.

On another note, is there a way to change the default folder that is opened when first clicking on connect to an existing kernel and then browse?

That's not possible, sorry. But we're reworking our remote support in Spyder 6 (see this), so could you open a new issue about that? Then we'll take care of your request in our 6.1 version.

ccordoba12 commented 1 month ago

I'm going to close this issue because I think it's solved.