- Instrummented code should run much faster due to removed unnecessary runtime ctx rebinding
- Fix browser navigation after instrumentation bug
- Automatic event retention. For ClojureScript or remote Clojure you don't need to remote-connect by hand
when you want to capture traces before the debugger is connected. Just need to require flow-storm.api on your main.
- Automatic ui cleaning on reconnection
- Remote connection now accepts :debugger-host and :runtime-host keys (check out the documentation)
- Fix the more button on value inspector
- Fix for infinite sequence handling
- Automatic remote connection management. The re-connect button was removed from the toolbar since it isn't needed anymore
- Fix javafx platform not initialized exception when there is a error connecting to a repl
- Add support for remote debugging without repl connection (clojure and clojurescript)
- Show nrepl errors on the UI
- Fix ClojureScript re-run flow
- Fix a deadlock caused by the event system
3.0 is a full redesign! So it is full of changes, and fixes. Most remarkable things are :
- ClojureScript is feature par with Clojure now, so every feature is available to both languages.
- Remote debugging can be accomplished by just connecting to nrepl server (socket repl support on the roadmap)
- A programable API (https://jpmonettas.github.io/flow-storm-debugger/user_guide.html#_programmable_debugging)
- Enables the posibility to integrate it with IDEs/editors
* Add inspect for locals
* Can jump to any index by typing the idx number in the thread controls
* Locals print-length is now 20 and print-level 5
* Make the value inspector show more info on dig nodes
* Add a proper lazy and recursive value inspector
* Add tap tool (support for tap>)
* New functions for shutting down the debugger and connections gracefully.
When starting with `flow-storm.api/local-connect` or `flow-storm.api/remote-connect` you can shut it down with `flow-storm.api/stop`
When starting a standalone debugger with `flow-storm.debugger.main/start-debugger` you can shutdown with `flow-storm.debugger.main/stop-debugger`
* Add support for light and dark themes, in selected or automatic mode. Checkout the user guide for more info. (thanks to Liverm0r!)
* Thread tabs can be closed and reordered
* The entire debugger was refactored to manage state with mount
* Fix #28 - Callstack tree args and ret listviews should expand to the bottom
* Fix #34 - instrument-forms-for-namespaces not instrumenting (def foo (fn [...] ...))
* Add bottom bar progress indicator when running commands
* Add reload tree button on callstack tree tabs
* Add search bar to functions list
* This release also contains big internal refactors to make the codebase cleaner and more efficient
* Automatically deref all reference values in traces
* Automatically change to flow tab on new flow
* Add jump to first and last traces on thread controls (useful for exceptions debugging)
* Add print-level and print-meta controls on pprint value panels
* Improve re-run flow UX
* Namespace instrumentation now accepts :verbose? to log known and unknown instrumentation errors details
* Add flow-storm.api/uninstrument-forms-for-namespaces to undo instrument-form-for-namespaces instrumentation
* Add ctx menu on locals to define vars from values
* Add browser namespaces instrumentation/uninstrumentation
* Add browser instrumentation synchronization (for everything but #trace)
* Add #rtrace0 ... #rtrace5, like #rtrace but with different flow-ids
* Add double clicking on flows functions window executes show function calls
* Remove flow-storm.api/run since #rtrace(runi) is enough
* Flows functions window now have checkboxes for selecting fncall arguments to print
* Fix re run flow for #rtrace case
* Fix local binding instrumentation and debugging
* Add def value button on every value panel to define the value so you can work with it at the repl
* Add namespaces browser with instrumentation capabilities
* Add conditional tracing via #ctrace and ^{:trace/when ...} meta
* Fix run-command for the local connection path
* Add Clojurescript support
* Remote debugging via `flow-storm.api/remote-connect` and `flow-storm.api/cli-run`
* `flow-storm.api/cli-run` now accepts :host and :port
* Add styles customization via a user provided styles file
* The debugger can instrument and debug itself