jupyter/qtconsole

Jupyter QT crashes when tries to display specific list

mgalczynski opened this issue · 1 comments

Issue description

Jupyter QtConsole crashes when tries to display list

Steps to reproduce

Run Jupyter QtConsole

jupyter qtconsole

Load following file as list of lines and try to display that list

problematic_list = open('funcs.txt', 'rt').readlines()
problematic_list

funcs.txt

It makes crash with such output

Traceback (most recent call last):
  File "/home/mirek/.venv/lib64/python3.10/site-packages/qtconsole/base_frontend_mixin.py", line 138, in _dispatch
    handler(msg)
  File "/home/mirek/.venv/lib64/python3.10/site-packages/qtconsole/jupyter_widget.py", line 196, in _handle_execute_reply
    super()._handle_execute_reply(msg)
  File "/home/mirek/.venv/lib64/python3.10/site-packages/qtconsole/frontend_widget.py", line 479, in _handle_execute_reply
    self._show_interpreter_prompt_for_reply(msg)
  File "/home/mirek/.venv/lib64/python3.10/site-packages/qtconsole/jupyter_widget.py", line 447, in _show_interpreter_prompt_for_reply
    self._show_interpreter_prompt(previous_prompt_number + 1)
  File "/home/mirek/.venv/lib64/python3.10/site-packages/qtconsole/jupyter_widget.py", line 388, in _show_interpreter_prompt
    self._show_prompt(self._make_in_prompt(number), html=True)
  File "/home/mirek/.venv/lib64/python3.10/site-packages/qtconsole/console_widget.py", line 2474, in _show_prompt
    self._flush_pending_stream()
  File "/home/mirek/.venv/lib64/python3.10/site-packages/qtconsole/console_widget.py", line 1662, in _flush_pending_stream
    self._pending_text_flush_interval.setInterval(max(100,
TypeError: setInterval(self, int): argument 1 has unexpected type 'float'
Aborted (core dumped)

Environment

Python version - 3.10.2 from OpenSUSE Tumbleweed package python310 v: 3.10.2-2.1 arch: x86_64

Python installed packages -

$ pip list
Package              Version
-------------------- -------
argon2-cffi          21.3.0
argon2-cffi-bindings 21.2.0
asttokens            2.0.5
attrs                21.4.0
backcall             0.2.0
black                22.1.0
bleach               4.1.0
cffi                 1.15.0
click                8.0.3
cycler               0.11.0
debugpy              1.5.1
decorator            5.1.1
defusedxml           0.7.1
entrypoints          0.4
executing            0.8.2
fonttools            4.29.1
ipykernel            6.9.1
ipython              8.0.1
ipython-genutils     0.2.0
ipywidgets           7.6.5
jedi                 0.18.1
Jinja2               3.0.3
jsonschema           4.4.0
jupyter              1.0.0
jupyter-client       7.1.2
jupyter-console      6.4.0
jupyter-core         4.9.2
jupyterlab-pygments  0.1.2
jupyterlab-widgets   1.0.2
kiwisolver           1.3.2
MarkupSafe           2.0.1
matplotlib           3.5.1
matplotlib-inline    0.1.3
mistune              0.8.4
mypy-extensions      0.4.3
nbclient             0.5.11
nbconvert            6.4.2
nbformat             5.1.3
nest-asyncio         1.5.4
notebook             6.4.8
numpy                1.22.2
packaging            21.3
pandas               1.4.1
pandocfilters        1.5.0
parso                0.8.3
pathspec             0.9.0
pexpect              4.8.0
pickleshare          0.7.5
Pillow               9.0.1
pip                  22.0.3
platformdirs         2.5.0
prometheus-client    0.13.1
prompt-toolkit       3.0.28
ptyprocess           0.7.0
pure-eval            0.2.2
pycparser            2.21
Pygments             2.11.2
pyparsing            3.0.7
PyQt5                5.15.6
PyQt5-Qt5            5.15.2
PyQt5-sip            12.9.1
pyrsistent           0.18.1
python-dateutil      2.8.2
pytz                 2021.3
pyzmq                22.3.0
qtconsole            5.2.2
QtPy                 2.0.1
Send2Trash           1.8.0
setuptools           58.1.0
six                  1.16.0
stack-data           0.2.0
terminado            0.13.1
testpath             0.5.0
tomli                2.0.1
tornado              6.1
traitlets            5.1.1
wcwidth              0.2.5
webencodings         0.5.1
wheel                0.37.1
widgetsnbextension   3.5.2

Hey @mgalczynski, thanks for reporting. This was fixed already in pull request #518, which will be part of our next version, to be released next month.

In the meantime, please use Qtconsole with Python 3.9.