lib: Fixing ThreadTimeout implementation for Windows to correctly calculate seconds...
[barry.git] / doc / ReleaseChecklist.txt
blob9912e3e0c0fb65fcd4ee46c82903bc4a385e23bc
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 po/
39                 - files under gui/po/
41         Misc:
42                 - android/jni/barry/config.h (multiple version strings)
43                 - test/nightly.sh
45 - tests in following order:
46         - run 'make update-po' periodically in each po directory to
47                 update translation work
48         - test ABI / API and bump major or minor version as appropriate
49         - run tests under test/
50         - starting from a fresh sid base, test build-deps, build debian
51                 packages, and run sid lintian (only sid, since overrides
52                 in Barry are specific to sid):
53                 lintian --info --display-info --pedantic --color auto \
54                         *.changes *.deb *.dsc
55         - double check hardening on sid:
56                 hardening-check tmp/usr/bin/barrydesktop
57                 hardening-check tmp/usr/lib/libbarry.so.18
58                 - between both, should show all options enabled
59         - run binary-meta release build test
60 - write release notes, including contributors, known issues, new
61         features and bugs fixed
62         - include mention of distros that support Barry:
63                 (see AUTHORS file for distro list)
64         - include description at the top of what Barry is
65 - web docs:
66         - update known issues list
67         - check that all external links work, and point to proper content
68         - upload latest web docs to netdirect project page
69                 - run: ./static.sh netdirect
70         - upload latest doxygen docs to netdirect project page
71 - snip this version's git shortlog history into its own file
72 - sign-tag Barry git repo and binary-meta git repo with latest version
73 - no need to run maintainer/tagged-release.sh since you're maintainer now
74 - manually push git tags to repo.or.cz and sourceforge.net
75 - create binary-meta tree under dists/, and debian source packages and tarballs,
76         including binary-meta tarball, under sources/
77 - upload above tree to SourceForge
78         ssh -x -a -2 -t USER,PROJECT@shell.sourceforge.net create
79            then use sf-help for details
80         MAKE SURE that the tar source files are under
81                 /files/barry/barry-{version}/barry_{version}.tar.gz,
82                 so that debian/watch remains accurate
83 - upload binary packaging metadata to download.barry.netdirect.ca
84         under a versioned directory (eg. barry-0.18.0/) and update the
85         barry-latest symlink
86         - remember to run make-redirect.sh for both the new release dir
87                 and barry-latest symlink
88                 For example:
89                 ./make-redirect.sh bmbuild /barry-0.18.3 http://sourceforge.net/projects/barry/files/barry/barry-0.18.3/bmbuild
90                 ./make-redirect.sh bmbuild /barry-latest http://sourceforge.net/projects/barry/files/barry/barry-0.18.3/bmbuild
91         - add the new release to .htaccess, and replace barry-latest
92                 redirect links with the new ones
93         - make backup of new htaccess
94 - send announcement to devel and announce mailing list, including:
95         - release notes
96         - shortlog
97         - URLs to sourceforge and OpenSUSE Build Service binary packages
98         - URL to netdirect doc page
99         - send email notice to intrigeri including:
100                 - name of upstream tag (i.e. barry-0.18.3-2)
101                 - example of upstream diff
102                         git log -p barry-0.18.3..barry-0.18.3-2
103                 - release URL directly to the .dsc file
104 - submit tracker news item at SourceForge
105 - update Freshmeat entry
106 - update Sourceforge screenshots / icons if applicable
107 - send identi.ca/cdfrey and blog notices
108 - update source project, bumping revision numbers in source code