public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-util/diffoscope/files/, dev-util/diffoscope/
@ 2023-01-08  3:20 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2023-01-08  3:20 UTC (permalink / raw
  To: gentoo-commits

commit:     f94672e1bd87a0083e4671c7297d0b6cfc590f6b
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jan  8 03:14:55 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jan  8 03:15:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f94672e1

dev-util/diffoscope: actually add pypdf patch

Closes: https://bugs.gentoo.org/889250
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...foscope-231.ebuild => diffoscope-231-r1.ebuild} |   4 +
 .../diffoscope/files/diffoscope-231-pypdf.patch    | 180 +++++++++++++++++++++
 2 files changed, 184 insertions(+)

diff --git a/dev-util/diffoscope/diffoscope-231.ebuild b/dev-util/diffoscope/diffoscope-231-r1.ebuild
similarity index 98%
rename from dev-util/diffoscope/diffoscope-231.ebuild
rename to dev-util/diffoscope/diffoscope-231-r1.ebuild
index 0f8d6d4ddb54..cab11fbd86b6 100644
--- a/dev-util/diffoscope/diffoscope-231.ebuild
+++ b/dev-util/diffoscope/diffoscope-231-r1.ebuild
@@ -117,4 +117,8 @@ EPYTEST_DESELECT=(
 	tests/comparators/test_macho.py::test_llvm_diff
 )
 
+PATCHES=(
+	"${FILESDIR}"/${PN}-231-pypdf.patch
+)
+
 distutils_enable_tests pytest

