Foreman

Releases

Shipped in small, gated releases

fm release runs the ritual as nine named steps with a checkpoint after each: gates, version bumps, changelog, commit, release check, push, round close and a canary in every local project.

Tests in the suite, release by releaseCounted at each release commit; every release passes all of them.
07501,5002,2503,0001.2.25: 1,2151.2.26: 1,2491.2.27: 1,2631.2.28: 1,3721.2.29: 1,3851.2.30: 1,4181.2.31: 1,5911.2.32: 1,9351.2.33: 2,0181.2.34: 2,0811.2.35: 2,1311.2.36: 2,1311.2.37: 2,2531.2.38: 2,2551.2.39: 2,2791.2.40: 2,2832,2831.2.251.2.331.2.40
Show the numbers
versiontests
1.2.251,215
1.2.261,249
1.2.271,263
1.2.281,372
1.2.291,385
1.2.301,418
1.2.311,591
1.2.321,935
1.2.332,018
1.2.342,081
1.2.352,131
1.2.362,131
1.2.372,253
1.2.382,255
1.2.392,279
1.2.402,283

Release over release

Each release's cover is drawn from its own numbers: the hue from its version, the bar its tests as a share of the latest.

1.2.252026-10-09 · 1,215 tests1.2.262026-10-09 · 1,249 tests1.2.272026-10-09 · 1,263 tests1.2.282026-10-15 · 1,372 tests1.2.292026-10-15 · 1,385 tests1.2.302026-10-15 · 1,418 tests1.2.312026-10-15 · 1,591 tests1.2.322026-10-16 · 1,935 tests1.2.332026-10-16 · 2,018 tests1.2.342026-10-16 · 2,081 tests1.2.352026-10-16 · 2,131 tests1.2.362026-10-16 · 2,131 tests1.2.372026-10-16 · 2,253 tests1.2.382026-10-16 · 2,255 tests1.2.392026-10-16 · 2,279 tests1.2.402026-10-16 · 2,283 tests

What a release proves

  • The full gates on the exact commit that is pushed, never later work.
  • A release check: doctor and the demo in a throwaway home.
  • Your yes to push, spent by that one push.
  • Resumable. A stop at any step continues from there with --resume.

Next: Planning