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

python 3.11 debugpy error messages #1198

Closed
mlucool opened this issue Jan 16, 2024 · 3 comments · Fixed by #1213
Closed

python 3.11 debugpy error messages #1198

mlucool opened this issue Jan 16, 2024 · 3 comments · Fixed by #1213

Comments

@mlucool
Copy link
Contributor

mlucool commented Jan 16, 2024

Hi,

Using python 3.11 we see the following error:

$ python -m ipykernel install --name mykernel --user
0.00s - Debugger warning: It seems that frozen modules are being used, which may
0.00s - make the debugger miss breakpoints. Please pass -Xfrozen_modules=off
0.00s - to python to disable frozen modules.
0.00s - Note: Debugging will proceed. Set PYDEVD_DISABLE_FILE_VALIDATION=1 to disable this validation.
Installed kernelspec mykernel in /u/myuser/.local/share/jupyter/kernels/mykernel

This comes form

from debugpy.server import api
.

This was also posted on stackoverflow here: https://stackoverflow.com/questions/75114841/debugger-warning-from-ipython-frozen-modules

Can we fix ipykernel to only show this message when it's applicable (i.e. when trying to debug)?

@krassowski
Copy link
Member

Thank you for opening this issue! This was previously reported a few times on Jupyter Discourse and it is really confusing for users (who sometimes mis-attribute other issues to this warning as it is common and easy to blame).

In particular there is some relevant discussion in https://discourse.jupyter.org/t/debugger-warning-it-seems-that-frozen-modules-are-being-used-python-3-11-0/16544

Can we fix ipykernel to only show this message when it's applicable (i.e. when trying to debug)?

ipykernel imports debugpy to check if it is available; this is hard to check without import, because the import can error out even if debugpy is installed see #986.

I previously suggested always appending -Xfrozen_modules=off on a higher level (on ipykernel startup). It is unclear to me if there is any downside to doing that, maybe we should give it a try?

@mlucool
Copy link
Contributor Author

mlucool commented Jan 16, 2024

I previously suggested always appending -Xfrozen_modules=off on a higher level (on ipykernel startup). It is unclear to me if there is any downside to doing that, maybe we should give it a try?

Seems like a better default, but maybe have some way to opt-out in case it does break someone's workflow?

@krassowski
Copy link
Member

Yes, it looks that we could add this in the default kernelspec and make it configurable by having an argument for kernelspec installation app. If it breaks anything we can quickly revert and switch the default.

We should condition adding this argument on ipykernel being run in CPython rather than any other Python implementation which might not support this argument.

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

Successfully merging a pull request may close this issue.

2 participants