Your browser sucks, JavaScript disabled! Gunnar's console needs JavaScript and WebAssembly. Git over SSH on port 2222 does not.

nordisk/edda

crates/nornir-workspace/Cargo.toml

[package]
name = "nornir-workspace"
version = "0.1.4"
edition = "2024"
rust-version = "1.85"
description = "The `nornir-workspace.toml` multi-repo descriptor: parse a workspace of independent repos (path / git / fat-both members) and resolve every member to a concrete on-disk checkout, auto-materializing missing `git` members via the pure-Rust `nornir-git` transport (SSH via russh, no shell-out; `NORNIR_OFFLINE` for the airgap path). Pure parse + repo-source resolve — NO warehouse, NO Iceberg. Extracted out of nornir/src/workspace so dwarves can consume it FAT without inverting edda->nornir into a cycle; nornir re-exports it verbatim under `nornir::workspace`."
license = "MIT OR Apache-2.0"
repository = "https://git.gunnar.rs/nordisk/edda"
keywords = ["nornir", "workspace", "toml", "multi-repo", "resolve"]
categories = ["development-tools"]
exclude = ["/.nornir/"]

[dependencies]
anyhow = "1"
serde = { version = "1", features = ["derive"] }
toml = "1"
# Ref inspection / worktree checkout for a freshly materialized member — pure gix,
# same version the shared git leaf pins so the transitive gix is unified.
gix = { version = "0.90", default-features = false }
# The pure-Rust git transport (`gitio::clone_or_fetch` / `set_head_and_checkout`,
# SSH via russh, HTTPS via gix — no `git` subprocess). Consumed (LAW #5), the
# canonical git leaf lifted out of nornir; auto-materialize routes through it.
nornir-git = { version = "0.2.0", path = "../nornir-git" }

[dev-dependencies]
tempfile = "3"