Public bug reported:

[ Impact ]

 * This bug in the breezy package all in the supported Ubuntu series
   newer than 23.04 i.e., 24.04, 25.04, and the current devel series
   25.10, prevents bzr users from fetching private bzr branches hosted
   on Launchpad using the `lp:branch-name` syntax shown on all
   Launchpad bzr branch pages. While there is the workaround
   of using the expanded version of `lp:` that `bzr`/`brz` get
   using the Launchpad API an using it with a `bzr+ssh://` format
   repository URL, it is not obvious or easy for users to figure
   out the expanded version without using the Launchpad API.

   With the upcoming shutdown of the bzr codehosting feature in
   Launchpad, this bug inconveniences users who try to migrate
   their private branches off Launchpad bzr.

 * The SRU upload (to be provided) backports the fix merged
   upstream for this issue in https://github.com/breezy-team/breezy/pull/253.
   The fix skips the construction of public HTTP URLs for private
   bzr branches because Launchpad provides access to private bzr
   branches only over SSH and not HTTP(S). The fix does not change
   any other behaviour in the breezy package.

[ Test Plan ]

 * With the `breezy` package installed on all of the currently
   supported Ubuntu releases and the devel release, log in to Launchpad
   using the `brz launchpad-login <launchpad username>` command. Then try
   running a command like `bzr branch lp:name-of-private-branch`. The
   command will fail with an error that also contains evidence that Launchpad
   returned a 500 error. The breezy self-test test suite provided by the
   `python3-breezy.tests` package via the `brz selftest` command should be
   run to verify that the test suite passes in spite of this bug.

 * With updated package with the fix, running the same command should
   work without any errors on all the supported Ubuntu releases and the
   devel release and pull down the bzr branch. The `brz selftest`
   command should be run to verify that there are no test suite failures
   in the updated package too. The fix upstream has no accompanying tests
   included because there are no existing tests covering any of the relevant
   code in the Launchpad breezy plugin and it was merged as-is upstream.

 * The fix will be submitted to the current devel release, questing. Once it
   is verified to work okay and not cause any issues or regressions, it will
   be backported to all the supported Ubuntu releases.

 * The 
https://launchpad.net/~lgp171188/+archive/ubuntu/breezy-private-branch-fix PPA
   has the fixed version of the `breezy` package for plucky and has
   been verified to work by multiple users.

[ Where problems could occur ]

 * If this SRU introduces any unexpected bugs in the `breezy` package,
   it could prevent users from using `bzr` to fetch and work with bzr
   branches hosted on Launchpad. The impact is limited to Launchpad-hosted
   bzr branches as the fix is in the Launchpad bzr plugin.

[ Other Info ]

 * This fix (submitted via 
https://salsa.debian.org/breezy-team/breezy/-/merge_requests/1)
   has been rejected by the Debian maintainer (also the upstream maintainer)
   because of there being a workaround and the plans to remove support for
   Launchpad in breezy upstream. Some changes have already been merged upstream
   towards this. See https://github.com/breezy-team/breezy/pull/300.

 * This bug has been reported in the past in 
https://bugs.launchpad.net/ubuntu/+source/breezy/+bug/2038613
   and https://bugs.launchpad.net/brz/+bug/2039396.

** Affects: breezy (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2121884

Title:
  [SRU] Error getting a copy of a private bzr branch on Launchpad

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/breezy/+bug/2121884/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to