hephaestus/crates
Erich Blume 6ba94119e4
Some checks failed
Build / validate (pull_request) Failing after 45s
infra: slim the keyring dependency (keyring meta-crate -> keyring-core + one store/OS)
keyring 4's `keyring` meta-crate has no feature gating and compiles every
platform credential backend for the target. On Linux that dragged in the zbus
async stack, a redundant libdbus secret-service, the keyutils store, a
sqlite/zstd db-keystore, and OpenSSL (~290 crates in its subtree) — a real cost
on the RAM/CPU-constrained CI runner building with CARGO_BUILD_JOBS=1.

Depend on keyring-core (the API) + exactly one store crate per OS instead:
- macOS  -> apple-native-keyring-store (keychain feature)
- Linux  -> dbus-secret-service-keyring-store (crypto-rust; libdbus, no openssl)

oauth.rs registers the per-target store as the keyring-core default itself
(replacing keyring::use_native_store). Runtime behavior is unchanged (tokens
still go to the macOS Keychain / Linux Secret Service).

hephd's Linux dependency graph: 401 -> 235 crates (-166), dropping the zbus
ecosystem and two C builds (zstd-sys, plus the redundant secret-service path).

macOS builds + the full suite are green here (228 tests, clippy -D warnings,
fmt, prek); the Linux store path is CI-verified (API confirmed from source).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-04 07:26:39 -07:00
..
heph feat: heph list --project <name> + --json; thin AGENTS.md 2026-06-03 20:38:57 -07:00
heph-core feat: multi-tenancy seam (resolve_owner) + hub-setup how-to (v1 prep) 2026-06-04 07:08:39 -07:00
heph-quickadd style: cargo fmt — normalize earlier hand-committed files 2026-06-03 20:38:44 -07:00
heph-tui fix: clippy single_match in heph-tui + add clippy pre-commit hook 2026-06-03 20:53:50 -07:00
hephd infra: slim the keyring dependency (keyring meta-crate -> keyring-core + one store/OS) 2026-06-04 07:26:39 -07:00