[workspace] resolver = "3" members = [ "crates/spec-parser", "crates/forge-oci", "crates/forge-engine", "crates/forge-builder", "crates/forger", ] [workspace.package] edition = "2024" rust-version = "1.85" [workspace.dependencies] # Parsing knuffel = "3.2" # Error handling & diagnostics miette = { version = "7", features = ["fancy"] } thiserror = "2" # CLI clap = { version = "4.5", features = ["derive", "env"] } # Serialization serde = { version = "1", features = ["derive"] } serde_json = "1" # Async runtime tokio = { version = "1", features = ["rt-multi-thread", "macros", "fs", "process", "time"] } # Logging tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } # OCI oci-spec = "0.8" oci-client = "0.15" # Crypto & encoding sha2 = "0.10" hex = "0.4" # IO bytes = "1" tar = "0.4" flate2 = "1" walkdir = "2" tempfile = "3" # Misc bytesize = "2" indicatif = "0.17" # Builder VM support vm-manager = { path = "../vm-manager/crates/vm-manager" } reqwest = { version = "0.12", default-features = false, features = ["rustls-tls-native-roots", "stream"] } libc = "0.2" dirs = "6" ssh2 = "0.9" openssl = { version = "0.10", features = ["vendored"] } ssh-key = { version = "0.6", features = ["ed25519", "rand_core", "getrandom"] } # Internal crates spec-parser = { path = "crates/spec-parser" } forge-oci = { path = "crates/forge-oci" } forge-engine = { path = "crates/forge-engine" } forge-builder = { path = "crates/forge-builder" }