Decouple a bit more the RC release from stable branches creation

Currently, the process is to create the stable branches when the RC1 release is executed.

Problem is that the RC release is often a bit late, which make it impossible to push stuff on master. So sometimes (like today) we create the new stable branches a bit messily while waiting for the release to be ready.

I just improved a bit the release script to make it easier to reuse the “create the stable branches” part without doing the actual release. But I would like us to standardize a bit more when exactly the stable branches should be created. I can think of the following possibilities:

  1. it’s fine like this, we don’t need to be picky
  2. make it official that the new stable branches are always created the planned release day at the latest, even if the release is not ready
  3. create the stable branches a bit before the release day, when we start stabilizing it (basically when the RM start sending message like “please guys, stop messing with master, we are trying to stabilize for the release”)

WDYT ?

1. is what require the less work and is the less error-prone in terms of "s**t I forgot to cherry-pick that fix in the stable branch", but it’s also quite annoying to be stuck for days for anyone who is not really involved in the stabilization of the RC. So I’m more in favor of moving to 2. or 3..

WDYT ?

We could even decide to formalize this a bit more, saying that, e.g., the release branch should be created on Wednesday before the RC. Then on Thursday, which is frequently a bug fixing day, we could better stabilize that branch while committing more risky bug fixes only on master.

However, even option 2 (create the branch as first step on the release day) would be a good improvement.

So +1 for 3, +0 for 2 and -0 for 1 from my side.

+1 to formalize on a date for creating the branch. Sounds good to me to say we do it the wednesday before the planned release date. The only drawback I can think of is that we’ll have one supplementary branch in the CI for a few days, but I guess it’s ok: we can abort builds we don’t want.

Same for me

Thanks

+1 for 3, Wednesday before the release day.

+1 for 3, I think it’s better to make it systematic rather than having to discuss the decision each time we are late.
Now we’ll really need to be collectively careful to have everything cherry-picked correctly, as it probably requires some time to get used to this new process.

Yes, it’s a good idea.

So 3 seems to have a lot of success. And let’s also indeed use this opportunity to officially put on Wednesday the time when we start stabilizing the RC. It will then be RM’s responsibility to announce it on the chat and create the branch accordingly.

I just added all that to the ReleasePlan template.

2 Likes

Also for me: +1 for 3, Wednesday before the release day.

Thx