Calva Gets a Debugger
The latest version of Calva comes with a debugger! It utilizes cider-nrepl and VS Code’s debugger extension API. This work has been done as part of the Clojurists Together Q1 2020 funding period. Many thanks to them for allowing us the time to focus on adding this feature, and many thanks to the cider-nrepl creators and maintainers for providing great foundational functionality for Clojure tooling.
The debugger is still in an early stage, and more features are soon to come, but currently it supports adding breakpoints with #break
and #dbg
reader tags, pausing execution on those breakpoints, continuing execution, and evaluating code in the debug context (while execution is paused).
Features
-
Set breakpoints with
#break
-
Instrument functions with
#dbg
-
Continue to next breakpoint
-
Evaluate code in the debug context
-
See variable values in the debugger side pane
Upcoming features
- Step over form
- Step into form
- Step out of form
- See structured variables in the debugger side pane (currently maps and collections are just shown as strings)
See the debugger documentation for more info.
Please take this Clojure debugger for a spin, and please give us your feedback!