From 4de4200ec2717e777bbf99ed82d1b4344f078ec2 Mon Sep 17 00:00:00 2001 From: Julian Andres Klode Date: Thu, 8 Mar 2018 09:33:39 +0100 Subject: apt-pkg: Add support for zstd zstd is a compression algorithm developed by facebook. At level 19, it is about 6% worse in size than xz -6, but decompression is multiple times faster, saving about 40% install time, especially with eatmydata on cloud instances. --- test/integration/framework | 2 ++ test/libapt/fileutl_test.cc | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'test') diff --git a/test/integration/framework b/test/integration/framework index cf0a02de3..739098320 100644 --- a/test/integration/framework +++ b/test/integration/framework @@ -624,6 +624,7 @@ configcompression() { '.') printf ".\t.\tcat\n";; 'gz') printf "gzip\tgz\t$CMD $1\n";; 'bz2') printf "bzip2\tbz2\t$CMD $1\n";; + 'zst') printf "zstd\tzst\t$CMD $1\n";; *) printf "$1\t$1\t$CMD $1\n";; esac shift @@ -652,6 +653,7 @@ forcecompressor() { case $COMPRESSOR in gzip) COMPRESS='gz';; bzip2) COMPRESS='bz2';; + zstd) COMPRESS='zst';; esac local CONFFILE="${TMPWORKINGDIRECTORY}/rootdir/etc/apt/apt.conf.d/00force-compressor" echo "Acquire::CompressionTypes::Order { \"${COMPRESS}\"; }; diff --git a/test/libapt/fileutl_test.cc b/test/libapt/fileutl_test.cc index a702c16ec..38536f77f 100644 --- a/test/libapt/fileutl_test.cc +++ b/test/libapt/fileutl_test.cc @@ -180,7 +180,7 @@ static void TestFileFd(mode_t const a_umask, mode_t const ExpectedFilePermission static void TestFileFd(unsigned int const filemode) { auto const compressors = APT::Configuration::getCompressors(); - EXPECT_EQ(7, compressors.size()); + EXPECT_EQ(8, compressors.size()); bool atLeastOneWasTested = false; for (auto const &c: compressors) { @@ -204,7 +204,7 @@ TEST(FileUtlTest, FileFD) _config->Set("APT::Compressor::rev::Binary", "rev"); _config->Set("APT::Compressor::rev::Cost", 10); auto const compressors = APT::Configuration::getCompressors(false); - EXPECT_EQ(7, compressors.size()); + EXPECT_EQ(8, compressors.size()); EXPECT_TRUE(std::any_of(compressors.begin(), compressors.end(), [](APT::Configuration::Compressor const &c) { return c.Name == "rev"; })); std::string const startdir = SafeGetCWD(); -- cgit v1.2.3