~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to doc/developers/releasing.txt

  • Committer: Martin Pool
  • Date: 2008-06-03 05:46:08 UTC
  • mto: This revision was merged to the branch mainline in revision 3491.
  • Revision ID: mbp@sourcefrog.net-20080603054608-k5x7cqq4lcji3ijj
Release process updates

Show diffs side-by-side

added added

removed removed

Lines of Context:
4
4
This document describes the processes for making and announcing a Bazaar
5
5
release, and managing the release process.
6
6
 
 
7
We normally have one person acting as the release manager, who 
 
8
organizes development for the release and also actually makes the release
 
9
tarball and posts announcements.  It can be a different person from one
 
10
week to the next.
 
11
 
7
12
See also: `Bazaar Developer Document Catalog <index.html>`_.
8
13
 
9
14
 
24
29
   series for every *x.y* release.
25
30
 
26
31
 
27
 
Weekly Status Updates
 
32
Weekly Metronome Mail
28
33
---------------------
29
34
 
30
 
TODO: Things to cover:
31
 
 
32
 
* Early communication to downstream teams (e.g. Launchpad) about changes in dependencies.
33
 
* Reminder re lifecycle and where we're up to right now
34
 
* Summary of recent successes and pending work
 
35
Every week the release manager should send a mail to the Bazaar list
 
36
covering these points (as appropriate):
 
37
 
 
38
* Early communication about changing dependencies or defaults
 
39
 
 
40
* Reminder re lifecycle and where we're up to right now, in particular the 
 
41
  dates for the next release and/or candidate.
 
42
 
 
43
* Summary of recent successes and pending work.
 
44
 
35
45
* Reminder re release objectives
 
46
 
36
47
* Reminder re things needing attention, e.g. bug triage, reviews, testing of certain things, etc.
37
48
 
38
49
 
58
69
 
59
70
   Register the branch at https://launchpad.net/products/bzr/+addbranch
60
71
 
61
 
#. Run the automatic test suite and any non-automated tests.  
62
 
   Try to have all optional dependencies installed so that there are no tests skipped. 
63
 
   Also make sure that you have the c extensions compiled (``make`` or ``python setup.py build_ext -i``).
 
72
#. Make a local branch for preparing this release.  (Only for the first 
 
73
   release in a series, otherwise you should already have a branch.) ::
 
74
 
 
75
     bzr branch trunk prepare-1.6
 
76
 
 
77
#. Configure pqm-submit for this branch, with a section like this in
 
78
   ``~/.bazaar/locations.conf``::
 
79
 
 
80
        [/home/mbp/bzr/prepare-1.4]
 
81
        pqm_email = Canonical PQM <pqm@bazaar-vcs.org>
 
82
        submit_branch = http://bazaar-vcs.org/bzr/bzr.1.4
 
83
        submit_to = bazaar@lists.canonical.com
64
84
 
65
85
#. In the release branch, update  ``version_info`` in
66
86
   ``./bzrlib/__init__.py``.  
77
97
 
78
98
#. Commit these changes to the release branch, using a command like::
79
99
    
80
 
     bzr commit -m "(jam) Release 0.12rc1." 
 
100
     bzr commit -m "Release 0.12rc1." 
81
101
   
82
102
   The diff before you commit will be something like::
83
103
 
105
125
            version_string = '%d.%d.%d' % version_info[:3]
106
126
 
107
127
#. Submit those changes to PQM for merge into the appropriate release
108
 
   branch.
 
128
   branch::
 
129
 
 
130
     bzr push
 
131
     bzr pqm-submit -m "(mbp) prepare 1.6"
109
132
 
110
133
#. When PQM succeeds, pull down the master release branch.
111
134
 
 
135
 
112
136
Making the source tarball
113
137
-------------------------
114
138
 
141
165
   escudero, and also update the ``latest`` symlink in
142
166
   ``/srv/bazaar.canonical.com/doc/``.)
143
167
 
144
 
#. Announce on the `Bazaar home page`__
 
168
#. Announce on the `Bazaar home page`__.
145
169
   
146
170
 __ http://bazaar-vcs.org/
147
171
 
186
210
   
187
211
   This should be done for both release candidates and final releases. If you do not have a Freshmeat account yet, ask one of the existing admins.
188
212
 
189
 
#. Update http://en.wikipedia.org/wiki/Bzr -- this should be done for final releases but not Release Candidates.
 
213
#. Update http://en.wikipedia.org/wiki/Bzr -- this should be done for final releases but not for Release Candidates.
190
214
 
191
215
#. Package maintainers should update packages when they see the
192
216
   announcement.
193
217
 
194
 
#. Blog about it.
195
 
 
196
 
#. Post to http://mail.python.org/mailman/listinfo/python-announce-list for major releases
 
218
#. For final releases, also send the announcement mail to
 
219
   info-gnu@gnu.org and python-announce-list@python.org.
197
220
 
198
221
#. Update the python package index: <http://pypi.python.org/pypi/bzr> - best
199
222
   done by running ::
354
377
summary of current package versions with::
355
378
 
356
379
  apt-cache madison bzr
 
380
 
 
381
..
 
382
   vim: ft=rst tw=74 ai