Breezy 3.0.0 alpha 2 is released!
We're pleased to announce the second alpha release of Breezy.
Breezy is a version control system implemented in Python with multi-format support and an emphasis on hackability. Key features for the upcoming major release include:
- Compatibility with Python 3 (as well as Python 2.7)
- Support for Git repositories and workflows
- Bundled tools that were previously external plugins, most notably: grep, fastimport/fastexport, bisect, upload, stats, heads
- ~125 other bug fixes, see: <https://launchpad.net/brz/+milestone/3.0.0>
For more in-depth (but still incomplete) list of changes since the fork from Bazaar, see the changelog at <https://breezy-vcs.org/doc/en/release-notes/brz-3.0.html#brz-3-0-0>
You can install Breezy 3.0alpha2:
- From source, by downloading the tarball at: <https://launchpad.net/brz/3.0/3.0a2/+download/breezy-3.0a2.tar.gz> with GPG signature: <https://launchpad.net/brz/3.0/3.0a2/+download/breezy-3.0a2.tar.gz.asc>
- From pip by running pip install breezy
- From unstable or testing on Debian
- From the PPA on Ubuntu: <https://launchpad.net/~brz/+archive/ubuntu/daily>
New in 3.0alpha2
The focus of this release has been bug squashing, both long standing issues from Bazaar and problems found when trying the first alpha. Thank you everyone who gave feedback!
Fixed bugs compared to 3.0alpha1 include:
- bzr log fails with "Invalid line in bugs property" https://launchpad.net/bugs/1094180
- 'bzr switch' in git repositories breaks https://launchpad.net/bugs/1794222
- 'bzr grep' does not work in git repositories https://launchpad.net/bugs/1799847
- brz add in git format doesn't report files added https://launchpad.net/bugs/1799482
- interactivity doesn't work on python 3 https://launchpad.net/bugs/1796632
- Unexpected conflict switching within colo branch https://launchpad.net/bugs/933362
- Various test failures https://launchpad.net/bugs/1792661 https://launchpad.net/bugs/1791288 https://launchpad.net/bugs/832257 https://launchpad.net/bugs/888631
- TypeError in git repository https://launchpad.net/bugs/1795681
- brz info: KeyError in git repository https://launchpad.net/bugs/1796218
- pip install breezy does not install dulwich https://launchpad.net/bugs/1796215
- Doesn't support uploading symlinks https://launchpad.net/bugs/214825
- Unknown branch format if line endings are modified https://launchpad.net/bugs/159021
- Native colocated branches created by breezy do not work with bzr https://bugs.launchpad.net/brz/+bug/1803845
Upgrading from Bazaar
The Breezy configuration lives in '~/.config/breezy', but it will read '~/.bazaar' if the former does not exist. Since the API for Breezy is different than that of Bazaar, any existing plugins will need to be ported manually. Plugins installed in '~/.bazaar/plugins' will almost certainly not load.
Breezy has dropped support for the FTP transport.
Several of the plugins that were available for Bazaar and that were not merged into Breezy itself have been ported to work with Breezy.
- breezy-debian (based on bzr-builddeb)
- brz-builder (based on bzr-builder)
- brz-loom (based on bzr-loom)
- qbrz (based on qbzr)
Not all of these ports are fully functional yet, and some (like qbrz) do not yet work on Python 3.