summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2024-05-28 03:37:37 +0100
committerSam James <sam@gentoo.org>2024-05-28 03:37:37 +0100
commitb6c4780de56d5b20318fe17c724c8bbbec4383d8 (patch)
tree929103f43a83fc9dab9dd61aeedd7e7aece15ebe /dev-util/diffoscope
parentdev-util/mk-configure: drop 0.38.2-r1 (diff)
downloadgentoo-b6c4780de56d5b20318fe17c724c8bbbec4383d8.tar.gz
gentoo-b6c4780de56d5b20318fe17c724c8bbbec4383d8.tar.bz2
gentoo-b6c4780de56d5b20318fe17c724c8bbbec4383d8.zip
dev-util/diffoscope: add 268
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-util/diffoscope')
-rw-r--r--dev-util/diffoscope/Manifest1
-rw-r--r--dev-util/diffoscope/diffoscope-268.ebuild128
-rw-r--r--dev-util/diffoscope/files/diffoscope-268-7zip.patch43
3 files changed, 172 insertions, 0 deletions
diff --git a/dev-util/diffoscope/Manifest b/dev-util/diffoscope/Manifest
index 1dbfa9d6dc17..7f088c347807 100644
--- a/dev-util/diffoscope/Manifest
+++ b/dev-util/diffoscope/Manifest
@@ -1,2 +1,3 @@
DIST diffoscope-263.tar.bz2 3139927 BLAKE2B 6d13b9a657c4a7618d24487096a0fb94034f4ea2b84384b388dc8441ebe68f8de12dd7a34ec0075bd03ca3d437e65a23fc086184ba7c3764682390f6290a17e4 SHA512 41c5495bd4d4f4a0c340bac444f3cbc4a9b6180227efc02d593590a50b47acd06dc755875419da3a52d8aa831733d76450388c29e856d428b159d3c2c793de1b
DIST diffoscope-266.tar.bz2 3148610 BLAKE2B 28090b8a1e2315f9df43d254d3dbd4ed8f6d4ba4d259c764f53b84137ac0b3dc97b51df56ba595eee950c54974e9b6109c423392d198e277d520f11559ecd78e SHA512 2eb7cbd333b6559ba0f66647184f1747cac52cca6304a27eefe914329797469d5fb9519abe92386d3785f4f2c779f8f5dd95ecc8f54f8b08fd4fc94746bf273d
+DIST diffoscope-268.tar.bz2 3151657 BLAKE2B 2133611135347a9babfb55972ef5d456cc274634facc07ea8dc2c214147507d223a6fd8cf24541c04fc19c3510c7548bdaa5549f5587c9d99de7b61e64bd2f7d SHA512 9a0f3c81e9beb171fdef8282ac3938a5534f894437f898ab1437cdeb30a12c7fb8a1a494479f46c41d65e78fe014b8c1e510a72d0673f3d0d769d71c4af12a5d
diff --git a/dev-util/diffoscope/diffoscope-268.ebuild b/dev-util/diffoscope/diffoscope-268.ebuild
new file mode 100644
index 000000000000..52ae1402efb9
--- /dev/null
+++ b/dev-util/diffoscope/diffoscope-268.ebuild
@@ -0,0 +1,128 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_REQ_USE="ncurses"
+inherit distutils-r1
+
+DESCRIPTION="Will try to get to the bottom of what makes files or directories different"
+HOMEPAGE="https://diffoscope.org/ https://pypi.org/project/diffoscope/"
+# We could use pypi, but upstream provide distribution tarballs, so let's use those.
+# TODO: verify-sig
+SRC_URI="https://diffoscope.org/archive/${P}.tar.bz2"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc64 ~x86"
+IUSE="acl binutils bzip2 libcaca colord cpio +diff docx dtc e2fsprogs file
+find gettext gif gpg haskell hdf5 hex imagemagick iso java llvm lzma
+mono opendocument pascal pdf postscript R rpm sqlite squashfs
+ssh tar test tcpdump zip zlib zstd"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ || (
+ dev-python/python-magic[${PYTHON_USEDEP}]
+ sys-apps/file[python,${PYTHON_USEDEP}]
+ )
+ dev-python/libarchive-c[${PYTHON_USEDEP}]
+ dev-python/distro[${PYTHON_USEDEP}]
+ dev-python/tlsh[${PYTHON_USEDEP}]
+ acl? ( sys-apps/acl )
+ binutils? ( sys-devel/binutils )
+ bzip2? ( app-arch/bzip2 )
+ libcaca? ( media-libs/libcaca )
+ colord? ( x11-misc/colord )
+ cpio? ( app-alternatives/cpio )
+ diff? ( sys-apps/diffutils )
+ docx? ( app-text/docx2txt )
+ dtc? ( sys-apps/dtc )
+ e2fsprogs? ( sys-fs/e2fsprogs )
+ file? ( sys-apps/file )
+ find? ( sys-apps/findutils )
+ gettext? ( sys-devel/gettext )
+ gif? ( media-libs/giflib )
+ gpg? ( app-crypt/gnupg )
+ haskell? ( dev-lang/ghc )
+ hdf5? ( sci-libs/hdf5 )
+ hex? ( app-editors/vim-core )
+ imagemagick? ( media-gfx/imagemagick )
+ iso? ( app-cdr/cdrtools )
+ java? ( virtual/jdk )
+ llvm? ( sys-devel/llvm )
+ lzma? ( app-arch/xz-utils )
+ mono? ( dev-lang/mono )
+ opendocument? ( app-text/odt2txt )
+ pascal? ( dev-lang/fpc )
+ pdf? (
+ app-text/pdftk
+ app-text/poppler
+ dev-python/pypdf[${PYTHON_USEDEP}]
+ )
+ postscript? ( app-text/ghostscript-gpl )
+ R? ( dev-lang/R )
+ rpm? ( app-arch/rpm )
+ sqlite? ( dev-db/sqlite:3 )
+ squashfs? ( sys-fs/squashfs-tools )
+ ssh? ( virtual/openssh )
+ tar? ( app-arch/tar )
+ tcpdump? ( net-analyzer/tcpdump )
+ zip? ( app-arch/unzip )
+ zlib? ( app-arch/gzip )
+ zstd? ( app-arch/zstd )
+"
+
+# pull in optional tools for tests:
+# img2txt: bug #797688
+# docx2txt: bug #797688
+BDEPEND="
+ test? (
+ app-arch/p7zip
+ app-text/docx2txt
+ app-text/html2text
+ media-libs/libcaca
+ virtual/imagemagick-tools[jpeg]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-7zip.patch
+)
+
+EPYTEST_DESELECT=(
+ # Test seems to use different tarball
+ tests/test_presenters.py::test_text_proper_indentation
+
+ # Needs triage
+ tests/comparators/test_binary.py::test_with_compare_details_and_tool_not_found
+ tests/comparators/test_rlib.py::test_item3_deflate_llvm_bitcode
+ tests/comparators/test_gif.py::test_has_visuals
+
+ # img2txt based failures, bug #797688
+ tests/comparators/test_ico_image.py::test_diff
+ tests/comparators/test_ico_image.py::test_diff_meta
+ tests/comparators/test_ico_image.py::test_diff_meta2
+ tests/comparators/test_ico_image.py::test_has_visuals
+ tests/comparators/test_jpeg_image.py::test_diff
+ tests/comparators/test_jpeg_image.py::test_compare_non_existing
+ tests/comparators/test_jpeg_image.py::test_diff_meta
+ tests/comparators/test_jpeg_image.py::test_has_visuals
+
+ # docx2txt based falures, bug #797688
+ tests/comparators/test_docx.py::test_diff
+
+ # Formatting
+ tests/test_source.py::test_code_is_black_clean
+
+ # Fails on ZFS
+ tests/test_main.py::test_non_unicode_filename
+
+ # Fails on (unreleased) LLVM 16 with minor difference
+ #tests/comparators/test_macho.py::test_llvm_diff
+ #tests/comparators/test_elf.py::test_libmix_differences
+)
+
+distutils_enable_tests pytest
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