summary refs log tree commit diff
path: root/doc/dev/release-procedures.txt
blob: 1e95a9ee9aca99469e6ccd8a5766ba18680ff01e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
To produce a `stable' release from the trunk:

-1. Update the release notes; make sure that the release date is
    correct.

0. Make sure that the trunk builds in the release supervisor.

1. Branch the trunk, e.g., `svn cp .../trunk
   .../branches/0.5-release'.

2. Switch to the branch, e.g., `svn switch .../branches/0.5-release'.

3. In `configure.ac', change `STABLE=0' into `STABLE=1' and commit.

4. In the release supervisor, add a one-time job to build
   `.../branches/0.5-release'.

5. Make sure that the release succeeds.

6. Move the branch to a tag, e.g., `svn mv .../branches/0.5-release
   .../tags/0.5'.

   Note that the branch should not be used for maintenance; it should
   be deleted after the release has been created.  A maintenance
   branch (e.g., `.../branches/0.5') should be created from the
   original revision of the trunk (since maintenance releases should
   also be tested first; hence, we cannot have `STABLE=1').  The same
   procedure can then be followed to produce maintenance releases;
   just substitute `.../branches/VERSION' for the trunk.

7. Switch back to the trunk.

8. Bump the version number in `configure.ac' (in AC_INIT).