watchpoints
debug-adapter-protocol
watchpoints | debug-adapter-protocol | |
---|---|---|
7 | 14 | |
462 | 1,325 | |
- | 2.6% | |
1.5 | 7.6 | |
about 1 year ago | 13 days ago | |
Python | HTML | |
Apache License 2.0 | GNU General Public License v3.0 or later |
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.
watchpoints
-
What a good debugger can do
It's sad that Python does not really support some of these debugging methods.
E.g. you cannot really watch variable changes. There are some workarounds, like writing a custom __setattr__ or __setattribute__ in case of an object, or checking all STORE_* operations. https://youtrack.jetbrains.com/issue/PY-30387 https://github.com/gaogaotiantian/watchpoints
Reverse debugging is also sth I would like to have, and there are a few projects to support this, but it's not really well supported in standard CPython. https://foss.heptapod.net/pypy/revdb https://pytrace.com/
-
Is there a tool to run code and AFTER that look at execution step by step.
There is also the watchpoints module to track changes to variables, but I don't think you can use the two of them together since they both use the same underlying callback in Python.
- Watchpoints - an easy-to-use, intuitive variable/object monitor tool for Python that behaves similar to watchpoints in gdb.
-
Show HN: Watchpoints, an easy to use watchpoints equivalent library for Python
It uses Python's built-in inspect module to get the caller frame. https://github.com/gaogaotiantian/watchpoints/blob/68bc13716...
It then uses sys.settrace (which is intended as an interface for debuggers) to step through the code and check whether the variable has been changed. Documentation on sys.settrace: https://docs.python.org/3/library/sys.html#sys.settrace
Python exposes most of its guts as part of the standard library, making clever hacks like this possible.
debug-adapter-protocol
-
The IDEs we had 30 years ago and we lost
> There's a strange dance of IDEs coming and going, with their idiosyncracies and partial plugins.
The Language Server Protocol [1] is the best thing to happen to text editors. Any editor that speaks it gets IDE features. Now if only they'd adopt the Debug Adapter Protocol [2]...
[1] https://microsoft.github.io/language-server-protocol/
[2] https://microsoft.github.io/debug-adapter-protocol/
-
Bitty Engine: A tiny powerful game engine
Wonder if they've got support for Debug Adapter Protocol? https://microsoft.github.io/debug-adapter-protocol/
- Hi vimmers! Does any one use F[1..12] keys and what for? Cheers!
-
What a good debugger can do
> Debuggers need to do more things
It's true that coming up with an interface for an abstract debugger is harder, but it's not impossible. Microsoft create Debug Adapter Protocol (https://microsoft.github.io/debug-adapter-protocol/), which is conceptually similar for LSP. It's not perfect, but covers most basic operations pretty well, while leaving to the debugger to deal with the implementation details.
-
There is No “Tooling Issue” in Haskell
Most languages also include support for the Debug Adapter Protocol, and Haskell is no exception, so if you are so inclined, you can hook up your favorite editor/IDE and go to town.
-
Debug this meme
They're working on the Debug Adapter Protocol but it doesn't have critical mass/adoption yet. And yeah, I end up having a fair share of dbg!(foo). It's not so bad since dbg!() also returns its value, so you don't have to mess with your code too much.
-
Step Debugger Development: Debug Adapter Protocol Support
TL;DR: What would it take to implement a Debug Adapter Protocol (DAP)-based step debugger?
- DAP – Debug Adapter Protocol
-
Try TeXmacs in your Browser via WebAssembly (Mogan Fork of TeXmacs)
RDP is the Windows Remote Desktop Protocol that was in use for decades before VSCode; VSCode's own remoting doesn't use it.
I'd say that, in addition to LSP, the other big thing that came out of VSCode is DAP: https://microsoft.github.io/debug-adapter-protocol.
-
I got fired yesterday for using vim
The most important part is the JDT Languag Server, it will give you the Java tooling for writing code. I think it has DAP support as well, so with a DAP client like nvim-dap you should be able to debug as well.
What are some alternatives?
python-varname - Dark magics about variable names in python
cortex-debug - Visual Studio Code extension for enhancing debug capabilities for Cortex-M Microcontrollers
flow-storm-debugger - A debugger for Clojure and ClojureScript with some unique features.
ghci-dap - ghci having DAP interface.
grub2-theme-preview - :city_sunrise: Preview a full GRUB 2.x theme (or just a background image) using KVM / QEMU