Spyder closes silently at startup since 6.1.4 on WinPython; 6.1.3 works with the same environment
On Windows with WinPython, Spyder starts normally, displays its main window for a few seconds and then closes silently.
There is no traceback or error message in the command prompt.
The issue appears to have been introduced between Spyder 6.1.3 and 6.1.4.
I can reproduce the problem across several WinPython releases:
WinPython 3.13.12.0 + Spyder 6.1.3: works WinPython 3.13.13.0 + Spyder 6.1.4: fails WinPython 3.13.15.1 + Spyder 6.1.6: fails WinPython 3.13.15.1 + Spyder 6.1.7: fails WinPython 3.13.15.1 + Spyder 6.1.3: works
Therefore, the problem does not seem to be caused by the Python or WinPython version itself.
Steps to reproduce
With WinPython 3.13.15.1:
python -m pip install "spyder==6.1.7" spyder --new-instance
Spyder opens and then closes after a few seconds without any traceback.
Downgrading only Spyder fixes the issue:
python -m pip install "spyder==6.1.3" spyder --new-instance
Spyder then remains open and works normally.
Important observation: safe mode
With Spyder 6.1.6:
spyder --safe-mode
works: Spyder remains open.
However, using a fresh configuration directory does not solve the problem:
spyder --conf-dir "%TEMP%\spyder-test-616" --new-instance
still causes Spyder to close.
The same happens with another new configuration directory on another drive.
Removing SPYDER_CONFDIR also does not solve it:
set SPYDER_CONFDIR= spyder --new-instance
Spyder still closes.
Therefore, the difference between normal startup and --safe-mode seems relevant and does not appear to be simply caused by the Spyder configuration directory.
Dependencies
The following environment works correctly when Spyder is downgraded to 6.1.3:
Spyder 6.1.3 spyder-kernels 3.1.6 qtconsole 5.7.2 IPython 9.15.0 ipykernel 6.31.0 Python 3.13.15
This is important because the recent versions of spyder-kernels, qtconsole, IPython and ipykernel work correctly with Spyder 6.1.3 in exactly the same WinPython installation.
Additional tests
Matplotlib and PyQt work correctly outside Spyder:
python -X faulthandler -c "from PyQt5.QtWidgets import QApplication; app=QApplication([]); print('QT OK'); import matplotlib; print('MATPLOTLIB OK'); import matplotlib.pyplot as plt; print('PYPLOT OK')"
Result:
QT OK MATPLOTLIB OK PYPLOT OK
QtConsole also works:
python -X faulthandler -c "from PyQt5.QtWidgets import QApplication; app=QApplication([]); import qtconsole; print('QTCONSOLE',qtconsole.version); from qtconsole.rich_jupyter_widget import RichJupyterWidget; w=RichJupyterWidget(); print('WIDGET OK')"
Result:
QTCONSOLE 5.7.2 WIDGET OK
NumPy and Matplotlib binary modules load successfully:
numpy 2.5.2 matplotlib 3.11.1 matplotlib.ft2font: OK matplotlib.pyplot: OK IPython history observation
The IPython history database was checked with:
PRAGMA integrity_check
and returned:
('ok',)
Renaming:
%USERPROFILE%.ipython\profile_default\history.sqlite
allowed Spyder 6.1.6 to start successfully in one test.
However, the problem was still reproduced with Spyder 6.1.7, whereas reverting Spyder itself to 6.1.3 consistently solves the problem.
This may indicate an interaction between changes introduced in Spyder 6.1.4+ and IPython console/history initialization.
Expected behavior
Spyder should remain open and start normally, as it does with Spyder 6.1.3.
Actual behavior
Spyder 6.1.4 and later opens for a few seconds and then the whole application terminates silently, with no traceback in the command prompt.
Additional information
I can provide a verbose spyder --debug-info verbose startup log. The log does not contain a Python exception or traceback before the process terminates. # #
Source: spyder-ide/spyder