-
Notifications
You must be signed in to change notification settings - Fork 45
Release Actions
These actions are mandatory for every release (including minor ones), and are to be performed after once the version is right in all files.
If the version is a real release (not a release candidate), the CHANGELOG.md
file must be updated, and with it the debian/changelog
file (this file has a very specific format, please be careful). If incompatible changes appeared, UPGRADE.md
must be updated too.
Build the reference guide: make doc
in the doc/
directory. Then upload the generated pdf to the release page.
Once the version is correctly set in the repository, the commit representing the release must be tagged as vx.y.z
:
git tag -a vx.y.z -m 'Releasing version x.y.z'
git push --tags
The git repository doesn't contain genereted files (doc/UserManual.pdf
, fonts/*.ttf
) and contains specific development files useless to most users. Autotools provide a mechanism to build a source tarball that contains these generated files and only the files useful to the users, that's what we use to distribute Gregorio sources to end users.
To compile the source tarball:
make dist
and to check if everything went right:
make distcheck
it will create gregorio-x.y.z.tar.gz
in the main directory. This is what gets uploaded to github.
The Windows installer can be built with 100% free softwares (Mingw, Wine, InnoSetup), and thus it seems fair to ask for all releases to contain it. See the readme for details on the build. Bugs found in the installer can lead to a new release.
The text in the release page must be set to the corresponding Changelog entries.
The release must be announced on the gregorio users mailing list; the mail must include the relevant entries from CHANGELOG.md
and UPGRADE.md
.
OSX packages cannot be built with 100% free softwares, so if no developper has access to a Mac, this step can be skipped (and help asked on the list). See the readme for details on the build.
Debian packages are a bit difficult to build, so if noone is able to handle them, this can be skipped too. The .deb
file are built with the build-deb.sh
script at the root of the repository. After that, they can be uploaded to the Gregorio PPA (ask a developer if you want to join the team).
It is also possible to build a version of any git commit using build-deb.sh --git
(this auto-increments the changelog).