[Qa-jenkins-scm] Build failed in Jenkins: reproducible_diffoscope_from_git #1217

jenkins at jenkins.debian.net jenkins at jenkins.debian.net
Tue May 17 18:58:24 BST 2022


See <https://jenkins.debian.net/job/reproducible_diffoscope_from_git/1217/display/redirect?page=changes>

Changes:

[lamby] Use assert_diff in test_zip over get_data and separate assert.

[lamby] Don't mask differences in .zip/.jar central directory extra fields.


------------------------------------------
[...truncated 544.31 KB...]
E       assert not '--- diffoscope/comparators/zip.py\t2022-05-17 17:21:22 +0000\n+++ diffoscope/comparators/zip.py\t2022-05-17 17:46:28....t mozzip_differences[-1].source2 == "dir/text"\n     assert_diff(mozzip_differences[-1], "text_ascii_expected_diff")\n'

output     = ('--- diffoscope/comparators/zip.py\t2022-05-17 17:21:22 +0000\n'
 '+++ diffoscope/comparators/zip.py\t2022-05-17 17:46:28.237735 +0000\n'
 '@@ -129,11 +129,14 @@\n'
 ' \n'
 '     # First try and prefer "zipinfo"...\n'
 '     if zipinfo is not None:\n'
 '         # ... but if "zipinfo -v" indicates we have differences in .zip\n'
 '         # directory "extra fields", add a comment and prefer that output.\n'
 '-        if re.search(r"[-+]  The central-directory extra field contains:", '
 'verbose.unified_diff):\n'
 '+        if re.search(\n'
 '+            r"[-+]  The central-directory extra field contains:",\n'
 '+            verbose.unified_diff,\n'
 '+        ):\n'
 '             verbose.add_comment(\n'
 '                 "Differences in extra fields detected; using output from '
 'zipinfo -v"\n'
 '             )\n'
 '             return [verbose]\n'
 ' \n'
 '--- tests/comparators/test_zip.py\t2022-05-17 17:21:22.759625 +0000\n'
 '+++ tests/comparators/test_zip.py\t2022-05-17 17:46:29.083828 +0000\n'
 '@@ -97,11 +97,10 @@\n'
 ' @skip_unless_tools_exist("zipinfo")\n'
 ' def test_mozzip_metadata(mozzip_differences, mozzip1, mozzip2):\n'
 '     assert_diff(mozzip_differences[0], "mozzip_zipinfo_expected_diff")\n'
 ' \n'
 ' \n'
 '-\n'
 ' @skip_unless_tools_exist("zipinfo")\n'
 ' def test_mozzip_compressed_files(mozzip_differences):\n'
 '     assert mozzip_differences[-1].source1 == "dir/text"\n'
 '     assert mozzip_differences[-1].source2 == "dir/text"\n'
 '     assert_diff(mozzip_differences[-1], "text_ascii_expected_diff")\n')

tests/test_source.py:270: AssertionError
----------------------------- Captured stdout call -----------------------------
--- diffoscope/comparators/zip.py	2022-05-17 17:21:22 +0000
+++ diffoscope/comparators/zip.py	2022-05-17 17:46:28.237735 +0000
@@ -129,11 +129,14 @@
 
     # First try and prefer "zipinfo"...
     if zipinfo is not None:
         # ... but if "zipinfo -v" indicates we have differences in .zip
         # directory "extra fields", add a comment and prefer that output.
-        if re.search(r"[-+]  The central-directory extra field contains:", verbose.unified_diff):
+        if re.search(
+            r"[-+]  The central-directory extra field contains:",
+            verbose.unified_diff,
+        ):
             verbose.add_comment(
                 "Differences in extra fields detected; using output from zipinfo -v"
             )
             return [verbose]
 
--- tests/comparators/test_zip.py	2022-05-17 17:21:22.759625 +0000
+++ tests/comparators/test_zip.py	2022-05-17 17:46:29.083828 +0000
@@ -97,11 +97,10 @@
 @skip_unless_tools_exist("zipinfo")
 def test_mozzip_metadata(mozzip_differences, mozzip1, mozzip2):
     assert_diff(mozzip_differences[0], "mozzip_zipinfo_expected_diff")
 
 
-
 @skip_unless_tools_exist("zipinfo")
 def test_mozzip_compressed_files(mozzip_differences):
     assert mozzip_differences[-1].source1 == "dir/text"
     assert mozzip_differences[-1].source2 == "dir/text"
     assert_diff(mozzip_differences[-1], "text_ascii_expected_diff")

--------- generated xml file: /tmp/job-exports/test-results/tests.xml ----------

