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

Error when opening files due to a corrupted config file #20885

Closed
8 of 9 tasks
AngelaRemolina opened this issue May 1, 2023 · 0 comments · Fixed by #20886
Closed
8 of 9 tasks

Error when opening files due to a corrupted config file #20885

AngelaRemolina opened this issue May 1, 2023 · 0 comments · Fixed by #20886

Comments

@AngelaRemolina
Copy link
Contributor

AngelaRemolina commented May 1, 2023

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)
  • 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

Problem Description

What steps reproduce the problem?

  1. Clicked on a file from the project list to open it
  2. The file opens but the issue reporter window pops up

bug_opening_file

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

Following what the error message said I realized that the problem occurred when doing get_conf('bookmarks', default={}), because it returned None. Maybe my spyder.ini file got somehow corrupted and that section was not found.
image

So then, when the load_bookmarks function is called, slots is None and it results in the error saying NoneType has no attribute keys
image

To fix it, I clicked on the reset to defaults option inside the preferences page. That generated a new config file and the error stoped occuring.

Paste Traceback/Error Below (if applicable)

Traceback (most recent call last):
  File "c:\users\angela\spyder\spyder\plugins\editor\plugin.py", line 2105, in save_bookmarks
    new_slots = update_bookmarks(filename, bookmarks, old_slots)
  File "c:\users\angela\spyder\spyder\plugins\editor\utils\bookmarks.py", line 55, in update_bookmarks
    updated_slots = load_bookmarks_without_file(filename, old_slots)
  File "c:\users\angela\spyder\spyder\plugins\editor\utils\bookmarks.py", line 30, in load_bookmarks_without_file
    bookmarks = _load_all_bookmarks(slots)
  File "c:\users\angela\spyder\spyder\plugins\editor\utils\bookmarks.py", line 16, in _load_all_bookmarks
    for slot_num in list(slots.keys()):
AttributeError: 'NoneType' object has no attribute 'keys'
Traceback (most recent call last):
  File "c:\users\angela\spyder\spyder\app\mainwindow.py", line 1193, in open_file
    editor.load(fname)
  File "c:\users\angela\spyder\spyder\plugins\editor\plugin.py", line 2459, in load
    current_editor.set_bookmarks(load_bookmarks(filename, slots))
  File "c:\users\angela\spyder\spyder\plugins\editor\utils\bookmarks.py", line 24, in load_bookmarks
    bookmarks = _load_all_bookmarks(slots)
  File "c:\users\angela\spyder\spyder\plugins\editor\utils\bookmarks.py", line 16, in _load_all_bookmarks
    for slot_num in list(slots.keys()):
AttributeError: 'NoneType' object has no attribute 'keys'

Versions

  • Spyder version: 6.0.0.dev0 90ce9ee (conda)
  • Python version: 3.9.16 64-bit
  • Qt version: 5.15.6
  • PyQt5 version: 5.15.7
  • Operating System: Windows-10-10.0.19045-SP0

Dependencies

# Mandatory:
atomicwrites >=1.2.0                             :  1.4.1 (OK)
chardet >=2.0.0                                  :  5.1.0 (OK)
cloudpickle >=0.5.0                              :  2.2.1 (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.8.0,!=8.9.0,!=8.10.0 :  8.13.1 (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.3.1 (OK)
numpydoc >=0.6.0                                 :  1.5.0 (OK)
paramiko >=2.4.0                                 :  3.1.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.5 (OK)
pygments >=2.0                                   :  2.15.1 (OK)
pylint >=2.5.0,<3.0                              :  2.17.3 (OK)
pylint_venv >=2.1.1                              :  3.0.1 (OK)
pyls_spyder >=0.4.0                              :  0.4.0 (OK)
pylsp >=1.7.2,<1.8.0                             :  1.7.2 (OK)
pylsp_black >=1.2.0                              :  1.2.1 (OK)
qdarkstyle >=3.0.2,<3.2.0                        :  3.1 (OK)
qstylizer >=0.2.2                                :  0.2.2 (OK)
qtawesome >=1.2.1                                :  1.2.3 (OK)
qtconsole >=5.4.2,<5.5.0                         :  5.5.0.dev0 (OK)
qtpy >=2.1.0                                     :  2.3.1 (OK)
rtree >=0.9.7                                    :  1.0.1 (OK)
setuptools >=49.6.0                              :  67.7.2 (OK)
sphinx >=0.6.6                                   :  7.0.0 (OK)
spyder_kernels >=2.4.3,<2.5.0                    :  3.0.0.dev0 (OK)
textdistance >=4.2.0                             :  4.5.0 (OK)
three_merge >=0.1.1                              :  0.1.1 (OK)
watchdog >=0.10.3                                :  3.0.0 (OK)
zmq >=22.1.0                                     :  25.0.2 (OK)

# Optional:
cython >=0.21                                    :  0.29.34 (OK)
matplotlib >=3.0.0                               :  3.7.1 (OK)
numpy >=1.7                                      :  1.24.3 (OK)
pandas >=1.1.1                                   :  2.0.1 (OK)
scipy >=0.17.0                                   :  1.10.1 (OK)
sympy >=0.7.3                                    :  1.11.1 (OK)

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