diff --git a/dev-util/diffoscope/files/diffoscope-231-pypdf.patch b/dev-util/diffoscope/files/diffoscope-231-pypdf.patch
new file mode 100644
index 000000000000..7b4365c80eca
--- /dev/null
+++ b/dev-util/diffoscope/files/diffoscope-231-pypdf.patch
@@ -0,0 +1,180 @@
+https://bugs.gentoo.org/889250
+
+(Can't yet submit upstream as can't login to gitlab.)
+--- a/diffoscope.egg-info/requires.txt
++++ b/diffoscope.egg-info/requires.txt
+@@ -11,7 +11,7 @@ binwalk
+ defusedxml
+ guestfs
+ jsondiff
+-pypdf2
++pypdf
+ python-debian
+ pyxattr
+ rpm-python
+--- a/diffoscope/comparators/pdf.py
++++ b/diffoscope/comparators/pdf.py
+@@ -34,17 +34,23 @@ from .utils.command import Command
+ logger = logging.getLogger(__name__)
+ 
+ try:
+-    import PyPDF2
++    try:
++        import pypdf
++    except ImportError:
++        import PyPDF2
+ 
+     try:
+-        # PyPDF 2.x
+-        from PyPDF2.errors import PdfReadError
++        from pypdf.errors import PdfReadError
+     except ImportError:
+-        # PyPDF 1.x
+-        from PyPDF2.utils import PdfReadError
++        try:
++            # PyPDF 2.x
++            from PyPDF2.errors import PdfReadError
++        except ImportError:
++            # PyPDF 1.x
++            from PyPDF2.utils import PdfReadError
+ 
+ except ImportError:  # noqa
+-    python_module_missing("PyPDF2")
++    python_module_missing("pypdf")
+     PyPDF2 = None
+ 
+ 
+@@ -68,10 +74,10 @@ class PdfFile(File):
+         xs = []
+ 
+         if PyPDF2 is None:
+-            pkg = get_package_provider("pypdf2")
++            pkg = get_package_provider("pypdf")
+             infix = f" from the '{pkg}' package " if pkg else " "
+             self.add_comment(
+-                f"Installing the 'PyPDF2' Python module{infix}may produce a better output."
++                f"Installing the 'pypdf' Python module{infix}may produce a better output."
+             )
+         else:
+             difference = Difference.from_text(
+@@ -119,7 +125,7 @@ class PdfFile(File):
+ 
+             return "\n".join(xs)
+         except PdfReadError as e:
+-            msg = f"Could not extract PyPDF2 metadata from {os.path.basename(file.name)}: {e}"
++            msg = f"Could not extract pypdf metadata from {os.path.basename(file.name)}: {e}"
+             self.add_comment(msg)
+             logger.error(msg)
+             return ""
+@@ -142,7 +148,7 @@ class PdfFile(File):
+ 
+             return "\n".join(xs)
+         except PdfReadError as e:
+-            msg = f"Could not extract PyPDF2 annotations from {os.path.basename(file.name)}: {e}"
++            msg = f"Could not extract pypdf annotations from {os.path.basename(file.name)}: {e}"
+             file.add_comment(msg)
+             logger.error(msg)
+             return ""
+--- a/setup.py
++++ b/setup.py
+@@ -66,7 +66,7 @@ setup(
+             "guestfs",
+             "jsondiff",
+             "python-debian",
+-            "pypdf2",
++            "pypdf",
+             "pyxattr",
+             "rpm-python",
+             "tlsh",
+--- a/tests/comparators/test_pdf.py
++++ b/tests/comparators/test_pdf.py
+@@ -70,7 +70,7 @@ def differences_metadata(pdf1, pdf1a):
+ 
+ 
+ @skip_unless_tools_exist("pdftotext")
+-@skip_unless_module_exists("PyPDF2")
++@skip_unless_module_exists("pypdf")
+ def test_metadata(differences_metadata):
+     assert_diff(differences_metadata[0], "pdf_metadata_expected_diff")
+ 
+@@ -81,7 +81,7 @@ def differences_annotations(pdf3, pdf4):
+ 
+ 
+ @skip_unless_tools_exist("pdftotext")
+-@skip_unless_module_exists("PyPDF2")
++@skip_unless_module_exists("pypdf")
+ def test_annotations(differences_annotations):
+     with open("tests/data/pdf_annotations_expected_diff", "w") as f:
+         f.write(differences_annotations[0].unified_diff)
+--- a/diffoscope/comparators/pdf.py
++++ b/diffoscope/comparators/pdf.py
+@@ -38,6 +38,7 @@ try:
+         import pypdf
+     except ImportError:
+         import PyPDF2
++        pypdf = PyPDF2
+ 
+     try:
+         from pypdf.errors import PdfReadError
+@@ -51,7 +52,7 @@ try:
+ 
+ except ImportError:  # noqa
+     python_module_missing("pypdf")
+-    PyPDF2 = None
++    pypdf = None
+ 
+ 
+ class Pdftotext(Command):
+@@ -73,7 +74,7 @@ class PdfFile(File):
+     def compare_details(self, other, source=None):
+         xs = []
+ 
+-        if PyPDF2 is None:
++        if pypdf is None:
+             pkg = get_package_provider("pypdf")
+             infix = f" from the '{pkg}' package " if pkg else " "
+             self.add_comment(
+@@ -113,7 +114,7 @@ class PdfFile(File):
+ 
+     def dump_pypdf2_metadata(self, file):
+         try:
+-            pdf = PyPDF2.PdfFileReader(file.path)
++            pdf = pypdf.PdfReader(file.path)
+             document_info = pdf.getDocumentInfo()
+ 
+             if document_info is None:
+@@ -133,10 +133,10 @@ class PdfFile(File):
+ 
+     def dump_pypdf2_annotations(self, file):
+         try:
+-            pdf = PyPDF2.PdfFileReader(file.path)
++            pdf = pypdf.PdfReader(file.path)
+ 
+             xs = []
+-            for x in range(pdf.getNumPages()):
++            for x in range(len(pdf.pages)):
+                 page = pdf.getPage(x)
+ 
+                 try:
+--- a/diffoscope/comparators/pdf.py
++++ b/diffoscope/comparators/pdf.py
+@@ -115,7 +115,7 @@ class PdfFile(File):
+     def dump_pypdf2_metadata(self, file):
+         try:
+             pdf = pypdf.PdfReader(file.path)
+-            document_info = pdf.getDocumentInfo()
++            document_info = pdf.metadata
+ 
+             if document_info is None:
+                 return ""
+--- a/diffoscope/comparators/pdf.py
++++ b/diffoscope/comparators/pdf.py
+@@ -137,7 +137,7 @@ class PdfFile(File):
+ 
+             xs = []
+             for x in range(len(pdf.pages)):
+-                page = pdf.getPage(x)
++                page = pdf.pages[x]
+ 
+                 try:
+                     for annot in page["/Annots"]:


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/diffoscope/files/, dev-util/diffoscope/
@ 2023-01-14 23:22 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2023-01-14 23:22 UTC (permalink / raw
  To: gentoo-commits

commit:     c02cc85d1170536995aecffefa0bbef36e593b0b
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 14 23:18:28 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jan 14 23:18:28 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c02cc85d

dev-util/diffoscope: drop 230, 231-r1

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/diffoscope/Manifest                       |   2 -
 dev-util/diffoscope/diffoscope-230.ebuild          | 120 -------------
 dev-util/diffoscope/diffoscope-231-r1.ebuild       | 124 --------------
 .../diffoscope/files/diffoscope-231-pypdf.patch    | 190 ---------------------
 4 files changed, 436 deletions(-)

diff --git a/dev-util/diffoscope/Manifest b/dev-util/diffoscope/Manifest
index 7fda5bf7c236..96bb603b9830 100644
--- a/dev-util/diffoscope/Manifest
+++ b/dev-util/diffoscope/Manifest
@@ -1,4 +1,2 @@
 DIST diffoscope-229.tar.gz 3164192 BLAKE2B bee9fa1561ddcfde98cfa44cd6d66a28c636dbc7f3ec1f4895e91dfd3b66c039b68d53be0528b94c112552069886c3c81de4d9b9bc9038d183afdc9fdde6ddb9 SHA512 825c9c33f3088ba082ea3b998594445987558ee62b8b1fbfcded9b72a739faaa73908f8753b8772b3b1a8a43dbcfd52978265a18bdd92605defcd174884ccb23
-DIST diffoscope-230.tar.gz 3164600 BLAKE2B f5ad44ff36d07fc5724895e661e0946b292146d004e97159fef1cb58ff38669702a3990740e4ea34300a9b48aeb10263aeb6bb332da3ec987c355ed5b910fedd SHA512 e025e5f95ae2fb9de466b886c58a44f64e0f654fb049bf9f035209fe7ca1fd0ccc14a382b17085c13bc9f2be0d368482d57a071a577cb87628ae7eb0060158ad
-DIST diffoscope-231.tar.gz 3164686 BLAKE2B 5fe1546f63a047def4d1c9acc94360085be87460de1c106381532d937d1ad16be64749b9021caa7980a61a0dfd822ed7163e0f52bb0cab0520962b84bb184650 SHA512 544510de0790fc8f0c62030bc557f923bad6d5c39b7364e9944ebcf9bc5c1ecf2b9ecc91cf9142e54a23b1f004f53e96ed5b6f2f4637fa76cebd2ed7d0e4721d
 DIST diffoscope-232.tar.gz 3164825 BLAKE2B a65ff66881cf67cdfd32eb1e14bf654c152447799415f686d774f30f7d3ec61b5de8f1caf4b3551312be7f2ab93187ea145b6bf96c7790cc3792221d621cdeb3 SHA512 7b8ae407e4e1b3c5085fa26f9477b75e3918a99b2d60498a7d939f06a3018bc5f6ca417d041a39dc769ef897a189c0dfdf6d35851b945c3e28b16f290bddb630

diff --git a/dev-util/diffoscope/diffoscope-230.ebuild b/dev-util/diffoscope/diffoscope-230.ebuild
deleted file mode 100644
index 04f039551ffb..000000000000
--- a/dev-util/diffoscope/diffoscope-230.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 2022-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{9..11} )
-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/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-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}]
-	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-arch/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/PyPDF2[${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? ( net-misc/openssh )
-	tar? ( app-arch/tar )
-	tcpdump? ( net-analyzer/tcpdump )
-	zip? ( app-arch/unzip )
-	zlib? ( app-arch/gzip )
-	zstd? ( app-arch/zstd )
-"
-# Presence of filemagic's magic.py breaks imports
-# of dev-python/python-magic: bug #716482
-RDEPEND+=" !dev-python/filemagic"
-
-# pull in optional tools for tests:
-# img2txt: bug #797688
-# docx2txt: bug #797688
-BDEPEND="
-	test? (
-		app-text/docx2txt
-		app-text/html2text
-		media-libs/libcaca
-		virtual/imagemagick-tools[jpeg]
-	)
-"
-
-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
-)
-
-distutils_enable_tests pytest

diff --git a/dev-util/diffoscope/diffoscope-231-r1.ebuild b/dev-util/diffoscope/diffoscope-231-r1.ebuild
deleted file mode 100644
index 4703fb6293f4..000000000000
--- a/dev-util/diffoscope/diffoscope-231-r1.ebuild
+++ /dev/null
@@ -1,124 +0,0 @@
-# Copyright 2022-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{9..11} )
-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/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-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}]
-	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-arch/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? ( net-misc/openssh )
-	tar? ( app-arch/tar )
-	tcpdump? ( net-analyzer/tcpdump )
-	zip? ( app-arch/unzip )
-	zlib? ( app-arch/gzip )
-	zstd? ( app-arch/zstd )
-"
-# Presence of filemagic's magic.py breaks imports
-# of dev-python/python-magic: bug #716482
-RDEPEND+=" !dev-python/filemagic"
-
-# pull in optional tools for tests:
-# img2txt: bug #797688
-# docx2txt: bug #797688
-BDEPEND="
-	test? (
-		app-text/docx2txt
-		app-text/html2text
-		media-libs/libcaca
-		virtual/imagemagick-tools[jpeg]
-	)
-"
-
-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
-)
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-231-pypdf.patch
-)
-
-distutils_enable_tests pytest