---------- coverage: platform linux, python 3.10.4-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     21    55%   144-150, 155-164, 169-178
diffoscope/comparators/android.py               43      1    98%   49
diffoscope/comparators/apk.py                  148     11    93%   47-49, 55, 239-242, 245, 257, 272, 276
diffoscope/comparators/ar.py                    27      0   100%
diffoscope/comparators/berkeley_db.py           20      0   100%
diffoscope/comparators/binary.py                20      0   100%
diffoscope/comparators/binwalk.py               64     23    64%   32-33, 37-39, 55, 58, 61, 64, 74, 87, 104-121, 124-131
diffoscope/comparators/bzip2.py                 25      0   100%
diffoscope/comparators/cbfs.py                  89     43    52%   39-40, 46, 49, 55-66, 69, 72, 75, 79-91, 104-114, 145-148, 152-166, 169
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                   29      1    97%   36
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     32    91%   77, 82-83, 221, 236, 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                 16      0   100%
diffoscope/comparators/fsimage.py               85     18    79%   33-35, 43, 50-51, 58-64, 68-70, 76, 81-82, 86, 131
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      7    63%   36-45, 56-68
diffoscope/comparators/gzip.py                  27      0   100%
diffoscope/comparators/haskell.py               60     13    78%   37, 47, 85-87, 96, 102-109, 113, 124-125, 142, 145
diffoscope/comparators/hdf.py                   14      0   100%
diffoscope/comparators/icc.py                   14      0   100%
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/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                   67      5    93%   30-32, 55, 99
diffoscope/comparators/pe32.py                  18      5    72%   31, 41-44, 52
diffoscope/comparators/pgp.py                   59      5    92%   72, 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      3    96%   56-58
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     37    82%   102, 120, 134, 142, 145, 159, 167, 193-194, 198-199, 205-206, 221, 235-247, 250-251, 254, 257, 286-287, 331-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, 123-124, 139, 157-165
diffoscope/comparators/utils/container.py      125     11    91%   66, 70, 115-119, 192-195, 211
diffoscope/comparators/utils/file.py           297     60    80%   39-40, 53-59, 80-94, 116, 122, 288-303, 346-348, 358-360, 368, 372, 376, 380, 443-446, 471-474, 488-491, 499, 503-507, 536, 547-560, 579, 586, 609
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                   49      3    94%   69, 153-154
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%   168, 171, 203, 255-256
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     18    92%   116, 226-230, 249, 284, 291-292, 311, 346-349, 380, 396, 402, 426, 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                             276     72    74%   59-61, 65-67, 73, 450, 458-465, 477-481, 488-514, 528, 570-612, 629, 684, 698-699, 721, 728-729, 734, 739-747, 765, 767-770, 775-781, 796
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               19      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                         42      0   100%
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, 97-98, 108-109, 148, 161, 166, 181-184
diffoscope/utils.py                             38      1    97%   45
--------------------------------------------------------------------------
TOTAL                                         7626   1127    85%
Coverage HTML written to dir htmlcov

=========================== short test summary info ============================
SKIPPED [1] tests/comparators/test_binwalk.py:36: cannot be run as root
SKIPPED [1] tests/comparators/test_binwalk.py:43: cannot be run as root
SKIPPED [1] tests/comparators/test_binwalk.py:55: cannot be run as root
SKIPPED [1] tests/comparators/test_binwalk.py:68: cannot be run as root
SKIPPED [1] tests/comparators/test_binwalk.py:79: cannot be run as root
SKIPPED [1] tests/comparators/test_cbfs.py:100: requires cbfstool
SKIPPED [1] tests/comparators/test_cbfs.py:105: requires cbfstool
SKIPPED [1] tests/comparators/test_cbfs.py:110: requires cbfstool
SKIPPED [1] tests/comparators/test_cbfs.py:122: requires cbfstool
SKIPPED [1] tests/comparators/test_cbfs.py:134: requires cbfstool
SKIPPED [1] tests/comparators/test_cbfs.py:142: requires cbfstool
SKIPPED [1] tests/comparators/test_dex.py:91: requires  >= 14.0 (11.0.15 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_gnumeric.py:45: requires ssconvert (try installing gnumeric)
SKIPPED [1] tests/comparators/test_gnumeric.py:50: requires ssconvert (try installing gnumeric)
SKIPPED [1] tests/comparators/test_haskell.py:35: mismatch between system ghc and fixture
SKIPPED [1] tests/comparators/test_haskell.py:52: mismatch between system ghc and fixture
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:97: requires  >= 14.0 (11.0.15 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_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, 662 passed, 35 skipped, 1 xfailed in 735.00s (0:12:14) =======
E: pybuild pybuild:369: test: plugin distutils failed with: exit code=1: cd /tmp/testrun/.pybuild/cpython3_3.10/build; python3.10 -m pytest -vv -r sxX -l --cov=diffoscope --cov-report=term-missing --cov-report=html --junit-xml=/tmp/job-exports/test-results/tests.xml
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.9 3.10" returned exit code 13
make: *** [debian/rules:35: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
debuild: fatal error at line 1182:
dpkg-buildpackage -us -uc -ui failed
'/chroots/chroot-run-sid.PY16OqwtE//tmp/job-exports/test-results' -> '<https://jenkins.debian.net/job/reproducible_diffoscope_from_git/ws/job-exports/test-results'>
'/chroots/chroot-run-sid.PY16OqwtE//tmp/job-exports/test-results/tests.xml' -> '<https://jenkins.debian.net/job/reproducible_diffoscope_from_git/ws/job-exports/test-results/tests.xml'>
Tue May 17 17:58:23 UTC 2022 - chroot-run.sh stopped running as /tmp/jenkins-script-tHgXUt4u, removing.
Build step 'Execute shell' marked build as failure



More information about the Qa-jenkins-scm mailing list