-
Notifications
You must be signed in to change notification settings - Fork 332
[Process] Release management #843
Description
Hey folks,
I think we need to setup a bit of process to decide how we want to manage releases.
Here is my proposal.
I think we need to designate an official release manager and his backup. Two people would be necessary.
Everyone could keep access on pypi, but the goal here, is more to designate an identified person and avoid asking or requesting to everybody the same questions at each new release.
When the release manager think that a new release is needed, then he could create a new version by announcing it via a dedicated issue. Then the release could be created the next day to let's time to everyone to react.
If the release manager plan to be absent, then he could inform his backup and the release will continue to be managed during his absence.
Release manager and his backup would serve as contact for release topics with the outside world, more or less like the security contact role and security topics.
I'd suggest to avoid releases Friday afternoon, and in this case to wait early the next Monday in case If a patch is missing, or a last minute bug found.
I'd suggest to follow semver to choose the version number.
Release could be automatically created by pushing tags, and by using github actions coupled with OIDC on Pypi. With that anybody who push a tag will generate a new release. However, we need a bit of coordination to manage this tag creation, that's the goal of this proposal.
I don't want to create a bureaucracy, but I think we need a bit of official process if we want to avoid anoying situation and to know how to work together.
I'm used to manage releases, so, if no one else volunteer, I'd be happy to play the release manager role, else I'd be also happy to leave the role to someone else.
Thoughts?