I might take a stab at it, but it'll be earliest next weekend. So if someone 
else wants to try, please go ahead.

On 1 July 2026 19:09:25 CEST, Simon McVittie <[email protected]> wrote:
>On Sat, 23 May 2026 at 13:46:03 +0000, Santiago Vila reported:
>>>           assert xattr.getxattr(b'input/file', b'security.capability') == 
>>> capabilities
>> E           AssertionError: assert b'' == b'\x01\x00\x0...0\x00\x00\x00'
>
>(this happened twice in Santiago's log, once in 
>ArchiverTestCase::test_extract_capabilities and once in 
>RemoteArchiverTestCase::test_extract_capabilities)
>
>This test failure is now a blocker for the Python 3.14 transition, because 
>borgbackup is one of the packages needing rebuilding for that transition. 
>Builds on the official Debian buildds exhibited the same test failure, for 
>example in 
><https://buildd.debian.org/status/fetch.php?pkg=borgbackup&arch=arm64&ver=1.4.4-3%2Bb1&stamp=1782584582&raw=0>
> and 
><https://buildd.debian.org/status/fetch.php?pkg=borgbackup&arch=s390x&ver=1.4.4-3%2Bb1&stamp=1782588098&raw=0>.
>
>I can reproduce these two test failures on a real machine running unstable 
>(building on either a btrfs or tmpfs filesystem), and on a qemu virtual 
>machine running Debian 13 (on ext4, I think).
>
>If I avoid running tests under fakeroot (patch below) then that avoids this 
>particular test failure.
>
>I can also reproduce most (all? I haven't checked yet) of the other test 
>failures seen in the buildd logs above, but it seems likely that their root 
>cause is different, so I'll report them separately if not already in-scope for 
>#1140857. Avoiding fakeroot *doesn't* address those.
>
>    smcv
>
>----
>
>diff --git a/debian/rules b/debian/rules
>index bb6c6ff5d..94c6f0454 100755
>--- a/debian/rules
>+++ b/debian/rules
>@@ -39,17 +39,12 @@ override_dh_installman:
>        $(MAKE) -C docs man SPHINXBUILD=$(SPHINXBUILD)
>        dh_installman
>
>-# We run most of the tests in fakeroot to increase test coverage, but fakeroot
>-# introduces race conditions on its own.
>-TESTS_NO_FAKEROOT = benchmark.py cache.py checks.py key.py locking.py 
>patterns.py remote.py repository.py shellpattern.py
> override_dh_auto_test: export TZ=UTC # tests break in TZ=GMT+12, see 
> https://github.com/borgbackup/borg/issues/5535
> override_dh_auto_test: export LC_ALL=C.UTF-8
> override_dh_auto_test:
>-       # fakeroot introduces race conditions to e.g. locking tests.
>-       dh_auto_test -- --test-args "--pyargs borg.testsuite -k '$(subst 
>$(eval) $(eval), or ,$(TESTS_NO_FAKEROOT))'"
>        # We cannot rely on the buildds allowing fuse to be
>        # used, so we disable the fuse-mount tests.
>-       fakeroot dh_auto_test -- --test-args "--pyargs borg.testsuite -k 'not 
>fuse_mount and not test_fuse and not test_readonly_mount and not 
>test_migrate_lock_alive $(foreach t,$(TESTS_NO_FAKEROOT),and not $(t))'"
>+       dh_auto_test -- --test-args "--pyargs borg.testsuite -k 'not 
>fuse_mount and not test_fuse and not test_readonly_mount and not 
>test_migrate_lock_alive'"
>
> # Do not compress .ico file (affects html documentation)
> override_dh_compress:

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.

Reply via email to