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

Martin Frb lazarus at mfriebe.de
Sat Apr 18 16:17:05 CEST 2026


On 18/04/2026 15:18, Michael Van Canneyt via fpc-devel wrote:
>
>
> On Sat, 18 Apr 2026, Martin Frb via fpc-devel wrote:
>
>> On the last point: It may be that for you conflict resolution works 
>> fine in the gitlab interface.
>> For me, that is - half the time - not the case.
>
> We must have very different users.
>
> I don't think even 3% neeed conflict resolution.

Misunderstanding....

Half of the time that need conflict resolution => Of those times that 
need it, take half.

>
> If there is, most of the time user needs to take action.
> It's very rare that I must do it.

For the current low amount of MR, indeed its rare.

But if you scale up the amount of MR by making all team commits go that 
way, and therefore also touch a wider range of code => then it will 
happen more often.

Quite possible even between commits of the same person. => I have plenty 
of conflicts between my own branches. (because by nature they work on 
the same range of code / so if I do more than one thing at a time, then 
conflicts are natural)

>
>> I do regularly open conflicts (with the >>>> markers) in the IDE, and 
>> resolve them there. It's just for me personally that works better in 
>> those cases.
>
> I never use gitlab to resolve conflicts. I do the same as you, but see 
> above.
Hope my new reply explains it better.


>
>> ----------------------
>> I am missing your response to the following.
>> Which is
>> - *NOT* about MR from 3rd party
>
> It is about MR from 3rd party.
>
> My point was that since we have gitlab, the merging of user contributions
> goes way faster than the SVN+Mantis procedure, where we had to 
> download and apply patches manually. Anyone denying that is denying 
> the light of the sun.

Then we were talking about 2 diff things. I was under the impression 
this was all still about the "every commit by every team member should 
go via an MR".

Using gitlab to accept MR is (mostly) fine. I.e. for those are small 
enough to just look at the diff and that is enough to review => I use 
the online "merge to main" button too.

I have not yet come to the point were I knew at that very point that I 
want to also pick it into fixes.
But if I knew, at that very time, then that cherry pick button would work.

In other scenarios, other means may be faster (not in all cases, in some 
cases).

---------------------------
However that is away from the original issue of how to improve tracking 
what goes into fixes -> 3rd party MR are only a fraction of that.



>
> Given the amount of work I do on MRs, if I can flag and later or 
> immediatly merge MRs to a fixes branch, it would be a huge time saver.
>
> So if the team would also use MR's and just flag them 'fit for fixes'
> then that should normally  result in more regular releases for the users.

Is that you volunteering to look after the flagged commits?
Or you expecting everyone to then search there flagged MR and deal with 
them themself?

And, if it is:   everyone taking care of their own MR
=> then why doing an MR at all, why not just instantly cherry picking?

That what we (Lazarus) currently do (with slight extra for the few not 
yet that comfy with git) => If someone commits something, and its fixes 
worthy they cherry pick it.
Done.
No extra steps.
Just the cherry pick.


>
> Because that is what it is all about: getting out more releases for 
> the user.
>
> Gitlab (or github) helps in that, but you must use it for what it was 
> meant.
>
> The older SVN public sites were obliterated by github/gitlab. That was 
> definitely not because it the latter were more difficult to use.

I am neither comparing with SVN means (I didn't even touch branches back 
then), no do I advertise to stick with those means.

Git (and the surrounding tools) offers plenty of ways => each task can 
be solved in many of them.

There are people who say that all commits must first be in a feature 
branch (and then go over various means into various other branches...) 
=> we don't do that. Even so some people will tell us that not only is 
this the best way, its is supposedly the only way that works at all. I 
disagree. Strongly. Very strongly.


------------------------
And even if MR would be a good way (which I am not convinced because I 
think other ways are better.
At least for commits by the team, which often are either
- single commits
- single commits with dependencies (that wouldn't be identified by the 
MR either)

For starters, mix them with regular MR in the MR list on gitlab => you 
get a mixed list that you need to sort and search
- MR by 3rd party only for main
- MR by 3rd party merged to main, waiting for cherry pick to fixes
- MR by team against the fixes branch

That adds work, were we should seek to reduce it.

So again, unless you did just volunteer to then do all the cherry picks 
=> then I am pretty sure they will just sit on gitlab, and nothing will 
happen with them.
- You may call it pessimism, I call it experience ;)


For the few cases where entire branches wont to be picked to fixes (e.g. 
3rd party MR) / I don't know how often that happen with "team origin" => 
that can maybe be considered. (not my call, but..>)
Though it might lead to splitting the list of "to be picked commits"

=> for all others, I would either
- pick the directly into fixes
- pick them locally into fixes, push when they had some testing in main
- pick them to a "pre fixes" : same as locally, just push, but as "trial 
and error fixes branch" from which they then later get picked into real 
fixes

the last one also works for "branches that were merged".








More information about the fpc-devel mailing list