NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #4965 most downloaded on PyPI
pdbp (Pdb+): A drop-in replacement for pdb and pdbpp.
Last release 18 days ago
16 Sep 2026
Release timing varies
gaps range from 1 weeks to 10 months
Nearly every release is documented
notes for 33 of 36 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
36 releases · first in 2022
One column per quarter.
Prevent the curframe_locals warning
curframe_locals warningFull Changelog: v1.8.2...v1.8.3
1.8.3 - Prevent the curframe_locals warning Latest
Latest
Compare
Repair stack-trace frame indexing
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.8.1...v1.8.2
1.8.2 - Repair stack-trace frame indexing
Compare
Support Pdb's "recursive debugger" feature --> This resolves #66
Full Changelog: v1.8.0...v1.8.1
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.8.0...v1.8.1
Add support for Python 3.14 --> This resolves #80
Full Changelog: v1.7.1...v1.8.0
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.7.1...v1.8.0
Support pytest debugger updates
Full Changelog: v1.7.0...v1.7.1
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.7.0...v1.7.1
1.7.1 - Support pytest debugger updates
Compare
Fix issue with get_terminal_size() on Windows
Various updates and fixes by @mdmintz in #73
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.6.0...v1.6.1
A refresh and a drop by @mdmintz in #70
Fix non zip-safe loading of stdlib pdb
PyInstaller compatibilityFull Changelog: v1.5.3...v1.5.4
PyInstaller compatibilityFull Changelog: https://github.com/mdmintz/pdbp/compare/v1.5.3...v1.5.4
Update License classifiers Update License classifiers Refresh Python dependencies Full Changelog : v1.5.2...v1.5.3
Full Changelog: v1.5.2...v1.5.3
Update LICENSE by @mdmintz in https://github.com/mdmintz/pdbp/pull/67
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.5.1...v1.5.2
Shorten the path displayed --> This resolves https://github.com/mdmintz/pdbp/issues/62
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.5.0...v1.5.1
Refresh dependencies and drop Python 3.6 support --> This resolves https://github.com/mdmintz/pdbp/issues/54
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.4.6...v1.5.0
Improve Windows Prompt compatibility --> This resolves https://github.com/mdmintz/pdbp/issues/51 --> This expands on improvements made in the previous
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.4.5...v1.4.6
This resolves https://github.com/mdmintz/pdbp/issues/49
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.4.4...v1.4.5
Refresh Python dependencies by @mdmintz in https://github.com/mdmintz/pdbp/pull/48
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.4.3...v1.4.4
Fix an issue where lines with special characters could get truncated.
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.4.2...v1.4.3
This resolves https://github.com/mdmintz/pdbp/issues/43
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.4.1...v1.4.2
Refactor the code --> https://github.com/mdmintz/pdbp/commit/74a91e0d426c4610d773c043c79ab9c6ca48a168
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.4.0...v1.4.1
Add syntax-highlighting to non-sticky mode --> https://github.com/mdmintz/pdbp/commit/bb5d767ff47f19d272322ef2356a77fb35e12de9 --> This resolves https
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.3.1...v1.4.0
Highlight the current stack frame --> https://github.com/mdmintz/pdbp/commit/663dd781252c8cd3969913acdfaf82480a433fdb --> This resolves https://github
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.3.0...v1.3.1
Support python -m pdbp : --> https://github.com/mdmintz/pdbp/commit/dfcd19b7751708f23e145f66fc710e51e2778466 --> This resolves https://github.com/mdmi
python -m pdbp <script.py>:
--> https://github.com/mdmintz/pdbp/commit/dfcd19b7751708f23e145f66fc710e51e2778466
--> This resolves https://github.com/mdmintz/pdbp/issues/20truncate long lines or word-wrap them:
--> https://github.com/mdmintz/pdbp/commit/2cb3f9dc28846585c1cc6bd70eb861ded02ed242
--> This resolves https://github.com/mdmintz/pdbp/issues/27where / w command should disable sticky mode first:
--> This resolves https://github.com/mdmintz/pdbp/issues/24edit command:
--> This resolves https://github.com/mdmintz/pdbp/issues/26list / l command:
--> This resolves https://github.com/mdmintz/pdbp/issues/30jump LINENO command:
--> This resolves https://github.com/mdmintz/pdbp/issues/22inspect <VAR>:
--> This resolves https://github.com/mdmintz/pdbp/issues/23pygments release the new minimum pygments version:
--> This resolves https://github.com/mdmintz/pdbp/issues/29Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.2.8...v1.3.0
This resolves https://github.com/mdmintz/pdbp/issues/18
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.2.7...v1.2.8
This resolves https://github.com/mdmintz/pdbp/issues/16
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.2.6...v1.2.7
This resolves https://github.com/mdmintz/pdbp/issues/14
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.2.5...v1.2.6
Refresh tabcompleter dependency. --> https://github.com/mdmintz/pdbp/commit/66a3b6fd7d8af90bb88b1b6f90b698b139d462b0
tabcompleter dependency.
--> https://github.com/mdmintz/pdbp/commit/66a3b6fd7d8af90bb88b1b6f90b698b139d462b0Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.2.4...v1.2.5
Update colors by @mdmintz in https://github.com/mdmintz/pdbp/pull/12
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.2.3...v1.2.4
Change default colors based on status
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.2.2...v1.2.3
Update default color scheme for better contrast --> Use more yellow, which looks great on black or white backgrounds.
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.2.1...v1.2.2
Implement the Style Guide --> This updates colors, layout, designs, and basic flows. --> This resolves https://github.com/mdmintz/pdbp/issues/7
<img width="600" alt="Pdb+" src="https://user-images.githubusercontent.com/6788579/204993523-16709ab7-cbdc-4096-9fc0-730b9eb2d91d.png">
<img width="600" alt="Pdb+" src="https://user-images.githubusercontent.com/6788579/204993553-7e053f77-2784-4060-b1a9-2e8d52f76613.png">
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.2.0...v1.2.1
Fix Non-Sticky Mode --> This resolves https://github.com/mdmintz/pdbp/issues/5
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.1.0...v1.2.0
Add better support for special, double-width, foreign characters --> This resolves https://github.com/mdmintz/pdbp/issues/2
Full Changelog: https://github.com/mdmintz/pdbp/compare/v1.0.0...v1.1.0
[pdbp (Pdb+)](https://github.com/mdmintz/pdbp) is a drop-in replacement for pdb that improves on the (unmaintained) pdbpp (Pdb++) package.
<img width="550" alt="Pdb+" src="https://user-images.githubusercontent.com/6788579/204408641-9c221bb6-578b-4b0f-807b-8454844e42e8.png">
pdbp (Pdb+) is a drop-in replacement for pdb that improves on the (unmaintained) pdbpp (Pdb++) package.
pdbp (Pdb+) makes Python debugging easier (and a lot more fun).
pip install pdbp
Then add import pdbp to an __init__.py of your project, which will automatically make Pdb+ the default debugger at breakpoints:
import pdbp
If using flake8 for code-linting, you may want to add # noqa to that line:
import pdbp # noqa
To trigger a breakpoint in your code with pytest, add --trace (to start tests with a breakpoint) or --pdb (to trigger a breakpoint if a test fails).
pdbp (Pdb+) fixes pdbpp (pdb++) so that it works in all environments. It also includes other bug-fixes. "Sticky" mode is the default option, which shows multiple lines of code while letting you see where you're going (n + Enter).
If you somehow reset pdb to Python's built-in version, you can always replace pdb with pdbp again as the default debugger by running this:
import pdb
import pdbp
for key in pdbp.__dict__.keys():
pdb.__dict__[key] = pdbp.__dict__[key]
Here's how to customize pdbp/pdb options if you don't like the default settings: (<i>Shown below are the default settings.</i>)
import pdb
if hasattr(pdb, "DefaultConfig"):
pdb.DefaultConfig.filename_color = pdb.Color.blue
pdb.DefaultConfig.line_number_color = pdb.Color.turquoise
pdb.DefaultConfig.show_hidden_frames_count = False
pdb.DefaultConfig.disable_pytest_capturing = True
pdb.DefaultConfig.enable_hidden_frames = False
pdb.DefaultConfig.truncate_long_lines = True
pdb.DefaultConfig.sticky_by_default = True
You can also trigger Pdb+ activation like this:
import pdbp
pdbp.set_trace()
<img width="550" alt="Pdb+ Commands" src="https://user-images.githubusercontent.com/6788579/204386211-5fc44f73-e29f-4e87-b0ca-bb8ea69217af.png">
Pdb+ is used by packages such as seleniumbase:
<img width="550" alt="Pdb+" src="https://user-images.githubusercontent.com/6788579/204359676-137cf541-12ef-469a-9d29-99709608ede0.png">
(Pdb+ is maintained by the SeleniumBase Dev Team)
Full Changelog: https://github.com/mdmintz/pdbp/commits/v1.0.0
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →