207
208
found at <https://launchpad.net/bzr/+milestone/x.y.z>.
209
210
#. 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::
211
merged yet. For example, if you're releasing 2.6.x, make sure the fixes
212
on 2.5, 2.4, 2.3, etc have already been merged up::
213
214
bzr merge lp:bzr/2.4
226
227
For beta releases use::
228
version_info = (2, 5, 0, 'beta', SERIAL)
232
version_info = (2, 5, 0, 'beta', 5)
229
version_info = (2, 6, 0, 'beta', SERIAL)
233
version_info = (2, 6, 0, 'beta', 1)
234
235
For stable releases use::
236
version_info = (2, 5, 0, 'final', 0)
237
version_info = (2, 6, 0, 'final', 0)
238
239
#. Update the ``./doc/en/release-notes/`` section for this release.
240
241
Check that all news entries related to this release have been added in
241
the right section. For example, if you're releasing 2.5b5, the following
242
command should display a a single chuk diff for the 2.5b5 release::
242
the right section. For example, if you're releasing 2.6b2, the following
243
command should display a a single chuk diff for the 2.6b2 release::
244
bzr diff -rbzr-2.5b4.. doc/en/release-notes/bzr-2.5.txt
245
bzr diff -rbzr-2.6b2.. doc/en/release-notes/bzr-2.6.txt
246
247
Fill out the date and a description of the release under the existing
247
248
header (the diff above will help you summarizing). If there isn't one,
248
249
follow the instructions above for using the ``release-template.txt`` file
249
250
and remind people that they should document their changes there ;)
251
See *2.5b5* or similar for an example of what this looks like.
252
See *2.6b1* or similar for an example of what this looks like.
253
254
#. Add or check the summary of the release into the "What's New" document.
256
If this is the first release in a new series make sure to update the
257
introduction mentioning:
259
* the date of this first release,
260
* until when the series is expected to be supported.
262
Looking at ``bzr annotate`` for previous series should give you the right
263
hints. The ``doc/en/_templates/index.html`` file should also be updated.
255
265
#. To check that all bugs mentioned in the release notes are actually
256
266
marked as closed in Launchpad, you can run
257
267
``tools/check-newsbugs.py``::
503
513
----------------------------
505
515
#. Post to the ``bazaar@lists.canonical.com`` and
506
``bzr-packagers@list.launchpad.net`` lists, saying that the source has
516
``bzr-packagers@lists.launchpad.net`` lists, saying that the source has
507
517
been frozen. Be extra clear that this is only a *source* release targeted
508
518
at packagers and installer builders (see
509
519
<https://bugs.launchpad.net/launchpad/+bug/645084>). This is the cue for
527
537
----------------------
529
539
There is normally a delay of a few days after the source freeze to allow
530
for binaries to be built on various platforms. Once they have been built,
540
for binaries to be built for various platforms. Once they have been built,
531
541
we have a releasable product. The next step is to make it generally
532
542
available to the world.
534
544
#. Go to the release web page at <https://launchpad.net/bzr/x.y/x.y.z>
536
#. Announce on the `Bazaar website <http://bazaar.canonical.com/>`_.
537
This page is edited via the lp:bzr-website branch. (Changes
546
#. Announce on the `Bazaar website <http://bazaar.canonical.com/>`_. This
547
page is edited in ``build.py`` in the lp:bzr-website branch. (Changes
538
548
pushed to this branch are refreshed by a cron job on escudero.)
540
550
#. Check that the documentation for this release is available in
541
<http://doc.bazaar.canonical.com>. It should be automatically build when the
542
branch is created, by a cron script ``update-bzr-docs`` on
551
<http://doc.bazaar.canonical.com>. It should be automatically build when
552
the branch is created, by a cron script ``update-bzr-docs`` on
553
``escudero``. When the first release is created in a new series, a branch
554
needs to be created on ``escudero``::
556
ssh escudero.canonical.com
558
cd /srv/doc.bazaar.canonical.com/
559
bzr branch lp:bzr/2.7 bzr/bzr.2.7
561
And the ``bzr/bin/update-bzr-docs`` script needs to refer to it.
563
The ``lp:bzr-alldocs`` branch also needs to be updated when a new series
564
is introduced, see the ``README`` file there for more instructions
565
(looking at the branch history is also a good way to understand what
566
needs to be done and to document any policy changes).
546
568
Announcing the release
547
569
----------------------
588
610
mentioning the milestone URL <https://launchpad.net/bzr/+milestone/x.y.z>
589
611
so people get an easy access to details.
591
#. Announce on http://freecode.com/projects/bazaar-vcs
613
#. Announce on https://freecode.com/projects/bazaar-vcs
593
615
This should be done for beta releases and stable releases. If you do not
594
616
have a Freecode account yet, ask one of the existing admins.
615
637
series, create these links again. Check all links when doing other
616
638
kinds of release.
618
* Set direct download: When releasing a new stable release, this should
619
point to the corresponding launchpad page:
620
<https://launchpad.net/bzr/x.y/x.y.z/>
622
640
#. Update `<http://en.wikipedia.org/wiki/Bazaar_(software)>`_ -- this should
623
641
be done for the stable and beta releases.
625
#. Update the python package index: <http://pypi.python.org/pypi/bzr> - best
628
python setup.py register
643
#. Update the python package index: <http://pypi.python.org/pypi/bzr>
645
From the tarball created and tested earlier ::
647
twine upload -s ../bzr-2.7.0.tar.gz
630
649
Remember to check the results afterward -- this should be done for
631
650
stable releases but not for beta releases nor SRUs.
633
To be able to register the release you must create an account on
634
<http://pypi.python.org/pypi> and have one of the existing owners of
635
the project add you to the group.
652
The ``twine`` command is provided by the ``twine`` package on Debian and
655
If in doubt, you can test with <https://testpypi.python.org/pypi> where
656
you can register yourself, register the bzr project and upload (and then
657
remove the upload and delete the project so a new release manager can
658
enjoy the same facilities). If the project already exists, have one of
659
the existing owners of the project add you to the group.
661
To use the pypi test site, you need to record your credentials for an
662
existing user (the registration process is manual and starts at
663
<https://testpypi.python.org/pypi?%3Aaction=register_form>.
665
Once registered, you can record your crdentials in your ``~/pypirc`` file
669
username:<login on testpypi>
670
password:<password on testpypi>
671
repository = https://testpypi.python.org/pypi
673
Registering the bzr project if doesn't exist is achieved with::
675
python setup.py -r https://testpypi.python.org/pypi register
677
Uploading is done with::
679
twine upload -r testpypi -s ../bzr-2.7.0.tar.gz
681
To be able to upload the release you must create an account on
682
<http://pypi.python.org/pypi> and have one of the existing owners of the
683
project add you to the group and update your ``[pypi]`` section in your
638
687
Merging the released code back to trunk
707
756
button and select the right Ubuntu release. As of September 2010, this
759
* ``quantal`` for the 2.6 series,
760
* ``precise`` for the 2.5 series,
710
761
* ``oneiric`` for the 2.4 series,
711
762
* ``natty`` for the 2.3 series,
712
763
* ``maverick`` for the 2.2 series,