After a bit of experimenting on 9.1 and cooker, I think I've figured out why all these problems are just showing up now, and what to do about it.
Under rpm 4.0, installing or upgrading a package only checked its obsoletes against the main package name. Now, 4.2 also checks against any virtual names provided by the package. So, with 4.0, two packages that provided and obsoleted the same virtual name wouldn't interfere; now they do. The new behavior is probably better. But this means that a bunch of old inconsistencies that never caused problems before now have to be taken care of. Also, I think there is a bug in the new behavior: If you install/upgrade two packages at once, and they both obsolete each other, they install without a problem. This should fail. Anyway, here's what to do: 1. Someone should look at my script and make sure I didn't do something stupid and miss some of the problems. Run this script every so often until no more problems are reported. 2. One of the checks on uploading a new package should be to make sure that it's not obsoleted by any other package (an error), and to check whether it obsoletes any existing packages (a warning, because sometimes this is the desired behavior). Is this feasible if one package is in contribs and the other in main? (Or, worse, if one is is plf?) 3. Go through all of the dozen or so problems I've already reported and eliminate them. I've emailed all the relevant maintainers, but if necessary I can go through and patch all the specfiles myself. 4. Come up with a new policy for provides/obsoletes when replacing old packages. Just versioning the obsoletes will solve 95% of the problems. (If gimp-1.2 and gimp1_3-1.3 both said "Obsoletes: hackgimp < 1.2" instead of "Obsoletes: hackgimp" everything would work fine.) To solve the other 5%, don't ever copy over obsoletes tags from the previous major version (except where it makes sense, of course). 5. Fix rpm so an install/upgrade fails if two of the packages obsolete each other. The error messages related to this stuff could be a little clearer, and I think urpmi might be getting confused by some of these symptoms, but I think those issues will go away once all the packages are fixed....
