Zbigniew Jędrzejewski-Szmek wrote: > On Mon, Jun 01, 2020 at 02:10:12PM -0700, Adam Williamson wrote: >> Another factor here is that DNF's behaviour when multiple different >> available packages obsolete an installed package on update is 'greedy'. >> If 'bar', 'moo' and 'meep' all obsolete 'foo' and are available on >> update, DNF will try to install *all three*. This is intentional and >> necessary when e.g. a package is split in two and we want both the new >> packages to be installed in place of the old one. (If it's just >> multiple available versions of the *same* package that all obsolete an >> installed package, DNF will simply try to select the newest one as part >> of the update, which is fine). > > I think this "greedy" behaviour is correct: we rely on this to allow > package splits. There was some discussion whether dnf is in the wrong > here, but it seems to be doing everything correctly. The greediness is correct: https://bugzilla.redhat.com/show_bug.cgi?id=1261034 The fact that Obsoletes from outdated packages are being considered is the bug: https://bugzilla.redhat.com/show_bug.cgi?id=1748187 but the DNF developers refused to acknowledge this and just closed the bug when the issue was worked around in the font package somehow. But this: Adam Williamson wrote: > I was worried that if you had u2f-hidraw-policy and systemd installed, > but not systemd-udev, this Obsoletes: might lead to systemd-udev > getting installed on upgrade. However, it does not seem to: DNF is > happy just updating systemd to 245-6.1.fc32, which is not obsoleted by > the same-versioned systemd-udev, correctly realizing that this > satisfies all constraints and it doesn't need to pull in systemd-udev. is also a bug rather than a feature, it shows that https://bugzilla.redhat.com/show_bug.cgi?id=1261034 is still not properly fixed. This will do the wrong thing on package splits. So I think it is a very bad idea to rely on this DNF bug to work around the other bug. We need to finally get DNF fixed to process Obsoletes in a sane way, the way the old YUM did. Kevin Kofler _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx