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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
openMSX Catapult Release Process
================================
This is a kind of recipe for doing releases. Having it written down
decreases the change of forgetting a small but crucial step during the
hectic work of getting a release out.
Preparing for a release
-----------------------
- Tell all developers to commit only fixes.
- Verify the documentation is up-to-date.
Currently most documentation is in "doc".
- Write release notes in "doc/release-notes.txt".
- Add the change list to "doc/release-history.txt".
Creating a release candidate
----------------------------
- Edit the version number in build/version.mk:
VERSION=1.2.3
The version should be the version of openMSX for which this Catapult
release is intended.
Set RELEASE_FLAG to true.
- Update build/version.py similar to build/version.mk.
- Update the release date in "doc/release-notes.txt" and
"doc/release-history.txt".
- Tag the git archive:
git tag -a RELEASE_1_2_3 -m "Tagging release 1.2.3."
git push --tags
- Export the tagged code:
git archive RELEASE_1_2_3 --remote \
git://git.code.sf.net/p/openmsx/wxcatapult --prefix wxcatapult-1.2.3/ \
| tar -x -C .
This step makes sure that exactly the tagged code will be released.
- Change directory to the just created wxcatapult-1.2.3/
- Create the distribution tar.gz file:
make dist
- Save the created file somewhere you can find it again:
mv derived/dist/openmsx-catapult-1.2.3.tar.gz
<some_dir>/openmsx-catapult-1.2.3.tar.gz
This is the release candidate.
Sanity check on release candidate
---------------------------------
This is a small check to be performed by the release coordinator.
- Test build:
* Compile and check for warnings:
make
* Test installation:
su
make install
- Start openMSX Catapult with the supported openMSX releases.
- Verify the version number in the About dialog.
If the sanity check is passed, distribute tar.gz to fellow developers and
testers.
Post-release
------------
- Set RELEASE_FLAG to false in build/version.mk and build/version.py.
Or don't bother, as we're not actively developing anyway.
|