ipdb VS PyDev.Debugger

Compare ipdb vs PyDev.Debugger and see what are their differences.

ipdb

Integration of IPython pdb (by gotcha)

PyDev.Debugger

Sources for the debugger used in PyDev, PyCharm and VSCode Python (by fabioz)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
ipdb PyDev.Debugger
6 2
1,801 404
- -
2.9 7.2
8 months ago about 1 month ago
Python Python
BSD 3-clause "New" or "Revised" License Eclipse Public License 1.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

ipdb

Posts with mentions or reviews of ipdb. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-08-02.

PyDev.Debugger

Posts with mentions or reviews of PyDev.Debugger. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-02-05.
  • Reloadr – Hot code reloading tool for Python
    15 projects | news.ycombinator.com | 5 Feb 2021
    Ha, I'm just working on integrating the `pydev.debugger` code reloading into `debugpy` (so that the code reloading from the PyDev debugger will be available for Python-VSCode debugger users too).

    The in-memory reloading (which may be seen at: https://github.com/fabioz/PyDev.Debugger/blob/main/_pydevd_b...) unfortunately doesn't work all the time (fixing the references at runtime in Python is difficult), but it works well enough for the cases where you have a simple function and change it (that file does explain some of the issues that the reloading faces).

    One major issue is that after doing the reload, you need to get out of the function and then back into it to see the difference -- so, if you're stopped in the function in a breakpoint, it's not possible to simply drop the function and restart it as Python itself doesn't support that... maybe that's a good idea for a PEP ;)

    Anyways, when it works, it's pretty nice in that you don't have to restart your whole debug session to see changes (the other approach, which webservers use in general is just restart the whole process, so, for instance, Django has an initial process just monitoring for changes and a 2nd process which is actually serving requests which is restarted when something changes -- not as good if you have a heavy startup or are working with something where you have to click through multiple things to get to the state which you want).

What are some alternatives?

When comparing ipdb and PyDev.Debugger you can also consider the following projects:

pudb - Full-screen console debugger for Python

pdbpp - pdb++, a drop-in replacement for pdb (the Python debugger)

vimspector - vimspector - A multi-language debugging system for Vim

flask-debugtoolbar - A toolbar overlay for debugging Flask applications

django-debug-toolbar - A configurable set of panels that display various debug information about the current request/response.

wdb - An improbable web debugger through WebSockets

winpdb - Fork of the official winpdb with improvements

jurigged - Hot reloading for Python

django-devserver - A drop-in replacement for Django's runserver.

Cyberbrain - Python debugging, redefined.

pyringe - Debugger capable of attaching to and injecting code into python processes.

ipython - Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc.