Discussion:
Package builds on pbuilder but not on the autobuilders
Add Reply
Elena ``of Valhalla'' Grandi
2025-01-02 14:20:01 UTC
Reply
Permalink
Hello

I'm trying to understand what's happening to fpdf2:

https://tracker.debian.org/fpdf2

Before the upload I've built it with ``gbp buildpackage --git-pbuilder``
and a freshly updated sid image, and the build was successful, but then
I get

https://buildd.debian.org/status/package.php?p=fpdf2

with the error:

===== 1289 passed, 52 skipped, 3 xfailed, 13 warnings in 187.91s (0:03:07) =====
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.13 3.12" returned exit code 13
make[1]: *** [debian/rules:12: override_dh_auto_test] Error 25

for comparison, in the pbuilder log there is:

===== 1289 passed, 52 skipped, 3 xfailed, 13 warnings in 171.69s (0:02:51) =====

and the tests are considered successful, and the build continues.

(I've also tried a local run of ``autopkgtest ./ -- qemu
../../autopkgtest-unstable.img``, again with a freshly updated image,
and that also considers the tests to be passing, with the same results)

What am I doing wrong?
--
Elena ``of Valhalla''
Andrey Rakhmatullin
2025-01-02 14:30:01 UTC
Reply
Permalink
Post by Elena ``of Valhalla'' Grandi
Hello
https://tracker.debian.org/fpdf2
Before the upload I've built it with ``gbp buildpackage --git-pbuilder``
and a freshly updated sid image, and the build was successful, but then
I get
https://buildd.debian.org/status/package.php?p=fpdf2
I can confirm that it fails in a local sbuild with the same error.
Post by Elena ``of Valhalla'' Grandi
===== 1289 passed, 52 skipped, 3 xfailed, 13 warnings in 187.91s (0:03:07) =====
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.13 3.12" returned exit code 13
make[1]: *** [debian/rules:12: override_dh_auto_test] Error 25
===== 1289 passed, 52 skipped, 3 xfailed, 13 warnings in 171.69s (0:02:51) =====
and the tests are considered successful, and the build continues.
You are comparing the 3.12 summaries, you need to compare the 3.13 ones.
--
WBR, wRAR
Peter Pentchev
2025-01-02 14:50:01 UTC
Reply
Permalink
Post by Elena ``of Valhalla'' Grandi
Hello
https://tracker.debian.org/fpdf2
Before the upload I've built it with ``gbp buildpackage --git-pbuilder``
and a freshly updated sid image, and the build was successful, but then
I get
https://buildd.debian.org/status/package.php?p=fpdf2
===== 1289 passed, 52 skipped, 3 xfailed, 13 warnings in 187.91s (0:03:07) =====
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.13 3.12" returned exit code 13
make[1]: *** [debian/rules:12: override_dh_auto_test] Error 25
===== 1289 passed, 52 skipped, 3 xfailed, 13 warnings in 171.69s (0:02:51) =====
and the tests are considered successful, and the build continues.
(I've also tried a local run of ``autopkgtest ./ -- qemu
../../autopkgtest-unstable.img``, again with a freshly updated image,
and that also considers the tests to be passing, with the same results)
What am I doing wrong?
The "1289 passed, 52 skipped, etc" line is the output of pytest run
with Python 3.12. Before that, pybuild ran pytest with Python 3.13,
and one of the tests failed there; look for 'frozen posixpath'
(without the quotes) in the build log.

Unfortunately, the failure message from pytest is surprisingly unhelpful;
I would have expected it to display the posixpath object as a string,
so one can figure out what the "filename" was instead of the current
Python source file.

I may try reproducing this locally, but I will not be able to do that
until tomorrow at least.

G'luck,
Peter
--
Peter Pentchev ***@ringlet.net ***@debian.org ***@morpheusly.com
PGP key: https://www.ringlet.net/roam/roam.key.asc
Key fingerprint 2EE7 A7A5 17FC 124C F115 C354 651E EFB0 2527 DF13
Elena ``of Valhalla'' Grandi
2025-01-03 14:00:01 UTC
Reply
Permalink
Post by Peter Pentchev
The "1289 passed, 52 skipped, etc" line is the output of pytest run
with Python 3.12. Before that, pybuild ran pytest with Python 3.13,
and one of the tests failed there; look for 'frozen posixpath'
(without the quotes) in the build log.
Thanks for the hint!

I expected the build to stop after the first failure, and didn't check
that back in the log
Post by Peter Pentchev
Unfortunately, the failure message from pytest is surprisingly unhelpful;
I would have expected it to display the posixpath object as a string,
so one can figure out what the "filename" was instead of the current
Python source file.
I may try reproducing this locally, but I will not be able to do that
until tomorrow at least.
I've since then setup sbuild locally, and have managed to reproduce the
failure in it, but only during the build itself, not in the environment
where I'm left after the build nor anywhere else.

I'm investigating, but if anybody else knows what the issue is, I'd be
thankful for the help.
--
Elena ``of Valhalla''
Loading...