diff --git a/dev-util/diffoscope/files/diffoscope-231-pypdf.patch b/dev-util/diffoscope/files/diffoscope-231-pypdf.patch
deleted file mode 100644
index 4376e03f668c..000000000000
--- a/dev-util/diffoscope/files/diffoscope-231-pypdf.patch
+++ /dev/null
@@ -1,190 +0,0 @@
-https://salsa.debian.org/reproducible-builds/diffoscope/-/commit/6aed2e5320b5d412f0f81a36dd493ae4bd7c3ff4
-https://bugs.gentoo.org/889250
-
-From 6aed2e5320b5d412f0f81a36dd493ae4bd7c3ff4 Mon Sep 17 00:00:00 2001
-From: Sam James <sam@gentoo.org>
-Date: Mon, 9 Jan 2023 04:05:09 +0000
-Subject: [PATCH] Support PyPDF version 3.
-
-pypdf upstream has renamed the package from PyPDF2 to pypdf. This patch
-supporst the new pypdf version while keeping compatibility for older PyPDF2,
-adjusting to API changes.
-
-Signed-off-by: Chris Lamb <lamby@debian.org>
---- a/diffoscope.egg-info/requires.txt
-+++ b/diffoscope.egg-info/requires.txt
-@@ -11,7 +11,7 @@ binwalk
- defusedxml
- guestfs
- jsondiff
--pypdf2
-+pypdf
- python-debian
- pyxattr
- rpm-python
---- a/diffoscope/comparators/pdf.py
-+++ b/diffoscope/comparators/pdf.py
-@@ -34,17 +34,23 @@ from .utils.command import Command
- logger = logging.getLogger(__name__)
- 
- try:
--    import PyPDF2
-+    try:
-+        import pypdf
-+    except ImportError:
-+        import PyPDF2
- 
-     try:
--        # PyPDF 2.x
--        from PyPDF2.errors import PdfReadError
-+        from pypdf.errors import PdfReadError
-     except ImportError:
--        # PyPDF 1.x
--        from PyPDF2.utils import PdfReadError
-+        try:
-+            # PyPDF 2.x
-+            from PyPDF2.errors import PdfReadError
-+        except ImportError:
-+            # PyPDF 1.x
-+            from PyPDF2.utils import PdfReadError
- 
- except ImportError:  # noqa
--    python_module_missing("PyPDF2")
-+    python_module_missing("pypdf")
-     PyPDF2 = None
- 
- 
-@@ -68,10 +74,10 @@ class PdfFile(File):
-         xs = []
- 
-         if PyPDF2 is None:
--            pkg = get_package_provider("pypdf2")
-+            pkg = get_package_provider("pypdf")
-             infix = f" from the '{pkg}' package " if pkg else " "
-             self.add_comment(
--                f"Installing the 'PyPDF2' Python module{infix}may produce a better output."
-+                f"Installing the 'pypdf' Python module{infix}may produce a better output."
-             )
-         else:
-             difference = Difference.from_text(
-@@ -119,7 +125,7 @@ class PdfFile(File):
- 
-             return "\n".join(xs)
-         except PdfReadError as e:
--            msg = f"Could not extract PyPDF2 metadata from {os.path.basename(file.name)}: {e}"
-+            msg = f"Could not extract pypdf metadata from {os.path.basename(file.name)}: {e}"
-             self.add_comment(msg)
-             logger.error(msg)
-             return ""
-@@ -142,7 +148,7 @@ class PdfFile(File):
- 
-             return "\n".join(xs)
-         except PdfReadError as e:
--            msg = f"Could not extract PyPDF2 annotations from {os.path.basename(file.name)}: {e}"
-+            msg = f"Could not extract pypdf annotations from {os.path.basename(file.name)}: {e}"
-             file.add_comment(msg)
-             logger.error(msg)
-             return ""
---- a/setup.py
-+++ b/setup.py
-@@ -66,7 +66,7 @@ setup(
-             "guestfs",
-             "jsondiff",
-             "python-debian",
--            "pypdf2",
-+            "pypdf",
-             "pyxattr",
-             "rpm-python",
-             "tlsh",
---- a/tests/comparators/test_pdf.py
-+++ b/tests/comparators/test_pdf.py
-@@ -70,7 +70,7 @@ def differences_metadata(pdf1, pdf1a):
- 
- 
- @skip_unless_tools_exist("pdftotext")
--@skip_unless_module_exists("PyPDF2")
-+@skip_unless_module_exists("pypdf")
- def test_metadata(differences_metadata):
-     assert_diff(differences_metadata[0], "pdf_metadata_expected_diff")
- 
-@@ -81,7 +81,7 @@ def differences_annotations(pdf3, pdf4):
- 
- 
- @skip_unless_tools_exist("pdftotext")
--@skip_unless_module_exists("PyPDF2")
-+@skip_unless_module_exists("pypdf")
- def test_annotations(differences_annotations):
-     with open("tests/data/pdf_annotations_expected_diff", "w") as f:
-         f.write(differences_annotations[0].unified_diff)
---- a/diffoscope/comparators/pdf.py
-+++ b/diffoscope/comparators/pdf.py
-@@ -38,6 +38,7 @@ try:
-         import pypdf
-     except ImportError:
-         import PyPDF2
-+        pypdf = PyPDF2
- 
-     try:
-         from pypdf.errors import PdfReadError
-@@ -51,7 +52,7 @@ try:
- 
- except ImportError:  # noqa
-     python_module_missing("pypdf")
--    PyPDF2 = None
-+    pypdf = None
- 
- 
- class Pdftotext(Command):
-@@ -73,7 +74,7 @@ class PdfFile(File):
-     def compare_details(self, other, source=None):
-         xs = []
- 
--        if PyPDF2 is None:
-+        if pypdf is None:
-             pkg = get_package_provider("pypdf")
-             infix = f" from the '{pkg}' package " if pkg else " "
-             self.add_comment(
-@@ -113,7 +114,7 @@ class PdfFile(File):
- 
-     def dump_pypdf2_metadata(self, file):
-         try:
--            pdf = PyPDF2.PdfFileReader(file.path)
-+            pdf = pypdf.PdfReader(file.path)
-             document_info = pdf.getDocumentInfo()
- 
-             if document_info is None:
-@@ -133,10 +133,10 @@ class PdfFile(File):
- 
-     def dump_pypdf2_annotations(self, file):
-         try:
--            pdf = PyPDF2.PdfFileReader(file.path)
-+            pdf = pypdf.PdfReader(file.path)
- 
-             xs = []
--            for x in range(pdf.getNumPages()):
-+            for x in range(len(pdf.pages)):
-                 page = pdf.getPage(x)
- 
-                 try:
---- a/diffoscope/comparators/pdf.py
-+++ b/diffoscope/comparators/pdf.py
-@@ -115,7 +115,7 @@ class PdfFile(File):
-     def dump_pypdf2_metadata(self, file):
-         try:
-             pdf = pypdf.PdfReader(file.path)
--            document_info = pdf.getDocumentInfo()
-+            document_info = pdf.metadata
- 
-             if document_info is None:
-                 return ""
---- a/diffoscope/comparators/pdf.py
-+++ b/diffoscope/comparators/pdf.py
-@@ -137,7 +137,7 @@ class PdfFile(File):
- 
-             xs = []
-             for x in range(len(pdf.pages)):
--                page = pdf.getPage(x)
-+                page = pdf.pages[x]
- 
-                 try:
-                     for annot in page["/Annots"]:


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/diffoscope/files/, dev-util/diffoscope/
@ 2023-07-14 11:24 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2023-07-14 11:24 UTC (permalink / raw
  To: gentoo-commits

commit:     c4de145641e5a27421eba9ac125ec8a2a6b9a7a2
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 14 11:23:22 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jul 14 11:23:22 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c4de1456

dev-util/diffoscope: backport libarchive-c-5 fix

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/diffoscope/diffoscope-243-r3.ebuild       | 127 +++++++++++++++++++++
 .../files/diffoscope-243-libarchive-c-5.patch      |  49 ++++++++
 2 files changed, 176 insertions(+)

diff --git a/dev-util/diffoscope/diffoscope-243-r3.ebuild b/dev-util/diffoscope/diffoscope-243-r3.ebuild
new file mode 100644
index 000000000000..17a009db5db2
--- /dev/null
+++ b/dev-util/diffoscope/diffoscope-243-r3.ebuild
@@ -0,0 +1,127 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..11} )
+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}]
+	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-arch/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 )
+"
+# Presence of filemagic's magic.py breaks imports
+# of dev-python/python-magic: bug #716482
+RDEPEND+=" !dev-python/filemagic"
+
+# pull in optional tools for tests:
+# img2txt: bug #797688
+# docx2txt: bug #797688
+BDEPEND="
+	test? (
+		app-text/docx2txt
+		app-text/html2text
+		media-libs/libcaca
+		virtual/imagemagick-tools[jpeg]
+	)
+"
+
+PATCHES=(
+	"${FILESDIR}"/${P}-libarchive-c-5.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-243-libarchive-c-5.patch b/dev-util/diffoscope/files/diffoscope-243-libarchive-c-5.patch
new file mode 100644
index 000000000000..36b5dbbe63e4
--- /dev/null
+++ b/dev-util/diffoscope/files/diffoscope-243-libarchive-c-5.patch
@@ -0,0 +1,49 @@
+https://salsa.debian.org/reproducible-builds/diffoscope/-/issues/344
+https://salsa.debian.org/reproducible-builds/diffoscope/-/commit/3c4e378df315a4182da60e50769f1760cc561c2d
+
+From 3c4e378df315a4182da60e50769f1760cc561c2d Mon Sep 17 00:00:00 2001
+From: Chris Lamb <lamby@debian.org>
+Date: Thu, 13 Jul 2023 13:39:42 +0100
+Subject: [PATCH] Attempt compatibility with libarchive-5. (Re: 344)
+
+--- a/diffoscope/comparators/utils/libarchive.py
++++ b/diffoscope/comparators/utils/libarchive.py
+@@ -122,6 +122,13 @@ libarchive.ArchiveEntry.pathname = property(
+ 
+ 
+ def list_libarchive(path, ignore_errors=False):
++    def force_str(val):
++        # libarchive ~5 began to return uname and gname as UTF-8 whilst
++        # previous versions returned bytes that required decoding.
++        if not isinstance(val, str):
++            val = val.decode("utf-8", errors="surrogateescape")
++        return val
++
+     try:
+         with libarchive.file_reader(path) as archive:
+             for entry in archive:
+@@ -146,18 +153,14 @@ def list_libarchive(path, ignore_errors=False):
+                 ) + ".{:06d}".format(entry.mtime_nsec // 1000)
+                 if entry.uname:
+                     user = "{user:<8} {uid:>7}".format(
+-                        user=entry.uname.decode(
+-                            "utf-8", errors="surrogateescape"
+-                        ),
++                        user=force_str(entry.uname),
+                         uid="({})".format(entry.uid),
+                     )
+                 else:
+                     user = entry.uid
+                 if entry.gname:
+                     group = "{group:<8} {gid:>7}".format(
+-                        group=entry.gname.decode(
+-                            "utf-8", errors="surrogateescape"
+-                        ),
++                        group=force_str(entry.gname),
+                         gid="({})".format(entry.gid),
+                     )
+                 else:
+-- 
+GitLab
+
+


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/diffoscope/files/, dev-util/diffoscope/
@ 2024-08-15  0:26 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2024-08-15  0:26 UTC (permalink / raw
  To: gentoo-commits

commit:     196162918bac8a6025ca7a68c0364519119b12da
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 15 00:15:54 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 15 00:26:14 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=19616291

dev-util/diffoscope: add 274

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/diffoscope/Manifest                       |   1 +
 dev-util/diffoscope/diffoscope-274.ebuild          | 144 +++++++++++++++++++++
 .../files/diffoscope-274-new-zipdetails.patch      |  87 +++++++++++++
 3 files changed, 232 insertions(+)

diff --git a/dev-util/diffoscope/Manifest b/dev-util/diffoscope/Manifest
index b52abbe5aaca..8a1da68118df 100644
--- a/dev-util/diffoscope/Manifest
+++ b/dev-util/diffoscope/Manifest
@@ -2,3 +2,4 @@ DIST diffoscope-266.tar.bz2 3148610 BLAKE2B 28090b8a1e2315f9df43d254d3dbd4ed8f6d
 DIST diffoscope-268.tar.bz2 3151657 BLAKE2B 2133611135347a9babfb55972ef5d456cc274634facc07ea8dc2c214147507d223a6fd8cf24541c04fc19c3510c7548bdaa5549f5587c9d99de7b61e64bd2f7d SHA512 9a0f3c81e9beb171fdef8282ac3938a5534f894437f898ab1437cdeb30a12c7fb8a1a494479f46c41d65e78fe014b8c1e510a72d0673f3d0d769d71c4af12a5d
 DIST diffoscope-271.tar.bz2 3155727 BLAKE2B fa4ee93158cf41215d071aa3caa1956325fdbb1e4f1a9e392485117cb58b8142ac7f326cd650e72440a2512a08aa2c6a7d9c64a0fa8bf9768c9f0d97a45d872e SHA512 f5688d82313f54a9b9db88c406cdd67f13aeb65a8aa844fa41a944f6beaa0b2189175c891ddaf3b345492141472ce0366fd22691c2c89fd9a3d8c0b8d62f476c
 DIST diffoscope-272.tar.bz2 3155265 BLAKE2B 76f8475993dc8be7297b50a2dda71b965789f6de04143e22b3b28c25e6646d9744088a49181faeb488921eb192b85072d16fee35f41450ba389c491e6a43c7b5 SHA512 f74d0166526da10604f25ba0425d3acc540cb92780776d108b60b07d00fa1039ea5a3fde4fd260497e0cf6ae387457e6fff989c5795bca6ce14199f0c9a15174
+DIST diffoscope-274.tar.bz2 3165288 BLAKE2B 287d4ef0b4ba298a37659cc5599a06d520f3b751bfcf486def6279bbb80e7c72557fcca2ece900d74a8b44c3f9118b7ba8ed2e0933c60671c8c73ae43ea26f30 SHA512 dc0b804fa67bb7e01a3eb1814dbfe25e5d0069c43990b98d6c94dcb40b454e10f5aa20512559fbbd450e6e30f635c6f5dc03afb63e0d25bc04d5e617c7505f0b

diff --git a/dev-util/diffoscope/diffoscope-274.ebuild b/dev-util/diffoscope/diffoscope-274.ebuild
new file mode 100644
index 000000000000..dfbbd82decc6
--- /dev/null
+++ b/dev-util/diffoscope/diffoscope-274.ebuild
@@ -0,0 +1,144 @@
+# 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..13} )
+PYTHON_REQ_USE="ncurses"
+inherit distutils-r1 toolchain-funcs
+
+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}-new-zipdetails.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
+
+src_test() {
+	case $(tc-get-ptr-size) in
+		4)
+			EPYTEST_IGNORE+=(
+				# Needs fixing in Perl itself (bug #934443)
+				tests/comparators/test_epub.py
+				tests/comparators/test_zip.py
+			)
+			;;
+		*)
+			;;
+	esac
+
+	distutils-r1_src_test
+}

diff --git a/dev-util/diffoscope/files/diffoscope-274-new-zipdetails.patch b/dev-util/diffoscope/files/diffoscope-274-new-zipdetails.patch
new file mode 100644
index 000000000000..3ddc99c107fc
--- /dev/null
+++ b/dev-util/diffoscope/files/diffoscope-274-new-zipdetails.patch
@@ -0,0 +1,87 @@
+https://salsa.debian.org/reproducible-builds/diffoscope/-/commit/e6ef110086bcb1272c37b44074fcb083ed0c9b41
+
+From e6ef110086bcb1272c37b44074fcb083ed0c9b41 Mon Sep 17 00:00:00 2001
+From: Chris Lamb <lamby@debian.org>
+Date: Tue, 13 Aug 2024 11:13:17 +0100
+Subject: [PATCH] Update test_zip text fixtures and definitions to support new
+ IO::Compress changes. (Closes: Debian:#1078050)
+
+---
+ tests/comparators/test_zip.py            |  8 +++--
+ tests/data/zip2_zipdetails_expected_diff | 38 ++++++++++++------------
+ 2 files changed, 25 insertions(+), 21 deletions(-)
+
+diff --git a/tests/comparators/test_zip.py b/tests/comparators/test_zip.py
+index 570931ee..303b6f80 100644
+--- a/tests/comparators/test_zip.py
++++ b/tests/comparators/test_zip.py
+@@ -93,6 +93,7 @@ def test_compressed_files(differences):
+ 
+ 
+ @skip_unless_tools_exist("zipinfo", "bsdtar", "zipdetails")
++@skip_unless_tool_is_at_least("perl", io_compress_zip_version, "2.212")
+ def test_extra_fields(differences2):
+     assert_diff(differences2[0], "zip_bsdtar_expected_diff")
+     assert_diff(differences2[1], "zip2_zipdetails_expected_diff")
+@@ -148,11 +149,14 @@ def jmod_differences(jmod1, jmod2):
+     return jmod1.compare(jmod2).details
+ 
+ 
+-@skip_unless_tools_exist("zipinfo", "zipdetails")
++@skip_unless_tools_exist("zipinfo", "zipdetails", "zipnote")
+ @skip_unless_tool_is_at_least("perl", io_compress_zip_version, "2.212")
+ def test_jmod_metadata(jmod_differences, jmod1, jmod2):
++    assert jmod_differences[0].source1 == "zipinfo {}"
++    assert jmod_differences[1].source1.startswith("zipnote")
++    assert jmod_differences[2].source1.startswith("zipdetails")
+     assert_diff(jmod_differences[0], "jmod_zipinfo_expected_diff")
+-    assert_diff(jmod_differences[1], "jmod_zipdetails_expected_diff")
++    assert_diff(jmod_differences[2], "jmod_zipdetails_expected_diff")
+ 
+ 
+ def test_encrypted(encrypted_zip1, encrypted_zip2):
+diff --git a/tests/data/zip2_zipdetails_expected_diff b/tests/data/zip2_zipdetails_expected_diff
+index d764a818..291dca88 100644
+--- a/tests/data/zip2_zipdetails_expected_diff
++++ b/tests/data/zip2_zipdetails_expected_diff
+@@ -1,19 +1,19 @@
+-@@ -36,16 +36,16 @@
+- 0054 Uncompressed Length   000001BE
+- 0058 Filename Length       0008
+- 005A Extra Length          001C
+- 005C Filename              'XXX/XXXX'
+- 0064 Extra ID #0001        5455 'UT: Extended Timestamp'
+- 0066   Length              0009
+- 0068   Flags               '03 mod access'
+--0069   Mod Time            558AB455 'Wed Jun 24 13:44:53 2015'
+--006D   Access Time         558AB45F 'Wed Jun 24 13:45:03 2015'
+-+0069   Mod Time            41414141 'Fri Sep 10 05:53:05 2004'
+-+006D   Access Time         41414141 'Fri Sep 10 05:53:05 2004'
+- 0071 Extra ID #0002        7875 'ux: Unix Extra Type 3'
+- 0073   Length              000B
+- 0075   Version             01
+- 0076   UID Size            04
+- 0077   UID                 000003E8
+- 007B   GID Size            04
+- 007C   GID                 000003E8
++@@ -44,16 +44,16 @@
++ #
++ # WARNING: Offset 0x5C: Filename 'XXXXXXXX'
++ #          Zero length filename
++ #
++ 0064 Extra ID #1           5455 (21589) 'Extended Timestamp [UT]'
++ 0066   Length              0009 (9)
++ 0068   Flags               03 (3) 'Modification Access'
++-0069   Modification Time   558AB455 (1435153493) 'Wed Jun 24 13:44:53 2015'
++-006D   Access Time         558AB45F (1435153503) 'Wed Jun 24 13:45:03 2015'
+++0069   Modification Time   41414141 (1094795585) 'Fri Sep 10 05:53:05 2004'
+++006D   Access Time         41414141 (1094795585) 'Fri Sep 10 05:53:05 2004'
++ 0071 Extra ID #2           7875 (30837) 'Unix Extra type 3 [ux]'
++ 0073   Length              000B (11)
++ 0075   Version             01 (1)
++ 0076   UID Size            04 (4)
++ 0077   UID                 000003E8 (1000)
++ 007B   GID Size            04 (4)
++ 007C   GID                 000003E8 (1000)
+-- 
+GitLab


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/diffoscope/files/, dev-util/diffoscope/
@ 2024-09-02  6:16 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2024-09-02  6:16 UTC (permalink / raw
  To: gentoo-commits

commit:     a7886f3823b2965ee2e94269e54fdd748afade74
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  2 05:56:36 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Sep  2 06:15:18 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a7886f38

dev-util/diffoscope: drop 268, 271, 274

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/diffoscope/Manifest                       |   3 -
 dev-util/diffoscope/diffoscope-268.ebuild          | 151 ---------------------
 dev-util/diffoscope/diffoscope-271.ebuild          | 147 --------------------
 dev-util/diffoscope/diffoscope-274.ebuild          | 144 --------------------
 .../diffoscope/files/diffoscope-268-7zip.patch     |  43 ------
 .../files/diffoscope-274-new-zipdetails.patch      |  87 ------------
 6 files changed, 575 deletions(-)

diff --git a/dev-util/diffoscope/Manifest b/dev-util/diffoscope/Manifest
index 31429847e056..b0062d4b9d52 100644
--- a/dev-util/diffoscope/Manifest
+++ b/dev-util/diffoscope/Manifest
@@ -1,6 +1,3 @@
 DIST diffoscope-266.tar.bz2 3148610 BLAKE2B 28090b8a1e2315f9df43d254d3dbd4ed8f6d4ba4d259c764f53b84137ac0b3dc97b51df56ba595eee950c54974e9b6109c423392d198e277d520f11559ecd78e SHA512 2eb7cbd333b6559ba0f66647184f1747cac52cca6304a27eefe914329797469d5fb9519abe92386d3785f4f2c779f8f5dd95ecc8f54f8b08fd4fc94746bf273d
-DIST diffoscope-268.tar.bz2 3151657 BLAKE2B 2133611135347a9babfb55972ef5d456cc274634facc07ea8dc2c214147507d223a6fd8cf24541c04fc19c3510c7548bdaa5549f5587c9d99de7b61e64bd2f7d SHA512 9a0f3c81e9beb171fdef8282ac3938a5534f894437f898ab1437cdeb30a12c7fb8a1a494479f46c41d65e78fe014b8c1e510a72d0673f3d0d769d71c4af12a5d
-DIST diffoscope-271.tar.bz2 3155727 BLAKE2B fa4ee93158cf41215d071aa3caa1956325fdbb1e4f1a9e392485117cb58b8142ac7f326cd650e72440a2512a08aa2c6a7d9c64a0fa8bf9768c9f0d97a45d872e SHA512 f5688d82313f54a9b9db88c406cdd67f13aeb65a8aa844fa41a944f6beaa0b2189175c891ddaf3b345492141472ce0366fd22691c2c89fd9a3d8c0b8d62f476c
 DIST diffoscope-272.tar.bz2 3155265 BLAKE2B 76f8475993dc8be7297b50a2dda71b965789f6de04143e22b3b28c25e6646d9744088a49181faeb488921eb192b85072d16fee35f41450ba389c491e6a43c7b5 SHA512 f74d0166526da10604f25ba0425d3acc540cb92780776d108b60b07d00fa1039ea5a3fde4fd260497e0cf6ae387457e6fff989c5795bca6ce14199f0c9a15174
-DIST diffoscope-274.tar.bz2 3165288 BLAKE2B 287d4ef0b4ba298a37659cc5599a06d520f3b751bfcf486def6279bbb80e7c72557fcca2ece900d74a8b44c3f9118b7ba8ed2e0933c60671c8c73ae43ea26f30 SHA512 dc0b804fa67bb7e01a3eb1814dbfe25e5d0069c43990b98d6c94dcb40b454e10f5aa20512559fbbd450e6e30f635c6f5dc03afb63e0d25bc04d5e617c7505f0b
 DIST diffoscope-276.tar.bz2 3145876 BLAKE2B 734c35c40f04c843066754e1852f0c2fab90ec90f3700d593bf3439193aea89b747aec2759413eb2e3bdbde49dfdae3cfc6accf4178ec116265454ff75f1db45 SHA512 3891456fbc703b369acfe44daa80b9be68fbe62853c5506617b1f007a8b61e8dd55a7094b9df87c71aedbc2e28f1e5ecc354f51032d8cfe5823a0db29cb284c9

diff --git a/dev-util/diffoscope/diffoscope-268.ebuild b/dev-util/diffoscope/diffoscope-268.ebuild
deleted file mode 100644
index 1761b40e36fc..000000000000
--- a/dev-util/diffoscope/diffoscope-268.ebuild
+++ /dev/null
@@ -1,151 +0,0 @@
-# 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 toolchain-funcs
-
-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
-
-	# Fails with perl-5.40
-	# https://salsa.debian.org/reproducible-builds/diffoscope/-/issues/377
-	tests/comparators/test_epub.py::test_differences
-	tests/comparators/test_zip.py::test_metadata
-	tests/comparators/test_zip.py::test_extra_fields
-	tests/comparators/test_zip.py::test_commented
-)
-
-distutils_enable_tests pytest
-
-src_test() {
-	case $(tc-get-ptr-size) in
-		4)
-			EPYTEST_IGNORE+=(
-				# Needs fixing in Perl itself (bug #934443)
-				tests/comparators/test_epub.py
-				tests/comparators/test_zip.py
-			)
-			;;
-		*)
-			;;
-	esac
-
-	distutils-r1_src_test
-}

