-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: adds debugging #79
Conversation
7b11229
to
1822f3b
Compare
a0f18f9
to
cedded3
Compare
bb7f332
to
7edcc28
Compare
7edcc28
to
03ff43a
Compare
03ff43a
to
c85bf12
Compare
c85bf12
to
a7ffced
Compare
a7ffced
to
74b8b8d
Compare
74b8b8d
to
e9ff091
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No notes, LGTM!
e9ff091
to
749e856
Compare
7df9145
to
84db9d7
Compare
84db9d7
to
c550b45
Compare
c550b45
to
b67197d
Compare
b67197d
to
6b3c8f1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, remaining comments are nits and can be done on follow ups. I ran it locally and tested with the comparison
example program
/// executes a debug command against the vm in it's current state. | ||
pub fn execute(&mut self, command: DebugCommand, param: Option<u64>) -> String { | ||
match command { | ||
//DebugCommand::PlayAll |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
later on these comments can go, one of the purposes of using the enum is to have self documenting code
icon="Stack" | ||
onClick={() => executeDebug(DebugCommand.PrintState)} | ||
/> | ||
<DebugButton |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it would be nice to show a text when hovering on these buttons later on. they are pretty intuitive but that wont hurt (also maybe have aria stuff in there would be a nice thing to do)
closes #68
This PR enables the frontend to run the Rust program
debug_program
, which executesmiden_vm::execute_iter
.Screen.Recording.2023-03-14.at.17.11.56.mov
OK, now The playground uses the same debugging methods as the Miden CLI, see here.
For now, I have only implemented 5 methods in the fronend
but all methods are exposed in the backend.
We should refactor the
lib.rs
andCodingEnvironment.tsx
, both grow way too big, but that might be for the next PR.