diff options
Diffstat (limited to 'gnu/packages/patches/diffoscope-revert-to-magic-open.patch')
-rw-r--r-- | gnu/packages/patches/diffoscope-revert-to-magic-open.patch | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/gnu/packages/patches/diffoscope-revert-to-magic-open.patch b/gnu/packages/patches/diffoscope-revert-to-magic-open.patch new file mode 100644 index 0000000000..d52b26ead5 --- /dev/null +++ b/gnu/packages/patches/diffoscope-revert-to-magic-open.patch @@ -0,0 +1,70 @@ +From b658c3a6819ccb9a104b13e973132c66f0965965 Mon Sep 17 00:00:00 2001 +From: Vagrant Cascadian <vagrant@reproducible-builds.org> +Date: Thu, 11 Feb 2021 17:28:21 -0800 +Subject: [PATCH] Revert "Prefer to use magic.Magic over the magic.open + compatibility interface. (Closes: reproducible-builds/diffoscope#236)" + +This reverts commit c72c30f29ea3760eb4c785644dc7cd4c26833740. +--- + diffoscope/comparators/utils/file.py | 28 ++++++++++++++-------------- + 1 file changed, 14 insertions(+), 14 deletions(-) + +diff --git a/diffoscope/comparators/utils/file.py b/diffoscope/comparators/utils/file.py +index fb3b4316..32700f02 100644 +--- a/diffoscope/comparators/utils/file.py ++++ b/diffoscope/comparators/utils/file.py +@@ -65,37 +65,37 @@ def _run_tests(fold, tests): + + + class File(metaclass=abc.ABCMeta): +- if hasattr(magic, "Magic"): # use python-magic ++ if hasattr(magic, "open"): # use Magic-file-extensions from file + + @classmethod + def guess_file_type(cls, path): + if not hasattr(cls, "_mimedb"): +- cls._mimedb = magic.Magic() +- return maybe_decode(cls._mimedb.from_file(path)) ++ cls._mimedb = magic.open(magic.NONE) ++ cls._mimedb.load() ++ return cls._mimedb.file( ++ path.encode("utf-8", errors="surrogateescape") ++ ) + + @classmethod + def guess_encoding(cls, path): + if not hasattr(cls, "_mimedb_encoding"): +- cls._mimedb_encoding = magic.Magic(mime_encoding=True) +- return maybe_decode(cls._mimedb_encoding.from_file(path)) ++ cls._mimedb_encoding = magic.open(magic.MAGIC_MIME_ENCODING) ++ cls._mimedb_encoding.load() ++ return cls._mimedb_encoding.file(path) + +- else: # use Magic-file-extensions from file ++ else: # use python-magic + + @classmethod + def guess_file_type(cls, path): + if not hasattr(cls, "_mimedb"): +- cls._mimedb = magic.open(magic.NONE) +- cls._mimedb.load() +- return cls._mimedb.file( +- path.encode("utf-8", errors="surrogateescape") +- ) ++ cls._mimedb = magic.Magic() ++ return maybe_decode(cls._mimedb.from_file(path)) + + @classmethod + def guess_encoding(cls, path): + if not hasattr(cls, "_mimedb_encoding"): +- cls._mimedb_encoding = magic.open(magic.MAGIC_MIME_ENCODING) +- cls._mimedb_encoding.load() +- return cls._mimedb_encoding.file(path) ++ cls._mimedb_encoding = magic.Magic(mime_encoding=True) ++ return maybe_decode(cls._mimedb_encoding.from_file(path)) + + def __init__(self, container=None): + self._comments = [] +-- +2.30.0 + |