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)
Fix Released
Undecided
Unassigned
dulwich (Ubuntu)
Fix Released
Undecided
Unassigned
lintian-brush (Ubuntu)
Fix Released
Undecided
Unassigned
silver-platter (Ubuntu)
Fix Released
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)

Revision history for this message
Bryce Harrington (bryce) wrote :

With breezy fixed, a couple of these are now resolved:

plusone-jammy+22.04:~$ rmad silver-platter
 silver-platter | 0.4.1-2 | impish/universe
 silver-platter | 0.4.3-1 | jammy/universe

silver-platter | 0.4.3-1 | unstable

plusone-jammy+22.04:~$ rmad dulwich
 dulwich | 0.20.15-1ubuntu1 | impish/universe
 dulwich | 0.20.15-1ubuntu1 | jammy/universe
 dulwich | 0.20.25-1ubuntu1 | jammy-proposed/universe

dulwich | 0.19.9-2~bpo9+1 | stretch-backports
dulwich | 0.19.9-2~bpo9+1 | stretch-backports-debug
dulwich | 0.20.15-1 | stable
dulwich | 0.20.25-1 | testing
dulwich | 0.20.25-1 | unstable
dulwich | 0.20.25-1 | unstable-debug

Changed in dulwich (Ubuntu):
status: New → Fix Released
Changed in silver-platter (Ubuntu):
status: New → Fix Released
Revision history for this message
Hans Joachim Desserud (hjd) wrote :

Looks like both breezy-debian and lintian-brush has been resolved recently with new versions built successfully in Jammy. Not quite sure what fixed it, and I have seen a couple of (possibly related?) bug reports for this package set not too long ago. Anyways, seems fixed now, so closing the last open tasks.

Changed in lintian-brush (Ubuntu):
status: New → Fix Released
Changed in breezy-debian (Ubuntu):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.