This is the release procedure for making a release of
Before beginning, the person making the release should have access to
the platforms on which binary distributions will be built.
matterhorn package version. The version string must be of
ABBCC.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 the
matterhorn version should be
X.Y portion of the
version corresponds to our own version namespace for the package.
If the server version changes,
X.Y SHOULD be
0.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
Generate a changelog entry list from the git log since the last release tag. In the changelog, include
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:
cabal uploadthe package
Generate platform binary distributions using
mkrelease.sh on the
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
“We’re pleased to announce the release of Matterhorn version for @mattermosthq!
Get it at https://github.com/matterhorn-chat/matterhorn/releases/tag/“