tzwrapper.cc: fixed use of iterator after erase
[barry.git] / doc / ReleaseChecklist.txt
blob891f2b3ebf4be613c74240656cefa5bf3f9dd5e7
1 Barry Release Checklist:
2 ------------------------
3 - bump version numbers in
4         Source locations:
5                 - configure.ac (2 places)
6                 - gui/configure.ac
7                 - opensync-plugin/configure.ac
8                 - opensync-plugin-0.4x/configure.ac
9                 - desktop/configure.ac (2 places)
10                 - libbarry*.pc.in (renamed for major version... also, requires
11                         version changes inside those .pc files, in the
12                         Requires: field)
13                         - if renamed, update following:
14                                 - Makefile.am (root dir)
15                                 - all configure.ac files
17         Documentation:
18                 - doc/www/index.php
19                 - Doxyfile
20                 - update root README file as necessary
22         Binary packaging:
23                 - rpm/barry.spec
25                 - debian/changelog
26                 - debian/control (major version only)
27                 - debian/libbarry*.* (files need to be renamed)
28                 - debian/rules (the barry18 includedir)
29                 - debian/*.lintian-overrides (major version only)
31                 - opensync-plugin/debian/changelog
32                 - opensync-plugin/debian/control (libbarry-dev)
34                 - opensync-plugin-0.4x/debian/changelog
35                 - opensync-plugin-0.4x/debian/control (libbarry-dev)
37         Languages:
38                 - files under:
39                         po/
40                         gui/po/
41                         desktop/po/
42                         desktop/po-osyncwrap/
43                         opensync-plugin/po/
44                         opensync-plugin-0.4x/po/
46         Misc:
47                 - android/jni/barry/config.h (multiple version strings)
48                 - wince/.../config.h
49                 - test/nightly.sh
51 - Building Debian package:
52         - use existing orig tarball if possible
53         - git archive --prefix=barry-0.18.3/ v0.18.3-7 > something.tar
54         - cd empty_work_dir
55         - tar xvf something.tar
56         - cp orig.tar.gz .
57         - dpkg-source -b barry-0.18.3
58         - test build:
59                 - dpkg-source -x *dsc
60                 - cd barry-*
61                 - dpkg-buildpackage -b
62                 - run lintian (see below)
63         - debsign -kB6C2250E barry_0.18.3-7.dsc
64 - Releasing Debian package:
65         - release an 0.18.5-1~rc1 version for intrigeri first, and do not
66                 increment the -1, -2 , -3.  When the final rc version
67                 has been ok'd, then drop the ~rc1, and release officially.
68                 This should prevent numerous debian versions from
69                 cluttering the history, and make sure that bugs get
70                 closed properly via the changelog notes.
71 - tests in following order:
72         - run 'make update-po' periodically in each po directory to
73                 update translation work
74         - test ABI / API and bump major or minor version as appropriate
75         - run tests under test/
76         - starting from a fresh sid base, test build-deps, build debian
77                 packages, and run sid lintian (only sid, since overrides
78                 in Barry are specific to sid):
79                 lintian --info --display-info --pedantic --color auto \
80                         *.changes *.deb *.dsc
81         - double check hardening on sid:
82                 hardening-check tmp/usr/bin/barrydesktop
83                 hardening-check tmp/usr/lib/libbarry.so.18
84                 - between both, should show all options enabled
85         - run binary-meta release build test (remember that chroot builds
86                 need a password, so run them first if running a batch)
87 - write release notes, including contributors, known issues, new
88         features and bugs fixed
89         - include mention of distros that support Barry:
90                 (see AUTHORS file for distro list)
91         - include description at the top of what Barry is
92 - web docs:
93         - update known issues list
94         - check that all external links work, and point to proper content
95         - upload latest web docs to netdirect project page
96                 - run: ./static.sh netdirect
97         - upload latest doxygen docs to netdirect project page
98 - snip this version's git shortlog history into its own file
99 - sign-tag Barry git repo and binary-meta git repo with latest version
100 - no need to run maintainer/tagged-release.sh since you're maintainer now
101 - manually push git tags to repo.or.cz and sourceforge.net
102 - create binary-meta tree under dists/, and debian source packages and tarballs,
103         including binary-meta tarball, under sources/
104         ./make-apt.sh bmbuild
105         ./make-yum.sh bmbuild
106         ./make-slimdist.sh bmbuild
107 - upload above tree to SourceForge
108         ssh -x -a -2 -t USER,PROJECT@shell.sourceforge.net create
109            then use sf-help for details
110         MAKE SURE that the tar source files are under
111                 /files/barry/barry-{version}/barry_{version}.tar.gz,
112                 so that debian/watch remains accurate
113 - upload binary packaging metadata to download.barry.netdirect.ca
114         under a versioned directory (eg. barry-0.18.0/) and update the
115         barry-latest symlink
116         - remember to run make-redirect.sh for both the new release dir
117                 and barry-latest symlink
118                 For example:
119                 ./make-redirect.sh bmbuild /barry-0.18.3 http://sourceforge.net/projects/barry/files/barry/barry-0.18.3/bmbuild
120                 ./make-redirect.sh bmbuild /barry-latest http://sourceforge.net/projects/barry/files/barry/barry-0.18.3/bmbuild
121         - add the new release to .htaccess, and replace barry-latest
122                 redirect links with the new ones
123         - make backup of new htaccess in your local release directory
124 - send announcement to devel and announce mailing list, including:
125         - release notes
126         - shortlog
127         - URLs to sourceforge and OpenSUSE Build Service binary packages
128         - URL to netdirect doc page
129         - send email notice to intrigeri including:
130                 - name of upstream tag (i.e. barry-0.18.3-2)
131                 - example of upstream diff
132                         git log -p barry-0.18.3..barry-0.18.3-2
133                 - release URL directly to the .dsc file
134 - submit tracker news item at SourceForge
135 - update Freshmeat entry
136 - update Sourceforge screenshots / icons if applicable
137 - update source project, bumping revision numbers in source code