spyder-ide / spyder

Official repository for Spyder - The Scientific Python Development Environment
https://www.spyder-ide.org
MIT License
8.25k stars 1.6k forks source link

Nested Tab autocompletion weird bug #22166

Closed nomagic closed 3 weeks ago

nomagic commented 3 months ago

Issue Report Checklist

Problem Description

When in the ipython console, and attempting to "autocomplete" within the parentheses of a function call, will indeed bring up a list of suitable attributes/functions, but it erases what has been typed within the parentheses?

What steps reproduce the problem?

  1. within ipython console
  2. import datetime
  3. datetime.date(datetime.dat TAB

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

Expected is that I would see the popup-completion box to offer appropriate suggestions (it does), but it does so at the "cost" of replacing datetime.date(datetime.dat... with datetime.date(.
extremely annoying

I tried the same in standalone ipython, and couldn't reproduce the bug, so doesn't seem to be ipython related and this is a new issue, I've been using spyder for years and I can't remember that ever happening before

Paste Traceback/Error Below (if applicable)


None

Versions

Dependencies

# Mandatory:
atomicwrites >=1.2.0             :  1.4.0 (OK)
chardet >=2.0.0                  :  5.2.0 (OK)
cloudpickle >=0.5.0              :  3.0.0 (OK)
cookiecutter >=1.6.0             :  2.3.0 (OK)
diff_match_patch >=20181111      :  20200713 (OK)
intervaltree >=3.0.2             :  3.0.2 (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.3 (OK)
jsonschema >=3.2.0               :  4.19.2 (OK)
keyring >=17.0.0                 :  24.2.0 (OK)
nbconvert >=4.0                  :  7.16.1 (OK)
numpydoc >=0.6.0                 :  1.3 (OK)
paramiko >=2.4.0                 :  2.8.0 (OK)
parso >=0.7.0,<0.9.0             :  0.8.4 (OK)
pexpect >=4.4.0                  :  4.8.0 (OK)
pickleshare >=0.4                :  0.7.5 (OK)
psutil >=5.3                     :  5.9.5 (OK)
pygments >=2.0                   :  2.16.1 (OK)
pylint >=3.1,<4                  :  3.1.0 (OK)
pylint_venv >=3.0.2              :  3.0.3 (OK)
pyls_spyder >=0.4.0              :  0.4.0 (OK)
pylsp >=1.11.0,<1.12.0           :  1.11.0 (OK)
pylsp_black >=2.0.0,<3.0.0       :  2.0.0 (OK)
qdarkstyle >=3.2.0,<3.3.0        :  3.2 (OK)
qstylizer >=0.2.2                :  0.2.2 (OK)
qtawesome >=1.3.1,<1.4.0         :  1.3.1 (OK)
qtconsole >=5.5.1,<5.6.0         :  5.5.2 (OK)
qtpy >=2.1.0                     :  2.4.1 (OK)
rtree >=0.9.7                    :  1.1.0 (OK)
setuptools >=49.6.0              :  69.2.0 (OK)
sphinx >=0.6.6                   :  7.2.6 (OK)
spyder_kernels >=2.5.2,<2.6.0    :  2.5.2 (OK)
textdistance >=4.2.0             :  4.5.0 (OK)
three_merge >=0.1.1              :  0.1.1 (OK)
watchdog >=0.10.3                :  2.2.0 (OK)
zmq >=24.0.0                     :  25.1.2 (OK)

# Optional:
cython >=0.21                    :  3.0.10 (OK)
matplotlib >=3.0.0               :  3.8.3 (OK)
numpy >=1.7                      :  1.26.4 (OK)
pandas >=1.1.1                   :  2.2.2 (OK)
scipy >=0.17.0                   :  1.12.0 (OK)
sympy >=0.7.3                    :  1.12 (OK)
dalthviz commented 2 months ago

Hi @nomagic thank you for the report! Checking, maybe this is related with #21803? Let us know!

nomagic commented 3 weeks ago

yes, this looks like a duplicate of #21803

dalthviz commented 3 weeks ago

Closing as a duplicate of #21803

ccordoba12 commented 3 weeks ago

This should be solved in IPython 8.27, released a couple of weeks ago.