Hi, Debian Policy section 4.9 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 looked at what happens when doing 'dpkg-buildpackage ; dpkg-buildpackage ; dpkg-buildpackage -S' over most source packages in sid. The resultats are the following: Packages tested: 29883 (I filtered out those that take a very long time to build) .. building OK all times: 24835 (83%) .. failing somehow: 5048 (17%) .... failing during the first build: 238 (not relevant for this mail) .... failing because the 'clean' target fails: 52 .... failing because dpkg-source fails: 4740 ...... dpkg-source detects changes to binary files: 1595 ...... dpkg-source detects unwanted binary files: 117 ...... dpkg-source detects deletions: 101 ...... dpkg-source detects other local changes: 2929 .... failing for other reasons: 22 Logs, lists, and dd-lists are available at http://qa-logs.debian.net/2023/08/twice/ An example sbuild invocation to reproduce failures is: sbuild -n -A -s --force-orig-source --apt-update -d unstable -v --no-run-lintian \ --starting-build-commands="cd %SBUILD_PKGBUILD_DIR && runuser -u $(id -un) -- dpkg-buildpackage --sanitize-env -us -uc -rfakeroot" \ --finished-build-commands="cd %SBUILD_PKGBUILD_DIR && runuser -u $(id -un) -- dpkg-buildpackage --sanitize-env -us -uc -rfakeroot -S" \ ruby-highline I wonder what we should do, because 5000+ failing packages is a lot... Should we give up on requiring a 'clean' target that works? After all, when 17% of packages are failing, it means that many maintainers don't depend on it in their workflow. Lucas