alexmojaki / birdseye

Graphical Python debugger which lets you easily view the values of all evaluated expressions
https://birdseye.readthedocs.io
MIT License
1.65k stars 71 forks source link

Schema out of date #73

Closed Almenon closed 5 years ago

Almenon commented 5 years ago

I was about to start on https://github.com/Almenon/birdseye-vscode/issues/23 and I ran into this issue:

Traceback (most recent call last):
  File "C:\Program Files\Python36\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "C:\Program Files\Python36\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\almenon\AppData\Roaming\Python\Python36\site-packages\birdseye\__main__.py", line 5, in <module>
    from birdseye.server import main
  File "C:\Users\almenon\AppData\Roaming\Python\Python36\site-packages\birdseye\server.py", line 37, in <module>
    db = Database()
  File "C:\Users\almenon\AppData\Roaming\Python\Python36\site-packages\birdseye\db.py", line 172, in __init__
    raise ValueError('The birdseye database schema is out of date. '
ValueError: The birdseye database schema is out of date. Run "python -m birdseye.clear_db" to delete the existing tables

The message makes it clear what needs to be done to resolve the issue but what I'm wondering is why make the user run that theirself? Seems simpler to just run it automatically and show the user a info message that the tables were cleared.

alexmojaki commented 5 years ago

Because they may have data in that database that they don't want to lose. At least this way they can continue to view it in an older version if they want.

Almenon commented 5 years ago

I don't see why anyone would have any important data stored in the database, but I guess maybe it's possible? Closing.