CodeTruss CLI v0.2.43
·
4 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
- A release can no longer reach you carrying code that does not compile.
Three type errors shipped in 0.2.42 and stopped the following release at its
first build step. The errors were trivial in themselves: a finding category
that does not exist, and a test helper that was not updated when one of the
fields it passes became required. Why they shipped is the part worth fixing.
The CLI's test sources were compiled by no gate upstream of the release job —
linting does not typecheck, the website build typechecks the website, and the
test run cannot stand in for either, because esbuild strips types without ever
checking them. A suite reports 12 of 12 passing with a type error sitting in
the file it just ran. The release job was the first step in the chain to
compile those files, which meant a failed build was the earliest available
symptom, and it arrived only once a version was already a release candidate. A
typecheckgate now runs that same compiler over those same files ahead of the
tests, in both the local gate and continuous integration, so this class of
defect surfaces at the edit that causes it instead of at the release it blocks.
Install
curl -fsSL https://codetruss.com/install.sh | shWindows (PowerShell):
irm https://codetruss.com/install.ps1 | iexVerify what you installed
sha256 e759a7ffce29ae0a0ba61aeb9bd8819cd75adb114abd1410a7e309d6f8a923c3
gh attestation verify codetruss-cli-0.2.43.tgz --repo CodeTruss/codetruss-cliThe archive ships with a CycloneDX SBOM and SLSA build provenance. You
should not have to take our word for what is in it.