#1119706 sbuild.conf should generate source.changes by default

#1119706#5
Date:
2025-10-30 21:44:20 UTC
From:
To:
Hi,

I hadn't run sbuild directly in ages, and today I discovered that that it still defaults to binary-only uploads!  Of course this results in an auto-reject.  Yes, my mistake was carelessness and assuming that sbuild.conf defaults had been updated to keep pace with ftpmasters policy from...what is it now, five or six years?

The question is probably:  Should sbuild build source+bin, or just source.

Regards,
Nicholas

#1119706#8
Date:
2025-10-31 05:15:23 UTC
From:
To:
Hi,

Quoting Nicholas D Steeves (2025-10-30 22:44:20)

if you want to build a source package, this is the tool you should use:

    dpkg-source -b .

As a convenience for you, sbuild runs the above if you execute it inside an
unpacked source package directory. It needs to, because the source package is
the *input* to sbuild, not its output. If you want to build source packages,
then sbuild is the wrong tool for the job.

In your workflow, you want to use sbuild to build *binary* packages and verify
that your build works and creates usable artifacts. You do not want to use
sbuild to produce binaries for upload (except maybe in the rare situations
where you upload to NEW).

If you want to make sure that the binaries you built and tested are connected
to the source package you upload, you can use another convenience feature:
--source-only-changes tells sbuild to create a .changes file which includes the
source package that it used to build just now.

Here is a quote from the man page for --source:

Do you think something should be added to the above to clear up the confusion?

Thanks!

cheers, josch

#1119706#13
Date:
2025-10-31 09:01:00 UTC
From:
To:
Hi,

I would also note that the current behaviour matches with the package
short description:

  Tool for building Debian binary packages from Debian sources

Regards
Aurelien

#1119706#18
Date:
2025-12-01 00:06:37 UTC
From:
To:
Thank you for your replies, and sorry for my delay replying.

Aurelien Jarno <aurel32@debian.org> writes:
[re]generating the source package.

I hope the following is more clear:

  1. sbuild is part of the preferred workflow, because it is what is
  used on buildd.
  2. Maintainers should locally test their packages before uploading.
  3. The locally tested package must directly correspond to what will be
  uploaded.
  4. The Archive exclusively accepts source.changes, except for NEW
  uploads.
  :. sbuild should generate source.changes

Regards,
Nicholas