On Thu, 2016-12-01 at 17:03 -0500, Przemek Klosowski wrote: > This got me thinking if there's a common root cause that could be > checked automatically? I didn't quite understand what exactly happened > in the affected packages to cause it. No, they're usually all different little awkward packaging corner cases. For instance, one common one in the F24 -> F25 upgrade involved the rpm python subpackages. These were called rpm-python and rpm-python3 in F24, but in F25 they were renamed to python2-rpm and python3-rpm . Of course, the F25 packages got lines like: Obsoletes: rpm-python < %{version}-%{release} Provides: rpm-python = %{version}-%{release} Obsoletes: rpm-python3 < %{version}-%{release} Provides: rpm-python3 = %{version}-%{release} Unfortunately, the F24 stable 'rpm' package actually got *ahead* of the F25 stable rpm package for a while. So when you tried to run the upgrade, the obsoletion didn't kick in - because the F24 package *wasn't* "< %{version}-%{release}". But dnf couldn't keep the old rpm- python(3) package(s) around because then some other dependency chain wasn't satisfied (I forget the details). So it simply had no way to resolve the problem without removing everything that required rpm- python or rpm-python3 ... But that's just one possible case, there have been many others. Packaging is hard. You can usually figure it out, if you dig into a bit; it *does* help to file bugs so the issues can be solved for others. -- Adam Williamson Fedora QA Community Monkey IRC: adamw | Twitter: AdamW_Fedora | XMPP: adamw AT happyassassin . net http://www.happyassassin.net _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx