Package: src:diffoscope; Maintainer for src:diffoscope is Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>;
Reported by: Lucas Nussbaum <lucas@debian.org>
Date: Fri, 17 Feb 2023 06:57:07 UTC
Severity: serious
Tags: bookworm, ftbfs, sid
Found in version diffoscope/235
Fixed in version diffoscope/236
Done: Chris Lamb <lamby@debian.org>
Bug is archived. No further changes may be made.
View this report as an mbox folder, status mbox, maintainer mbox
Report forwarded
to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#1031433; Package src:diffoscope.
(Fri, 17 Feb 2023 06:57:10 GMT) (full text, mbox, link).
Acknowledgement sent
to Lucas Nussbaum <lucas@debian.org>:
New Bug report received and forwarded. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>.
(Fri, 17 Feb 2023 06:57:10 GMT) (full text, mbox, link).
Message #5 received at submit@bugs.debian.org (full text, mbox, reply):
Source: diffoscope
Version: 235
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs
User: lucas@debian.org
Usertags: ftbfs-20230216 ftbfs-bookworm
Hi,
During a rebuild of all packages in sid, your package failed to build
on amd64.
Relevant part (hopefully):
> make[2]: Entering directory '/<<PKGBUILDDIR>>/doc'
> { cat diffoscope.h2m.0; cat ../README.rst | \
> sed -e '/^\.\. raw:: /d' -e '/^\.\. image:: /d' -e '/ :target: /d' | tee out.txt | \
> rst2man -q --no-doc-title | \
> sed -e 's,^ \\- ,,' -e 's,^\[,\\[char91],g' -e 's,\.TH *"" "" "",,g' \
> -e 's,bin/diffoscope,diffoscope,g' \
> -e 's,\.SH \(.*\),[\1],g' -e 's,\[diffoscope\],[DESCRIPTION],gi'; } > "diffoscope.h2m"
> help2man --version-string=$(cd .. && python3 setup.py -V) ../bin/diffoscope -N --include="diffoscope.h2m" | \
> sed -e '/end_of_description_header/,/positional arguments/{d}' > "diffoscope.1"
> make[2]: Leaving directory '/<<PKGBUILDDIR>>/doc'
> make[1]: Leaving directory '/<<PKGBUILDDIR>>'
> dh_auto_test -O--buildsystem=pybuild
> I: pybuild pybuild:307: flake8 --config=/dev/null --select=F821
> I: pybuild base:240: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build; python3.11 -m pytest -vv -r sxX -l --cov=diffoscope --cov-report=term-missing --cov-report=html
> ============================= test session starts ==============================
> platform linux -- Python 3.11.2, pytest-7.2.1, pluggy-1.0.0+repack -- /usr/bin/python3.11
> cachedir: .pytest_cache
> rootdir: /<<PKGBUILDDIR>>, configfile: pytest.ini
> plugins: cov-4.0.0
> collecting ... collected 711 items / 1 skipped
>
> tests/test_diff_mask.py::test_none PASSED [ 0%]
> tests/test_diff_mask.py::test_all PASSED [ 0%]
> tests/test_diff_mask.py::test_specific PASSED [ 0%]
> tests/test_difference.py::test_too_much_input_for_diff PASSED [ 0%]
> tests/test_difference.py::test_too_long_diff_block_lines PASSED [ 0%]
> tests/test_difference.py::test_size_updates PASSED [ 0%]
> tests/test_difference.py::test_traverse_heapq PASSED [ 0%]
> tests/test_difference.py::test_non_str_arguments_to_source1_source2 PASSED [ 1%]
> tests/test_difference.py::test_adjust_diff_context PASSED [ 1%]
> tests/test_excludes.py::test_none PASSED [ 1%]
> tests/test_excludes.py::test_all PASSED [ 1%]
> tests/test_excludes.py::test_specific PASSED [ 1%]
> tests/test_excludes.py::test_specific_case PASSED [ 1%]
> tests/test_excludes.py::test_multiple PASSED [ 1%]
> tests/test_excludes.py::test_nomatch PASSED [ 2%]
> tests/test_excludes.py::test_wildcard PASSED [ 2%]
> tests/test_main.py::test_non_existing_files PASSED [ 2%]
> tests/test_main.py::test_non_existing_left_with_new_file PASSED [ 2%]
> tests/test_main.py::test_non_existing_right_with_new_file PASSED [ 2%]
> tests/test_main.py::test_non_existing_files_with_new_file PASSED [ 2%]
> tests/test_main.py::test_remove_temp_files_on_sigterm PASSED [ 2%]
> tests/test_main.py::test_ctrl_c_handling PASSED [ 3%]
> tests/test_main.py::test_no_differences PASSED [ 3%]
> tests/test_main.py::test_no_differences_directories PASSED [ 3%]
> tests/test_main.py::test_list_tools PASSED [ 3%]
> tests/test_main.py::test_list_missing_tools PASSED [ 3%]
> tests/test_main.py::test_profiling PASSED [ 3%]
> tests/test_main.py::test_non_unicode_filename PASSED [ 3%]
> tests/test_main.py::test_help PASSED [ 4%]
> tests/test_main.py::test_usage PASSED [ 4%]
> tests/test_presenters.py::test_text_option_is_default PASSED [ 4%]
> tests/test_presenters.py::test_text_proper_indentation PASSED [ 4%]
> tests/test_presenters.py::test_text_option_color PASSED [ 4%]
> tests/test_presenters.py::test_text_option_with_file PASSED [ 4%]
> tests/test_presenters.py::test_text_option_with_stdout PASSED [ 4%]
> tests/test_presenters.py::test_markdown PASSED [ 5%]
> tests/test_presenters.py::test_restructuredtext PASSED [ 5%]
> tests/test_presenters.py::test_json PASSED [ 5%]
> tests/test_presenters.py::test_no_report_option PASSED [ 5%]
> tests/test_presenters.py::test_html_option_with_file PASSED [ 5%]
> tests/test_presenters.py::test_html_visuals PASSED [ 5%]
> tests/test_presenters.py::test_htmldir_option PASSED [ 5%]
> tests/test_presenters.py::test_html_option_with_stdout PASSED [ 6%]
> tests/test_presenters.py::test_html_regression_875281 PASSED [ 6%]
> tests/test_presenters.py::test_limited_print PASSED [ 6%]
> tests/test_presenters.py::test_partial_string PASSED [ 6%]
> tests/test_presenters.py::test_partial_string_cont PASSED [ 6%]
> tests/test_presenters.py::test_partial_string_numl PASSED [ 6%]
> tests/test_presenters.py::test_partial_string_escape PASSED [ 6%]
> tests/test_progress.py::test_progress PASSED [ 7%]
> tests/test_progress.py::test_status_fd PASSED [ 7%]
> tests/test_quines.py::test_identification PASSED [ 7%]
> tests/test_quines.py::test_no_differences PASSED [ 7%]
> tests/test_quines.py::test_difference PASSED [ 7%]
> tests/test_quines.py::test_identification_deb PASSED [ 7%]
> tests/test_quines.py::test_differences_deb PASSED [ 7%]
> tests/test_readers.py::test_json PASSED [ 8%]
> tests/test_source.py::test_code_is_black_clean FAILED [ 8%]
> tests/test_tools.py::test_all_tools_are_listed PASSED [ 8%]
> tests/test_tools.py::test_get_tools PASSED [ 8%]
> tests/test_tools.py::test_sbin_added_to_path PASSED [ 8%]
> tests/test_tools.py::test_required_tool_not_found PASSED [ 8%]
> tests/test_versions.py::test_version_comparisons[1.0-1.0-0] PASSED [ 8%]
> tests/test_versions.py::test_version_comparisons[1.0-2.0--1] PASSED [ 9%]
> tests/test_versions.py::test_version_comparisons[2.0-1.0-1] PASSED [ 9%]
> tests/test_versions.py::test_version_comparisons[2.0.1-2.0.1-0] PASSED [ 9%]
> tests/test_versions.py::test_version_comparisons[2.0-2.0.1--1] PASSED [ 9%]
> tests/test_versions.py::test_version_comparisons[2.0.1-2.0-1] PASSED [ 9%]
> tests/test_versions.py::test_version_comparisons[2.0.1a-2.0.1a-0] PASSED [ 9%]
> tests/test_versions.py::test_version_comparisons[2.0.1a-2.0.1-1] PASSED [ 9%]
> tests/test_versions.py::test_version_comparisons[2.0.1-2.0.1a--1] PASSED [ 9%]
> tests/test_versions.py::test_version_comparisons[5.5p1-5.5p1-0] PASSED [ 10%]
> tests/test_versions.py::test_version_comparisons[5.5p1-5.5p2--1] PASSED [ 10%]
> tests/test_versions.py::test_version_comparisons[5.5p2-5.5p1-1] PASSED [ 10%]
> tests/test_versions.py::test_version_comparisons[5.5p10-5.5p10-0] PASSED [ 10%]
> tests/test_versions.py::test_version_comparisons[5.5p1-5.5p10--1] PASSED [ 10%]
> tests/test_versions.py::test_version_comparisons[5.5p10-5.5p1-1] PASSED [ 10%]
> tests/test_versions.py::test_version_comparisons[10xyz-10.1xyz--1] PASSED [ 10%]
> tests/test_versions.py::test_version_comparisons[10.1xyz-10xyz-1] PASSED [ 11%]
> tests/test_versions.py::test_version_comparisons[xyz10-xyz10-0] PASSED [ 11%]
> tests/test_versions.py::test_version_comparisons[xyz10-xyz10.1--1] PASSED [ 11%]
> tests/test_versions.py::test_version_comparisons[xyz10.1-xyz10-1] PASSED [ 11%]
> tests/test_versions.py::test_version_comparisons[xyz.4-xyz.4-0] PASSED [ 11%]
> tests/test_versions.py::test_version_comparisons[xyz.4-8--1] PASSED [ 11%]
> tests/test_versions.py::test_version_comparisons[8-xyz.4-1] PASSED [ 11%]
> tests/test_versions.py::test_version_comparisons[xyz.4-2--1] PASSED [ 12%]
> tests/test_versions.py::test_version_comparisons[2-xyz.4-1] PASSED [ 12%]
> tests/test_versions.py::test_version_comparisons[5.5p2-5.6p1--1] PASSED [ 12%]
> tests/test_versions.py::test_version_comparisons[5.6p1-5.5p2-1] PASSED [ 12%]
> tests/test_versions.py::test_version_comparisons[5.6p1-6.5p1--1] PASSED [ 12%]
> tests/test_versions.py::test_version_comparisons[6.5p1-5.6p1-1] PASSED [ 12%]
> tests/test_versions.py::test_version_comparisons[6.0.rc1-6.0-1] PASSED [ 12%]
> tests/test_versions.py::test_version_comparisons[6.0-6.0.rc1--1] PASSED [ 13%]
> tests/test_versions.py::test_version_comparisons[10b2-10a1-1] PASSED [ 13%]
> tests/test_versions.py::test_version_comparisons[10a2-10b2--1] PASSED [ 13%]
> tests/test_versions.py::test_version_comparisons[1.0aa-1.0aa-0] PASSED [ 13%]
> tests/test_versions.py::test_version_comparisons[1.0a-1.0aa--1] PASSED [ 13%]
> tests/test_versions.py::test_version_comparisons[1.0aa-1.0a-1] PASSED [ 13%]
> tests/test_versions.py::test_version_comparisons[10.0001-10.0001-0] PASSED [ 13%]
> tests/test_versions.py::test_version_comparisons[10.0001-10.1-0] PASSED [ 14%]
> tests/test_versions.py::test_version_comparisons[10.1-10.0001-0] PASSED [ 14%]
> tests/test_versions.py::test_version_comparisons[10.0001-10.0039--1] PASSED [ 14%]
> tests/test_versions.py::test_version_comparisons[10.0039-10.0001-1] PASSED [ 14%]
> tests/test_versions.py::test_version_comparisons[4.999.9-5.0--1] PASSED [ 14%]
> tests/test_versions.py::test_version_comparisons[5.0-4.999.9-1] PASSED [ 14%]
> tests/test_versions.py::test_version_comparisons[20101121-20101121-0] PASSED [ 14%]
> tests/test_versions.py::test_version_comparisons[20101121-20101122--1] PASSED [ 15%]
> tests/test_versions.py::test_version_comparisons[20101122-20101121-1] PASSED [ 15%]
> tests/test_versions.py::test_version_comparisons[2_0-2_0-0] PASSED [ 15%]
> tests/test_versions.py::test_version_comparisons[2.0-2_0-0] PASSED [ 15%]
> tests/test_versions.py::test_version_comparisons[2_0-2.0-0] PASSED [ 15%]
> tests/test_versions.py::test_version_comparisons[2_0.-2_0-0] PASSED [ 15%]
> tests/test_versions.py::test_version_comparisons[2..0-2_0__-0] PASSED [ 15%]
> tests/test_versions.py::test_version_comparisons[2_0-__2.0-0] PASSED [ 16%]
> tests/test_versions.py::test_version_comparisons[2_1.-2_0-1] PASSED [ 16%]
> tests/test_versions.py::test_version_comparisons[2..1-2_0__-1] PASSED [ 16%]
> tests/test_versions.py::test_version_comparisons[2_1-__2.0-1] PASSED [ 16%]
> tests/test_versions.py::test_version_comparisons[2_1.-2_2--1] PASSED [ 16%]
> tests/test_versions.py::test_version_comparisons[2..1-2_2__--1] PASSED [ 16%]
> tests/test_versions.py::test_version_comparisons[2_1-__2.2--1] PASSED [ 16%]
> tests/test_versions.py::test_version_comparisons[a-a-00] PASSED [ 17%]
> tests/test_versions.py::test_version_comparisons[a+-a+-0] PASSED [ 17%]
> tests/test_versions.py::test_version_comparisons[a+-a_-0] PASSED [ 17%]
> tests/test_versions.py::test_version_comparisons[a_-a+-0] PASSED [ 17%]
> tests/test_versions.py::test_version_comparisons[+a-+a-0] PASSED [ 17%]
> tests/test_versions.py::test_version_comparisons[+a-_a-0] PASSED [ 17%]
> tests/test_versions.py::test_version_comparisons[_a-+a-0] PASSED [ 17%]
> tests/test_versions.py::test_version_comparisons[+_-+_-0] PASSED [ 18%]
> tests/test_versions.py::test_version_comparisons[_+-+_-0] PASSED [ 18%]
> tests/test_versions.py::test_version_comparisons[_+-_+-0] PASSED [ 18%]
> tests/test_versions.py::test_version_comparisons[+-_-0] PASSED [ 18%]
> tests/test_versions.py::test_version_comparisons[_-+-0] PASSED [ 18%]
> tests/test_versions.py::test_version_comparisons[1.0~rc1-1.0~rc1-0] PASSED [ 18%]
> tests/test_versions.py::test_version_comparisons[1.0~rc1-1.0--1] PASSED [ 18%]
> tests/test_versions.py::test_version_comparisons[1.0-1.0~rc1-1] PASSED [ 18%]
> tests/test_versions.py::test_version_comparisons[1.0~rc1-1.0~rc2--1] PASSED [ 19%]
> tests/test_versions.py::test_version_comparisons[1.0~rc2-1.0~rc1-1] PASSED [ 19%]
> tests/test_versions.py::test_version_comparisons[1.0~rc1~git123-1.0~rc1~git123-0] PASSED [ 19%]
> tests/test_versions.py::test_version_comparisons[1.0~rc1~git123-1.0~rc1--1] PASSED [ 19%]
> tests/test_versions.py::test_version_comparisons[1.0~rc1-1.0~rc1~git123-1] PASSED [ 19%]
> tests/test_versions.py::test_version_comparisons[a-a-01] PASSED [ 19%]
> tests/test_versions.py::test_version_comparisons[a~-a--1] PASSED [ 19%]
> tests/test_versions.py::test_version_comparisons[a~~-a--1] PASSED [ 20%]
> tests/test_versions.py::test_version_comparisons[a~~~-a--1] PASSED [ 20%]
> tests/test_versions.py::test_version_comparisons[a~~~^-a--1] PASSED [ 20%]
> tests/test_versions.py::test_version_comparisons[a^-a-10] PASSED [ 20%]
> tests/test_versions.py::test_version_comparisons[a^-a-11] PASSED [ 20%]
> tests/test_versions.py::test_version_comparisons[a^-a^-0] PASSED [ 20%]
> tests/test_versions.py::test_version_comparisons[a^-a^^--1] PASSED [ 20%]
> tests/test_versions.py::test_version_comparisons[a^b-a^^-1] PASSED [ 21%]
> tests/test_versions.py::test_version_comparisons[1.0^-1.0^-0] PASSED [ 21%]
> tests/test_versions.py::test_version_comparisons[1.0^-1.0-1] PASSED [ 21%]
> tests/test_versions.py::test_version_comparisons[1.0-1.0^--1] PASSED [ 21%]
> tests/test_versions.py::test_version_comparisons[1.0^git1-1.0^git1-0] PASSED [ 21%]
> tests/test_versions.py::test_version_comparisons[1.0^git1-1.0-1] PASSED [ 21%]
> tests/test_versions.py::test_version_comparisons[1.0-1.0^git1--1] PASSED [ 21%]
> tests/test_versions.py::test_version_comparisons[1.0^git1-1.0^git2--1] PASSED [ 22%]
> tests/test_versions.py::test_version_comparisons[1.0^git2-1.0^git1-1] PASSED [ 22%]
> tests/test_versions.py::test_version_comparisons[1.0^git1-1.01--1] PASSED [ 22%]
> tests/test_versions.py::test_version_comparisons[1.01-1.0^git1-1] PASSED [ 22%]
> tests/test_versions.py::test_version_comparisons[1.0^20160101-1.0^20160101-0] PASSED [ 22%]
> tests/test_versions.py::test_version_comparisons[1.0^20160101-1.0.1--1] PASSED [ 22%]
> tests/test_versions.py::test_version_comparisons[1.0.1-1.0^20160101-1] PASSED [ 22%]
> tests/test_versions.py::test_version_comparisons[1.0^20160101^git1-1.0^20160101^git1-0] PASSED [ 23%]
> tests/test_versions.py::test_version_comparisons[1.0^20160102-1.0^20160101^git1-1] PASSED [ 23%]
> tests/test_versions.py::test_version_comparisons[1.0^20160101^git1-1.0^20160102--1] PASSED [ 23%]
> tests/test_versions.py::test_version_comparisons[1.0~rc1^git1-1.0~rc1^git1-0] PASSED [ 23%]
> tests/test_versions.py::test_version_comparisons[1.0~rc1^git1-1.0~rc1-1] PASSED [ 23%]
> tests/test_versions.py::test_version_comparisons[1.0~rc1-1.0~rc1^git1--1] PASSED [ 23%]
> tests/test_versions.py::test_version_comparisons[1.0^git1~pre-1.0^git1~pre-0] PASSED [ 23%]
> tests/test_versions.py::test_version_comparisons[1.0^git1-1.0^git1~pre-1] PASSED [ 24%]
> tests/test_versions.py::test_version_comparisons[1.0^git1~pre-1.0^git1--1] PASSED [ 24%]
> tests/test_versions.py::test_version_comparisons[0-0-0] PASSED [ 24%]
> tests/test_versions.py::test_version_comparisons[0-00-0] PASSED [ 24%]
> tests/test_versions.py::test_version_comparisons[0-000-0] PASSED [ 24%]
> tests/test_versions.py::test_version_comparisons[00-000-0] PASSED [ 24%]
> tests/test_versions.py::test_version_comparisons[000-000-0] PASSED [ 24%]
> tests/test_versions.py::test_version_comparisons[00-0-0] PASSED [ 25%]
> tests/test_versions.py::test_version_comparisons[000-0-0] PASSED [ 25%]
> tests/test_versions.py::test_version_comparisons[0-0.0--1] PASSED [ 25%]
> tests/test_versions.py::test_version_comparisons[0.0-0-1] PASSED [ 25%]
> tests/test_versions.py::test_version_comparisons[0~-0--1] PASSED [ 25%]
> tests/test_versions.py::test_version_comparisons[0^-0-1] PASSED [ 25%]
> tests/test_versions.py::test_version_comparisons[0^-0^-0] PASSED [ 25%]
> tests/test_versions.py::test_version_comparisons[0^-0^~-1] PASSED [ 26%]
> tests/test_versions.py::test_version_lt[1.0-2.0] PASSED [ 26%]
> tests/test_versions.py::test_version_lt[2.0-2.0.1] PASSED [ 26%]
> tests/test_versions.py::test_version_lt[2.0.1-2.0.1a] PASSED [ 26%]
> tests/test_versions.py::test_version_lt[5.5p1-5.5p2] PASSED [ 26%]
> tests/test_versions.py::test_version_lt[5.5p1-5.5p10] PASSED [ 26%]
> tests/test_versions.py::test_version_lt[10xyz-10.1xyz] PASSED [ 26%]
> tests/test_versions.py::test_version_lt[xyz10-xyz10.1] PASSED [ 27%]
> tests/test_versions.py::test_version_lt[xyz.4-8] PASSED [ 27%]
> tests/test_versions.py::test_version_lt[xyz.4-2] PASSED [ 27%]
> tests/test_versions.py::test_version_lt[5.5p2-5.6p1] PASSED [ 27%]
> tests/test_versions.py::test_version_lt[5.6p1-6.5p1] PASSED [ 27%]
> tests/test_versions.py::test_version_lt[6.0-6.0.rc1] PASSED [ 27%]
> tests/test_versions.py::test_version_lt[10a2-10b2] PASSED [ 27%]
> tests/test_versions.py::test_version_lt[1.0a-1.0aa] PASSED [ 27%]
> tests/test_versions.py::test_version_lt[10.0001-10.0039] PASSED [ 28%]
> tests/test_versions.py::test_version_lt[4.999.9-5.0] PASSED [ 28%]
> tests/test_versions.py::test_version_lt[20101121-20101122] PASSED [ 28%]
> tests/test_versions.py::test_version_lt[2_1.-2_2] PASSED [ 28%]
> tests/test_versions.py::test_version_lt[2..1-2_2__] PASSED [ 28%]
> tests/test_versions.py::test_version_lt[2_1-__2.2] PASSED [ 28%]
> tests/test_versions.py::test_version_lt[1.0~rc1-1.0] PASSED [ 28%]
> tests/test_versions.py::test_version_lt[1.0~rc1-1.0~rc2] PASSED [ 29%]
> tests/test_versions.py::test_version_lt[1.0~rc1~git123-1.0~rc1] PASSED [ 29%]
> tests/test_versions.py::test_version_lt[a~-a] PASSED [ 29%]
> tests/test_versions.py::test_version_lt[a~~-a] PASSED [ 29%]
> tests/test_versions.py::test_version_lt[a~~~-a] PASSED [ 29%]
> tests/test_versions.py::test_version_lt[a~~~^-a] PASSED [ 29%]
> tests/test_versions.py::test_version_lt[a^-a^^] PASSED [ 29%]
> tests/test_versions.py::test_version_lt[1.0-1.0^] PASSED [ 30%]
> tests/test_versions.py::test_version_lt[1.0-1.0^git1] PASSED [ 30%]
> tests/test_versions.py::test_version_lt[1.0^git1-1.0^git2] PASSED [ 30%]
> tests/test_versions.py::test_version_lt[1.0^git1-1.01] PASSED [ 30%]
> tests/test_versions.py::test_version_lt[1.0^20160101-1.0.1] PASSED [ 30%]
> tests/test_versions.py::test_version_lt[1.0^20160101^git1-1.0^20160102] PASSED [ 30%]
> tests/test_versions.py::test_version_lt[1.0~rc1-1.0~rc1^git1] PASSED [ 30%]
> tests/test_versions.py::test_version_lt[1.0^git1~pre-1.0^git1] PASSED [ 31%]
> tests/test_versions.py::test_version_lt[0-0.0] PASSED [ 31%]
> tests/test_versions.py::test_version_lt[0~-0] PASSED [ 31%]
> tests/test_versions.py::test_version_gt[1.0-1.0] PASSED [ 31%]
> tests/test_versions.py::test_version_gt[2.0.1-2.0.1] PASSED [ 31%]
> tests/test_versions.py::test_version_gt[2.0.1a-2.0.1a] PASSED [ 31%]
> tests/test_versions.py::test_version_gt[5.5p1-5.5p1] PASSED [ 31%]
> tests/test_versions.py::test_version_gt[5.5p10-5.5p10] PASSED [ 32%]
> tests/test_versions.py::test_version_gt[xyz10-xyz10] PASSED [ 32%]
> tests/test_versions.py::test_version_gt[xyz.4-xyz.4] PASSED [ 32%]
> tests/test_versions.py::test_version_gt[1.0aa-1.0aa] PASSED [ 32%]
> tests/test_versions.py::test_version_gt[10.0001-10.0001] PASSED [ 32%]
> tests/test_versions.py::test_version_gt[10.0001-10.1] PASSED [ 32%]
> tests/test_versions.py::test_version_gt[10.1-10.0001] PASSED [ 32%]
> tests/test_versions.py::test_version_gt[20101121-20101121] PASSED [ 33%]
> tests/test_versions.py::test_version_gt[2_0-2_0] PASSED [ 33%]
> tests/test_versions.py::test_version_gt[2.0-2_0] PASSED [ 33%]
> tests/test_versions.py::test_version_gt[2_0-2.0] PASSED [ 33%]
> tests/test_versions.py::test_version_gt[2_0.-2_0] PASSED [ 33%]
> tests/test_versions.py::test_version_gt[2..0-2_0__] PASSED [ 33%]
> tests/test_versions.py::test_version_gt[2_0-__2.0] PASSED [ 33%]
> tests/test_versions.py::test_version_gt[a-a0] PASSED [ 34%]
> tests/test_versions.py::test_version_gt[a+-a+] PASSED [ 34%]
> tests/test_versions.py::test_version_gt[a+-a_] PASSED [ 34%]
> tests/test_versions.py::test_version_gt[a_-a+] PASSED [ 34%]
> tests/test_versions.py::test_version_gt[+a-+a] PASSED [ 34%]
> tests/test_versions.py::test_version_gt[+a-_a] PASSED [ 34%]
> tests/test_versions.py::test_version_gt[_a-+a] PASSED [ 34%]
> tests/test_versions.py::test_version_gt[+_-+_] PASSED [ 35%]
> tests/test_versions.py::test_version_gt[_+-+_] PASSED [ 35%]
> tests/test_versions.py::test_version_gt[_+-_+] PASSED [ 35%]
> tests/test_versions.py::test_version_gt[+-_] PASSED [ 35%]
> tests/test_versions.py::test_version_gt[_-+] PASSED [ 35%]
> tests/test_versions.py::test_version_gt[1.0~rc1-1.0~rc1] PASSED [ 35%]
> tests/test_versions.py::test_version_gt[1.0~rc1~git123-1.0~rc1~git123] PASSED [ 35%]
> tests/test_versions.py::test_version_gt[a-a1] PASSED [ 36%]
> tests/test_versions.py::test_version_gt[a^-a^] PASSED [ 36%]
> tests/test_versions.py::test_version_gt[1.0^-1.0^] PASSED [ 36%]
> tests/test_versions.py::test_version_gt[1.0^git1-1.0^git1] PASSED [ 36%]
> tests/test_versions.py::test_version_gt[1.0^20160101-1.0^20160101] PASSED [ 36%]
> tests/test_versions.py::test_version_gt[1.0^20160101^git1-1.0^20160101^git1] PASSED [ 36%]
> tests/test_versions.py::test_version_gt[1.0~rc1^git1-1.0~rc1^git1] PASSED [ 36%]
> tests/test_versions.py::test_version_gt[1.0^git1~pre-1.0^git1~pre] PASSED [ 36%]
> tests/test_versions.py::test_version_gt[0-0] PASSED [ 37%]
> tests/test_versions.py::test_version_gt[0-00] PASSED [ 37%]
> tests/test_versions.py::test_version_gt[0-000] PASSED [ 37%]
> tests/test_versions.py::test_version_gt[00-000] PASSED [ 37%]
> tests/test_versions.py::test_version_gt[000-000] PASSED [ 37%]
> tests/test_versions.py::test_version_gt[00-0] PASSED [ 37%]
> tests/test_versions.py::test_version_gt[000-0] PASSED [ 37%]
> tests/test_versions.py::test_version_gt[0^-0^] PASSED [ 38%]
> tests/comparators/test_android.py::test_identification PASSED [ 38%]
> tests/comparators/test_android.py::test_no_differences PASSED [ 38%]
> tests/comparators/test_android.py::test_diff PASSED [ 38%]
> tests/comparators/test_android.py::test_compare_non_existing PASSED [ 38%]
> tests/comparators/test_apk.py::test_identification PASSED [ 38%]
> tests/comparators/test_apk.py::test_no_differences PASSED [ 38%]
> tests/comparators/test_apk.py::test_compare_non_existing PASSED [ 39%]
> tests/comparators/test_apk.py::test_zipinfo PASSED [ 39%]
> tests/comparators/test_apk.py::test_android_manifest XFAIL [ 39%]
> tests/comparators/test_apk.py::test_apk_metadata_source PASSED [ 39%]
> tests/comparators/test_apk.py::test_skip_undecoded_android_manifest PASSED [ 39%]
> tests/comparators/test_apk.py::test_no_android_manifest PASSED [ 39%]
> tests/comparators/test_archive.py::test_compressed_content_name PASSED [ 39%]
> tests/comparators/test_arsc.py::test_identification PASSED [ 40%]
> tests/comparators/test_arsc.py::test_no_differences PASSED [ 40%]
> tests/comparators/test_arsc.py::test_differences PASSED [ 40%]
> tests/comparators/test_arsc.py::test_compare_non_existing PASSED [ 40%]
> tests/comparators/test_berkeley_db.py::test_identification PASSED [ 40%]
> tests/comparators/test_berkeley_db.py::test_no_differences PASSED [ 40%]
> tests/comparators/test_berkeley_db.py::test_diff PASSED [ 40%]
> tests/comparators/test_berkeley_db.py::test_diff6 SKIPPED (requires >= 6.0 (5.3.28 detected)) [ 41%]
> tests/comparators/test_berkeley_db.py::test_compare_non_existing PASSED [ 41%]
> tests/comparators/test_binary.py::test_same_content PASSED [ 41%]
> tests/comparators/test_binary.py::test_not_same_content PASSED [ 41%]
> tests/comparators/test_binary.py::test_guess_file_type PASSED [ 41%]
> tests/comparators/test_binary.py::test_guess_encoding_binary PASSED [ 41%]
> tests/comparators/test_binary.py::test_guess_encoding_ascii PASSED [ 41%]
> tests/comparators/test_binary.py::test_guess_encoding_unicode PASSED [ 42%]
> tests/comparators/test_binary.py::test_guess_encoding_iso8859 PASSED [ 42%]
> tests/comparators/test_binary.py::test_no_differences_with_xxd PASSED [ 42%]
> tests/comparators/test_binary.py::test_compare_with_xxd PASSED [ 42%]
> tests/comparators/test_binary.py::test_compare_non_existing_with_xxd PASSED [ 42%]
> tests/comparators/test_binary.py::test_no_differences_without_xxd PASSED [ 42%]
> tests/comparators/test_binary.py::test_compare_without_xxd PASSED [ 42%]
> tests/comparators/test_binary.py::test_with_compare_details PASSED [ 43%]
> tests/comparators/test_binary.py::test_with_compare_details_and_fallback PASSED [ 43%]
> tests/comparators/test_binary.py::test_with_compare_details_and_no_actual_differences PASSED [ 43%]
> tests/comparators/test_binary.py::test_with_compare_details_and_failed_process PASSED [ 43%]
> tests/comparators/test_binary.py::test_with_compare_details_and_parsing_error PASSED [ 43%]
> tests/comparators/test_binary.py::test_with_compare_details_and_extraction_error PASSED [ 43%]
> tests/comparators/test_binary.py::test_with_compare_details_and_tool_not_found PASSED [ 43%]
> tests/comparators/test_binary.py::test_compare_two_nonexisting_files PASSED [ 44%]
> tests/comparators/test_binary.py::test_symlink_to_dir PASSED [ 44%]
> tests/comparators/test_binwalk.py::test_identification PASSED [ 44%]
> tests/comparators/test_binwalk.py::test_no_differences PASSED [ 44%]
> tests/comparators/test_binwalk.py::test_listing PASSED [ 44%]
> tests/comparators/test_binwalk.py::test_symlink PASSED [ 44%]
> tests/comparators/test_binwalk.py::test_compare_non_existing PASSED [ 44%]
> tests/comparators/test_bzip2.py::test_identification PASSED [ 45%]
> tests/comparators/test_bzip2.py::test_no_differences PASSED [ 45%]
> tests/comparators/test_bzip2.py::test_content_source PASSED [ 45%]
> tests/comparators/test_bzip2.py::test_content_source_without_extension PASSED [ 45%]
> tests/comparators/test_bzip2.py::test_content_diff PASSED [ 45%]
> tests/comparators/test_bzip2.py::test_compare_non_existing PASSED [ 45%]
> tests/comparators/test_cbfs.py::test_identification_using_offset PASSED [ 45%]
> tests/comparators/test_cbfs.py::test_identification_without_offset PASSED [ 45%]
> tests/comparators/test_cbfs.py::test_no_differences PASSED [ 46%]
> tests/comparators/test_cbfs.py::test_listing PASSED [ 46%]
> tests/comparators/test_cbfs.py::test_content PASSED [ 46%]
> tests/comparators/test_cbfs.py::test_compare_non_existing PASSED [ 46%]
> tests/comparators/test_containers.py::test_equal PASSED [ 46%]
> tests/comparators/test_containers.py::test_different PASSED [ 46%]
> tests/comparators/test_cpio.py::test_identification PASSED [ 46%]
> tests/comparators/test_cpio.py::test_no_differences PASSED [ 47%]
> tests/comparators/test_cpio.py::test_listing PASSED [ 47%]
> tests/comparators/test_cpio.py::test_symlink PASSED [ 47%]
> tests/comparators/test_cpio.py::test_compressed_files PASSED [ 47%]
> tests/comparators/test_cpio.py::test_compare_non_existing PASSED [ 47%]
> tests/comparators/test_deb.py::test_identification PASSED [ 47%]
> tests/comparators/test_deb.py::test_no_differences PASSED [ 47%]
> tests/comparators/test_deb.py::test_metadata PASSED [ 48%]
> tests/comparators/test_deb.py::test_compressed_files PASSED [ 48%]
> tests/comparators/test_deb.py::test_identification_of_md5sums_outside_deb PASSED [ 48%]
> tests/comparators/test_deb.py::test_identification_of_md5sums_in_deb PASSED [ 48%]
> tests/comparators/test_deb.py::test_md5sums PASSED [ 48%]
> tests/comparators/test_deb.py::test_identical_files_in_md5sums PASSED [ 48%]
> tests/comparators/test_deb.py::test_identification_of_data_tar PASSED [ 48%]
> tests/comparators/test_deb.py::test_skip_comparison_of_known_identical_files PASSED [ 49%]
> tests/comparators/test_deb.py::test_compare_non_existing PASSED [ 49%]
> tests/comparators/test_deb.py::test_compare_different_compression PASSED [ 49%]
> tests/comparators/test_deb.py::test_uncompressed_data_tar PASSED [ 49%]
> tests/comparators/test_deb.py::test_uncompressed_control_tar PASSED [ 49%]
> tests/comparators/test_deb.py::test_compare_different_compression_multiple_files PASSED [ 49%]
> tests/comparators/test_debian.py::test_dot_changes_identification PASSED [ 49%]
> tests/comparators/test_debian.py::test_dot_changes_invalid PASSED [ 50%]
> tests/comparators/test_debian.py::test_dot_changes_no_differences PASSED [ 50%]
> tests/comparators/test_debian.py::test_dot_changes_no_differences_exclude_buildinfo PASSED [ 50%]
> tests/comparators/test_debian.py::test_dot_changes_identical_contents_and_different_files PASSED [ 50%]
> tests/comparators/test_debian.py::test_dot_changes_different_contents_and_identical_files PASSED [ 50%]
> tests/comparators/test_debian.py::test_dot_dsc_identification PASSED [ 50%]
> tests/comparators/test_debian.py::test_dot_dsc_no_associated_tar_gz PASSED [ 50%]
> tests/comparators/test_debian.py::test_dot_dsc_no_differences PASSED [ 51%]
> tests/comparators/test_debian.py::test_dot_dsc_internal_diff PASSED [ 51%]
> tests/comparators/test_debian.py::test_dot_dsc_compare_non_existing PASSED [ 51%]
> tests/comparators/test_debian.py::test_dot_buildinfo_identification PASSED [ 51%]
> tests/comparators/test_debian.py::test_dot_buildinfo_no_deb PASSED [ 51%]
> tests/comparators/test_debian.py::test_dot_buildinfo_no_differences PASSED [ 51%]
> tests/comparators/test_debian.py::test_dot_buildinfo_internal_diff PASSED [ 51%]
> tests/comparators/test_debian.py::test_dot_buildinfo_compare_non_existing PASSED [ 52%]
> tests/comparators/test_debian.py::test_fallback_comparisons PASSED [ 52%]
> tests/comparators/test_debian.py::test_unicode_identification PASSED [ 52%]
> tests/comparators/test_device.py::test_identification PASSED [ 52%]
> tests/comparators/test_device.py::test_diff PASSED [ 52%]
> tests/comparators/test_device.py::test_diff_reverse PASSED [ 52%]
> tests/comparators/test_dex.py::test_identification PASSED [ 52%]
> tests/comparators/test_dex.py::test_no_differences PASSED [ 53%]
> tests/comparators/test_dex.py::test_differences SKIPPED (requires min 9.0.4 >= 14.0 (17.0.6 detected)) [ 53%]
> tests/comparators/test_dex.py::test_javap_14_differences PASSED [ 53%]
> tests/comparators/test_dex.py::test_compare_non_existing PASSED [ 53%]
> tests/comparators/test_directory.py::test_no_differences PASSED [ 53%]
> tests/comparators/test_directory.py::test_no_differences_with_extra_slash PASSED [ 53%]
> tests/comparators/test_directory.py::test_content PASSED [ 53%]
> tests/comparators/test_directory.py::test_stat PASSED [ 54%]
> tests/comparators/test_directory.py::test_compare_to_file PASSED [ 54%]
> tests/comparators/test_directory.py::test_compare_to_device PASSED [ 54%]
> tests/comparators/test_directory.py::test_compare_to_symlink PASSED [ 54%]
> tests/comparators/test_directory.py::test_compare_to_dangling_symlink PASSED [ 54%]
> tests/comparators/test_directory.py::test_compare_both_ways PASSED [ 54%]
> tests/comparators/test_docx.py::test_identification PASSED [ 54%]
> tests/comparators/test_docx.py::test_no_differences PASSED [ 54%]
> tests/comparators/test_docx.py::test_diff PASSED [ 55%]
> tests/comparators/test_docx.py::test_compare_non_existing PASSED [ 55%]
> tests/comparators/test_dtb.py::test_identification PASSED [ 55%]
> tests/comparators/test_dtb.py::test_no_differences PASSED [ 55%]
> tests/comparators/test_dtb.py::test_diff PASSED [ 55%]
> tests/comparators/test_dtb.py::test_compare_non_existing PASSED [ 55%]
> tests/comparators/test_elf.py::test_obj_identification PASSED [ 55%]
> tests/comparators/test_elf.py::test_obj_no_differences PASSED [ 56%]
> tests/comparators/test_elf.py::test_obj_compare_non_existing PASSED [ 56%]
> tests/comparators/test_elf.py::test_diff PASSED [ 56%]
> tests/comparators/test_elf.py::test_lib_identification PASSED [ 56%]
> tests/comparators/test_elf.py::test_lib_no_differences PASSED [ 56%]
> tests/comparators/test_elf.py::test_lib_differences PASSED [ 56%]
> tests/comparators/test_elf.py::test_lib_compare_non_existing PASSED [ 56%]
> tests/comparators/test_elf.py::test_libmix_differences PASSED [ 57%]
> tests/comparators/test_elf.py::test_differences_with_dbgsym PASSED [ 57%]
> tests/comparators/test_elf.py::test_original_gnu_debuglink PASSED [ 57%]
> tests/comparators/test_elf.py::test_ignore_readelf_errors1_identify PASSED [ 57%]
> tests/comparators/test_elf.py::test_ignore_readelf_errors2_identify PASSED [ 57%]
> tests/comparators/test_elf.py::test_ignore_readelf_errors PASSED [ 57%]
> tests/comparators/test_elf_decompiler.py::test_obj_compare_non_existing SKIPPED (radare2 didn't recognize pdgj command) [ 57%]
> tests/comparators/test_elf_decompiler.py::test_ghidra_diff SKIPPED (radare2 didn't recognize pdgj command) [ 58%]
> tests/comparators/test_elf_decompiler.py::test_radare2_diff SKIPPED (requires r2pipe Python module) [ 58%]
> tests/comparators/test_epub.py::test_identification PASSED [ 58%]
> tests/comparators/test_epub.py::test_no_differences PASSED [ 58%]
> tests/comparators/test_epub.py::test_differences PASSED [ 58%]
> tests/comparators/test_epub.py::test_compare_non_existing PASSED [ 58%]
> tests/comparators/test_ffprobe.py::test_identification PASSED [ 58%]
> tests/comparators/test_ffprobe.py::test_no_differences PASSED [ 59%]
> tests/comparators/test_ffprobe.py::test_diff PASSED [ 59%]
> tests/comparators/test_ffprobe.py::test_compare_non_existing PASSED [ 59%]
> tests/comparators/test_fit.py::test_identification PASSED [ 59%]
> tests/comparators/test_fit.py::test_no_differences PASSED [ 59%]
> tests/comparators/test_fit.py::test_file_differences PASSED [ 59%]
> tests/comparators/test_fit.py::test_nested_listing PASSED [ 59%]
> tests/comparators/test_fit.py::test_nested_symlink PASSED [ 60%]
> tests/comparators/test_fit.py::test_nested_compressed_files PASSED [ 60%]
> tests/comparators/test_fit.py::test_compare_non_existing PASSED [ 60%]
> tests/comparators/test_fontconfig.py::test_identification PASSED [ 60%]
> tests/comparators/test_fontconfig.py::test_no_differences PASSED [ 60%]
> tests/comparators/test_fontconfig.py::test_diff PASSED [ 60%]
> tests/comparators/test_fonts.py::test_identification PASSED [ 60%]
> tests/comparators/test_fonts.py::test_no_differences PASSED [ 61%]
> tests/comparators/test_fonts.py::test_diff PASSED [ 61%]
> tests/comparators/test_fonts.py::test_compare_non_existing PASSED [ 61%]
> tests/comparators/test_fsimage.py::test_identification PASSED [ 61%]
> tests/comparators/test_fsimage.py::test_identification_fat12 PASSED [ 61%]
> tests/comparators/test_fsimage.py::test_identification_fat16 PASSED [ 61%]
> tests/comparators/test_fsimage.py::test_identification_fat32 PASSED [ 61%]
> tests/comparators/test_fsimage.py::test_no_differences PASSED [ 62%]
> tests/comparators/test_fsimage.py::test_differences PASSED [ 62%]
> tests/comparators/test_fsimage.py::test_compare_non_existing PASSED [ 62%]
> tests/comparators/test_fsimage.py::test_differences_fat PASSED [ 62%]
> tests/comparators/test_gettext.py::test_identification PASSED [ 62%]
> tests/comparators/test_gettext.py::test_no_differences PASSED [ 62%]
> tests/comparators/test_gettext.py::test_diff PASSED [ 62%]
> tests/comparators/test_gettext.py::test_charsets PASSED [ 63%]
> tests/comparators/test_gettext.py::test_compare_non_existing PASSED [ 63%]
> tests/comparators/test_gif.py::test_identification PASSED [ 63%]
> tests/comparators/test_gif.py::test_no_differences PASSED [ 63%]
> tests/comparators/test_gif.py::test_diff PASSED [ 63%]
> tests/comparators/test_gif.py::test_compare_non_existing PASSED [ 63%]
> tests/comparators/test_gif.py::test_has_visuals PASSED [ 63%]
> tests/comparators/test_gif.py::test_no_visuals_different_size PASSED [ 63%]
> tests/comparators/test_git.py::test_identification PASSED [ 64%]
> tests/comparators/test_git.py::test_no_differences PASSED [ 64%]
> tests/comparators/test_git.py::test_diff PASSED [ 64%]
> tests/comparators/test_gnumeric.py::test_identification PASSED [ 64%]
> tests/comparators/test_gnumeric.py::test_no_differences PASSED [ 64%]
> tests/comparators/test_gnumeric.py::test_diff PASSED [ 64%]
> tests/comparators/test_gnumeric.py::test_compare_non_existing PASSED [ 64%]
> tests/comparators/test_gzip.py::test_identification PASSED [ 65%]
> tests/comparators/test_gzip.py::test_fallback_recognizes PASSED [ 65%]
> tests/comparators/test_gzip.py::test_no_differences PASSED [ 65%]
> tests/comparators/test_gzip.py::test_metadata PASSED [ 65%]
> tests/comparators/test_gzip.py::test_content_source PASSED [ 65%]
> tests/comparators/test_gzip.py::test_content_source_without_extension PASSED [ 65%]
> tests/comparators/test_gzip.py::test_content_diff PASSED [ 65%]
> tests/comparators/test_gzip.py::test_compare_non_existing PASSED [ 66%]
> tests/comparators/test_haskell.py::test_identification PASSED [ 66%]
> tests/comparators/test_haskell.py::test_no_differences PASSED [ 66%]
> tests/comparators/test_haskell.py::test_diff PASSED [ 66%]
> tests/comparators/test_hdf.py::test_identification PASSED [ 66%]
> tests/comparators/test_hdf.py::test_no_differences PASSED [ 66%]
> tests/comparators/test_hdf.py::test_diff PASSED [ 66%]
> tests/comparators/test_hdf.py::test_compare_non_existing PASSED [ 67%]
> tests/comparators/test_html.py::test_identification PASSED [ 67%]
> tests/comparators/test_html.py::test_no_differences PASSED [ 67%]
> tests/comparators/test_html.py::test_diff PASSED [ 67%]
> tests/comparators/test_ico_image.py::test_identification PASSED [ 67%]
> tests/comparators/test_ico_image.py::test_no_differences PASSED [ 67%]
> tests/comparators/test_ico_image.py::test_diff PASSED [ 67%]
> tests/comparators/test_ico_image.py::test_diff_meta PASSED [ 68%]
> tests/comparators/test_ico_image.py::test_diff_meta2 PASSED [ 68%]
> tests/comparators/test_ico_image.py::test_has_visuals PASSED [ 68%]
> tests/comparators/test_ipk.py::test_identification PASSED [ 68%]
> tests/comparators/test_ipk.py::test_no_differences PASSED [ 68%]
> tests/comparators/test_ipk.py::test_metadata PASSED [ 68%]
> tests/comparators/test_ipk.py::test_compressed_files PASSED [ 68%]
> tests/comparators/test_ipk.py::test_compare_non_existing PASSED [ 69%]
> tests/comparators/test_iso9660.py::test_identification PASSED [ 69%]
> tests/comparators/test_iso9660.py::test_no_differences PASSED [ 69%]
> tests/comparators/test_iso9660.py::test_iso9660_content SKIPPED (requires isoinfo (try installing genisoimage)) [ 69%]
> tests/comparators/test_iso9660.py::test_iso9660_rockridge SKIPPED (requires isoinfo (try installing genisoimage)) [ 69%]
> tests/comparators/test_iso9660.py::test_symlink SKIPPED (requires isoinfo (try installing genisoimage)) [ 69%]
> tests/comparators/test_iso9660.py::test_compressed_files SKIPPED (requires isoinfo (try installing genisoimage)) [ 69%]
> tests/comparators/test_iso9660.py::test_compare_non_existing SKIPPED (requires isoinfo (try installing genisoimage)) [ 70%]
> tests/comparators/test_java.py::test_identification PASSED [ 70%]
> tests/comparators/test_java.py::test_no_differences PASSED [ 70%]
> tests/comparators/test_java.py::test_diff_procyon PASSED [ 70%]
> tests/comparators/test_java.py::test_diff_javap SKIPPED (requires min 9.0.4 >= 14.0 (17.0.6 detected)) [ 70%]
> tests/comparators/test_java.py::test_diff_javap_14 PASSED [ 70%]
> tests/comparators/test_java.py::test_compare_non_existing_procyon PASSED [ 70%]
> tests/comparators/test_java.py::test_compare_non_existing_javap PASSED [ 71%]
> tests/comparators/test_javascript.py::test_identification PASSED [ 71%]
> tests/comparators/test_javascript.py::test_no_differences PASSED [ 71%]
> tests/comparators/test_javascript.py::test_diff PASSED [ 71%]
> tests/comparators/test_javascript.py::test_compare_non_existing PASSED [ 71%]
> tests/comparators/test_jpeg_image.py::test_identification PASSED [ 71%]
> tests/comparators/test_jpeg_image.py::test_no_differences PASSED [ 71%]
> tests/comparators/test_jpeg_image.py::test_diff PASSED [ 72%]
> tests/comparators/test_jpeg_image.py::test_compare_non_existing PASSED [ 72%]
> tests/comparators/test_jpeg_image.py::test_diff_meta PASSED [ 72%]
> tests/comparators/test_jpeg_image.py::test_has_visuals PASSED [ 72%]
> tests/comparators/test_json.py::test_identification PASSED [ 72%]
> tests/comparators/test_json.py::test_invalid PASSED [ 72%]
> tests/comparators/test_json.py::test_no_differences PASSED [ 72%]
> tests/comparators/test_json.py::test_diff PASSED [ 72%]
> tests/comparators/test_json.py::test_compare_non_existing PASSED [ 73%]
> tests/comparators/test_json.py::test_ordering_differences PASSED [ 73%]
> tests/comparators/test_kbx.py::test_identification PASSED [ 73%]
> tests/comparators/test_kbx.py::test_no_differences PASSED [ 73%]
> tests/comparators/test_kbx.py::test_diff PASSED [ 73%]
> tests/comparators/test_kbx.py::test_compare_non_existing PASSED [ 73%]
> tests/comparators/test_lz4.py::test_identification PASSED [ 73%]
> tests/comparators/test_lz4.py::test_no_differences PASSED [ 74%]
> tests/comparators/test_lz4.py::test_content_source PASSED [ 74%]
> tests/comparators/test_lz4.py::test_content_source_without_extension PASSED [ 74%]
> tests/comparators/test_lz4.py::test_content_diff PASSED [ 74%]
> tests/comparators/test_lz4.py::test_compare_non_existing PASSED [ 74%]
> tests/comparators/test_lzip.py::test_identification PASSED [ 74%]
> tests/comparators/test_lzip.py::test_no_differences PASSED [ 74%]
> tests/comparators/test_lzip.py::test_content_source PASSED [ 75%]
> tests/comparators/test_lzip.py::test_content_source_without_extension PASSED [ 75%]
> tests/comparators/test_lzip.py::test_content_diff PASSED [ 75%]
> tests/comparators/test_lzip.py::test_compare_non_existing PASSED [ 75%]
> tests/comparators/test_macho.py::test_obj_identification PASSED [ 75%]
> tests/comparators/test_macho.py::test_obj_no_differences PASSED [ 75%]
> tests/comparators/test_macho.py::test_otool_obj_compare_non_existing SKIPPED (requires otool and lipo) [ 75%]
> tests/comparators/test_macho.py::test_otool_diff SKIPPED (requires otool and lipo) [ 76%]
> tests/comparators/test_macho.py::test_llvm_obj_compare_non_existing PASSED [ 76%]
> tests/comparators/test_macho.py::test_llvm_diff PASSED [ 76%]
> tests/comparators/test_macho_decompiler.py::test_obj_compare_non_existing SKIPPED (radare2 didn't recognize pdgj command) [ 76%]
> tests/comparators/test_macho_decompiler.py::test_ghidra_diff SKIPPED (radare2 didn't recognize pdgj command) [ 76%]
> tests/comparators/test_macho_decompiler.py::test_radare2_diff SKIPPED (requires r2pipe Python module) [ 76%]
> tests/comparators/test_mono.py::test_identification PASSED [ 76%]
> tests/comparators/test_mono.py::test_no_differences PASSED [ 77%]
> tests/comparators/test_mono.py::test_diff PASSED [ 77%]
> tests/comparators/test_mono.py::test_compare_non_existing PASSED [ 77%]
> tests/comparators/test_ocaml.py::test_identification PASSED [ 77%]
> tests/comparators/test_ocaml.py::test_no_differences PASSED [ 77%]
> tests/comparators/test_ocaml.py::test_diff PASSED [ 77%]
> tests/comparators/test_ocaml.py::test_compare_non_existing PASSED [ 77%]
> tests/comparators/test_odt.py::test_identification PASSED [ 78%]
> tests/comparators/test_odt.py::test_no_differences PASSED [ 78%]
> tests/comparators/test_odt.py::test_diff SKIPPED (requires >= 0.7 (0.5 detected)) [ 78%]
> tests/comparators/test_odt.py::test_compare_non_existing SKIPPED (requires >= 0.7 (0.5 detected)) [ 78%]
> tests/comparators/test_ogg.py::test_identification PASSED [ 78%]
> tests/comparators/test_ogg.py::test_no_differences PASSED [ 78%]
> tests/comparators/test_ogg.py::test_diff PASSED [ 78%]
> tests/comparators/test_ogg.py::test_compare_non_existing PASSED [ 79%]
> tests/comparators/test_openssh_pub_key.py::test_identification PASSED [ 79%]
> tests/comparators/test_openssh_pub_key.py::test_no_differences PASSED [ 79%]
> tests/comparators/test_openssh_pub_key.py::test_diff PASSED [ 79%]
> tests/comparators/test_openssh_pub_key.py::test_compare_non_existing PASSED [ 79%]
> tests/comparators/test_openssl.py::test_identification PASSED [ 79%]
> tests/comparators/test_openssl.py::test_no_differences PASSED [ 79%]
> tests/comparators/test_openssl.py::test_differences PASSED [ 80%]
> tests/comparators/test_pcap.py::test_identification PASSED [ 80%]
> tests/comparators/test_pcap.py::test_no_differences PASSED [ 80%]
> tests/comparators/test_pcap.py::test_diff PASSED [ 80%]
> tests/comparators/test_pcap.py::test_compare_non_existing PASSED [ 80%]
> tests/comparators/test_pdf.py::test_identification PASSED [ 80%]
> tests/comparators/test_pdf.py::test_no_differences PASSED [ 80%]
> tests/comparators/test_pdf.py::test_differences_found_with_weird_encoding PASSED [ 81%]
> tests/comparators/test_pdf.py::test_text_diff PASSED [ 81%]
> tests/comparators/test_pdf.py::test_compare_non_existing PASSED [ 81%]
> tests/comparators/test_pdf.py::test_metadata PASSED [ 81%]
> tests/comparators/test_pdf.py::test_annotations PASSED [ 81%]
> tests/comparators/test_pgp.py::test_identification PASSED [ 81%]
> tests/comparators/test_pgp.py::test_no_differences PASSED [ 81%]
> tests/comparators/test_pgp.py::test_diff PASSED [ 81%]
> tests/comparators/test_pgp.py::test_compare_non_existing PASSED [ 82%]
> tests/comparators/test_pgp.py::test_pgp_signature_identification PASSED [ 82%]
> tests/comparators/test_pgp.py::test_pgp_signature PASSED [ 82%]
> tests/comparators/test_pgp.py::test_signed_identification PASSED [ 82%]
> tests/comparators/test_pgp.py::test_signed_diff PASSED [ 82%]
> tests/comparators/test_png.py::test_identification PASSED [ 82%]
> tests/comparators/test_png.py::test_no_differences PASSED [ 82%]
> tests/comparators/test_png.py::test_diff PASSED [ 83%]
> tests/comparators/test_png.py::test_compare_non_existing PASSED [ 83%]
> tests/comparators/test_png.py::test_has_visuals PASSED [ 83%]
> tests/comparators/test_ppu.py::test_identification PASSED [ 83%]
> tests/comparators/test_ppu.py::test_no_differences PASSED [ 83%]
> tests/comparators/test_ppu.py::test_diff PASSED [ 83%]
> tests/comparators/test_ppu.py::test_compare_non_existing PASSED [ 83%]
> tests/comparators/test_ps.py::test_identification PASSED [ 84%]
> tests/comparators/test_ps.py::test_no_differences PASSED [ 84%]
> tests/comparators/test_ps.py::test_internal_diff PASSED [ 84%]
> tests/comparators/test_ps.py::test_text_diff PASSED [ 84%]
> tests/comparators/test_ps.py::test_compare_non_existing PASSED [ 84%]
> tests/comparators/test_python.py::test_identification PASSED [ 84%]
> tests/comparators/test_python.py::test_no_differences SKIPPED (Unstable on 3.10+) [ 84%]
> tests/comparators/test_python.py::test_diff SKIPPED (Only Python 3.9 and 3.10 can de-marshal test1.pyc-renamed) [ 85%]
> tests/comparators/test_python.py::test_compare_non_existing PASSED [ 85%]
> tests/comparators/test_rdata.py::test_identification PASSED [ 85%]
> tests/comparators/test_rdata.py::test_no_differences PASSED [ 85%]
> tests/comparators/test_rdata.py::test_num_items_rdb PASSED [ 85%]
> tests/comparators/test_rdata.py::test_item_rdb PASSED [ 85%]
> tests/comparators/test_rdata.py::test_num_items_rdx PASSED [ 85%]
> tests/comparators/test_rdata.py::test_item_rdx PASSED [ 86%]
> tests/comparators/test_rlib.py::test_identification PASSED [ 86%]
> tests/comparators/test_rlib.py::test_no_differences PASSED [ 86%]
> tests/comparators/test_rlib.py::test_num_items PASSED [ 86%]
> tests/comparators/test_rlib.py::test_item0_armap PASSED [ 86%]
> tests/comparators/test_rlib.py::test_item1_elf PASSED [ 86%]
> tests/comparators/test_rlib.py::test_item2_rust_metadata_bin PASSED [ 86%]
> tests/comparators/test_rlib.py::test_item3_deflate_llvm_bitcode PASSED [ 87%]
> tests/comparators/test_rlib.py::test_compare_non_existing PASSED [ 87%]
> tests/comparators/test_rpm.py::test_identification PASSED [ 87%]
> tests/comparators/test_rpm.py::test_no_differences PASSED [ 87%]
> tests/comparators/test_rpm.py::test_header PASSED [ 87%]
> tests/comparators/test_rpm.py::test_listing PASSED [ 87%]
> tests/comparators/test_rpm.py::test_content PASSED [ 87%]
> tests/comparators/test_rpm.py::test_compare_non_existing PASSED [ 88%]
> tests/comparators/test_rpm.py::test_fallback_comparison PASSED [ 88%]
> tests/comparators/test_sockets.py::test_sockets PASSED [ 88%]
> tests/comparators/test_sphinx.py::test_identification PASSED [ 88%]
> tests/comparators/test_sphinx.py::test_no_differences PASSED [ 88%]
> tests/comparators/test_sphinx.py::test_diff PASSED [ 88%]
> tests/comparators/test_sqlite.py::test_identification PASSED [ 88%]
> tests/comparators/test_sqlite.py::test_no_differences PASSED [ 89%]
> tests/comparators/test_sqlite.py::test_diff PASSED [ 89%]
> tests/comparators/test_sqlite.py::test_compare_non_existing PASSED [ 89%]
> tests/comparators/test_squashfs.py::test_identification PASSED [ 89%]
> tests/comparators/test_squashfs.py::test_no_differences PASSED [ 89%]
> tests/comparators/test_squashfs.py::test_no_warnings PASSED [ 89%]
> tests/comparators/test_squashfs.py::test_superblock PASSED [ 89%]
> tests/comparators/test_squashfs.py::test_symlink PASSED [ 90%]
> tests/comparators/test_squashfs.py::test_compressed_files PASSED [ 90%]
> tests/comparators/test_squashfs.py::test_compare_non_existing PASSED [ 90%]
> tests/comparators/test_squashfs.py::test_symlink_root PASSED [ 90%]
> tests/comparators/test_symlink.py::test_destination PASSED [ 90%]
> tests/comparators/test_tar.py::test_identification PASSED [ 90%]
> tests/comparators/test_tar.py::test_no_differences PASSED [ 90%]
> tests/comparators/test_tar.py::test_listing PASSED [ 90%]
> tests/comparators/test_tar.py::test_symlinks PASSED [ 91%]
> tests/comparators/test_tar.py::test_text_file PASSED [ 91%]
> tests/comparators/test_tar.py::test_compare_non_existing PASSED [ 91%]
> tests/comparators/test_tar.py::test_no_permissions_dir_in_tarball PASSED [ 91%]
> tests/comparators/test_text.py::test_no_differences PASSED [ 91%]
> tests/comparators/test_text.py::test_difference_in_ascii PASSED [ 91%]
> tests/comparators/test_text.py::test_difference_in_unicode PASSED [ 91%]
> tests/comparators/test_text.py::test_difference_between_iso88591_and_unicode PASSED [ 92%]
> tests/comparators/test_text.py::test_difference_between_iso88591_and_unicode_only PASSED [ 92%]
> tests/comparators/test_text.py::test_compare_non_existing PASSED [ 92%]
> tests/comparators/test_text.py::test_ordering_differences PASSED [ 92%]
> tests/comparators/test_uimage.py::test_identification PASSED [ 92%]
> tests/comparators/test_uimage.py::test_no_differences PASSED [ 92%]
> tests/comparators/test_uimage.py::test_file_differences PASSED [ 92%]
> tests/comparators/test_uimage.py::test_nested_listing PASSED [ 93%]
> tests/comparators/test_uimage.py::test_nested_symlink PASSED [ 93%]
> tests/comparators/test_uimage.py::test_nested_compressed_files PASSED [ 93%]
> tests/comparators/test_uimage.py::test_compare_non_existing PASSED [ 93%]
> tests/comparators/test_utils.py::test_tools_missing PASSED [ 93%]
> tests/comparators/test_utils.py::test_skip_unless_tools_exist_empty SKIPPED (requires) [ 93%]
> tests/comparators/test_utils.py::test_skip_unless_tools_exist_missing SKIPPED (requires /missing) [ 93%]
> tests/comparators/test_utils.py::test_fuzzy_matching PASSED [ 94%]
> tests/comparators/test_utils.py::test_fuzzy_matching_only_once PASSED [ 94%]
> tests/comparators/test_utils.py::test_no_fuzzy_matching PASSED [ 94%]
> tests/comparators/test_utils.py::test_no_fuzzy_matching_new_file PASSED [ 94%]
> tests/comparators/test_utils.py::test_trim_stderr_in_command PASSED [ 94%]
> tests/comparators/test_wasm.py::test_identification PASSED [ 94%]
> tests/comparators/test_wasm.py::test_no_differences PASSED [ 94%]
> tests/comparators/test_wasm.py::test_diff PASSED [ 95%]
> tests/comparators/test_wasm.py::test_compare_non_existing PASSED [ 95%]
> tests/comparators/test_xml.py::test_identification PASSED [ 95%]
> tests/comparators/test_xml.py::test_invalid PASSED [ 95%]
> tests/comparators/test_xml.py::test_no_differences PASSED [ 95%]
> tests/comparators/test_xml.py::test_diff PASSED [ 95%]
> tests/comparators/test_xml.py::test_ordering_differences PASSED [ 95%]
> tests/comparators/test_xsb.py::test_identification PASSED [ 96%]
> tests/comparators/test_xsb.py::test_no_differences PASSED [ 96%]
> tests/comparators/test_xsb.py::test_diff PASSED [ 96%]
> tests/comparators/test_xsb.py::test_compare_non_existing PASSED [ 96%]
> tests/comparators/test_xz.py::test_identification PASSED [ 96%]
> tests/comparators/test_xz.py::test_no_differences PASSED [ 96%]
> tests/comparators/test_xz.py::test_content_source PASSED [ 96%]
> tests/comparators/test_xz.py::test_content_source_without_extension PASSED [ 97%]
> tests/comparators/test_xz.py::test_content_diff PASSED [ 97%]
> tests/comparators/test_xz.py::test_compare_non_existing PASSED [ 97%]
> tests/comparators/test_zip.py::test_identification PASSED [ 97%]
> tests/comparators/test_zip.py::test_no_differences PASSED [ 97%]
> tests/comparators/test_zip.py::test_metadata PASSED [ 97%]
> tests/comparators/test_zip.py::test_compressed_files PASSED [ 97%]
> tests/comparators/test_zip.py::test_extra_fields PASSED [ 98%]
> tests/comparators/test_zip.py::test_compare_non_existing PASSED [ 98%]
> tests/comparators/test_zip.py::test_mozzip_identification PASSED [ 98%]
> tests/comparators/test_zip.py::test_mozzip_no_differences PASSED [ 98%]
> tests/comparators/test_zip.py::test_mozzip_metadata PASSED [ 98%]
> tests/comparators/test_zip.py::test_mozzip_compressed_files PASSED [ 98%]
> tests/comparators/test_zip.py::test_mozzip_compare_non_existing PASSED [ 98%]
> tests/comparators/test_zip.py::test_jmod_identification PASSED [ 99%]
> tests/comparators/test_zip.py::test_jmod_no_differences PASSED [ 99%]
> tests/comparators/test_zip.py::test_jmod_metadata PASSED [ 99%]
> tests/comparators/test_zip.py::test_encrypted PASSED [ 99%]
> tests/comparators/test_zip.py::test_commented PASSED [ 99%]
> tests/comparators/test_zst.py::test_identification PASSED [ 99%]
> tests/comparators/test_zst.py::test_no_differences PASSED [ 99%]
> tests/comparators/test_zst.py::test_content_source PASSED [100%]
>
> =================================== FAILURES ===================================
> ___________________________ test_code_is_black_clean ___________________________
>
> @skip_unless_tool_is_at_least("black", black_version, "22.1.0")
> def test_code_is_black_clean():
> output = subprocess.check_output(
> ("black", "--diff", "."), stderr=subprocess.PIPE
> ).decode("utf-8")
>
> # Display diff in "captured stdout call"
> if output:
> print(output)
>
> > assert not output, output
> E AssertionError: --- /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/diffoscope/logging.py 2023-02-10 18:31:52 +0000
> E +++ /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/diffoscope/logging.py 2023-02-17 01:28:09.400523 +0000
> E @@ -24,11 +24,10 @@
> E
> E
> E def line_eraser(fd=sys.stderr) -> bytes:
> E eraser = b"" # avoid None to avoid 'NoneType + str/bytes' failures
> E if fd.isatty():
> E -
> E curses.setupterm(fd=fd.fileno())
> E eraser = curses.tigetstr("el")
> E
> E if not eraser and fd.isatty():
> E # is a tty, but doesn't support the proper escape code, so let's fake it
> E --- /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/comparators/test_sockets.py 2023-02-10 18:31:52 +0000
> E +++ /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/comparators/test_sockets.py 2023-02-17 01:28:10.799449 +0000
> E @@ -54,11 +54,11 @@
> E test_points = zip(
> E [make_socket, make_socket, make_pipe, make_pipe],
> E map(makename, ["socket1", "socket2", "pipe1", "pipe2"]),
> E )
> E yield [(name, f(name)) for (f, name) in test_points]
> E - for (_, name) in test_points:
> E + for _, name in test_points:
> E os.remove(name)
> E
> E
> E @pytest.fixture
> E def expected_results(endpoints):
> E
> E assert not '--- /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/diffoscope/logging.py\t2023-02-10 18:31:52 +0000\n+++ /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/diffoscope/logging.py\t2023-02-17 01:28:09.400523 +0000\n@@ -24,11 +24,10 @@\n \n \n def line_eraser(fd=sys.stderr) -> bytes:\n eraser = b"" # avoid None to avoid \'NoneType + str/bytes\' failures\n if fd.isatty():\n-\n curses.setupterm(fd=fd.fileno())\n eraser = curses.tigetstr("el")\n \n if not eraser and fd.isatty():\n # is a tty, but doesn\'t support the proper escape code, so let\'s fake it\n--- /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/comparators/test_sockets.py\t2023-02-10 18:31:52 +0000\n+++ /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/comparators/test_sockets.py\t2023-02-17 01:28:10.799449 +0000\n@@ -54,11 +54,11 @@\n test_points = zip(\n [make_socket, make_socket, make_pipe, make_pipe],\n map(makename, ["socket1", "socket2", "pipe1", "pipe2"]),\n )\n yield [(name, f(name)) for (f, name) in test_points]\n- for (_, name) in test_points:\n+ for _, name in test_points:\n os.remove(name)\n \n \n @pytest.fixture\n def expected_results(endpoints):\n'
>
> output = ('--- '
> '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/diffoscope/logging.py\t'
> '2023-02-10 18:31:52 +0000\n'
> '+++ '
> '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/diffoscope/logging.py\t'
> '2023-02-17 01:28:09.400523 +0000\n'
> '@@ -24,11 +24,10 @@\n'
> ' \n'
> ' \n'
> ' def line_eraser(fd=sys.stderr) -> bytes:\n'
> ' eraser = b"" # avoid None to avoid \'NoneType + str/bytes\' failures\n'
> ' if fd.isatty():\n'
> '-\n'
> ' curses.setupterm(fd=fd.fileno())\n'
> ' eraser = curses.tigetstr("el")\n'
> ' \n'
> ' if not eraser and fd.isatty():\n'
> " # is a tty, but doesn't support the proper escape code, so let's "
> 'fake it\n'
> '--- '
> '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/comparators/test_sockets.py\t'
> '2023-02-10 18:31:52 +0000\n'
> '+++ '
> '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/comparators/test_sockets.py\t'
> '2023-02-17 01:28:10.799449 +0000\n'
> '@@ -54,11 +54,11 @@\n'
> ' test_points = zip(\n'
> ' [make_socket, make_socket, make_pipe, make_pipe],\n'
> ' map(makename, ["socket1", "socket2", "pipe1", "pipe2"]),\n'
> ' )\n'
> ' yield [(name, f(name)) for (f, name) in test_points]\n'
> '- for (_, name) in test_points:\n'
> '+ for _, name in test_points:\n'
> ' os.remove(name)\n'
> ' \n'
> ' \n'
> ' @pytest.fixture\n'
> ' def expected_results(endpoints):\n')
>
> tests/test_source.py:47: AssertionError
> ----------------------------- Captured stdout call -----------------------------
> --- /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/diffoscope/logging.py 2023-02-10 18:31:52 +0000
> +++ /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/diffoscope/logging.py 2023-02-17 01:28:09.400523 +0000
> @@ -24,11 +24,10 @@
>
>
> def line_eraser(fd=sys.stderr) -> bytes:
> eraser = b"" # avoid None to avoid 'NoneType + str/bytes' failures
> if fd.isatty():
> -
> curses.setupterm(fd=fd.fileno())
> eraser = curses.tigetstr("el")
>
> if not eraser and fd.isatty():
> # is a tty, but doesn't support the proper escape code, so let's fake it
> --- /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/comparators/test_sockets.py 2023-02-10 18:31:52 +0000
> +++ /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/tests/comparators/test_sockets.py 2023-02-17 01:28:10.799449 +0000
> @@ -54,11 +54,11 @@
> test_points = zip(
> [make_socket, make_socket, make_pipe, make_pipe],
> map(makename, ["socket1", "socket2", "pipe1", "pipe2"]),
> )
> yield [(name, f(name)) for (f, name) in test_points]
> - for (_, name) in test_points:
> + for _, name in test_points:
> os.remove(name)
>
>
> @pytest.fixture
> def expected_results(endpoints):
>
>
> ---------- coverage: platform linux, python 3.11.2-final-0 -----------
> Name Stmts Miss Cover Missing
> --------------------------------------------------------------------------
> diffoscope/__init__.py 1 0 100%
> diffoscope/changes.py 123 52 58% 84, 92, 95, 104, 111, 118, 139, 176, 182, 188, 194-198, 204, 210, 226-229, 232-235, 244, 256-288, 306-308, 313-316, 323, 335
> diffoscope/comparators/__init__.py 47 13 72% 147-153, 158-167
> diffoscope/comparators/android.py 43 1 98% 49
> diffoscope/comparators/apk.py 179 27 85% 48-50, 56, 242, 253-256, 259, 271, 278-282, 290, 294-309, 322, 326
> diffoscope/comparators/ar.py 27 0 100%
> diffoscope/comparators/arsc.py 38 0 100%
> diffoscope/comparators/berkeley_db.py 20 0 100%
> diffoscope/comparators/binary.py 20 0 100%
> diffoscope/comparators/binwalk.py 64 8 88% 32-33, 37-39, 74, 101-102
> diffoscope/comparators/bzip2.py 25 0 100%
> diffoscope/comparators/cbfs.py 89 1 99% 166
> diffoscope/comparators/cpio.py 10 0 100%
> diffoscope/comparators/deb.py 126 9 93% 37-39, 52, 77, 136, 189-191
> diffoscope/comparators/debian.py 169 12 93% 26-30, 87-89, 116-121, 189, 258-262, 282, 358
> diffoscope/comparators/debian_fallback.py 17 0 100%
> diffoscope/comparators/decompile.py 192 99 48% 38-39, 58-59, 62-67, 71, 74, 78, 86-97, 101-109, 116, 119, 122, 132-133, 137, 140, 143, 156-159, 165, 169, 175, 178, 181, 184, 187, 193-204, 207-212, 224-231, 234, 241, 245, 249, 253, 257-260, 264-275, 279-284, 307-327, 330, 336, 339, 342-343, 346-347
> diffoscope/comparators/device.py 48 6 88% 48-51, 86-89
> diffoscope/comparators/dex.py 53 2 96% 38, 77
> diffoscope/comparators/directory.py 159 43 73% 40-43, 98-106, 112-115, 119-143, 173-174, 177, 180-201, 256, 271
> diffoscope/comparators/docx.py 14 0 100%
> diffoscope/comparators/dtb.py 14 0 100%
> diffoscope/comparators/elf.py 347 33 90% 77, 82-83, 221, 236, 243, 341, 385, 407-409, 417, 429-431, 439, 471, 511-520, 528-530, 535, 548, 559, 565, 578-582, 594-599, 688-691
> diffoscope/comparators/ffprobe.py 27 0 100%
> diffoscope/comparators/fit.py 57 2 96% 88, 118
> diffoscope/comparators/fontconfig.py 27 0 100%
> diffoscope/comparators/fonts.py 27 2 93% 55-56
> diffoscope/comparators/fsimage.py 88 20 77% 34-36, 44, 51-52, 59-65, 69-71, 77, 82-83, 87, 132-134
> diffoscope/comparators/gettext.py 37 0 100%
> diffoscope/comparators/gif.py 42 4 90% 56-57, 100-101
> diffoscope/comparators/git.py 29 0 100%
> diffoscope/comparators/gnumeric.py 19 0 100%
> diffoscope/comparators/gzip.py 27 0 100%
> diffoscope/comparators/haskell.py 66 22 67% 37, 85-87, 96, 102-109, 120-145, 148-153
> diffoscope/comparators/hdf.py 14 0 100%
> diffoscope/comparators/html.py 24 2 92% 50-51
> diffoscope/comparators/icc.py 14 2 86% 32, 40
> diffoscope/comparators/image.py 84 6 93% 135-136, 164-165, 184-185
> diffoscope/comparators/ipk.py 4 0 100%
> diffoscope/comparators/iso9660.py 52 20 62% 33, 51, 56-57, 61-68, 71-73, 95, 105-119
> diffoscope/comparators/java.py 51 4 92% 94-97, 106
> diffoscope/comparators/javascript.py 13 0 100%
> diffoscope/comparators/json.py 56 9 84% 34-36, 54-55, 86, 95-96, 104
> diffoscope/comparators/kbx.py 18 1 94% 35
> diffoscope/comparators/llvm.py 22 0 100%
> diffoscope/comparators/lz4.py 28 0 100%
> diffoscope/comparators/lzip.py 27 0 100%
> diffoscope/comparators/macho.py 305 57 81% 94-96, 100, 104, 107, 111-114, 119, 124, 129, 134, 148-151, 155, 159, 162, 166-169, 174-175, 181, 184-185, 190-191, 213, 324, 328, 332-349, 366, 472, 495, 509-512, 538, 559-562, 582, 586, 625, 637-645
> diffoscope/comparators/missing_file.py 55 4 93% 71, 74, 77, 95
> diffoscope/comparators/mono.py 14 0 100%
> diffoscope/comparators/ocaml.py 19 0 100%
> diffoscope/comparators/odt.py 24 3 88% 35, 43-44
> diffoscope/comparators/ogg.py 14 0 100%
> diffoscope/comparators/openssh.py 14 0 100%
> diffoscope/comparators/openssl.py 26 5 81% 56-68, 71-77
> diffoscope/comparators/pcap.py 14 0 100%
> diffoscope/comparators/pdf.py 92 49 47% 39-40, 47-55, 88-106, 120-136, 142-162
> diffoscope/comparators/pe32.py 18 5 72% 31, 41-44, 52
> diffoscope/comparators/pgp.py 59 13 78% 55-72, 75, 79, 82, 103-104, 110-112
> diffoscope/comparators/png.py 32 2 94% 78-79
> diffoscope/comparators/ppu.py 57 16 72% 73, 85-98, 101-107
> diffoscope/comparators/ps.py 25 2 92% 50-51
> diffoscope/comparators/python.py 67 43 36% 48-60, 64-65, 69-82, 86-117, 121-129, 133
> diffoscope/comparators/rdata.py 58 4 93% 93, 104, 108, 170
> diffoscope/comparators/rpm.py 73 1 99% 42
> diffoscope/comparators/rpm_fallback.py 12 0 100%
> diffoscope/comparators/rust.py 32 0 100%
> diffoscope/comparators/socket_or_fifo.py 52 10 81% 45-63, 101
> diffoscope/comparators/sphinx.py 23 2 91% 61-65
> diffoscope/comparators/sqlite.py 14 0 100%
> diffoscope/comparators/squashfs.py 204 34 83% 102, 120, 134, 142, 145, 159, 167, 193-194, 198-199, 205-206, 221, 235-247, 250-251, 254, 257, 286-287, 344, 360-362
> diffoscope/comparators/symlink.py 35 2 94% 58-59
> diffoscope/comparators/tar.py 12 0 100%
> diffoscope/comparators/text.py 27 2 93% 69-71
> diffoscope/comparators/uimage.py 24 0 100%
> diffoscope/comparators/utils/__init__.py 0 0 100%
> diffoscope/comparators/utils/archive.py 102 14 86% 67, 71, 75, 79, 125-126, 145, 148, 151, 160, 163, 170, 173, 178
> diffoscope/comparators/utils/command.py 56 3 95% 63, 77, 105
> diffoscope/comparators/utils/compare.py 101 13 87% 77, 85, 105, 124-125, 141, 160-168
> diffoscope/comparators/utils/container.py 125 11 91% 66, 70, 115-119, 192-195, 211
> diffoscope/comparators/utils/file.py 298 54 82% 39-40, 53-59, 80-94, 116, 122, 296-297, 346-348, 358-360, 368, 372, 376, 380, 445-448, 473-476, 490-493, 501, 505-509, 538, 549-562, 581, 588, 611
> diffoscope/comparators/utils/fuzzy.py 33 2 94% 27-28
> diffoscope/comparators/utils/libarchive.py 197 32 84% 47-50, 54-57, 69-72, 76-79, 83-86, 134-137, 176, 208, 216, 219, 232, 246, 251-252, 255, 258, 272-273, 304, 347-348, 371-387
> diffoscope/comparators/utils/operation.py 26 6 77% 33, 40, 48, 55, 62, 66
> diffoscope/comparators/utils/specialize.py 32 2 94% 78, 81
> diffoscope/comparators/vmlinuz.py 28 9 68% 35, 38, 41, 45-59
> diffoscope/comparators/wasm.py 19 0 100%
> diffoscope/comparators/xml.py 52 3 94% 69, 156-157
> diffoscope/comparators/xmlb.py 19 3 84% 31, 43, 46
> diffoscope/comparators/xsb.py 17 0 100%
> diffoscope/comparators/xz.py 28 0 100%
> diffoscope/comparators/zip.py 158 5 97% 171, 174, 206, 258-259
> diffoscope/comparators/zst.py 26 1 96% 38
> diffoscope/config.py 50 4 92% 83-98
> diffoscope/diff.py 435 60 86% 103, 140, 199, 237, 239, 283-286, 299-327, 409, 555-560, 579-580, 591, 608, 610, 614, 630, 635, 668-669, 672-673, 695-696, 699-709, 717-720, 730-733, 748
> diffoscope/difference.py 232 17 93% 116, 226-230, 249, 284, 291-292, 311, 346-349, 380, 396, 402, 457
> diffoscope/environ.py 13 0 100%
> diffoscope/exc.py 21 0 100%
> diffoscope/excludes.py 24 5 79% 31-36, 43-45
> diffoscope/external_tools.py 5 0 100%
> diffoscope/feeders.py 83 3 96% 36, 116-117
> diffoscope/logging.py 28 4 86% 30-31, 36-37
> diffoscope/main.py 281 67 76% 59-61, 65-67, 73, 450, 458-465, 477-481, 529, 569-614, 631, 686, 700-701, 723, 730-734, 739, 744-752, 770, 772-775, 780-786, 804
> diffoscope/path.py 15 2 87% 30-31
> diffoscope/presenters/__init__.py 0 0 100%
> diffoscope/presenters/formats.py 43 4 91% 99-102
> diffoscope/presenters/html/__init__.py 1 0 100%
> diffoscope/presenters/html/html.py 473 125 74% 82-89, 143-146, 150, 152-154, 268-269, 272, 307, 331, 348-359, 418, 429, 442-446, 451, 458-465, 476, 481-493, 496-511, 542-545, 549-554, 557, 563-567, 592-601, 606-618, 623-637, 652, 672-675, 750, 752, 816, 832, 843-875, 893
> diffoscope/presenters/html/templates.py 11 0 100%
> diffoscope/presenters/icon.py 1 0 100%
> diffoscope/presenters/json.py 32 1 97% 55
> diffoscope/presenters/markdown.py 21 0 100%
> diffoscope/presenters/restructuredtext.py 25 0 100%
> diffoscope/presenters/text.py 44 7 84% 61-66, 71-72, 81-82
> diffoscope/presenters/utils.py 166 14 92% 42, 71, 153, 158, 165, 307, 343, 354, 357, 422-427
> diffoscope/profiling.py 47 3 94% 70-72
> diffoscope/progress.py 168 18 89% 34-36, 45-52, 78, 89-90, 95, 120, 225, 240-241, 249
> diffoscope/readers/__init__.py 9 0 100%
> diffoscope/readers/json.py 17 1 94% 34
> diffoscope/readers/utils.py 2 0 100%
> diffoscope/tempfiles.py 57 9 84% 83-84, 99-105, 123-124
> diffoscope/tools.py 93 13 86% 26-27, 98-99, 109-110, 149, 162, 167, 182-185
> diffoscope/utils.py 38 1 97% 45
> --------------------------------------------------------------------------
> TOTAL 7831 1170 85%
> Coverage HTML written to dir htmlcov
>
> =========================== short test summary info ============================
> SKIPPED [1] tests/comparators/test_icc.py:60: Skipping all ICC tests as cd-iccdump killed with signal
> SKIPPED [1] tests/comparators/test_berkeley_db.py:64: requires >= 6.0 (5.3.28 detected)
> SKIPPED [1] tests/comparators/test_dex.py:89: requires min 9.0.4 >= 14.0 (17.0.6 detected)
> SKIPPED [1] tests/comparators/test_elf_decompiler.py:78: radare2 didn't recognize pdgj command
> SKIPPED [1] tests/comparators/test_elf_decompiler.py:88: radare2 didn't recognize pdgj command
> SKIPPED [1] tests/comparators/test_elf_decompiler.py:98: requires r2pipe Python module
> SKIPPED [1] tests/comparators/test_iso9660.py:53: requires isoinfo (try installing genisoimage)
> SKIPPED [1] tests/comparators/test_iso9660.py:62: requires isoinfo (try installing genisoimage)
> SKIPPED [1] tests/comparators/test_iso9660.py:71: requires isoinfo (try installing genisoimage)
> SKIPPED [1] tests/comparators/test_iso9660.py:78: requires isoinfo (try installing genisoimage)
> SKIPPED [1] tests/comparators/test_iso9660.py:86: requires isoinfo (try installing genisoimage)
> SKIPPED [1] tests/comparators/test_java.py:86: requires min 9.0.4 >= 14.0 (17.0.6 detected)
> SKIPPED [1] tests/comparators/test_macho.py:59: requires otool and lipo
> SKIPPED [1] tests/comparators/test_macho.py:67: requires otool and lipo
> SKIPPED [1] tests/comparators/test_macho_decompiler.py:86: radare2 didn't recognize pdgj command
> SKIPPED [1] tests/comparators/test_macho_decompiler.py:96: radare2 didn't recognize pdgj command
> SKIPPED [1] tests/comparators/test_macho_decompiler.py:109: requires r2pipe Python module
> SKIPPED [1] tests/comparators/test_odt.py:55: requires >= 0.7 (0.5 detected)
> SKIPPED [1] tests/comparators/test_odt.py:60: requires >= 0.7 (0.5 detected)
> SKIPPED [1] tests/comparators/test_python.py:41: Unstable on 3.10+
> SKIPPED [1] tests/comparators/test_python.py:54: Only Python 3.9 and 3.10 can de-marshal test1.pyc-renamed
> SKIPPED [1] tests/comparators/test_utils.py:49: requires
> SKIPPED [1] tests/comparators/test_utils.py:54: requires /missing
> XFAIL tests/comparators/test_apk.py::test_android_manifest
> ======= 1 failed, 687 passed, 23 skipped, 1 xfailed in 193.57s (0:03:13) =======
> E: pybuild pybuild:388: test: plugin distutils failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build; python3.11 -m pytest -vv -r sxX -l --cov=diffoscope --cov-report=term-missing --cov-report=html
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.11 returned exit code 13
The full build log is available from:
http://qa-logs.debian.net/2023/02/16/diffoscope_235_unstable.log
All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20230216;users=lucas@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20230216&fusertaguser=lucas@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results
A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!
If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects
If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.
Information forwarded
to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#1031433; Package src:diffoscope.
(Fri, 17 Feb 2023 14:15:03 GMT) (full text, mbox, link).
Acknowledgement sent
to FC Stegerman <flx@obfusk.net>:
Extra info received and forwarded to list. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>.
(Fri, 17 Feb 2023 14:15:03 GMT) (full text, mbox, link).
Message #10 received at 1031433@bugs.debian.org (full text, mbox, reply):
Should be fixed by [1] - FC [1] https://salsa.debian.org/reproducible-builds/diffoscope/-/merge_requests/126
Reply sent
to Chris Lamb <lamby@debian.org>:
You have taken responsibility.
(Fri, 17 Feb 2023 17:21:07 GMT) (full text, mbox, link).
Notification sent
to Lucas Nussbaum <lucas@debian.org>:
Bug acknowledged by developer.
(Fri, 17 Feb 2023 17:21:07 GMT) (full text, mbox, link).
Message #15 received at 1031433-close@bugs.debian.org (full text, mbox, reply):
Source: diffoscope Source-Version: 236 Done: Chris Lamb <lamby@debian.org> We believe that the bug you reported is fixed in the latest version of diffoscope, which is due to be installed in the Debian FTP archive. A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to 1031433@bugs.debian.org, and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Chris Lamb <lamby@debian.org> (supplier of updated diffoscope package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing ftpmaster@ftp-master.debian.org) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Format: 1.8 Date: Fri, 17 Feb 2023 08:48:41 -0800 Source: diffoscope Built-For-Profiles: nocheck Architecture: source Version: 236 Distribution: unstable Urgency: medium Maintainer: Reproducible builds folks <reproducible-builds@lists.alioth.debian.org> Changed-By: Chris Lamb <lamby@debian.org> Closes: 1031433 Changes: diffoscope (236) unstable; urgency=medium . [ FC Stegerman ] * Update code to match latest version of Black. (Closes: #1031433) . [ Chris Lamb ] * Require at least Black version 23.1.0 to run the internal Black tests. * Update copyright years. Checksums-Sha1: c35ec5ce988fe4e27fb257f0c4fe97cd210ea97d 5151 diffoscope_236.dsc f30e35654765e63f0f51e1d00e769902b48bc12d 2461668 diffoscope_236.tar.xz b0bdc7b73faea2d4690846c0b2e551db2c31b1c7 6931 diffoscope_236_amd64.buildinfo Checksums-Sha256: 5af233f3e05af3bcbf13db443695594a3c5c162474486462f4b3d659af81d4c6 5151 diffoscope_236.dsc fe4cfb3df68fc1adc2ee8780939b353d244704c892d3c0137f25e0b1833e7a7e 2461668 diffoscope_236.tar.xz 13b4596f5c8e8a521998c52f4c522167ee123500b1425b1609cb82d0a0978bbf 6931 diffoscope_236_amd64.buildinfo Files: fff63a5d56fe8db57572592c41be426a 5151 devel optional diffoscope_236.dsc fa5927114574bb05c5d9a03117ce51aa 2461668 devel optional diffoscope_236.tar.xz b21e32b871d7feba0e3fdc7703756854 6931 devel optional diffoscope_236_amd64.buildinfo -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEwv5L0nHBObhsUz5GHpU+J9QxHlgFAmPvsBIACgkQHpU+J9Qx Hljktw/+LsbZ3BejIFVGXaGfVNWVMI+C15HMC3nuCYKQ5LdCpz6OK7U4XcxvCmp0 YZWFVh06vmzjQMAzBXQR2pCrIl4AimyaNTMe+MIzqk92YveZWgCoyT7kDm8Cp03s ESM3M8BOQd7rZvrzzBkBcHVVnzd5VpJMva67iWdUD/bSP04aRweQZxv+RZuP3WkR U5Hv4S4LoxOa0Xo2682PprowJWq8zxfxfOU5U05I6LWYBo7jmMZxS3z9WlinEET2 SOcvaHvs4R10wH+XmJxnPUSrQTmFwBQolpJQuhWLgPeidre8EcFMQrH2b0mw7w+8 PYGTr17rR0YQqtao+kByK6/5DzHFmgiBRp3j7R1tWIXtdKRK2qFe6PUPgeXYDnJp 4kbebx2TQgQmOjihZAkqoFL1I73UypDMAibN6kcvDZDWkuZ5D7VZ4LKdKoparI6A j+LGvVtFnx7s7rSFD4MjGqhWyUtbjBzK6OOrjsrBEC6Hv5JARjc+5qMByAyiVDBq QigPTZXiLzqVD5FStDVNBUHHEzkPQEFGE3b1l+NypzVNMjuVHl4LaBeX54T3zPeh b73K4GgCxxuJghnOldpDNNBW6fW0NzJqKsy0DxhDclHuoPN0jSrcBSznVDwd4ilK 80KRPZn/IvoJb/wRXv5DdilCNatomcknrCH+iAsp2t6dy4+HrO4= =S2Vf -----END PGP SIGNATURE-----
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Sun, 09 Apr 2023 07:25:27 GMT) (full text, mbox, link).
Send a report that this bug log contains spam.
Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.
Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.