Просмотр исходного кода

AJs bug fix and doc updates
Author: jgg
Date: 2001-03-23 07:53:19 GMT
AJs bug fix and doc updates

Arch Librarian лет назад: 22
Родитель
Сommit
a6bfe58397
3 измененных файлов с 21 добавлено и 6 удалено
  1. 17 4
      apt-pkg/algorithms.cc
  2. 3 1
      debian/changelog
  3. 1 1
      doc/apt.ent

+ 17 - 4
apt-pkg/algorithms.cc

@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description								/*{{{*/
-// $Id: algorithms.cc,v 1.32 2001/02/20 07:03:17 jgg Exp $
+// $Id: algorithms.cc,v 1.33 2001/03/23 07:53:19 jgg Exp $
 /* ######################################################################
 
    Algorithms - A set of misc algorithms
@@ -856,10 +856,13 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 	    {
 	       pkgCache::VerIterator Ver(Cache,*V);
 	       pkgCache::PkgIterator Pkg = Ver.ParentPkg();
-	    
+
 	       if (Debug == true)
 		  clog << "  Considering " << Pkg.Name() << ' ' << (int)Scores[Pkg->ID] <<
 		  " as a solution to " << I.Name() << ' ' << (int)Scores[I->ID] << endl;
+
+	       /* Try to fix the package under consideration rather than
+	          fiddle with the VList package */
 	       if (Scores[I->ID] <= Scores[Pkg->ID] ||
 		   ((Cache[Start] & pkgDepCache::DepNow) == 0 &&
 		    End->Type != pkgCache::Dep::Conflicts &&
@@ -920,11 +923,21 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
 	       }
 	       else
 	       {
-		  if (Debug == true)
-		     clog << "  Added " << Pkg.Name() << " to the remove list" << endl;
+		  /* This is a conflicts, and the version we are looking
+		     at is not the currently selected version of the 
+		     package, which means it is not necessary to 
+		     remove/keep */
+		  if (Cache[Pkg].InstallVer != Ver &&
+		      (Start->Type == pkgCache::Dep::Conflicts ||
+		       Start->Type == pkgCache::Dep::Obsoletes))
+		     continue;
+		  
 		  // Skip adding to the kill list if it is protected
 		  if ((Flags[Pkg->ID] & Protected) != 0)
 		     continue;
+		
+		  if (Debug == true)
+		     clog << "  Added " << Pkg.Name() << " to the remove list" << endl;
 		  
 		  LEnd->Pkg = Pkg;
 		  LEnd->Dep = End;

+ 3 - 1
debian/changelog

@@ -2,11 +2,13 @@ apt (0.5.4) unstable; urgency=low
 
   * M68k config.guess patch. Closes: #88913
   * Bi-yearly test on OpenBSD and Solaris
-  * Doc updates. Closes: #89121
+  * Doc updates. Closes: #89121, #89854
   * Various cosmetic code updates. Closes: #89066, #89066, #89152
   * Add "pre-auto" as an option for DSelect::Clean (run autoclean after
     update).
   * More patches from Alfredo for Vendors and more SHA-1 stuff
+  * Fix for AJ's 'desire to remove perl-5.005' and possibly other
+    similar situations. Closes: #56708, #59432
   
  -- Jason Gunthorpe <jgg@debian.org>  Thu,  8 Mar 2001 22:48:06 -0700
 

+ 1 - 1
doc/apt.ent

@@ -2,7 +2,7 @@
 
 <!-- Some common paths.. -->
 <!ENTITY docdir "/usr/share/doc/apt/">
-<!ENTITY configureindex "<filename>&docdir;/examples/configure-index</>">
+<!ENTITY configureindex "<filename>&docdir;examples/configure-index.gz</>">
 <!ENTITY aptconfdir "<filename>/etc/apt.conf</>">
 <!ENTITY statedir "/var/lib/apt">
 <!ENTITY cachedir "/var/cache/apt">