On 15/08/23 at 01:29 -0400, Michael Stone wrote:
> On Mon, Aug 14, 2023 at 09:40:52PM +0100, Wookey wrote:
> > Yes. You are right. I (and most of the others who expressed an
> > interest in having this working) mostly care about doing a binary
> > build repeatedly. But doesn't this amount to much the same thing?
> 
> no, not really. a lot of benign changes (like copying in new autoconf stuff)
> can happily be made multiple times, which doesn't affect building at all but
> causes busy work to undo.
> 
> > dpkg-source will moan if the source has changed and tell you about the
> > nice patch it has made. OK, it will let some things slide as just
> > warnings, so 'builds binary twice' is a somewhat less stringent target
> > than 'leaves exactly the original pristine source'. I would have to check
> > the details, but I'm not sure how much difference this makes in
> > practice?
> 
> we don't know, since the test was "regenerate source"--a thing very few
> people care about--rather than "build twice" which is the thing people do
> seem to care about. It seems likely that the difference is thousands of
> packages.
> 
> I'm somewhat concerned we magically went from "should we do an MBF" to "I
> just did an MBF" without any real consensus in the middle. This being so
> painfully obvious that the MBF itself basically says there's no consensus.

I agree that the distinction between "fails to build source after
successful build" and "fails to build binary packages after successful
build" is useful. My initial test covered both, but I separated both
issues later on to provide more specific bug reports, so the MBF only
covered the first case. I also plan to do a MBF for "fails to build
binary packages after successful build" (there are about 700 packages
failing this).

What policy says is even stricter (and inadequate?), because it says:

  clean (required)

     This must undo any effects that the build and binary targets may
     have had, except that it should leave alone any output files
     created in the parent directory by a run of a binary target.

I think that the consensus might be something like:
- after 'clean', it _must_ be possible to perform a successful binary build
  again
- after 'clean', it _should_ be possible to build source again (so
  recommended by not required)

But unless we go further than that and decide that we don't care at all
about 'source builds after successful builds', the bugs (which where
filed severity:minor) remain valid.

Looking at the number of bugs fixed since the MBF (200 closed, + 125
pending, out of 5658, in less than two days [1]), it also looks like many
people think this is worth fixing.

[1] UDD queries:
select count(*) from bugs where id in (select id from bugs_usertags where 
email='lu...@debian.org' and tag = 'ftbfs-source-after-build');

select count(*) from bugs where id in (select id from bugs_usertags where 
email='lu...@debian.org' and tag = 'ftbfs-source-after-build') and 
status='done';

select count(*) from bugs where id in (select id from bugs_usertags where 
email='lu...@debian.org' and tag = 'ftbfs-source-after-build') and id in 
(select id from bugs_tags where tag='pending') and status!='done';

Lucas

Reply via email to