El 26/9/23 a las 16:18, Sam Hartman escribió:
So, according to the build log, the make check failed because it could not contact a KDC on the local system.
This could be simply a race condition. I've seen many packages to fail their tests randomly because of that. In many cases the problem has been solved by adding a "sleep 1" somewhere (for example, after the service is started and before the tests try to use the service). You mention a number of things in which the environment of Lucas autobuilders "might" differ from the official buildds. However, you seem to be automatically assuming that the failure is due to some of those things you enumerated, i.e. a "difference of build environments". But such thing is not necessarily true. My theory here is that this failure happens randomly, and it may happen randomly in the buildds as well. But the same way we can't tell that a coin is biased by throwing it only once, we should not consider that a package is ok just because it built ok once or twice in the buildds.
So, unless I'm violating some written policy somewhere, my claim is that this is all good.
I think you forgot Policy 4.2, which is also "written policy somewhere". This is what it says: If build-time dependencies are specified, it must be possible to build the package and produce working binaries on a system with only essential and build-essential packages installed and also those required to satisfy the build-time relationships (including any implied relationships). In other words: It has to work.
That said, I realize this is an area where things are underspecified, and I'd be happy to engage with debian-policy or the TC to further refine what builds are allowed to do if you think that something krb5 is doing is not reasonable.
I don't think debian-policy or the TC need to be involved in this. If the tests contain a race condition which could be avoided by simply adding a sleep (or some other easy fix), then that's all that we need to do.
I suspect this is a case where your build environment does not mirror the buildds enough for the tests to succeed,
The end user must be able to rebuild packages as well. Here, Lucas is merely doing what any end user could do at home, of course following certain standards. We surely would not tell an end user who tries to build a package without success "your system does not mirror buildd.debian,org well enough". We would surely point at whatever the user is doing wrong regarding existing policies. However, if the user is not doing anything wrong, then it's definitely our fault. Thanks.