Closed dalthviz closed 2 months ago
@dalthviz, could you check if the splash screen SVG is rendered correctly in other applications? For instance Inkscape?
Checking over Inkscape I see the following:
Seems like the image being shown there is labeled as image1
However from the console message seems like there is another image (image0
). Checking the file over, I see there are indeed two images defined (image0
and image1
in base 64):
But the only one that is being referenced is image0
but with a #
(so as #image0
). Maybe that is causing problems?
It could be, yes. Could you change those references and check again?
Did some changes to the .svg
file but that didn't help. Also, rechecked again the output being shown over the cmd when launching Spyder and seems like the are some .dll
not being found?:
Failed to load opengl32sw.dll (No se puede encontrar el módulo especificado.)
Failed to load and resolve WGL/OpenGL functions
Software OpenGL failed. Falling back to system OpenGL.
Could not create image from "data:image/jpeg;base64,/9j/4ReNRXhpZgAA
And there are also other messages after the one from the failed image load (although those seem more like deprecation messages):
C:\Users\dalth\AppData\Local\spyder-6\envs\spyder-runtime\Lib\site-packages\asyncssh\crypto\cipher.py:29: CryptographyDeprecationWarning: ARC4 has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.ARC4 and will be removed from this module in 48.0.0.
from cryptography.hazmat.primitives.ciphers.algorithms import AES, ARC4
C:\Users\dalth\AppData\Local\spyder-6\envs\spyder-runtime\Lib\site-packages\asyncssh\crypto\cipher.py:30: CryptographyDeprecationWarning: TripleDES has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and will be removed from this module in 48.0.0.
from cryptography.hazmat.primitives.ciphers.algorithms import TripleDES
🤔
Did some changes to the .svg file but that didn't help.
Ok, could you try older versions of the installer to see if the error is present in them? I mean, beta3, beta2, etc? But before uninstalling one version and reinstalling another, please run conda list
in the runtime env and save the output to compare between versions.
Also, rechecked again the output being shown over the cmd when launching Spyder and seems like the are some .dll not being found?:
This is not good either (and it could cause this issue too). Please also check this with older versions.
And there are also other messages after the one from the failed image load (although those seem more like deprecation messages):
Yeah, that's an issue between asyncssh and cryptography and I don't think we can do anything about it.
Checking seems like with Spyder 6b2 the splash image is showing, Spyder 6b3 and 6rc1 have the missing image issue. Also, with Spyder 6b2 the only output that appears when launching is related with OpenGL:
Failed to load opengl32sw.dll (No se puede encontrar el módulo especificado.)
Failed to load and resolve WGL/OpenGL functions
Software OpenGL failed. Falling back to system OpenGL.
Checking seems like with Spyder 6b2 the splash image is showing
Thanks for checking @dalthviz!
Also, with Spyder 6b2 the only output that appears when launching is related with OpenGL
I still don't understand why that's happening, but we can deal with that later because it doesn't seem as bad as the splash screen bug.
I have two theories about this: it can be a problem with more recent versions of Qt or Matplotlib:
Beta2 version | Beta3 version | |
---|---|---|
qt-main | 5.15.8 h9e85ed6_20 | 5.15.8 h06adc49_23 |
matplotlib | 3.8.4 py311h1ea47a8_2 | 3.9.1 py311h1ea47a8_0 |
I mentioned Matplotlib because in PR https://github.com/conda-forge/matplotlib-feedstock/pull/393 they switched the default backend from PyQt5 to PySide6. And that could be interfering with Spyder.
@mrclary, now we need your help to generate Windows installers with the beta2 versions of qt-main and/or Matplotlib and check if the issue is solved with either of them.
Sorry to put you through this so close to the end, but this is an ugly bug with our new installers.
We certainly need to solve this! However, can you check just installing b2 and b3 (or rc1) into their own environments? For example:
conda create -n b2 conda-forge/label/spyder_dev::spyder=6.0.0b2 matplotlib
We can then compare the versions of qt-main
and matplotlib
and update the environment with a different qt-main
and/or matplotlib
and see if the problem arises or goes away.
If we determine that either of these packages are producing the problem, it will be simple enough to pin their versions in the installer.
So it's not . I checked b2, b3, rc1, and rc1 using the lock file.qt-main
or matplotlib
conda create -n b2 python=3.11 spyder=6.0.0b2 matplotlib
conda create -n b3 python=3.11 spyder=6.0.0b3 matplotlib
conda create -n rc1 python=3.11 spyder=6.0.0rc1 matplotlib
conda create -n rc1-lock --file=conda-runtime-win-64.lock
Spyder | qt-main | matplotlib | splash |
---|---|---|---|
b2 | 5.15.8 h06adc49_22 | 3.9.2 py311h1ea47a8_0 | |
b3 | 5.15.8 h06adc49_22 | 3.9.2 py311h1ea47a8_0 | ❌ |
rc1 | 5.15.8 h06adc49_22 | 3.9.2 py311h1ea47a8_0 | ❌ |
rc1-lock | 5.15.8 h06adc49_22 | 3.9.1 py311h1ea47a8_2 | ❌ |
So, the good news is that this has nothing to with the installer; constructor
is not messing up the image. Since Also, since rc1-lock includes other packages in the solve (qt-main
and matplotlib
are identical for b2, b3, and rc1, these packages cannot be the culprit.scipy
, ...) and rc1 does not, these additional packages are not the cause either.
Do you guys have any other ideas? Did something else change?
I don't see anything that stands out in the feedstock between b2 and b3, except that we dropped paramiko
, but I installed that into rc1 just to check and that did not have any affect (not that I expected it to).
Thanks for the in-depth testing @mrclary! Given your results, I'd say the problem is not related to the env packages but to Spyder itself.
So, could you run git bisect
between beta2 and beta3 to detect where this bug was introduced? Thanks!
So my previous post is incorrect. I mistakenly thought that b2 did not have splash screen issues, but it does. I don't know how I missed it. 😫
The issue is definitely the presence of pyside6
(or its dependent qt6-main
), installed as a dependency of matplotlib
3.9.2. We could pin matplotlib
to 3.9.1. I see that pyside6
is an optional dependency, so I don't know why it is installed by default. Is there a way to exclude pyside6
when installing matplotlib
?
So the updated observation: | Spyder | pyside6 | matplotlib | splash |
---|---|---|---|---|
b2 | 6.7.2 py39h0285922_2 | 3.9.2 py311h1ea47a8_0 | ❌ | |
b2-lock | NA | 3.8.4 py311h1ea47a8_2 | ✔️ |
pyside6
dependency was added to matplotlib
in 3.9.2.
The issue is definitely the presence of pyside6 (or its dependent qt6-main), installed as a dependency of matplotlib 3.9.2.
Ok, that's really good to know! And actually the new dependency on PySide 6 was introduced in Matplotlib 3.9.1 build 2, according to the PR I referenced above.
Is there a way to exclude pyside6 when installing matplotlib?
Yes, there is! As you can see in the Conda-forge recipe, the matplotlib
package depends on matplotlib-base
plus pyside6
and tornado
.
So, you just need to add to our installers matplotlib-base
and tornado
and remove matplotlib
, and this will be solved. That will also have the benefit of removing all Qt6 dependencies, which just make the installers bigger.
No good. I tried creating an environment with just spyder 6.0.0b2, no matplotlib or pyside, and it also does not work. The environment made using the b2 lock file works, so I'll post those environments and maybe we can figure out which is the offending package.
``` conda create -n b2-lock --file=conda-win-64.lock conda list -n b2-lock # packages in environment at C:\Users\rclary\.conda\envs\b2-lock: # # Name Version Build Channel aiohttp 3.9.5 py311ha68e1ae_0 conda-forge aiosignal 1.3.1 pyhd8ed1ab_0 conda-forge alabaster 0.7.16 pyhd8ed1ab_0 conda-forge arrow 1.3.0 pyhd8ed1ab_0 conda-forge astroid 3.2.2 py311h1ea47a8_0 conda-forge asttokens 2.4.1 pyhd8ed1ab_0 conda-forge asyncssh 2.14.1 pyhd8ed1ab_0 conda-forge atomicwrites 1.4.1 pyhd8ed1ab_0 conda-forge attrs 23.2.0 pyh71513ae_0 conda-forge autopep8 2.0.4 pyhd8ed1ab_0 conda-forge babel 2.14.0 pyhd8ed1ab_0 conda-forge backports 1.0 pyhd8ed1ab_3 conda-forge backports.tarfile 1.0.0 pyhd8ed1ab_1 conda-forge bcrypt 4.1.3 py311h533ab2d_0 conda-forge beautifulsoup4 4.12.3 pyha770c72_0 conda-forge binaryornot 0.4.4 py_1 conda-forge black 24.4.2 py311h1ea47a8_0 conda-forge bleach 6.1.0 pyhd8ed1ab_0 conda-forge brotli 1.1.0 hcfcfb64_1 conda-forge brotli-bin 1.1.0 hcfcfb64_1 conda-forge brotli-python 1.1.0 py311h12c1d0e_1 conda-forge bzip2 1.0.8 hcfcfb64_5 conda-forge ca-certificates 2024.6.2 h56e8100_0 conda-forge certifi 2024.6.2 pyhd8ed1ab_0 conda-forge cffi 1.16.0 py311ha68e1ae_0 conda-forge chardet 5.2.0 py311h1ea47a8_1 conda-forge charset-normalizer 3.3.2 pyhd8ed1ab_0 conda-forge click 8.1.7 win_pyh7428d3b_0 conda-forge cloudpickle 3.0.0 pyhd8ed1ab_0 conda-forge colorama 0.4.6 pyhd8ed1ab_0 conda-forge comm 0.2.2 pyhd8ed1ab_0 conda-forge contourpy 1.2.1 py311h005e61a_0 conda-forge cookiecutter 2.6.0 pyhca7485f_0 conda-forge cryptography 42.0.8 py311hfd75b31_0 conda-forge cycler 0.12.1 pyhd8ed1ab_0 conda-forge cython 3.0.10 py311h12c1d0e_0 conda-forge debugpy 1.8.1 py311h12c1d0e_0 conda-forge decorator 5.1.1 pyhd8ed1ab_0 conda-forge defusedxml 0.7.1 pyhd8ed1ab_0 conda-forge deprecated 1.2.14 pyh1a96a4e_0 conda-forge diff-match-patch 20230430 pyhd8ed1ab_0 conda-forge dill 0.3.8 pyhd8ed1ab_0 conda-forge docstring-to-markdown 0.15 pyhd8ed1ab_0 conda-forge docutils 0.21.2 pyhd8ed1ab_0 conda-forge entrypoints 0.4 pyhd8ed1ab_0 conda-forge et_xmlfile 1.1.0 pyhd8ed1ab_0 conda-forge exceptiongroup 1.2.0 pyhd8ed1ab_2 conda-forge executing 2.0.1 pyhd8ed1ab_0 conda-forge flake8 7.0.0 pyhd8ed1ab_0 conda-forge fonttools 4.53.0 py311he736701_0 conda-forge freetype 2.12.1 hdaf720e_2 conda-forge frozenlist 1.4.1 py311ha68e1ae_0 conda-forge fzf 0.53.0 hd02998f_0 conda-forge gettext 0.22.5 h5728263_2 conda-forge gettext-tools 0.22.5 h7d00a51_2 conda-forge glib 2.80.2 h7025463_1 conda-forge glib-tools 2.80.2 h4394cf3_1 conda-forge gst-plugins-base 1.22.9 h001b923_1 conda-forge gstreamer 1.22.9 hb4038d2_1 conda-forge icu 73.2 h63175ca_0 conda-forge idna 3.7 pyhd8ed1ab_0 conda-forge imagesize 1.4.1 pyhd8ed1ab_0 conda-forge importlib-metadata 7.1.0 pyha770c72_0 conda-forge importlib_metadata 7.1.0 hd8ed1ab_0 conda-forge importlib_resources 6.4.0 pyhd8ed1ab_0 conda-forge inflection 0.5.1 pyh9f0ad1d_0 conda-forge intel-openmp 2024.1.0 h57928b3_966 conda-forge intervaltree 3.1.0 pyhd8ed1ab_1 conda-forge ipykernel 6.29.4 pyh4bbf305_0 conda-forge ipython 8.25.0 pyh7428d3b_0 conda-forge isort 5.13.2 pyhd8ed1ab_0 conda-forge jaraco.classes 3.4.0 pyhd8ed1ab_1 conda-forge jaraco.context 5.3.0 pyhd8ed1ab_1 conda-forge jaraco.functools 4.0.0 pyhd8ed1ab_0 conda-forge jedi 0.19.1 pyhd8ed1ab_0 conda-forge jellyfish 1.0.4 py311h533ab2d_0 conda-forge jinja2 3.1.4 pyhd8ed1ab_0 conda-forge jsonschema 4.22.0 pyhd8ed1ab_0 conda-forge jsonschema-specifications 2023.12.1 pyhd8ed1ab_0 conda-forge jupyter_client 8.6.2 pyhd8ed1ab_0 conda-forge jupyter_core 5.7.2 py311h1ea47a8_0 conda-forge jupyterlab_pygments 0.3.0 pyhd8ed1ab_1 conda-forge keyring 25.2.1 pyh7428d3b_0 conda-forge kiwisolver 1.4.5 py311h005e61a_1 conda-forge krb5 1.21.2 heb0366b_0 conda-forge lcms2 2.16 h67d730c_0 conda-forge lerc 4.0.0 h63175ca_0 conda-forge libasprintf 0.22.5 h5728263_2 conda-forge libasprintf-devel 0.22.5 h5728263_2 conda-forge libblas 3.9.0 22_win64_mkl conda-forge libbrotlicommon 1.1.0 hcfcfb64_1 conda-forge libbrotlidec 1.1.0 hcfcfb64_1 conda-forge libbrotlienc 1.1.0 hcfcfb64_1 conda-forge libcblas 3.9.0 22_win64_mkl conda-forge libclang13 18.1.7 default_h97ce8ae_0 conda-forge libdeflate 1.20 hcfcfb64_0 conda-forge libexpat 2.6.2 h63175ca_0 conda-forge libffi 3.4.2 h8ffe710_5 conda-forge libgettextpo 0.22.5 h5728263_2 conda-forge libgettextpo-devel 0.22.5 h5728263_2 conda-forge libglib 2.80.2 h7025463_1 conda-forge libhwloc 2.10.0 default_h8125262_1001 conda-forge libiconv 1.17 hcfcfb64_2 conda-forge libintl 0.22.5 h5728263_2 conda-forge libintl-devel 0.22.5 h5728263_2 conda-forge libjpeg-turbo 3.0.0 hcfcfb64_1 conda-forge liblapack 3.9.0 22_win64_mkl conda-forge libogg 1.3.4 h8ffe710_1 conda-forge libpng 1.6.43 h19919ed_0 conda-forge libsodium 1.0.18 h8d14728_1 conda-forge libspatialindex 2.0.0 h5a68840_0 conda-forge libsqlite 3.46.0 h2466b09_0 conda-forge libtiff 4.6.0 hddb2be6_3 conda-forge libvorbis 1.3.7 h0e60522_0 conda-forge libwebp 1.4.0 h2466b09_0 conda-forge libwebp-base 1.4.0 hcfcfb64_0 conda-forge libxcb 1.15 hcd874cb_0 conda-forge libxml2 2.12.7 h283a6d9_1 conda-forge libzlib 1.3.1 h2466b09_1 conda-forge m2w64-gcc-libgfortran 5.3.0 6 conda-forge m2w64-gcc-libs 5.3.0 7 conda-forge m2w64-gcc-libs-core 5.3.0 7 conda-forge m2w64-gmp 6.1.0 2 conda-forge m2w64-libwinpthread-git 5.0.0.4634.697f757 2 conda-forge markdown-it-py 3.0.0 pyhd8ed1ab_0 conda-forge markupsafe 2.1.5 py311ha68e1ae_0 conda-forge matplotlib 3.8.4 py311h1ea47a8_2 conda-forge matplotlib-base 3.8.4 py311h9b31f6e_2 conda-forge matplotlib-inline 0.1.7 pyhd8ed1ab_0 conda-forge mccabe 0.7.0 pyhd8ed1ab_0 conda-forge mdurl 0.1.2 pyhd8ed1ab_0 conda-forge mistune 3.0.2 pyhd8ed1ab_0 conda-forge mkl 2024.1.0 h66d3029_692 conda-forge more-itertools 10.3.0 pyhd8ed1ab_0 conda-forge mpmath 1.3.0 pyhd8ed1ab_0 conda-forge msys2-conda-epoch 20160418 1 conda-forge multidict 6.0.5 py311ha68e1ae_0 conda-forge munkres 1.1.4 pyh9f0ad1d_0 conda-forge mypy_extensions 1.0.0 pyha770c72_0 conda-forge nbclient 0.10.0 pyhd8ed1ab_0 conda-forge nbconvert 7.16.4 hd8ed1ab_1 conda-forge nbconvert-core 7.16.4 pyhd8ed1ab_1 conda-forge nbconvert-pandoc 7.16.4 hd8ed1ab_1 conda-forge nbformat 5.10.4 pyhd8ed1ab_0 conda-forge nest-asyncio 1.6.0 pyhd8ed1ab_0 conda-forge numpy 2.0.0 py311h35ffc71_0 conda-forge numpydoc 1.7.0 pyhd8ed1ab_1 conda-forge openjpeg 2.5.2 h3d672ee_0 conda-forge openpyxl 3.1.4 py311ha68e1ae_0 conda-forge openssl 3.3.1 h2466b09_0 conda-forge packaging 24.1 pyhd8ed1ab_0 conda-forge pandas 2.2.2 py311hcf9f919_1 conda-forge pandoc 3.2 h57928b3_0 conda-forge pandocfilters 1.5.0 pyhd8ed1ab_0 conda-forge paramiko 3.4.0 pyhd8ed1ab_0 conda-forge parso 0.8.4 pyhd8ed1ab_0 conda-forge pathspec 0.12.1 pyhd8ed1ab_0 conda-forge pcre2 10.44 h3d7b363_0 conda-forge pexpect 4.9.0 pyhd8ed1ab_0 conda-forge pickleshare 0.7.5 py_1003 conda-forge pillow 10.3.0 py311h6819b35_0 conda-forge pkgutil-resolve-name 1.3.10 pyhd8ed1ab_1 conda-forge platformdirs 4.2.2 pyhd8ed1ab_0 conda-forge pluggy 1.5.0 pyhd8ed1ab_0 conda-forge ply 3.11 pyhd8ed1ab_2 conda-forge prompt-toolkit 3.0.47 pyha770c72_0 conda-forge psutil 5.9.8 py311ha68e1ae_0 conda-forge pthread-stubs 0.4 hcd874cb_1001 conda-forge pthreads-win32 2.9.1 hfa6e2cd_3 conda-forge ptyprocess 0.7.0 pyhd3deb0d_0 conda-forge pure_eval 0.2.2 pyhd8ed1ab_0 conda-forge pycodestyle 2.11.1 pyhd8ed1ab_0 conda-forge pyconify 0.1.6 pyhd8ed1ab_0 conda-forge pycparser 2.22 pyhd8ed1ab_0 conda-forge pydocstyle 6.3.0 pyhd8ed1ab_0 conda-forge pyflakes 3.2.0 pyhd8ed1ab_0 conda-forge pygithub 2.3.0 pyhd8ed1ab_0 conda-forge pygments 2.18.0 pyhd8ed1ab_0 conda-forge pyjwt 2.8.0 pyhd8ed1ab_1 conda-forge pylint 3.2.3 pyhd8ed1ab_0 conda-forge pylint-venv 3.0.3 pyhd8ed1ab_0 conda-forge pyls-spyder 0.4.0 pyhd8ed1ab_0 conda-forge pynacl 1.5.0 py311hd53affc_3 conda-forge pyopenssl 24.0.0 pyhd8ed1ab_0 conda-forge pyparsing 3.1.2 pyhd8ed1ab_0 conda-forge pyqt 5.15.9 py311h125bc19_5 conda-forge pyqt5-sip 12.12.2 py311h12c1d0e_5 conda-forge pyqtwebengine 5.15.9 py311h5a77453_5 conda-forge pysocks 1.7.1 pyh0701188_6 conda-forge python 3.11.9 h631f459_0_cpython conda-forge python-dateutil 2.9.0 pyhd8ed1ab_0 conda-forge python-fastjsonschema 2.20.0 pyhd8ed1ab_0 conda-forge python-gssapi 1.8.3 py311h8a3cce8_0 conda-forge python-lsp-black 2.0.0 pyhd8ed1ab_0 conda-forge python-lsp-jsonrpc 1.1.2 pyhd8ed1ab_0 conda-forge python-lsp-server 1.11.0 pyhd8ed1ab_0 conda-forge python-lsp-server-base 1.11.0 pyhd8ed1ab_0 conda-forge python-slugify 8.0.4 pyhd8ed1ab_0 conda-forge python-tzdata 2024.1 pyhd8ed1ab_0 conda-forge python_abi 3.11 4_cp311 conda-forge pytoolconfig 1.2.5 pyhd8ed1ab_0 conda-forge pytz 2024.1 pyhd8ed1ab_0 conda-forge pyuca 1.2 py_1 conda-forge pywin32 306 py311h12c1d0e_2 conda-forge pywin32-ctypes 0.2.2 py311h1ea47a8_1 conda-forge pyyaml 6.0.1 py311ha68e1ae_1 conda-forge pyzmq 26.0.3 py311h484c95c_0 conda-forge qdarkstyle 3.2.3 pyhd8ed1ab_0 conda-forge qstylizer 0.2.3 pyhd8ed1ab_0 conda-forge qt-main 5.15.8 h9e85ed6_20 conda-forge qt-webengine 5.15.8 h4bf5c4e_4 conda-forge qtawesome 1.3.1 pyh9208f05_0 conda-forge qtconsole 5.5.2 pyhd8ed1ab_0 conda-forge qtconsole-base 5.5.2 pyha770c72_0 conda-forge qtpy 2.4.1 pyhd8ed1ab_0 conda-forge referencing 0.35.1 pyhd8ed1ab_0 conda-forge requests 2.32.3 pyhd8ed1ab_0 conda-forge rich 13.7.1 pyhd8ed1ab_0 conda-forge rope 1.13.0 pyhd8ed1ab_0 conda-forge rpds-py 0.18.1 py311h533ab2d_0 conda-forge rtree 1.2.0 py311h44d53c4_1 conda-forge scipy 1.13.1 py311hd4686c6_0 conda-forge setuptools 70.0.0 pyhd8ed1ab_0 conda-forge sip 6.7.12 py311h12c1d0e_0 conda-forge six 1.16.0 pyh6c4a22f_0 conda-forge snowballstemmer 2.2.0 pyhd8ed1ab_0 conda-forge sortedcontainers 2.4.0 pyhd8ed1ab_0 conda-forge soupsieve 2.5 pyhd8ed1ab_1 conda-forge sphinx 7.3.7 pyhd8ed1ab_0 conda-forge sphinxcontrib-applehelp 1.0.8 pyhd8ed1ab_0 conda-forge sphinxcontrib-devhelp 1.0.6 pyhd8ed1ab_0 conda-forge sphinxcontrib-htmlhelp 2.0.5 pyhd8ed1ab_0 conda-forge sphinxcontrib-jsmath 1.0.1 pyhd8ed1ab_0 conda-forge sphinxcontrib-qthelp 1.0.7 pyhd8ed1ab_0 conda-forge sphinxcontrib-serializinghtml 1.1.10 pyhd8ed1ab_0 conda-forge spyder 6.0.0b2 py311h6f0a7d0_0 conda-forge/label/spyder_dev spyder-kernels 3.0.0b7 win_pyhd40a787_0 conda-forge/label/spyder_kernels_rc stack_data 0.6.2 pyhd8ed1ab_0 conda-forge superqt 0.6.7 pyh9208f05_0 conda-forge sympy 1.12.1 pyh04b8f61_3 conda-forge tabulate 0.9.0 pyhd8ed1ab_1 conda-forge tbb 2021.12.0 hc790b64_1 conda-forge text-unidecode 1.3 pyhd8ed1ab_1 conda-forge textdistance 4.6.2 pyhd8ed1ab_0 conda-forge three-merge 0.1.1 pyh9f0ad1d_0 conda-forge tinycss2 1.3.0 pyhd8ed1ab_0 conda-forge tk 8.6.13 h5226925_1 conda-forge toml 0.10.2 pyhd8ed1ab_0 conda-forge tomli 2.0.1 pyhd8ed1ab_0 conda-forge tomlkit 0.12.5 pyha770c72_0 conda-forge tornado 6.4.1 py311he736701_0 conda-forge traitlets 5.14.3 pyhd8ed1ab_0 conda-forge types-python-dateutil 2.9.0.20240316 pyhd8ed1ab_0 conda-forge typing-extensions 4.12.2 hd8ed1ab_0 conda-forge typing_extensions 4.12.2 pyha770c72_0 conda-forge tzdata 2024a h0c530f3_0 conda-forge ucrt 10.0.22621.0 h57928b3_0 conda-forge ujson 5.10.0 py311hda3d55a_0 conda-forge urllib3 2.2.2 pyhd8ed1ab_0 conda-forge vc 14.3 h8a93ad2_20 conda-forge vc14_runtime 14.40.33810 ha82c5b3_20 conda-forge vs2015_runtime 14.40.33810 h3bf8584_20 conda-forge watchdog 4.0.1 py311h1ea47a8_0 conda-forge wcwidth 0.2.13 pyhd8ed1ab_0 conda-forge webencodings 0.5.1 pyhd8ed1ab_2 conda-forge whatthepatch 1.0.5 pyhd8ed1ab_0 conda-forge win_inet_pton 1.1.0 pyhd8ed1ab_6 conda-forge wrapt 1.16.0 py311ha68e1ae_0 conda-forge xorg-libxau 1.0.11 hcd874cb_0 conda-forge xorg-libxdmcp 1.1.3 hcd874cb_0 conda-forge xz 5.2.6 h8d14728_0 conda-forge yaml 0.2.5 h8ffe710_2 conda-forge yapf 0.40.1 pyhd8ed1ab_0 conda-forge yarl 1.9.4 py311ha68e1ae_0 conda-forge zeromq 4.3.5 he1f189c_4 conda-forge zipp 3.19.2 pyhd8ed1ab_0 conda-forge zstd 1.5.6 h0ea2cb4_0 conda-forge ```
``` conda create -n b2 python=3.11.9 spyder=6.0.0b2 conda list -n b2 # packages in environment at C:\Users\rclary\.conda\envs\b2: # # Name Version Build Channel aiohappyeyeballs 2.4.0 pyhd8ed1ab_0 conda-forge aiohttp 3.10.5 py311he736701_0 conda-forge aiosignal 1.3.1 pyhd8ed1ab_0 conda-forge alabaster 1.0.0 pyhd8ed1ab_0 conda-forge arrow 1.3.0 pyhd8ed1ab_0 conda-forge astroid 3.2.4 py311h1ea47a8_0 conda-forge asttokens 2.4.1 pyhd8ed1ab_0 conda-forge asyncssh 2.14.1 pyhd8ed1ab_0 conda-forge atomicwrites 1.4.1 pyhd8ed1ab_0 conda-forge attrs 24.2.0 pyh71513ae_0 conda-forge autopep8 2.0.4 pyhd8ed1ab_0 conda-forge babel 2.14.0 pyhd8ed1ab_0 conda-forge backports 1.0 pyhd8ed1ab_4 conda-forge backports.tarfile 1.0.0 pyhd8ed1ab_1 conda-forge bcrypt 4.2.0 py311h533ab2d_0 conda-forge beautifulsoup4 4.12.3 pyha770c72_0 conda-forge binaryornot 0.4.4 py_1 conda-forge black 24.8.0 py311h1ea47a8_0 conda-forge bleach 6.1.0 pyhd8ed1ab_0 conda-forge brotli-python 1.1.0 py311h12c1d0e_1 conda-forge bzip2 1.0.8 h2466b09_7 conda-forge ca-certificates 2024.7.4 h56e8100_0 conda-forge certifi 2024.7.4 pyhd8ed1ab_0 conda-forge cffi 1.17.0 py311he736701_0 conda-forge chardet 5.2.0 py311h1ea47a8_1 conda-forge charset-normalizer 3.3.2 pyhd8ed1ab_0 conda-forge click 8.1.7 win_pyh7428d3b_0 conda-forge cloudpickle 3.0.0 pyhd8ed1ab_0 conda-forge colorama 0.4.6 pyhd8ed1ab_0 conda-forge comm 0.2.2 pyhd8ed1ab_0 conda-forge cookiecutter 2.6.0 pyhca7485f_0 conda-forge cryptography 43.0.0 py311hfd75b31_0 conda-forge debugpy 1.8.5 py311hda3d55a_0 conda-forge decorator 5.1.1 pyhd8ed1ab_0 conda-forge defusedxml 0.7.1 pyhd8ed1ab_0 conda-forge deprecated 1.2.14 pyh1a96a4e_0 conda-forge diff-match-patch 20230430 pyhd8ed1ab_0 conda-forge dill 0.3.8 pyhd8ed1ab_0 conda-forge docstring-to-markdown 0.15 pyhd8ed1ab_0 conda-forge docutils 0.21.2 pyhd8ed1ab_0 conda-forge entrypoints 0.4 pyhd8ed1ab_0 conda-forge exceptiongroup 1.2.2 pyhd8ed1ab_0 conda-forge executing 2.0.1 pyhd8ed1ab_0 conda-forge flake8 7.0.0 pyhd8ed1ab_0 conda-forge frozenlist 1.4.1 py311ha68e1ae_0 conda-forge fzf 0.54.3 hd02998f_0 conda-forge glib 2.80.3 h7025463_2 conda-forge glib-tools 2.80.3 h4394cf3_2 conda-forge gst-plugins-base 1.24.6 hb0a98b8_0 conda-forge gstreamer 1.24.6 h5006eae_0 conda-forge h2 4.1.0 pyhd8ed1ab_0 conda-forge hpack 4.0.0 pyh9f0ad1d_0 conda-forge hyperframe 6.0.1 pyhd8ed1ab_0 conda-forge icu 73.2 h63175ca_0 conda-forge idna 3.7 pyhd8ed1ab_0 conda-forge imagesize 1.4.1 pyhd8ed1ab_0 conda-forge importlib-metadata 8.4.0 pyha770c72_0 conda-forge importlib_metadata 8.4.0 hd8ed1ab_0 conda-forge importlib_resources 6.4.3 pyhd8ed1ab_0 conda-forge inflection 0.5.1 pyh9f0ad1d_0 conda-forge intervaltree 3.1.0 pyhd8ed1ab_1 conda-forge ipykernel 6.29.5 pyh4bbf305_0 conda-forge ipython 8.26.0 pyh7428d3b_0 conda-forge isort 5.13.2 pyhd8ed1ab_0 conda-forge jaraco.classes 3.4.0 pyhd8ed1ab_1 conda-forge jaraco.context 5.3.0 pyhd8ed1ab_1 conda-forge jaraco.functools 4.0.0 pyhd8ed1ab_0 conda-forge jedi 0.19.1 pyhd8ed1ab_0 conda-forge jellyfish 1.1.0 py311h533ab2d_0 conda-forge jinja2 3.1.4 pyhd8ed1ab_0 conda-forge jsonschema 4.23.0 pyhd8ed1ab_0 conda-forge jsonschema-specifications 2023.12.1 pyhd8ed1ab_0 conda-forge jupyter_client 8.6.2 pyhd8ed1ab_0 conda-forge jupyter_core 5.7.2 py311h1ea47a8_0 conda-forge jupyterlab_pygments 0.3.0 pyhd8ed1ab_1 conda-forge keyring 25.3.0 pyh7428d3b_0 conda-forge krb5 1.21.3 hdf4eb48_0 conda-forge libclang13 18.1.8 default_ha5278ca_2 conda-forge libexpat 2.6.2 h63175ca_0 conda-forge libffi 3.4.2 h8ffe710_5 conda-forge libglib 2.80.3 h7025463_2 conda-forge libiconv 1.17 hcfcfb64_2 conda-forge libintl 0.22.5 h5728263_3 conda-forge libintl-devel 0.22.5 h5728263_3 conda-forge libjpeg-turbo 3.0.0 hcfcfb64_1 conda-forge libogg 1.3.5 h2466b09_0 conda-forge libpng 1.6.43 h19919ed_0 conda-forge libsodium 1.0.18 h8d14728_1 conda-forge libspatialindex 2.0.0 h5a68840_0 conda-forge libsqlite 3.46.0 h2466b09_0 conda-forge libvorbis 1.3.7 h0e60522_0 conda-forge libwebp 1.4.0 h2466b09_0 conda-forge libwebp-base 1.4.0 hcfcfb64_0 conda-forge libzlib 1.3.1 h2466b09_1 conda-forge markdown-it-py 3.0.0 pyhd8ed1ab_0 conda-forge markupsafe 2.1.5 py311ha68e1ae_0 conda-forge matplotlib-inline 0.1.7 pyhd8ed1ab_0 conda-forge mccabe 0.7.0 pyhd8ed1ab_0 conda-forge mdurl 0.1.2 pyhd8ed1ab_0 conda-forge mistune 3.0.2 pyhd8ed1ab_0 conda-forge more-itertools 10.4.0 pyhd8ed1ab_0 conda-forge multidict 6.0.5 py311ha68e1ae_0 conda-forge mypy_extensions 1.0.0 pyha770c72_0 conda-forge nbclient 0.10.0 pyhd8ed1ab_0 conda-forge nbconvert 7.16.4 hd8ed1ab_1 conda-forge nbconvert-core 7.16.4 pyhd8ed1ab_1 conda-forge nbconvert-pandoc 7.16.4 hd8ed1ab_1 conda-forge nbformat 5.10.4 pyhd8ed1ab_0 conda-forge nest-asyncio 1.6.0 pyhd8ed1ab_0 conda-forge numpydoc 1.8.0 pyhd8ed1ab_0 conda-forge openssl 3.3.1 h2466b09_2 conda-forge packaging 24.1 pyhd8ed1ab_0 conda-forge pandoc 3.3 h57928b3_0 conda-forge pandocfilters 1.5.0 pyhd8ed1ab_0 conda-forge paramiko 3.4.1 pyhd8ed1ab_0 conda-forge parso 0.8.4 pyhd8ed1ab_0 conda-forge pathspec 0.12.1 pyhd8ed1ab_0 conda-forge pcre2 10.44 h3d7b363_2 conda-forge pexpect 4.9.0 pyhd8ed1ab_0 conda-forge pickleshare 0.7.5 py_1003 conda-forge pip 24.2 pyhd8ed1ab_0 conda-forge pkgutil-resolve-name 1.3.10 pyhd8ed1ab_1 conda-forge platformdirs 4.2.2 pyhd8ed1ab_0 conda-forge pluggy 1.5.0 pyhd8ed1ab_0 conda-forge ply 3.11 pyhd8ed1ab_2 conda-forge prompt-toolkit 3.0.47 pyha770c72_0 conda-forge psutil 6.0.0 py311he736701_0 conda-forge ptyprocess 0.7.0 pyhd3deb0d_0 conda-forge pure_eval 0.2.3 pyhd8ed1ab_0 conda-forge pycodestyle 2.11.1 pyhd8ed1ab_0 conda-forge pyconify 0.1.6 pyhd8ed1ab_0 conda-forge pycparser 2.22 pyhd8ed1ab_0 conda-forge pydocstyle 6.3.0 pyhd8ed1ab_0 conda-forge pyflakes 3.2.0 pyhd8ed1ab_0 conda-forge pygithub 2.3.0 pyhd8ed1ab_0 conda-forge pygments 2.18.0 pyhd8ed1ab_0 conda-forge pyjwt 2.9.0 pyhd8ed1ab_1 conda-forge pylint 3.2.6 pyhd8ed1ab_0 conda-forge pylint-venv 3.0.3 pyhd8ed1ab_0 conda-forge pyls-spyder 0.4.0 pyhd8ed1ab_0 conda-forge pynacl 1.5.0 py311hd53affc_3 conda-forge pyopenssl 24.2.1 pyhd8ed1ab_2 conda-forge pyqt 5.15.9 py311h125bc19_5 conda-forge pyqt5-sip 12.12.2 py311h12c1d0e_5 conda-forge pyqtwebengine 5.15.9 py311h5a77453_5 conda-forge pysocks 1.7.1 pyh0701188_6 conda-forge python 3.11.9 h631f459_0_cpython conda-forge python-dateutil 2.9.0 pyhd8ed1ab_0 conda-forge python-fastjsonschema 2.20.0 pyhd8ed1ab_0 conda-forge python-gssapi 1.8.3 py311h8a3cce8_0 conda-forge python-lsp-black 2.0.0 pyhd8ed1ab_0 conda-forge python-lsp-jsonrpc 1.1.2 pyhd8ed1ab_0 conda-forge python-lsp-server 1.11.0 pyhd8ed1ab_0 conda-forge python-lsp-server-base 1.11.0 pyhd8ed1ab_0 conda-forge python-slugify 8.0.4 pyhd8ed1ab_0 conda-forge python_abi 3.11 5_cp311 conda-forge pytoolconfig 1.2.5 pyhd8ed1ab_0 conda-forge pytz 2024.1 pyhd8ed1ab_0 conda-forge pyuca 1.2 py_1 conda-forge pywin32 306 py311h12c1d0e_2 conda-forge pywin32-ctypes 0.2.3 py311h1ea47a8_0 conda-forge pyyaml 6.0.2 py311he736701_0 conda-forge pyzmq 26.1.1 py311h484c95c_0 conda-forge qdarkstyle 3.2.3 pyhd8ed1ab_0 conda-forge qstylizer 0.2.3 pyhd8ed1ab_0 conda-forge qt-main 5.15.8 h06adc49_23 conda-forge qt-webengine 5.15.8 h4bf5c4e_4 conda-forge qtawesome 1.3.1 pyh9208f05_0 conda-forge qtconsole 5.5.2 pyhd8ed1ab_0 conda-forge qtconsole-base 5.5.2 pyha770c72_0 conda-forge qtpy 2.4.1 pyhd8ed1ab_0 conda-forge referencing 0.35.1 pyhd8ed1ab_0 conda-forge requests 2.32.3 pyhd8ed1ab_0 conda-forge rich 13.7.1 pyhd8ed1ab_0 conda-forge rope 1.13.0 pyhd8ed1ab_0 conda-forge rpds-py 0.20.0 py311h533ab2d_0 conda-forge rtree 1.3.0 py311h3fabd8a_1 conda-forge setuptools 72.2.0 pyhd8ed1ab_0 conda-forge sip 6.7.12 py311h12c1d0e_0 conda-forge six 1.16.0 pyh6c4a22f_0 conda-forge snowballstemmer 2.2.0 pyhd8ed1ab_0 conda-forge sortedcontainers 2.4.0 pyhd8ed1ab_0 conda-forge soupsieve 2.5 pyhd8ed1ab_1 conda-forge sphinx 8.0.2 pyhd8ed1ab_0 conda-forge sphinxcontrib-applehelp 2.0.0 pyhd8ed1ab_0 conda-forge sphinxcontrib-devhelp 2.0.0 pyhd8ed1ab_0 conda-forge sphinxcontrib-htmlhelp 2.1.0 pyhd8ed1ab_0 conda-forge sphinxcontrib-jsmath 1.0.1 pyhd8ed1ab_0 conda-forge sphinxcontrib-qthelp 2.0.0 pyhd8ed1ab_0 conda-forge sphinxcontrib-serializinghtml 1.1.10 pyhd8ed1ab_0 conda-forge spyder 6.0.0b2 py311h6f0a7d0_0 conda-forge/label/spyder_dev spyder-kernels 3.0.0b7 win_pyhd40a787_0 conda-forge/label/spyder_kernels_rc stack_data 0.6.2 pyhd8ed1ab_0 conda-forge superqt 0.6.7 pyh9208f05_0 conda-forge tabulate 0.9.0 pyhd8ed1ab_1 conda-forge text-unidecode 1.3 pyhd8ed1ab_1 conda-forge textdistance 4.6.3 pyhd8ed1ab_0 conda-forge three-merge 0.1.1 pyh9f0ad1d_0 conda-forge tinycss2 1.3.0 pyhd8ed1ab_0 conda-forge tk 8.6.13 h5226925_1 conda-forge toml 0.10.2 pyhd8ed1ab_0 conda-forge tomli 2.0.1 pyhd8ed1ab_0 conda-forge tomlkit 0.13.2 pyha770c72_0 conda-forge tornado 6.4.1 py311he736701_0 conda-forge traitlets 5.14.3 pyhd8ed1ab_0 conda-forge types-python-dateutil 2.9.0.20240821 pyhd8ed1ab_0 conda-forge typing-extensions 4.12.2 hd8ed1ab_0 conda-forge typing_extensions 4.12.2 pyha770c72_0 conda-forge tzdata 2024a h0c530f3_0 conda-forge ucrt 10.0.22621.0 h57928b3_0 conda-forge ujson 5.10.0 py311hda3d55a_0 conda-forge urllib3 2.2.2 pyhd8ed1ab_1 conda-forge vc 14.3 h8a93ad2_20 conda-forge vc14_runtime 14.40.33810 ha82c5b3_20 conda-forge vs2015_runtime 14.40.33810 h3bf8584_20 conda-forge watchdog 4.0.1 py311h1ea47a8_0 conda-forge wcwidth 0.2.13 pyhd8ed1ab_0 conda-forge webencodings 0.5.1 pyhd8ed1ab_2 conda-forge whatthepatch 1.0.6 pyhd8ed1ab_0 conda-forge wheel 0.44.0 pyhd8ed1ab_0 conda-forge win_inet_pton 1.1.0 pyhd8ed1ab_6 conda-forge wrapt 1.16.0 py311ha68e1ae_0 conda-forge xz 5.2.6 h8d14728_0 conda-forge yaml 0.2.5 h8ffe710_2 conda-forge yapf 0.40.1 pyhd8ed1ab_0 conda-forge yarl 1.9.4 py311ha68e1ae_0 conda-forge zeromq 4.3.5 he1f189c_4 conda-forge zipp 3.20.0 pyhd8ed1ab_0 conda-forge zstandard 0.23.0 py311h53056dc_0 conda-forge zstd 1.5.6 h0ea2cb4_0 conda-forge ```
I tried creating an environment with just spyder 6.0.0b2, no matplotlib or pyside, and it also does not work.
Ok, still it's a good idea to do the changes I mentioned (i.e. using matplotlib-base
instead of matplotlib
) to avoid bringing Qt6 to our installers.
The environment made using the b2 lock file works
The main difference I see between the two that could affect Spyder is Qt:
qt-main 5.15.8 h9e85ed6_20
qt-main 5.15.8 h06adc49_23
So, could you install the Qt version from the lock file in the env you created it without it? For that you need to run
conda install -c conda-forge qt-main=5.15.8=h9e85ed6_20
Ok, still it's a good idea to do the changes I mentioned (i.e. using
matplotlib-base
instead ofmatplotlib
) to avoid bringing Qt6 to our installers.
Agreed.
The main difference I see between the two that could affect Spyder is Qt:
- With lock file:
qt-main 5.15.8 h9e85ed6_20
- Without lock file:
qt-main 5.15.8 h06adc49_23
I've installed qt-main 5.15.8 h9e85ed6_20
without effect.
😫
I'm trying to go through all the environment diffs between b2 and b2-lock...
Found it!
sphinx
>=7.4.0 breaks it. 7.3.7 is okay.
@ccordoba12, this issue does not seem to affect macOS or Linux, only Windows.
I've submitted a PR to limit the sphinx
version, but I wonder if we should consider another approach.
Found it!
sphinx
>=7.4.0 breaks it. 7.3.7 is okay.
Man, how on earth is Sphinx affecting loading an svg in Spyder? Thanks for taking the time to find that! 👍🏽
I've submitted a PR to limit the sphinx version, but I wonder if we should consider another approach.
I have no idea how else we could solve this. So, I think it's ok for now.
Man, how on earth is Sphinx affecting loading an svg in Spyder? Thanks for taking the time to find that 👍🏽
I know, right? This has me stumped. Is there a plugin relationship between sphinx
and pyqt
? Maybe for the image rendering?
There is a sphinxcontrib-qthelp
that could affect Spyder (its version is 1.0.7 in the lock file and 2.0.0 without it).
I'm reopening this issue.
It seems that sphinx
was not the only factor with the OP. pillow
must also be installed for the splash screen to render properly. I don't understand this.
So installing Spyder from the installer, with sphinx < 7.4.0
and pillow
included via matplotlib-base
, there is no issue.
However, installing Spyder by itself, e.g. conda create -n test python=3.11 spyder=6.0.0.rc2
, results in the bad splash screen.
The splash screen renders correctly:
conda run -n test spyder
. Shortcuts do not activate the environment, as doing so creates a flashing cmd window. @jaimergp and I are unable to fix this.Library\bin
is in the PATH
environment variable. This is added to PATH
when the environment is activated.pillow
is installed and sphinx < 7.4.0
.I suspect that Qt requires something in Library\bin
and that the combination of sphinx < 7.4.0
and pillow
either obviates the need for whatever is in Library\bin
or alters Qt's search paths to include Library\bin
.
Problem Description
When launching Spyder installed from the installer the splash screen doesn't show the top image (at least on Windows)
What steps reproduce the problem?
What is the expected output? What do you see instead?
I think the splash screen should be showing an image, right?
Traceback
Running the command the generated shortcut uses to launch from a cmd (so something like
C:\Users\dalth\AppData\Local\spyder-6\envs\spyder-runtime\python.exe C:\Users\dalth\AppData\Local\spyder-6\envs\spyder-runtime\Scripts\spyder-script.py
) I can get see some output that could be related:Versions