spyder-ide / spyder-notebook

Jupyter notebook integration with Spyder
Other
523 stars 129 forks source link

Opening preferences causes crash in Spyder 6 #470

Closed jayicastor closed 2 weeks ago

jayicastor commented 2 weeks ago

Description

What steps will reproduce the problem?

installing Spyder, Notebook, and Terminal, then opening preferences

Traceback

Traceback (most recent call last):
  File "C:\Users\s493v894\anaconda3\envs\py310\lib\site-packages\spyder\plugins\preferences\plugin.py", line 288, in open_dialog
    container.create_dialog(
  File "C:\Users\s493v894\anaconda3\envs\py310\lib\site-packages\spyder\plugins\preferences\widgets\container.py", line 62, in create_dialog
    page.initialize()
  File "C:\Users\s493v894\anaconda3\envs\py310\lib\site-packages\spyder\widgets\config.py", line 127, in initialize
    self.setup_page()
  File "C:\Users\s493v894\anaconda3\envs\py310\lib\site-packages\spyder\api\plugin_registration\_confpage.py", line 83, in setup_page
    description=PluginClass.get_description(),
TypeError: NotebookPlugin.get_description() missing 1 required positional argument: 'self'

Versions

Dependencies

# Mandatory:
aiohttp >=3.9.3                      :  3.10.5 (OK)
asyncssh >=2.14.0,<3.0.0             :  2.17.0 (OK)
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.6.0 (OK)
diff_match_patch >=20181111          :  20200713 (OK)
github >=2.3.0                       :  2.4.0 (OK)
importlib_metadata >=4.6.0           :  7.0.1 (OK)
intervaltree >=3.0.2                 :  3.1.0 (OK)
IPython >=8.13.0,<9.0.0,!=8.17.1     :  8.25.0 (OK)
jedi >=0.17.2,<0.20.0                :  0.19.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.7.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 >=3.1,<4                      :  3.2.7 (OK)
pylint_venv >=3.0.2                  :  3.0.3 (OK)
pyls_spyder >=0.4.0                  :  0.4.0 (OK)
pylsp >=1.12.0,<1.13.0               :  1.12.0 (OK)
pylsp_black >=2.0.0,<3.0.0           :  2.0.0 (OK)
pyuca >=1.2                          :  1.2 (OK)
qdarkstyle >=3.2.0,<3.3.0            :  3.2.3 (OK)
qstylizer >=0.2.2                    :  0.2.2 (OK)
qtawesome >=1.3.1,<1.4.0             :  1.3.1 (OK)
qtconsole >=5.6.0,<5.7.0             :  5.6.0 (OK)
qtpy >=2.4.0                         :  2.4.1 (OK)
rtree >=0.9.7                        :  1.0.1 (OK)
setuptools >=49.6.0                  :  72.1.0 (OK)
sphinx >=0.6.6                       :  7.3.7 (OK)
spyder_kernels >=3.0.0,<3.1.0        :  3.0.0 (OK)
superqt >=0.6.2,<1.0.0               :  0.6.7 (OK)
textdistance >=4.2.0                 :  4.2.1 (OK)
three_merge >=0.1.1                  :  0.1.1 (OK)
watchdog >=0.10.3                    :  4.0.1 (OK)
yarl >=1.9.4                         :  1.9.7 (OK)
zmq >=24.0.0                         :  25.1.2 (OK)

# Optional:
cython >=0.21                        :  None (NOK)
matplotlib >=3.0.0                   :  None (NOK)
numpy >=1.7                          :  1.26.4 (OK)
pandas >=1.1.1                       :  1.5.3 (OK)
scipy >=0.17.0                       :  None (NOK)
sympy >=0.7.3                        :  None (NOK)

# Spyder plugins:
spyder_notebook.notebookplugin 0.6.0 :  0.6.0 (OK)

Environment

Environment ``` # packages in environment at C:\Users\s493v894\anaconda3\envs\py310: # # Name Version Build Channel aiohappyeyeballs 2.4.0 pyhd8ed1ab_0 conda-forge aiohttp 3.10.5 py310ha8f682b_0 conda-forge aiosignal 1.3.1 pyhd8ed1ab_0 conda-forge alabaster 0.7.16 py310haa95532_0 anaconda_prompt 1.0.0 haa95532_1 annotated-types 0.6.0 py310haa95532_0 anyio 4.2.0 py310haa95532_0 argon2-cffi 21.3.0 pyhd3eb1b0_0 argon2-cffi-bindings 21.2.0 py310h2bbff1b_0 arrow 1.2.3 py310haa95532_1 arrow-cpp 16.1.0 h7cd61ee_0 asn1crypto 1.5.1 py310haa95532_0 astroid 3.2.4 py310h5588dad_0 conda-forge asttokens 2.0.5 pyhd3eb1b0_0 async-lru 2.0.4 py310haa95532_0 async-timeout 4.0.3 pyhd8ed1ab_0 conda-forge asyncssh 2.17.0 pyhd8ed1ab_0 conda-forge atomicwrites 1.4.0 py_0 atpublic 4.0 py310haa95532_0 sfe1ed40 attrs 23.1.0 py310haa95532_0 autopep8 2.0.4 pyhd3eb1b0_0 autovizwidget 0.21.0 py310haa95532_0 aws-c-auth 0.6.19 h2bbff1b_0 aws-c-cal 0.5.20 h2bbff1b_0 aws-c-common 0.8.5 h2bbff1b_0 aws-c-compression 0.2.16 h2bbff1b_0 aws-c-event-stream 0.2.15 hd77b12b_0 aws-c-http 0.6.25 h2bbff1b_0 aws-c-io 0.13.10 h2bbff1b_0 aws-c-mqtt 0.7.13 h2bbff1b_0 aws-c-s3 0.1.51 h2bbff1b_0 aws-c-sdkutils 0.1.6 h2bbff1b_0 aws-checksums 0.1.13 h2bbff1b_0 aws-crt-cpp 0.18.16 hd77b12b_0 aws-sdk-cpp 1.10.55 hd77b12b_0 babel 2.11.0 py310haa95532_0 bcrypt 3.2.0 py310h2bbff1b_1 beautifulsoup4 4.12.3 py310haa95532_0 binaryornot 0.4.4 pyhd3eb1b0_1 black 24.4.2 py310haa95532_0 blas 1.0 mkl bleach 4.1.0 pyhd3eb1b0_0 boost-cpp 1.82.0 h59b6b97_2 bottleneck 1.3.7 py310h9128911_0 brotli-python 1.0.9 py310hd77b12b_8 bzip2 1.0.8 h2bbff1b_6 c-ares 1.19.1 h2bbff1b_0 ca-certificates 2024.8.30 h56e8100_0 conda-forge certifi 2024.8.30 pyhd8ed1ab_0 conda-forge cffi 1.16.0 py310h2bbff1b_1 chardet 4.0.0 py310haa95532_1003 charset-normalizer 3.3.2 pyhd3eb1b0_0 click 8.1.7 py310haa95532_0 cloudpickle 2.2.1 py310haa95532_0 colorama 0.4.6 py310haa95532_0 coloredlogs 15.0.1 pyhd8ed1ab_3 conda-forge comm 0.2.1 py310haa95532_0 cookiecutter 2.6.0 py310haa95532_0 cryptography 42.0.5 py310h89fc84f_1 debugpy 1.6.7 py310hd77b12b_0 decorator 5.1.1 pyhd3eb1b0_0 defusedxml 0.7.1 pyhd3eb1b0_0 deprecated 1.2.14 pyh1a96a4e_0 conda-forge diff-match-patch 20200713 pyhd3eb1b0_0 dill 0.3.8 py310haa95532_0 docstring-to-markdown 0.11 py310haa95532_0 docutils 0.18.1 py310haa95532_3 exceptiongroup 1.2.0 py310haa95532_0 executing 0.8.3 pyhd3eb1b0_0 filelock 3.13.1 py310haa95532_0 flake8 7.1.1 pyhd8ed1ab_0 conda-forge frozenlist 1.4.1 py310h8d17308_0 conda-forge fzf 0.55.0 hd02998f_0 conda-forge gflags 2.2.2 hd77b12b_1 glog 0.5.0 hd77b12b_1 h11 0.14.0 pyhd8ed1ab_0 conda-forge h2 4.1.0 pyhd8ed1ab_0 conda-forge hdijupyterutils 0.21.0 py310haa95532_0 hpack 4.0.0 pyh9f0ad1d_0 conda-forge httpcore 1.0.5 pyhd8ed1ab_0 conda-forge httpx 0.27.2 pyhd8ed1ab_0 conda-forge humanfriendly 10.0 py310h5588dad_5 conda-forge hyperframe 6.0.1 pyhd8ed1ab_0 conda-forge icu 73.1 h6c2663c_0 idna 3.7 py310haa95532_0 imagesize 1.4.1 py310haa95532_0 importlib-metadata 7.0.1 py310haa95532_0 importlib_metadata 7.0.1 hd3eb1b0_0 importlib_resources 6.4.4 pyhd8ed1ab_0 conda-forge inflection 0.5.1 py310haa95532_0 intel-openmp 2023.1.0 h59b6b97_46320 intervaltree 3.1.0 pyhd3eb1b0_0 ipykernel 6.29.5 pyh4bbf305_0 conda-forge ipython 8.25.0 py310haa95532_0 ipywidgets 8.1.2 py310haa95532_0 isort 5.13.2 py310haa95532_0 jaraco.classes 3.2.1 pyhd3eb1b0_0 jedi 0.19.1 py310haa95532_0 jellyfish 1.0.1 py310h36a85e1_0 jinja2 3.1.4 py310haa95532_0 jpeg 9e h827c3e9_3 json5 0.9.6 pyhd3eb1b0_0 jsonschema 4.19.2 py310haa95532_0 jsonschema-specifications 2023.7.1 py310haa95532_0 jupyter 1.0.0 py310haa95532_9 jupyter-lsp 2.2.0 py310haa95532_0 jupyter_client 8.6.0 py310haa95532_0 jupyter_console 6.6.3 py310haa95532_0 jupyter_core 5.7.2 py310haa95532_0 jupyter_events 0.10.0 py310haa95532_0 jupyter_server 2.14.1 py310haa95532_0 jupyter_server_terminals 0.4.4 py310haa95532_1 jupyterlab 4.2.5 pyhd8ed1ab_0 conda-forge jupyterlab_pygments 0.1.2 py_0 jupyterlab_server 2.27.3 pyhd8ed1ab_0 conda-forge jupyterlab_widgets 3.0.10 py310haa95532_0 keyring 24.3.1 py310haa95532_0 krb5 1.20.1 h5b6d351_0 lazy-object-proxy 1.10.0 py310h2bbff1b_0 libabseil 20240116.2 cxx17_h5da7b33_0 libboost 1.82.0 h3399ecb_2 libbrotlicommon 1.0.9 h2bbff1b_8 libbrotlidec 1.0.9 h2bbff1b_8 libbrotlienc 1.0.9 h2bbff1b_8 libclang 14.0.6 default_hb5a9fac_1 libclang13 14.0.6 default_h8e68704_1 libcurl 8.9.1 h0416ee5_0 libevent 2.1.12 h56d1f94_1 libffi 3.4.4 hd77b12b_1 libgrpc 1.62.2 hf25190f_0 libpng 1.6.39 h8cc25b3_0 libpq 12.17 h906ac69_0 libprotobuf 4.25.3 hf2fb9eb_0 libsodium 1.0.18 h62dcd97_0 libspatialindex 1.9.3 h6c2663c_0 libssh2 1.11.0 h291bd65_0 libthrift 0.15.0 h4364b78_2 lz4-c 1.9.4 h2bbff1b_1 markdown-it-py 2.2.0 py310haa95532_1 markupsafe 2.1.3 py310h2bbff1b_0 matplotlib-inline 0.1.6 py310haa95532_0 mccabe 0.7.0 pyhd3eb1b0_0 mdurl 0.1.0 py310haa95532_0 mistune 2.0.4 py310haa95532_0 mkl 2023.1.0 h6b88ed4_46358 mkl-service 2.4.0 py310h2bbff1b_1 mkl_fft 1.3.8 py310h2bbff1b_0 mkl_random 1.2.4 py310h59b6b97_0 more-itertools 10.1.0 py310haa95532_0 multidict 6.0.5 py310h8d17308_0 conda-forge mypy_extensions 1.0.0 py310haa95532_0 nbclient 0.8.0 py310haa95532_0 nbconvert 7.10.0 py310haa95532_0 nbformat 5.9.2 py310haa95532_0 nest-asyncio 1.6.0 py310haa95532_0 notebook 7.2.2 pyhd8ed1ab_0 conda-forge notebook-shim 0.2.3 py310haa95532_0 numexpr 2.8.7 py310h2cd9be0_0 numpy 1.26.4 py310h055cbcc_0 numpy-base 1.26.4 py310h65a83cf_0 numpydoc 1.7.0 py310haa95532_0 openssl 3.3.1 h2466b09_3 conda-forge orc 2.0.1 hd8d391b_0 overrides 7.4.0 py310haa95532_0 packaging 24.1 py310haa95532_0 pandas 1.5.3 py310h4ed8f06_0 pandocfilters 1.5.0 pyhd3eb1b0_0 paramiko 2.8.1 pyhd3eb1b0_0 parso 0.8.3 pyhd3eb1b0_0 pathspec 0.10.3 py310haa95532_0 pexpect 4.8.0 pyhd3eb1b0_3 pickleshare 0.7.5 pyhd3eb1b0_1003 pip 24.2 py310haa95532_0 platformdirs 3.10.0 py310haa95532_0 plotly 5.22.0 py310h9909e9c_0 pluggy 1.0.0 py310haa95532_1 ply 3.11 py310haa95532_0 prometheus_client 0.14.1 py310haa95532_0 prompt-toolkit 3.0.43 py310haa95532_0 prompt_toolkit 3.0.43 hd3eb1b0_0 psutil 5.9.0 py310h2bbff1b_0 ptyprocess 0.7.0 pyhd3eb1b0_2 pure_eval 0.2.2 pyhd3eb1b0_0 py4j 0.10.9.7 py310haa95532_0 pyarrow 16.1.0 py310hc64d2fc_0 pycodestyle 2.12.1 pyhd8ed1ab_0 conda-forge pyconify 0.1.6 pyhd8ed1ab_0 conda-forge pycparser 2.21 pyhd3eb1b0_0 pydantic 2.8.2 py310haa95532_0 pydantic-core 2.20.1 py310hefb1915_0 pydocstyle 6.3.0 py310haa95532_0 pyflakes 3.2.0 py310haa95532_0 pygithub 2.4.0 pyhd8ed1ab_0 conda-forge pygments 2.15.1 py310haa95532_1 pyjwt 2.8.0 py310haa95532_0 pylint 3.2.7 pyhd8ed1ab_0 conda-forge pylint-venv 3.0.3 py310haa95532_0 pyls-spyder 0.4.0 pyhd3eb1b0_0 pynacl 1.5.0 py310h8cc25b3_0 pyopenssl 24.2.1 py310haa95532_0 pyqt 5.15.10 py310hd77b12b_0 pyqt5-sip 12.13.0 py310h2bbff1b_0 pyqtwebengine 5.15.10 py310hd77b12b_0 pyreadline3 3.4.1 py310h5588dad_4 conda-forge pysocks 1.7.1 py310haa95532_0 pyspark 3.4.1 py310haa95532_0 pyspnego 0.9.2 py310h2bbff1b_1 python 3.10.14 he1021f5_1 python-dateutil 2.9.0post0 py310haa95532_2 python-fastjsonschema 2.16.2 py310haa95532_0 python-gssapi 1.8.2 py310ha50d041_2 conda-forge python-json-logger 2.0.7 py310haa95532_0 python-lsp-black 2.0.0 py310haa95532_0 python-lsp-jsonrpc 1.1.2 pyhd3eb1b0_0 python-lsp-server 1.12.0 pyhd8ed1ab_0 conda-forge python-lsp-server-base 1.12.0 pyhd8ed1ab_0 conda-forge python-slugify 5.0.2 pyhd3eb1b0_0 python-tzdata 2023.3 pyhd3eb1b0_0 python_abi 3.10 2_cp310 conda-forge pytoolconfig 1.2.6 py310haa95532_0 pytz 2024.1 py310haa95532_0 pyuca 1.2 py_1 conda-forge pywin32 305 py310h2bbff1b_0 pywin32-ctypes 0.2.2 py310haa95532_0 pywinpty 2.0.10 py310h5da7b33_0 pyyaml 6.0.1 py310h2bbff1b_0 pyzmq 25.1.2 py310hd77b12b_0 qdarkstyle 3.2.3 pyhd3eb1b0_0 qstylizer 0.2.2 pypi_0 pypi qt-main 5.15.2 h19c9488_10 qt-webengine 5.15.9 h5bd16bc_7 qtawesome 1.3.1 pyh9208f05_0 conda-forge qtconsole 5.6.0 pyhd8ed1ab_0 conda-forge qtconsole-base 5.6.0 pyha770c72_0 conda-forge qtpy 2.4.1 py310haa95532_0 re2 2022.04.01 hd77b12b_0 referencing 0.30.2 py310haa95532_0 requests 2.32.3 py310haa95532_0 requests-kerberos 0.14.0 pyhd3eb1b0_0 rfc3339-validator 0.1.4 py310haa95532_0 rfc3986-validator 0.1.1 py310haa95532_0 rich 13.7.1 py310haa95532_0 rope 1.12.0 py310haa95532_0 rpds-py 0.10.6 py310h062c2fa_0 rtree 1.0.1 py310h2eaa2aa_0 ruamel.yaml 0.17.21 py310h2bbff1b_0 ruamel.yaml.clib 0.2.6 py310h2bbff1b_1 send2trash 1.8.2 py310haa95532_0 setuptools 72.1.0 py310haa95532_0 sip 6.7.12 py310hd77b12b_0 six 1.16.0 pyhd3eb1b0_1 snappy 1.2.1 hcdb6601_0 sniffio 1.3.0 py310haa95532_0 snowballstemmer 2.2.0 pyhd3eb1b0_0 snowflake-connector-python 3.12.1 py310hb4db72f_0 conda-forge snowflake-snowpark-python 1.21.0 py310haa95532_100 snowflake.core 0.12.1 py310haa95532_100 sfe1ed40 sortedcontainers 2.4.0 pyhd3eb1b0_0 soupsieve 2.5 py310haa95532_0 spark 0.2.1 pypi_0 pypi sparkmagic 0.21.0 py310haa95532_0 sphinx 7.3.7 py310h827c3e9_0 sphinxcontrib-applehelp 1.0.2 pyhd3eb1b0_0 sphinxcontrib-devhelp 1.0.2 pyhd3eb1b0_0 sphinxcontrib-htmlhelp 2.0.0 pyhd3eb1b0_0 sphinxcontrib-jsmath 1.0.1 pyhd3eb1b0_0 sphinxcontrib-qthelp 1.0.3 pyhd3eb1b0_0 sphinxcontrib-serializinghtml 1.1.10 py310haa95532_0 spyder 6.0.0 py310h5588dad_0 conda-forge spyder-kernels 3.0.0 win_pyh7428d3b_0 conda-forge spyder-notebook 0.6.0 pyhff2d567_0 conda-forge spyder-terminal 1.2.2 pyhd8ed1ab_1 conda-forge sqlite 3.45.3 h2bbff1b_0 stack_data 0.2.0 pyhd3eb1b0_0 superqt 0.6.7 pyh9208f05_0 conda-forge tabulate 0.9.0 py310haa95532_0 tbb 2021.8.0 h59b6b97_0 tenacity 8.2.3 py310haa95532_0 terminado 0.17.1 py310haa95532_0 text-unidecode 1.3 pyhd3eb1b0_0 textdistance 4.2.1 pyhd3eb1b0_0 three-merge 0.1.1 pyhd3eb1b0_0 tinycss2 1.2.1 py310haa95532_0 tk 8.6.14 h0416ee5_0 tomli 2.0.1 py310haa95532_0 tomlkit 0.11.1 py310haa95532_0 tornado 6.4.1 py310h827c3e9_0 traitlets 5.14.3 py310haa95532_0 typing-extensions 4.11.0 py310haa95532_0 typing_extensions 4.11.0 py310haa95532_0 tzdata 2024a h04d1e81_0 ucrt 10.0.20348.0 haa95532_0 ujson 5.10.0 py310h5da7b33_0 unidecode 1.3.8 py310haa95532_0 urllib3 2.2.2 py310haa95532_0 utf8proc 2.6.1 h2bbff1b_1 vc 14.40 h2eaa2aa_0 vc14_runtime 14.40.33810 hcc2c482_20 conda-forge vs2015_runtime 14.40.33810 h3bf8584_20 conda-forge watchdog 4.0.1 py310haa95532_0 wcwidth 0.2.5 pyhd3eb1b0_0 webencodings 0.5.1 py310haa95532_1 websocket-client 1.8.0 py310haa95532_0 whatthepatch 1.0.2 py310haa95532_0 wheel 0.43.0 py310haa95532_0 widgetsnbextension 4.0.10 py310haa95532_0 win_inet_pton 1.1.0 py310haa95532_0 winpty 0.4.3 4 wrapt 1.14.1 py310h2bbff1b_0 xz 5.4.6 h8cc25b3_1 yaml 0.2.5 he774522_0 yapf 0.40.2 py310haa95532_0 yarl 1.9.7 py310ha8f682b_0 conda-forge zeromq 4.3.5 hd77b12b_0 zipp 3.17.0 py310haa95532_0 zlib 1.2.13 h8cc25b3_1 zstd 1.5.5 hd43e919_2 ```
dalthviz commented 2 weeks ago

Hi @jayicastor thank you for the report! I think this is related with the spyder-notebook plugin. Will move this issue to the appropiate repo (spyder-notebook) but as an initial attempt to be able to see the preferences dialog I would try to uninstall spyder-notebook.

Let us know if the info above helps!

ccordoba12 commented 2 weeks ago

Hey @jayicastor, you said:

installing Spyder, Notebook, and Terminal

Spyder-terminal is not compatible with Spyder 6. It will be at the beginning of next year, but not now. So, you need to remove it or you'll get another crash due to it.

However, this bug with Spyder-notebook is easily solvable. A new version will be released soon with the fix.

ccordoba12 commented 2 weeks ago

@jitseniesen, I'll take a look at this one tomorrow.

jitseniesen commented 2 weeks ago

@ccordoba12 Thanks but it was my mistake and I know how to fix it so I will take care of it right away.

jitseniesen commented 2 weeks ago

@jayicastor This is fixed in version 0.6.1 of the spyder-notebook plugin which we released just now. Thanks for the bug report. I should have caught this in testing.

ccordoba12 commented 2 weeks ago

@ccordoba12 Thanks but it was my mistake and I know how to fix it so I will take care of it right away.

Thanks! I wanted to submit a PR yesterday but I was too tired to do it.