## START: Set by rpmautospec ## (rpmautospec version 0.6.0) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 3; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec Name: diffoscope Version: 258 Release: %autorelease Summary: In-depth comparison of files, archives, and directories License: GPL-3.0-or-later URL: https://diffoscope.org/ #Source0: https://files.pythonhosted.org/packages/source/d/diffoscope/diffoscope-%%{version}.tar.gz Source0: https://salsa.debian.org/reproducible-builds/diffoscope/-/archive/%{version}/diffoscope-%{version}.tar.gz Patch: https://salsa.debian.org/reproducible-builds/diffoscope/-/commit/466523ac6fbd1437635f8393fb93c37ff59341b3.patch # The package is arched due to architecture-dependent BR’s and Recommends; # however, there is no compiled code, so no debug package will be generated. %global debug_package %{nil} ExcludeArch: %{ix86} %global tools \ acl \ abootimg \ black \ e2fsprogs \ cpio \ llvm, llvm-devel \ binutils \ binwalk \ diffutils \ gzip \ unzip \ bzip2 \ xz \ tar \ zip \ p7zip \ sng >= 1.1.0-2 \ openssl \ openssh \ openssh-clients \ radare2 \ sqlite \ genisoimage \ squashfs-tools \ /usr/bin/img2txt \ /usr/bin/rpm2cpio \ /usr/bin/msgunfmt \ /usr/bin/ps2ascii \ /usr/bin/qemu-img \ /usr/bin/xxd \ /usr/bin/ghc \ /usr/bin/cd-iccdump \ /usr/bin/oggDump \ /usr/bin/Rscript \ /usr/bin/fdtdump \ /usr/bin/gifbuild \ /usr/bin/dumppdf \ /usr/bin/h5dump \ gnupg \ pgpdump \ findutils \ file \ ImageMagick \ poppler-utils \ python3-argcomplete \ python3-debian \ python3-h5py \ python3-magic \ python3-pdfminer \ python3-tlsh \ python3-libarchive-c \ python3-libguestfs \ python3-rpm \ gnumeric \ odt2txt \ wabt # missing: # aapt # apktool # js-beautify # /usr/bin/dumpxsb from xmlbeans-scripts, xmlbeans # docx2txt # dexdump # Does not work with python3-PyPDF2-1.26.0 # python3-pypdf >= 3.0 # https://bugzilla.redhat.com/show_bug.cgi?id=2073259 %ifnarch ppc64 ppc64le %global tools2 \ mono-devel %endif %ifarch x86_64 i686 armv7hl %global tools3 \ fpc %endif %ifnarch s390x %global tools4 \ /usr/bin/dumpimage %endif %ifarch %{java_arches} %global tools5 \ procyon %endif %global toolz %(echo "%tools %?tools2 %?tools3 %?tools4 %?tools5" | grep . | tr '\\n' ', ') BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-docutils # for tests BuildRequires: python3-pytest BuildRequires: %toolz BuildRequires: help2man BuildRequires: make BuildRequires: git %ifarch %{java_arches} BuildRequires: java-devel %endif Recommends: %toolz %description diffoscope will try to get to the bottom of what makes files or directories different. It will recursively unpack archives of many kinds and transform various binary formats into more human readable form to compare them. It can compare two tarballs, ISO images, or PDF just as easily. The differences can be shown in a text or HTML report. diffoscope is developed as part of the "reproducible builds" Debian project and was formerly known as "debbindiff". %prep %autosetup -p1 -Sgit sed -i '1{\@/usr/bin/env@d}' diffoscope/main.py # We use the python3-file-magic module instead of the python3-magic module. # They conflict, and python3-file-magic is required by rpmlint. sed -i s/python-magic/file-magic/ setup.py %build %py3_build make -C doc %install %py3_install echo %{buildroot}%{python3_sitelib} install -Dm0644 -t %{buildroot}%{_mandir}/man1/ doc/diffoscope.1 install -Dm0644 -t %{buildroot}/usr/share/zsh/site-functions/ debian/zsh-completion/_diffoscope %check DESELECT=( # s390x specific issue? --deselect=tests/comparators/test_ogg.py::test_diff --deselect=tests/comparators/test_ogg.py::test_compare_non_existing --deselect=tests/test_tools.py::test_sbin_added_to_path --deselect=tests/comparators/test_python.py::test_diff # What exactly is the point of those tests? --deselect=tests/test_source.py::test_code_is_black_clean # Those fail on rawhide. Not reported upstream yet. --deselect=tests/comparators/test_fsimage.py::test_differences --deselect=tests/comparators/test_fsimage.py::test_differences_fat --deselect=tests/comparators/test_elf.py::test_differences_with_dbgsym --deselect=tests/comparators/test_elf.py::test_original_gnu_debuglink # Those seem to depend on the 'file' implementation, ignore. --deselect=tests/comparators/test_html.py::test_diff --deselect=tests/comparators/test_text.py::test_text_fallback ) LC_CTYPE=C.utf8 \ TZ=UTC \ PYTHONPATH=build/lib/ \ %python3 -m pytest tests/ -vv "${DESELECT[@]}" %files %doc README.rst debian/changelog %license COPYING %{python3_sitelib}/diffoscope* %{_bindir}/diffoscope /usr/share/zsh/site-functions/_diffoscope %doc %{_mandir}/man1/diffoscope.1* %changelog ## START: Generated by rpmautospec * Thu Feb 29 2024 Jiri - 258-3 - bump of release for for java-21-openjdk as system jdk * Thu Feb 29 2024 Zbigniew Jędrzejewski-Szmek - 258-2 - Add patch for https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1064973. * Wed Feb 28 2024 Zbigniew Jędrzejewski-Szmek - 258-1 - Version 258 - Actually, this update is a noop for Fedora, but I'll push it to rawhide since I already did the work. * Tue Feb 27 2024 Jiri Vanek - 257-2 - Rebuilt for java-21-openjdk as system jdk * Sun Feb 18 2024 Zbigniew Jędrzejewski-Szmek - 257-1 - Version 257 - Fixes rhbz#2264736, CVE-2024-25711 * Wed Jan 31 2024 Zbigniew Jędrzejewski-Szmek - 255-1 - Version 255 * Wed Jan 24 2024 Fedora Release Engineering - 252-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Fri Jan 19 2024 Fedora Release Engineering - 252-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Tue Nov 21 2023 Zbigniew Jędrzejewski-Szmek - 252-1 - Version 252 - Just a single update for OOM handling * Tue Nov 21 2023 Zbigniew Jędrzejewski-Szmek - 251-3 - Convert license tag to SPDX * Wed Nov 01 2023 Zbigniew Jędrzejewski-Szmek - 251-1 - Version 251 - Just some smaller refactorings and updates for new tool versions * Fri Jul 21 2023 Zbigniew Jędrzejewski-Szmek - 245-1 - Version 245 * Wed Jul 19 2023 Fedora Release Engineering - 233-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Thu Jul 13 2023 Python Maint - 233-3 - Rebuilt for Python 3.12 * Sun Jan 22 2023 Zbigniew Jędrzejewski-Szmek - 233-2 - Skip tests that fail with latest ImageMagick * Sun Jan 22 2023 Zbigniew Jędrzejewski-Szmek - 233-1 - Version 233 - Seems to be mostly Debian packaging updates + some fixes and workarounds * Thu Jan 19 2023 Fedora Release Engineering - 221-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Sat Aug 20 2022 Zbigniew Jędrzejewski-Szmek - 221-3 - Skip failing tests * Sat Aug 20 2022 Zbigniew Jędrzejewski-Szmek - 221-2 - Stop building on i686 * Sat Aug 20 2022 Zbigniew Jędrzejewski-Szmek - 221-1 - Version 221 (just bugfixes). - Pull in argcomplete for completions - Dependency on java is archful, and only on build time (rhbz#2104034) * Thu Jul 21 2022 Fedora Release Engineering - 213-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Fri Jun 17 2022 Python Maint - 213-2 - Rebuilt for Python 3.11 * Sat May 21 2022 Zbigniew Jędrzejewski-Szmek - 213-1 - Version 213 * Sat Feb 05 2022 Jiri - 200-2 - Rebuilt for java-17-openjdk as system jdk * Thu Jan 20 2022 Zbigniew Jędrzejewski-Szmek - 200-1 - Version 200 * Thu Jan 20 2022 Fedora Release Engineering - 196-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Mon Dec 13 2021 Zbigniew Jędrzejewski-Szmek - 196-1 - Version 196 * Fri Nov 19 2021 Zbigniew Jędrzejewski-Szmek - 193-1 - Version 193 * Fri Nov 12 2021 Zbigniew Jędrzejewski-Szmek - 192-1 - Version 192 * Sun Nov 07 2021 Zbigniew Jędrzejewski-Szmek - 190-2 - Unskip tests fixed upstream and skip more on s390x * Sun Nov 07 2021 Zbigniew Jędrzejewski-Szmek - 190-1 - Version 190 * Sat Oct 16 2021 Zbigniew Jędrzejewski-Szmek - 186-2 - Upload sources * Sat Oct 16 2021 Zbigniew Jędrzejewski-Szmek - 186-1 - Version 186 * Fri Oct 15 2021 Benjamin A. Beasley - 183-2 - Work around dumpimage (uboot-tools) not on s390x * Sun Sep 12 2021 Zbigniew Jędrzejewski-Szmek - 183-1 - Version 183 * Wed Jul 21 2021 Fedora Release Engineering - 174-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Fri Jun 04 2021 Python Maint - 174-2 - Rebuilt for Python 3.10 * Mon May 17 2021 Zbigniew Jędrzejewski-Szmek - 174-1 - Latest upstream version, various bugfixes only. - Skip failing test (#1947306) * Fri Feb 5 2021 Zbigniew Jędrzejewski-Szmek - 166-1 - Latest upstream version, no big changes afaict. * Tue Jan 26 2021 Fedora Release Engineering - 163-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Wed Jan 6 2021 Zbigniew Jędrzejewski-Szmek - 163-1 - Update to latest version. - Radare2 may now be used for disassembly. - Fix build (#1902703) * Fri Aug 7 2020 Zbigniew Jędrzejewski-Szmek - 154-1 - Update to latest version - Drop dependency on enjarify (#1841628). Hopefully only temporarily. * Sat Aug 01 2020 Fedora Release Engineering - 137-5 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Mon Jul 27 2020 Fedora Release Engineering - 137-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Fri Jul 10 2020 Jiri Vanek - 137-3 - Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 * Tue May 26 2020 Miro Hrončok - 137-2 - Rebuilt for Python 3.9 * Thu Mar 5 2020 Zbigniew Jędrzejewski-Szmek - 137-1 - Update to latest version, fix build (#1799281) * Tue Jan 28 2020 Fedora Release Engineering - 134-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Mon Dec 30 2019 Zbigniew Jędrzejewski-Szmek - 134-1 - Update to latest version (bugfix changes only according to debian changelog) * Sun Dec 1 2019 Zbigniew Jędrzejewski-Szmek - 133-1 - Update to latest version * Thu Oct 03 2019 Miro Hrončok - 111-4 - Rebuilt for Python 3.8.0rc1 (#1748018) * Mon Aug 19 2019 Miro Hrončok - 111-3 - Rebuilt for Python 3.8 * Wed Jul 24 2019 Fedora Release Engineering - 111-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Sun Feb 10 2019 Zbigniew Jędrzejewski-Szmek - 111-1 - Update to latest version * Thu Jan 31 2019 Fedora Release Engineering - 105-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Mon Nov 12 2018 Zbigniew Jędrzejewski-Szmek - 105-1 - Update to latest version * Sat Sep 15 2018 Zbigniew Jędrzejewski-Szmek - 100-1 - Update to latest version - Fix reference to file-magic (#1583331) * Thu Jul 12 2018 Fedora Release Engineering - 98-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Mon Jul 2 2018 Zbigniew Jędrzejewski-Szmek - 98-1 - Update to latest upstream version (declared python3.7 compat) * Mon Jun 25 2018 Zbigniew Jędrzejewski-Szmek - 96-1 - Update to latest version * Tue Jun 19 2018 Miro Hrončok - 95-2 - Rebuilt for Python 3.7 * Sun May 20 2018 Zbigniew Jędrzejewski-Szmek - 95-1 - Update to latest version (see https://salsa.debian.org/reproducible-builds/diffoscope/blob/516d5930f16867282d537c884e78213f9c4b8796/debian/changelog). * Fri Mar 2 2018 Zbigniew Jędrzejewski-Szmek - 91-1 - Update to latest version * Wed Feb 07 2018 Fedora Release Engineering - 90-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Wed Jan 10 2018 Zbigniew Jędrzejewski-Szmek - 90-1 - Update to latest version * Wed Jul 26 2017 Fedora Release Engineering - 77-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Fri Feb 24 2017 Zbigniew Jędrzejewski-Szmek - 77-2 - Pull in enjarify * Mon Feb 13 2017 Zbigniew Jędrzejewski-Szmek - 77-1 - Update to latest version (fixes #1421770, CVE-2017-0359) - Also pull in python-debian * Fri Feb 10 2017 Fedora Release Engineering - 69-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Thu Jan 19 2017 Zbigniew Jędrzejewski-Szmek - 69-1 - Update to latest version (upstream dropped trydiffoscope) - Add more dependendencies, and pull them in as Recommends * Mon Dec 19 2016 Miro Hrončok - 62-2 - Rebuild for Python 3.6 * Tue Nov 15 2016 Zbigniew Jędrzejewski-Szmek - 62-1 - Update to latest version * Mon Aug 15 2016 Zbigniew Jędrzejewski-Szmek - 59-1 - Update to latest version - Require python-libarchive-c (#1367034) * Mon Aug 15 2016 Zbigniew Jędrzejewski-Szmek - 58-1 - Update to latest version * Tue Jul 19 2016 Fedora Release Engineering - 54-2 - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages * Fri Jun 10 2016 Zbigniew Jędrzejewski-Szmek - 54-1 - Update to latest version * Thu Mar 10 2016 Zbigniew Jędrzejewski-Szmek - 51-3 - Change License to GPLv3+ * Thu Mar 10 2016 Zbigniew Jędrzejewski-Szmek - 51-2 - Require python3-tlsh * Wed Mar 9 2016 Zbigniew Jędrzejewski-Szmek - 51-1 - Update to v 51 - Add man page * Tue Mar 8 2016 Zbigniew Jędrzejewski-Szmek - 48-1 - Update to v 48, simplify packaging * Sat Dec 05 2015 Dhiru Kholia - 42-1 - Initial version ## END: Generated by rpmautospec