소스 검색

merged from donkult

Michael Vogt 15 년 전
부모
커밋
9fb4483f93

+ 10 - 0
apt-pkg/depcache.cc

@@ -1192,6 +1192,16 @@ bool pkgDepCache::IsDeleteOk(PkgIterator const &Pkg,bool rPurge,
 	 std::clog << OutputInDepth(Depth) << "Hold prevents MarkDelete of " << Pkg << " FU=" << FromUser << std::endl;
       return false;
    }
+   else if (FromUser == false && Pkg->CurrentVer == 0)
+   {
+      StateCache &P = PkgState[Pkg->ID];
+      if (P.InstallVer != 0 && P.Status == 2 && (P.Flags & Flag::Auto) != Flag::Auto)
+      {
+	 if (DebugMarker == true)
+	    std::clog << OutputInDepth(Depth) << "Manual install request prevents MarkDelete of " << Pkg << std::endl;
+	 return false;
+      }
+   }
    return true;
 }
 									/*}}}*/

+ 4 - 1
debian/changelog

@@ -2,6 +2,7 @@ apt (0.8.6) UNRELEASED; urgency=low
 
   [ Programs translations ]
   * Vietnamese update by Clytie Siddall (Closes: #598489)
+  * Asturian update by Maacub (Closes: #599057)
 
   [ David Kalnischkies ]
   * cmdline/apt-cache.cc:
@@ -12,12 +13,14 @@ apt (0.8.6) UNRELEASED; urgency=low
   * apt-pkg/depcache.cc:
     - do not check endpointer packages instead of only those which prevented
       NeverAutoRemove settings from having an effect (Closes: #598452)
+    - do not remove packages which the user requested for installation
+      explicitly while satisfying other install requests (Closes: #598669)
   * apt-pkg/packagemanager.cc:
     - Add a space between period and 'Please' and unfuzzy all translations
   * doc/po/de.po:
     - remove the duplicated "angefertigt" in translation-holder string
 
- -- David Kalnischkies <kalnischkies@gmail.com>  Thu, 30 Sep 2010 12:26:34 +0200
+ -- David Kalnischkies <kalnischkies@gmail.com>  Mon, 04 Oct 2010 11:02:41 +0200
 
 apt (0.8.5) unstable; urgency=low
 

+ 21 - 21
po/ast.po

@@ -5,8 +5,8 @@ msgstr ""
 "Project-Id-Version: apt 0.7.18\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2010-09-28 17:23+0200\n"
-"PO-Revision-Date: 2010-08-25 09:19+0100\n"
-"Last-Translator: maacub <maacub@gmail.com>\n"
+"PO-Revision-Date: 2010-10-02 23:35+0100\n"
+"Last-Translator: Iñigo Varela <ivarela@softastur.org>\n"
 "Language-Team: Asturian (ast)\n"
 "Language: ast\n"
 "MIME-Version: 1.0\n"
@@ -54,7 +54,7 @@ msgstr "Versiones distintes en total: "
 
 #: cmdline/apt-cache.cc:334
 msgid "Total distinct descriptions: "
-msgstr "Descriciones distintes en total: "
+msgstr "Descripciones distintes en total: "
 
 #: cmdline/apt-cache.cc:336
 msgid "Total dependencies: "
@@ -62,11 +62,11 @@ msgstr "Dependencies totales: "
 
 #: cmdline/apt-cache.cc:339
 msgid "Total ver/file relations: "
-msgstr "Relaciones versión/ficheru en total: "
+msgstr "Rellaciones versión/ficheru en total: "
 
 #: cmdline/apt-cache.cc:341
 msgid "Total Desc/File relations: "
-msgstr "Relaciones descrición/ficheru en total: "
+msgstr "Rellaciones descripción/ficheru en total: "
 
 #: cmdline/apt-cache.cc:343
 msgid "Total Provides mappings: "
@@ -321,7 +321,7 @@ msgstr "Nun se pue alcontrar la versión de debconf. ¿Ta instaláu debconf?"
 
 #: ftparchive/apt-ftparchive.cc:170 ftparchive/apt-ftparchive.cc:347
 msgid "Package extension list is too long"
-msgstr "La llista d'estensión de paquetes ye demasiao llarga"
+msgstr "La llista d'estensión de paquetes ye enforma llarga"
 
 #: ftparchive/apt-ftparchive.cc:172 ftparchive/apt-ftparchive.cc:189
 #: ftparchive/apt-ftparchive.cc:212 ftparchive/apt-ftparchive.cc:262
@@ -332,7 +332,7 @@ msgstr "Error al procesar el direutoriu %s"
 
 #: ftparchive/apt-ftparchive.cc:260
 msgid "Source extension list is too long"
-msgstr "La llista d'estensión de fontes ye demasiao llarga"
+msgstr "La llista d'estensión de fontes ye enforma llarga"
 
 #: ftparchive/apt-ftparchive.cc:377
 msgid "Error writing header to contents file"
@@ -416,7 +416,7 @@ msgstr ""
 "Escoyetes:\n"
 "  -h    Esti testu d'aida\n"
 "  --md5 Xenerar control MD5 \n"
-"  -s=?  Ficheru de disvíu de fontes\n"
+"  -s=?  Ficheru de desvíu de fontes\n"
 "  -q    Sele\n"
 "  -d=?  Seleiciona la base de datos de caché opcional \n"
 "  --no-delink Activa'l mou de depuración de desenllaces\n"
@@ -1302,7 +1302,7 @@ msgstr ""
 msgid "Failed to satisfy %s dependency for %s: Installed package %s is too new"
 msgstr ""
 "Nun se pudo satisfacer la dependencia %s pa %s: El paquete instaláu %s ye "
-"demasiao nuevu"
+"enforma nuevu"
 
 #: cmdline/apt-get.cc:2711
 #, c-format
@@ -1620,7 +1620,7 @@ msgstr "Falló al pesllar el ficheru %s"
 #: apt-inst/extract.cc:93 apt-inst/extract.cc:164
 #, c-format
 msgid "The path %s is too long"
-msgstr "La trayeutoria %s ye demasiao llarga"
+msgstr "La trayeutoria %s ye enforma llarga"
 
 #: apt-inst/extract.cc:124
 #, c-format
@@ -1639,7 +1639,7 @@ msgstr "El paquete ta tentando escribir nel oxetivu desviáu %s/%s"
 
 #: apt-inst/extract.cc:154 apt-inst/extract.cc:297
 msgid "The diversion path is too long"
-msgstr "La trayeutoria de desviación ye demasiao llarga"
+msgstr "La trayeutoria de desviación ye enforma llarga"
 
 #: apt-inst/extract.cc:240
 #, c-format
@@ -2097,8 +2097,8 @@ msgid ""
 "The following signatures couldn't be verified because the public key is not "
 "available:\n"
 msgstr ""
-"Les robles siguiente nun se pudieron verificar porque la to llave pública "
-"nun ta a mano:\n"
+"Les robles siguientes nun pudieron verificase porque la to llave pública nun "
+"ta a mano:\n"
 
 #: methods/http.cc:385
 msgid "Waiting for headers"
@@ -2354,7 +2354,7 @@ msgstr "La opción %s pide un argumentu enteru, non '%s'"
 #: apt-pkg/contrib/cmndline.cc:267
 #, c-format
 msgid "Option '%s' is too long"
-msgstr "Opción '%s' demasiao llarga"
+msgstr "Opción '%s' enforma llarga"
 
 #: apt-pkg/contrib/cmndline.cc:300
 #, c-format
@@ -2650,7 +2650,7 @@ msgstr "Abriendo %s"
 #: apt-pkg/sourcelist.cc:261 apt-pkg/cdrom.cc:438
 #, c-format
 msgid "Line %u too long in source list %s."
-msgstr "Llinia %u demasiao llarga na llista d'orígenes %s."
+msgstr "Llinia %u enforma llarga na llista d'oríxenes %s."
 
 #: apt-pkg/sourcelist.cc:281
 #, c-format
@@ -2708,19 +2708,19 @@ msgid ""
 "Error, pkgProblemResolver::Resolve generated breaks, this may be caused by "
 "held packages."
 msgstr ""
-"Error, pkgProblemResolver::Resolve xeneró frañaures, esto puede ser pola mor "
-"de paquetes reteníos."
+"Error, pkgProblemResolver::Resolve xeneró frañadures, esto puede ser pola "
+"mor de paquetes reteníos."
 
 #: apt-pkg/algorithms.cc:1212
 msgid "Unable to correct problems, you have held broken packages."
-msgstr "Nun pueden iguase los problemes; tienes paquetes frañaos retenidos."
+msgstr "Nun pueden iguase los problemes; tienes paquetes frañaos reteníos."
 
 #: apt-pkg/algorithms.cc:1488 apt-pkg/algorithms.cc:1490
 msgid ""
 "Some index files failed to download, they have been ignored, or old ones "
 "used instead."
 msgstr ""
-"Dellos ficheros d'indiz nun pudieron descargase; ignoraronse o usaronse los "
+"Nun pudieron descargase dellos ficheros d'índiz; inoráronse o usáronse los "
 "antiguos nel so llugar."
 
 #: apt-pkg/acquire.cc:79
@@ -2938,8 +2938,8 @@ msgid ""
 "A error occurred during the signature verification. The repository is not "
 "updated and the previous index files will be used. GPG error: %s: %s\n"
 msgstr ""
-"Hebo un fallu durante la verificación de la firma. El repositoriu nun ta "
-"anováu y un ficheru indiz previu será usáu. fallu GPG: %s: %s\n"
+"Hebo un fallu durante la verificación de la robla. El repositoriu nun ta "
+"anováu y va usase un ficheru índiz. Fallu GPG: %s: %s\n"
 
 #: apt-pkg/acquire-item.cc:1337
 #, c-format

+ 30 - 0
test/integration/Packages-bug-598669-install-postfix-gets-exim-heavy

@@ -0,0 +1,30 @@
+Package: exim4-daemon-heavy
+Priority: optional
+Section: mail
+Installed-Size: 1060
+Maintainer: Exim4 Maintainers <pkg-exim4-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: exim4
+Version: 4.72-1
+Replaces:  mail-transport-agent
+Provides:  mail-transport-agent
+Conflicts: mail-transport-agent
+Filename: pool/main/e/exim4/exim4-daemon-heavy_4.72-1_i386.deb
+Size: 508988
+MD5sum: 7adf3b0ef8f134e70d19ee216e6f4452
+Description: Exim MTA (v4) daemon with extended features, including exiscan-acl
+
+Package: postfix
+Priority: extra
+Section: mail
+Installed-Size: 3196
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Version: 2.7.1-1
+Replaces:  mail-transport-agent
+Provides:  mail-transport-agent
+Conflicts: mail-transport-agent
+Filename: pool/main/p/postfix/postfix_2.7.1-1_i386.deb
+Size: 1325662
+MD5sum: 1ef63b6a62b4be120a9cdc312b81a698
+Description: High-performance mail transport agent

+ 30 - 0
test/integration/status-bug-598669-install-postfix-gets-exim-heavy

@@ -0,0 +1,30 @@
+Package: exim4-daemon-light
+Status: install ok installed
+Priority: standard
+Section: mail
+Installed-Size: 952
+Maintainer: Exim4 Maintainers <pkg-exim4-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: exim4
+Version: 4.72-1
+Replaces:  mail-transport-agent
+Provides:  mail-transport-agent
+Conflicts: mail-transport-agent
+Filename: pool/main/e/exim4/exim4-daemon-light_4.72-1_i386.deb
+Size: 459500
+MD5sum: f32ccafef44bed2efcd526cd6501307d
+Description: lightweight Exim MTA (v4) daemon
+
+Package: exim4
+Status: install ok installed
+Priority: standard
+Section: mail
+Installed-Size: 60
+Maintainer: Exim4 Maintainers <pkg-exim4-maintainers@lists.alioth.debian.org>
+Architecture: all
+Version: 4.72-1
+Depends: exim4-daemon-light | exim4-daemon-heavy
+Filename: pool/main/e/exim4/exim4_4.72-1_all.deb
+Size: 7738
+MD5sum: 2f473b82bbabac9718ff3e755eaf85c1
+Description: metapackage to ease Exim MTA (v4) installation

+ 19 - 0
test/integration/test-bug-598669-install-postfix-gets-exim-heavy

@@ -0,0 +1,19 @@
+#!/bin/sh
+set -e
+
+local TESTDIR=$(readlink -f $(dirname $0))
+. $TESTDIR/framework
+setupenvironment
+configarchitecture "i386"
+setupaptarchive
+
+testequal "Reading package lists...
+Building dependency tree...
+The following packages will be REMOVED:
+  exim4 exim4-daemon-light
+The following NEW packages will be installed:
+  postfix
+0 upgraded, 1 newly installed, 2 to remove and 0 not upgraded.
+Need to get 0 B/1326 kB of archives.
+After this operation, 2236 kB of additional disk space will be used.
+E: Trivial Only specified but this is not a trivial operation." aptget install postfix --trivial-only