Skip to content

Unexpected configuration merging behavior for justMyCode debugging option #749

@tboddyspargo

Description

@tboddyspargo

In #139, many people have reported being unable to use justMyCode as expected. While there is a workaround in the linked comment, I believe it ultimately stems from the global debugpy.debugJustMyCode overwriting the launch configuration option, which I think is unexpected.

I had always been relying on the launch-configuration-level setting of justMyCode being set to false to be sufficient. Is the extension perhaps not merging the different levels of configs as expected and leading to the default debugpy.debugJustMyCode to trump the launch-configuration-level justMyCode when specified in .code-workspace files?

Originally posted by @tboddyspargo in #139

I wanted to repost this here in an effort to specifically focus on the question of configuration merging behavior.

I expect the repro to be something like:

  1. Specify a python special purpose file or test debug configuration (with "justMyCode": false) in the launch configuration of a .code-workspace file.
  2. Open that workspace and debug a python script using that launch configuration.
  3. Try to step into library code using the debugger
  4. Based on my previous experience and the other reports in Debugger: setting "justMyCode": false does not work in a Python 3.10 venv #139, I expect this to not go into library code during the "subsequent" debug sessions (frame skipped message?)

However I also think that, even without repro-ing, it may be reasonable to re-examine the config merging behavior of debugpy.debugJustMyCode with workspace-level launch configuration settings to definitively debug the root cause hypothesis here or confirm it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    triage-neededNeeds assignment to the proper sub-team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions