Making a Source Release
Checklist
- Update the
README
file with important information. - Update the
NEWS
andCHANGES
files with important information. - Update the Breaking changes document.
- Update the
acinclude.m4
file with version information.
Preparing the Community
Call a vote on the couchdb-dev mailing list asking for a request for comments on the release. Ask all developers to specifically check the NEWS
and CHANGES
file for anything that has been added in this release.
Preparing the Release
repos="https://svn.apache.org/repos/asf/couchdb" svn cp $repos/trunk $repos/branches/Y.Y.x -m 'branching Y.Y.x' svn cp $repos/branches/Y.Y.x $repos/tags/Y.Y.Y -m 'tagging Y.Y.Y' svn export $repos/tags/Y.Y.Y
You must then use the Y.Y.Y
directory to prepare the release.
To build the source for distribution you should then run the following command:
./bootstrap && ./configure && make distsign
If everything was successful you should see the following files
sitting in the export
directory ready for distribution:
- apache-couchdb-Y.Y.Y.tar.gz * apache-couchdb-Y.Y.Y.tar.gz.asc
- apache-couchdb-Y.Y.Y.tar.gz.md5
- apache-couchdb-Y.Y.Y.tar.gz.sha
Move the files to the parent directory:
mv apache-couchdb* ..
Then clean the source:
make local-clean
Then bootstrap the source so that it mirrors the tarball:
./bootstrap
Then go to the parent directory and unpack the tarball:
tar -xvzf apache-couchdb*.tar.gz
Then compare the tarball with the boostrapped source:
diff -f apache-couchdb-Y.Y.Y Y.Y.Y
Use your judgment here to figure out if anything is missing, or has been included by mistake.
Upload these to your public_html
directory on people.apache.org
and make sure they are world readable.
Calling a Vote
Call a vote on the couchdb-dev mailing list:
The Release Manager has the power to abort a vote at any point and for any reason.
Making the Release
- Copy the release directory to
/www/www.apache.org/dist/couchdb
onpeople.apache.org
. - Wait for all changes to be synced to public mirrors.
- Update http://couchdb.apache.org/downloads.html * Wait for all changes to be synced to the public site.
- Make a release announcement to the announce@apache.org, user@couchdb.apache.org, and dev@couchdb.apache.org mailing lists:
- example release announcement
- Update versions in JIRA.
- If the currently released version is 0.1.0, JIRA should have options for 0.1.1, 0.2.0, and 0.3.0.
- The released version should be marked as released in JIRA.
- Update the links on this page to most recent email archives.
- Call a discussion on the couchdb-dev mailing list about archiving old releases.