ci: stop building GNU gettext from source; fix the registry cache #5
Loading…
Reference in a new issue
No description provided.
Delete branch "ci-speedup"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The
cijob took 20–45 minutes. Almost all of that went into two C libraries that their crates build with./configure && make. sccache can't cache those builds, even though it hits 99%+ of everything else.Where the time went
gettext-sysbuilt GNU gettext from source, once per profile. In run 21 that was 8m in clippy and 8.5m in the release check, about 16.5 of the job's 20 minutes.vendored-opensslbuilt OpenSSL from source, once per build. In run 24 (this PR's first push) it took about 74s in clippy, 342s in the coverage build and 72s in the release check: about 8 of the remaining 14 minutes.~/.cargo/..., butCARGO_HOMEis/usr/local/cargoin therust:1-bookwormimage.Changes
gettext-rsnow uses thegettext-systemfeature. On*-linux-gnu,gettext-systhen builds nothing and uses the gettext built into glibc. That holds on the desktop, in the CI image and on the phone (aarch64-linux-gnu, glibc). This affects every build, not just CI.OPENSSL_NO_VENDOR=1makesopenssl-syslink the image's system OpenSSL. The phone package (cargo make click) still builds the vendored one, so CI no longer covers that build;cargo make clickremains the check for it./usr/local/cargo/....Results
citook 14m26s, down from 44m49s for #3. Clippy took 2m32s (from 8m24s), and the release check 2m07s (from 8m35s). The registry cache was saved.cargo make lintandcoverage-reportpass withoutopenssl-srcbeing built. This push's CI run will show the new time; I estimate about 6 minutes.cargo make click: the arm64 package builds, andclick-reviewpasses.cargo audit's two warnings were already there before this change: RUSTSEC-2026-0244 (gettext-rssetlocale, unsound) andyoke-derivebeing yanked.🤖 Generated with Claude Code