[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: RPM roadmapping

Florian Festi wrote:

Small behavior change for obsoletes:

Issue an error if to be installed pkgs are obsoleted by already installed pkgs. As obsoleting pkgs are logically newer "--oldpackage" should be required to install the obsoleted pkg IMHO. Right now obsoleted pkgs are happily installed.

There's an issue here, caused by the fact that obsoletes is not only used to rename a package when the old one is going away forever (think fileutils -> coreutils), but also to give a hint of package discovery when the repo is replacing one package with a different work to provide the same functionality.

The canonical concrete example here is routing daemons. Once upon a time we shipped gated. Then it didn't get maintained very well, and zebra came along. So zebra got "obsoletes: gated". Then zebra didn't get it's share of maintenance upstream, but gated did. So gated got an obsoletes on zebra. And now there's a loop.

If the obsoletes don't have version information in them (which is generally preferred for the rename case), then there's a loop that your criteria above can't solve.

This is part of why Conary puts packages in revision trees.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]