Re: Suite branches
On Sat, Apr 19, 2025, at 11:47 AM, NoisyCoil wrote:
> Hi all,
>
> Following up on yesterday's meeting we should settle on a naming scheme
> for suite branches. My proposal (which already came up during the
> meeting) is to use $SUITE -- e.g. trixie-backports -- for the suite's
> master branch and $SUITE/pending-$CRATE for the pending branches.
> Unstable should probably be the exception, I don't see a strong need for
> changing master's and the pending-* branches names, but if you feel
> differently please say so.
that doesn't work, you can't have a branch `foo` and a branch `foo/bar`.
we probably need to do
$suite/latest
$suite/pending-crate
or a similar scheme?
> As for experimental, I think yesterday we haven't decided if we want to
> have a separate branch for it. The biggest blocker I see there is
> unstable and experimental are not actually separate branches: exp can't
> live without unstable, so changes to unstable should be merged into exp,
> and the same is true in reverse whenever changes are first staged in exp
> and then downlifted to unstable. In a monorepo, however, one cannot do
> merges, only cherry-picks and checkouts, so having an exp branch means
> we would have to cherry pick/check out *a lot* (consider e.g.
> transitions where we first stage in exp). Essentially, this wouldn't be
> much different than having a single branch, as the two branches should
> still be kept in close sync.
I think there's two variants that make sense:
- keep the current approach with unstable and experimental in one branch
- do a new branch *per crate* for experimental, that only contains the
experimental changes for that crate (e.g., experimental/$crate and
maybe experimental/pending-$crate)
-- this branch could be managed/checked/noticed by tooling
-- it can be merged back to the master one just like the pending branches
-- it can be reset to the unstable state if needed (previous experimental
changes abandonded, new experimental changes "branched" off)
having one experimental and one unstable branch with constant cross
merging will lead to mistakes that are messy and hard to undo..
> In conclusion, I'd like to request for comments on:
>
> 1. $SUITE and $SUITE/pending-* as the naming scheme to be adopted, or
> alternative proposals,
see above, but ack in principle besides that. do we only want to use this
for backports, or also for (potential) stable or stable-security updates?
when should we fork off those branches from master?
> 2. making an exception for unstable and keep using master and pending-*,
seems like that makes sense :)
> 3. whether or not we should have a separate exp branch, and if yes how
> to best manage syncing between the exp and the unstable branch.
see above
Reply to: