spyder-ide / spyder-terminal

Run system terminals inside Spyder. Works on Linux, macOS and Windows.
MIT License
231 stars 78 forks source link

Spyder built in terminal has a large typing delay #318

Open b-a0 opened 2 years ago

b-a0 commented 2 years ago

Issue Report Checklist

Problem Description

First of all, thanks for including the spyder-terminal in the standalone installers now as well! However, currently the typing delay is rather large, making the spyder-terminal not very usable.

Using the built in terminal typing any command has a 1-2 second of delay.

What steps reproduce the problem?

  1. Open Spyder
  2. Go to the Terminal tab
  3. Type ls and press Enter as fast as you can.

What is the expected output? What do you see instead?

Expected output The command is typed on the command line without noticeable delay and the output is shown directly as I press Enter. If I for example visit the underlying web terminal at 127.0.0.1:8073 that is how it works.

Actual output All my input is delayed for 1-2 seconds. It's as if I am typing over a very slow network connection.

Paste Traceback/Error Below (if applicable)

>>> Uncaught TypeError: Cannot read property 'fit' of undefined
_distutils_hack/__init__.pyc:17: UserWarning: Distutils was imported before Setuptools, but importing Setuptools also replaces the `distutils` module in `sys.modules`. This may lead to undesirable behaviors or errors. To avoid these issues, avoid using distutils directly, ensure that setuptools is installed in the traditional way (e.g. not an editable install), and/or make sure that setuptools is always imported before distutils.
_distutils_hack/__init__.pyc:30: UserWarning: Setuptools is replacing distutils.

Versions

Dependencies

# Mandatory:
applaunchservices >=0.1.7            :  0.2.1 (OK)
atomicwrites >=1.2.0                 :  1.4.0 (OK)
chardet >=2.0.0                      :  4.0.0 (OK)
cloudpickle >=0.5.0                  :  2.0.0 (OK)
cookiecutter >=1.6.0                 :  1.7.3 (OK)
diff_match_patch >=20181111          :  20200713 (OK)
intervaltree >=3.0.2                 :  3.1.0 (OK)
IPython >=7.31.1;<8.0.0              :  7.32.0 (OK)
jedi >=0.17.2;<0.19.0                :  0.18.1 (OK)
jellyfish >=0.7                      :  0.9.0 (OK)
jsonschema >=3.2.0                   :  4.4.0 (OK)
keyring >=17.0.0                     :  23.5.0 (OK)
nbconvert >=4.0                      :  6.4.5 (OK)
numpydoc >=0.6.0                     :  1.2.1 (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.11.2 (OK)
pylint >=2.5.0                       :  2.13.3 (OK)
pyls_spyder >=0.4.0                  :  0.4.0 (OK)
pylsp >=1.4.1;<1.5.0                 :  1.4.1 (OK)
pylsp_black >=1.2.0                  :  1.2.0 (OK)
qdarkstyle >=3.0.2;<3.1.0            :  3.0.3 (OK)
qstylizer >=0.1.10                   :  0.2.1 (OK)
qtawesome >=1.0.2                    :  1.1.1 (OK)
qtconsole >=5.3.0;<5.4.0             :  5.3.0 (OK)
qtpy >=2.0.1                         :  2.0.1 (OK)
rtree >=0.9.7                        :  0.9.7 (OK)
setuptools >=49.6.0                  :  60.10.0 (OK)
sphinx >=0.6.6                       :  4.5.0 (OK)
spyder_kernels >=2.3.0;<2.4.0        :  2.3.0 (OK)
textdistance >=4.2.0                 :  4.2.2 (OK)
three_merge >=0.1.1                  :  0.1.1 (OK)
watchdog >=0.10.3                    :  2.1.7 (OK)
zmq >=17                             :  22.3.0 (OK)

# Optional:
cython >=0.21                        :  0.29.28 (OK)
matplotlib >=3.0.0                   :  3.5.1 (OK)
numpy >=1.7                          :  1.22.3 (OK)
pandas >=1.1.1                       :  1.4.1 (OK)
scipy >=0.17.0                       :  1.8.0 (OK)
sympy >=0.7.3                        :  1.10.1 (OK)

# Spyder plugins:
spyder_terminal.terminalplugin 1.2.2 :  1.2.2 (OK)
ccordoba12 commented 2 years ago

Hey @b-a0, thanks for reporting. I'm going to move this issue to the Spyder-terminal repo because that's where it needs to be solved:

https://github.com/spyder-ide/spyder-terminal

Please report any additional issues about it there.

sergiokapone commented 1 year ago

what is the status of this isuue? Are there advances? Printing is very slow in the terminal.

dzalf commented 1 year ago

what is the status of this isuue? Are there advances? Printing is very slow in the terminal.

Hi guys

+1 regarding the input lag in the terminal. Any updates?

I am using Spyder 5.4.5 with Python 3.12.0

raffaem commented 10 months ago

Any news on this?