Replace Bazaar with Breezy
Summary
This change is about replacing the bzr
package with breezy
.
Bzr (Bazaar) is a version control system, Breezy (brz) is a fork of Bazaar. Breezy will obsolete and replace Bazaar in Fedora 32.
Owner
- Name: Miro Hrončok
- Email: <mhroncok@redhat.com>
- Name: Marcel Plch
- Email: <mplch@redhat.com>
Current status
- Targeted release: Fedora 32
- Last updated: 2019-10-17
- Tracker bug: <will be assigned by the Wrangler>
- Release notes tracker: <will be assigned by the Wrangler>
Detailed Description
The breezy
package will be introduced. It provides and obsoletes bzr
and git-remote-bzr
, it contains /usr/bin/bzr
(link to /usr/bin/brz
) and /usr/bin/git-remote-bzr
.
Packages bzr
and git-remote-bzr
will be retired.
The reasons for this include:
- bzr is Python 2 only and Python 2 is retired
- bzr fails to build from source
- bzr fails to install
- bzr has no maintainer
Benefit to Fedora
Users of Fedora will be able to use bazaar repositories via breezy. If we don't do this, bzr would be simply removed without a replacement.
Scope
- Proposal owners: package
breezy
and its dependencies (done, see the package review), flip the bcond in the package to provide/obsolete brz.
- Other developers: Test that your packages work with breezy (
etckeeper
,ikiwiki
,python-vcstools
,python-wstool
,golang-github-masterminds-vcs
,python-pip
are impacted). Adapt, drop the dependency or retire the packages.
- Release engineering: no impact with Release Engineering is anticipated
- Policies and guidelines: N/A (not a System Wide Change)
- Trademark approval: N/A (not needed for this Change)
Upgrade/compatibility impact
Eventually removed depndent packages need to be obsoleted.
Breezy aims to be compatible with bazaar, but there might be some differences.
How To Test
Test that installing bzr installs breezy, test that you can use it successfully. Test that bzr gets replaced by breezy when upgrading to Fedora 32.
User Experience
Users installing bzr will get breezy instead. The bzr
command will be provided as a symbolic link to the brz
(breezy) command. The basic API of that command should be the same.
Contingency Plan
- Contingency mechanism: (What to do? Who will do it?) Proposal owners will orphan both breezy and bzr (sorry, but not sorry).
- Contingency deadline: final freeze
- Blocks release? No
- Blocks product? No
Documentation
Release Notes
TBD