]> git.saurik.com Git - apt.git/commitdiff
merged from apt--mvo
authorMichael Vogt <egon@tas>
Thu, 7 Dec 2006 11:06:54 +0000 (12:06 +0100)
committerMichael Vogt <egon@tas>
Thu, 7 Dec 2006 11:06:54 +0000 (12:06 +0100)
1  2 
apt-pkg/acquire-item.cc
apt-pkg/deb/debindexfile.cc
apt-pkg/deb/dpkgpm.cc
apt-pkg/tagfile.cc
configure.in
debian/apt.postinst
debian/changelog
debian/rules
doc/apt-get.8.xml
doc/examples/configure-index

diff --combined apt-pkg/acquire-item.cc
index 2ecb7781481f874fbfedca327b16d7bd653025d0,8ec4ba2c0b6c2b4d5fb229201e6b7e61a004d024..94288a1321a3b5306a70bb6ceded729a1ce5e9f4
@@@ -75,7 -75,7 +75,7 @@@ void pkgAcquire::Item::Failed(string Me
         Dequeue();
         return;
        }
 -      
 +
        Status = StatError;
        Dequeue();
     }   
@@@ -308,35 -308,6 +308,35 @@@ void pkgAcqIndex::Done(string Message,u
     Mode = decompProg;
  }
  
 +// AcqIndexTrans::pkgAcqIndexTrans - Constructor                      /*{{{*/
 +// ---------------------------------------------------------------------
 +/* The Translation file is added to the queue */
 +pkgAcqIndexTrans::pkgAcqIndexTrans(pkgAcquire *Owner,
 +                          string URI,string URIDesc,string ShortDesc) :
 +                      pkgAcqIndex(Owner, URI, URIDesc, ShortDesc, "", "")
 +{
 +}
 +
 +                                                                      /*}}}*/
 +// AcqIndexTrans::Failed - Silence failure messages for missing files /*{{{*/
 +// ---------------------------------------------------------------------
 +/* */
 +void pkgAcqIndexTrans::Failed(string Message,pkgAcquire::MethodConfig *Cnf)
 +{
 +   if (Cnf->LocalOnly == true || 
 +       StringToBool(LookupTag(Message,"Transient-Failure"),false) == false)
 +   {      
 +      // Ignore this
 +      Status = StatDone;
 +      Complete = false;
 +      Dequeue();
 +      return;
 +   }
 +   
 +   Item::Failed(Message,Cnf);
 +}
 +                                                                      /*}}}*/
 +
  pkgAcqMetaSig::pkgAcqMetaSig(pkgAcquire *Owner,
                             string URI,string URIDesc,string ShortDesc,
                             string MetaIndexURI, string MetaIndexURIDesc,
     DestFile = _config->FindDir("Dir::State::lists") + "partial/";
     DestFile += URItoFileName(URI);
  
 -   // remove any partial downloaded sig-file. it may confuse proxies
 -   // and is too small to warrant a partial download anyway
 +   // remove any partial downloaded sig-file in partial/. 
 +   // it may confuse proxies and is too small to warrant a 
 +   // partial download anyway
     unlink(DestFile.c_str());
  
     // Create the item
@@@ -419,22 -389,17 +419,22 @@@ void pkgAcqMetaSig::Done(string Message
                                                                        /*}}}*/
  void pkgAcqMetaSig::Failed(string Message,pkgAcquire::MethodConfig *Cnf)
  {
 +   string Final = _config->FindDir("Dir::State::lists") + URItoFileName(RealURI);
  
     // if we get a network error we fail gracefully
 -   if(LookupTag(Message,"FailReason") == "Timeout" || 
 -      LookupTag(Message,"FailReason") == "TmpResolveFailure" ||
 -      LookupTag(Message,"FailReason") == "ConnectionRefused") {
 +   if(Status == StatTransientNetworkError)
 +   {
        Item::Failed(Message,Cnf);
 +      // move the sigfile back on network failures (and re-authenticated?)
 +      if(FileExists(DestFile))
 +       Rename(DestFile,Final);
 +
 +      // set the status back to , Item::Failed likes to reset it
 +      Status = pkgAcquire::Item::StatTransientNetworkError;
        return;
     }
  
     // Delete any existing sigfile when the acquire failed
 -   string Final = _config->FindDir("Dir::State::lists") + URItoFileName(RealURI);
     unlink(Final.c_str());
  
     // queue a pkgAcqMetaIndex with no sigfile
@@@ -672,7 -637,7 +672,7 @@@ bool pkgAcqMetaIndex::VerifyVendor(stri
     // check for missing sigs (that where not fatal because otherwise we had
     // bombed earlier)
     string missingkeys;
-    string msg = _("There are no public key available for the "
+    string msg = _("There is no public key available for the "
                  "following key IDs:\n");
     pos = Message.find("NO_PUBKEY ");
     if (pos != std::string::npos)
index 38ecdd16af5249adb44f96d124aa48d792f5b430,234521efeb91c2f8ec6064c751919e468d85159b..9f435bba55dc4df5da75afa718e6f9149aeab6a3
@@@ -305,7 -305,7 +305,7 @@@ pkgCache::PkgFileIterator debPackagesIn
     pkgCache::PkgFileIterator File = Cache.FileBegin();
     for (; File.end() == false; File++)
     {
-       if (FileName != File.FileName())
+        if (File.FileName() == NULL || FileName != File.FileName())
         continue;
        
        struct stat St;
  }
                                                                        /*}}}*/
  
 +// TranslationsIndex::debTranslationsIndex - Contructor                       /*{{{*/
 +// ---------------------------------------------------------------------
 +/* */
 +debTranslationsIndex::debTranslationsIndex(string URI,string Dist,string Section) : 
 +                  pkgIndexFile(true), URI(URI), Dist(Dist), Section(Section)
 +{
 +}
 +                                                                      /*}}}*/
 +// TranslationIndex::Trans* - Return the URI to the translation files /*{{{*/
 +// ---------------------------------------------------------------------
 +/* */
 +inline string debTranslationsIndex::IndexFile(const char *Type) const
 +{
 +   return _config->FindDir("Dir::State::lists") + URItoFileName(IndexURI(Type));
 +}
 +string debTranslationsIndex::IndexURI(const char *Type) const
 +{
 +   string Res;
 +   if (Dist[Dist.size() - 1] == '/')
 +   {
 +      if (Dist != "/")
 +       Res = URI + Dist;
 +      else 
 +       Res = URI;
 +   }
 +   else
 +      Res = URI + "dists/" + Dist + '/' + Section +
 +      "/i18n/Translation-";
 +   
 +   Res += Type;
 +   return Res;
 +}
 +                                                                      /*}}}*/
 +// TranslationsIndex::GetIndexes - Fetch the index files              /*{{{*/
 +// ---------------------------------------------------------------------
 +/* */
 +bool debTranslationsIndex::GetIndexes(pkgAcquire *Owner) const
 +{
 +   if (TranslationsAvailable()) {
 +     string TranslationFile = "Translation-" + LanguageCode();
 +     new pkgAcqIndexTrans(Owner, IndexURI(LanguageCode().c_str()),
 +                        Info(TranslationFile.c_str()),
 +                        TranslationFile);
 +   }
 +
 +   return true;
 +}
 +                                                                      /*}}}*/
 +// TranslationsIndex::Describe - Give a descriptive path to the index /*{{{*/
 +// ---------------------------------------------------------------------
 +/* This should help the user find the index in the sources.list and
 +   in the filesystem for problem solving */
 +string debTranslationsIndex::Describe(bool Short) const
 +{   
 +   char S[300];
 +   if (Short == true)
 +      snprintf(S,sizeof(S),"%s",Info(TranslationFile().c_str()).c_str());
 +   else
 +      snprintf(S,sizeof(S),"%s (%s)",Info(TranslationFile().c_str()).c_str(),
 +             IndexFile(LanguageCode().c_str()).c_str());
 +   return S;
 +}
 +                                                                      /*}}}*/
 +// TranslationsIndex::Info - One liner describing the index URI               /*{{{*/
 +// ---------------------------------------------------------------------
 +/* */
 +string debTranslationsIndex::Info(const char *Type) const 
 +{
 +   string Info = ::URI::SiteOnly(URI) + ' ';
 +   if (Dist[Dist.size() - 1] == '/')
 +   {
 +      if (Dist != "/")
 +       Info += Dist;
 +   }
 +   else
 +      Info += Dist + '/' + Section;   
 +   Info += " ";
 +   Info += Type;
 +   return Info;
 +}
 +                                                                      /*}}}*/
 +bool debTranslationsIndex::HasPackages() const
 +{
 +   if(!TranslationsAvailable())
 +      return false;
 +   
 +   return FileExists(IndexFile(LanguageCode().c_str()));
 +}
 +
 +// TranslationsIndex::Exists - Check if the index is available                /*{{{*/
 +// ---------------------------------------------------------------------
 +/* */
 +bool debTranslationsIndex::Exists() const
 +{
 +   return FileExists(IndexFile(LanguageCode().c_str()));
 +}
 +                                                                      /*}}}*/
 +// TranslationsIndex::Size - Return the size of the index             /*{{{*/
 +// ---------------------------------------------------------------------
 +/* This is really only used for progress reporting. */
 +unsigned long debTranslationsIndex::Size() const
 +{
 +   struct stat S;
 +   if (stat(IndexFile(LanguageCode().c_str()).c_str(),&S) != 0)
 +      return 0;
 +   return S.st_size;
 +}
 +                                                                      /*}}}*/
 +// TranslationsIndex::Merge - Load the index file into a cache                /*{{{*/
 +// ---------------------------------------------------------------------
 +/* */
 +bool debTranslationsIndex::Merge(pkgCacheGenerator &Gen,OpProgress &Prog) const
 +{
 +   // Check the translation file, if in use
 +   string TranslationFile = IndexFile(LanguageCode().c_str());
 +   if (TranslationsAvailable() && FileExists(TranslationFile))
 +   {
 +     FileFd Trans(TranslationFile,FileFd::ReadOnly);
 +     debListParser TransParser(&Trans);
 +     if (_error->PendingError() == true)
 +       return false;
 +     
 +     Prog.SubProgress(0, Info(TranslationFile.c_str()));
 +     if (Gen.SelectFile(TranslationFile,string(),*this) == false)
 +       return _error->Error("Problem with SelectFile %s",TranslationFile.c_str());
 +
 +     // Store the IMS information
 +     pkgCache::PkgFileIterator TransFile = Gen.GetCurFile();
 +     struct stat TransSt;
 +     if (fstat(Trans.Fd(),&TransSt) != 0)
 +       return _error->Errno("fstat","Failed to stat");
 +     TransFile->Size = TransSt.st_size;
 +     TransFile->mtime = TransSt.st_mtime;
 +   
 +     if (Gen.MergeList(TransParser) == false)
 +       return _error->Error("Problem with MergeList %s",TranslationFile.c_str());
 +   }
 +
 +   return true;
 +}
 +                                                                      /*}}}*/
 +// TranslationsIndex::FindInCache - Find this index                           /*{{{*/
 +// ---------------------------------------------------------------------
 +/* */
 +pkgCache::PkgFileIterator debTranslationsIndex::FindInCache(pkgCache &Cache) const
 +{
 +   string FileName = IndexFile(LanguageCode().c_str());
 +   
 +   pkgCache::PkgFileIterator File = Cache.FileBegin();
 +   for (; File.end() == false; File++)
 +   {
 +      if (FileName != File.FileName())
 +       continue;
 +
 +      struct stat St;
 +      if (stat(File.FileName(),&St) != 0)
 +       return pkgCache::PkgFileIterator(Cache);
 +      if ((unsigned)St.st_size != File->Size || St.st_mtime != File->mtime)
 +       return pkgCache::PkgFileIterator(Cache);
 +      return File;
 +   }   
 +   return File;
 +}
 +                                                                      /*}}}*/
  // StatusIndex::debStatusIndex - Constructor                          /*{{{*/
  // ---------------------------------------------------------------------
  /* */
@@@ -580,11 -416,6 +580,11 @@@ class debIFTypePkg : public pkgIndexFil
     };
     debIFTypePkg() {Label = "Debian Package Index";};
  };
 +class debIFTypeTrans : public debIFTypePkg
 +{
 +   public:
 +   debIFTypeTrans() {Label = "Debian Translation Index";};
 +};
  class debIFTypeStatus : public pkgIndexFile::Type
  {
     public:
  };
  static debIFTypeSrc _apt_Src;
  static debIFTypePkg _apt_Pkg;
 +static debIFTypeTrans _apt_Trans;
  static debIFTypeStatus _apt_Status;
  
  const pkgIndexFile::Type *debSourcesIndex::GetType() const
@@@ -608,10 -438,6 +608,10 @@@ const pkgIndexFile::Type *debPackagesIn
  {
     return &_apt_Pkg;
  }
 +const pkgIndexFile::Type *debTranslationsIndex::GetType() const
 +{
 +   return &_apt_Trans;
 +}
  const pkgIndexFile::Type *debStatusIndex::GetType() const
  {
     return &_apt_Status;
diff --combined apt-pkg/deb/dpkgpm.cc
index f66962387818574a17d42846ffd7967b11bd6b53,3204fc1bb22502d82c8dd97347244457fb9939f4..cebdafe7deecba82237eae18a8bb9ea2d5838ff0
@@@ -474,8 -474,6 +474,8 @@@ bool pkgDPkgPM::Go(int OutStatusFd
         case Item::Install:
         Args[n++] = "--unpack";
         Size += strlen(Args[n-1]);
 +       Args[n++] = "--auto-deconfigure";
 +       Size += strlen(Args[n-1]);
         break;
        }
        
            
         */
         char* list[5];
-        if(!TokSplitString(':', line, list, sizeof(list)/sizeof(list[0])))
-           // FIXME: dpkg sends multiline error messages sometimes (see
-           //        #374195 for a example. we should support this by
-           //        either patching dpkg to not send multiline over the
-           //        statusfd or by rewriting the code here to deal with
-           //        it. for now we just ignore it and not crash
-           continue;
+        //        dpkg sends multiline error messages sometimes (see
+        //        #374195 for a example. we should support this by
+        //        either patching dpkg to not send multiline over the
+        //        statusfd or by rewriting the code here to deal with
+        //        it. for now we just ignore it and not crash
+        TokSplitString(':', line, list, sizeof(list)/sizeof(list[0]));
         char *pkg = list[1];
         char *action = _strstrip(list[2]);
+        if( pkg == NULL || action == NULL) 
+        {
+           if (_config->FindB("Debug::pkgDPkgProgressReporting",false) == true)
+              std::clog << "ignoring line: not enough ':'" << std::endl;
+           // reset the line buffer
+           line[0]=0;
+           continue;
+        }
  
         if(strncmp(action,"error",strlen("error")) == 0)
         {
        // Check for an error code.
        if (WIFEXITED(Status) == 0 || WEXITSTATUS(Status) != 0)
        {
-        RunScripts("DPkg::Post-Invoke");
-        if (WIFSIGNALED(Status) != 0 && WTERMSIG(Status) == SIGSEGV)
-           return _error->Error("Sub-process %s received a segmentation fault.",Args[0]);
-        if (WIFEXITED(Status) != 0)
-           return _error->Error("Sub-process %s returned an error code (%u)",Args[0],WEXITSTATUS(Status));
+        // if it was set to "keep-dpkg-runing" then we won't return
+        // here but keep the loop going and just report it as a error
+        // for later
+        bool stopOnError = _config->FindB("Dpkg::StopOnError",true);
         
-        return _error->Error("Sub-process %s exited unexpectedly",Args[0]);
+        if(stopOnError)
+           RunScripts("DPkg::Post-Invoke");
+        if (WIFSIGNALED(Status) != 0 && WTERMSIG(Status) == SIGSEGV) 
+           _error->Error("Sub-process %s received a segmentation fault.",Args[0]);
+        else if (WIFEXITED(Status) != 0)
+           _error->Error("Sub-process %s returned an error code (%u)",Args[0],WEXITSTATUS(Status));
+        else 
+           _error->Error("Sub-process %s exited unexpectedly",Args[0]);
+        if(stopOnError)
+           return false;
        }      
     }
  
diff --combined apt-pkg/tagfile.cc
index 02951133661ed3fd96ce8e3617fa85ffe31230ce,223618cd19083be23fbfa45b31d14a6ca692c150..8700dd17d5d99ed5decd88378f16768ffc3f1e5f
@@@ -59,19 -59,52 +59,52 @@@ pkgTagFile::~pkgTagFile(
     delete [] Buffer;
  }
                                                                        /*}}}*/
+ // TagFile::Resize - Resize the internal buffer                               /*{{{*/
+ // ---------------------------------------------------------------------
+ /* Resize the internal buffer (double it in size). Fail if a maximum size
+  * size is reached.
+  */
+ bool pkgTagFile::Resize()
+ {
+    char *tmp;
+    unsigned long EndSize = End - Start;
+    // fail is the buffer grows too big
+    if(Size > 1024*1024+1)
+       return false;
+    // get new buffer and use it
+    tmp = new char[2*Size];
+    memcpy(tmp, Buffer, Size);
+    Size = Size*2;
+    delete [] Buffer;
+    Buffer = tmp;
+    // update the start/end pointers to the new buffer
+    Start = Buffer;
+    End = Start + EndSize;
+    return true;
+ }
  // TagFile::Step - Advance to the next section                                /*{{{*/
  // ---------------------------------------------------------------------
- /* If the Section Scanner fails we refill the buffer and try again. */
+ /* If the Section Scanner fails we refill the buffer and try again. 
+  * If that fails too, double the buffer size and try again until a
+  * maximum buffer is reached.
+  */
  bool pkgTagFile::Step(pkgTagSection &Tag)
  {
-    if (Tag.Scan(Start,End - Start) == false)
+    while (Tag.Scan(Start,End - Start) == false)
     {
        if (Fill() == false)
         return false;
        
-       if (Tag.Scan(Start,End - Start) == false)
+       if(Tag.Scan(Start,End - Start))
+        break;
+       if (Resize() == false)
         return _error->Error(_("Unable to parse package file %s (1)"),
-                             Fd.Name().c_str());
+                                Fd.Name().c_str());
     }
     Start += Tag.size();
     iOffset += Tag.size();
@@@ -378,7 -411,6 +411,7 @@@ static const char *iTFRewritePackageOrd
                            "Section",
                            "Installed-Size",
                            "Maintainer",
 +                          "Original-Maintainer",
                            "Architecture",
                            "Source",
                            "Version",
                            "Recommends",
                            "Suggests",
                            "Conflicts",
 +                          "Breaks",
                            "Conffiles",
                            "Filename",
                            "Size",
@@@ -408,7 -439,6 +441,7 @@@ static const char *iTFRewriteSourceOrde
                                        "Priority",
                                        "Section",
                                        "Maintainer",
 +                                    "Original-Maintainer",
                                        "Build-Depends",
                                        "Build-Depends-Indep",
                                        "Build-Conflicts",
diff --combined configure.in
index 2ec63d6dd9c3cb0bf35682999bd504d5e903ec1f,ad81a8228ee2d261e7d2ed9942bc387891d427b9..00f35f75d9cfb8f97b57feac948bc45cdf5cbea1
@@@ -18,7 -18,7 +18,7 @@@ AC_CONFIG_AUX_DIR(buildlib
  AC_CONFIG_HEADER(include/config.h:buildlib/config.h.in include/apti18n.h:buildlib/apti18n.h.in)
  
  dnl -- SET THIS TO THE RELEASE VERSION --
- AC_DEFINE_UNQUOTED(VERSION,"0.6.45ubuntu15")
 -AC_DEFINE_UNQUOTED(VERSION,"0.6.46.3-0.1")
++AC_DEFINE_UNQUOTED(VERSION,"0.6.46.4ubuntu1")
  PACKAGE="apt"
  AC_DEFINE_UNQUOTED(PACKAGE,"$PACKAGE")
  AC_SUBST(PACKAGE)
@@@ -192,7 -192,7 +192,7 @@@ ah_GCC3DE
  dnl It used to be that the user could select translations and that could get
  dnl passed to the makefiles, but now that can only work if you use special
  dnl gettext approved makefiles, so this feature is unsupported by this.
- ALL_LINGUAS="bg bs ca cs cy da de dz el en_GB es eu fi fr gl hu it ja ko nb nl nn pl pt_BR pt ro ru sk sl sv tl vi zn_CN zh_TW"
+ ALL_LINGUAS="bg bs ca cs cy da de dz el en_GB es eu fi fr gl hu it ja ko ku nb nl nn pl pt_BR pt ro ru sk sl sv tl vi zn_CN zh_TW"
  AM_GNU_GETTEXT(external)
  if test x"$USE_NLS" = "xyes"; then
     AC_DEFINE(USE_NLS)
diff --combined debian/apt.postinst
index df0433057f1dba4c0c87737214f2ab75a570c9ac,88fb932dfed5628494fd8efdb2b8b945755b12ff..1419d180a8179c75971f7ac9c1b17229140e230f
@@@ -17,9 -17,11 +17,11 @@@ case "$1" i
      configure)
  
          if ! test -f /etc/apt/trusted.gpg; then
 -                cp /usr/share/apt/debian-archive.gpg /etc/apt/trusted.gpg
 +                cp /usr/share/apt/ubuntu-archive.gpg /etc/apt/trusted.gpg
          fi
  
+       apt-key update
      ;;
  
      abort-upgrade|abort-remove|abort-deconfigure)
diff --combined debian/changelog
index 51399f9a5341a0994a841751f6834bb5a844dba5,fc17d2f56b74e1cfa2bf3d8409d1e93488dd2d55..b015747b16719c90424a63ea07b2768563c41c64
- apt (0.6.45ubuntu15) edgy; urgency=low
++apt (0.6.46.4ubuntu1) feisty; urgency=low
++
++  * 
++
++ --
++
+ apt (0.6.46.4) unstable; urgency=high
+   * ack NMU (closes: #401017)
+   * added apt-secure.8 to "See also" section
+   * apt-pkg/deb/dpkgpm.cc:
+     - added "Dpkg::StopOnError" variable that controls if apt
+       will abort on errors from dpkg
+   * apt-pkg/deb/debsrcrecords.{cc,h}:
+     - make the Buffer grow dynmaically (closes: #400874)
+   * Merged from Christian Perrier bzr branch:
+     - uk.po: New Ukrainian translation: 483t28f3u
+     - el.po: Update to 503t9f2u
+     - de.po: Updates and corrections.
+   * apt-pkg/contrib/progress.cc:
+     - OpProgress::CheckChange optimized, thanks to Paul Brook
+       (closes: #398381)
+   * apt-pkg/contrib/sha256.cc:
+     - fix building with noopt
+  -- Michael Vogt <mvo@debian.org>  Thu,  7 Dec 2006 10:49:50 +0100
+ apt  (0.6.46.3-0.2) unstable; urgency=high
+   * Non-maintainer upload with permission of Michael Vogt.
+   * Fix FTBFS on most arches (regression from the fix of #400874)
+  -- Andreas Barth <aba@not.so.argh.org>  Tue,  5 Dec 2006 15:51:22 +0000 
+   
+ apt (0.6.46.3-0.1) unstable; urgency=high
+   * Non-maintainer upload with permission of Michael Vogt.
+   * Fix segfault at apt-get source. Closes: #400874
+   * Add apt-key update in postinst, so that debian-archive-keyring doesn't
+     need to depend on apt >= 0.6. Closes: #401114
+   * Don't double-queue pdiff files. Closes: #401017
+   
+  -- Andreas Barth <aba@not.so.argh.org>  Tue,  5 Dec 2006 10:34:56 +0000
++apt (0.6.46.3ubuntu1) feisty; urgency=low
 +
 +  * doc/apt-get.8.xml:
-     - documented autoremove, thanks to Vladimír Lapáček 
++    - documented autoremove, thanks to Vladimír Lapá\e%GÄ\8d\e%@ek 
 +      (lp: #62919)
 +  * fix broken i18n in the dpkg progress reporting, thanks to 
 +    Frans Pop and Steinar Gunderson. (closes: #389261)
 +  * po/en_GB.po:
 +    - typo (lp: #61270)
++  * add apt-secure.8 to "See also" section
 +
-  -- 
++ -- Michael Vogt <michael.vogt@ubuntu.com>  Thu, 23 Nov 2006 07:24:12 +0100
 +
- apt (0.6.45ubuntu14) edgy; urgency=low
+ apt (0.6.46.3) unstable; urgency=low
  
+   * apt-pkg/deb/dpkgpm.cc:
+     - make progress reporting robust against multiline error
+       messages 
+   * Merged from Christian Perrier bzr branch:
+      - ca.po: Updated to 514t
+      - be.po: Updated to 514t
+      - it.po: Updated to 514t
+      - hu.po: Updated to 514t
+      - zh_TW.po: Updated to 514t
+      - ar.po: Updated to 293t221u.
+      - ru.po: Updated to 514t. Closes: #392466
+      - nb.po: Updated to 514t. Closes: #392466
+      - pt.po: Updated to 514t. Closes: #393199
+      - fr.po: One spelling error corrected: s/accèder/accéder
+      - km.po: Updated to 514t.
+      - ko.po: Updated to 514t.
+      - bg.po: Updated to 514t.
+      - de.po: Updated to 514t.
+      - en_GB.po: Updated to 514t.
+  -- Michael Vogt <mvo@debian.org>  Thu, 2 Nov 2006 11:37:58 +0100 
+ apt (0.6.46.2) unstable; urgency=low
+   * Merged from Christian Perrier bzr branch:
+     - es.po: Updated to 514t. Closes: #391661
+     - da.po: Updated to 514t. Closes: #391424
+     - cs.po: Updated. Closes: #391064
+     - es.po: Updated to 514t. Closes: #391661
+     - da.po: Updated to 514t. Closes: #391424
+   
+  -- Michael Vogt <mvo@debian.org>  Wed, 11 Oct 2006 09:03:15 +0200
+ apt (0.6.46.1) unstable; urgency=low
+   * methods/gzip.cc:
+     - deal with empty files 
+   * Applied patch from Daniel Schepler to make apt bin-NMU able.  
+     (closes: bug#359634)
+   * rebuild against current g++ because of:
+     http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29289
+     (closes: #390189)
+   * fix broken i18n in the dpkg progress reporting, thanks to 
+     Frans Pop and Steinar Gunderson. (closes: #389261)
+   * Merged from Christian Perrier bzr branch:
+     * fi.po: Updated to 514t. Closes: #390149
+     * eu.po: Updated to 514t. Closes: #389725
+     * vi.po: Updated to 514t. Closes: #388555
+   * make the internal buffer in pkgTagFile grow dynamically
+     (closes: #388708)
+   
+  -- Michael Vogt <mvo@debian.org>  Mon,  2 Oct 2006 20:42:20 +0200
+ apt (0.6.46) unstable; urgency=low
+   * debian/control:
+     - switched to libdb4.4 for building (closes: #381019)
    * cmdline/apt-get.cc:
 -    - show only the recommends/suggests for the candidate-version, not for all
 -      versions of the package (closes: #257054)
 -    - properly handle recommends/suggests or-groups when printing the list of
 -      suggested/recommends packages (closes: #311619)
 +    - fix in the TryInstallTask() code to make sure that all package
 +      there are marked manual install (lp: #61684)
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Thu, 28 Sep 2006 00:34:20 +0200
 +
 +apt (0.6.45ubuntu13) edgy; urgency=low
 +
 +  * no-changes upload to make apt rebuild against latest g++ and
 +    fix synaptic FTBFS (see bug: #62461 for details)
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Tue, 26 Sep 2006 22:33:10 +0200
 +
 +apt (0.6.45ubuntu12) edgy; urgency=low
 +
 +  * apt-pkg/depcache.cc:
 +    - fix in the sweep() code, set garbage flag for packages scheduled 
 +      for removal too
 +    - do not change the autoFlag in MarkKeep(), this can lead to suprising
 +      side effects
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Thu, 21 Sep 2006 00:58:24 +0200
 +
 +apt (0.6.45ubuntu11) edgy; urgency=low
 +
 +  * removed "installtask" and change it so that tasknames can be given
 +    with "apt-get install taskname^"
 +  * improve the writeStateFile() code
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Wed, 20 Sep 2006 14:14:24 +0200
 +
 +apt (0.6.45ubuntu10) edgy; urgency=low
 +
    * methods/http.cc:
      - check more careful for incorrect proxy settings (closes: #378868)
    * methods/gzip.cc:
    * doc/examples/sources.list:
      - removed non-us.debian.org from the example (closes: #380030,#316196)
    * Merged from Christian Perrier bzr branch:
+     * ro.po: Updated to 514t. Closes: #388402
+     * dz.po: Updated to 514t. Closes: #388184
+     * it.po: Fixed typos. Closes: #387812
+     * ku.po: New kurdish translation. Closes: #387766
      * sk.po: Updated to 514t. Closes: #386851
      * ja.po: Updated to 514t. Closes: #386537
      * gl.po: Updated to 514t. Closes: #386397
        caseinsensitive (closes: #384182)
      - reverted MMap use in the tagfile because it does not work 
        across pipes (closes: #383487) 
 +  * added "installtask" command
 +  * added new ubuntu specific rewrite rule for "Original-Maintainer"
    
 - -- Michael Vogt <mvo@debian.org>  Thu, 21 Sep 2006 10:25:03 +0200
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Tue, 19 Sep 2006 15:07:51 +0200
 +
 +apt (0.6.45ubuntu9) edgy; urgency=low
 +
 +  * cmdline/apt-get.cc:
 +    - if --no-remove is given, do not run the AutoRemove code 
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Wed, 13 Sep 2006 11:54:20 +0200
 +
 +apt (0.6.45ubuntu8) edgy; urgency=low
 +
 +  * apt-pkg/algorithm.cc:
 +    - fix pkgProblemResolver.InstallProtect() to preserve the auto-install
 +      information (lp: #59457)
 +  * cmdline/apt-get.cc:
 +    - fix typo in autoremove information (lp: #59420)
 +  * install apt-mark to modify the automatically install information for
 +    packages
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Fri,  8 Sep 2006 20:07:22 +0200
 +
 +apt (0.6.45ubuntu7) edgy; urgency=low
 +
 +  * apt-pkg/depcache.cc:
 +    - fix a bug in the install-recommends-section code
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Thu,  7 Sep 2006 18:22:38 +0200
 +
 +apt (0.6.45ubuntu6) edgy; urgency=low
 +
 +  [Michael Vogt]
 +  * cmdline/apt-get.cc:
 +    - always show auto-removable packages and give a hint how to remove 
 +      them
 +  * debian/apt.conf.ubuntu:
 +    - exlucde linux-image and linux-restricted-modules from ever being 
 +      auto-removed
 +    - added "metapackages" as the section we want to install recommends
 +      by default
 +  * apt-pkg/depcache.cc:
 +    - added support to turn install-recommends selectively on/off by
 +      section
 +  [Ian Jackson]
 +  * Tests pass without code changes!  Except that we need this:
 +  * Bump cache file major version to force rebuild so that Breaks
 +    dependencies are included.
 +  * Don't depend on or suggest any particular dpkg or dpkg-dev versions;
 +    --auto-deconfigure is very very old and dpkg-dev's Breaks support
 +    is more or less orthogonal.
 +  * Initial draft of `Breaks' implementation.  Appears to compile,
 +    but as yet *completely untested*.
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Thu,  7 Sep 2006 11:50:52 +0200
 +
 +apt (0.6.45ubuntu5) edgy; urgency=low
 +
 +  * apt-pkg/pkgcachegen.cc:
 +    - increase the APT::Cache-Limit to deal with the increased demand due
 +      to the translated descriptions
 +  * apt-pkg/deb/dpkgpm.cc:
 +    - pass "--auto-deconfigure" to dpkg on install to support the
 +      new "breaks" in dpkg
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Tue, 15 Aug 2006 12:06:26 +0200
 +
 +apt (0.6.45ubuntu4) edgy; urgency=low
 +
 +  * cmdline/apt-get.cc:
 +    - fix in the new --fix-polciy code
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Mon, 14 Aug 2006 21:08:11 +0200
 +
 +apt (0.6.45ubuntu3) edgy; urgency=low
 +
 +  * ABI break
 +  * merged latest apt--install-recommends (closes: #559000)
 +  * added "--fix-policy" option to can be used as "--fix-broken" and
 +    will install missing weak depends (recommends, and/or suggests 
 +    depending on the settings)
 +  * merged the apt--ddtp branch
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Fri, 11 Aug 2006 12:53:23 +0200
 +
 +apt (0.6.45ubuntu2) edgy; urgency=low
 +
 +  * debian/control:
 +    - switched to libdb4.4 for building (closes: #381019)
 +  * cmdline/apt-get.cc:
 +    - show only the recommends/suggests for the candidate-version, not for all
 +      versions of the package (closes: #257054)
 +    - properly handle recommends/suggests or-groups when printing the list of
 +      suggested/recommends packages (closes: #311619)
 +  * merged "apt--install-recommends" branch:
 +    - added "{no-}install-recommends" commandline option
 +    - added APT::Install-{Recommends,Suggests} option
 +    - currently Install-Recommends defaults to "False" 
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Wed,  9 Aug 2006 23:38:46 +0200
 +
 +apt (0.6.45ubuntu1) edgy; urgency=low
 +
 +  * merged with debian/unstable
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Tue,  1 Aug 2006 15:43:22 +0200
  
  apt (0.6.45) unstable; urgency=low
  
  
   -- Michael Vogt <mvo@debian.org>  Thu, 27 Jul 2006 00:52:05 +0200
  
 -apt  (0.6.44.2) unstable; urgency=low 
 +apt (0.6.44.2ubuntu4) edgy; urgency=low
 +
 +  * Make apt-get dselect-upgrade happy again
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Fri, 21 Jul 2006 11:03:02 +0200
 +
 +apt (0.6.44.2ubuntu3) edgy; urgency=low
 +
 +  * Close extended_states file after writing it.
 +
 + -- Colin Watson <cjwatson@ubuntu.com>  Tue, 18 Jul 2006 00:12:13 +0100
 +
 +apt (0.6.44.2ubuntu2) edgy; urgency=low
 +
 +  * create a empty extended_states file if none exists already
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Tue,  4 Jul 2006 09:23:03 +0200
 +
 +apt (0.6.44.2ubuntu1) edgy; urgency=low
 +
 +  * merged with debian/unstable
 +  * merged the "auto-mark" branch to support aptitude like
 +    marking of automatically installed dependencies and added
 +    "apt-get remove --auto-remove" to remove unused auto-installed
 +    packages again
 +  * changed library version from 3.11 to 3.50 to make it clearly 
 +    different from the debian version (we are ABI incompatible because
 +    of the auto-mark patch)
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Mon,  3 Jul 2006 18:30:46 +0200
 +
 +apt  (0.6.44.2) unstable; urgency=low
    
     * apt-pkg/depcache.cc:
       - added Debug::pkgDepCache::AutoInstall (thanks to infinity)
@@@ -311,26 -235,6 +418,26 @@@ apt (0.6.44) unstable; urgency=lo
    
   -- Michael Vogt <mvo@debian.org>  Mon,  8 May 2006 22:28:53 +0200
  
 +apt (0.6.43.3ubuntu3) dapper; urgency=low
 +
 +  * methods/http.cc:
 +    - fix the user-agent string
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Fri, 26 May 2006 18:09:32 +0200
 +
 +apt (0.6.43.3ubuntu2) dapper; urgency=low
 +
 +  * apt-pkg/deb/dpkgpm.cc: wording fixes (thanks to Matt Zimmerman)
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Tue, 18 Apr 2006 13:24:40 +0200
 +
 +apt (0.6.43.3ubuntu1) dapper; urgency=low
 +
 +  * apt-pkg/acquire.cc: don't show ETA if it is 0 or absurdely large in 
 +    the status-fd (ubuntu #28954)
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Tue, 28 Mar 2006 20:34:46 +0200
 +
  apt (0.6.43.3) unstable; urgency=low
  
    * Merge bubulle@debian.org--2005/apt--main--0 up to patch-186:
      * pl.po: Completed to 512t. Closes: #349514
      * sk.po: Completed to 512t. Closes: #349474
      * gl.po: Completed to 512 strings Closes: #349407
 +    * vi.po: Completed to 512 strings
      * sv.po: Completed to 512 strings Closes: #349210
      * ru.po: Completed to 512 strings Closes: #349154
      * da.po: Completed to 512 strings Closes: #349084
      * fr.po: Completed to 512 strings
 +    * LINGUAS: Add Welsh
 +    * *.po: Updated from sources (512 strings)
      * vi.po: Completed to 511 strings  Closes: #348968
 -    * zh_CN.po: Completed to 512t. Closes: #353936
 -    * it.po: Completed to 512t. Closes: #352803
 -    * pt_BR.po: Completed to 512t. Closes: #352419
 +  * apt-pkg/deb/deblistparser.cc:
 +    - don't explode on a DepCompareOp in a Provides line, but warn about
 +      it and ignore it otherwise (thanks to James Troup for reporting it)
 +  * cmdline/apt-get.cc:
 +    - don't lock the lists directory in DoInstall, breaks --print-uri 
 +      (thanks to James Troup for reporting it)
 +  * debian/apt.dirs: create /etc/apt/sources.list.d 
 +  * make apt-cache madison work without deb-src entries (#352583)
 +  * cmdline/apt-get.cc: only run the list-cleaner if a update was 
 +    successfull
 +  * apt-get update errors are only warnings nowdays
 +  * be more careful with the signature file on network failures
 +
 + --  Michael Vogt <mvo@debian.org>  Wed, 22 Feb 2006 10:13:04 +0100
 +
 +apt (0.6.43.2ubuntu1) dapper; urgency=low
 +
 +  * Merge bubulle@debian.org--2005/apt--main--0 up to patch-182:
 +  * ca.po: Completed to 512t. Closes: #351592
 +    * eu.po: Completed to 512t. Closes: #350483
 +    * ja.po: Completed to 512t. Closes: #349806
 +    * pl.po: Completed to 512t. Closes: #349514
 +    * sk.po: Completed to 512t. Closes: #349474
 +    * gl.po: Completed to 512 strings Closes: #349407
 +    * vi.po: Completed to 512 strings
 +    * sv.po: Completed to 512 strings Closes: #349210
 +    * ru.po: Completed to 512 strings Closes: #349154
 +    * da.po: Completed to 512 strings Closes: #349084
 +    * fr.po: Completed to 512 strings
      * LINGUAS: Add Welsh
      * *.po: Updated from sources (512 strings)
 +    * vi.po: Completed to 511 strings  Closes: #348968
    * apt-pkg/deb/deblistparser.cc:
      - don't explode on a DepCompareOp in a Provides line, but warn about
        it and ignore it otherwise (thanks to James Troup for reporting it)
    * make apt-cache madison work without deb-src entries (#352583)
    * cmdline/apt-get.cc: only run the list-cleaner if a update was 
      successfull
 +  * apt-get update errors are only warnings nowdays
 +  * be more careful with the signature file on network failures
  
 - -- Michael Vogt <mvo@debian.org>  Wed, 22 Feb 2006 10:13:04 +0100
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Mon, 20 Feb 2006 22:27:48 +0100
  
  apt (0.6.43.2) unstable; urgency=low
  
  
   -- Michael Vogt <mvo@debian.org>  Thu, 19 Jan 2006 00:06:33 +0100
  
 -apt (0.6.43.1) unstable; urgency=low
 +apt (0.6.43.1ubuntu1) dapper; urgency=low
 +
 +  * Merge bubulle@debian.org--2005/apt--main--0 up to patch-159:
 +    - en_GB.po, de.po: fix spaces errors in "Ign " translations
 +      Closes: #347258
 +    - makefile: make update-po a pre-requisite of clean target so
 +              that POT and PO files are always up-to-date
 +    - sv.po: Completed to 511t. Closes: #346450
 +    - sk.po: Completed to 511t. Closes: #346369
 +    - fr.po: Completed to 511t
 +    - *.po: Updated from sources (511 strings)
 +  * add patch to fix http download corruption problem (thanks to
 +    Petr Vandrovec, closes: #280844, #290694)
 +  * added APT::Periodic::Unattended-Upgrade (requires the package
 +    "unattended-upgrade")
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Tue, 10 Jan 2006 17:09:31 +0100
  
 +apt (0.6.43.1) unstable; urgency=low
 +  
    * Merge bubulle@debian.org--2005/apt--main--0 up to patch-148:
      * fr.po: Completed to 510 strings
      * it.po: Completed to 510t
  
   -- Michael Vogt <mvo@debian.org>  Fri,  6 Jan 2006 01:17:08 +0100
  
 +apt (0.6.43ubuntu2) dapper; urgency=low
 +
 +  * merged some missing bits that wheren't merged by baz in the previous
 +    upload (*grumble*)
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Thu,  8 Dec 2005 18:35:58 +0100
 +
 +apt (0.6.43ubuntu1) dapper; urgency=low
 +
 +  * merged with debian
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Fri, 25 Nov 2005 11:36:29 +0100
 +
  apt (0.6.43) unstable; urgency=medium
  
    * Merge bubulle@debian.org--2005/apt--main--0 up to patch-132:  
    
   -- Michael Vogt <mvo@debian.org>  Tue, 29 Nov 2005 00:17:07 +0100
  
 +apt (0.6.42.3ubuntu2) dapper; urgency=low
 +
 +  * Merge bubulle@debian.org--2005/apt--main--0 up to patch-131:  
 +    * zh_CN.po: Completed to 507 strings(Closes: #338267)
 +    * gl.po: Completed to 510 strings (Closes: #338356)
 +  * added support for "/etc/apt/sources.list.d" directory 
 +    (closes: #66325)
 +  
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Mon, 14 Nov 2005 15:30:12 +0100
 +
 +apt (0.6.42.3ubuntu1) dapper; urgency=low
 +
 +  * synced with debian
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Thu, 10 Nov 2005 05:05:56 +0100
 +
  apt (0.6.42.3) unstable; urgency=low
  
    * Merge bubulle@debian.org--2005/apt--main--0 up to patch-129:
@@@ -555,13 -380,13 +662,13 @@@ apt (0.6.42) unstable; urgency=lo
      - unmount the cdrom when apt failed to locate any package files
    * allow cdrom failures and fallback to other sources in that case
      (closes: #44135)
 -  * better error text when dpkg-source fails 
 +  * better error text when dpkg-source fails
    * Merge bubulle@debian.org--2005/apt--main--0 up to patch-115:
      - patch-99: Added Galician translation
      - patch-100: Completed Danish translation (Closes: #325686)
      - patch-104: French translation completed
      - patch-109: Italian translation completed
 -    - patch-112: Swedish translation update 
 +    - patch-112: Swedish translation update
      - patch-115: Basque translation completed (Closes: #333299)
    * applied french man-page update (thanks to Philippe Batailler)
      (closes: #316638, #327456)
    * apt-pkg/contrib/md5.cc:
      - fix a alignment problem on sparc64 that gives random bus errors
        (thanks to Fabbione for providing a test-case)
 -  * init the default ScreenWidth to 79 columns by default 
 +  * init the default ScreenWidth to 79 columns by default
      (Closes: #324921)
 -  * cmdline/apt-cdrom.cc: 
 +  * cmdline/apt-cdrom.cc:
      - fix some missing gettext() calls (closes: #334539)
    * doc/apt-cache.8.xml: fix typo (closes: #334714)
 -  
 +
   -- Michael Vogt <mvo@debian.org>  Wed, 19 Oct 2005 22:02:09 +0200
  
  apt (0.6.41) unstable; urgency=low
    * improved the support for "error" and "conffile" reporting from
      dpkg, added the format to README.progress-reporting
    * added README.progress-reporting to the apt-doc package
 -  * improved the network timeout handling, if a index file from a 
 -    sources.list times out or EAI_AGAIN is returned from getaddrinfo, 
 +  * improved the network timeout handling, if a index file from a
 +    sources.list times out or EAI_AGAIN is returned from getaddrinfo,
      don't try to get the other files from that entry
    * Support architecture-specific extra overrides
      (closes: #225947). Thanks to  Anthony Towns for idea and
    * Javier Fernandez-Sanguino Pen~a:
      - Added a first version of an apt-secure.8 manpage, and modified
        apt-key and apt.end accordingly. Also added the 'update'
 -      argument to apt-key which was previously not documented 
 +      argument to apt-key which was previously not documented
        (Closes: #322120)
    * Andreas Pakulat:
 -    - added example apt-ftparchive.conf file to doc/examples 
 +    - added example apt-ftparchive.conf file to doc/examples
        (closes: #322483)
    * Fix a incorrect example in the man-page (closes: #282918)
    * Fix a bug for very long lines in the apt-cdrom code (closes: #280356)
    * Change pkgPolicy::Pin from private to protected to let subclasses
      access it too (closes: #321799)
    * add default constructor for PrvIterator (closes: #322267)
 -  * Reread status configuration on debSystem::Initialize() 
 +  * Reread status configuration on debSystem::Initialize()
      (needed for apt-proxy, thanks to Otavio for this patch)
 -  
 +
   -- Michael Vogt <mvo@debian.org>  Mon,  5 Sep 2005 22:59:03 +0200
 +  
 +apt (0.6.40.1ubuntu8) breezy; urgency=low
 +
 +  * Cherry picked michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-62:
 +    - fix for a bad memory/file leak in the mmap code (ubuntu #15603)
 +  * po/de.po, po/fr.po: 
 +    - updated the translations
 +  * po/makefile:
 +    - create a single pot file in each domain dir to make rosetta happy
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Wed, 28 Sep 2005 10:16:06 +0200
 +
 +apt (0.6.40.1ubuntu7) breezy; urgency=low
 +
 +  * updated the pot/po files , no code changes
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Tue, 27 Sep 2005 18:38:16 +0200
 +
 +apt (0.6.40.1ubuntu6) breezy; urgency=low
 +
 +  * Cherry picked michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-56:
 +    - make it possible for apt to handle a failed MediaChange event and
 +      fall back to other sources (ubuntu #13713)
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Tue, 13 Sep 2005 22:09:50 +0200
 +
 +apt (0.6.40.1ubuntu5) breezy; urgency=low
 +
 +  * Cherry picked michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-{50,51}.
 +    This adds media-change reporting to the apt status-fd (ubuntu #15213)
 +  * Cherry picked michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-55:
 +    apt-pkg/cdrom.cc:
 +    - unmount the cdrom when apt failed to locate any package files
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Mon, 12 Sep 2005 15:44:26 +0200
 +
 +apt (0.6.40.1ubuntu4) breezy; urgency=low
 +
 +  * debian/apt.cron.daily:
 +    - fix a embarrassing typo
 +  
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Wed,  7 Sep 2005 10:10:37 +0200
 +
 +apt (0.6.40.1ubuntu3) breezy; urgency=low
 +
 +  * debian/apt.cron.daily:
 +    - use the ctime as well when figuring what packages need to
 +      be removed. This fixes the problem that packages copied with    
 +      "cp -a" (e.g. from the installer) have old mtimes (ubuntu #14504)
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Tue,  6 Sep 2005 18:30:46 +0200
 +
 +apt (0.6.40.1ubuntu2) breezy; urgency=low
 +
 +  * improved the support for "error" and "conffile" reporting from
 +    dpkg, added the format to README.progress-reporting
 +  * added README.progress-reporting to the apt-doc package
 +  * Do md5sum checking for file and cdrom method (closes: #319142)
 +  * Change pkgPolicy::Pin from private to protected to let subclasses
 +    access it too (closes: #321799)
 +  * methods/connect.cc:
 +    - send failure reason for EAI_AGAIN (TmpResolveFailure) to acuire-item
 +  * apt-pkg/acquire-item.cc:
 +    - fail early if a FailReason is TmpResolveFailure (avoids hangs during
 +      the install when no network is available)
 +  * merged michael.vogt@ubuntu.com--2005/apt--trust-cdrom--0
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Tue, 23 Aug 2005 19:44:55 +0200
 +
 +apt (0.6.40.1ubuntu1) breezy; urgency=low
 +
 +  * Synchronize with Debian
 +
 + -- Michael Vogt <michael.vogt@ubuntu.com>  Fri,  5 Aug 2005 14:20:56 +0200
  
  apt (0.6.40.1) unstable; urgency=low
  
  
   -- Michael Vogt <mvo@debian.org>  Fri,  5 Aug 2005 13:24:58 +0200
  
 +apt (0.6.40ubuntu1) breezy; urgency=low
 +
 +  * Synchronize with Debian
 +
 + -- Matt Zimmerman <mdz@ubuntu.com>  Thu,  4 Aug 2005 15:53:22 -0700
 +
  apt (0.6.40) unstable; urgency=low
  
    * Patch from Jordi Mallach to mark some additional strings for translation
  
   -- Matt Zimmerman <mdz@debian.org>  Thu, 28 Jul 2005 11:57:32 -0700
  
 +apt (0.6.39ubuntu4) breezy; urgency=low
 +
 +  * Fix keyring paths in apt-key, apt.postinst (I swear I remember doing this
 +    before...)
 +
 + -- Matt Zimmerman <mdz@ubuntu.com>  Wed, 29 Jun 2005 08:39:17 -0700
 +
 +apt (0.6.39ubuntu3) breezy; urgency=low
 +
 +  * Fix keyring locations for Ubuntu in apt-key too.
 +
 + -- Colin Watson <cjwatson@ubuntu.com>  Wed, 29 Jun 2005 14:45:36 +0100
 +
 +apt (0.6.39ubuntu2) breezy; urgency=low
 +
 +  * Install ubuntu-archive.gpg rather than debian-archive.gpg as
 +    /etc/apt/trusted.gpg.
 +
 + -- Colin Watson <cjwatson@ubuntu.com>  Wed, 29 Jun 2005 11:53:34 +0100
 +
 +apt (0.6.39ubuntu1) breezy; urgency=low
 +
 +  * Michael Vogt
 +    - Change debian/bugscript to use #!/bin/bash (Closes: #313402)
 +    - Fix a incorrect example in the man-page (closes: #282918)
 +    - Support architecture-specific extra overrides
 +      (closes: #225947). Thanks to  Anthony Towns for idea and
 +      the patch, thanks to Colin Watson for testing it.
 +    - better report network timeouts from the methods to the acuire code,
 +      only timeout once per sources.list line
 +
 + -- Matt Zimmerman <mdz@ubuntu.com>  Tue, 28 Jun 2005 11:52:24 -0700
 +
  apt (0.6.39) unstable; urgency=low
  
    * Welsh translation update: daf@muse.19inch.net--2005/apt--main--0--patch-6
    * Update priority of apt-utils to important, to match the override file
    * Install only one keyring on each branch (Closes: #316119)
  
 - -- Matt Zimmerman <mdz@debian.org>  Tue, 28 Jun 2005 11:51:09 -0700
 + -- Matt Zimmerman <mdz@debian.org>  Tue, 28 Jun 2005 11:35:21 -0700
 +
 +apt (0.6.38ubuntu1) breezy; urgency=low
 +
 +  * First release from Ubuntu branch
 +  * Merge with --main--0, switch back to Ubuntu keyring
 +
 + -- Matt Zimmerman <mdz@ubuntu.com>  Sat, 25 Jun 2005 16:52:41 -0700
  
  apt (0.6.38) unstable; urgency=low
  
@@@ -800,7 -505,6 +907,7 @@@ apt (0.6.37) breezy; urgency=lo
    * Add Welsh translation from Dafydd Harries
      (daf@muse.19inch.net--2005/apt--main--0--patch-1)
    * Change debian/bugscript to use #!/bin/bash (Closes: #313402)
 +  * Fix a incorrect example in the man-page (closes: #282918)
  
   -- Matt Zimmerman <mdz@ubuntu.com>  Tue, 24 May 2005 14:38:25 -0700
  
diff --combined debian/rules
index 2007370c45fb01526ea709c9f8f98beca00d49f7,02ee734bb24c71580e82583cabb8bb7de755ed96..1d405779a8c9d43398945eede8af5d197f5a7172
@@@ -38,7 -38,7 +38,7 @@@ build
  
  PKG=apt
  DEB_BUILD_PROG:=debuild --preserve-envvar PATH --preserve-envvar CCACHE_DIR -us -uc $(DEB_BUILD_PROG_OPTS)
- APT_DEBVER=$(shell dpkg-parsechangelog |sed -n -e '/^Version:/s/^Version: //p')
+ APT_DEBVER=$(shell dpkg-parsechangelog |sed -n -e '/^Version:/s/^Version: //p' -e 's/\+.*$$//')
  APT_CONFVER=$(shell sed -n -e 's/^AC_DEFINE_UNQUOTED(VERSION,"\(.*\)")/\1/p' configure.in)
  APT_CVSTAG=$(shell echo "$(APT_DEBVER)" | sed -e 's/^/v/' -e 's/\./_/g')
  
@@@ -210,15 -210,10 +210,15 @@@ apt: build debian/shlibs.loca
  
        cp debian/bugscript debian/$@/usr/share/bug/apt/script
  
 -      cp share/debian-archive.gpg debian/$@/usr/share/$@
 -
 +      cp share/ubuntu-archive.gpg debian/$@/usr/share/$@
 +      cp debian/apt.conf.ubuntu debian/$@/etc/apt/apt.conf.d/01ubuntu
  #     head -n 500 ChangeLog > debian/ChangeLog
  
 +      # make rosetta happy and remove pot files in po/ (but leave stuff
 +      # in po/domains/* untouched) and cp *.po into each domain dir
 +      rm -f build/po/*.pot
 +      rm -f po/*.pot
 +
        dh_installexamples -p$@ $(BLD)/docs/examples/*
        dh_installman -p$@ 
        dh_installcron -p$@
@@@ -343,4 -338,4 +343,4 @@@ arch-build
        mkdir -p debian/arch-build/apt-$(APT_DEBVER)
        tar -c --exclude=arch-build --no-recursion -f - `bzr inventory` | (cd debian/arch-build/$(PKG)-$(APT_DEBVER);tar xf -)
        $(MAKE) -C debian/arch-build/apt-$(APT_DEBVER) startup doc
 -      (cd debian/arch-build/apt-$(APT_DEBVER); $(DEB_BUILD_PROG))
 +      (cd debian/arch-build/apt-$(APT_DEBVER); $(DEB_BUILD_PROG); dpkg-genchanges -S > ../apt_$(APT_DEBVER)_source.changes)
diff --combined doc/apt-get.8.xml
index db852d0077bcbfe2a5408629728b51b9e2624e55,17f663a3519db91f23687291877b3b7c67f53917..3c245b83bc6092c92e8f0b018755f9fd3bc31fe9
@@@ -47,7 -47,6 +47,7 @@@
           <arg>check</arg>
           <arg>clean</arg>
           <arg>autoclean</arg>
 +         <arg>autoremove</arg>
        </group>   
     </cmdsynopsis>
   </refsynopsisdiv>
       <literal>APT::Clean-Installed</literal> will prevent installed packages from being
       erased if it is set to off.</para></listitem>
       </varlistentry>
 +
 +     <varlistentry><term>autoremove</term>
 +     <listitem><para><literal>autoremove</literal> is used to remove packages that were automatically
 +     installed to satisfy dependencies for some package and that are no more needed.</para></listitem>
 +     </varlistentry>
     </variablelist>
   </refsect1>
   
       Configuration Item: <literal>APT::Get::Remove</literal>.</para></listitem>
       </varlistentry>
  
 +     <varlistentry><term><option>--auto-remove</option></term>
 +     <listitem><para>If the command is either <literal>install</literal> or <literal>remove</literal>,
 +     then this option acts like running <literal>autoremove</literal> command, removing the unused
 +     dependency packages. Configuration Item: <literal>APT::Get::AutomaticRemove</literal>.
 +     </para></listitem>
 +     </varlistentry>
 +
       <varlistentry><term><option>--only-source</option></term>
       <listitem><para>Only has meaning for the
       <literal>source</literal> and <literal>build-dep</literal>
  
   <refsect1><title>See Also</title>
     <para>&apt-cache;, &apt-cdrom;, &dpkg;, &dselect;, &sources-list;,
-    &apt-conf;, &apt-config;,
+    &apt-conf;, &apt-config;, &apt-secure;, 
     The APT User's guide in &guidesdir;, &apt-preferences;, the APT Howto.</para>
   </refsect1>
  
index 5b3c1a55c1496be45ca55860067a91da0606f26d,73e20aa435c7be50c4871cd7b7bf154e05c9640b..55edd77e5ddc9cc25bb3e95e62edcbf4fe0467bf
@@@ -24,15 -24,11 +24,15 @@@ AP
  {
    Architecture "i386";
    Build-Essential "build-essential";
 -  
 +
 +  NeverAutoRemove  { "linux-kernel.*";  };  // packages that should never
 +                                            // considered for autoRemove
 +
    // Options for apt-get
    Get 
    {
       Arch-Only "false";
 +     AutomaticRemove "false";       
       Download-Only "false";
       Simulate "false";
       Assume-Yes "false";
    Cache-Limit "4194304";
    Default-Release "";
  
 +  // consider Recommends, Suggests as important dependencies that should
 +  // be installed by default
 +  APT::Install-Recommends "false";
 +  APT::Install-Suggests "false";
  
    // Write progress messages on this fd (for stuff like base-config)
    Status-Fd "-1";
@@@ -245,6 -237,10 +245,10 @@@ DPk
     // Control the size of the command line passed to dpkg.
     MaxBytes 1024;
     MaxArgs 350;
+    // controls if apt will apport on the first dpkg error or if it 
+    // tries to install as many packages as possible
+    StopOnError "true";
  }
  
  /* Options you can set to see some debugging text They correspond to names
@@@ -259,8 -255,8 +263,8 @@@ Debu
    pkgDPkgPM "false";
    pkgDPkgProgressReporting "false";
    pkgOrderList "false";
 +  pkgAutoRemove "false";   // show information about automatic removes
 -  
+   BuildDeps "false";
    pkgInitialize "false";   // This one will dump the configuration space
    NoLocking "false";
    Acquire::Ftp "false";    // Show ftp command traffic