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 6 - %autoreload magic not loaded by default on Windows #22433

Closed
tlstevenson opened this issue Sep 4, 2024 · 2 comments · Fixed by #22438
Closed

Spyder 6 - %autoreload magic not loaded by default on Windows #22433

tlstevenson opened this issue Sep 4, 2024 · 2 comments · Fixed by #22438

Comments

@tlstevenson
Copy link

tlstevenson commented Sep 4, 2024

Description

What steps will reproduce the problem?

Functionality for my projects are distributed across multiple files that I import at the top of my files. When I make changes to those referenced files and then call code in a separate file that is using those changes, the new version of the file will not be used. The way around it seems to be clicking to debug the whole file (I'll set a breakpoint in my import statements so my data doesn't need to be loaded again) so that the referenced modules are reloaded, then running the relevant import statements for the changed files. This was not necessary in prior releases of Spyder, is this an intentional change of functionality or a bug? I would expect that if I make a change to any file, the next time I run a piece of code referencing that changed file, that the latest changes will be used. I have the UMR enabled, but that only seems to be applying when I try to debug the whole file instead of just rerunning a cell or line of code.

Versions

  • Spyder version: 6.0.0 (standalone)
  • Python version: 3.11.9 64-bit
  • Qt version: 5.15.8
  • PyQt5 version: 5.15.9
  • Operating System: Windows-10-10.0.22631-SP0

Dependencies

# Mandatory:
aiohttp >=3.9.3                  :  3.10.5 (OK)
asyncssh >=2.14.0,<3.0.0         :  2.17.0 (OK)
atomicwrites >=1.2.0             :  1.4.1 (OK)
chardet >=2.0.0                  :  5.2.0 (OK)
cloudpickle >=0.5.0              :  3.0.0 (OK)
cookiecutter >=1.6.0             :  2.6.0 (OK)
diff_match_patch >=20181111      :  20230430 (OK)
github >=2.3.0                   :  2.4.0 (OK)
importlib_metadata >=4.6.0       :  8.4.0 (OK)
intervaltree >=3.0.2             :  3.1.0 (OK)
IPython >=8.13.0,<9.0.0,!=8.17.1 :  8.27.0 (OK)
jedi >=0.17.2,<0.20.0            :  0.19.1 (OK)
jellyfish >=0.7                  :  1.1.0 (OK)
jsonschema >=3.2.0               :  4.23.0 (OK)
keyring >=17.0.0                 :  25.3.0 (OK)
nbconvert >=4.0                  :  7.16.4 (OK)
numpydoc >=0.6.0                 :  1.8.0 (OK)
parso >=0.7.0,<0.9.0             :  0.8.4 (OK)
pexpect >=4.4.0                  :  4.9.0 (OK)
pickleshare >=0.4                :  0.7.5 (OK)
psutil >=5.3                     :  6.0.0 (OK)
pygments >=2.0                   :  2.18.0 (OK)
pylint >=3.1,<4                  :  3.2.7 (OK)
pylint_venv >=3.0.2              :  3.0.3 (OK)
pyls_spyder >=0.4.0              :  0.4.0 (OK)
pylsp >=1.12.0,<1.13.0           :  1.12.0 (OK)
pylsp_black >=2.0.0,<3.0.0       :  2.0.0 (OK)
pyuca >=1.2                      :  1.2 (OK)
qdarkstyle >=3.2.0,<3.3.0        :  3.2.3 (OK)
qstylizer >=0.2.2                :  0.2.3 (OK)
qtawesome >=1.3.1,<1.4.0         :  1.3.1 (OK)
qtconsole >=5.6.0,<5.7.0         :  5.6.0 (OK)
qtpy >=2.4.0                     :  2.4.1 (OK)
rtree >=0.9.7                    :  1.3.0 (OK)
setuptools >=49.6.0              :  73.0.1 (OK)
sphinx >=0.6.6                   :  8.0.2 (OK)
spyder_kernels >=3.0.0,<3.1.0    :  3.0.0 (OK)
superqt >=0.6.2,<1.0.0           :  0.6.7 (OK)
textdistance >=4.2.0             :  4.6.2 (OK)
three_merge >=0.1.1              :  0.1.1 (OK)
watchdog >=0.10.3                :  5.0.1 (OK)
yarl >=1.9.4                     :  1.9.7 (OK)
zmq >=24.0.0                     :  26.2.0 (OK)

# Optional:
cython >=0.21                    :  3.0.11 (OK)
matplotlib >=3.0.0               :  3.9.2 (OK)
numpy >=1.7                      :  2.1.0 (OK)
pandas >=1.1.1                   :  2.2.2 (OK)
scipy >=0.17.0                   :  1.14.1 (OK)
sympy >=0.7.3                    :  1.13.2 (OK)
@tlstevenson
Copy link
Author

This functionality returns when enabling the IPython autoreload setting which maybe seems to have been disabled in this new version of Spyder based on previous documentation:
image

Perhaps it would be good to either notify people of this change or include it in the new documentation (It is currently not mentioned).

@ccordoba12 ccordoba12 changed the title Spyder 6 - Running cells or lines of code will not use latest changes in imported module files Spyder 6 - %autoreload magic not loaded by default on Windows Sep 5, 2024
@ccordoba12 ccordoba12 added this to the v6.0.1 milestone Sep 5, 2024
@ccordoba12
Copy link
Member

Hey @tlstevenson, thanks for reporting. You said:

This functionality returns when enabling the IPython autoreload setting which maybe seems to have been disabled in this new version of Spyder

Thanks for finding the cause of the problem! We inadvertently disabled that magic on Windows, but we'll fix that in 6.0.1, to be released in a couple of weeks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants