* Reflections on the release process @ 2020-04-15 20:16 Ludovic Courtès 2020-04-17 12:46 ` zimoun 0 siblings, 1 reply; 5+ messages in thread From: Ludovic Courtès @ 2020-04-15 20:16 UTC (permalink / raw) To: guix-devel Hello Guix! The release process is long and tedious. I’m super happy we made that release and did a lot of work collectively testing and fixing things, but I thought I’d share my frustrations while it’s fresh in memory so we can brainstorm and make it better for next time! 1. “make release” requires ~6 hours to build everything. You have to have offloading enabled and the connections have to be stable all along. In total it builds the ‘guix’ package six times (once for each binary tarball, then once for each ISO image). 2. “make release” commits to update ‘guix’ and these commits are signed because that’s our Git config. That means gpg-agent must not forget your passphrase during that time or the process will stop in the middle. I work around that by temporarily increasing gpg-agent’s ‘default-cache-ttl’, only when I’m at home and near my laptop, but it’s obviously not great. 3. ‘guix’ in the ISO image can install 1.1.0 precisely, but that means that the commit that defines 1.1.0 has typically not been picked up by ci.guix.gnu.org (or we’d have to push it explicitly). So you have to manually get berlin to build it afterwards or anyone installing Guix System will build from source. 4. We lack a clear way to mark bugs as release-critical. I’m really happy Florian, Mathieu, and I have been able to work together and squash bugs one by one (thank you!). Still, it would have been better if we could have tagged which is release-critical and which is not, to prevent misunderstandings such as regarding the NVMe bug: <https://issues.guix.gnu.org/issue/40590>. Can Debbugs help? The GCC folks have a system that sends email with an update on the number of release-critical bugs. I’m sure we can learn from how others deal with that. 5. With the installer, we have to test on actual hardware, and that necessarily takes time. Thumbs up to everyone who tried the RCs and reported back! Perhaps we need to make time for more RCs in the future. Yet, we probably don’t want the frozen branch to live for too long, so that should still be fast-paced. 6. Writing release notes, announcements, etc. takes a lot of time. Part of the pain for 1–3 is due to the insane amount of time it takes to build Guix entirely. That’s mostly work to be done on Guile’s compiler, which is a top priority for Guix. Perhaps there are also things we can do on the Guix side, such as arranging for ISO images to use a Guix built with (guix self) rather than a ‘guix’ package to rebuild build times. For the other issues, I’m interested in any ideas you may have! Until then, big thanks to everyone who helped out over the months and especially over the last few days—now it’s party time! :-) Ludo’. ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Reflections on the release process 2020-04-15 20:16 Reflections on the release process Ludovic Courtès @ 2020-04-17 12:46 ` zimoun 2020-04-22 20:09 ` Ludovic Courtès 0 siblings, 1 reply; 5+ messages in thread From: zimoun @ 2020-04-17 12:46 UTC (permalink / raw) To: Ludovic Courtès; +Cc: guix-devel Hi Ludo, Thanks to everyone ! On Wed, 15 Apr 2020 at 22:18, Ludovic Courtès <ludo@gnu.org> wrote: > 4. We lack a clear way to mark bugs as release-critical. I’m really > happy Florian, Mathieu, and I have been able to work together and squash > bugs one by one (thank you!). Still, it would have been better if we > could have tagged which is release-critical and which is not, to prevent > misunderstandings such as regarding the NVMe bug: > <https://issues.guix.gnu.org/issue/40590>. Can Debbugs help? The GCC > folks have a system that sends email with an update on the number of > release-critical bugs. I’m sure we can learn from how others deal with > that. The first easy step seems to tag the relevant bug as release-critical or simply rc. Currently, the tags nomal, security, serious, moreinfo, important, unreproducible are used in Debbugs. Then a second step could be to collect these release critical bugs and display them on issues.guix.gnu.org (or data.guix.gnu.org) for example remplacing the circle exclamation mark by a red triangle exclamation mark (or any really visible symbol). And because the "recent activities" is already sorted, it becomes easier to point the remaining release critical bugs, the ones stuck, etc. > For the other issues, I’m interested in any ideas you may have! About the "frozen" window, does it make to schedule it in advance? For example a couple of months before. And for example, does it make sense to say: at least one release each year on the March 14th (Pi day ;-) or approximately. Because in general FOSDEM is at the beginning of February and it is a big party where some of us come then back home refill of energy, we could agree around this date (beginning of Feb.) on the frozen window date (say end of February) and then release around middle of March. From my point of view, using the Guix Days as catalyst for releasing should help the process. Cheers, simon ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Reflections on the release process 2020-04-17 12:46 ` zimoun @ 2020-04-22 20:09 ` Ludovic Courtès 2020-04-24 16:06 ` zimoun 2020-04-24 16:45 ` Gábor Boskovits 0 siblings, 2 replies; 5+ messages in thread From: Ludovic Courtès @ 2020-04-22 20:09 UTC (permalink / raw) To: zimoun; +Cc: guix-devel Hi! zimoun <zimon.toutoune@gmail.com> skribis: > On Wed, 15 Apr 2020 at 22:18, Ludovic Courtès <ludo@gnu.org> wrote: > >> 4. We lack a clear way to mark bugs as release-critical. I’m really >> happy Florian, Mathieu, and I have been able to work together and squash >> bugs one by one (thank you!). Still, it would have been better if we >> could have tagged which is release-critical and which is not, to prevent >> misunderstandings such as regarding the NVMe bug: >> <https://issues.guix.gnu.org/issue/40590>. Can Debbugs help? The GCC >> folks have a system that sends email with an update on the number of >> release-critical bugs. I’m sure we can learn from how others deal with >> that. > > The first easy step seems to tag the relevant bug as release-critical > or simply rc. > Currently, the tags nomal, security, serious, moreinfo, important, > unreproducible are used in Debbugs. Yes, but how do we do that? I don’t think Debbugs supports a “release-critical” tag, does it? Or perhaps we could take advantage of Mumi to add special tags or something? > Then a second step could be to collect these release critical bugs and > display them on issues.guix.gnu.org (or data.guix.gnu.org) for example > remplacing the circle exclamation mark by a red triangle exclamation > mark (or any really visible symbol). And because the "recent > activities" is already sorted, it becomes easier to point the > remaining release critical bugs, the ones stuck, etc. Agreed. >> For the other issues, I’m interested in any ideas you may have! > > About the "frozen" window, does it make to schedule it in advance? For > example a couple of months before. > And for example, does it make sense to say: at least one release each > year on the March 14th (Pi day ;-) or approximately. > Because in general FOSDEM is at the beginning of February and it is a > big party where some of us come then back home refill of energy, we > could agree around this date (beginning of Feb.) on the frozen window > date (say end of February) and then release around middle of March. > From my point of view, using the Guix Days as catalyst for releasing > should help the process. I think there’s no question we want more than one release per year. For that to happen, we should make sure the process is well documented, as smooth as possible, largely automated, and not tied to a single person (ahem…). Once we have that, plus some planning such as marking RC-critical bugs, it’ll be easier to make releases IMO. Thanks, Ludo’. ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Reflections on the release process 2020-04-22 20:09 ` Ludovic Courtès @ 2020-04-24 16:06 ` zimoun 2020-04-24 16:45 ` Gábor Boskovits 1 sibling, 0 replies; 5+ messages in thread From: zimoun @ 2020-04-24 16:06 UTC (permalink / raw) To: Ludovic Courtès; +Cc: guix-devel On Wed, 22 Apr 2020 at 22:09, Ludovic Courtès <ludo@gnu.org> wrote: > Yes, but how do we do that? I don’t think Debbugs supports a > “release-critical” tag, does it? Or perhaps we could take advantage of > Mumi to add special tags or something? The GNU instance of Debbugs does not support it, I agree. However, the Debian instance supports more tags than the GNU one, e.g., patch, wontfix, moreinfo, unreproducible, help, security, upstream, pending, confirmed, ipv6, lfs, d-i, l10n, newcomer, a11y, ftbfs, fixed-upstream, fixed, fixed-in-experimental, potato, woody, sarge, etch, lenny, squeeze, wheezy, jessie, stretch, buster, bullseye, bookworm, sid, experimental, sarge-ignore, etch-ignore, lenny-ignore, squeeze-ignore, wheezy-ignore, jessie-ignore, stretch-ignore, buster-ignore, bullseye-ignore, bookworm-ignore https://www.debian.org/Bugs/ I have not dove into the Debbugs configuration so I do not know if it is easy or not to extend the list of tags. However, because it is managed by GNU sysadmin, it should be a long road. ;-) And I do not know what is the "effect" of the 'block' command. Because a "release vx.y" bug could be open. And the release critical issues could be marked as "block release-vx.y". This bug "release vx.y" could help to synchronise/coordinate and/or track progress and should help for managing the schedule and deadlines. I do not know. I am thinking loud. > I think there’s no question we want more than one release per year. For > that to happen, we should make sure the process is well documented, as > smooth as possible, largely automated, and not tied to a single person > (ahem…). Agree. Cheers, simon ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Reflections on the release process 2020-04-22 20:09 ` Ludovic Courtès 2020-04-24 16:06 ` zimoun @ 2020-04-24 16:45 ` Gábor Boskovits 1 sibling, 0 replies; 5+ messages in thread From: Gábor Boskovits @ 2020-04-24 16:45 UTC (permalink / raw) To: Ludovic Courtès; +Cc: guix-devel [-- Attachment #1: Type: text/plain, Size: 3002 bytes --] Hello Ludo, Ludovic Courtès <ludo@gnu.org> ezt írta (időpont: 2020. ápr. 22., Sze 22:09): > Hi! > > zimoun <zimon.toutoune@gmail.com> skribis: > > > On Wed, 15 Apr 2020 at 22:18, Ludovic Courtès <ludo@gnu.org> wrote: > > > >> 4. We lack a clear way to mark bugs as release-critical. I’m really > >> happy Florian, Mathieu, and I have been able to work together and squash > >> bugs one by one (thank you!). Still, it would have been better if we > >> could have tagged which is release-critical and which is not, to prevent > >> misunderstandings such as regarding the NVMe bug: > >> <https://issues.guix.gnu.org/issue/40590>. Can Debbugs help? The GCC > >> folks have a system that sends email with an update on the number of > >> release-critical bugs. I’m sure we can learn from how others deal with > >> that. > > > > The first easy step seems to tag the relevant bug as release-critical > > or simply rc. > > Currently, the tags nomal, security, serious, moreinfo, important, > > unreproducible are used in Debbugs. > > Yes, but how do we do that? I don’t think Debbugs supports a > “release-critical” tag, does it? Or perhaps we could take advantage of > Mumi to add special tags or something? > Actually the description of the severity level serious says its intended meaning is making a bug release critical. I believe we could simply use that. > > Then a second step could be to collect these release critical bugs and > > display them on issues.guix.gnu.org (or data.guix.gnu.org) for example > > remplacing the circle exclamation mark by a red triangle exclamation > > mark (or any really visible symbol). And because the "recent > > activities" is already sorted, it becomes easier to point the > > remaining release critical bugs, the ones stuck, etc. > > Agreed. > > >> For the other issues, I’m interested in any ideas you may have! > > > > About the "frozen" window, does it make to schedule it in advance? For > > example a couple of months before. > > And for example, does it make sense to say: at least one release each > > year on the March 14th (Pi day ;-) or approximately. > > Because in general FOSDEM is at the beginning of February and it is a > > big party where some of us come then back home refill of energy, we > > could agree around this date (beginning of Feb.) on the frozen window > > date (say end of February) and then release around middle of March. > > From my point of view, using the Guix Days as catalyst for releasing > > should help the process. > > I think there’s no question we want more than one release per year. For > that to happen, we should make sure the process is well documented, as > smooth as possible, largely automated, and not tied to a single person > (ahem…). > > Once we have that, plus some planning such as marking RC-critical bugs, > it’ll be easier to make releases IMO. > > Thanks, > Ludo’. > Best regards, g_bor > > [-- Attachment #2: Type: text/html, Size: 4438 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-04-24 16:45 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2020-04-15 20:16 Reflections on the release process Ludovic Courtès 2020-04-17 12:46 ` zimoun 2020-04-22 20:09 ` Ludovic Courtès 2020-04-24 16:06 ` zimoun 2020-04-24 16:45 ` Gábor Boskovits
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).