Package: src:kiwi
Version: 11.1.0-1
User: [email protected]
Usertags: python3.15
Tags: ftbfs, forky, sid, patch
Severity: important
Hi!
While rebuilding the python related packages against the Python 3.15rc2
version we found that kiwi fails to build from source:
https://debusine.debian.net/debian/r-python-python3.15/artifact/4937047/
From the log, this is the error:
=================================== FAILURES
===================================
________________________ TestBoxContainerBuild.test_run
________________________
[…]
try:
os.mkdir(self, mode)
E FileExistsError: [Errno 17] File exists: 'target'
This happens because this test creates the 'target' directory but then
doesn't delete it, and it also overrides the os.exists function, thus
causing the Python mkdir function to think that the target doesn't
exist. So, when the tests are run for 2 different Python versions, the
second one fails (no matter which versions).
On top of this, if you look at the log, you'll see that the tests are
being run both times with Python3.14, this is due to the dh_auto_test
override. The harness intends to run the tests with python3.15 and
python3.14, but the call to pytest-3 overrides that.
I found that the following workaround takes care of both issues:
dh_auto_test -- --system=custom \
--test-args='cd test/unit && python{version} -m pytest' \
--after-test='rm -rf test/unit/target'
The issue with the existing target directory is a bug in the upstream
test and ideally it should be forwarded upstream. The other change I
hope it's not controversial.
Setting the severity to important for now. Once Python 3.15 is released
and later added to python3-defaults, this bug will become release
critical.
--
Regards,
Marga