[package] name = "flowrs-cli" version.workspace = true edition.workspace = true publish.workspace = true rust-version.workspace = true authors.workspace = true license.workspace = true description = "flowrsc — headless command-line compiler for flowRS graphs" # The logic lives in the lib so integration tests can drive `run()` directly # against in-memory writers, instead of shelling out to the built binary. [lib] name = "flowrs_cli" path = "src/lib.rs" [[bin]] name = "flowrsc" path = "src/main.rs" [dependencies] flowrs-core = { path = "../flowrs-core" } # `test --junit`: the graded expectations written by the same JUnit writer the editor's # reports use. A workspace crate flowrs-core already depends on, so nothing enters the lock. flowrs-record = { path = "../flowrs-record" } # `flowrsc app`: a graph and its app as a project, the program and the shell that serves it. flowrs-app = { path = "../flowrs-app" } flowrs-appshell = { path = "../flowrs-appshell", features = ["export"] } flowrs-connect = { path = "../flowrs-connect" } # `flowrsc can-node`: the DBC file read (can-dbc, behind `dbc`; already in the lock through # flowrs-mcp) and projected to ROS types with their units. flowrs-iface = { path = "../flowrs-iface", features = ["dbc"] } serde_json = { workspace = true } clap = { version = "4.6", features = ["derive"] } # `flowrsc pkg`: the registry's verifier (confined builds and runs, the signed record). # Native only: it starts compilers under the seatbelt and signs with aws-lc-rs. [target.'cfg(not(target_arch = "wasm32"))'.dependencies] flowrs-registry = { path = "../flowrs-registry", features = ["verify"] } [features] [dev-dependencies] tempfile = "3.27" # tests/spec_cli.rs reads the conformance corpus's manifest. serde = { workspace = true } # Features of the full repository whose crates this snapshot does not carry: the code they # guard stays off. [lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(feature, values("firmexplain"))'] }