-
-
Notifications
You must be signed in to change notification settings - Fork 368
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
Make ipykernel work without debugpy #767
Conversation
debugpy is an optional dependency because only frontends with debugging support (Jupyter lab) can really use its features. Fixes: ipython#712
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thank you! I'll leave this open for a day in case another maintainer has input
I'm testing this also in Fedora where 25 out of 28 packages built fine with the patched version without debugpy. The three packages fail to build for different reasons. |
Thanks! |
Should In particular if debugpy is kept a mandatory dependency, it is considered as bad practice to have a set of packages breaking |
That's a good question for maintainers. I can imagine that it is an extra dependency and then jupyter notebook can depend on ipykernel without debugby and jupyterlab can depend on something like ipykernel[debug] because as far as I understand it, Jupyter lab is the only frontend with implemented debugging. |
This approach might not work in the current state of things. JupyterLab does not depend on ipykernel directly, it depends on I would also like to say that jupyterlab (and notebook) should ideally not depend on ipykernel, it's a language agnostic tool after all. It should also not depend on notebook, but that's a different problem. |
No, it shouldn't be removed in this repo. If a downstream packager wants to split this dependency, it may, but at the same time, it should also make sure to patch the package metadata when doing so to remove the dependency and satisfy |
And that's exactly what we do in Fedora. Except |
debugpy is an optional dependency because only frontends with
debugging support (Jupyter lab) can really use its features.
closes #712
There is also one new test in the CI to check that all tests are passing when debugpy is not installed.