Difference between revisions of "Making a release"
Line 1: | Line 1: | ||
varc4trice |
|||
moncoacelri |
moncoacelri |
||
{{TOCD}} |
{{TOCD}} |
Revision as of 23:33, 26 September 2007
varc4trice moncoacelri
Here are some simple steps to making a release, read the release policy for more information as to when a release should be made. Basically, we have four main stages, "building the package", "testing", "uploading to SourceForge" and "tagging SVN".
Retrieving the version from SVN
Get the latest SVN, or the revision (or date) which you'd like to release. For example to get the version of apertium-oc-ca
on the 10th June, 2007, use:
$ svn co -r '{2007-06-10}' http://apertium.svn.sourceforge.net/svnroot/apertium/apertium-oc-ca
Editing the build files
First update the build files to reflect the new version.
Edit Makefile.am:
-VERSION=1.0.2 +VERSION=1.0.3
Edit configure.ac:
-AC_INIT([apertium-oc-ca], [1.0.2], [<maintainer email>]) -AM_INIT_AUTOMAKE([apertium-oc-ca], [1.0.2], no-define) +AC_INIT([apertium-oc-ca], [1.0.3], [<maintainer email>]) +AM_INIT_AUTOMAKE([apertium-oc-ca], [1.0.3], no-define)
Building the package
Run autogen.sh:
$ ./autogen.sh $ make dist
Should now have a file in the source directory called apertium-oc-ca-1.0.3.tar.gz
.
Testing
Copy the file somewhere temporary, extract it, and test it.
$ mkdir /tmp/test $ ./configure --prefix=/tmp/test $ make $ make install
If you get any errors, go back, fix them in SVN and start again. If the error is in this revision, not in SVN head, then go back to the revision that you checked out and make a note in the ChangeLog of what you changed.
Example contents of ChangeLog:
Wed 20 Jun 2007 08:45:42 BST * New release version 1.0.3 * Updated Makefile.am to fix 'make install' problem. See bug #3 in Bugzilla.
Making a release in SourceForge
Tagging the release you just made in SVN
In SVN, tagging a release is done using the copy
command.
If there is already a "tags" directory in the module you are packaging, then skip the next step, if not you'll need to do:
$ svn mkdir http://apertium.svn.sourceforge.net/svnroot/apertium/apertium-oc-ca/tags
Now to tag the release, do:
$ svn copy http://apertium.svn.sourceforge.net/svnroot/apertium/apertium-oc-ca \ http://apertium.svn.sourceforge.net/svnroot/apertium/apertium-oc-ca/tags/release-1.0.3