Compare commits

..

2 Commits

Author SHA1 Message Date
Xavier Roche
f578bede0c ci: add a no-python3 job reproducing the Debian buildd chroot
GitHub runners ship python3, so every make-check job exercised the
python3-present path and the local-server tests never skipped. The Debian
buildds build in a minimal chroot with no python3, where those tests must
SKIP (exit 77) -- and 28_local-pause failed there instead, FTBFS on every
arch for 3.49.10-1, invisible to CI.

Add a job that builds, removes python3, and runs make check, so the skip
path is exercised on every PR. Verified to fail on the pre-fix tree and pass
after.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Xavier Roche <roche@httrack.com>
2026-06-28 20:02:47 +02:00
Xavier Roche
45279d7357 tests: skip 28_local-pause when python3 is absent (Debian buildd)
The local-server tests all skip with exit 77 when python3 is missing, but
28_local-pause runs local-crawl.sh inside a command-substitution with output
redirected to /dev/null, swallowing that exit-77 skip signal. On a host with
no python3 (every Debian buildd) both crawls then run serverless, finish in
0s, and the test reports FAIL instead of SKIP, turning 3.49.10-1 red on all
architectures. Add the same python3 guard the other tests get via
local-crawl.sh, up front, so it skips cleanly.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: Xavier Roche <roche@httrack.com>
2026-06-28 19:49:47 +02:00
3 changed files with 0 additions and 39 deletions

9
debian/changelog vendored
View File

@@ -1,12 +1,3 @@
httrack (3.49.10-2) unstable; urgency=medium
* Fix FTBFS: tests/28_local-pause failed instead of skipping when python3 is
absent (the local-server tests need python3, which the buildds lack). Add
patches/skip-local-pause-test-without-python3.patch to guard the test on
python3 up front, like its siblings, so it skips cleanly.
-- Xavier Roche <xavier@debian.org> Sun, 28 Jun 2026 20:18:46 +0200
httrack (3.49.10-1) unstable; urgency=medium
* New upstream release: new download-pacing and URL-handling options plus a

View File

@@ -1 +0,0 @@
skip-local-pause-test-without-python3.patch

View File

@@ -1,29 +0,0 @@
Description: skip 28_local-pause when python3 is absent (fixes FTBFS on buildds)
The local-server tests skip (exit 77) when python3 is missing, but
28_local-pause wrapped local-crawl.sh in a command substitution that swallowed
that skip. On the python3-less buildd chroot the test then ran serverless, both
crawls finished in 0s, and the 0s delta was reported as a failure. Guard the
test on python3 up front, like its siblings, so it skips cleanly.
Author: Xavier Roche <roche@httrack.com>
Origin: upstream, https://github.com/xroche/httrack/pull/445
Applied-Upstream: https://github.com/xroche/httrack/commit/45279d7
Forwarded: not-needed
Last-Update: 2026-06-28
diff --git a/tests/28_local-pause.test b/tests/28_local-pause.test
index 8505a75..add95d1 100755
--- a/tests/28_local-pause.test
+++ b/tests/28_local-pause.test
@@ -9,6 +9,13 @@ set -e
: "${top_srcdir:=..}"
+# python3 runs the local server (mirror local-crawl.sh); skip when absent, else
+# run() swallows its exit-77 and the serverless 0s/0s crawl looks like a fail.
+command -v python3 >/dev/null || {
+ echo "python3 not found; skipping local crawl tests"
+ exit 77
+}
+
run() { # echoes the wall-clock seconds of one crawl
local t0 t1
t0=$(date +%s)