[package] name = "flowrs-registry" version.workspace = true edition.workspace = true publish.workspace = true rust-version.workspace = true authors.workspace = true license.workspace = true description = "flowRS's verified registry: widgets, drivers, boards and dialects whose badge is the form contract. Package manifest and content address, the confined verifier and its signed record, the static index, and admission." [dependencies] # The package table every host's admission writes into, and the units the verifier reads. flowrs-core = { path = "../flowrs-core" } # A driver or board package's data, loaded into the catalogues (both build for the browser). flowrs-drivers = { path = "../flowrs-drivers" } flowrs-boards = { path = "../flowrs-boards" } # UCUM: whether a declared unit is one flowRS resolves, and two spellings the same unit. flowrs-iface = { path = "../flowrs-iface" } serde = { workspace = true } serde_json = { workspace = true } # The content address. Already in the lock (flowrs-core's). sha2 = { version = "0.11", default-features = false } # `flowrs-package.toml`, and the package's Cargo.toml the verifier rewrites. Already in the # lock (flowrs-critic's, flowrs-appshell's). toml = { version = "1", optional = true } # The verifier's confinement and its observation of what was denied. flowrs-sandbox = { path = "../flowrs-sandbox", optional = true } # What FORM.json's checks already do, reused by the verifier: the lock reader of the # reproducible-build row (`lock::read_lock`) and the comment scrubber the program checks read # source through (`form::without_comments`). Native, as the verifier is. flowrs-appshell = { path = "../flowrs-appshell", features = ["export"], optional = true } # The record's signature: flowRS's hybrid Ed25519 + ML-DSA-65 scheme (native only). flowrs-instruments = { path = "../flowrs-instruments", optional = true } [build-dependencies] # build.rs takes the content address of each carried package (src/archive.rs, shared) and # reads its manifest. All three already in the lock. sha2 = { version = "0.11", default-features = false } toml = "1" serde_json = { workspace = true } [features] default = [] # Reading TOML manifests (native: the browser reads them as JSON from the index). toml = ["dep:toml"] # Signing and checking records (aws-lc-rs: native only). sign = ["dep:flowrs-instruments", "flowrs-instruments/crypto"] # The verifier and the submission path. verify = ["toml", "sign", "dep:flowrs-sandbox", "dep:flowrs-appshell"] [dev-dependencies] # 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("carried"))'] }