Version 37 (modified by slavazanko, 11 years ago) (diff) |
---|
Release Guidelines
All next steps described at this page should be mirrored in release tickets step-by-step
Search previously created ticket with task about next version release (create if ticket not found) and follow by steps while preparing for the release:
- download PO-translations from Transifex.net by command tx pull --all (see before: how to set up local tx-repository) NOTE: keep the po/ru.po file unmodified while updated from Transifex.
- store translations in git repo by following commands:
cp -f $TX_REPO/master/*.po $GIT_REPO/po cd $GIT_REPO/po ./strip-location.sh *.po git add *.po git commit -s -m 'Updated translations from Transifex' git push origin master
- download the hint translations from Transifex.net by command: MC_SOURCE_ROOT_DIR=$(pwd) maint/utils/sync-transifex/mc.hint-fromTransifex.sh
- store translations in git repo by following commands:
git add doc/hints/l10n/mc.hint.* git commit -s -m 'Updated the hints translations from Transifex' git push origin master
- create new NEWS wiki page for next version with empty template. Template may be copied from current NEWS wiki page (without list of tasks and bugreports);
- add content of current NEWS wiki page to the doc/NEWS file in git repo. Save it in git by following commands:
git add doc/NEWS git commit -s -m 'Updated doc/NEWS file' git push origin master
- create new tag in git by command (see before: how to set up your gpg key for signing releases?)
git tag -s <version> # keep 'Release' comment git push origin <version>
- new version in Trac;
- new milestone in Trac
- create tar.(bz2|xz) package files:
./autogen.sh stop mkdir dist; cd dist; ../configure && make dist-bzip2 && make dist-xz
- make checksums for archives:
sha256sum mc-*tar.* > mc-{version}.sha256
- upload source packages and checksums to the special upload area;
- developers should download tarballs, verify checksums, compile and locally install. If everything is ok than developers keep votes in ticket;
- upload source packages and checksums to midnightcommander@…/home/midnightcommander/data (all maintainers have access via pubkeys);
- run command: ssh midnightcommander@ftp-osl.osuosl.org '/home/midnightcommander/trigger-midnightcommander'
- update Wiki start page with latest release number;
- write an announcement: list user visible changes (bugs and features);
- close current milestone;
- create new ticket (type=task, component=adm) for the next release;
- close ticket for release.
Notes:
- Cleanup branch should be named as XXXX_cleanup; where XXXX it's a number of current release ticket.
- The cleanup branch should be created by demand and should be voted and merged to main branch ASAP. Don't keep the cleanup branch in development stage longer that it needed.
- Activity around cleanup branch should occur in release ticket.
- Cleanup branch should be deleted after merging to main branch. Cleanup branch may be recreated with same name with any count of times.
- Cleanup branch shouldn't be merged to main branch in a week before release (all changes should be moved to cleanup branch for next release)