[Rpm-maint] [Suse-patch] Revert provides as obsoletes behavior

Panu Matilainen pmatilai at redhat.com
Tue May 22 09:06:45 UTC 2007


Personally I never ever liked the obsoletes on provides behavior, but this 
has been in rpm since 2001 according to hg changelogs... I don't think 
such a dramatic behavior change is acceptable for a dot-dot-dot-dot 
maintenance release.

I would like this changed in future major version though, as the current 
behavior makes life miserable in some packaging scenarios.

 	- Panu -

---

Revert upstream change that uses package provides when searching
for obsoleted packages. It's just too dangerous.

--- ./lib/depends.c.orig	2005-12-14 19:51:34.000000000 +0000
+++ ./lib/depends.c	2006-01-27 21:05:13.000000000 +0000
@@ -294,7 +313,7 @@ addheader:

      /* On upgrade, erase older packages of same color (if any). */

-    mi = rpmtsInitIterator(ts, RPMTAG_PROVIDENAME, rpmteN(p), 0);
+    mi = rpmtsInitIterator(ts, RPMTAG_NAME, rpmteN(p), 0);
      while((oh = rpmdbNextIterator(mi)) != NULL) {

  	/* Ignore colored packages not in our rainbow. */
@@ -336,7 +355,7 @@ addheader:
  	if (Name[0] == '/')
  	    mi = rpmtsInitIterator(ts, RPMTAG_BASENAMES, Name, 0);
  	else
-	    mi = rpmtsInitIterator(ts, RPMTAG_PROVIDENAME, Name, 0);
+	    mi = rpmtsInitIterator(ts, RPMTAG_NAME, Name, 0);

  	xx = rpmdbPruneIterator(mi,
  	    ts->removedPackages, ts->numRemovedPackages, 1);



More information about the Rpm-maint mailing list