Now BugStalker can provide a some of new features for support async debuging.
Problem
Debug of async program in rust very hard for a lot of reason. Compiler dont generate good DWARF for async programs, and debugger dont know nothing about futures, about state machine generated by compiler and other tricks of rust async code.
What to do
We can create a some tools for work with async code. It may be just information tools (like tokio oracle) and some asynchronous analogues of regular commands. Asynchronous analogues - is a regular commands (like step, or backtrace) but prefixed with async.
Runtimes support
Currently we only declare support for tokio runtime.
Sub issues
[X] tokio oracle - like tokio console
[ ] #27
[ ] async step - like regular steps, but step in selected future
[ ] async var locals - like var locals but for future captured data
Now BugStalker can provide a some of new features for support async debuging.
Problem
Debug of async program in rust very hard for a lot of reason. Compiler dont generate good DWARF for async programs, and debugger dont know nothing about futures, about state machine generated by compiler and other tricks of rust async code.
What to do
We can create a some tools for work with async code. It may be just information tools (like tokio oracle) and some asynchronous analogues of regular commands. Asynchronous analogues - is a regular commands (like
step
, orbacktrace
) but prefixed with async.Runtimes support
Currently we only declare support for
tokio
runtime.Sub issues
var locals
but for future captured data