= Release Guidelines = While preparing for the release: * Search previously created ticket with task about next version release (create if no these tickets found); '''All next steps described at this page should be mirrored in this ticket step-by-step''' * for stable: search tickets by 'stable-candidate' keyword and apply commits to stable branch from all found tickets; * download translations from Transifex.net by command [http://help.transifex.net/features/client/index.html tx]{{{ pull --all}}} ([wiki:TxRepoSetup how to set up local tx-repository]) and run: {{{ cp -f $TX_REPO//*.po $GIT_REPO/po cd $GIT_REPO/po ./strip-location.sh *.po git add *.po git commit -s -m Updated translations from Transifex'' }}} * update NEWS file in repo and Wiki; * create new tag in git by command {{{ git tag -s git push origin }}} * new version in Trac; * new milestone in Trac (no needed for stable branch); * create tar.(bz2|xz) package files: {{{ mkdir dist; cd dist; ../configure && make dist-bzip2 && make dist-xz }}} * make checksums for archives: {{{ sha256sum mc-*tar.* >sha256.sum }}} * upload source packages and checksums to 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 http://www.midnight-commander.org/downloads; * update Wiki start page with latest release number; * write an announcement: list user visible changes (bugs and features); * close current milestone (no needed for stable branch); * create ticket (type=task, component=adm) for release; * create cleanup branch (if needed) with some little patches (usually with typecasts fixies, etc); * vote for cleanup branch (if present); * close ticket for release.