Put altusmetrum.svg and micropeak.svg in icon directory
[fw/altos] / Releasing
1 These are Bdale's notes on how to do a release.
2
3         git checkout master
4
5         - make sure there is a doc/release-notes-<version>.xsl
6         - make sure that doc/altusmetrum.xsl has the right copyright year,
7           and add release to the revision history at the front (release notes
8           will be pulled in automatically)
9
10         - update the version in configure.ac
11         git log > ChangeLog
12         git commit -a
13
14         - make absolutely sure checked-out tree is "clean" 
15         - make absolutely sure the pdclib/ submodule is on the master branch,
16           up to date, and "clean"
17
18         - if this is an x.y release, then:
19                 git checkout -b branch-<version>
20                 git tag -a <version>
21                 - edit .git/gbp.conf to use branch-<version> as upstream
22
23         - if this is an x.y.z release, then:
24                 git checkout branch-<version>           # the x.y parts only
25                 git merge master
26                 git tag -a <version>                    # full x.y.z version
27
28         git checkout debian
29         git merge branch-<version>
30
31         - verify debian/changelog is "clean" ending in last release version
32         - craft a suitable debian/changelog entry, possibly using:
33         git-dch --release --new-version=<version>-1 --multimaint-merge
34
35         git commit -n debian/changelog -m "update changelog for Debian build"
36
37         - if this is a -1 release, then
38                 git-buildpackage --git-no-pristine-tar --git-submodules \
39                         --git-upstream-branch=branch-<version> \ # eg 1.3
40                         --git-upstream-tag=<version>             # eg 1.3.1
41                 pristine-tar commit \
42                         ../build-area/altos_<version>.orig.tar.gz \
43                         branch-<version>
44           else if this is not a -1 release
45                 git-buildpackage --git-submodules
46
47         git tag debian/<version>
48
49         - at this point we have packages in ~/debian/build-area/altos, now
50           we move on to the non-Debian part of the release process
51
52         make distclean
53
54         ./autogen.sh --with-fat-dir=/home/bdale/web/altusmetrum/AltOS/releases
55         make && make fat
56
57                 this pushes packages for each platform to web site
58
59         - copy the relevant release notes file from doc/ to 
60             /home/bdale/web/altusmetrum/AltOS/releases/<rev>
61
62         - create /home/bdale/web/altusmetrum/MicroPeak/releases/<rev>,
63           and move the MicroPeak installers from AltOS/releases to there
64                 
65         - go edit ~/web/altusmetrum/AltOS/releases/<rev>.mdwn and 
66           /home/bdale/web/altusmetrum/MicroPeak/releases/<rev>.mdwn, to 
67           include release date and explicit ref to dir contents so the 
68           web pages shows versioned links, commit and push
69
70         (cd doc ; make publish)
71
72                 this pushes fresh documents to the web site
73
74         sudo debian/rules clean
75         git push origin master branch-<version> debian pristine-tar
76         git push --tags
77
78                 push commits and leave the build tree in an uncluttered state
79
80 Testing before a release
81
82         To verify that a build works, the following need to be checked
83         on each platform:
84
85         1) Install package
86
87         2) Connect TM *and* TD devices. Verify that you can Monitor
88            Flight from the TD and Configure Telemetrum from the TM.
89
90         3) Replay Flight, using your favorite .eeprom file. Check
91            each tab, especially the 'Site Map' tab. Make sure the
92            sound works.
93
94         4) Graph Data. Graph a favorite .eeprom file. Make sure you
95            can zoom in on some region of the graph.