Infiltrator.jl
Infiltrator.jl copied to clipboard
Hooks for Juno/VSCode integration
Needed for stacktrace and local variables.
Also easy triggering of the breakpoints would be great. To be honest, I think that Infiltrator style (i.e. fullspeed debugging with less ability to modify as it executes) is the more frequent use case for debugging for GUI users.
As for the integration, I found this:
debug> @trace within Juno REPL also includes stacktraces of logics within https://github.com/JunoLab/Atom.jl/blob/master/src/repl.jl, like:
[1] f(::Int64) at none:7
[2] top-level scope at none:0
[3] eval at boot.jl:330 [inlined]
[4] repleval(::Module, ::Expr) at repl.jl:141
[5] (::getfield(Atom, Symbol("##174#176")){Module})() at repl.jl:163
[6] with_logstate(::getfield(Atom, Symbol("##174#176")){Module}, ::Base.CoreLogging.LogState) at logging.jl:395
[7] with_logger at logging.jl:491 [inlined]
[8] evalrepl(::Module, ::String) at repl.jl:154
This is because this line is not handled by this part. I'm not sure the special casing should be done within this package or in Atom.jl tho.
Also easy triggering of the breakpoints would be great. To be honest, I think that Infiltrator style (i.e. fullspeed debugging with less ability to modify as it executes) is the more frequent use case for debugging for GUI users.
Absolutely, this thing is fast! Not put off by the inability to step, I can just place multiple @infiltrate statements. Any plans for integrating this into the Vscode-julia extension?
Is this related to https://github.com/julia-vscode/julia-vscode/issues/963? It would be amazing if we could use Infiltrator in the VSCode debugger UI, if even to just set and disable the breakpoints.
Loosely, yes. I think I'd much prefer Frames' idea of basically integrating MixedModeDebugger 2.0 instead of Infiltrator.