This is the release procedure for making a release of matterhorn
.
Before beginning, the person making the release should have access to
the platforms on which binary distributions will be built.
-
Set the
matterhorn
package version. The version string must be of the formABBCC.X.Y
where ABBCC corresponds to the Mattermost server version supported by the release. For example, if the release supports Mattermost server version 1.2.3, the ABBCC portion of thematterhorn
version should be10203
. TheX.Y
portion of the version corresponds to our own version namespace for the package. If the server version changes,X.Y
SHOULD be0.0
. Otherwise the first component should increment if the package undergoes major code changes or functionality changes. The second component alone should change only if the package undergoes security fixes or other bug fixes. -
Generate a changelog entry list from the git log since the last release tag. In the changelog, include
- changes to supported server versions
- bugs fixed
- contributions received (and thank contributors)
- UI changes
- new configuration options and keybindings
- server feature support changes
The changes listed in the changelog should inform the choice of version number.
-
Commit the changelog changes and
matterhorn.cabal
version change. -
Check for a passing Travis CI build.
-
Upload to Hackage:
- Generate a
cabal sdist
- Unpack the
sdist
archive - Perform a complete build on the unpacked archive
- If any issues arise, repair and go to (2)
- Otherwise,
cabal upload
the package
- Generate a
-
Generate platform binary distributions using
mkrelease.sh
on the relevant platforms. -
Tag the release commit using the package version as the tag string.
-
git push --tags
-
Make binary release available on GitHub by editing the pushed tag and uploading the release archives.
-
Tweet about the release using the
@matterhorn_chat
account: "We're pleased to announce the release of Matterhorn version for @mattermosthq! Get it at https://github.com/matterhorn-chat/matterhorn/releases/tag/"