From: Joerg Behrmann Date: Thu, 16 Nov 2023 10:22:20 +0000 (+0100) Subject: Rename Compression.zst to Compression.zstd X-Git-Tag: v20~144^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=70355063deb5a800c401ac74fc3d4c4d46648b0f;p=thirdparty%2Fmkosi.git Rename Compression.zst to Compression.zstd But also leave a fallback Compression.zst with value "zstd" as a fallback in case anybody used that. To test this we also change the construction of Compression instances in test_config.py to use __get_item__ instead of __new__, since that actually supports construction via the value and is also the one actually used in config.py Fixes: #2072 --- diff --git a/mkosi/__init__.py b/mkosi/__init__.py index 6900d453b..f0fe850d7 100644 --- a/mkosi/__init__.py +++ b/mkosi/__init__.py @@ -1203,7 +1203,7 @@ def build_kernel_modules_initrd(state: MkosiState, kver: str) -> Path: # this is not ideal since the compressed kernel modules will all be decompressed on boot which # requires significant memory. if state.config.distribution.is_apt_distribution(): - maybe_compress(state.config, Compression.zst, kmods, kmods) + maybe_compress(state.config, Compression.zstd, kmods, kmods) return kmods @@ -1433,7 +1433,7 @@ def compressor_command(compression: Compression) -> list[PathString]: return [gzip_binary(), "--fast", "--stdout", "-"] elif compression == Compression.xz: return ["xz", "--check=crc32", "--fast", "-T0", "--stdout", "-"] - elif compression == Compression.zst: + elif compression == Compression.zstd: return ["zstd", "-q", "-T0", "--stdout", "-"] else: die(f"Unknown compression {compression}") diff --git a/mkosi/config.py b/mkosi/config.py index ed17ea459..59e21ebbb 100644 --- a/mkosi/config.py +++ b/mkosi/config.py @@ -130,7 +130,8 @@ class ManifestFormat(StrEnum): class Compression(StrEnum): none = enum.auto() - zst = enum.auto() + zstd = enum.auto() + zst = "zstd" xz = enum.auto() bz2 = enum.auto() gz = enum.auto() @@ -283,7 +284,7 @@ def config_parse_compression(value: Optional[str], old: Optional[Compression]) - try: return Compression[value] except KeyError: - return Compression.zst if parse_boolean(value) else Compression.none + return Compression.zstd if parse_boolean(value) else Compression.none def config_parse_seed(value: Optional[str], old: Optional[str]) -> Optional[uuid.UUID]: @@ -314,7 +315,7 @@ def config_default_compression(namespace: argparse.Namespace) -> Compression: if namespace.distribution.is_centos_variant() and int(namespace.release) <= 8: return Compression.xz else: - return Compression.zst + return Compression.zstd else: return Compression.none diff --git a/tests/test_config.py b/tests/test_config.py index f5bc6afe3..7539347d1 100644 --- a/tests/test_config.py +++ b/tests/test_config.py @@ -27,18 +27,19 @@ from mkosi.util import chdir def test_compression_enum_creation() -> None: - assert Compression("none") == Compression.none - assert Compression("zst") == Compression.zst - assert Compression("xz") == Compression.xz - assert Compression("bz2") == Compression.bz2 - assert Compression("gz") == Compression.gz - assert Compression("lz4") == Compression.lz4 - assert Compression("lzma") == Compression.lzma + assert Compression["none"] == Compression.none + assert Compression["zstd"] == Compression.zstd + assert Compression["zst"] == Compression.zstd + assert Compression["xz"] == Compression.xz + assert Compression["bz2"] == Compression.bz2 + assert Compression["gz"] == Compression.gz + assert Compression["lz4"] == Compression.lz4 + assert Compression["lzma"] == Compression.lzma def test_compression_enum_bool() -> None: assert not bool(Compression.none) - assert bool(Compression.zst) + assert bool(Compression.zstd) assert bool(Compression.xz) assert bool(Compression.bz2) assert bool(Compression.gz) @@ -48,7 +49,8 @@ def test_compression_enum_bool() -> None: def test_compression_enum_str() -> None: assert str(Compression.none) == "none" - assert str(Compression.zst) == "zst" + assert str(Compression.zstd) == "zstd" + assert str(Compression.zst) == "zstd" assert str(Compression.xz) == "xz" assert str(Compression.bz2) == "bz2" assert str(Compression.gz) == "gz"