3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
1 |
Releasing Bazaar |
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
2 |
################ |
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
3 |
|
4 |
This document describes the processes for making and announcing a Bazaar |
|
5447.2.2
by Vincent Ladeuil
More updates following list discussion. |
5 |
release, and managing the release process. This is just one phase of |
6 |
the `overall development cycle |
|
7 |
<http://doc.bazaar.canonical.com/developers/cycle.html>`_, (go re-read |
|
8 |
this document to ensure it hasn't been updated) but it's the most |
|
9 |
complex part. This document gives a checklist you can follow from start |
|
10 |
to end in one go. |
|
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
11 |
|
4634.13.4
by Vincent Ladeuil
More tweaks. |
12 |
If you're helping the Release Manager (RM) for one reason or another, you |
13 |
may notice that he didn't follow that document scrupulously. He may have |
|
4634.13.6
by Vincent Ladeuil
Fixed as per Ian's review. |
14 |
good reasons to do that but he may also have missed some parts. |
4634.13.4
by Vincent Ladeuil
More tweaks. |
15 |
|
16 |
Follow the document yourself and don't hesitate to create the missing |
|
17 |
milestones for example (we tend to forget these ones a lot). |
|
18 |
||
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
19 |
.. contents:: |
20 |
||
4584.2.1
by Martin Pool
Update release cycle doc for 6m cycles |
21 |
|
4632.2.1
by Martin Pool
Release docs: bzr-pqm is a precondition not part of the every-release process |
22 |
Preconditions |
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
23 |
============= |
4632.2.1
by Martin Pool
Release docs: bzr-pqm is a precondition not part of the every-release process |
24 |
|
25 |
#. Download the pqm plugin and install it into your ``~/.bazaar/plugins``:: |
|
26 |
||
27 |
bzr branch lp:bzr-pqm ~/.bazaar/plugins/pqm |
|
28 |
||
5447.2.2
by Vincent Ladeuil
More updates following list discussion. |
29 |
|
30 |
When do we relase ? |
|
31 |
=================== |
|
32 |
||
33 |
As of October 2010, we mantain four series. Concurrently releasing them |
|
34 |
all at the same time makes it harder to shorten the delay between the |
|
35 |
source availability and the package building longer than necessary (we |
|
36 |
delay the official announcement until most of our users can install the new |
|
37 |
release). |
|
5447.2.1
by Vincent Ladeuil
Fix some typos and propose a release planning. |
38 |
|
39 |
In order to continue to do time-based releases, we need to plan the |
|
5447.2.2
by Vincent Ladeuil
More updates following list discussion. |
40 |
releases by series to minimize the collisions. In the end, it's the Release |
41 |
Manager call to decide whether he prefers to do all releases at once |
|
42 |
though, so the rules presented here are a conservative approach. |
|
5447.2.1
by Vincent Ladeuil
Fix some typos and propose a release planning. |
43 |
|
44 |
We want to respect the following rules:: |
|
45 |
||
5447.2.2
by Vincent Ladeuil
More updates following list discussion. |
46 |
#. as much as possible releases should not disturb development, and |
47 |
ongoing development should not disturb releases, |
|
48 |
||
49 |
#. the most recent development series should release once a month during |
|
50 |
the beta period (see `Development cycles <cycle.html>`_ for more |
|
51 |
details), |
|
52 |
||
53 |
#. the most recent stable series should release every other month (based |
|
54 |
on the amount of bug fixes, this can be shorter or longer depending on |
|
55 |
the bugs importance), |
|
56 |
||
57 |
#. previous series should relesase on a regular basis without interfering |
|
58 |
with the most recent series with a decreasing order of priority (again |
|
59 |
this should be based on bugs importance and user feedback), |
|
60 |
||
61 |
#. the death of a series should be planned ahead of time. 6 months should |
|
62 |
give enough time to our users to migrate to a more recent series. This |
|
63 |
doesn't mean we will make a release at the end of the series, just that |
|
64 |
before the end date we _could_ possibly put out another release if |
|
65 |
there was a sufficiently important fix. Beyond that date, we won't |
|
66 |
even land changes on that branch (unless something causes a miraculous |
|
67 |
resurrection.) |
|
68 |
||
69 |
#. there should not be more than 2 releases in the same week (but the |
|
70 |
Release Manager is free to ignore this (get in touch with packagers |
|
71 |
though), |
|
72 |
||
73 |
#. the series are aligned with Ubuntu releases for convenience since we |
|
74 |
create a new series every 6 months. This means that we support the |
|
75 |
stable series for 18 months. Note that we also propose the most recent |
|
76 |
stable series via the ppa, so whether we keep supporting LTS directly |
|
77 |
or via the ppa is still an open question. |
|
5447.2.1
by Vincent Ladeuil
Fix some typos and propose a release planning. |
78 |
|
4634.13.1
by Vincent Ladeuil
Feedback on the 2.0rc1 release. |
79 |
|
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
80 |
At the start of a release cycle |
81 |
=============================== |
|
4634.13.1
by Vincent Ladeuil
Feedback on the 2.0rc1 release. |
82 |
|
83 |
To start a new release cycle: |
|
84 |
||
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
85 |
#. If this is the first release for a given *x.y* then create a new |
86 |
series at <https://launchpad.net/bzr/+addseries>. There is one series |
|
87 |
for every *x.y* release. |
|
88 |
||
89 |
#. If you made a new series, create a new pqm-controlled branch for this |
|
90 |
release series, by asking a Canonical sysadmin. This branch means that |
|
91 |
from the first release beta or candidate onwards, general development |
|
92 |
continues on the trunk, and only specifically-targeted fixes go into |
|
93 |
the release branch. |
|
94 |
||
95 |
#. If you made a new series, add milestones at |
|
96 |
<https://edge.launchpad.net/bzr/x.y/+addmilestone> to that series for |
|
97 |
the beta release, release candidate and the final release, and their |
|
98 |
expected dates. |
|
99 |
||
100 |
#. Create a new milestone <https://edge.launchpad.net/bzr/x.y/+addmilestone> |
|
101 |
and add information about this release. We will not use it yet, but it |
|
4634.13.1
by Vincent Ladeuil
Feedback on the 2.0rc1 release. |
102 |
will be available for targeting or nominating bugs. |
103 |
||
104 |
#. Send mail to the list with the key dates, who will be the release |
|
105 |
manager, and the main themes or targeted bugs. Ask people to nominate |
|
106 |
objectives, or point out any high-risk things that are best done early, |
|
4634.13.2
by Vincent Ladeuil
Fixed as per Martin's review. |
107 |
or that interact with other changes. This is called the metronome mail |
4634.13.4
by Vincent Ladeuil
More tweaks. |
108 |
and is described in `Development cycles <cycle.html>`_. |
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
109 |
|
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
110 |
#. Make a local branch for preparing this release. (Only for the first |
3464.3.6
by Martin Pool
Release process updates |
111 |
release in a series, otherwise you should already have a branch.) :: |
112 |
||
4104.7.1
by Robert J. Tanner
Updated the releasing.html document, adding some documentation on things I had |
113 |
bzr branch trunk prepare-1.14 |
114 |
||
4675.2.2
by Robert Collins
Replace bazaar-vcs.org/bzr/ references with launchpad hosting urls in developer docs. |
115 |
#. Configure pqm-submit for this branch, with a section like this (where |
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
116 |
x.y is the version to release). **Or use hydrazine for easy use** |
3464.3.6
by Martin Pool
Release process updates |
117 |
``~/.bazaar/locations.conf``:: |
118 |
||
4675.2.2
by Robert Collins
Replace bazaar-vcs.org/bzr/ references with launchpad hosting urls in developer docs. |
119 |
[/home/mbp/bzr/prepare-x.y] |
3464.3.6
by Martin Pool
Release process updates |
120 |
pqm_email = Canonical PQM <pqm@bazaar-vcs.org> |
4675.2.2
by Robert Collins
Replace bazaar-vcs.org/bzr/ references with launchpad hosting urls in developer docs. |
121 |
submit_branch = http://bazaar.launchpad.net/~bzr-pqm/bzr/x.y |
4820.1.1
by Vincent Ladeuil
Further clarifications on building releases |
122 |
parent_branch = http://bazaar.launchpad.net/~bzr-pqm/bzr/x.y |
4675.2.2
by Robert Collins
Replace bazaar-vcs.org/bzr/ references with launchpad hosting urls in developer docs. |
123 |
public_branch = http://bazaar.example.com/prepare-x.y |
3464.3.6
by Martin Pool
Release process updates |
124 |
submit_to = bazaar@lists.canonical.com |
4634.13.2
by Vincent Ladeuil
Fixed as per Martin's review. |
125 |
smtp_server = mail.example.com:25 |
4104.7.1
by Robert J. Tanner
Updated the releasing.html document, adding some documentation on things I had |
126 |
|
5370.1.2
by John Arbash Meinel
Small tweaks to releasing urls. |
127 |
Please see <http://doc.bazaar.canonical.com/developers/HACKING.html#an-overview-of-pqm> |
4070.10.13
by Martin Pool
Remove or correct broken links |
128 |
for more details on PQM |
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
129 |
|
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
130 |
#. Update the version number in the ``bzr`` script, and the |
131 |
``bzrlib/__init__.py`` file:: |
|
132 |
||
133 |
version_info = (x, y, z, 'dev', 0) |
|
134 |
||
5462.5.7
by Andrew Bennetts
Update 'Releasing Bazaar' doc. |
135 |
#. If you made a new series, then start a new release-notes file:: |
136 |
||
137 |
cd doc/en/release-notes |
|
138 |
cp series-template.txt bzr-x.y.txt # e.g. bzr-2.3.txt |
|
139 |
bzr add bzr-x.y.txt |
|
140 |
||
141 |
#. Add a new section at the top of the current release notes (in |
|
142 |
``doc/en/release-notes``) about the new release, including its version |
|
143 |
number and the headings from ``release-template.txt``. |
|
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
144 |
|
5050.19.1
by Martin Pool
Mention the need to maintain the 'what's new' document |
145 |
#. Update the "What's New" documents in ``doc/en/whats-new``. |
146 |
||
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
147 |
#. Commit this and send it to PQM. |
148 |
||
149 |
||
150 |
Doing a particular release |
|
151 |
========================== |
|
152 |
||
153 |
Update the source code |
|
154 |
---------------------- |
|
155 |
||
156 |
#. Check that there is a milestone for the release you're doing. If there |
|
157 |
is no milestone it indicates a process problem - make the milestone but |
|
158 |
also mail the list to raise this issue in our process. Milestones are |
|
159 |
found at <https://launchpad.net/bzr/+milestone/x.y.z>. |
|
160 |
||
4152.2.7
by Robert J. Tanner
Added explicit instructions to check ./bzr _script_version ./bzrlib/__init__.py |
161 |
#. In the release branch, update ``version_info`` in ``./bzrlib/__init__.py``. |
4634.13.4
by Vincent Ladeuil
More tweaks. |
162 |
Make sure the corresponding milestone exists. |
4152.2.7
by Robert J. Tanner
Added explicit instructions to check ./bzr _script_version ./bzrlib/__init__.py |
163 |
Double check that ./bzr ``_script_version`` matches ``version_info``. Check |
4634.13.1
by Vincent Ladeuil
Feedback on the 2.0rc1 release. |
164 |
the output of ``bzr --version``. |
165 |
||
166 |
For beta releases use:: |
|
167 |
||
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
168 |
version_info = (2, 1, 0, 'beta', SERIAL) |
169 |
||
170 |
For instance 2.1b1:: |
|
171 |
||
4634.13.1
by Vincent Ladeuil
Feedback on the 2.0rc1 release. |
172 |
version_info = (2, 1, 0, 'beta', 1) |
173 |
||
174 |
For release candidates use:: |
|
175 |
||
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
176 |
version_info = (2, 0, 1, 'candidate', SERIAL) |
177 |
||
178 |
For stable releases use:: |
|
179 |
||
180 |
version_info = (2, 1, 2, 'final', 0) |
|
181 |
||
5462.5.7
by Andrew Bennetts
Update 'Releasing Bazaar' doc. |
182 |
#. Update the ``./doc/en/release-notes/`` section for this release. |
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
183 |
|
184 |
Fill out the date and a description of the release under the existing |
|
5462.5.7
by Andrew Bennetts
Update 'Releasing Bazaar' doc. |
185 |
header. If there isn't one, follow the instructions above for using the |
186 |
``release-template.txt`` file. |
|
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
187 |
|
188 |
See *2.1.1* or similar for an example of what this looks like. |
|
4634.13.4
by Vincent Ladeuil
More tweaks. |
189 |
|
5050.19.1
by Martin Pool
Mention the need to maintain the 'what's new' document |
190 |
#. Add a summary of the release into the "What's New" document. |
191 |
||
5462.5.7
by Andrew Bennetts
Update 'Releasing Bazaar' doc. |
192 |
#. To check that all bugs mentioned in the release notes are actually |
193 |
marked as closed in Launchpad, you can run |
|
194 |
``tools/check-newsbugs.py``:: |
|
3966.2.6
by Jelmer Vernooij
Mention check-newsbugs.py in the release document. |
195 |
|
5462.5.7
by Andrew Bennetts
Update 'Releasing Bazaar' doc. |
196 |
./tools/check-newsbugs.py doc/en/release-notes/bzr-x.y.txt |
3966.2.6
by Jelmer Vernooij
Mention check-newsbugs.py in the release document. |
197 |
|
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
198 |
(But note there will be many false positives, and this script may be |
4632.2.2
by Martin Pool
Minor ReST tweak |
199 |
flaky <https://bugs.edge.launchpad.net/bzr/+bug/354985>. Don't let |
200 |
this slow you down too much.) |
|
4595.6.2
by Martin Pool
Guidance on using check-newsbugs when releasing |
201 |
|
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
202 |
#. Commit these changes to the release branch, using a command like:: |
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
203 |
|
204 |
bzr commit -m "Release 1.14." |
|
205 |
||
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
206 |
The diff before you commit will be something like:: |
207 |
||
3778.2.2
by John Arbash Meinel
Rewrap some doc text, update the diff hunk to be accurate for current NEWS. |
208 |
=== modified file 'NEWS' |
209 |
--- NEWS 2008-09-17 23:09:18 +0000 |
|
210 |
+++ NEWS 2008-09-23 16:14:54 +0000 |
|
211 |
@@ -4,6 +4,23 @@ |
|
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
212 |
|
3778.2.2
by John Arbash Meinel
Rewrap some doc text, update the diff hunk to be accurate for current NEWS. |
213 |
.. contents:: |
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
214 |
|
3778.2.2
by John Arbash Meinel
Rewrap some doc text, update the diff hunk to be accurate for current NEWS. |
215 |
+bzr 1.7 2008-09-23 |
216 |
+------------------ |
|
217 |
+ |
|
218 |
+This release includes many bug fixes and a few performance and feature |
|
219 |
+improvements. ``bzr rm`` will now scan for missing files and remove them, |
|
220 |
+like how ``bzr add`` scans for unknown files and adds them. A bit more |
|
221 |
+polish has been applied to the stacking code. The b-tree indexing code has |
|
222 |
+been brought in, with an eye on using it in a future repository format. |
|
223 |
+There are only minor installer changes since bzr-1.7rc2. |
|
224 |
+ |
|
225 |
bzr 1.7rc2 2008-09-17 |
|
226 |
--------------------- |
|
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
227 |
|
228 |
||
3778.2.2
by John Arbash Meinel
Rewrap some doc text, update the diff hunk to be accurate for current NEWS. |
229 |
=== modified file 'bzrlib/__init__.py' |
230 |
--- bzrlib/__init__.py 2008-09-16 21:39:28 +0000 |
|
231 |
+++ bzrlib/__init__.py 2008-09-23 16:14:54 +0000 |
|
232 |
@@ -41,7 +41,7 @@ |
|
233 |
# Python version 2.0 is (2, 0, 0, 'final', 0)." Additionally we use a |
|
234 |
# releaselevel of 'dev' for unreleased under-development code. |
|
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
235 |
|
3778.2.2
by John Arbash Meinel
Rewrap some doc text, update the diff hunk to be accurate for current NEWS. |
236 |
-version_info = (1, 7, 0, 'candidate', 2) |
237 |
+version_info = (1, 7, 0, 'final', 0) |
|
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
238 |
|
239 |
||
3778.2.2
by John Arbash Meinel
Rewrap some doc text, update the diff hunk to be accurate for current NEWS. |
240 |
# API compatibility version: bzrlib is currently API compatible with 1.7. |
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
241 |
|
5447.2.1
by Vincent Ladeuil
Fix some typos and propose a release planning. |
242 |
Note that the NEWS file formatting has evolved, this example needs to |
243 |
be updated. |
|
244 |
||
4634.13.3
by Vincent Ladeuil
Fix rst formatting issues. |
245 |
#. Tag the new release:: |
3997.2.1
by Jelmer Vernooij
Add tagging to the release process. |
246 |
|
4104.7.1
by Robert J. Tanner
Updated the releasing.html document, adding some documentation on things I had |
247 |
bzr tag bzr-1.14 |
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
248 |
|
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
249 |
#. Push those changes to a bzr repository that is public and accessible on |
4152.2.2
by Robert J. Tanner
Updated to releasing.txt based on my experiences as the release manager for |
250 |
the Internet. PQM will pull from this repository when it attempts to merge |
251 |
your changes. Then submit those changes to PQM for merge into the |
|
252 |
appropriate release branch:: |
|
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
253 |
|
3464.3.6
by Martin Pool
Release process updates |
254 |
bzr push |
4104.7.1
by Robert J. Tanner
Updated the releasing.html document, adding some documentation on things I had |
255 |
bzr pqm-submit -m "(mbp) prepare 1.14" |
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
256 |
|
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
257 |
Or with hydrazine:: |
258 |
||
259 |
bzr lp-propose -m "Release 1.14" --approve lp:bzr/1.14 |
|
260 |
feed-pqm bzr |
|
261 |
||
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
262 |
#. When PQM succeeds, pull down the master release branch. |
263 |
||
3464.3.6
by Martin Pool
Release process updates |
264 |
|
3383.2.4
by Martin Pool
Trim from the release instructions things that are now automated or unnecessary |
265 |
Making the source tarball |
266 |
------------------------- |
|
267 |
||
3408.1.3
by Martin Pool
More release process updates |
268 |
#. Change into the source directory and run :: |
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
269 |
|
3383.2.4
by Martin Pool
Trim from the release instructions things that are now automated or unnecessary |
270 |
make dist |
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
271 |
|
3408.1.3
by Martin Pool
More release process updates |
272 |
#. Now we'll try expanding this tarball and running the test suite |
273 |
to check for packaging problems:: |
|
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
274 |
|
3408.1.3
by Martin Pool
More release process updates |
275 |
make check-dist-tarball |
3383.2.5
by Martin Pool
merge trunk |
276 |
|
4634.13.1
by Vincent Ladeuil
Feedback on the 2.0rc1 release. |
277 |
You may encounter failures while running the test suite caused |
4634.13.2
by Vincent Ladeuil
Fixed as per Martin's review. |
278 |
by your locally installed plugins. Use your own judgment to |
4634.13.1
by Vincent Ladeuil
Feedback on the 2.0rc1 release. |
279 |
decide if you can release with these failures. When in doubt, |
280 |
disable the faulty plugins one by one until you get no more |
|
281 |
failures. |
|
282 |
||
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
283 |
Remember that PQM has just tested everything too, this step is |
284 |
particularly testing that the pyrex extensions, which are updated |
|
285 |
by your local pyrex version when you run make dist, are in good |
|
286 |
shape. |
|
287 |
||
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
288 |
|
4676.6.1
by mbp at sourcefrog
Updates to release process docs. |
289 |
Publishing the source tarball |
290 |
----------------------------- |
|
291 |
||
292 |
#. Go to the relevant milestone page in Launchpad. |
|
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
293 |
|
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
294 |
#. Create a release of the milestone, and upload the source tarball and |
295 |
the GPG signature. Or, if you prefer, use the |
|
296 |
``tools/packaging/lp-upload-release`` script to do this. Note that |
|
297 |
this changes what the download widget on the Launchpad bzr home |
|
298 |
page shows, so don't stop the release process yet, or platform binary |
|
299 |
installers won't be made and the download list will stay very small! |
|
5447.2.1
by Vincent Ladeuil
Fix some typos and propose a release planning. |
300 |
<https://bugs.launchpad.net/launchpad/+bug/586445> |
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
301 |
|
4676.6.1
by mbp at sourcefrog
Updates to release process docs. |
302 |
|
303 |
Announcing the source freeze |
|
304 |
---------------------------- |
|
305 |
||
5447.2.1
by Vincent Ladeuil
Fix some typos and propose a release planning. |
306 |
#. Post to the ``bazaar`` list, saying that the source has been frozen |
307 |
(gone gold). Be extra clear that this is only a *source* release |
|
308 |
targeted at packagers and installer builders (see |
|
309 |
<https://bugs.launchpad.net/launchpad/+bug/645084>). This is the cue |
|
310 |
for platform maintainers and plugin authors to update their code. This |
|
311 |
is done before the general public announcement of the release. |
|
4676.6.1
by mbp at sourcefrog
Updates to release process docs. |
312 |
|
313 |
||
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
314 |
Kick off the next cycle |
315 |
----------------------- |
|
316 |
||
317 |
#. To let developers work on the next release, do |
|
318 |
`At the start of a release cycle` now. |
|
319 |
||
320 |
#. Pause for a few days. |
|
321 |
||
322 |
||
4676.6.1
by mbp at sourcefrog
Updates to release process docs. |
323 |
Publishing the release |
324 |
---------------------- |
|
325 |
||
326 |
There is normally a delay of a few days after the source freeze to allow |
|
327 |
for binaries to be built on various platforms. Once they have been built, |
|
328 |
we have a releasable product. The next step is to make it generally |
|
329 |
available to the world. |
|
330 |
||
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
331 |
#. Go to the release web page at <https://launchpad.net/bzr/x.y/x.y.z> |
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
332 |
|
5370.1.2
by John Arbash Meinel
Small tweaks to releasing urls. |
333 |
#. Announce on the `Bazaar website <http://bazaar.canonical.com/>`_. |
4634.67.1
by Ian Clatworthy
update release documentation to mention the new website |
334 |
This page is edited via the lp:bzr-website branch. (Changes |
335 |
pushed to this branch are refreshed by a cron job on escudero.) |
|
336 |
||
4634.13.1
by Vincent Ladeuil
Feedback on the 2.0rc1 release. |
337 |
#. Check that the documentation for this release is available in |
5370.1.2
by John Arbash Meinel
Small tweaks to releasing urls. |
338 |
<http://doc.bazaar.canonical.com>. It should be automatically build when the |
3778.2.1
by Martin Pool
Updated release process documentation. |
339 |
branch is created, by a cron script ``update-bzr-docs`` on |
4634.13.2
by Vincent Ladeuil
Fixed as per Martin's review. |
340 |
``escudero``. As of today (2009-08-27) ``igc`` manually updates the |
341 |
pretty version of it. |
|
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
342 |
|
343 |
||
344 |
Announcing the release |
|
345 |
---------------------- |
|
346 |
||
347 |
Now that the release is publicly available, tell people about it. |
|
348 |
||
3778.2.1
by Martin Pool
Updated release process documentation. |
349 |
#. Make an announcement mail. |
350 |
||
4634.13.1
by Vincent Ladeuil
Feedback on the 2.0rc1 release. |
351 |
For release candidates or beta releases, this is sent to the ``bazaar`` |
352 |
list only to inform plugin authors and package or installer managers. |
|
353 |
||
354 |
Once the installers are available, the mail can be sent to the |
|
355 |
``bazaar-announce`` list too. |
|
356 |
||
357 |
For final releases, it should also be cc'd to ``info-gnu@gnu.org``, |
|
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
358 |
``python-announce-list@python.org``, ``bug-directory@gnu.org``. |
4634.13.1
by Vincent Ladeuil
Feedback on the 2.0rc1 release. |
359 |
|
360 |
In all cases, it is good to set ``Reply-To: bazaar@lists.canonical.com``, |
|
361 |
so that people who reply to the announcement don't spam other lists. |
|
3778.2.1
by Martin Pool
Updated release process documentation. |
362 |
|
4439.1.2
by Martin Pool
Change release message template to a preformatted block so you can more easily copy and paste it into a mail. |
363 |
The announce mail will look something like this:: |
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
364 |
|
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
365 |
Subject: bzr x.y.z released! |
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
366 |
|
367 |
The Bazaar team is happy to announce availability of a new |
|
4439.1.2
by Martin Pool
Change release message template to a preformatted block so you can more easily copy and paste it into a mail. |
368 |
release of the bzr adaptive version control system. |
4439.1.6
by Martin Pool
Tweak text about GNU in release template |
369 |
Bazaar is part of the GNU system <http://gnu.org/>. |
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
370 |
|
5447.2.1
by Vincent Ladeuil
Fix some typos and propose a release planning. |
371 |
<<Summary paragraph from news>> |
372 |
||
4439.1.2
by Martin Pool
Change release message template to a preformatted block so you can more easily copy and paste it into a mail. |
373 |
Thanks to everyone who contributed patches, suggestions, and |
374 |
feedback. |
|
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
375 |
|
376 |
Bazaar is now available for download from |
|
5370.1.2
by John Arbash Meinel
Small tweaks to releasing urls. |
377 |
https://launchpad.net/bzr/2.x/2.x/ as a source tarball; packages |
4439.1.2
by Martin Pool
Change release message template to a preformatted block so you can more easily copy and paste it into a mail. |
378 |
for various systems will be available soon. |
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
379 |
|
5462.5.7
by Andrew Bennetts
Update 'Releasing Bazaar' doc. |
380 |
<<release notes from this release back to the last major release>> |
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
381 |
|
4439.1.1
by Martin Pool
Release mails should mention bzr's a GNU project |
382 |
Feel free to tweak this to your taste. |
383 |
||
3815.1.1
by Martin Pool
Add Launchpad announcement to the release process |
384 |
#. Make an announcement through <https://launchpad.net/bzr/+announce> |
385 |
||
3778.2.2
by John Arbash Meinel
Rewrap some doc text, update the diff hunk to be accurate for current NEWS. |
386 |
#. Update the IRC channel topic. Use the ``/topic`` command to do this, |
387 |
ensuring the new topic text keeps the project name, web site link, etc. |
|
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
388 |
|
389 |
#. Announce on http://freshmeat.net/projects/bzr/ |
|
4853.1.1
by Patrick Regan
Removed trailing whitespace from files in doc directory |
390 |
|
4634.13.1
by Vincent Ladeuil
Feedback on the 2.0rc1 release. |
391 |
This should be done for beta releases, release candidates and final |
392 |
releases. If you do not have a Freshmeat account yet, ask one of the |
|
393 |
existing admins. |
|
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
394 |
|
4634.13.1
by Vincent Ladeuil
Feedback on the 2.0rc1 release. |
395 |
#. Update `<http://en.wikipedia.org/wiki/Bazaar_(software)>`_ -- this should |
396 |
be done for final releases but not for beta releases or Release Candidates. |
|
3497.3.1
by Martin Pool
Add note to update GNU directory |
397 |
|
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
398 |
#. Update the python package index: <http://pypi.python.org/pypi/bzr> - best |
399 |
done by running :: |
|
400 |
||
401 |
python setup.py register |
|
402 |
||
5447.2.2
by Vincent Ladeuil
More updates following list discussion. |
403 |
Remember to check the results afterwards -- this should be done for |
404 |
final releases but not for beta releases or Release Candidates. |
|
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
405 |
|
3408.1.3
by Martin Pool
More release process updates |
406 |
To be able to register the release you must create an account on |
407 |
<http://pypi.python.org/pypi> and have one of the existing owners of |
|
408 |
the project add you to the group. |
|
409 |
||
3383.2.3
by Martin Pool
Separate out and update the release manager instructions |
410 |
|
3383.2.5
by Martin Pool
merge trunk |
411 |
Merging the released code back to trunk |
412 |
--------------------------------------- |
|
413 |
||
5462.5.7
by Andrew Bennetts
Update 'Releasing Bazaar' doc. |
414 |
Merge the release branch back into the trunk. The |
415 |
``doc/en/release-notes`` changes should be merged into the right place |
|
416 |
because each release series has its own release-notes file, but |
|
417 |
double-check. |
|
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
418 |
|
5462.5.7
by Andrew Bennetts
Update 'Releasing Bazaar' doc. |
419 |
If it's not already done, advance the version number in ``bzr`` and |
420 |
``bzrlib/__init__.py``. Submit this back into pqm for bzr.dev. |
|
3383.2.5
by Martin Pool
merge trunk |
421 |
|
4634.13.4
by Vincent Ladeuil
More tweaks. |
422 |
As soon as you change the version number in trunk, make sure you have |
423 |
created the corresponding milestone to ensure the continuity in bug |
|
4634.13.5
by Vincent Ladeuil
Mention creating the news series when changing the major or minor part of |
424 |
targeting or nominating. Depending on the change, you may even have to |
425 |
create a new series (if your change the major or minor release number), in |
|
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
426 |
that case go to `At the start of a release cycle` and follow the instructions from there. |
4634.13.4
by Vincent Ladeuil
More tweaks. |
427 |
|
4070.10.2
by Martin Pool
doc to maintain bzr/current branch |
428 |
You should also merge (not pull) the release branch into |
429 |
``lp:~bzr/bzr/current``, so that branch contains the current released code |
|
430 |
at any time. |
|
431 |
||
4634.13.4
by Vincent Ladeuil
More tweaks. |
432 |
Releases until the final one |
433 |
---------------------------- |
|
434 |
||
4634.13.6
by Vincent Ladeuil
Fixed as per Ian's review. |
435 |
Congratulations - you have made your first release. Have a beer |
436 |
or fruit juice - it's on the house! If it was a beta, or |
|
437 |
candidate, you're not finished yet. Another beta or candidate or |
|
438 |
hopefully a final release is still to come. |
|
439 |
||
5264.2.1
by Robert Collins
Improved our release checklist to have a bit less churn and leave things |
440 |
The process is the same as for the first release. Goto `Doing a |
441 |
particular release`_ and follow the instructions again. Some details change |
|
4634.13.4
by Vincent Ladeuil
More tweaks. |
442 |
between beta, candidate and final releases, but they should be |
4634.13.6
by Vincent Ladeuil
Fixed as per Ian's review. |
443 |
documented. If the instructions aren't clear enough, please fix them. |
4634.13.4
by Vincent Ladeuil
More tweaks. |
444 |
|
3383.2.5
by Martin Pool
merge trunk |
445 |
|
5430.5.1
by Martin Pool
Developer docs about SRUs of stable releases |
446 |
Getting the release into Ubuntu |
447 |
------------------------------- |
|
448 |
||
449 |
(Feel free to propose or add new sections here about what we should do to |
|
450 |
get bzr into other places.) |
|
451 |
||
452 |
For the currently-under-development release of Ubuntu, no special action |
|
453 |
is needed: the release should be picked by Debian and synced from there into |
|
454 |
Ubuntu. |
|
455 |
||
456 |
Releases off stable bzr branches should go in to the ``-updates`` of the |
|
457 |
Ubuntu release that originally contained that branch. (Ubuntu Lucid had |
|
458 |
bzr 2.2.0, so should get every 2.2.x update.) This means going through |
|
459 |
the `SRU (Stable Release Updates) |
|
460 |
<https://wiki.ubuntu.com/StableReleaseUpdates>`__ process. |
|
461 |
||
462 |
As of September 2010, bzr has applied to the technical board to be added |
|
463 |
to the `MicroReleaseExceptions |
|
464 |
<https://wiki.ubuntu.com/StableReleaseUpdates/MicroReleaseExceptions>`__ |
|
465 |
category so that whole bugfix releases can more easily be approved. |
|
466 |
||
467 |
**After making a bzr stable-release release, nominate the most serious bug |
|
468 |
for the appropriate Ubuntu release and subscribe the `ubuntu-sru` team.** |
|
469 |
||
5430.4.5
by Vincent Ladeuil
Clarify SRU bug nomination. |
470 |
This requires a couple of tricks (please reconsider and tweak as things |
471 |
evolves from one release to the other): |
|
472 |
||
473 |
* create a distro task with the ``Also affects distribution`` button and |
|
474 |
select ``bzr (Ubuntu)``. |
|
475 |
||
476 |
* change the *URL* to point to ``ubuntu/+source/bzr`` instead of ``bzr`` |
|
477 |
(this is needed if you create the distro task but not if it exists |
|
478 |
already). You should now be able to click the ``Nominate for release`` |
|
479 |
button and select the right Ubuntu release. As of September 2010, this |
|
480 |
means: |
|
481 |
||
482 |
* ``maverick`` for the 2.2 series, |
|
483 |
* ``lucid`` for the 2.1 series, |
|
484 |
* ``karmic`` for the 2.0 series. |
|
485 |
||
486 |
* Subscribe the ``~ubuntu-sru`` team to the bug. |
|
487 |
||
488 |
* Add a comment targeted to ``~ubuntu-sru`` explaining the expectations |
|
489 |
(we are targeting running the test suite during the build which, as of |
|
490 |
September 2010, fails for known reasons that are currently addressed). |
|
491 |
Search for bugs tagged with ``sru`` for examples and don't forget to tag |
|
492 |
the bug you selected. |
|
493 |
||
5430.5.1
by Martin Pool
Developer docs about SRUs of stable releases |
494 |
|
3549.3.1
by Martin Pool
Updated instructions in packaging into the PPA |
495 |
See also |
496 |
-------- |
|
497 |
||
4070.10.3
by Martin Pool
Small ReST syntax fix |
498 |
* `Packaging into the bzr PPA <ppa.html>`_ to make and publish Ubuntu |
499 |
packages. |
|
500 |
* `Bazaar Developer Document Catalog <index.html>`_ |
|
501 |
* `Development cycles <cycle.html>`_: things that happen during the cycle |
|
502 |
before the actual release. |
|
3464.3.6
by Martin Pool
Release process updates |
503 |
|
504 |
.. |
|
3464.3.8
by Martin Pool
Doc updates re PPAs |
505 |
vim: filetype=rst textwidth=74 ai shiftwidth=4 |