0.4.6 release procedure

Discussion about the project in general, organization, website, or any other details that aren't directly about the game.
Message
Author
User avatar
Vezzra
Release Manager, Design
Posts: 4609
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

0.4.6 release procedure

#1 Post by Vezzra » Wed Aug 31, 2016 6:21 pm

The issue tracker on github is down to one open issue tagged for the release and the PR addressing it, also there have been no objections so far to proceed with our release schedule as planned. So I'm going ahead, here is the release procedure:

1.) DONE - Creation of the 0.4.6 release branch

Deadline: Sunday, September 4th, 6pm UTC. Everything committed to master until then will make it into the release, so if there is anything you absolutely want to go in, your work has to be committed by then (or PRs merged). Only fixes will get cherry-picked into the release branch. After I've obviously been too lenient about that last time, I intend to be stricter this time.

Policy regarding fixes relevant for the release: Like everything else they must be committed to master (or a PR created against master). Most fixes will have to get cherry-picked into the release branch (unless they fix stuff in master that didn't make it into the release branch), so that has to be done subsequently. In order to keep track of everything, please post a respective request to cherry-pick your fix here in this thread and in addition to that tag your PR with the "status:cherry-pick for release" label (which I just created for that purpose). If you can't set that label yourself, add "[cherry-pick for release]" to the PR's title.

Whoever reviews and finally merges such a bugfix PR should also do the cherry-picking please. To all of you who have commit access: same goes for stuff you commit directly without creating a PR, please just go ahead and do the cherry-picking of your own stuff (provided you know for sure that your fix needs to be cherry-picked, when in doubt, post a respective question/request here in this thread). Basically the committer who is most familiar with the code changes of a fix is best suited to resolve conflicts should any turn up, and in most cases that's probably not me.

What I'm trying to get at: Please, don't just happily commit/merge fixes into master and leave me to figure out what needs to get cherry-picked and do the cherry-picking myself. That's not going to be very efficient, especially in case of conflicts. Muchas gracias in advance! ;)

@Marcel: I can't remember how we handled it last time - if a fix has been merged into master by a merge commit, shall we cherry pick the merge commit or each single commit which make up the fix?

After the release branch has been created, normal development can resume on master for post release things.

2.) DONE - Commit release specific changes to the release branch & changelog

Before RC1 can be produced, several release specific stuff has to be committed to the release branch: updated version number, commenting out Super Testers (if anyone can think of anything else, please tell, I tend to miss stuff).

Most importantly: changelog. Actually there is no need to wait for the creation of the release branch to start with that, but final touches will most likely be done after that (for obvious reasons). Geoff, may I ask you to do that again? You've been very efficient with that in the past, so if you don't mind...

3.) DONE - Producing test builds and RC builds

Once all the release specific things and the changelog have been comitted, and no more known issues critical for the release are open, RC1 can be produced.

First deadline for RC1: Tuesday, September 6th, 5pm UTC. Provided all the requirements are met (no open issues which need to be addressed, changelog finished etc.) I'm going to produce RC1.

Otherwise I'll produce pre-release test builds, and the second deadline for RC1 will be Friday, September 9th, 12 noon UTC. Hopefully by that time we'll be ready to produce RC1. If not, I'll decide on the further schedule then.

Once RC1 is out, everyone is encouraged to focus on playtesting. If issues turn up, they will get addressed and a new RC produced. Lather, rinse, repeat until we've addressed everything we deem critical for the release (we won't be able to address every last tiny issue ;)).

4.) DONE - Declaring the official 0.4.6 release

Once we have a RC build we're satisfied with, this build will be declared the official 0.4.6 release. The respective commit will be tagged, announcements posted (forum, wiki main page news, Twitter, Youtube - Geoff, anything else?). Some might decide to take a little break after that (I will, as already mentioned, be on my autumn break, so probably not as present as usual), and then it's back to business as usual.

Any questions/objections/comments?

EDIT1: status update 2016-09-04
EDIT2: status update 2016-09-09
EDIT3: status update 2016-09-22

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 12249
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: 0.4.6 release procedure

#2 Post by Geoff the Medio » Wed Aug 31, 2016 6:25 pm

Vezzra wrote:...announcements posted (forum, wiki main page news, Twitter, Youtube - Geoff, anything else?).
There's a subreddit: https://www.reddit.com/r/FreeOrion/ Not much traffic, but might as well get a post, if you or someone else has an account (I don't).

User avatar
adrian_broher
Programmer
Posts: 1072
Joined: Fri Mar 01, 2013 9:52 am
Location: Germany

Re: 0.4.6 release procedure

#3 Post by adrian_broher » Wed Aug 31, 2016 6:32 pm

Any questions/objections/comments?
Next time we should maybe create an issue for release? Having a checklist of tasks is probably nice to have as a template, also referencing issues as blockers or for requesting cherry picks is probably a nice idea.
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz

User avatar
Vezzra
Release Manager, Design
Posts: 4609
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: 0.4.6 release procedure

