The death of rpmdbFindBy{Provides,RequiredBy,Conflicts}.
authorjbj <devnull@localhost>
Thu, 13 Apr 2000 10:11:32 +0000 (10:11 +0000)
committerjbj <devnull@localhost>
Thu, 13 Apr 2000 10:11:32 +0000 (10:11 +0000)
CVS patchset: 3674
CVS date: 2000/04/13 10:11:32

lib/depends.c
lib/install.c
lib/lookup.c
lib/rebuilddb.c
lib/rpmdb.c
lib/rpmlib.h
lib/transaction.c
lib/uninstall.c
po/rpm.pot

index 8ea61a4..f6a3728 100644 (file)
@@ -647,20 +647,6 @@ int rpmtransAddPackage(rpmTransactionSet rpmdep, Header h, FD_t fd,
 
     headerNVR(h, &name, NULL, NULL);
 
-#ifdef DYING
-    if (!rpmdbFindPackage(rpmdep->db, name, &matches))  {
-
-       for (i = 0; i < dbiIndexSetCount(matches); i++) {
-           Header h2;
-           h2 = rpmdbGetRecord(rpmdep->db, dbiIndexRecordOffset(matches, i));
-           if (h2 == NULL)
-               continue;
-           if (rpmVersionCompare(h, h2))
-               removePackage(rpmdep, dbiIndexRecordOffset(matches, i), alNum);
-           headerFree(h2);
-       }
-    }
-#else
     {  rpmdbMatchIterator mi;
        Header h2;
 
@@ -671,7 +657,6 @@ int rpmtransAddPackage(rpmTransactionSet rpmdep, Header h, FD_t fd,
        }
        rpmdbFreeIterator(mi);
     }
-#endif
 
     if (headerGetEntry(h, RPMTAG_OBSOLETENAME, NULL, (void **) &obsoletes, &count)) {
        const char **obsoletesEVR;
@@ -691,29 +676,6 @@ int rpmtransAddPackage(rpmTransactionSet rpmdep, Header h, FD_t fd,
            if (!strcmp(name, obsoletes[j]))
                continue;
 
-#ifdef DYING
-           if (rpmdbFindPackage(rpmdep->db, obsoletes[j], &matches))
-               continue;
-
-           for (i = 0; i < dbiIndexSetCount(matches); i++) {
-               unsigned int recOffset = dbiIndexRecordOffset(matches, i);
-               if (bsearch(&recOffset,
-                       rpmdep->removedPackages, rpmdep->numRemovedPackages,
-                       sizeof(int), intcmp))
-                   continue;
-
-               /*
-                * Rpm prior to 3.0.3 does not have versioned obsoletes.
-                * If no obsoletes version info is available, match all names.
-                */
-               if (obsoletesEVR == NULL ||
-                   dbrecMatchesDepFlags(rpmdep, recOffset,
-                     obsoletes[j], obsoletesEVR[j], obsoletesFlags[j],
-                     headerMatchesDepFlags)) {
-                       removePackage(rpmdep, recOffset, alNum);
-               }
-           }
-#else
          { rpmdbMatchIterator mi;
            Header h2;
 
@@ -737,7 +699,6 @@ int rpmtransAddPackage(rpmTransactionSet rpmdep, Header h, FD_t fd,
            }
            rpmdbFreeIterator(mi);
          }
-#endif
        }
 
        if (obsoletesEVR) free(obsoletesEVR);
@@ -904,7 +865,7 @@ static int unsatisfiedDepend(rpmTransactionSet rpmdep,
        const char * keyName, const char * keyEVR, int keyFlags,
        /*@out@*/ struct availablePackage ** suggestion)
 {
-    dbiIndexSet matches = NULL;
+    dbiIndexSet matches = NULL;                /* XXX DYING */
     int rc = 0;        /* assume dependency is satisfied */
     int i;
 
@@ -932,6 +893,7 @@ static int unsatisfiedDepend(rpmTransactionSet rpmdep,
     if (rpmdep->db != NULL) {
        if (*keyName == '/') {
            /* keyFlags better be 0! */
+#ifndef DYING  /* XXX more to do here */
            if (!rpmdbFindByFile(rpmdep->db, keyName, &matches)) {
                for (i = 0; i < dbiIndexSetCount(matches); i++) {
                    unsigned int recOffset = dbiIndexRecordOffset(matches, i);
@@ -948,12 +910,34 @@ static int unsatisfiedDepend(rpmTransactionSet rpmdep,
                    goto exit;
                }
            }
+#else
+           {   rpmdbMatchIterator mi;
+               Header h2;
+
+               mi = rpmdbInitIterator(rpmdep->db, RPMDBI_PROVIDES, keyName, 0);
+               while ((h2 = rpmdbNextIterator(mi)) != NULL) {
+                   unsigned int recOffset = rpmdbGetIteratorOffset(mi);
+                   if (bsearch(&recOffset,
+                           rpmdep->removedPackages,
+                           rpmdep->numRemovedPackages,
+                           sizeof(int), intcmp))
+                       continue;
+                   break;
+               }
+               rpmdbFreeIterator(mi);
+               if (h2) {
+                   rpmMessage(RPMMESS_DEBUG, _("%s: %s satisfied by db file lists.\n"), keyType, keyDepend);
+                   goto exit;
+               }
+           }
+#endif
        }
        if (matches) {
            dbiFreeIndexSet(matches);
            matches = NULL;
        }
 
+#ifdef DYING
        if (!rpmdbFindByProvides(rpmdep->db, keyName, &matches)) {
            for (i = 0; i < dbiIndexSetCount(matches); i++) {
                unsigned int recOffset = dbiIndexRecordOffset(matches, i);
@@ -977,33 +961,29 @@ static int unsatisfiedDepend(rpmTransactionSet rpmdep,
            dbiFreeIndexSet(matches);
            matches = NULL;
        }
+#else
+       {   rpmdbMatchIterator mi;
+           Header h2;
 
-#ifdef DYING
-       if (!rpmdbFindPackage(rpmdep->db, keyName, &matches)) {
-           for (i = 0; i < dbiIndexSetCount(matches); i++) {
-               unsigned int recOffset = dbiIndexRecordOffset(matches, i);
+           mi = rpmdbInitIterator(rpmdep->db, RPMDBI_PROVIDES, keyName, 0);
+           while ((h2 = rpmdbNextIterator(mi)) != NULL) {
+               unsigned int recOffset = rpmdbGetIteratorOffset(mi);
                if (bsearch(&recOffset,
                            rpmdep->removedPackages,
                            rpmdep->numRemovedPackages,
                            sizeof(int), intcmp))
                    continue;
-
-               if (dbrecMatchesDepFlags(rpmdep, recOffset,
-                        keyName, keyEVR, keyFlags, headerMatchesDepFlags)) {
+               if (headerMatchesDepFlags(h2, keyName, keyEVR, keyFlags))
                    break;
-               }
            }
-
-           if (i < dbiIndexSetCount(matches)) {
-               rpmMessage(RPMMESS_DEBUG, _("%s: %s satisfied by db packages.\n"), keyType, keyDepend);
+           rpmdbFreeIterator(mi);
+           if (h2) {
+               rpmMessage(RPMMESS_DEBUG, _("%s: %s satisfied by db provides.\n"), keyType, keyDepend);
                goto exit;
            }
        }
-       if (matches) {
-           dbiFreeIndexSet(matches);
-           matches = NULL;
-       }
-#else
+#endif
+
        {   rpmdbMatchIterator mi;
            Header h2;
 
@@ -1024,7 +1004,6 @@ static int unsatisfiedDepend(rpmTransactionSet rpmdep,
                goto exit;
            }
        }
-#endif
 
        /*
         * New features in rpm spec files add implicit dependencies on rpm
@@ -1048,7 +1027,7 @@ static int unsatisfiedDepend(rpmTransactionSet rpmdep,
     rc = 1;    /* dependency is unsatisfied */
 
 exit:
-    if (matches) {
+    if (matches) {     /* XXX DYING */
        dbiFreeIndexSet(matches);
        matches = NULL;
     }
@@ -1198,10 +1177,17 @@ static int checkPackageDeps(rpmTransactionSet rpmdep, struct problemsSet * psp,
 
 /* Adding: check name/provides key against each conflict match. */
 /* Erasing: check name/provides/filename key against each requiredby match. */
+#ifdef DYING
 static int checkPackageSet(rpmTransactionSet rpmdep, struct problemsSet * psp,
        const char * key, dbiIndexSet matches)
+#else
+static int checkPackageSet(rpmTransactionSet rpmdep, struct problemsSet * psp,
+       const char * key, /*@only@*/ rpmdbMatchIterator mi)
+#endif
 {
     Header h;
+    int rc = 0;
+#ifdef DYING
     int i;
 
     for (i = 0; i < dbiIndexSetCount(matches); i++) {
@@ -1225,14 +1211,29 @@ static int checkPackageSet(rpmTransactionSet rpmdep, struct problemsSet * psp,
 
        headerFree(h);
     }
+#else
+    while ((h = rpmdbNextIterator(mi)) != NULL) {
+       unsigned int recOffset = rpmdbGetIteratorOffset(mi);
+       if (bsearch(&recOffset, rpmdep->removedPackages,
+                   rpmdep->numRemovedPackages, sizeof(int), intcmp))
+           continue;
 
-    return 0;
+       if (checkPackageDeps(rpmdep, psp, h, key)) {
+           rc = 1;
+           break;
+       }
+    }
+    rpmdbFreeIterator(mi);
+#endif
+
+    return rc;
 }
 
 /* Erasing: check name/provides/filename key against requiredby matches. */
 static int checkDependentPackages(rpmTransactionSet rpmdep,
                        struct problemsSet * psp, const char * key)
 {
+#ifdef DYING
     dbiIndexSet matches = NULL;
     int rc = 0;
 
@@ -1241,6 +1242,11 @@ static int checkDependentPackages(rpmTransactionSet rpmdep,
     if (matches)
        dbiFreeIndexSet(matches);
     return rc;
+#else
+    rpmdbMatchIterator mi;
+    mi = rpmdbInitIterator(rpmdep->db, RPMDBI_REQUIREDBY, key, 0);
+    return checkPackageSet(rpmdep, psp, key, mi);
+#endif
 }
 
 /* Adding: check name/provides key against conflicts matches. */
@@ -1249,12 +1255,18 @@ static int checkDependentConflicts(rpmTransactionSet rpmdep,
 {
     int rc = 0;
 
-    if (rpmdep->db) {
+    if (rpmdep->db) {  /* XXX is this necessary? */
+#ifdef DYING
        dbiIndexSet matches = NULL;
        if (!rpmdbFindByConflicts(rpmdep->db, key, &matches))
            rc = checkPackageSet(rpmdep, psp, key, matches);
        if (matches)
            dbiFreeIndexSet(matches);
+#else
+       rpmdbMatchIterator mi;
+       mi = rpmdbInitIterator(rpmdep->db, RPMDBI_CONFLICTS, key, 0);
+       rc = checkPackageSet(rpmdep, psp, key, mi);
+#endif
     }
 
     return rc;
index 366e15f..2684f6f 100644 (file)
@@ -716,14 +716,6 @@ int installBinaryPackage(const char * rootdir, rpmdb db, FD_t fd, Header h,
     }
     scriptArg += 1;
 
-#ifdef DYING
-    if (!rpmdbFindByHeader(db, h, &matches))
-       otherOffset = dbiIndexRecordOffset(matches, 0);
-    if (matches) {
-       dbiFreeIndexSet(matches);
-       matches = NULL;
-    }
-#else
     {  rpmdbMatchIterator mi;
        mi = rpmdbInitIterator(db, RPMDBI_NAME, name, 0);
        rpmdbSetIteratorVersion(mi, version);
@@ -734,7 +726,6 @@ int installBinaryPackage(const char * rootdir, rpmdb db, FD_t fd, Header h,
        }
        rpmdbFreeIterator(mi);
     }
-#endif
 
     if (rootdir) {
        /* this loads all of the name services libraries, in case we
index 90476d1..ed0a1f2 100644 (file)
@@ -76,20 +76,6 @@ exit:
     return rc;
 }
 
-#ifdef DYING
-/* 0 found matches */
-/* 1 no matches */
-/* 2 error */
-int rpmdbFindByHeader(rpmdb db, Header h, dbiIndexSet * matches)
-{
-    const char * name, * version, * release;
-
-    headerNVR(h, &name, &version, &release);
-
-    return findMatches(db, name, version, release, matches);
-}
-#endif
-
 /* 0 found matches */
 /* 1 no matches */
 /* 2 error */
index e63855d..a5653bc 100644 (file)
@@ -120,22 +120,6 @@ fprintf(stderr, "*** rpmdbRebuild: filterdbdups %d preferdb %d\n", _filterDbDups
 
                headerNVR(h, &name, &version, &release);
 
-#ifdef DYING
-               dbiIndexSet matches = NULL;
-
-               if (!rpmdbFindByHeader(newdb, h, &matches)) {
-
-                   rpmError(RPMERR_INTERNAL,
-                       _("duplicated database entry: %s-%s-%s -- skipping."),
-                       name, version, release);
-                   skip = 1;
-               }
-
-               if (matches) {
-                   dbiFreeIndexSet(matches);
-                   matches = NULL;
-               }
-#else
                {   rpmdbMatchIterator mi;
                    mi = rpmdbInitIterator(newdb, RPMDBI_NAME, name, 0);
                    rpmdbSetIteratorVersion(mi, version);
@@ -146,7 +130,6 @@ fprintf(stderr, "*** rpmdbRebuild: filterdbdups %d preferdb %d\n", _filterDbDups
                    }
                    rpmdbFreeIterator(mi);
                }
-#endif
 
                if (skip)
                    continue;
index a492e7f..f1d2934 100644 (file)
@@ -372,6 +372,7 @@ int rpmdbFindByFile(rpmdb db, const char * filespec, dbiIndexSet * matches)
     return 0;
 }
 
+#ifdef DYING
 int rpmdbFindByProvides(rpmdb db, const char * filespec, dbiIndexSet * matches) {
     return dbiSearchIndex(db->_dbi[RPMDBI_PROVIDES], filespec, 0, matches);
 }
@@ -383,15 +384,6 @@ int rpmdbFindByRequiredBy(rpmdb db, const char * filespec, dbiIndexSet * matches
 int rpmdbFindByConflicts(rpmdb db, const char * filespec, dbiIndexSet * matches) {
     return dbiSearchIndex(db->_dbi[RPMDBI_CONFLICTS], filespec, 0, matches);
 }
-
-#ifdef DYING
-int rpmdbFindByTriggeredBy(rpmdb db, const char * filespec, dbiIndexSet * matches) {
-    return dbiSearchIndex(db->_dbi[RPMDBI_TRIGGER], filespec, 0, matches);
-}
-
-int rpmdbFindByGroup(rpmdb db, const char * group, dbiIndexSet * matches) {
-    return dbiSearchIndex(db->_dbi[RPMDBI_GROUP], group, 0, matches);
-}
 #endif
 
 int rpmdbFindPackage(rpmdb db, const char * name, dbiIndexSet * matches) {
index d243c29..827db50 100644 (file)
@@ -388,18 +388,12 @@ Header rpmdbGetRecord(rpmdb db, unsigned int offset);
  */
 int rpmdbFindByFile(rpmdb db, const char * filespec,
        /*@out@*/ dbiIndexSet * matches);
-#ifdef DYING
-/**
- * @param db           rpm database
- */
-int rpmdbFindByGroup(rpmdb db, const char * group,
-       /*@out@*/ dbiIndexSet * matches);
-#endif
 /**
  * @param db           rpm database
  */
 int rpmdbFindPackage(rpmdb db, const char * name,
        /*@out@*/ dbiIndexSet * matches);
+#ifdef DYING
 /**
  * @param db           rpm database
  */
@@ -415,12 +409,6 @@ int rpmdbFindByRequiredBy(rpmdb db, const char * requires,
  */
 int rpmdbFindByConflicts(rpmdb db, const char * conflicts,
        /*@out@*/ dbiIndexSet * matches);
-#ifdef DYING
-/**
- * @param db           rpm database
- */
-int rpmdbFindByTriggeredBy(rpmdb db, const char * package,
-       /*@out@*/ dbiIndexSet * matches);
 #endif
 
 /* these are just convenience functions */
@@ -429,13 +417,6 @@ int rpmdbFindByTriggeredBy(rpmdb db, const char * package,
  */
 int rpmdbFindByLabel(rpmdb db, const char * label,
        /*@out@*/ dbiIndexSet * matches);
-#ifdef DYING
-/**
- * @param db           rpm database
- */
-int rpmdbFindByHeader(rpmdb db, Header h,
-       /*@out@*/ dbiIndexSet * matches);
-#endif
 
 /**
  * Return number of instances of package in rpm database.
index 9909a17..35909d6 100644 (file)
@@ -1053,20 +1053,11 @@ static void handleOverlappedFiles(TFI_t * fi, hashTable ht,
     if (filespec) free(filespec);
 }
 
-#ifdef DYING
-static int ensureOlder(rpmdb db, Header new, int dbOffset, rpmProblemSet probs,
-                       /*@dependent@*/ const void * key)
-#else
 static int ensureOlder(rpmdb db, Header new, Header old, rpmProblemSet probs,
                        /*@dependent@*/ const void * key)
-#endif
 {
     int result, rc = 0;
-#ifdef DYING
-    Header old;
 
-    old = rpmdbGetRecord(db, dbOffset);
-#endif
     if (old == NULL) return 1;
 
     result = rpmVersionCompare(old, new);
@@ -1077,10 +1068,6 @@ static int ensureOlder(rpmdb db, Header new, Header old, rpmProblemSet probs,
        psAppend(probs, RPMPROB_OLDPACKAGE, key, new, NULL, old, 0);
     }
 
-#ifdef DYING
-    headerFree(old);
-#endif
-
     return rc;
 }
 
@@ -1199,7 +1186,9 @@ int rpmRunTransactions(rpmTransactionSet ts, rpmCallbackFunction notify,
     int rc, ourrc = 0;
     struct availablePackage * alp;
     rpmProblemSet probs;
+#ifndef DYING
     dbiIndexSet dbi = NULL;
+#endif
     Header * hdrs;
     int fileCount;
     int totalFileCount = 0;
@@ -1290,39 +1279,15 @@ int rpmRunTransactions(rpmTransactionSet ts, rpmCallbackFunction notify,
            psAppend(probs, RPMPROB_BADOS, alp->key, alp->h, NULL, NULL, 0);
 
        if (!(ignoreSet & RPMPROB_FILTER_OLDPACKAGE)) {
-#ifdef DYING
-           rc = rpmdbFindPackage(ts->db, alp->name, &dbi);
-           switch (rc) {
-           case 2:
-               if (dbi) {
-                   dbiFreeIndexSet(dbi);
-                   dbi = NULL;
-               }
-               return -1;
-               /*@notreached@*/ break;
-           case 0:
-               for (i = 0; i < dbiIndexSetCount(dbi); i++)
-                   ensureOlder(ts->db, alp->h, dbiIndexRecordOffset(dbi, i),
-                                     probs, alp->key);
-
-               break;
-           default:
-               break;
-           }
-           if (dbi) {
-               dbiFreeIndexSet(dbi);
-               dbi = NULL;
-           }
-#else
            rpmdbMatchIterator mi;
            Header oldH;
            mi = rpmdbInitIterator(ts->db, RPMDBI_NAME, alp->name, 0);
            while ((oldH = rpmdbNextIterator(mi)) != NULL)
                ensureOlder(ts->db, alp->h, oldH, probs, alp->key);
            rpmdbFreeIterator(mi);
-#endif
        }
 
+#ifndef        DYING
        rc = findMatches(ts->db, alp->name, alp->version, alp->release, &dbi);
        switch (rc) {
        case 2:
@@ -1344,6 +1309,10 @@ int rpmRunTransactions(rpmTransactionSet ts, rpmCallbackFunction notify,
            dbiFreeIndexSet(dbi);
            dbi = NULL;
        }
+#else
+       if (!(ignoreSet & RPMPROB_FILTER_REPLACEPKG)) {
+       }
+#endif
 
        if (headerGetEntry(alp->h, RPMTAG_BASENAMES, NULL, NULL, 
                           &fileCount))
index d677052..ea3a9e1 100644 (file)
@@ -535,39 +535,6 @@ int runTriggers(const char * root, rpmdb db, int sense, Header h,
        return 1;
 
     {  Header triggeredH;
-
-#ifdef DYING
-       dbiIndexSet matches = NULL;
-       int i;
-
-       if ((rc = rpmdbFindByTriggeredBy(db, name, &matches)) < 0) {
-           rc = 1;
-           goto exit;
-       } else if (rc) {
-           rc = 0;
-           goto exit;
-       }
-
-       rc = 0;
-       for (i = 0; i < dbiIndexSetCount(matches); i++) {
-           unsigned int recOffset = dbiIndexRecordOffset(matches, i);
-           if ((triggeredH = rpmdbGetRecord(db, recOffset)) == NULL) {
-               rc = 1;
-               break;
-           }
-
-           rc |= handleOneTrigger(root, db, sense, h, triggeredH, 0, numPackage, 
-                              NULL, scriptFd);
-       
-           headerFree(triggeredH);
-       }
-
-exit:
-       if (matches) {
-           dbiFreeIndexSet(matches);
-           matches = NULL;
-       }
-#else
        rpmdbMatchIterator mi;
 
        mi = rpmdbInitIterator(db, RPMDBI_TRIGGER, name, 0);
@@ -577,7 +544,6 @@ exit:
        }
 
        rpmdbFreeIterator(mi);
-#endif
     }
 
     return rc;
@@ -605,44 +571,6 @@ int runImmedTriggers(const char * root, rpmdb db, int sense, Header h,
     {  Header sourceH = NULL;
        int i;
 
-#ifdef DYING
-       dbiIndexSet matches = NULL;
-       int j;
-
-       for (i = 0; i < numTriggers; i++) {
-
-           if (triggersRun[triggerIndices[i]]) continue;
-       
-           if (matches) {
-               dbiFreeIndexSet(matches);
-               matches = NULL;
-           }
-
-            if ((j = rpmdbFindPackage(db, triggerNames[i], &matches))) {
-               if (j < 0) rc |= 1;     
-               continue;
-           }
-
-           for (j = 0; j < dbiIndexSetCount(matches); j++) {
-               unsigned int recOffset = dbiIndexRecordOffset(matches, j);
-               if ((sourceH = rpmdbGetRecord(db, recOffset)) == NULL) {
-                   rc = 1;
-                   goto exit;
-               }
-               rc |= handleOneTrigger(root, db, sense, sourceH, h, 
-                                  countCorrection, dbiIndexSetCount(matches), 
-                                  triggersRun, scriptFd);
-               headerFree(sourceH);
-               if (triggersRun[triggerIndices[i]]) break;
-           }
-       }
-
-exit:
-       if (matches) {
-           dbiFreeIndexSet(matches);
-           matches = NULL;
-       }
-#else
        for (i = 0; i < numTriggers; i++) {
            rpmdbMatchIterator mi;
            const char * name = triggerNames[i];
@@ -659,7 +587,6 @@ exit:
 
            rpmdbFreeIterator(mi);
        }
-#endif
     }
     return rc;
 }
index c3a4cf9..dfd449c 100644 (file)
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2000-04-13 05:36-0400\n"
+"POT-Creation-Date: 2000-04-13 06:27-0400\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -2036,69 +2036,69 @@ msgstr ""
 msgid "dbrecMatchesDepFlags() failed to read header"
 msgstr ""
 
-#: lib/depends.c:833
+#: lib/depends.c:794
 #, c-format
 msgid "%s: %s satisfied by added file list.\n"
 msgstr ""
 
-#: lib/depends.c:872
+#: lib/depends.c:833
 #, c-format
 msgid "%s: %s satisfied by added package.\n"
 msgstr ""
 
-#: lib/depends.c:889
+#: lib/depends.c:850
 #, c-format
 msgid "%s: %s satisfied by added provide.\n"
 msgstr ""
 
-#: lib/depends.c:920
+#: lib/depends.c:881
 #, c-format
 msgid "%s: %s satisfied by rpmrc provides.\n"
 msgstr ""
 
-#: lib/depends.c:947
+#: lib/depends.c:909 lib/depends.c:929
 #, c-format
 msgid "%s: %s satisfied by db file lists.\n"
 msgstr ""
 
-#: lib/depends.c:972
+#: lib/depends.c:956 lib/depends.c:981
 #, c-format
 msgid "%s: %s satisfied by db provides.\n"
 msgstr ""
 
-#: lib/depends.c:998 lib/depends.c:1023
+#: lib/depends.c:1003
 #, c-format
 msgid "%s: %s satisfied by db packages.\n"
 msgstr ""
 
-#: lib/depends.c:1037
+#: lib/depends.c:1016
 #, c-format
 msgid "%s: %s satisfied by rpmlib version.\n"
 msgstr ""
 
-#: lib/depends.c:1047
+#: lib/depends.c:1026
 #, c-format
 msgid "%s: %s unsatisfied.\n"
 msgstr ""
 
 #. requirements are not satisfied.
-#: lib/depends.c:1099
+#: lib/depends.c:1078
 #, c-format
 msgid "package %s require not satisfied: %s\n"
 msgstr ""
 
 #. conflicts exist.
-#: lib/depends.c:1161
+#: lib/depends.c:1140
 #, c-format
 msgid "package %s conflicts: %s\n"
 msgstr ""
 
-#: lib/depends.c:1216 lib/depends.c:1511
+#: lib/depends.c:1202 lib/depends.c:1523
 #, c-format
 msgid "cannot read header at %d for dependency check"
 msgstr ""
 
-#: lib/depends.c:1307
+#: lib/depends.c:1319
 #, c-format
 msgid "loop in prerequisite chain: %s"
 msgstr ""
@@ -2286,7 +2286,7 @@ msgstr ""
 msgid "renaming %s to %s\n"
 msgstr ""
 
-#: lib/install.c:562 lib/install.c:847 lib/uninstall.c:29
+#: lib/install.c:562 lib/install.c:838 lib/uninstall.c:29
 #, c-format
 msgid "rename of %s to %s failed: %s"
 msgstr ""
@@ -2300,25 +2300,25 @@ msgstr ""
 msgid "package: %s-%s-%s files test = %d\n"
 msgstr ""
 
-#: lib/install.c:777
+#: lib/install.c:768
 msgid "stopping install as we're running --test\n"
 msgstr ""
 
-#: lib/install.c:782
+#: lib/install.c:773
 msgid "running preinstall script (if any)\n"
 msgstr ""
 
-#: lib/install.c:807
+#: lib/install.c:798
 #, c-format
 msgid "warning: %s created as %s"
 msgstr ""
 
-#: lib/install.c:843
+#: lib/install.c:834
 #, c-format
 msgid "warning: %s saved as %s"
 msgstr ""
 
-#: lib/install.c:917
+#: lib/install.c:908
 msgid "running postinstall scripts (if any)\n"
 msgstr ""
 
@@ -2752,30 +2752,25 @@ msgstr ""
 msgid "record number %d in database is bad -- skipping."
 msgstr ""
 
-#: lib/rebuilddb.c:129
-#, c-format
-msgid "duplicated database entry: %s-%s-%s -- skipping."
-msgstr ""
-
-#: lib/rebuilddb.c:157
+#: lib/rebuilddb.c:140
 #, c-format
 msgid "cannot add record originally at %d"
 msgstr ""
 
-#: lib/rebuilddb.c:173
+#: lib/rebuilddb.c:156
 msgid "failed to rebuild database; original database remains in place\n"
 msgstr ""
 
-#: lib/rebuilddb.c:181
+#: lib/rebuilddb.c:164
 msgid "failed to replace old database with new database!\n"
 msgstr ""
 
-#: lib/rebuilddb.c:183
+#: lib/rebuilddb.c:166
 #, c-format
 msgid "replace files in %s with files from %s to recover"
 msgstr ""
 
-#: lib/rebuilddb.c:189
+#: lib/rebuilddb.c:172
 #, c-format
 msgid "failed to remove directory %s: %s\n"
 msgstr ""
@@ -2870,61 +2865,61 @@ msgid ""
 msgstr ""
 
 #. error
-#: lib/rpmdb.c:411
+#: lib/rpmdb.c:403
 #, c-format
 msgid "cannot retrieve package \"%s\" from db"
 msgstr ""
 
-#: lib/rpmdb.c:630
+#: lib/rpmdb.c:622
 #, c-format
 msgid "package not found with key \"%s\" in %s"
 msgstr ""
 
-#: lib/rpmdb.c:639
+#: lib/rpmdb.c:631
 #, c-format
 msgid "key \"%s\" not found in %s"
 msgstr ""
 
-#: lib/rpmdb.c:657
+#: lib/rpmdb.c:649
 #, c-format
 msgid "rpmdbRemove: cannot read header at 0x%x"
 msgstr ""
 
-#: lib/rpmdb.c:682
+#: lib/rpmdb.c:674
 #, c-format
 msgid "removing 0 %s entries.\n"
 msgstr ""
 
-#: lib/rpmdb.c:688
+#: lib/rpmdb.c:680
 #, c-format
 msgid "removing \"%s\" from %s index.\n"
 msgstr ""
 
-#: lib/rpmdb.c:696
+#: lib/rpmdb.c:688
 #, c-format
 msgid "removing %d entries in %s index:\n"
 msgstr ""
 
-#: lib/rpmdb.c:700 lib/rpmdb.c:897
+#: lib/rpmdb.c:692 lib/rpmdb.c:889
 #, c-format
 msgid "\t%6d %s\n"
 msgstr ""
 
-#: lib/rpmdb.c:835
+#: lib/rpmdb.c:827
 msgid "cannot allocate new instance in database"
 msgstr ""
 
-#: lib/rpmdb.c:874
+#: lib/rpmdb.c:866
 #, c-format
 msgid "adding 0 %s entries.\n"
 msgstr ""
 
-#: lib/rpmdb.c:886
+#: lib/rpmdb.c:878
 #, c-format
 msgid "adding \"%s\" to %s index.\n"
 msgstr ""
 
-#: lib/rpmdb.c:893
+#: lib/rpmdb.c:885
 #, c-format
 msgid "adding %d entries to %s index:\n"
 msgstr ""