Changes between Version 32 and Version 33 of ReleaseProcessDraft
- Timestamp:
- Oct 5, 2014, 9:18:13 PM (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
ReleaseProcessDraft
v32 v33 1 1 [[TOC]] 2 2 3 == Standard schedule 3 == Standard schedule == 4 4 1. Day 0: Feature freeze 5 5 1. Day 3: String freeze … … 9 9 1. Day 9: Release 10 10 11 == Release progress table 12 Put your name into the "Accepted by" column to take over a task and agree to completed it in time according to the Deadline. 13 Update the status column regularly enough to keep team member informed. Especially note if you are waiting for input or are otherwise prevented from working on the task. 14 15 Next release: Alpha 17 Quercus [[BR]] 16 Current phase: String freeze (progress delayed by release blocking bugs) 17 18 === Development 19 Deadline: 20 || Task || Accepted by || Status || 21 || [ReleaseProcessDraft#Startreleaseprocess Start release process] || Team || Done || 22 || [ReleaseProcessDraft#Announcestringfreeze Announce string freeze] || Yves, Itms || Done || 23 24 === Feature freeze 11 == Release progress table == 12 Put your name into the "Accepted by" column to take over a task and agree to completed it in time according to the Deadline. Update the status column regularly enough to keep team member informed. Especially note if you are waiting for input or are otherwise prevented from working on the task. 13 14 Next release: Alpha 17 Quercus [[BR]] Current phase: String freeze (progress delayed by release blocking bugs) 15 16 === Development === 17 Deadline: 18 19 || Task || Accepted by || Status || 20 || [wiki:ReleaseProcessDraft#Startreleaseprocess Start release process] || Team || Done || 21 || [wiki:ReleaseProcessDraft#Announcestringfreeze Announce string freeze] || Yves, Itms || Done || 22 23 === Feature freeze === 25 24 Deadline: 21.09.2014 24:00 GMT 26 || Task || Accepted by || Status || 27 || [ReleaseProcessDraft#Organizestaffmatchtesting Organize staff match (testing)] || Pureon || Scheduled for Saturday 20th at 18:00GMT, another one for Saturday 27th at 18:00GMT || 28 29 === String freeze 25 26 || Task || Accepted by || Status || 27 || [wiki:ReleaseProcessDraft#Organizestaffmatchtesting Organize staff match (testing)] || Pureon || Scheduled for Saturday 20th at 18:00GMT, another one for Saturday 27th at 18:00GMT || 28 29 === String freeze === 30 30 Deadline: 25.09.2014 24:00 GMT 31 || Task || Accepted by || Status || 32 33 === Translation freeze 34 Deadline: 35 || Task || Accepted by || Status || 36 || [ReleaseProcessDraft#Confirmtranslationfreeze Confirm translation freeze] || Itms || Done || 37 || [ReleaseProcessDraft#Translationcheck Translation check] || Itms || || 38 39 === Packaging 31 32 || Task || Accepted by || Status || 33 34 === Translation freeze === 40 35 Deadline: 41 || Task || Accepted by || Status || 42 || [ReleaseProcessDraft#Prepareforpackaging Prepare for packaging] || || || 43 || [ReleaseProcessDraft#Packaging:WindowsandLinux Packaging: Windows and Linux] || || || 44 || [ReleaseProcessDraft#Packaging:MacOSX Packaging: Mac OS X] || historicbruno || || 45 || [ReleaseProcessDraft#Packagetesting:Linux Package testing: Linux] || || || 46 || [ReleaseProcessDraft#Packagetesting:Windows Package testing: Windows] || || || 47 || [ReleaseProcessDraft#Packagetesting:MacOSX Package testing: Mac OS X] || historicbruno || || 48 || [ReleaseProcessDraft#UploadtoSourceforge Upload to Sourceforge] || || || 49 50 === Release 36 37 || Task || Accepted by || Status || 38 || [wiki:ReleaseProcessDraft#Confirmtranslationfreeze Confirm translation freeze] || Itms || Done || 39 || [wiki:ReleaseProcessDraft#Translationcheck Translation check] || Itms || || 40 41 === Packaging === 42 Deadline: 43 44 || Task || Accepted by || Status || 45 || [wiki:ReleaseProcessDraft#Prepareforpackaging Prepare for packaging] || || || 46 || [wiki:ReleaseProcessDraft#Packaging:WindowsandLinux Packaging: Windows and Linux] || || || 47 || [wiki:ReleaseProcessDraft#Packaging:MacOSX Packaging: Mac OS X] || historicbruno || || 48 || [wiki:ReleaseProcessDraft#Packagetesting:Linux Package testing: Linux] || || || 49 || [wiki:ReleaseProcessDraft#Packagetesting:Windows Package testing: Windows] || || || 50 || [wiki:ReleaseProcessDraft#Packagetesting:MacOSX Package testing: Mac OS X] || historicbruno || || 51 || [wiki:ReleaseProcessDraft#UploadtoSourceforge Upload to Sourceforge] || || || 52 53 === Release === 51 54 Deadline: 07.10.2014 52 || Task || Accepted by || Status || 53 || [ReleaseProcessDraft#Writereleaseannouncement Write release announcement] || Jeru || || 54 || [ReleaseProcessDraft#Createreleasevideo Create release video] || Brynn || || 55 || [ReleaseProcessDraft#Release:Downloadredirects Download redirects] || || || 56 || [ReleaseProcessDraft#Release:Notifypackagers Notify packagers] || Leper || || 57 || [ReleaseProcessDraft#Release:Publishannouncement Publish announcement] || || || 58 59 == Task descriptions 60 61 === Start release process 62 '''Description:''' [[BR]] 63 The team decides that there are enough new features and that it's time to release a new alpha version. Usually in a team meeting, we decide when the regular schedule starts and if there are any differences to the predefined schedule. 64 [[BR]]'''Can be completed in phase:''' Development 65 [[BR]]'''Candidates:''' Whole team (usually at the meeting) 66 67 === Announce string freeze 68 '''Description:''' [[BR]] 69 Translators should be informed about the planned String freeze date and the Translation freeze date. The idea is to give them some time to polish the final translations for the release. During development, they probably don't always update translation within a few days after something has changed. Also upload updated .pot files and make sure you update them if original strings change or get added in the next days. 70 [[BR]]'''Can be completed in phase:''' Development 71 [[BR]]'''Candidates:''' Gallaecio, Leper, Sanderd17, Yves 72 73 === Organize staff match (testing) 74 '''Description:''' [[BR]] 75 If possible a staff match should be organized before the release. Often important bugs get discovered in such staff matches. Organizing the match means finding a good date and time and informing the other team members (or community members). 76 [[BR]]'''Can be completed in phase:''' Development 77 [[BR]]'''Candidates:''' Whole team 78 79 === Confirm translation freeze 80 '''Description:''' [[BR]] You make another announcement on the translation platform at the specified and announced Translation freeze date (assuming it hasn't changed in the meantime). After that, you regenerate the translation templates via [source:ps/trunk/source/tools/i18n/updateTemplates.py updateTemplates.py] and the translations (for backup purposes) via [source:ps/trunk/source/tools/i18n/pullTranslations.py pullTranslations.py]. 81 [[BR]]'''Can be completed in phase:''' Translation freeze 82 [[BR]]'''Candidates:''' Gallaecio, Leper, Sanderd17, Yves 83 84 === Translation check 85 '''Description:''' [[BR]] 86 Check the translations for "vandalism". It's really just checking if there are any strings that were added in bad intent and not about trying to improve translation quality. There's a script to check the translation files for URLs (TODO: where?), but this task also involves manual checking. Obviously we can't carefully read through all strings in all translations. 87 [[BR]]'''Can be completed in phase:''' Translation freeze 88 [[BR]]'''Candidates:''' Whole team 89 90 === Multiplayer lobby adjustments 91 '''Description''' [[BR]] 55 56 || Task || Accepted by || Status || 57 || [wiki:ReleaseProcessDraft#Writereleaseannouncement Write release announcement] || Jeru || || 58 || [wiki:ReleaseProcessDraft#Createreleasevideo Create release video] || Brynn || || 59 || [wiki:ReleaseProcessDraft#Release:Downloadredirects Download redirects] || || || 60 || [wiki:ReleaseProcessDraft#Release:Notifypackagers Notify packagers] || Leper || || 61 || [wiki:ReleaseProcessDraft#Release:Publishannouncement Publish announcement] || Erik || || 62 63 == Task descriptions == 64 === Start release process === 65 '''Description:''' [[BR]] The team decides that there are enough new features and that it's time to release a new alpha version. Usually in a team meeting, we decide when the regular schedule starts and if there are any differences to the predefined schedule. [[BR]]'''Can be completed in phase:''' Development [[BR]]'''Candidates:''' Whole team (usually at the meeting) 66 67 === Announce string freeze === 68 '''Description:''' [[BR]] Translators should be informed about the planned String freeze date and the Translation freeze date. The idea is to give them some time to polish the final translations for the release. During development, they probably don't always update translation within a few days after something has changed. Also upload updated .pot files and make sure you update them if original strings change or get added in the next days. [[BR]]'''Can be completed in phase:''' Development [[BR]]'''Candidates:''' Gallaecio, Leper, Sanderd17, Yves 69 70 === Organize staff match (testing) === 71 '''Description:''' [[BR]] If possible a staff match should be organized before the release. Often important bugs get discovered in such staff matches. Organizing the match means finding a good date and time and informing the other team members (or community members). [[BR]]'''Can be completed in phase:''' Development [[BR]]'''Candidates:''' Whole team 72 73 === Confirm translation freeze === 74 '''Description:''' [[BR]] You make another announcement on the translation platform at the specified and announced Translation freeze date (assuming it hasn't changed in the meantime). After that, you regenerate the translation templates via [source:ps/trunk/source/tools/i18n/updateTemplates.py updateTemplates.py] and the translations (for backup purposes) via [source:ps/trunk/source/tools/i18n/pullTranslations.py pullTranslations.py]. [[BR]]'''Can be completed in phase:''' Translation freeze [[BR]]'''Candidates:''' Gallaecio, Leper, Sanderd17, Yves 75 76 === Translation check === 77 '''Description:''' [[BR]] Check the translations for "vandalism". It's really just checking if there are any strings that were added in bad intent and not about trying to improve translation quality. There's a script to check the translation files for URLs (TODO: where?), but this task also involves manual checking. Obviously we can't carefully read through all strings in all translations. [[BR]]'''Can be completed in phase:''' Translation freeze [[BR]]'''Candidates:''' Whole team 78 79 === Multiplayer lobby adjustments === 80 '''Description''' [[BR]] 81 92 82 * Maybe reset SVN (current alpha) rankings. 93 83 * Change the bot's welcome message to notify users that a new version is available. 94 84 * Create a new MUC room and add a new bot for the SVN version. 95 [[BR]]'''Can be completed in phase:''' Release 96 [[BR]]'''Candidates:''' Leper, Josh, Scythetwirler 97 98 === Prepare for packaging 99 '''Description''' [[BR]] 85 86 [[BR]]'''Can be completed in phase:''' Release [[BR]]'''Candidates:''' Leper, Josh, Scythetwirler 87 88 === Prepare for packaging === 89 '''Description''' [[BR]] 90 100 91 * Ensure Alpha name and number have been updated in [source:ps/trunk/binaries/data/mods/public/gui/session/top_panel/label.xml label.xml], [source:ps/trunk/binaries/data/mods/public/gui/pregame/mainmenu.xml mainmenu.xml], and [source:ps/trunk/source/lobby/XmppClient.cpp#L107 XmppClient.cpp]. 101 92 * Edit the [source:/ps/trunk/source/tools/dist/remove-incomplete-translations.sh remove-incomplete-translations.sh] script to include all languages that need to be in the release (Include only >90% languages supported by our fonts and font system - see progress [https://www.transifex.com/projects/p/0ad/ on Transifex]) … … 107 98 * Check that SVN compiles and runs on OS X 108 99 * Run Windows autobuilder (or build manually with VS 2008 if autobuild is down - update [source:/ps/trunk/build/svn_revision svn_revision.txt] first!) 109 [[BR]]'''Can be completed in phase:''' ??? 110 [[BR]]'''Can didates:''' Whole team111 112 === Setup packaging 113 '''Description''' [[BR]] 114 These are common tasks that need to be done for all packaging on all systems. 100 101 [[BR]]'''Can be completed in phase:''' ??? [[BR]]'''Candidates:''' Whole team 102 103 === Setup packaging === 104 '''Description''' [[BR]] These are common tasks that need to be done for all packaging on all systems. 105 115 106 * Update public trunk checkout 116 107 * Ensure it is clean (`svn st --no-ignore`) 117 [[BR]]'''Can be completed in phase:''' Packaging 118 [[BR]]'''Candidates:''' People doing packaging 119 120 === Packaging: Windows and Linux 121 '''Description''' [[BR]] 122 * Complete the steps in [ReleaseProcessDraft#Setuppackaging Setup packaging] 108 109 [[BR]]'''Can be completed in phase:''' Packaging [[BR]]'''Candidates:''' People doing packaging 110 111 === Packaging: Windows and Linux === 112 '''Description''' [[BR]] 113 114 * Complete the steps in [wiki:ReleaseProcessDraft#Setuppackaging Setup packaging] 123 115 * Run [source:/ps/trunk/source/tools/dist/build.sh source/tools/dist/build.sh] 124 116 * Upload releases to http://releases.wildfiregames.com/ 125 117 * Verify sha1sums on server 126 [[BR]]'''Can be completed in phase:''' Packaging 127 [[BR]]'''Candidates:''' Whole team 128 129 === Packaging: Mac OS X 130 '''Description''' [[BR]] 131 * Complete the steps in [ReleaseProcessDraft#Setuppackaging Setup packaging] 118 119 [[BR]]'''Can be completed in phase:''' Packaging [[BR]]'''Candidates:''' Whole team 120 121 === Packaging: Mac OS X === 122 '''Description''' [[BR]] 123 124 * Complete the steps in [wiki:ReleaseProcessDraft#Setuppackaging Setup packaging] 132 125 * Build OS X app bundle: 133 126 * Requires OS X and Xcode … … 141 134 * Upload releases to http://releases.wildfiregames.com/ 142 135 * Verify sha1sums on server 143 [[BR]]'''Can be completed in phase:''' Packaging 144 [[BR]]'''Candidates:''' Historicbruno, Wraitii 145 146 === Package testing: Linux 147 '''Description''' [[BR]] 136 137 [[BR]]'''Can be completed in phase:''' Packaging [[BR]]'''Candidates:''' Historicbruno, Wraitii 138 139 === Package testing: Linux === 140 '''Description''' [[BR]] 141 148 142 * Delete `~/.cache/0ad` 149 143 * Extract release 150 144 * Build with `config=debug`, run `test_dbg`, run game, run editor 151 145 * Build with `config=release`, run `test`, run game, run editor 152 [[BR]]'''Can be completed in phase:''' Packaging 153 [[BR]]'''Candidates:''' Whole team 154 155 === Package testing: Mac OS X 156 '''Description''' [[BR]] 146 147 [[BR]]'''Can be completed in phase:''' Packaging [[BR]]'''Candidates:''' Whole team 148 149 === Package testing: Mac OS X === 150 '''Description''' [[BR]] 151 157 152 * Delete `~/Library/Caches/0ad/` 158 153 * Mount release DMG … … 160 155 * Test Atlas (main menu > Tools & Options > Scenario Editor) 161 156 * Delete `~/Library/Caches/0ad/` 162 [[BR]]'''Can be completed in phase:''' Packaging 163 [[BR]]'''Candidates:''' Whole team 164 165 === Package testing: Windows 166 '''Description''' [[BR]] 157 158 [[BR]]'''Can be completed in phase:''' Packaging [[BR]]'''Candidates:''' Whole team 159 160 === Package testing: Windows === 161 '''Description''' [[BR]] 162 167 163 * Delete `%localappdata%\0ad\cache` 168 164 * Extract release … … 172 168 * Build Debug version, check everything seems to work 173 169 * Run `test` project 174 [[BR]]'''Can be completed in phase:''' Packaging 175 [[BR]]'''Can didates:''' Whole team176 177 === Upload to Sourceforge 170 171 [[BR]]'''Can be completed in phase:''' Packaging [[BR]]'''Candidates:''' Whole team 172 173 === Upload to Sourceforge === 178 174 After all packages are created and tested, they can be uploaded to sourceforge. 175 179 176 {{{ 180 177 rsync -v --progress -e ssh 0ad-${SVNREV}-*.{exe,gz,xz} philiptaylor,zero-ad@frs.sourceforge.net:/home/frs/project/z/ze/zero-ad/releases/ 181 178 }}} 182 [[BR]]'''Can be completed in phase:''' Packaging 183 [[BR]]'''Candidates:''' Philip 184 185 === Write release announcement 186 '''Description''' [[BR]] 179 [[BR]]'''Can be completed in phase:''' Packaging [[BR]]'''Candidates:''' Philip 180 181 === Write release announcement === 182 '''Description''' [[BR]] 183 187 184 * Write a release announcement that will be published on the website and other places like Moddb. 188 185 * Describe new features, content and major bugfixes. If necessary ask people to provide descriptions. 189 186 * Create one or more unique screenshots that fit well for this Alpha release (or find someone to create these). 190 187 * Write a short description of the Alpha name and the reasons why we have chosen this name (historical term around the timeframe of 0 A.D.). 191 [[BR]]'''Can be completed in phase:''' Feature freeze 192 [[BR]]'''Candidates:''' Jeru 193 194 === Create release video 195 '''Description''' [[BR]] 196 An Alpha release video showcases the new features, content and major bugfixes of this version. It focuses more on the features that can be shown well in a video. Remember to upload the video on the play0ad youtube channel. 197 [[BR]]'''Can be completed in phase:''' Feature freeze 198 [[BR]]'''Candidates:''' Brynn 199 200 === Release: Download redirects 201 '''Description''' [[BR]] 188 189 [[BR]]'''Can be completed in phase:''' Feature freeze [[BR]]'''Candidates:''' Jeru 190 191 === Create release video === 192 '''Description''' [[BR]] An Alpha release video showcases the new features, content and major bugfixes of this version. It focuses more on the features that can be shown well in a video. Remember to upload the video on the play0ad youtube channel. [[BR]]'''Can be completed in phase:''' Feature freeze [[BR]]'''Candidates:''' Brynn 193 194 === Release: Download redirects === 195 '''Description''' [[BR]] 196 202 197 * Update release redirects to point to SF 203 198 * Update release pages (links, file sizes, checksums?): … … 205 200 * LatestReleaseMac 206 201 * LatestReleaseLinux 207 [[BR]]'''Can be completed in phase:''' Release 208 [[BR]]'''Candidates:''' Philip, ...? 209 210 === Release: Notify packagers 211 '''Description''' [[BR]] 202 203 [[BR]]'''Can be completed in phase:''' Release [[BR]]'''Candidates:''' Philip, ...? 204 205 === Release: Notify packagers === 206 '''Description''' [[BR]] 207 212 208 * Arch [https://www.archlinux.org/packages/community/x86_64/0ad/ 0ad] [https://www.archlinux.org/packages/community/any/0ad-data 0ad-data] - Flag Package Out of Date 213 209 * Debian - ping vincent_c on IRC … … 215 211 * Gentoo - email hasufell@ 216 212 * Ubuntu (PPA) - ping ricotz on IRC 217 [[BR]]'''Can be completed in phase:''' Release 218 [[BR]]'''Candidates:''' Leper, Everyone 219 220 === Release: Publish announcement 221 '''Description''' [[BR]] 213 214 [[BR]]'''Can be completed in phase:''' Release [[BR]]'''Candidates:''' Leper, Everyone 215 216 === Release: Publish announcement === 217 '''Description''' [[BR]] 218 222 219 * Official website http://play0ad.com 223 220 * Forum … … 229 226 * Freegamer 230 227 * E-mail regular bloggers/reporters 231 [[BR]]'''Can be completed in phase:''' Release 232 [[BR]]'''Candidates:''' Feneur, Jeru, Leper 233 234 235 === Update release progress on Trac 236 Description:[[BR]] 237 Remove all content from the Release progress table and replace "Next release" with the right version number. 238 [[BR]]Can be completed in phase: Development 239 [[BR]]Candidates: Everyone 240 228 229 [[BR]]'''Can be completed in phase:''' Release [[BR]]'''Candidates:''' Feneur, Jeru, Leper 230 231 === Update release progress on Trac === 232 Description:[[BR]] Remove all content from the Release progress table and replace "Next release" with the right version number. [[BR]]Can be completed in phase: Development [[BR]]Candidates: Everyone