~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to doc/developers/releasing.txt

  • Committer: Vincent Ladeuil
  • Date: 2011-10-31 22:11:59 UTC
  • mfrom: (6236 +trunk)
  • mto: This revision was merged to the branch mainline in revision 6252.
  • Revision ID: v.ladeuil+lp@free.fr-20111031221159-zmbd6izz1flzyisa
Merge trunk before submission

Show diffs side-by-side

added added

removed removed

Lines of Context:
206
206
   also mail the list to raise this issue in our process. Milestones are
207
207
   found at <https://launchpad.net/bzr/+milestone/x.y.z>.
208
208
 
 
209
#. Merge into your branch all previous stable series fixes that haven't been
 
210
   merged yet. For example, if you're releasing 2.5.x, make sure the fixes
 
211
   on 2.4, 2.3, etc have already been merged up::
 
212
 
 
213
     bzr merge lp:bzr/2.4
 
214
 
 
215
   and commit that merge in its own commit. This should happen only if the
 
216
   devs landing changes in previous releases forgot to merge them up. Since
 
217
   this can slow down the freeze, feel free to gently remind them about
 
218
   their duties ;) If you feel unsafe resolving the conflicts or it's too
 
219
   time consuming, contact the related devs and skip this merge.
 
220
 
209
221
#. In the release branch, update  ``version_info`` in ``./bzrlib/__init__.py``.
210
222
   Make sure the corresponding milestone exists.
211
223
   Double check that ./bzr ``_script_version`` matches ``version_info``. Check
225
237
 
226
238
#. Update the ``./doc/en/release-notes/`` section for this release.
227
239
 
 
240
   Check that all news entries related to this release have been added in
 
241
   the right section. For example, if you're releasing 2.5b2, the following
 
242
   command should display a a single chuk diff for the 2.5b2 release::
 
243
 
 
244
     bzr diff -rbzr-2.5b1.. doc/en/release-notes/bzr-2.5.txt
 
245
 
228
246
   Fill out the date and a description of the release under the existing
229
 
   header. If there isn't one, follow the instructions above for using the
230
 
   ``release-template.txt`` file.
 
247
   header (the diff above will help you summarizing). If there isn't one,
 
248
   follow the instructions above for using the ``release-template.txt`` file
 
249
   and remind people that they should document their changes there ;)
231
250
 
232
251
   See *2.1.1* or similar for an example of what this looks like.
233
252
 
244
263
   Released' or setting a different milestone if the bug hasn't been
245
264
   fixed). A few false positives may remain in the older series, don't let
246
265
   this slow you down too much. This script accepts options you may find
247
 
   useful, use ``./tools/check-newsbugs.py`` to display its usage.
 
266
   useful, use ``./tools/check-newsbugs.py`` to display its usage (``-w``
 
267
   will open each bug in your browser for example).
 
268
 
 
269
#. For beta releases update the translation template::
 
270
 
 
271
     make -f po/bzr.pot
 
272
 
 
273
   This is especially important for the final beta release which is
 
274
   when translations are frozen and translators are requested to make
 
275
   the translations.
 
276
 
 
277
#. For stable releases update the translations::
 
278
 
 
279
     bzr merge lp:~bzr-core/bzr/bzr-translations-export-x.y
248
280
 
249
281
#. Commit these changes to the release branch, using a command like::
250
282
 
406
438
You may also need to do `At the start of a series cycle`_ if you're starting
407
439
a new series.
408
440
 
 
441
The final beta - branching and translations
 
442
-------------------------------------------
 
443
 
409
444
A word of caution: the instructions above works well for all releases but
410
445
there is one special case that requires a bit more care: when you release
411
446
the *last* beta for a given ``x.y`` series (from trunk aka lp:bzr), you need
436
471
 
437
472
#. Open ``lp:bzr/x.y`` for bug fixes
438
473
 
 
474
You also need to ensure Launchpad is set up to import/export
 
475
translations for the new branch and inform translators.
 
476
 
 
477
#. Push a branch::
 
478
 
 
479
     bzr push lp:~bzr-core/bzr/bzr-translations-export-x.y
 
480
 
 
481
#. On the translations series synchronization settings page
 
482
   <https://translations.launchpad.net/bzr/x.y/+translations-settings>
 
483
   turn on ``Import template files`` then for exports click ``Choose a
 
484
   target branch`` and point it at the branch you just pushed.
 
485
 
 
486
#. E-mail translators to announce that the forthcoming stable release
 
487
   of bzr is ready for translations.  Send to
 
488
   ``translators@lists.launchpad.net`` and
 
489
   ``ubuntu-translators@lists.ubuntu.com``.
 
490
 
 
491
#. The series is now frozen for strings and API, see below for adding
 
492
   that to the announcement.
 
493
 
439
494
Announcing the source freeze
440
495
----------------------------
441
496
 
442
 
#. Post to the ``bazaar`` list, saying that the source has been frozen
443
 
   (gone gold). Be extra clear that this is only a *source* release
444
 
   targeted at packagers and installer builders (see
445
 
   <https://bugs.launchpad.net/launchpad/+bug/645084>).  This is the cue
446
 
   for platform maintainers and plugin authors to update their code.  This
447
 
   is done before the general public announcement of the release. 
 
497
#. Post to the ``bazaar@lists.canonical.com`` list, saying that the source
 
498
   has been frozen (gone gold). Be extra clear that this is only a *source*
 
499
   release targeted at packagers and installer builders (see
 
500
   <https://bugs.launchpad.net/launchpad/+bug/645084>).  This is the cue for
 
501
   platform maintainers and plugin authors to update their code.  This is
 
502
   done before the general public announcement of the release.
448
503
 
449
504
   The freeze announcement generally guess the date of the official public
450
505
   announcement, for the most recent stable series (the one supported by the
452
507
   the freeze. For older series supported only via SRUs for Ubuntu, we don't
453
508
   control the process as tightly so guessing the date is not appropriate.
454
509
 
 
510
   For the final beta release include in your announcement a notice of
 
511
   API and translation freezes nothing that public methods should not
 
512
   be removed or changed and strings should not be added or changed.
 
513
 
455
514
#. Pause for a few days. 
456
515
 
457
516
 
482
541
 
483
542
#. Make an announcement mail.
484
543
 
485
 
   For beta releases, this is sent to the ``bazaar@lists.canonical.com``
486
 
   list only to inform plugin authors and people responsible for building
487
 
   packages or installers.
488
 
 
489
 
   Once the installers are available, the mail can be sent to the
490
 
   ``bazaar-announce`` list too.
 
544
   For beta releases, this is sent to the ``bazaar@lists.canonical.com`` and
 
545
   ``bazaar-announce@lists.canonical.com`` lists.
491
546
 
492
547
   For stable releases (excluding SRUs which are for older stable releases),
493
548
   it should also be cc'd to ``info-gnu@gnu.org``,
503
558
      The Bazaar team is happy to announce availability of a new
504
559
      release of the bzr adaptive version control system.
505
560
 
506
 
      Bazaar <http://bazaar.canonical.com/> is part of the GNU project
507
 
      <http://gnu.org/> to produce a free operating system.
 
561
      Bazaar <http://bazaar.canonical.com/> is a Canonical project and part
 
562
      of the GNU project <http://gnu.org/> to produce a free operating
 
563
      system.
508
564
 
509
565
      <<Summary paragraph from news>>
510
566