- work around obsoleteusescolor problem by making infarch rules weak
authorMichael Schroeder <mls@suse.de>
Thu, 23 Jul 2009 09:10:25 +0000 (11:10 +0200)
committerMichael Schroeder <mls@suse.de>
Thu, 23 Jul 2009 09:10:25 +0000 (11:10 +0200)
- change debug output

examples/solv.c
src/solver.c
src/solverdebug.c

index f64e0b0..5f93a00 100644 (file)
@@ -1351,7 +1351,6 @@ read_repos(Pool *pool, struct repoinfo *repoinfos, int nrepoinfos)
              cinfo->repo = 0;
              break;
            }
-printf("cinfo: %p\n", cinfo);
          calc_checksum_fp(fp, REPOKEY_TYPE_SHA256, cinfo->cookie);
          if (usecachedrepo(repo, 0, cinfo->cookie, 1))
            {
@@ -2278,9 +2277,6 @@ rerunsolver:
           solv->allowarchchange = 1;
           solv->allowvendorchange = 1;
        }
-      /* infarch check currently doesn't work with colors */
-      solv->noinfarchcheck = pool->obsoleteusescolors;
-
       // queue_push2(&job, SOLVER_DISTUPGRADE, 3);
       solver_solve(solv, &job);
       if (!solv->problems.count)
index be10f0b..c45d676 100644 (file)
@@ -2783,7 +2783,16 @@ solver_solve(Solver *solv, Queue *job)
 
   /* now create infarch and dup rules */
   if (!solv->noinfarchcheck)
-    solver_addinfarchrules(solv, &addedmap);
+    {
+      solver_addinfarchrules(solv, &addedmap);
+      if (pool->obsoleteusescolors)
+       {
+         /* currently doesn't work well with infarch rules, so make
+           * them weak */
+         for (i = solv->infarchrules; i < solv->infarchrules_end; i++)
+           queue_push(&solv->weakruleq, i);
+       }
+    }
   else
     solv->infarchrules = solv->infarchrules_end = solv->nrules;
 
index 4776e32..d95416a 100644 (file)
@@ -424,28 +424,28 @@ solver_printtransaction(Solver *solv)
       switch(class)
        {
        case SOLVER_TRANSACTION_ERASE:
-         POOL_DEBUG(SAT_DEBUG_RESULT, "erased packages (%d):\n", cnt);
+         POOL_DEBUG(SAT_DEBUG_RESULT, "%d erased packages:\n", cnt);
          break;
        case SOLVER_TRANSACTION_INSTALL:
-         POOL_DEBUG(SAT_DEBUG_RESULT, "installed packages (%d):\n", cnt);
+         POOL_DEBUG(SAT_DEBUG_RESULT, "%d installed packages:\n", cnt);
          break;
        case SOLVER_TRANSACTION_REINSTALLED:
-         POOL_DEBUG(SAT_DEBUG_RESULT, "reinstalled packages (%d):\n", cnt);
+         POOL_DEBUG(SAT_DEBUG_RESULT, "%d reinstalled packages:\n", cnt);
          break;
        case SOLVER_TRANSACTION_DOWNGRADED:
-         POOL_DEBUG(SAT_DEBUG_RESULT, "downgraded packages (%d):\n", cnt);
+         POOL_DEBUG(SAT_DEBUG_RESULT, "%d downgraded packages:\n", cnt);
          break;
        case SOLVER_TRANSACTION_CHANGED:
-         POOL_DEBUG(SAT_DEBUG_RESULT, "changed packages (%d):\n", cnt);
+         POOL_DEBUG(SAT_DEBUG_RESULT, "%d changed packages:\n", cnt);
          break;
        case SOLVER_TRANSACTION_UPGRADED:
-         POOL_DEBUG(SAT_DEBUG_RESULT, "upgraded packages (%d):\n", cnt);
+         POOL_DEBUG(SAT_DEBUG_RESULT, "%d upgraded packages:\n", cnt);
          break;
        case SOLVER_TRANSACTION_VENDORCHANGE:
-         POOL_DEBUG(SAT_DEBUG_RESULT, "vendor change from '%s' to '%s' (%d):\n", id2strnone(pool, classes.elements[i + 2]), id2strnone(pool, classes.elements[i + 3]), cnt);
+         POOL_DEBUG(SAT_DEBUG_RESULT, "%d vendor changes from '%s' to '%s':\n", cnt, id2strnone(pool, classes.elements[i + 2]), id2strnone(pool, classes.elements[i + 3]));
          break;
        case SOLVER_TRANSACTION_ARCHCHANGE:
-         POOL_DEBUG(SAT_DEBUG_RESULT, "arch change from %s to %s (%d):\n", id2str(pool, classes.elements[i + 2]), id2str(pool, classes.elements[i + 3]), cnt);
+         POOL_DEBUG(SAT_DEBUG_RESULT, "%d arch changes from %s to %s:\n", cnt, id2str(pool, classes.elements[i + 2]), id2str(pool, classes.elements[i + 3]));
          break;
        default:
          class = SOLVER_TRANSACTION_IGNORE;