On Fri, 31 Mar 2017 19:41:30 +0100, Tomasz Kłoczko wrote: > OK. Could you please show me example? Any non-versioned Obsoletes tag in the repo metadata hides the obsolete package from the depsolver's view during updates, and depending on the implementation even during first installs. > It is yet another possibility tat it may be result of using yum/dnf which > are working not exactly the same as rpm. True. > I have no idea about what kind scenario you are talking about src.rpm "foo" building base package "foo-2.0-1" and subpkg "libfoo-2.0-1" for some shared libs. Eventually, libfoo is released independently as a separate project, starting with version 0.1. Packager can only reduce version from 2.0 to 0.1 via an Epoch bump or by replacing the old libfoo with a differently named package. Replacing packages involves obsoleting them, and in turn you would *not* want to block the "libfoo" package namespace forever. The original "foo" subpkg builds may want to put other libs into the libfoo subpkg, if there is not separate libfoo base package built from a different src.rpm. > As I wrote engineering is about testing so here is my test case: > Four spec files and two scripts. The test is faulty. What results did you expect? Since you ask RPM to update specific packages, it does exactly that, of course. Once the package containing the Obsoletes tag has been replaced, what behaviour did you expect from the third -Uvh? Of course, it installs all three test packages you've asked for. Now repeat the same with a set of packages where the Obsoletes tag remains in one of the packages. If you do that with Yum or DNF and a local repo out of convenience, the obsolete package won't be available anymore. You may be able to install it once, if you ask for it specifically, but any subsequent update will obsolete it again and hide all builds that are covered by the Obsoletes tag. If you do it with rpm -Uvh, RPM tries to help you and evaluates the packages prior to the update transaction. It tries to reduce the set of packages to those with highest EVR, but it also handles Obsoletes tags, and if any packages near the end of the command-line contain Obsoletes tags, those will be evaluated, and you would not be able to get your test-static-3.0 package. _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx