mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-12-23 01:44:52 +01:00
8782bd926e
At the end of "make release" or at any point later with "make release-message".
72 lines
2.6 KiB
Text
72 lines
2.6 KiB
Text
Here are the steps to follow to create a new notmuch release:
|
|
|
|
1) Verify that what you want to release is committed. The release
|
|
process will release the code from the current HEAD commit.
|
|
|
|
2) Verify that the NEWS file is up to date.
|
|
|
|
Read through the entry at the top of the NEWS file and see if
|
|
you are aware of any major features recently added that are
|
|
not mentioned there. If so, pleas add them, (and ask the
|
|
authors of the commits to update NEWS in the future).
|
|
|
|
3) Verify that the notmuch test suite passes.
|
|
|
|
Currently this is by running:
|
|
|
|
./test/notmuch-test
|
|
|
|
And manually verifying that every test says PASS. We plan to
|
|
fix this to automatically check the results and even to
|
|
automatically run the test suite as part of a Makefile target
|
|
described below.
|
|
|
|
4) Increment the libnotmuch library version in lib/Makefile.local
|
|
|
|
See the instructions there for how to increment it. The
|
|
command below can be useful for inspecting header-file changes
|
|
since the last release X.Y.Z:
|
|
|
|
git diff X.Y.Z..HEAD -- lib/notmuch.h
|
|
|
|
Note: We currently don't plan to increment
|
|
LIBNOTMUCH_VERSION_MAJOR beyond 1, so if there *are*
|
|
incompatible changes to the library interface, then
|
|
stop. Don't release. Figure out the plan on the notmuch
|
|
mailing list.
|
|
|
|
Commit this change.
|
|
|
|
5) Increment the notmuch version in Makefile.local
|
|
|
|
For most releases we'll just increment the minor number. For
|
|
major milestones of usability we'll increment the major
|
|
number.
|
|
|
|
Commit this change.
|
|
|
|
6) Run "make release" which will perform the following steps:
|
|
|
|
* Check that the notmuch version consists of only two components
|
|
* Check that no release exists with the current version
|
|
* Verify that "make dist" completes successfully
|
|
* Generate the final tar file
|
|
* Generate an sha1sum file
|
|
* Sign the sha1sum using your GPG setup (asks for your GPG password)
|
|
* scp the three files to appear on http://notmuchmail.org/releases
|
|
* Place local copies of the three files in the releases directory
|
|
* Create a LATEST-notmuch-version file (after deleting any old one)
|
|
* Tag the entire source tree with a tag of the form X.Y.Z, and sign
|
|
the tag with your GPG key (asks for your GPG password, and you
|
|
may need to set GIT_COMMITTER_NAME and GIT_COMMITTER_EMAIL to match
|
|
your public-key's setting or this fails.)
|
|
* Push that tag
|
|
* Provide some text for the release announcement (see below).
|
|
If for some reason you lose this message, "make release-message"
|
|
prints it again for you.
|
|
|
|
7) Increment the notmuch version by adding a .1 micro number, commit, and push.
|
|
|
|
8) Send a message to notmuch@notmuchmail.org to announce the release.
|
|
|
|
Use the text from the new entry to NEWS.
|