Hi, On Wed, 8 Jan 2025 11:33:02 +0000 (UTC) Gianfranco Costamagna <locutusofb...@debian.org> wrote: > Hello, as seen here [1] and here [2] botch now FTBFS in sid > > compare `./tools/wanna-build-sortblockers.py --help` with man page... > `./tools/wanna-build-sortblockers.py --help` and man page > ./wanna-build-sortblockers disagree: > help > max > max-popcon > max-popcon] > min > min-popcon > reverse > verbose != help > max > max-popcon > min > min-popcon > reverse > verbose > make[2]: *** [Makefile:278: test-man] Error 1 > make[2]: Leaving directory '/build/reproducible-path/botch-0.24' > make[1]: *** [debian/rules:25: override_dh_auto_test-arch] Error 2 > make[1]: Leaving directory '/build/reproducible-path/botch-0.24' > make: *** [debian/rules:7: binary] Error 2
the problem first appeared with snapshot timestamp 20250107T145252Z. Steps to reproduce: debbisect --cache=./cache --ignore-cached-results 20250107T085457Z 20250107T145252Z 'mmdebstrap --aptopt="Acquire::Check-Valid-Until \"false\"" --include=python3,wget,ca-certificates --verbose unstable /dev/null $DEBIAN_BISECT_MIRROR --customize-hook="chroot \"\$1\" sh -c \"dpkg-query -W > /pkglist\"" --customize-hook="download /pkglist ./debbisect.$DEBIAN_BISECT_TIMESTAMP.pkglist" --chrooted-customize-hook="wget https://sources.debian.org/data/main/b/botch/0.24-5/tools/wanna-build-sortblockers.py && echo \"\$(python3 ./wanna-build-sortblockers.py --help 2>&1)\" && test \"\$(python3 ./wanna-build-sortblockers.py --help 2>&1 | sed -ne \"s/^ \\+\\(-[^ =-]\\+,\\)\\? --\\([^ =]\\+\\)\\([ =].*\\)\\?\\\$/\2/p\" | grep --count max-popcon)\" = 1"' [...] bisection finished successfully last good timestamp: 20250107T085457Z first bad timestamp: 20250107T145252Z the following packages differ between the last good and first bad timestamp: diffutils 1:3.10-1+b1 -> 1:3.10-2 libpython3-stdlib:arm64 3.12.8-1 -> 3.13.1-1 libpython3.13-minimal:arm64 (n.a.) -> 3.13.1-3 libpython3.13-stdlib:arm64 (n.a.) -> 3.13.1-3 python3 3.12.8-1 -> 3.13.1-1 python3-minimal 3.12.8-1 -> 3.13.1-1 python3.13 (n.a.) -> 3.13.1-3 python3.13-minimal (n.a.) -> 3.13.1-3 sysvinit-utils 3.11-1 -> 3.13-1 Looking into the logs, it appears that starting with python 3.13, the format of the argparse --help output changed like this: -usage: wanna-build-sortblockers.py [-h] [-r] - [-m | -M | --min-popcon | --max-popcon] - [-v] +usage: wanna-build-sortblockers.py [-h] [-r] [-m | -M | --min-popcon | + --max-popcon] [-v] build-attempt-list importance-metric And the sed script is not prepared to deal with lines that start with a double-dash but are *not* belonging to the list of long options as later in the --help output. The fix is to add another call to sed which cuts off all the lines above the line matching /^options:$/ and to only match lines that start with exactly two spaces. I'm working on a fix in salsa. Thanks! cheers, josch
signature.asc
Description: signature