From e415660f96d3005125849b2f7f773a004fd7841c Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Tue, 27 Jun 2017 06:01:57 -0400 Subject: [PATCH] Docs: update RELEASE documentation a bit --- hacking/RELEASE.md | 44 ++++++++++++++++++++++++++++++++++++-------- 1 file changed, 36 insertions(+), 8 deletions(-) diff --git a/hacking/RELEASE.md b/hacking/RELEASE.md index b0d0e1f5e..0d41c5018 100644 --- a/hacking/RELEASE.md +++ b/hacking/RELEASE.md @@ -2,26 +2,54 @@ The Calamares release process ============================= #### (0) A week in advance -* Run Coverity scan, fix what's relevant. +* Run [Coverity scan][coverity], fix what's relevant. The Coverity scan runs + automatically once a week on master. * Build with clang -Weverything, fix what's relevant. + ``` + rm -rf build ; mkdir build ; cd build + CC=clang CXX=clang++ cmake .. && make + ``` * Make sure all tests pass. -* Notify translators. + ``` + make + make test + ``` + Note that *all* means all-that-make-sense. The partition-manager tests need + an additional environment variable to be set for some tests, which will + destroy an attached disk. This is not always desirable. +* Notify [translators][transifex]. In the dashboard there is an *Announcements* + link that you can use to send a translation announcement. + +[coverity]: https://scan.coverity.com/projects/calamares-calamares?tab=overview +[transifex]: https://www.transifex.com/calamares/calamares/dashboard/ #### (1) Preparation -* Check `README.md` and everything in `hacking`, make sure it's all still relevant. +* Check `README.md` and everything in `hacking`, make sure it's all still + relevant. Run `hacking/calamaresstyle` to check the C++ code style. + Python code is checked as part of the Travis CI builds. * Update submodules. + ``` + git submodule # Note list of submodules + git submodule update thirdparty/libcrashreporter-qt + ``` * Check defaults in `settings.conf` and other configuration files. -* Pull latest translations from Transifex. +* Pull latest translations from Transifex. This is done nightly on Jenkins, + so a manual pull is rarely necessary. * Update the list of enabled translation languages in `CMakeLists.txt`. -* Bump version in `CMakeLists.txt`, commit. + Check the [translation site][transifex] for the list of languages with + fairly complete translations. +* Bump version in `CMakeLists.txt`, *CALAMARES_VERSION* variables, and set + RC to a non-zero value (e.g. doing -rc1, -rc2, ...). Push that. #### (2) Tarball -* Create tarball: `../git-archive-all/git-archive-all -v calamares-1.1-rc1.tar.gz` +* Create tarball: `git-archive-all -v calamares-1.1-rc1.tar.gz` . Double check + that the tarball matches the version number. * Test tarball. #### (3) Tag -* `git tag -s v1.1.0` -* Generate MD5 and SHA1 checksums. +* `git tag -s v1.1.0` Make sure the signing key is known in GitHub, so that the + tag is shown as a verified tag. Do not sign -rc tags. +* Generate MD5 and SHA256 checksums. * Upload tarball. * Announce on mailing list, notify packagers. * Write release article.