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>
Installation
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
Known issues
- 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.
External plugins
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)
- loggerhead
- qbrz (based on qbzr)
Not all of these ports are fully functional yet, and some (like qbrz) do not yet work on Python 3.
Feedback
Please report any bugs on Launchpad: <https://bugs.launchpad.net/brz/+filebug>.
You can also reach us here on the Bazaar mailing list, and on the #bzr IRC channel on Freenode.
Happy hacking!