atproto git client
atgc plan toolchain.md
4.0 kB · 72 lines


id: toolchain title: The build is cheap enough to run two of status: shipped repos: [atgc] dependsOn: [] exitCriterion: > A fresh worktree builds on a pinned toolchain, with the language floor enforced on every build rather than asserted once. #

toolchain #

rust-version = "1.89" is set by three things independently, and declaring it turns clippy's incompatible_msrv on, so the floor is enforced rather than believed. Dependencies build without debug info and this crate keeps all of it, which took a full debug build from 2.43 GiB to 1.66 with 253 dependency source files still carrying line tables.

One target/ per worktree, cargo's default, and no scheme on top of it. Sharing the build across worktrees was tried twice and is settled as a no: the uplifted target/debug/atgc is one name written by whichever worktree last compiled, and it is what env!("CARGO_BIN_EXE_atgc") bakes into the integration tests.

What it needs #

Done #