External Compatibility Breaks
*****************************
.. These may require users to change the way they use Breezy.
* Breezy now uses the system merge3 rather than bundling its own copy.
(Jelmer Vernooij)
* Breezy now requires PyYAML. (Jelmer Vernooij)
* Breezy now requires setuptools-rust and a rust compiler to
be built. (Martin Packman, Jelmer Vernooij)
New Features
************
.. New commands, options, etc that users may wish to try out.
* Add --recurse-nested argument to 'brz export'.
(Jelmer Vernooij)
Improvements
************
.. Improvements to existing commands, especially improved performance
or memory usage, or better results.
* Add an ``extra`` for installing PGP dependencies.
(Jelmer Vernooij)
* Convert multiple authors to the Co-authored-by field.
(Jelmer Vernooij)
* github: Lazily load github pull requests, improving
performance. (Jelmer Vernooij)
* github: Return canonical URLs for branches.
(Jelmer Vernooij)
* Avoid deprecated distutils.version, ahead of removal.
(Jelmer Vernooij)
* Add a docker file. (Jelmer Vernooij)
* launchpad: Store Launchpad credentials in authentication.conf.
(Jelmer Vernooij)
* git: Support accessing git branch configuration.
(Jelmer Vernooij)
* pgp: Add support for create_signatures=when-possible
(Jelmer Vernooij)
* propose: By default, don't push tags when proposing changes.
(Jelmer Vernooij)
* git: Split out and separately report ProtectedBranchHookDeclined.
(Jelmer Vernooij)
* git: Avoid reading entire pack files into memory.
(Jelmer Vernooij)
Bug Fixes
*********
.. Fixes for situations where brz would previously crash or give incorrect
or undesirable results.
* git: Fix handling of empty directories in iter_changes.
(Jelmer Vernooij)
* fastimport: Open stdin in binary mode. (Alexander Grund)
* Fix printing of exceptions for unsupported formats.
(Jelmer Vernooij)
* Fix compatibility with modern dulwich.
(Jelmer Vernooij)
* bzr: Only update working tree when pushing to active branch.
(Jelmer Vernooij)
* gitlab: Fix API access; now seems to reject ';' as separator of url parameters.
(Jelmer Vernooij)
* Launchpad: Fix instance iteration.
(Jelmer Vernooij)
* git: Fix remote branch reference handling.
(Jelmer Vernooij)
* git: Handle symref loops. (Jelmer Vernooij)
* Fix handling of chunked HTTP requests.
(Jelmer Vernooij)
* git: Fix handling of date: revision specs.
(Jelmer Vernooij)
* git: Support insteadOf / pushInsteadOf.
(Jelmer Vernooij)
Documentation
*************
.. Improved or updated documentation.
* Add link to Matrix room, point to new IRC channel.
(Jelmer Vernooij)
API Changes
***********
.. Changes that may require updates in plugins or other code that uses
breezy.
* Various errors have moved out of ``breezy.errors`` to
the modules they are related to. Including:
UnsupportedProtocol, FileExists and NoSuchFile from breezy.errors => breezy.transport
(Jelmer Vernooij)
* Add ``MergeProposal.set_target_branch()`` method.
(Jelmer Vernooij)
* Move ``static_tuple`` to ``breezy.bzr``. (Jelmer Vernooij)
Internals
*********
.. Major internal changes, unlikely to be visible to users or plugin
developers, but interesting for brz developers.
* File ids are mostly gone from the API. There are a few select
cases where they are still used.
(Jelmer Vernooij)
* python2-cleanup: Remove obsolete __cmp__. (Jelmer Vernooij)
* bzr: Support name argument in ControlDir.push_branch.
(Jelmer Vernooij)
* Fix flake8 with newer versions of flake8.
(Jelmer Vernooij)
* Avoid deprecated urllib.parse.{splittype,splitport,splithost}.
(Jelmer Vernooij)
* Improve handling of remote git trees; improved performance,
support for more functions.
(Jelmer Vernooij)
* git: Raise custom error for unknown encodings in Git commits.
(Jelmer Vernooij)
* Use google docstrings in more places, fixing errors from pydoctor in the process.
(Jelmer Vernooij)
* Lockdir now uses yaml rather than RIO.
(Jelmer Vernooij)
Testing
*******
.. Fixes and changes that are only relevant to brz's test framework and
suite. This can include new facilities for writing tests, fixes to
spurious test failures and changes to the way things should be tested.
* Disable known failing test_build_and_install on GitHub.
(Jelmer Vernooij)
* bashcomp: Preserve environment when invoking brz.
(Jelmer Vernooij)