Python Debugging

Open-source Python projects categorized as Debugging

Top 23 Python Debugging Projects

  • mitmproxy

    An interactive TLS-capable intercepting HTTP proxy for penetration testers and software developers.

    Project mention: Deleting HTML elements from the router level? | reddit.com/r/selfhosted | 2023-01-21

    I'm pretty sure it was this one I used for my project. https://mitmproxy.org/

  • httpie

    🥧 HTTPie for Terminal — modern, user-friendly command-line HTTP client for the API era. JSON support, colors, sessions, downloads, plugins & more.

    Project mention: 🐘 PostgreSQL EoLs as a table ⏳ | dev.to | 2023-01-26

    ⛏️ httpie (or curl, ... or wget)

  • Sonar

    Write Clean Python Code. Always.. Sonar helps you commit clean code every time. With over 225 unique rules to find Python bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.

  • icecream

    🍦 Never use print() to debug again.

    Project mention: Let's do a war | reddit.com/r/ProgrammerHumor | 2022-12-29

    We also have ice cream

  • gef

    GEF (GDB Enhanced Features) - a modern experience for GDB with advanced debugging capabilities for exploit devs & reverse engineers on Linux

    Project mention: Any good and easy-to-use C debuggers? | reddit.com/r/C_Programming | 2023-01-12

    If you are in linux, I recomend none of them (haha) because you should get more used to GDB a little bit. You just need to install some good visualizers likes GEF, for example.

  • pwndbg

    Exploit Development and Reverse Engineering with GDB Made Easy

    Project mention: Need help installing pwndbg on Kali Linux | reddit.com/r/securityCTF | 2023-01-21
  • viztracer

    VizTracer is a low-overhead logging/debugging/profiling tool that can trace and visualize your python code execution.

    Project mention: GCC Profiler Internals | news.ycombinator.com | 2022-05-21

    Do not use bad instrumenting profilers. A good modern tracing-based instrumenting profiler provides so much more actionable information and insights into where problems are than a sampling profiler it is ridiculous.

    As a example consider viztracer [1] for Python. By using a aggregate visualizer such as a flame graph you can figure out what is taking the most time then you can use a tracing visualizer to figure out the exact call stacks and system execution and state that caused it. Not only that, a tracing visualizer lets you diagnose whole system performance and makes it trivial to identify 1 in 1000 anomalous execution patterns (with a 4k screen a anomalous execution pattern stands out like a 4 pixel dead spot). In addition you also get vastly less biased information for parallel execution and get easy insights into parallel execution slowdowns, interference, contention, and blocking behaviors.

    The only advantages highlighted in your video that still apply to a good instrumenting profiler are:

    1. Multi-language support.

    2. Performance counters (though that is solved by doing manual tracking after you know the hotspots and causes).

    3. Overhead (if you are using low sampling frequency). Even then a good tracing instrumentation implementation should only incur low double-digit percent overhead and maybe 100% overhead in truly pathological cases involving only small functions where the majority of the execution time is literally spent in function call overhead.

    4. No need for recompilation, but you are already looking to make performance changes and test so you already intend to rebuild frequently to test those experiments. In addition, the relative difference in information is so humongous that this is not even worth contemplating unless it is a hard requirement like evaluating something in the field.

    [1] https://github.com/gaogaotiantian/viztracer

  • Cyberbrain

    Python debugging, redefined.

    Project mention: Can anyone share some cool projects done with Python? | reddit.com/r/Python | 2022-02-13
  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.

  • pyelftools

    Parsing ELF and DWARF in Python

    Project mention: How to parse an elf file, and identify objects/functions and associate with their file and library | reddit.com/r/embedded | 2022-12-18

    Found pyelftools, and saw how simple it was to extract the variables, functions and files listed in an elf file.

  • stackprinter

    Debugging-friendly exceptions for Python

    Project mention: Creating Beautiful Tracebacks with Python's Exception Hooks | dev.to | 2022-02-02

    # https://github.com/cknd/stackprinter # pip install stackprinter import stackprinter stackprinter.set_excepthook(style='darkbg2') do_stuff()

  • snoop

    A powerful set of Python debugging tools, based on PySnooper (by alexmojaki)

    Project mention: Show HN: A 100% free and interactive Python course for coding beginners | news.ycombinator.com | 2023-01-07
  • hunter

    Hunter is a flexible code tracing toolkit.

    Project mention: Looking for app that visualizes python program | reddit.com/r/learnpython | 2022-10-19
  • best-of-python-dev

    🏆 A ranked list of awesome python developer tools and libraries. Updated weekly.

  • like-dbg

    Fully dockerized Linux kernel debugging environment

    Project mention: Fully dockerized Linux kernel debugging environment | reddit.com/r/netsec | 2022-08-11
  • watchpoints

    watchpoints is an easy-to-use, intuitive variable/object monitor tool for python that behaves similar to watchpoints in gdb.

  • dd-trace-py

    Datadog Python APM Client

    Project mention: DataDog asked OpenTelemetry contributor to kill pull request | news.ycombinator.com | 2023-01-26
  • manhole

    Debugging manhole for python applications.

  • remote-pdb

    Remote vanilla PDB (over TCP sockets).

    Project mention: Useful Python Modules for us | reddit.com/r/savedForMS | 2022-12-04

    pdbpp: Improved pdb boltons: assorted python addtions twisted: event driven networking framework sorcery: Dark magic in python, things know where+how they are being called, helps reducing boilerplate sh: Better alternative for subprocess module, much more pythonic taskipy: npm run scipt_name like functionality snoop: pdb lite, record+replay function steps birdseye: graphical debugger remote-pdb: easy pdb from inside containers typer: wrapper around click for simpler code for CLIs arrow: Always TZ aware datetimes, plus more features more-itertools: more functions for iterators pydantic: data validation + dataclasses loguru: better logging notifiers: sending notifications from python

  • west

    West, Zephyr's meta-tool

  • ycecream

    Sweeter debugging and benchmarking Python programs.

  • debuglater

    Store Python traceback for later debugging. 🐛

    Project mention: How do you deal with parallelising parts of an ML pipeline especially on Python? | reddit.com/r/mlops | 2022-08-12

    Finally, debugging. If you're running code in sub-processes; debugging becomes a real pain because out of the box, you won't be able to start a debugger in the sub-processes. Furthermore, there's a chance that more than one fails. One solution is to dump the traceback when any sub-process fails, so you can start a debugging sesstion afterward; look at this project for an example.

  • py_better_exchook

    nice Python exception hook replacement

    Project mention: Creating Beautiful Tracebacks with Python's Exception Hooks | dev.to | 2022-02-02

    printing relevant info for each frame (referenced variables)

  • azure-debug-relay

    Distributed cross-network remote debugging for Python

  • pout

    Python pretty print on steroids

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-01-26.

Python Debugging related posts

Index

What are some of the best open-source Debugging projects in Python? This list will help you:

Project Stars
1 mitmproxy 29,897
2 httpie 26,059
3 icecream 6,541
4 gef 5,305
5 pwndbg 5,215
6 viztracer 2,906
7 Cyberbrain 2,353
8 pyelftools 1,595
9 stackprinter 1,208
10 snoop 883
11 hunter 710
12 best-of-python-dev 663
13 like-dbg 660
14 watchpoints 396
15 dd-trace-py 383
16 manhole 334
17 remote-pdb 229
18 west 134
19 ycecream 42
20 debuglater 41
21 py_better_exchook 37
22 azure-debug-relay 35
23 pout 28
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com