[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Potential MBF: packages failing to build twice in a row



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


Reply to: