Forgejo: stay on 15.0 LTS, plan the 19.0 migration for ~April 2027 #11
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Recording a decision so the version gap is not mistaken for drift, and so the
migration window is not missed.
Decision: stay on LTS
The host runs Forgejo 15.0.6; current is 16.0.3. That gap is intended.
"Catching up to main" would move a supported install onto an unsupported one
and force another migration immediately.
The reasoning is already in
flake.nix, along with two traps worth repeating:services.forgejo.packagedefaults topkgs.forgejo-lts, so the overlayoverrides
forgejo-lts. Overridingforgejoinstead builds fine and changesnothing — a no-op that looks like a successful upgrade.
major. The health-check auto-rollback does NOT cover this: a rollback
restores the old binary against an already-migrated database. Back up
/var/lib/forgejobefore any version bump.When the next LTS lands
From the release history on Codeberg, majors ship quarterly, mid-month:
So 17.0 ≈ mid-October 2026, 18.0 ≈ mid-January 2027, 19.0 ≈ mid-April 2027.
LTS appears to be every fourth major — 11.0 was the previous one (window closed
2026-07-16) and 15.0 is the current one — which makes 19.0 the next LTS.
Caveat: that is inferred from the release cadence and the two known LTS
windows, not read from a support-policy announcement. Worth confirming against
Forgejo's own policy page nearer the time.
The plan
If the pattern holds there is roughly a three-month overlap — 19.0 in April,
15.0 supported until July — so the migration can be done deliberately:
/var/lib/forgejo. This is the step the deploy safety net cannotdo for us.
nixpkgs-forgejoinput at a revision carrying 19.0 and overrideforgejo-lts(notforgejo)./api/v1/versionratherthan by the build succeeding — see the no-op trap above.
Two majors of migrations in one jump, still one-way.