summaryrefslogtreecommitdiff
path: root/dev-util/diffoscope/files/diffoscope-268-7zip.patch
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/diffoscope/files/diffoscope-268-7zip.patch')
-rw-r--r--dev-util/diffoscope/files/diffoscope-268-7zip.patch43
1 files changed, 43 insertions, 0 deletions
diff --git a/dev-util/diffoscope/files/diffoscope-268-7zip.patch b/dev-util/diffoscope/files/diffoscope-268-7zip.patch
new file mode 100644
index 000000000000..4f7464c07a33
--- /dev/null
+++ b/dev-util/diffoscope/files/diffoscope-268-7zip.patch
@@ -0,0 +1,43 @@
+https://salsa.debian.org/reproducible-builds/diffoscope/-/commit/2a361d7dff135d3e832161f587a55a62fcbec9f2
+
+From 2a361d7dff135d3e832161f587a55a62fcbec9f2 Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <slyich@gmail.com>
+Date: Sat, 25 May 2024 22:41:53 +0100
+Subject: [PATCH] Amend 7zip version test for older 7z versions that include
+ "[64]" string. (Closes: #376)
+
+Without the change `7z` test fails with assertion errors:
+
+ FAILED tests/comparators/test_sevenz.py::test_metadata_diff - AssertionError
+
+This happens because version guard did not work for my ancient `7z`:
+
+ $ 7z | head -n2
+
+ 7-Zip [64] 17.05 : Copyright (c) 1999-2021 Igor Pavlov : 2017-08-28
+
+THe change attempts to skip `[64]` identifier. Tested on 7z 17.05 only.
+---
+ tests/comparators/test_sevenz.py | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/tests/comparators/test_sevenz.py b/tests/comparators/test_sevenz.py
+index 1582a0f4..91974701 100644
+--- a/tests/comparators/test_sevenz.py
++++ b/tests/comparators/test_sevenz.py
+@@ -38,7 +38,12 @@ def sevenz_version():
+ out = subprocess.check_output(["7z"])
+ except subprocess.CalledProcessError as e:
+ out = e.output
+- return out.decode("UTF-8").split()[1].strip()
++ words = out.decode("UTF-8").split()
++ # 7zip 17.04 returns version after "[64]" identifier:
++ # "7-Zip [64] 17.05 : Copyright (c) 1999-2021 Igor Pavlov : 2017-08-28"
++ if words[1].startswith("["):
++ return words[2].strip()
++ return words[1].strip()
+
+
+ def test_identification(sevenza):
+--
+GitLab