FTBFS in impish due to test failures - incompatibility dulwich/breezy - needs breezy 3.2.1

Bug #1933034 reported by Hans Joachim Desserud
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
breezy-debian (Ubuntu)
Undecided
Unassigned
dulwich (Ubuntu)
Undecided
Unassigned
lintian-brush (Ubuntu)
Undecided
Unassigned
silver-platter (Ubuntu)
Undecided
Unassigned

Bug Description

When attempting to build breezy-debian 2.8.63 on Impish, several of the tests fail with stack traces similar to the one below. I checked with my Debian Sid system, but was unable to reproduce the failures there. Looks like an Ubuntu-only issue.

...

ERROR: breezy.plugins.debian.tests.test_bzrtools_import.ImportArchiveTests.test_replaces_file_id_of_existing_file_with_target_tree(git)
----------------------------------------------------------------------
Traceback (most recent call last):
testtools.testresult.real._StringException: Empty attachments:
  log

Traceback (most recent call last):
  File "/<<PKGBUILDDIR>>/tests/test_bzrtools_import.py", line 158, in test_replaces_file_id_of_existing_file_with_target_tree
    import_dir(tree, "source", target_tree=file_ids_tree)
  File "/<<PKGBUILDDIR>>/bzrtools_import.py", line 71, in import_dir
    return _import_archive(
  File "/<<PKGBUILDDIR>>/bzrtools_import.py", line 107, in _import_archive
    for path, entry in tree.iter_entries_by_dir():
  File "/usr/lib/python3/dist-packages/breezy/git/tree.py", line 1344, in iter_entries_by_dir
    for path, value in self._recurse_index_entries(
  File "/usr/lib/python3/dist-packages/breezy/git/tree.py", line 1321, in _recurse_index_entries
    (ctime, mtime, dev, ino, mode, uid, gid, size, sha,
ValueError: too many values to unpack (expected 10)

----------------------------------------------------------------------
Ran 561 tests in 28.943s

FAILED (errors=6, known_failure_count=3)

For more details see https://launchpadlibrarian.net/544236724/buildlog_ubuntu-impish-amd64.breezy-debian_2.8.63_BUILDING.txt.gz

Bryce Harrington (bryce)
tags: added: update-excuses
tags: added: update-excuse
removed: update-excuses
Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

This change seems "infectionous" as now dependent packages break like
lintian-brush in
https://launchpadlibrarian.net/548012775/buildlog_ubuntu-impish-amd64.lintian-brush_0.107_BUILDING.txt.gz

Revision history for this message
Christian Ehrhardt  (paelzer) wrote (last edit ):

The build of breezy-debian is still affected on a recent rebuild:
  https://launchpadlibrarian.net/545919434/buildlog_ubuntu-impish-amd64.breezy-debian_2.8.63build1_BUILDING.txt.gz
In addition it has the same effect to lintian-brush as mentioned above.

Not to be mistaken for berrzy (without -debian) which is showing a different issue tracked in bug https://bugs.launchpad.net/ubuntu/+source/breezy-debian/+bug/1937173

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

FYI - As of today both build issues are still locally reproducible in sbuild.

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

It is already clear that eventually once all FTBFS are resolved all these need to be tested combined from proposed. So please combine "dulwich, silver-platter, breezy-debian, breezy, lintian-brush" as triggers together for all the tests of them.

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

The fail is on:

  File "/usr/lib/python3/dist-packages/breezy/git/tree.py", line 1324, in _recurse_index_entries
    (ctime, mtime, dev, ino, mode, uid, gid, size, sha,
ValueError: too many values to unpack (expected 10)

And indeed if we check the data there is has 11 elements, here with names:

DEBUG named tuple is <class 'dulwich.index.IndexEntry'>

name ctime type <class 'float'> ivalue 1627019693.44951
name mtime type <class 'float'> ivalue 1627019693.44951
name dev type <class 'int'> ivalue 49
name ino type <class 'int'> ivalue 97546
name mode type <class 'int'> ivalue 33188
name uid type <class 'int'> ivalue 0
name gid type <class 'int'> ivalue 0
name size type <class 'int'> ivalue 14
name sha type <class 'bytes'> ivalue b'c197bd817337bf4fb5a7119cccdcada85423b65d'
name flags type <class 'int'> ivalue 0
name extended_flags type <class 'NoneType'> ivalue None

That matches /usr/lib/python3/dist-packages/dulwich/index.py
IndexEntry = collections.namedtuple(
    "IndexEntry",
    [
        "ctime",
        "mtime",
        "dev",
        "ino",
        "mode",
        "uid",
        "gid",
        "size",
        "sha",
        "flags",
        "extended_flags",
    ],
)

From
ii python3-dulwich 0.20.23-1ubuntu1 amd64 Python Git library - Python3 module

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

So it is an incompatibility of
 ii python3-dulwich 0.20.23-1ubuntu1 amd64 Python Git library - Python3 module
 ii python3-breezy 3.2.0-1 amd64 distributed version control system - Python 3 library

That would be resolved by:
 breezy | 3.2.1-1 | impish-proposed/universe | source
But that is an FTBFS in bug 1937173

TODO from here:
1. fix FTFBS in bug 1937173 into impish proposed
2. hit rebuild on lintian-brush and breezy-debian
3. trigger the tests with combined triggers (see comment 4)

summary: - FTBFS in impish due to test failures
+ FTBFS in impish due to test failures - incompatibility dulwich/breezy -
+ needs breezy 3.2.1
Revision history for this message
Bryce Harrington (bryce) wrote :

silver-platter affected as well:

 https://launchpadlibrarian.net/550921033/buildlog_ubuntu-impish-amd64.silver-platter_0.4.3-1_BUILDING.txt.gz

       (ctime, mtime, dev, ino, mode, uid, gid, size, sha,
      ValueError: too many values to unpack (expected 10)

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers