Merge lp:~juliank/update-manager/remove-breaks into lp:update-manager

Proposed by Julian Andres Klode
Status: Needs review
Proposed branch: lp:~juliank/update-manager/remove-breaks
Merge into: lp:update-manager
Diff against target: 34 lines (+11/-3)
2 files modified
UpdateManager/Core/MyCache.py (+3/-3)
debian/changelog (+8/-0)
To merge this branch: bzr merge lp:~juliank/update-manager/remove-breaks
Reviewer Review Type Date Requested Status
Steve Langasek Approve
Review via email: mp+420537@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Julian Andres Klode (juliank) wrote :

I switched the order of checks because I figured Replaces will be shorter than Breaks+Conflicts.

Revision history for this message
Julian Andres Klode (juliank) wrote :

Arguably this maybe should only happen for unversioned Breaks, but also if you have a versioned Breaks: other (<< 2) because you took over a file from a package, and other=1 is installed, but other=2 was removed from the new release, then other=1 should be removed.

Revision history for this message
Steve Langasek (vorlon) wrote :

Approved, begrudgingly

review: Approve

Unmerged revisions

2948. By Julian Andres Klode

Allow removing packages on Replaces+Breaks in addition to
Replaces+Conflicts, as there are people using the former despite the
latter being documented in policy 7.6.2.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'UpdateManager/Core/MyCache.py'
2--- UpdateManager/Core/MyCache.py 2019-04-08 17:00:30 +0000
3+++ UpdateManager/Core/MyCache.py 2022-04-26 08:13:37 +0000
4@@ -170,11 +170,11 @@
5 candidate = cpkg.candidate
6 if candidate is not None:
7 if (self._check_dependencies(
8- target, candidate.get_dependencies("Conflicts"))
9+ target, candidate.get_dependencies("Replaces"))
10 and self._check_dependencies(
11- target, candidate.get_dependencies("Replaces"))):
12+ target, candidate.get_dependencies("Conflicts", "Breaks"))):
13 logging.info(
14- "%s Conflicts/Replaces %s; allowing removal" % (
15+ "%s Conflicts (or Breaks)/Replaces %s; allowing removal" % (
16 candidate.package.shortname, pkg.shortname))
17 return True
18 return False
19
20=== modified file 'debian/changelog'
21--- debian/changelog 2022-04-11 07:58:43 +0000
22+++ debian/changelog 2022-04-26 08:13:37 +0000
23@@ -1,3 +1,11 @@
24+update-manager (1:22.10.0) UNRELEASED; urgency=medium
25+
26+ * Allow removing packages on Replaces+Breaks in addition to
27+ Replaces+Conflicts, as there are people using the former despite the
28+ latter being documented in policy 7.6.2.
29+
30+ -- Julian Andres Klode <juliank@ubuntu.com> Tue, 26 Apr 2022 10:11:11 +0200
31+
32 update-manager (1:22.04.9) jammy; urgency=medium
33
34 * Adjust dates in hwe-support-status for jammy.

Subscribers

People subscribed via source and target branches

to status/vote changes: