PyCharm 2019.2 не показывает трассировку при исключении
Очень простой минимальный пример:
if __name__ == '__main__':
print("Still ok")
raise Exception("Dummy exception")
print("End of Program")
Я получаю этот вывод при запуске его в отладчике PyCharm 2019.2 с Python 3.6:
/usr/bin/python3.6 /home/[...]/pycharm-community-2019.2/helpers/pydev/pydevd.py --multiproc --qt-support=auto --client 127.0.0.1 --port 46850 --file /home/[...]/test_traceback.py
pydev debugger: process 18394 is connecting
Connected to pydev debugger (build 192.5728.105)
Still ok
На этом этапе отладчик прерывает поток выполнения, но никаких сообщений об отслеживании и исключениях не отображается в консоли отладчика. Если я запускаю тот же в PyCharm 2018.1, он показывает эти прямо при достижении точки останова.
Когда я нажимаю , я получаю желаемый результат, но затем я больше не могу запускать код в контексте отладки, потому что процесс заканчивается:
Traceback (most recent call last):
File "/home/[...]/pycharm-community-2019.2/helpers/pydev/pydevd.py", line 2060, in <module>
main()
File "/home/[...]/pycharm-community-2019.2/helpers/pydev/pydevd.py", line 2054, in main
globals = debugger.run(setup['file'], None, None, is_module)
File "/home/[...]/pycharm-community-2019.2/helpers/pydev/pydevd.py", line 1405, in run
return self._exec(is_module, entry_point_fn, module_name, file, globals, locals)
File "/home/[...]/pycharm-community-2019.2/helpers/pydev/pydevd.py", line 1412, in _exec
pydev_imports.execfile(file, globals, locals) # execute the script
File "/home/[...]/pycharm-community-2019.2/helpers/pydev/_pydev_imps/_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "/home/[...]/test_traceback.py", line 4, in <module>
raise Exception("Dummy exception")
Exception: Dummy exception
Process finished with exit code 1
Моя конфигурация точки останова:
Ответы
Ответ 1
Работает в PyCharm (Community) 2019.1.4:
Похоже, вы столкнулись с ошибкой (регрессии):
который влияет на v2019.2.1 и планируется исправить в v2019.2.3.
Чтобы обойти эту проблему, вам нужно:
- Дождитесь выпуска v2019.2.3 (или любого другого, имеющего исправление) и переключитесь на эту (возможно, захотите (периодически) проверку [JetBrains.Blog]: объявления о выпуске)
- Вернитесь к (предыдущей) версии, на которую не влияет ошибка (как я уже упоминал: 2019.1.4)
@EDIT0
Установлено (на 20190930) последнее исправление (v2019.2.3), и отслеживание присутствует в консоли PyCharm (поэтому ошибка исправлена).
Ответ 2
Вы проверяли свои пробелы в начале каждой исполняемой строки? однажды это произошло со мной было исправлено только после исправления пробелов.