jupyterlab / debugger

A visual debugger for Jupyter notebooks, consoles, and source files
BSD 3-Clause "New" or "Revised" License
561 stars 43 forks source link

Step into installed library code #576

Closed jnarula5 closed 3 years ago

jnarula5 commented 3 years ago

Hi,

I tried the xpython debugger functionality to step into breakpoint from a function call in notebook to function definition in .py file. This worked when the .py file was in the same folder as the notebook but did not work when the python code was installed as a library.

Can you please guide on how to do this?

Thanks, JN

jtpio commented 3 years ago

Thanks @jnarula5 for reporting.

It sounds similar to this issue? https://github.com/jupyterlab/debugger/issues/263

Or is your use case slightly different?

jnarula5 commented 3 years ago

It is very similar.

Does it make a difference if I have the code for some libraries checked out into a folder in addition to having it installed (py files under site-packages)? Is it possible to point the debugger to use source code from folders rather than going to site-packages?

Thanks, Jaspreet

jtpio commented 3 years ago

Does it make a difference if I have the code for some libraries checked out into a folder in addition to having it installed (py files under site-packages)?

Yes, this is for example what is mentioned in this comment: https://github.com/jupyterlab/debugger/issues/263#issue-535583455

Both VS Code and xeus-python use the same backend for debugging (debugpy). In VS Code users must specify justMyCode: false to step in library code. We would need to have something similar expose to the user of the debugger frontend, so that it can be passed to xeus-python.

jtpio commented 3 years ago

Let's close this issue and move the conversation to #263 so it's all in one place (feel free to comment there too).

jnarula5 commented 3 years ago

Hi Jeremy,

Thank for your prompt responses. Can you please point me to the code where this variable needs to be set?

Thanks, Jaspreet