python / python/cpython

Add ignore_module/unignore_module commands to pdb

Open
#139,721 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

stdlib type-feature
Dominant language
Python
Stars
77.2k
Forks
35.9k
PR merge metrics
PR metrics pending

Description

Feature or enhancement

Proposal:

Add two new commands to the Python debugger (pdb) to ignore and unignore specific modules when navigating frames.
Those commands allows to use wildcards to ignore submodules too.

  • ignore_module [module_name] - Add modules to skip during debugging
  • unignore_module [module_name] - Remove modules from the skip list

When debugging applications we often need to step through deep stack traces from third party libraries that are hard to navigate and makes focusing on our code harder, requiring to manually go up or down to find our code.

There is a similar implementation on ipython https://github.com/ipython/ipython/pull/14973

Has this already been discussed elsewhere?

This is a minor feature, which does not need previous discussion elsewhere

Links to previous discussion of this feature:

No response

Linked PRs
  • gh-139724

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing pdb's command handling and the related IPython implementation linked in the proposal, then check gh-139724 because work is already linked there. Done means pdb supports ignore_module and unignore_module, including wildcard module matching, and the behavior is covered by relevant tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
devtools
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.