summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apt-pkg/acquire-item.cc2
-rw-r--r--apt-pkg/deb/debsrcrecords.cc28
-rw-r--r--apt-pkg/deb/debsrcrecords.h10
-rw-r--r--apt-pkg/deb/dpkgpm.cc66
-rw-r--r--apt-pkg/tagfile.cc119
-rw-r--r--apt-pkg/tagfile.h9
-rw-r--r--buildlib/apti18n.h.in2
-rw-r--r--configure.in4
-rw-r--r--debian/changelog149
-rwxr-xr-xdebian/rules2
-rw-r--r--doc/apt-get.8.xml2
-rw-r--r--doc/apt.83
-rw-r--r--doc/examples/configure-index6
-rw-r--r--doc/examples/sources.list12
-rw-r--r--doc/fr/apt-get.fr.8.xml4
-rw-r--r--doc/fr/apt_preferences.fr.5.xml4
-rw-r--r--doc/fr/makefile2
-rw-r--r--doc/fr/style.fr.xsl9
-rw-r--r--doc/ja/sources.list.ja.5.xml2
-rw-r--r--doc/ja/style.ja.xsl4
-rw-r--r--methods/gzip.cc8
-rw-r--r--methods/http.cc2
-rw-r--r--po/ChangeLog146
-rw-r--r--po/LINGUAS2
24 files changed, 401 insertions, 196 deletions
diff --git a/apt-pkg/acquire-item.cc b/apt-pkg/acquire-item.cc
index 2ecb77814..94288a132 100644
--- a/apt-pkg/acquire-item.cc
+++ b/apt-pkg/acquire-item.cc
@@ -672,7 +672,7 @@ bool pkgAcqMetaIndex::VerifyVendor(string Message)
// 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)
diff --git a/apt-pkg/deb/debsrcrecords.cc b/apt-pkg/deb/debsrcrecords.cc
index cac36c2e6..7d5dab747 100644
--- a/apt-pkg/deb/debsrcrecords.cc
+++ b/apt-pkg/deb/debsrcrecords.cc
@@ -18,6 +18,8 @@
#include <apt-pkg/error.h>
#include <apt-pkg/strutl.h>
#include <apt-pkg/configuration.h>
+
+using std::max;
/*}}}*/
// SrcRecordParser::Binaries - Return the binaries field /*{{{*/
@@ -34,31 +36,19 @@ const char **debSrcRecordParser::Binaries()
if (Bins.empty() == true || Bins.length() >= 102400)
return 0;
- // Workaround for #236688. Only allocate a new buffer if the field
- // is large, to avoid a performance penalty
- char *BigBuf = NULL;
- char *Buf;
- if (Bins.length() > sizeof(Buffer))
- {
- BigBuf = new char[Bins.length()];
- Buf = BigBuf;
- }
- else
+ if (Bins.length() >= BufSize)
{
- Buf = Buffer;
+ delete [] Buffer;
+ // allocate new size based on buffer (but never smaller than 4000)
+ BufSize = max((unsigned int)4000, max((unsigned int)Bins.length()+1,2*BufSize));
+ Buffer = new char[BufSize];
}
- strcpy(Buf,Bins.c_str());
- if (TokSplitString(',',Buf,StaticBinList,
+ strcpy(Buffer,Bins.c_str());
+ if (TokSplitString(',',Buffer,StaticBinList,
sizeof(StaticBinList)/sizeof(StaticBinList[0])) == false)
- {
- if (BigBuf != NULL)
- delete BigBuf;
return 0;
- }
- if (BigBuf != NULL)
- delete BigBuf;
return (const char **)StaticBinList;
}
/*}}}*/
diff --git a/apt-pkg/deb/debsrcrecords.h b/apt-pkg/deb/debsrcrecords.h
index f899993df..7645dc564 100644
--- a/apt-pkg/deb/debsrcrecords.h
+++ b/apt-pkg/deb/debsrcrecords.h
@@ -24,9 +24,10 @@ class debSrcRecordParser : public pkgSrcRecords::Parser
FileFd Fd;
pkgTagFile Tags;
pkgTagSection Sect;
- char Buffer[10000];
char *StaticBinList[400];
unsigned long iOffset;
+ char *Buffer;
+ unsigned int BufSize;
public:
@@ -49,10 +50,9 @@ class debSrcRecordParser : public pkgSrcRecords::Parser
};
virtual bool Files(vector<pkgSrcRecords::File> &F);
- debSrcRecordParser(string File,pkgIndexFile const *Index) :
- Parser(Index),
- Fd(File,FileFd::ReadOnly),
- Tags(&Fd,102400) {};
+ debSrcRecordParser(string File,pkgIndexFile const *Index)
+ : Parser(Index), Fd(File,FileFd::ReadOnly), Tags(&Fd,102400),
+ Buffer(0), BufSize(0) {}
};
#endif
diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc
index 93dff390d..cebdafe7d 100644
--- a/apt-pkg/deb/dpkgpm.cc
+++ b/apt-pkg/deb/dpkgpm.cc
@@ -355,28 +355,28 @@ bool pkgDPkgPM::Go(int OutStatusFd)
static const struct DpkgState DpkgStatesOpMap[][5] = {
// Install operation
{
- {"half-installed", _("Preparing %s")},
- {"unpacked", _("Unpacking %s") },
+ {"half-installed", N_("Preparing %s")},
+ {"unpacked", N_("Unpacking %s") },
{NULL, NULL}
},
// Configure operation
{
- {"unpacked",_("Preparing to configure %s") },
- {"half-configured", _("Configuring %s") },
- { "installed", _("Installed %s")},
+ {"unpacked",N_("Preparing to configure %s") },
+ {"half-configured", N_("Configuring %s") },
+ { "installed", N_("Installed %s")},
{NULL, NULL}
},
// Remove operation
{
- {"half-configured", _("Preparing for removal of %s")},
- {"half-installed", _("Removing %s")},
- {"config-files", _("Removed %s")},
+ {"half-configured", N_("Preparing for removal of %s")},
+ {"half-installed", N_("Removing %s")},
+ {"config-files", N_("Removed %s")},
{NULL, NULL}
},
// Purge operation
{
- {"config-files", _("Preparing to completely remove %s")},
- {"not-installed", _("Completely removed %s")},
+ {"config-files", N_("Preparing to completely remove %s")},
+ {"not-installed", N_("Completely removed %s")},
{NULL, NULL}
},
};
@@ -626,15 +626,22 @@ bool pkgDPkgPM::Go(int OutStatusFd)
*/
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)
{
@@ -672,7 +679,7 @@ bool pkgDPkgPM::Go(int OutStatusFd)
{
// only read the translation if there is actually a next
// action
- const char *translation = states[PackageOpsDone[pkg]].str;
+ const char *translation = _(states[PackageOpsDone[pkg]].str);
char s[200];
snprintf(s, sizeof(s), translation, pkg);
@@ -706,14 +713,23 @@ bool pkgDPkgPM::Go(int OutStatusFd)
// 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 --git a/apt-pkg/tagfile.cc b/apt-pkg/tagfile.cc
index 146829566..649c93aee 100644
--- a/apt-pkg/tagfile.cc
+++ b/apt-pkg/tagfile.cc
@@ -33,33 +33,22 @@ using std::string;
/* */
pkgTagFile::pkgTagFile(FileFd *pFd,unsigned long Size) :
Fd(*pFd),
- Size(Size),
- Map(NULL),
- Buffer(0)
+ Size(Size)
{
if (Fd.IsOpen() == false)
{
+ Buffer = 0;
Start = End = Buffer = 0;
Done = true;
iOffset = 0;
- Map = NULL;
return;
}
- // check if we can MMap it
- if(Fd.Size() == 0)
- {
- Buffer = new char[Size];
- Start = End = Buffer;
- Done = false;
- Fill();
- } else {
- Map = new MMap (Fd, MMap::Public | MMap::ReadOnly);
- Buffer = (char *) Map->Data ();
- Start = Buffer;
- End = Buffer + Map->Size ();
- }
+ Buffer = new char[Size];
+ Start = End = Buffer;
+ Done = false;
iOffset = 0;
+ Fill();
}
/*}}}*/
// TagFile::~pkgTagFile - Destructor /*{{{*/
@@ -67,30 +56,55 @@ pkgTagFile::pkgTagFile(FileFd *pFd,unsigned long Size) :
/* */
pkgTagFile::~pkgTagFile()
{
- if(!Map) delete [] Buffer;
- delete Map;
+ delete [] Buffer;
}
/*}}}*/
-// TagFile::Step - Advance to the next section /*{{{*/
+// TagFile::Resize - Resize the internal buffer /*{{{*/
// ---------------------------------------------------------------------
-/* If the Section Scanner fails we refill the buffer and try again. */
-bool pkgTagFile::Step(pkgTagSection &Tag)
+/* Resize the internal buffer (double it in size). Fail if a maximum size
+ * size is reached.
+ */
+bool pkgTagFile::Resize()
{
- if ((Map != NULL) && (Start == End))
+ char *tmp;
+ unsigned long EndSize = End - Start;
+
+ // fail is the buffer grows too big
+ if(Size > 1024*1024+1)
return false;
- if (Tag.Scan(Start,End - Start) == false)
- {
- if (Map != NULL)
- return _error->Error(_("Unable to parse package file %s (1)"),
- Fd.Name().c_str());
+ // 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 that fails too, double the buffer size and try again until a
+ * maximum buffer is reached.
+ */
+bool pkgTagFile::Step(pkgTagSection &Tag)
+{
+ 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();
@@ -158,30 +172,23 @@ bool pkgTagFile::Jump(pkgTagSection &Tag,unsigned long Offset)
return Step(Tag);
}
+ // Reposition and reload..
iOffset = Offset;
- if (Map != NULL)
- {
- Start = Buffer + iOffset;
- }
- else
- {
- // Reposition and reload..
- Done = false;
- if (Fd.Seek(Offset) == false)
- return false;
- End = Start = Buffer;
+ Done = false;
+ if (Fd.Seek(Offset) == false)
+ return false;
+ End = Start = Buffer;
- if (Fill() == false)
- return false;
+ if (Fill() == false)
+ return false;
- if (Tag.Scan(Start,End - Start) == true)
- return true;
+ if (Tag.Scan(Start,End - Start) == true)
+ return true;
+
+ // This appends a double new line (for the real eof handling)
+ if (Fill() == false)
+ return false;
- // This appends a double new line (for the real eof handling)
- if (Fill() == false)
- return false;
- }
-
if (Tag.Scan(Start,End - Start) == false)
return _error->Error(_("Unable to parse package file %s (2)"),Fd.Name().c_str());
@@ -192,12 +199,12 @@ bool pkgTagFile::Jump(pkgTagSection &Tag,unsigned long Offset)
// ---------------------------------------------------------------------
/* This looks for the first double new line in the data stream. It also
indexes the tags in the section. This very simple hash function for the
- first 3 letters gives very good performance on the debian package files */
+ last 8 letters gives very good performance on the debian package files */
inline static unsigned long AlphaHash(const char *Text, const char *End = 0)
{
unsigned long Res = 0;
for (; Text != End && *Text != ':' && *Text != 0; Text++)
- Res = (unsigned long)(*Text) ^ (Res << 2);
+ Res = ((unsigned long)(*Text) & 0xDF) ^ (Res << 1);
return Res & 0xFF;
}
@@ -207,7 +214,7 @@ bool pkgTagSection::Scan(const char *Start,unsigned long MaxLength)
Stop = Section = Start;
memset(AlphaIndexes,0,sizeof(AlphaIndexes));
- if (Stop == 0 || MaxLength == 0)
+ if (Stop == 0)
return false;
TagCount = 0;
@@ -238,12 +245,6 @@ bool pkgTagSection::Scan(const char *Start,unsigned long MaxLength)
Stop++;
}
- if ((Stop+1 >= End) && (End[-1] == '\n' || End[-1] == '\r'))
- {
- Indexes[TagCount] = (End - 1) - Section;
- return true;
- }
-
return false;
}
/*}}}*/
diff --git a/apt-pkg/tagfile.h b/apt-pkg/tagfile.h
index dd481ba51..70381ad13 100644
--- a/apt-pkg/tagfile.h
+++ b/apt-pkg/tagfile.h
@@ -25,7 +25,6 @@
#endif
#include <apt-pkg/fileutl.h>
-#include <apt-pkg/mmap.h>
#include <stdio.h>
class pkgTagSection
@@ -70,23 +69,23 @@ class pkgTagSection
class pkgTagFile
{
FileFd &Fd;
- MMap *Map;
char *Buffer;
char *Start;
char *End;
bool Done;
unsigned long iOffset;
unsigned long Size;
-
+
bool Fill();
-
+ bool Resize();
+
public:
bool Step(pkgTagSection &Section);
inline unsigned long Offset() {return iOffset;};
bool Jump(pkgTagSection &Tag,unsigned long Offset);
- pkgTagFile(FileFd *F,unsigned long Size = 64*1024);
+ pkgTagFile(FileFd *F,unsigned long Size = 32*1024);
~pkgTagFile();
};
diff --git a/buildlib/apti18n.h.in b/buildlib/apti18n.h.in
index 812457643..a5b91b1ee 100644
--- a/buildlib/apti18n.h.in
+++ b/buildlib/apti18n.h.in
@@ -14,8 +14,10 @@
# else
# define _(x) gettext(x)
# endif
+# define N_(x) x
#else
// apt will not use any gettext
# define setlocale(a, b)
# define _(x) x
+# define N_(x) x
#endif
diff --git a/configure.in b/configure.in
index a0cd8080c..81f327c37 100644
--- a/configure.in
+++ b/configure.in
@@ -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.45ubuntu5")
+AC_DEFINE_UNQUOTED(VERSION,"0.6.46.3")
PACKAGE="apt"
AC_DEFINE_UNQUOTED(PACKAGE,"$PACKAGE")
AC_SUBST(PACKAGE)
@@ -192,7 +192,7 @@ ah_GCC3DEP
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 --git a/debian/changelog b/debian/changelog
index 6e57e1bf8..254e603aa 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,58 +1,75 @@
-apt (0.6.46.3ubuntu2) feisty; urgency=low
+apt (0.6.46.4) unstable; urgency=low
- * apt-pkg/algorithms.cc: add missing call to MarkKeep
- so that dist-upgrade isn't broken by unsatisfiable Breaks.
-
- -- Ian Jackson <iwj@ubuntu.com> Thu, 7 Dec 2006 15:46:52 +0000
-
-apt (0.6.45ubuntu6) edgy; urgency=low
-
- * 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.
-
- -- Ian Jackson <iwj@ubuntu.com> Tue, 5 Sep 2006 19:50:02 +0100
-
-apt (0.6.45ubuntu6~iwj) unstable; urgency=low
-
- * Initial draft of `Breaks' implementation. Appears to compile,
- but as yet *completely untested*.
-
- -- Ian Jackson <ian@davenant.greenend.org.uk> Fri, 25 Aug 2006 15:39:07 +0100
-
-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
+ * added apt-secure.8 to "See also" section
* 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
+ - 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 (0.6.45ubuntu4) edgy; urgency=low
+ --
- * cmdline/apt-get.cc:
- - fix in the new --fix-polciy code
+apt (0.6.46.3) unstable; urgency=low
- -- Michael Vogt <michael.vogt@ubuntu.com> Mon, 14 Aug 2006 21:08:11 +0200
-
-apt (0.6.45ubuntu3) edgy; urgency=low
+ * apt-pkg/deb/dpkgpm.cc:
+ - make progress reporting robust against multiline error
+ messages
- * 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
+ * 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
- -- Michael Vogt <michael.vogt@ubuntu.com> Fri, 11 Aug 2006 12:53:23 +0200
+ * 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.45ubuntu2) edgy; urgency=low
+apt (0.6.46) unstable; urgency=low
* debian/control:
- switched to libdb4.4 for building (closes: #381019)
@@ -61,18 +78,32 @@ apt (0.6.45ubuntu2) edgy; urgency=low
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
+ * methods/http.cc:
+ - check more careful for incorrect proxy settings (closes: #378868)
+ * methods/gzip.cc:
+ - don't hang when /var is full (closes: #341537), thanks to
+ Luis Rodrigo Gallardo Cruz for the patch
+ * 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
+ * fr.po: Updated to 516t.
+ * fi.po: Updated to 512t. Closes: #382702
+ * share/archive-archive.gpg:
+ - removed the outdated amd64 and debian-2004 keys
+ * apt-pkg/tagfile.cc:
+ - applied patch from Jeroen van Wolffelaar to make the tags
+ caseinsensitive (closes: #384182)
+ - reverted MMap use in the tagfile because it does not work
+ across pipes (closes: #383487)
+
+ -- Michael Vogt <mvo@debian.org> Thu, 21 Sep 2006 10:25:03 +0200
apt (0.6.45) unstable; urgency=low
diff --git a/debian/rules b/debian/rules
index 333d4ad5b..4e7490bed 100755
--- a/debian/rules
+++ b/debian/rules
@@ -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')
diff --git a/doc/apt-get.8.xml b/doc/apt-get.8.xml
index b98d58737..17f663a35 100644
--- a/doc/apt-get.8.xml
+++ b/doc/apt-get.8.xml
@@ -467,7 +467,7 @@
<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>
diff --git a/doc/apt.8 b/doc/apt.8
index 3fb214a3b..6f39c5387 100644
--- a/doc/apt.8
+++ b/doc/apt.8
@@ -32,7 +32,8 @@ None.
.BR apt-cache (8),
.BR apt-get (8),
.BR apt.conf (5),
-.BR sources.list (5)
+.BR sources.list (5),
+.BR apt-secure (8)
.SH DIAGNOSTICS
apt returns zero on normal operation, decimal 100 on error.
.SH BUGS
diff --git a/doc/examples/configure-index b/doc/examples/configure-index
index 5b3c1a55c..55edd77e5 100644
--- a/doc/examples/configure-index
+++ b/doc/examples/configure-index
@@ -245,6 +245,10 @@ DPkg
// 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
@@ -260,7 +264,7 @@ Debug
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
diff --git a/doc/examples/sources.list b/doc/examples/sources.list
index a958899ae..9af1c3c4c 100644
--- a/doc/examples/sources.list
+++ b/doc/examples/sources.list
@@ -1,11 +1,9 @@
# See sources.list(5) for more information, especialy
# Remember that you can only use http, ftp or file URIs
# CDROMs are managed through the apt-cdrom tool.
-deb http://us.archive.ubuntu.com/ubuntu dapper main restricted
-deb-src http://us.archive.ubuntu.com/ubuntu dapper main restricted
+deb http://http.us.debian.org/debian stable main contrib non-free
+deb http://security.debian.org stable/updates main contrib non-free
-deb http://security.ubuntu.com/ubuntu dapper-security main restricted
-deb-src http://security.ubuntu.com/ubuntu dapper-security main restricted
-
-deb http://us.archive.ubuntu.com/ubuntu dapper-updates main restricted
-deb-src http://us.archive.ubuntu.com/ubuntu dapper-updates main restricted
+# Uncomment if you want the apt-get source function to work
+#deb-src http://http.us.debian.org/debian stable main contrib non-free
+#deb-src http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
diff --git a/doc/fr/apt-get.fr.8.xml b/doc/fr/apt-get.fr.8.xml
index cfaa76c7d..dccf415b1 100644
--- a/doc/fr/apt-get.fr.8.xml
+++ b/doc/fr/apt-get.fr.8.xml
@@ -175,8 +175,8 @@ d'tre supprim.
Avec la commande <literal>source</literal>, <command>apt-get</command> rcupre des paquets
sources. APT examine les paquets disponibles pour choisir le paquet source
rcuprer. Il trouve ensuite et tlcharge dans le rpertoire courant
-la version la plus rcente. Les paquets source sont suivis diffremment que
-les paquets binaires, via les lignes de type <literal>deb-src</literal> dans le fichier
+la version la plus rcente. Les paquets source sont grs indpendamment
+des paquets binaires, via les lignes de type <literal>deb-src</literal> dans le fichier
&sources-list;. On n'obtiendra probablement pas les mmes sources que celles
du paquet install ou celles du paquet qu'on pourrait installer. Si l'option
<option>--compile</option> est spcifie, le paquet est compil en un binaire .deb
diff --git a/doc/fr/apt_preferences.fr.5.xml b/doc/fr/apt_preferences.fr.5.xml
index 6e1d2043e..aba9f0d06 100644
--- a/doc/fr/apt_preferences.fr.5.xml
+++ b/doc/fr/apt_preferences.fr.5.xml
@@ -208,7 +208,7 @@ d'&nbsp;Archive&nbsp; est <literal>unstable</literal>.
<programlisting>
Package: *
Pin: release a=unstable
-Pin-Priority: 500
+Pin-Priority: 50
</programlisting>
<simpara>L'entre suivante affecte une priorit haute toutes les versions
@@ -578,4 +578,4 @@ apt-get install <replaceable>paquet</replaceable>/unstable
&manbugs;
&traducteur;
-</refentry> \ No newline at end of file
+</refentry>
diff --git a/doc/fr/makefile b/doc/fr/makefile
index 596de7b09..c650dc03a 100644
--- a/doc/fr/makefile
+++ b/doc/fr/makefile
@@ -7,7 +7,7 @@ include ../../buildlib/defaults.mak
# Do not use XMLTO, build the manpages directly with XSLTPROC
XSLTPROC=/usr/bin/xsltproc
-STYLESHEET=/usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl
+STYLESHEET=./style.fr.xsl
# Man pages
diff --git a/doc/fr/style.fr.xsl b/doc/fr/style.fr.xsl
new file mode 100644
index 000000000..11593bb42
--- /dev/null
+++ b/doc/fr/style.fr.xsl
@@ -0,0 +1,9 @@
+<xsl:stylesheet
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ version="1.0">
+
+<xsl:import href="/usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl" />
+
+<xsl:param name="man.output.encoding" select="'ISO-8859-15'" />
+
+</xsl:stylesheet>
diff --git a/doc/ja/sources.list.ja.5.xml b/doc/ja/sources.list.ja.5.xml
index e000d8767..8522a3be3 100644
--- a/doc/ja/sources.list.ja.5.xml
+++ b/doc/ja/sources.list.ja.5.xml
@@ -391,7 +391,7 @@ deb http://http.us.debian.org/debian dists/stable-updates/
<!--
<para>Uses HTTP to access the archive at nonus.debian.org, under the
debian-non-US directory, and uses only files found under
- <filename>unstable/binary-i3866</filename> on i386 machines,
+ <filename>unstable/binary-i386</filename> on i386 machines,
<filename>unstable/binary-m68k</filename> on m68k, and so
forth for other supported architectures. [Note this example only
illustrates how to use the substitution variable; non-us is no longer
diff --git a/doc/ja/style.ja.xsl b/doc/ja/style.ja.xsl
index 4af2d74cf..c102f1366 100644
--- a/doc/ja/style.ja.xsl
+++ b/doc/ja/style.ja.xsl
@@ -4,6 +4,6 @@
<xsl:import href="/usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl" />
-<xsl:param name="chunker.output.encoding" select="'EUC-JP'" />
+<xsl:param name="man.output.encoding" select="'EUC-JP'" />
-</xsl:stylesheet> \ No newline at end of file
+</xsl:stylesheet>
diff --git a/methods/gzip.cc b/methods/gzip.cc
index 809afc0fc..f732c0b86 100644
--- a/methods/gzip.cc
+++ b/methods/gzip.cc
@@ -52,6 +52,13 @@ bool GzipMethod::Fetch(FetchItem *Itm)
// Open the source and destination files
FileFd From(Path,FileFd::ReadOnly);
+ // if the file is empty, just rename it and return
+ if(From.Size() == 0)
+ {
+ rename(Path.c_str(), Itm->DestFile.c_str());
+ return true;
+ }
+
int GzOut[2];
if (pipe(GzOut) < 0)
return _error->Errno("pipe",_("Couldn't open pipe for %s"),Prog);
@@ -111,6 +118,7 @@ bool GzipMethod::Fetch(FetchItem *Itm)
if (To.Write(Buffer,Count) == false)
{
Failed = true;
+ FromGz.Close();
break;
}
}
diff --git a/methods/http.cc b/methods/http.cc
index 09dab8188..1833f41ef 100644
--- a/methods/http.cc
+++ b/methods/http.cc
@@ -657,7 +657,7 @@ void HttpMethod::SendReq(FetchItem *Itm,CircleBuf &Out)
will glitch HTTP/1.0 proxies because they do not filter it out and
pass it on, HTTP/1.1 says the connection should default to keep alive
and we expect the proxy to do this */
- if (Proxy.empty() == true)
+ if (Proxy.empty() == true || Proxy.Host.empty())
sprintf(Buf,"GET %s HTTP/1.1\r\nHost: %s\r\nConnection: keep-alive\r\n",
QuoteString(Uri.Path,"~").c_str(),ProperHost.c_str());
else
diff --git a/po/ChangeLog b/po/ChangeLog
index 545fe3e75..1171d288a 100644
--- a/po/ChangeLog
+++ b/po/ChangeLog
@@ -1,3 +1,149 @@
+2006-11-04 Artem Bondarenko <artem.brz@gmail.com>
+
+ * uk.po: New Ukrainian translation: 483t28f3u
+
+2006-11-02 Emmanuel Galatoulas <galas@tee.gr>
+
+ * el.po: Update to 503t9f2u
+
+2006-10-24 Michael Piefel <piefel@debian.org>
+
+ * de.po: Updates and corrections.
+
+2006-10-22 Jordi Mallach <jordi@debian.org>
+
+ * ca.po: Updated to 514t
+
+2006-10-22 Bart Cornelis <cobaco@linux.be>
+
+ * be.po: Updated to 514t
+
+2006-10-21 Samuele Giovanni Tonon <samu@debian.org>
+
+ * it.po: Updated to 514t
+
+2006-10-21 SZERVÁC Attila <sas@321.hu>
+
+ * hu.po: Updated to 514t
+
+2006-10-21 Asho Yeh <asho@debian.org.tw>
+
+ * zh_TW.po: Updated to 514t
+
+2006-10-21 Ossama M. Khayat <okhayat@yahoo.com>
+
+ * ar.po: Updated to 293t221u.
+
+2006-10-16 Yuri Kozlov <kozlov.y@gmail.com>
+
+ * ru.po: Updated to 514t. Closes: #392466
+
+2006-10-16 Hans Fredrik Nordhaug <hans@nordhaug.priv.no>
+
+ * nb.po: Updated to 514t. Closes: #392466
+
+2006-10-15 Rui Az. <astronomy@mail.pt>
+
+ * pt.po: Updated to 514t. Closes: #393199
+
+2006-10-14 Christian Perrier <bubulle@debian.org>
+
+ * fr.po: One spelling error corrected: s/accèder/accéder
+
+2006-10-13 Khoem Sokhem <khoemsokhem@khmeros.info>
+
+ * km.po: Updated to 514t.
+
+2006-10-13 Sunjae Park <darehanl@gmail.com>
+
+ * ko.po: Updated to 514t.
+
+2006-10-12 Yavor Doganov <yavor@doganov.org>
+
+ * bg.po: Updated to 514t.
+
+2006-10-12 Michael Piefel <piefel@debian.org>
+
+ * de.po: Updated to 514t.
+
+2006-10-12 Neil Williams <linux@codehelp.co.uk>
+
+ * en_GB.po: Updated to 514t.
+
+2006-10-08 Javier Fernández-Sanguino Peña <jfs@computer.org>
+
+ * es.po: Updated to 514t. Closes: #391661
+
+2006-10-06 Claus Hindsgaul <claus.hindsgaul@gmail.com>
+
+ * da.po: Updated to 514t. Closes: #391424
+
+2006-10-04 Miroslav Kure <kurem@upcase.inf.upol.cz>
+
+ * cs.po: Updated. Closes: #391064
+
+2006-09-29 Tapio Lehtonen <tale@debian.org>
+
+ * fi.po: Updated to 514t. Closes: #390149
+
+2006-09-27 Piarres Beobide <pi@beobide.net>
+
+ * eu.po: Updated to 514t. Closes: #389725
+
+2006-09-21 Clytie Siddall <clytie@riverland.net.au>
+
+ * vi.po: Updated to 514t. Closes: #388555
+
+2006-09-20 Sorin Batariuc <sorin@bonbon.net>
+
+ * ro.po: Updated to 514t. Closes: #388402
+
+2006-09-18 Kinley Tshering <gasepkuenden2k3@hotmail.com>
+
+ * dz.po: Updated to 514t. Closes: #388184
+
+2006-09-17 Davide Viti <zinosat@tiscali.it>
+
+ * it.po: Fixed typos. Closes: #387812
+
+2006-09-17 Erdal Ronahi <erdal.ronahi@gmail.com>
+
+ * ku.po: New kurdish translation. Closes: #387766
+ 71t40f403u
+
+2006-09-10 Peter Mann <Peter.Mann@tuke.sk>
+
+ * sk.po: Updated to 514t. Closes: #386851
+
+2006-09-08 Christian Perrier <bubulle@debian.org>
+
+ * LINGUAS: re-enabled Hebrew translation on translator's request.
+
+2006-09-08 Kenshi Muto <kmuto@debian.org>
+
+ * ja.po: Updated to 514t. Closes: #386537
+
+2006-09-06 Jacobo Tarrio <jtarrio@debian.org>
+
+ * gl.po: Updated to 514t. Closes: #386397
+
+2006-09-02 Christian Perrier <bubulle@debian.org>
+
+ * fr.po: Updated to 516t.
+
+2006-09-02 Christian Perrier <bubulle@debian.org>
+
+ * fr.po: Updated to 516t.
+
+2006-08-20 Christian Perrier <bubulle@debian.org>
+
+ * Update all PO and the POT. Gives 512t3f1uf for formerly
+ complete translations
+
+2006-08-13 Tapio Lehtonen <tale@debian.org>
+
+ * fi.po: Updated to 512t. Closes: #382702
+
2006-07-19 Sunjae Park <darehanl@gmail.com>
* ko.po: Updated to 512t. Closes: #378901
diff --git a/po/LINGUAS b/po/LINGUAS
index aec84e943..eaf179bd7 100644
--- a/po/LINGUAS
+++ b/po/LINGUAS
@@ -1 +1 @@
-bg bs ca cs cy da de el en_GB es eu fi fr gl hu it ja ko nb nl nn pl pt pt_BR ro ru sk sl sv tl vi zh_CN zh_TW
+bg bs ca cs cy da de el en_GB es eu fi fr gl he hu it ja ko nb nl nn pl pt pt_BR ro ru sk sl sv tl vi zh_CN zh_TW