diff --git a/dev-util/diffoscope/diffoscope-271.ebuild b/dev-util/diffoscope/diffoscope-271.ebuild
deleted file mode 100644
index 10e254dd5ac3..000000000000
--- a/dev-util/diffoscope/diffoscope-271.ebuild
+++ /dev/null
@@ -1,147 +0,0 @@
-# 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 toolchain-funcs
-
-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]
-	)
-"
-
-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
-
-	# Fails with perl-5.40
-	# https://salsa.debian.org/reproducible-builds/diffoscope/-/issues/377
-	tests/comparators/test_epub.py::test_differences
-	tests/comparators/test_zip.py::test_metadata
-	tests/comparators/test_zip.py::test_extra_fields
-	tests/comparators/test_zip.py::test_commented
-)
-
-distutils_enable_tests pytest
-
-src_test() {
-	case $(tc-get-ptr-size) in
-		4)
-			EPYTEST_IGNORE+=(
-				# Needs fixing in Perl itself (bug #934443)
-				tests/comparators/test_epub.py
-				tests/comparators/test_zip.py
-			)
-			;;
-		*)
-			;;
-	esac
-
-	distutils-r1_src_test
-}

diff --git a/dev-util/diffoscope/diffoscope-274.ebuild b/dev-util/diffoscope/diffoscope-274.ebuild
deleted file mode 100644
index dfbbd82decc6..000000000000
--- a/dev-util/diffoscope/diffoscope-274.ebuild
+++ /dev/null
@@ -1,144 +0,0 @@
-# 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..13} )
-PYTHON_REQ_USE="ncurses"
-inherit distutils-r1 toolchain-funcs
-
-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}-new-zipdetails.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
-
-src_test() {
-	case $(tc-get-ptr-size) in
-		4)
-			EPYTEST_IGNORE+=(
-				# Needs fixing in Perl itself (bug #934443)
-				tests/comparators/test_epub.py
-				tests/comparators/test_zip.py
-			)
-			;;
-		*)
-			;;
-	esac
-
-	distutils-r1_src_test
-}

