External Compatibility Breaks
*****************************
None.
Improvements
************
* Access to HTTPS URLs now uses the urrllib implementation by default.
For the old pycurl-based implementation, specify ``https+pycurl://`` as
the URL scheme when accessing a HTTPS location.
(Jelmer Vernooij, #125055)
* Add short option alias ``-N`` for ``--no-recurse``.
(Jelmer Vernooij, #945904)
* Avoid 'Invalid range access' errors when whole files are retrieved with
transport.http.get() . (Vincent Ladeuil, #924746)
* ``bzr rmbranch`` now supports removing colocated branches.
(Jelmer Vernooij, #920653)
* ``bzr rmbranch`` no longer removes active branches unless ``--force``
is specified. (Jelmer Vernooij, #922953)
* ``bzr verify-signatures`` now shows a progress bar.
(Jelmer Vernooij)
* Two new command hooks, ``pre_command`` and ``post_command``,
provide notification before and after a command has been run.
(Brian de Alwis, Jelmer Vernooij)
Bug Fixes
*********
* Fix ``bzr config`` display for ``RegistryOption`` values.
(Vincent Ladeuil, #930182)
Documentation
*************
* Prevent lines of command descriptions starting with a dot to
accidentally be interpreted as a roff macro in bzr(1).
(Jelmer Vernooij, #711079)
* Properly format apostrophes in manual page. (Jelmer Vernooij, #234771)
API Changes
***********
* ``GPGStrategy.do_verifications`` has been deprecated.
(Jelmer Vernooij)
* File ids in the ``Tree`` API can now be bytestring as previously,
or tuples of bytestrings.
(Jelmer Vernooij)
* ``mail_client`` now accepts a configuration stack object rather than
an old style Config object. (Jelmer Vernooij)
* New method ``Repository.verify_revision_signatures``.
(Jelmer Vernooij)
* New configuration option class ``RegistryOption`` which is backed
onto a registry. (Jelmer Vernooij)
* New convenience API method ``WorkingTree.get_config_stack``.
(Jelmer Vernooij)
* Remove deprecated ``Branch.set_revision_history`` and
``Branch.revision_history`` methods and the ``set_rh``
hook on ``Branch``. (Jelmer Vernooij)
* Remove
``branch.PullResult.__int__`` deprecated in 2.3.0,
``branch.PushResult.__int__`` deprecated in 2.3.0,
``branch.BranchFormat.get_default_format`` deprecated in 2.4.0,
``branch.BranchFormat.get_formats`` deprecated in 2.4.0,
``branch.BranchFormat.set_default_format`` deprecated in 2.4.0,
``branch.BranchFormat.register_format`` deprecated in 2.4.0,
``branch.BranchFormat.unregister_format`` deprecated in 2.4.0,
``bzrdir.BzrDir.generate_backup_name`` deprecated in 2.3.0,
``bzrdir.BzrProber.register_bzrdir_format`` deprecated in 2.4.0,
``bzrdir.BzrProber.unregister_bzrdir_format`` deprecated in 2.4.0,
``config.Config.get_editor`` deprecated in 2.4.0,
``hooks.known_hooks_key_to_parent_and_attribute`` deprecated in 2.3,
``hooks.Hooks.create_hook`` deprecated in 2.4,
``inventory.Inventory.__contains__`` deprecated in 2.4.0,
``merge.Merge3Merger.scalar_three_way`` deprecated in 2.2.0,
``merge.Merge3Merger.fix_root`` deprecated in 2.4.0,
``transform.TreeTransformBase.has_named_child`` deprecated in 2.3.0,
``transform.get_backup_name`` deprecated in 2.3.0,
``transform._get_backup_name`` deprecated in 2.3.0,
``workingtree.WorkingTreeFormat.get_default_format`` deprecated in 2.4.0,
``workingtree.WorkingTreeFormat.register_format`` deprecated in 2.4.0,
``workingtree.WorkingTreeFormat.register_extra_format`` deprecated in 2.4.0,
``workingtree.WorkingTreeFormat.unregister_extra_format`` deprecated in 2.4.0,
``workingtree.WorkingTreeFormat.get_formats`` deprecated in 2.4.0,
``workingtree.WorkingTreeFormat.set_default_format`` deprecated in 2.4.0,
``workingtree.WorkingTreeFormat.unregister_format`` deprecated in 2.4.0,
(Vincent Ladeuil)
Internals
*********
* ``Tree.path2id`` now once again accepts a list of path elements
in addition to a path. (Jelmer Vernooij)
* Turn config option expansion on by default. The only options for which
this should be disabled are templates which should already have used
conf.get(option, expand=False) or conf.get_user_option(option,
expand=False). (Vincent Ladeuil)