This crate's util::run/run_with_stdin/run_ok/Output was cited as the one
correct, timeout-guarded subprocess implementation in the ecosystem worth
sharing — it's now promoted verbatim into bread-utils and re-exported here
so every existing crate::util::{run, ...} call site (notify.rs, nm.rs,
status.rs, tailscale.rs) keeps working unchanged. write_atomic similarly
delegates to bread_utils::atomic::write_atomic (path dependency for now,
see the TODO in Cargo.toml). home_dir/command_exists/timestamp stay local
— they're breadcrumbs-specific, not duplicated elsewhere.
New worktree for this repo (none existed from tonight's earlier passes,
since breadcrumbs needed no audit fixes then).
Builds clean; all 74 unit tests + 25 CLI integration tests pass.
24 lines
649 B
TOML
24 lines
649 B
TOML
[package]
|
|
name = "breadcrumbs"
|
|
version = "2.1.5"
|
|
edition = "2021"
|
|
description = "Profile-aware Wi-Fi state machine with Tailscale handling and self-healing watch daemon"
|
|
license = "MIT"
|
|
|
|
[[bin]]
|
|
name = "breadcrumbs"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
clap = { version = "4", features = ["derive"] }
|
|
serde = { version = "1", features = ["derive"] }
|
|
toml = "0.8"
|
|
serde_json = "1"
|
|
# TODO(owner): switch to tag-pinned git dependency once bread-utils is merged and tagged, matching the bread-theme pattern
|
|
bread-utils = { path = "../bread-ecosystem-fix-worktree/bread-utils" }
|
|
|
|
[profile.release]
|
|
opt-level = "s"
|
|
lto = true
|
|
strip = true
|
|
panic = "abort"
|