#4 Post by Vezzra » Wed Aug 31, 2016 6:33 pm

I don't have a reddit account too (as I try to avoid those "social network" sites alltogether), but if anyone has, they are welcome to post there of course.

User avatar
Vezzra
Release Manager, Design
Posts: 4609
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: 0.4.6 release procedure

#5 Post by Vezzra » Wed Aug 31, 2016 6:37 pm

adrian_broher wrote:Next time we should maybe create an issue for release? Having a checklist of tasks is probably nice to have as a template, also referencing issues as blockers or for requesting cherry picks is probably a nice idea.
Sounds like a good idea, I'm definitely open to suggestions. TBH, haven't thought of doing this via a github issue before.

User avatar
Vezzra
Release Manager, Design
Posts: 4609
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: 0.4.6 release procedure

#6 Post by Vezzra » Wed Aug 31, 2016 6:40 pm

Oh, btw: @Marcel, if you can think of a better text for my new "status:cherry-pick for release" label (what I came up with sounds a little bit ackward to me), feel free to edit it.

User avatar
adrian_broher
Programmer
Posts: 1072
Joined: Fri Mar 01, 2013 9:52 am
Location: Germany

Re: 0.4.6 release procedure

#7 Post by adrian_broher » Wed Aug 31, 2016 9:17 pm

If a fix has been merged into master by a merge commit, shall we cherry pick the merge commit or each single commit which make up the fix?
When cherry-picking you're picking the diff content of the commit IIRC. Merge-commits don't contain any diff content. So you can only cherry pick a single (or a range of) regular commits, but no merge commit.
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz

AndrewW
Juggernaut
Posts: 767
Joined: Mon Feb 04, 2013 10:15 pm

Re: 0.4.6 release procedure

#8 Post by AndrewW » Thu Sep 01, 2016 7:34 am

Geoff the Medio wrote:
Vezzra wrote:...announcements posted (forum, wiki main page news, Twitter, Youtube - Geoff, anything else?).
There's a subreddit: https://www.reddit.com/r/FreeOrion/ Not much traffic, but might as well get a post, if you or someone else has an account (I don't).
IRC channel topic? (Still shows Latest release 0.4.4)

User avatar
Vezzra
Release Manager, Design
Posts: 4609
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: 0.4.6 release procedure

#9 Post by Vezzra » Thu Sep 01, 2016 7:51 am

AndrewW wrote:IRC channel topic? (Still shows Latest release 0.4.4)
I don't do IRC at all (ever), so I'll leave that to someone else.

AndrewW
Juggernaut
Posts: 767
Joined: Mon Feb 04, 2013 10:15 pm

Re: 0.4.6 release procedure

#10 Post by AndrewW » Thu Sep 01, 2016 3:14 pm

Vezzra wrote:
AndrewW wrote:IRC channel topic? (Still shows Latest release 0.4.4)
I don't do IRC at all (ever), so I'll leave that to someone else.
The channels is +t (topic lock), and the only one showing up on the access list is freenode-staff so that could be an issue.

User avatar
Vezzra
Release Manager, Design
Posts: 4609
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: 0.4.6 release procedure

#11 Post by Vezzra » Fri Sep 02, 2016 12:36 pm

Just a little update: all issues and PRs critical for the release are resolved/merged, the "Release v0.4.6" milestone is finally at 100% (as of the time of this post). 8)

Which means we're on track to meet the deadline for the creation of the release branch. However, there are still several issues tagged as bugs which, although not critical, can still get fixed. Anyone working on one of these (or intending to do so), if you want to get it in for the release, remember to get it done (that is, committed/merged) until Sunday 6pm UTC.

User avatar
Vezzra
Release Manager, Design
Posts: 4609
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: 0.4.6 release procedure

#12 Post by Vezzra » Sun Sep 04, 2016 7:07 pm

Release branch for 0.4.6 has been created.

First deadline for producing RC1 remains: Tuesday, September 6th, 5pm UTC. Provided no serious issues turn up and the changelog is ready. ;)

User avatar
Vezzra
Release Manager, Design
Posts: 4609
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: 0.4.6 release procedure

#13 Post by Vezzra » Tue Sep 06, 2016 7:16 pm

Update: changelog not yet ready, so I've produced pre-release test builds instead of RC1. Second deadline for RC1: Friday, September 9th, 12 noon UTC.

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 12249
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: 0.4.6 release procedure

#14 Post by Geoff the Medio » Wed Sep 07, 2016 10:11 am

A list of bullet points that various people consider to be major features / additions in this version would be helpful. Replies here or somewhere else as Vezzra's prefers...

User avatar
Vezzra
Release Manager, Design
Posts: 4609
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: 0.4.6 release procedure

#15 Post by Vezzra » Wed Sep 07, 2016 10:55 am

Geoff the Medio wrote:Replies here or somewhere else as Vezzra's prefers...
Here in this thread is fine.

Post Reply