[fpc-devel] [RFC] Modernising the FPC Release Process -- Proposal for Review

mailinglists at geldenhuys.co.uk mailinglists at geldenhuys.co.uk
Wed Apr 15 23:17:39 CEST 2026


Hi Tomas,

Thank you for the response.

--- On fixed schedule vs. quality ---

I want to clarify what the fixed schedule actually controls in the
model: it governs *when the train departs*, not *what boards it*. The
Merge Window determines the content of any given release. If a feature
is not ready, it simply waits for the next train.

The reason I believe a fixed schedule still helps, even if some
releases are lighter than others, is that the alternative is
demonstrably not working. v3.2.4 has been "almost ready" for two
years. Waiting until a release feels "substantial enough" has no
natural stopping condition. A fixed departure time does.

That said, I think the cadence needs careful thought for a project
of FPC's size and contributor base. Looking at the volume of commits,
I believe 6-month or even 12-month cycle will be appropriate.
No need to chase a release every two weeks like the Linux kernel -
though that proves that a mammoth project has the ability to do that,
so FPC should in reality be a walk in the park.

--- On the MR count vs. commit activity ---

You make a fair empirical point, and I genuinely do not know the
answer either. It would be worth someone running that comparison
before we treat the MR backlog as the primary symptom.

What I would say is this: even if the 130+ MRs represent a small
fraction of total changes, the fact that contributors have submitted
work and received no signal for years has a cost that does not show
up in commit counts — it affects contributor retention and community
confidence.

The triage process in the proposal is not about merging
all 130; it is about giving every one of them a clear, timely
answer in either direction.

--- On the CI automation and cross-building ---

This is the strongest point you have raised, and I will be direct:
the proposal as written is maybe a bit thin on details here.

You are absolutely right that a green CI run on x86_64/Linux is not
a meaningful "release is ready" signal for a compiler that targets
DOS, Amiga, embedded ARM, and dozens of other platforms that cannot
be tested in a standard CI environment. The automation I described
for pinning submodule pointers in fpc/build is still valid as a
mechanical step. If the CI can cover where 80-90% of the FPC userbase
sit, that should be plenty good enough. The way lesser used platforms
will simply trail along.

A revision worth considering: rather than the tag being the sole
trigger, the RC cycle could include a lightweight sign-off checklist
— one entry per supported target — that target maintainers update
as they validate their platform. The final release tag would only
be applied once all _critical targets_ [the 80-90% of users] have
a green tick. GitLab supports this via a checklist in an issue or
MR description. This keeps the automation useful while acknowledging
the multi-target reality.

I would very much welcome input from you or anyone else, what a
workable sign-off mechanism would look like in practice, and what
is considered the Tier 1 platform (data backed info would be very
useful here).

--- On roles and volunteering ---

"Designate" was poorly chosen — it implies authority I do not have.
What I meant was: for the process to function, someone needs to
agree to own each area. I cannot assign that; the team has to.

You asked whether I volunteer, and which role. I am happy to take
on any of triage coordination, process documentation, CI pipeline
improvements or even try my hand at release manager. I
acknowledge that domain ownership of Compiler, RTL, and FCL has to
come from people with far deeper knowledge of the internals than
I have.

You are also right that "target maintainers" are absent from the
proposal. That is a real gap. The model needs a named person
responsible for each primary target, both for ongoing review and
for the RC sign-off I described above. I will update the proposal
to reflect this.

--- Summary ---

The proposal is a starting point, not a finished plan. The feedback
so far — yours, Marco's, and others' — is making it better. I will
revise the document to address the cross-building/sign-off gap and
add target maintainers as a defined role, then share an updated
version here for further review.

Thanks again for taking the time to engage with this.

Regards,
  - Graeme -


More information about the fpc-devel mailing list