Skip to content
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: Add experimental REPL-based debugger #2995

Merged
merged 26 commits into from
Oct 13, 2023
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
363aa86
First cut at implementing a debug command for nargo
ggiraldez Oct 2, 2023
21571a8
Use ForeignCallExecutor from debug op
mverzilli Oct 3, 2023
ab59aca
feat(nargo): Stubbed out debug repl with placeholder command
nthiad Oct 2, 2023
afa0964
refactor debug logic around ReplContext methods
nthiad Oct 3, 2023
a9804fa
Move all debugger code into a new crate under tooling/debugger
ggiraldez Oct 4, 2023
67c5615
Cargo.lock update
mverzilli Oct 4, 2023
8a61999
Port repl to easy-repl (not compiling)
mverzilli Oct 4, 2023
43fecda
Fix compilation with easy-repl
ggiraldez Oct 5, 2023
c176f77
Format
mverzilli Oct 5, 2023
da1657e
Update tooling/nargo_cli/src/cli/mod.rs
mverzilli Oct 5, 2023
f0717e3
Fix panic when trying to show status and the execution finished
ggiraldez Oct 6, 2023
4ada9fa
Merge branch 'master' into debug-prototype-repl-easy
mverzilli Oct 9, 2023
6de5370
Merge branch 'master' into debug-prototype-repl-easy
mverzilli Oct 10, 2023
8edf3e4
Merge branch 'master' into debug-prototype-repl-easy
mverzilli Oct 10, 2023
258d009
Update tooling/nargo_cli/src/cli/debug_cmd.rs
mverzilli Oct 11, 2023
5b13eff
Merge remote-tracking branch 'refs/remotes/origin/debug-prototype-rep…
mverzilli Oct 11, 2023
449d16e
Debugger: explicitly restrict to binary packages
mverzilli Oct 12, 2023
c3a3138
Handle debug halt as expected result
mverzilli Oct 12, 2023
a687efd
Merge branch 'master' into debug-prototype-repl-easy
mverzilli Oct 12, 2023
e4586b0
Update tooling/debugger/src/lib.rs
mverzilli Oct 12, 2023
0cf36ef
Merge branch 'debug-prototype-repl-easy' of github.com:manastech/noir…
mverzilli Oct 12, 2023
dd30bca
Bring up to date to latest ACVM/Brillig refactors
mverzilli Oct 12, 2023
f20d0e1
chore: Simplify selection/validation of package for debugging
ggiraldez Oct 12, 2023
8622d70
chore: apply clippy suggestions
ggiraldez Oct 13, 2023
f0b3ecf
Update tooling/debugger/src/lib.rs
mverzilli Oct 13, 2023
c61df1a
Merge branch 'master' into debug-prototype-repl-easy
mverzilli Oct 13, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
200 changes: 198 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ members = [
"tooling/backend_interface",
"tooling/bb_abstraction_leaks",
"tooling/lsp",
"tooling/debugger",
"tooling/nargo",
"tooling/nargo_cli",
"tooling/nargo_toml",
Expand Down Expand Up @@ -52,6 +53,7 @@ nargo = { path = "tooling/nargo" }
nargo_cli = { path = "tooling/nargo_cli" }
nargo_toml = { path = "tooling/nargo_toml" }
noir_lsp = { path = "tooling/lsp" }
noir_debugger = { path = "tooling/debugger" }
noirc_abi = { path = "tooling/noirc_abi" }
bb_abstraction_leaks = { path = "tooling/bb_abstraction_leaks" }
noirc_driver = { path = "compiler/noirc_driver" }
Expand Down
16 changes: 16 additions & 0 deletions tooling/debugger/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
[package]
name = "noir_debugger"
description = "Debugger for Noir"
version.workspace = true
authors.workspace = true
edition.workspace = true
license.workspace = true

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
acvm.workspace = true
nargo.workspace = true
noirc_printable_type.workspace = true
thiserror.workspace = true
easy-repl = "0.2.1"
Loading