diff --git a/dev-util/diffoscope/files/diffoscope-268-7zip.patch b/dev-util/diffoscope/files/diffoscope-268-7zip.patch
deleted file mode 100644
index 4f7464c07a33..000000000000
--- a/dev-util/diffoscope/files/diffoscope-268-7zip.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-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

diff --git a/dev-util/diffoscope/files/diffoscope-274-new-zipdetails.patch b/dev-util/diffoscope/files/diffoscope-274-new-zipdetails.patch
deleted file mode 100644
index 3ddc99c107fc..000000000000
--- a/dev-util/diffoscope/files/diffoscope-274-new-zipdetails.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-https://salsa.debian.org/reproducible-builds/diffoscope/-/commit/e6ef110086bcb1272c37b44074fcb083ed0c9b41
-
-From e6ef110086bcb1272c37b44074fcb083ed0c9b41 Mon Sep 17 00:00:00 2001
-From: Chris Lamb <lamby@debian.org>
-Date: Tue, 13 Aug 2024 11:13:17 +0100
-Subject: [PATCH] Update test_zip text fixtures and definitions to support new
- IO::Compress changes. (Closes: Debian:#1078050)
-
----
- tests/comparators/test_zip.py            |  8 +++--
- tests/data/zip2_zipdetails_expected_diff | 38 ++++++++++++------------
- 2 files changed, 25 insertions(+), 21 deletions(-)
-
-diff --git a/tests/comparators/test_zip.py b/tests/comparators/test_zip.py
-index 570931ee..303b6f80 100644
---- a/tests/comparators/test_zip.py
-+++ b/tests/comparators/test_zip.py
-@@ -93,6 +93,7 @@ def test_compressed_files(differences):
- 
- 
- @skip_unless_tools_exist("zipinfo", "bsdtar", "zipdetails")
-+@skip_unless_tool_is_at_least("perl", io_compress_zip_version, "2.212")
- def test_extra_fields(differences2):
-     assert_diff(differences2[0], "zip_bsdtar_expected_diff")
-     assert_diff(differences2[1], "zip2_zipdetails_expected_diff")
-@@ -148,11 +149,14 @@ def jmod_differences(jmod1, jmod2):
-     return jmod1.compare(jmod2).details
- 
- 
--@skip_unless_tools_exist("zipinfo", "zipdetails")
-+@skip_unless_tools_exist("zipinfo", "zipdetails", "zipnote")
- @skip_unless_tool_is_at_least("perl", io_compress_zip_version, "2.212")
- def test_jmod_metadata(jmod_differences, jmod1, jmod2):
-+    assert jmod_differences[0].source1 == "zipinfo {}"
-+    assert jmod_differences[1].source1.startswith("zipnote")
-+    assert jmod_differences[2].source1.startswith("zipdetails")
-     assert_diff(jmod_differences[0], "jmod_zipinfo_expected_diff")
--    assert_diff(jmod_differences[1], "jmod_zipdetails_expected_diff")
-+    assert_diff(jmod_differences[2], "jmod_zipdetails_expected_diff")
- 
- 
- def test_encrypted(encrypted_zip1, encrypted_zip2):
-diff --git a/tests/data/zip2_zipdetails_expected_diff b/tests/data/zip2_zipdetails_expected_diff
-index d764a818..291dca88 100644
---- a/tests/data/zip2_zipdetails_expected_diff
-+++ b/tests/data/zip2_zipdetails_expected_diff
-@@ -1,19 +1,19 @@
--@@ -36,16 +36,16 @@
-- 0054 Uncompressed Length   000001BE
-- 0058 Filename Length       0008
-- 005A Extra Length          001C
-- 005C Filename              'XXX/XXXX'
-- 0064 Extra ID #0001        5455 'UT: Extended Timestamp'
-- 0066   Length              0009
-- 0068   Flags               '03 mod access'
---0069   Mod Time            558AB455 'Wed Jun 24 13:44:53 2015'
---006D   Access Time         558AB45F 'Wed Jun 24 13:45:03 2015'
--+0069   Mod Time            41414141 'Fri Sep 10 05:53:05 2004'
--+006D   Access Time         41414141 'Fri Sep 10 05:53:05 2004'
-- 0071 Extra ID #0002        7875 'ux: Unix Extra Type 3'
-- 0073   Length              000B
-- 0075   Version             01
-- 0076   UID Size            04
-- 0077   UID                 000003E8
-- 007B   GID Size            04
-- 007C   GID                 000003E8
-+@@ -44,16 +44,16 @@
-+ #
-+ # WARNING: Offset 0x5C: Filename 'XXXXXXXX'
-+ #          Zero length filename
-+ #
-+ 0064 Extra ID #1           5455 (21589) 'Extended Timestamp [UT]'
-+ 0066   Length              0009 (9)
-+ 0068   Flags               03 (3) 'Modification Access'
-+-0069   Modification Time   558AB455 (1435153493) 'Wed Jun 24 13:44:53 2015'
-+-006D   Access Time         558AB45F (1435153503) 'Wed Jun 24 13:45:03 2015'
-++0069   Modification Time   41414141 (1094795585) 'Fri Sep 10 05:53:05 2004'
-++006D   Access Time         41414141 (1094795585) 'Fri Sep 10 05:53:05 2004'
-+ 0071 Extra ID #2           7875 (30837) 'Unix Extra type 3 [ux]'
-+ 0073   Length              000B (11)
-+ 0075   Version             01 (1)
-+ 0076   UID Size            04 (4)
-+ 0077   UID                 000003E8 (1000)
-+ 007B   GID Size            04 (4)
-+ 007C   GID                 000003E8 (1000)
--- 
-GitLab


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-09-02  6:16 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-14 11:24 [gentoo-commits] repo/gentoo:master commit in: dev-util/diffoscope/files/, dev-util/diffoscope/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2024-09-02  6:16 Sam James
2024-08-15  0:26 Sam James
2023-01-14 23:22 Sam James
2023-01-08  3:20 Sam James

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox