miden-debug 0.6.1

An interactive debugger for Miden VM programs
Documentation
[workspace]
members = [".", "crates/dap", "crates/engine"]
resolver = "2"

[workspace.package]
version = "0.6.1"
rust-version = "1.92"
authors = ["Miden contributors"]
repository = "https://github.com/0xMiden/miden-debug"
homepage = "https://github.com/0xMiden/miden-debug"
documentation = "https://github.com/0xMiden/miden-debug"
categories = ["development-tools"]
keywords = ["miden", "debugger"]
license = "MIT"
readme = "README.md"
edition = "2024"

[workspace.dependencies]
dap = { package = "miden-debug-dap", version = "0.6.1", path = "crates/dap", features = ["client"] }
miden-debug-engine = { version = "0.6.1", path = "crates/engine", default-features = false }

[package]
name = "miden-debug"
description = "An interactive debugger for Miden VM programs"
version.workspace = true
rust-version.workspace = true
authors.workspace = true
repository.workspace = true
homepage.workspace = true
documentation.workspace = true
categories.workspace = true
keywords.workspace = true
license.workspace = true
edition.workspace = true

[lib]
path = "src/lib.rs"

[[bin]]
name = "miden-debug"
path = "src/main.rs"
test = false
bench = false
required-features = ["tui"]

[[example]]
name = "compile-masm"
required-features = ["std"]

[features]
default = ["tui", "dap"]
tui = ["std", "dep:crossterm", "dep:env_logger", "dep:ratatui", "dep:tui-input", "dep:signal-hook", "dep:syntect", "miden-debug-engine/tui"]
dap = ["dep:dap", "dep:socket2", "miden-debug-engine/dap"]
std = ["dep:glob", "clap/std", "clap/env", "miden-assembly-syntax/std", "miden-debug-engine/std"]
proptest = ["dep:proptest", "miden-debug-engine/proptest"]

[dependencies]
clap = { version = "4.5", default-features = false, features = ["derive", "std", "env", "help", "suggestions", "error-context"]}
crossterm = { version = "0.28.1", optional = true, features = ["event-stream"] }
dap = { workspace = true, optional = true }
miden-debug-engine.workspace = true
serde_json = "1"
env_logger = { version = "0.11", optional = true }
log = "0.4"
glob = { version = "0.3.1", optional = true }
miden-assembly = { version = "0.22", default-features = false }
miden-assembly-syntax = { version = "0.22", default-features = false }
miden-core = { version = "0.22", default-features = false }
miden-debug-types = { version = "0.22", default-features = false }
miden-mast-package = { version = "0.22", default-features = false }
miden-processor = { version = "0.22", default-features = false }
miden-protocol = { version = "0.14", default-features = false }
miden-tx = { version = "0.14", default-features = false }
num-traits = "0.2"
ratatui = { version = "0.29.0", optional = true }
rustc-demangle = { version = "0.1", features = ["std"] }
serde = { version = "1.0", default-features = false, features = [
    "serde_derive",
    "alloc",
    "rc",
] }
signal-hook = { version = "0.3.17", optional = true }
smallvec = { version = "1.14", default-features = false, features = [
    "union",
    "const_generics",
    "const_new",
    "drain_filter",
] }
syntect = { version = "5.2.0", optional = true, default-features = false, features = [
    "parsing",
    "default-syntaxes",
    "default-themes",
    "yaml-load",
    "regex-onig",
] }
thiserror = { package = "miden-thiserror", version = "1.0" }
toml = { version = "0.8", features = ["preserve_order"] }
tui-input = { version = "0.11", optional = true }

socket2 = { version = "0.5", optional = true }
tokio = { version = "1.39.2", features = ["rt", "time", "macros", "rt-multi-thread"] }
tokio-util = "0.7.11"
futures = "0.3.30"
proptest = { version = "1.4", optional = true }

miden-crypto = { version = "=0.23.0", default-features = false }