pdbp
pdbp (Pdb+): A drop-in replacement for pdb and pdbpp.
What it is and what it does
pdbp is a drop-in replacement for Python's built-in pdb debugger that adds syntax highlighting, tab completion, and sticky mode (showing multiple lines of code context). It works across Windows, macOS, and Linux, and can be activated by importing it in your project, setting an environment variable, or calling pdbp.set_trace() directly. The package depends on pygments for syntax highlighting, colorama for cross-platform colored output, and tabcompleter for command-line completion.
The main value is in the user experience: sticky mode is enabled by default and shows you more context as you step through code, colors make it easier to read output, and tab completion speeds up typing commands. You can customize colors and behavior through pdb.DefaultConfig settings. The package is maintained by the SeleniumBase team and is used in production by other packages.
Use it for:
- Debug Python scripts interactively with colored syntax highlighting and multi-line code context visible at each breakpoint.
- Use tab completion to quickly type debugger commands and variable names without memorizing exact syntax.
- Trigger post-mortem debugging after test failures in pytest with --pdb flag to inspect the failure state.
- Customize debugger appearance (line colors, truncation) to match your terminal theme or preferences.
- Replace pdb globally in an existing project by importing pdbp in __init__.py without changing breakpoint code.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
pdbp is an enhanced Python debugger that replaces the standard pdb with colored output, tab completion, and sticky mode to show multiple lines of code during debugging.
Yes. pdbp is stable (Production/Stable status), permissively licensed, has no known vulnerabilities, and adds real quality-of-life improvements to Python debugging with minimal install friction. The aging maintenance status (212 days since last release) is not a blocker for a mature debugger tool, but monitor the repository if you rely on it for critical work. Suitable for developers who spend significant time in the debugger.
Install
pdbp on PyPI
pip
pip install pdbpuv
uv add pdbppoetry
poetry add pdbpInstalling pdbp
Before you install
Low install friction with a pure Python wheel and three lightweight runtime dependencies (pygments, tabcompleter, colorama). Maintenance status is aging—last release was 212 days ago—but the repository remains active with recent commits and no archived status.
License in practice
Licensed under PSF (permissive), so you can use it freely in commercial and open-source projects without restriction.
Quickstart
pip install pdbp
# In your project's __init__.py:
import pdbp
# Or set environment variable:
# PYTHONBREAKPOINT=pdbp.set_trace
# Then trigger with:
# python -m pdbp script.py
# or pytest --pdb
Requires Python 3.8 or later; works on CPython and PyPy.
Verify before relying
- Whether tab completion and sticky mode work equally well across all supported Python versions and platforms.
- Performance impact compared to standard pdb when debugging large or long-running applications.
- Compatibility with IDE debuggers and remote debugging scenarios.
Package facts
| License | PSF (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — pygments, tabcompleter, colorama |
| Maintenance | aging — 212 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 870,987/month — #4,846 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pdbp-1.8.2-py3-none-any.whl
Keywords: pdb, debugger, tab, color, completion
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
pdbpppdbpp is a drop-in replacement for Python's…
permissive · top 5,000 on PyPI
pdbrpdbr enhances Python's built-in debugger with…
unclear · top 5,000 on PyPI
pudbPuDB is a full-screen console-based visual…
permissive · top 5,000 on PyPI
web-pdbWeb-PDB provides a web browser interface for…
permissive · top 15,000 on PyPI
ipdbipdb is an IPython-enabled debugger that…
permissive · top 5,000 on PyPI
flake8-debuggerA flake8 plugin that detects debugger…
permissive · top 15,000 on PyPI
tabcompleterAdds Tab-key autocompletion and command…
permissive · top 5,000 on PyPI
pyxdiapyxdia extracts program metadata and symbol…
unclear · top 15,000 on PyPI
rpdbrpdb is a remote debugger that wraps Python's…
unclear · top 15,000 on PyPI
debugpydebugpy is a Debug Adapter Protocol…
permissive · top 1,000 on PyPI