-
-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[RFC] docs/dev-proc/standard-release-process.md: Update release process #944
base: master
Are you sure you want to change the base?
Conversation
Signed-off-by: Michał Żygowski <[email protected]>
There is one obvious(-ly impossible) solution: don't do multiple releases at the same time. As we obviously can't afford that, perhaps we should focus on which parts of the release are blocking. It isn't development, it may happen on dedicated branch (call it It also isn't the rebase itself, it would have to be done anyway. In addition, with properly split commits rebasing isn't that hard, unless there was a major redesign of common code - but in that case rebase would be needed anyway, in the next release at the latest, but most likely before the merge. This is a cost that will have to be paid, and it should be included in the estimates. Smaller iterations will make it appear smaller, but I'm not sure if the total cost would be smaller. After all, RC preparation cost doesn't consist of only the developers time. Testing time IMHO is the least predictable (but not necessarily the longest) part of the release, for various reasons, including broken or misplaced hardware (DUT, RTE, pomona clip), lack of required OS on the device, issues with OSFV itself, need for manual retests etc. Minimal regression was created partially to ensure that the environment is ready for full set of tests, but I don't think it is widely used for that purpose. Then there is the whole "housekeeping" part, like preparation of release notes, newsletter, publishing binaries etc. There are tools that may help with changelog automation, but most of them expect to work with linear history, which current process doesn't always provide. The fact that a big part of changes happens in edk2 also doesn't help. In general, I like the idea of having RCs on main branch, but not necessarily at the cost of having many more smaller RCs. I'd slightly modify it to this:
Points 4-7 and 9 are new or modified, the rest is similar to what we have. This addresses few things:
Cons:
|
The idea here is to make it more clear that having a release branch doesn't necessarily fork in our favor for the following reasons:
main
branch isn't really main, butdevelop
is instead. All of these little things contribute to the disorder and never-ending instability of the test environment. coreboot may end up the same way if we keep managing source like that.As PR states, it is an RFC. Comments and constructive critique appreciated.
PS: I'm aware of different approaches being discussed, such as patch-queue and upstream-first.