-
Notifications
You must be signed in to change notification settings - Fork 39
Creating a Release
Apache Annotator (incubating) follows Apache Software Foundation policy1 for releases. This page documents the process for making releases that adhere to this policy. Consult the policy for additional detail.
Releases should be made from a release branch named for its major and minor version numbers, e.g. "v0.1.x". Check out the relevant branch and ensure that the working tree is clean. Run make check
to verify that the automated code quality checks all pass. Create a signed tag with a version number that identifies the release candidate:
$ git tag -s vX.Y.Z-rc.N -m "vX.Y.Z-rc.N"
$ git push origin tag vX.Y.Z-rc.N
Run make distsign
to build a tarball with checksums and a detached signature.
Add the files to the Apache distribution site:
$ svn co https://dist.apache.org/repos/dist/dev/incubator/annotator/source dev
$ mkdir -p dev/X.Y.Z/rc.N
$ cp apache-annotator-X.Y.Z-rc.N-incubating.tar.gz* dev/X.Y.Z/rc.N
$ # If this is the first release candidate:
$ svn add dev/X.Y.Z
$ # Otherwise:
$ svn add dev/X.Y.Z/rc.N
$ svn propset svn:mime-type text/plain dev/X.Y.Z/rc.N/*.gz.asc dev/X.Y.Z/rc.N/*.gz.sha*
$ svn ci -m "Add Annotator X.Y.Z rc.N to dev tree"
Instructions for managing a release vote can be found in the Apache Software Foundation incubation policy section regarding releases 1. A project undergoing incubation requires two votes to approve a release. After requesting either vote, wait a minimum of 72 hours before closing the voting period. The release manager has the power to abort a vote at any time and for any reason.
Tag the candidate with the version number:
$ git checkout vX.Y.Z-rc.N
$ git tag -s vX.Y.Z -m "vX.Y.Z"
$ git push origin tag vX.Y.Z
Rename the release files:
$ cp apache-annotator-X.Y.Z-rc.N-incubating.tar.gz apache-annotator-X.Y.Z-incubating.tar.gz
$ cp apache-annotator-X.Y.Z-rc.N-incubating.tar.gz.asc apache-annotator-X.Y.Z-incubating.tar.gz.asc
$ cp apache-annotator-X.Y.Z-rc.N-incubating.tar.gz.sha256 apache-annotator-X.Y.Z-incubating.tar.gz.sha256
$ cp apache-annotator-X.Y.Z-rc.N-incubating.tar.gz.sha512 apache-annotator-X.Y.Z-incubating.tar.gz.sha512
Add the release files to the Apache distribution site:
$ svn co https://dist.apache.org/repos/dist/release/incubator/annotator/source release
$ mkdir release/X.Y.Z
$ cp apache-annotator-X.Y.Z-incubating.tar.gz* release/X.Y.Z
$ svn add release/X.Y.Z
$ svn propset svn:mime-type text/plain release/X.Y.Z/*.gz.asc release/X.Y.Z/*.gz.sha*
$ cd release
$ svn ci -m "Add Annotator X.Y.Z release files"
Wait for any scheduled release time before announcing the release. If there is no scheduled release time, wait at least 24 hours for the mirrors to be up-to-date. Send a release announcement to [email protected] and [email protected]. Announce the release on any other relevant media channels.