On Di, 2011-04-12 at 19:23 +0100, Adam D. Barratt wrote: > On Mon, 2011-04-11 at 21:08 +0200, David Kalnischkies wrote: > > On Mon, Apr 11, 2011 at 20:06, Adam D. Barratt <[email protected]> > > wrote: > > > + * apt-pkg/contrib/fileutl.cc: > > > + - reorder the loaded filesize bytes for big endian (Closes: #612986) > > > > > > Do we know when this got broken? It seems rather surprising that no one > > > at all would have noticed pdiffs being broken on at least three > > > architectures (mips, powerpc and sparc in squeeze, plus hppa in sid). > > > > pdiffs aren't affected in stable as they don't use FileSize. That was an > > addition after squeeze release, but made the bug very visible as pdiffs > > are enabled by default. > > Ah, that would probably explain the lack of screaming pre-release > then. :-) > > > Affected is the Acquire::GzipIndexes option (don't uncompress Packages > > files and co but use them directly: Saves space, decreases performance). > > Further more the method is used to check that the size of a file is not zero > > in various places, so we have just luck that zero is the same everywhere… > > Thanks for the explanation. Please feel free to go ahead with the > upload. David submitted another bundle. It adds xz support to the rest of APT, so that we do not have half-baked support. The diff is very small and it may be a good idea to include it as well. What do you think?
apt-inst/deb/debfile.cc | 8 +++++++- apt-pkg/deb/debsrcrecords.cc | 3 ++- debian/changelog | 9 ++++++++- ftparchive/contents.cc | 6 +++++- ftparchive/multicompress.cc | 1 + ftparchive/writer.cc | 2 ++ test/integration/framework | 8 +++++--- 7 files changed, 30 insertions(+), 7 deletions(-) -- Julian Andres Klode - Debian Developer, Ubuntu Member See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.
# Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: [email protected] # target_branch: http://bzr.debian.org/apt/apt/debian-squeeze/ # testament_sha1: 9bf26cee6575185b25907dbef222ec073645972d # timestamp: 2011-04-11 17:00:31 +0200 # base_revision_id: [email protected]\ # ninof3zjoe36h1l2 # # Begin patch === modified file 'apt-inst/deb/debfile.cc' --- apt-inst/deb/debfile.cc 2007-08-03 10:18:12 +0000 +++ apt-inst/deb/debfile.cc 2011-02-22 11:50:47 +0000 @@ -46,7 +46,9 @@ if (!CheckMember("data.tar.gz") && !CheckMember("data.tar.bz2") && - !CheckMember("data.tar.lzma")) { + !CheckMember("data.tar.lzma") && + !CheckMember("data.tar.xz")) { + // FIXME: add data.tar.xz here - adding it now would require a Translation round for a very small gain _error->Error(_("This is not a valid DEB archive, it has no '%s', '%s' or '%s' member"), "data.tar.gz", "data.tar.bz2", "data.tar.lzma"); return; } @@ -136,6 +138,10 @@ Member = AR.FindMember("data.tar.lzma"); Compressor = "lzma"; } + if (Member == 0) { + Member = AR.FindMember("data.tar.xz"); + Compressor = "xz"; + } if (Member == 0) return _error->Error(_("Internal error, could not locate member")); if (File.Seek(Member->Start) == false) === modified file 'apt-pkg/deb/debsrcrecords.cc' --- apt-pkg/deb/debsrcrecords.cc 2010-06-09 09:51:21 +0000 +++ apt-pkg/deb/debsrcrecords.cc 2011-02-22 17:13:20 +0000 @@ -144,7 +144,8 @@ } F.Type = string(F.Path,Tmp+1,Pos-Tmp); - if (F.Type == "gz" || F.Type == "bz2" || F.Type == "lzma" || F.Type == "tar") + if (F.Type == "gz" || F.Type == "bz2" || F.Type == "lzma" || + F.Type == "xz" || F.Type == "tar") { Pos = Tmp-1; continue; === modified file 'debian/changelog' --- debian/changelog 2011-02-22 10:26:47 +0000 +++ debian/changelog 2011-02-22 17:13:20 +0000 @@ -13,8 +13,15 @@ * apt-pkg/contrib/fileutl.cc: - reorder the loaded filesize bytes for big endian (Closes: #612986) Thanks to Jörg Sommer for the detailed analyse! + * ftparchive/multicompress.cc, apt-inst/deb/debfile.cc: + - support xz compressor to create xz-compressed Indexes and be able + to open data.tar.xz files + * ftparchive/writer.cc: + - include xz-compressed Packages and Sources files in Release file + * apt-pkg/deb/debsrcrecords.cc: + - support xz-compressed source v3 debian.tar files - -- David Kalnischkies <[email protected]> Tue, 22 Feb 2011 11:25:58 +0100 + -- David Kalnischkies <[email protected]> Tue, 22 Feb 2011 18:12:21 +0100 apt (0.8.10.3) unstable; urgency=low === modified file 'ftparchive/contents.cc' --- ftparchive/contents.cc 2009-12-22 11:20:43 +0000 +++ ftparchive/contents.cc 2011-02-22 11:50:47 +0000 @@ -318,8 +318,12 @@ Compressor = "lzma"; } if (Member == 0) { + Member = Deb.GotoMember("data.tar.xz"); + Compressor = "xz"; + } + if (Member == 0) { _error->Error(_("Internal error, could not locate member %s"), - "data.tar.{gz,bz2,lzma}"); + "data.tar.{gz,bz2,lzma,xz}"); return false; } === modified file 'ftparchive/multicompress.cc' --- ftparchive/multicompress.cc 2010-06-09 09:51:21 +0000 +++ ftparchive/multicompress.cc 2011-02-22 11:50:47 +0000 @@ -35,6 +35,7 @@ {"gzip",".gz","gzip","-9n","-d",2}, {"bzip2",".bz2","bzip2","-9","-d",3}, {"lzma",".lzma","lzma","-9","-d",4}, + {"xz",".xz","xz","-6","-d",5}, {}}; // MultiCompress::MultiCompress - Constructor /*{{{*/ === modified file 'ftparchive/writer.cc' --- ftparchive/writer.cc 2010-09-09 17:04:26 +0000 +++ ftparchive/writer.cc 2011-02-22 13:52:10 +0000 @@ -911,10 +911,12 @@ AddPattern("Packages.gz"); AddPattern("Packages.bz2"); AddPattern("Packages.lzma"); + AddPattern("Packages.xz"); AddPattern("Sources"); AddPattern("Sources.gz"); AddPattern("Sources.bz2"); AddPattern("Sources.lzma"); + AddPattern("Sources.xz"); AddPattern("Release"); AddPattern("md5sum.txt"); === modified file 'test/integration/framework' --- test/integration/framework 2010-10-13 13:30:47 +0000 +++ test/integration/framework 2011-02-22 11:50:47 +0000 @@ -251,9 +251,9 @@ echo -n '"; }; Default { - Packages::Compress ". gzip bzip2 lzma"; - Sources::Compress ". gzip bzip2 lzma"; - Contents::Compress ". gzip bzip2 lzma"; + Packages::Compress ". gzip bzip2 lzma xz"; + Sources::Compress ". gzip bzip2 lzma xz"; + Contents::Compress ". gzip bzip2 lzma xz"; }; TreeDefault { Directory "pool/"; @@ -332,6 +332,7 @@ cat Packages | gzip > Packages.gz cat Packages | bzip2 > Packages.bz2 cat Packages | lzma > Packages.lzma + cat Packages | xz > Packages.xz msgdone "info" fi if [ -f Sources ]; then @@ -339,6 +340,7 @@ cat Sources | gzip > Sources.gz cat Sources | bzip2 > Sources.bz2 cat Sources | lzma > Sources.lzma + cat Sources | xz > Sources.xz msgdone "info" fi msgninfo "\tRelease file… " # Begin bundle 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

