Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Spyder 5.4.1 does not show completions when only a dot is written next to a module #20285

Closed
10 tasks
PhilipYip1988 opened this issue Dec 31, 2022 · 1 comment
Closed
10 tasks

Comments

@PhilipYip1988
Copy link

Issue Report Checklist

  • Searched the issues page for similar reports
  • Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
  • Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
  • Could not reproduce inside jupyter qtconsole (if console-related)
  • Tried basic troubleshooting (if a bug/error)
    • Restarted Spyder
    • Reset preferences with spyder --reset
    • Reinstalled the latest version of Anaconda
    • Tried the other applicable steps from the Troubleshooting Guide
  • Completed the Problem Description, Steps to Reproduce and Version sections below

Code Completion Issues

Spyder 5.4.1 is supposed to have improvements for code completion and help offered for scientific modules. There seems to be some issues brought about by this change. Code completions do not display after inputting a module name or alias followed by a . like they used to.

What steps reproduce the problem?

  1. type in import datetime as dt
  2. input dt.

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

The code completion should display as Spyder 5.4.0

spyder 5.4.0

The code completion for a standard module such as datetime is more or less instant. However there is generally a bit of a lag for a scientific library such as numpy, pandas, matplotlib and seaborn.

spyder 5.4.0

In Spyder 5.4.1 nothing displays:

spyder 5.4.1

The code completion now seems to prefer at least one character past the . in order to show suggestions.
Perhaps this is related to this letter setting which cannot be changed to 0:

spyder 5.4.1

If the following is input:

import datetime as dt
dt.a

There is no datetime identifier beginning with a. Instead it appears that some builtins identifiers display:

spyder 5.4.1

This differs from the identifiers displayed in the console:

Spyder 5.4.1

Similar behaviour is observed for a scientific library in that at least one character is required for code completion results to display:

spyder 5.4.1

Paste Traceback/Error Below (if applicable)

PASTE TRACEBACK HERE

Versions

  • Spyder version: 5.4.1
  • Python version: Python 3.10.8 64-bit
  • Qt version: Qt 5.15.6
  • PyQt version: PyQt5 5.15.7
  • Operating System name/version: Linux 6.0.15-300.fc37.x86_64 (Fedora 37)

Dependencies

# Mandatory:
atomicwrites >=1.2.0          :  1.4.1 (OK)
chardet >=2.0.0               :  5.1.0 (OK)
cloudpickle >=0.5.0           :  2.2.0 (OK)
cookiecutter >=1.6.0          :  2.1.1 (OK)
diff_match_patch >=20181111   :  20200713 (OK)
intervaltree >=3.0.2          :  3.0.2 (OK)
IPython >=7.31.1;<9.0.0       :  8.7.0 (OK)
jedi >=0.17.2;<0.19.0         :  0.18.2 (OK)
jellyfish >=0.7               :  0.9.0 (OK)
jsonschema >=3.2.0            :  4.17.3 (OK)
keyring >=17.0.0              :  23.13.1 (OK)
nbconvert >=4.0               :  7.2.7 (OK)
numpydoc >=0.6.0              :  1.5.0 (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.4 (OK)
pygments >=2.0                :  2.13.0 (OK)
pylint >=2.5.0;<3.0           :  2.15.9 (OK)
pylint_venv >=2.1.1           :  2.3.0 (OK)
pyls_spyder >=0.4.0           :  0.4.0 (OK)
pylsp >=1.7.0;<1.8.0          :  1.7.0 (OK)
pylsp_black >=1.2.0           :  1.2.1 (OK)
qdarkstyle >=3.0.2;<3.1.0     :  3.0.3 (OK)
qstylizer >=0.2.2             :  0.2.2 (OK)
qtawesome >=1.2.1             :  1.2.2 (OK)
qtconsole >=5.4.0;<5.5.0      :  5.4.0 (OK)
qtpy >=2.1.0                  :  2.3.0 (OK)
rtree >=0.9.7                 :  1.0.1 (OK)
setuptools >=49.6.0           :  65.6.3 (OK)
sphinx >=0.6.6                :  6.0.0 (OK)
spyder_kernels >=2.4.1;<2.5.0 :  2.4.1 (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)
xdg >=0.26                    :  0.28 (OK)
zmq >=22.1.0                  :  24.0.1 (OK)

# Optional:
cython >=0.21                 :  0.29.32 (OK)
matplotlib >=3.0.0            :  3.6.2 (OK)
numpy >=1.7                   :  1.24.1 (OK)
pandas >=1.1.1                :  1.5.2 (OK)
scipy >=0.17.0                :  1.9.3 (OK)
sympy >=0.7.3                 :  1.11.1 (OK)

The same behaviour is observed on a Windows 11 PC using the standalone Spyder 5.4.1 installer.

@ccordoba12 ccordoba12 changed the title Spyder 5.4.1 Code Completion Issues Spyder 5.4.1 does not show completions after a dot is written next to a module Dec 31, 2022
@ccordoba12
Copy link
Member

Hey @PhilipYip1988, thanks for reporting. I also noticed this regression after we released 5.4.1. We'll fix it in our next version (5.4.2), to be released in February.

@ccordoba12 ccordoba12 self-assigned this Dec 31, 2022
@ccordoba12 ccordoba12 added this to the v5.4.2 milestone Dec 31, 2022
@ccordoba12 ccordoba12 changed the title Spyder 5.4.1 does not show completions after a dot is written next to a module Spyder 5.4.1 does not show completions when only a dot is written next to a module Dec 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants