I have two small changes for 0.33.x, happy for format-patch to the list
or you on request, and they're at g...@github.com:gdt/bup.git on my
0.33.x branch. I can rebase to include Signed-Off-By:; just ask, or
anything else Both are about script(1)
1) Avoiding an invocation on NetBSD that (correctly, per the man page)
will not return, by insisting on -qec working. (On master this is
avoided by careful sequential probing of which script invocations
work, finding NetBSD 9's correct args before trying the FreeBSD
approach which hangs.) My view is that limiting tests to "-qec
works" on the branch is ok. An alternative would be to "if NetBSD
don't probe the FreeBSD method", or to cherry-pick more of the main
complexity, but my sense is that this isn't a win in terms of test
usefulness to time spent. It is important that tests not hang.
2) On NetBSD, sleep 5 because script(1) exits quickly on input EOF.
This won't bother anybody else.
With my 0.33.x and (actual) main, test results
0.33.x NetBSD 9 amd64 ok
0.33.x NetBSD 10 amd64 ok (test-gc failed once, passed on 2nd run)
0.33.x NetBSD 9 earmv7hf-el ok
0.33.x NetBSD 10 aarch64 ok (py-test-xdist warning)
0.33.x macOS 13 x86_64 test-web
0.33.x macOS 15 x86_64 test-web *
main NetBSD 9 amd64 ok
main NetBSD 10 amd64 ok
main NetBSD 9 earmv7hf-el ok
main NetBSD 10 aarch64 ok (py-test-xdist warning)
main macOS 13 x86_64 test-web
main macOS 15 x86_64 test-web
The test-web failure I think is about utf-8 in filenames. It is
longstanding and there is nothing new in 0.33.x, and thus should be
ignored for the 0.33.10 release process.
* With 0.33.x on macOS 15, one run had two failing other test, and two
runs with -j4 failed spectacularly (and consistently) with a complaint
about utf-8 surrogates in test infrastructure. My assessment is that
none of this points to a problem with bup itself (vs. "portable
testing is hard").
-----------------------------------------
commit da45ca479ba1ff3b5345f370fe74133ae1d855f5
Author: Greg Troxel <
g...@lexort.com>
Date: Mon Jan 19 11:07:43 2026 -0500
dev/with-tty: Sleep after script(1) on NetBSD
This is a partial cherry-pick of 2e4b6afc and b3563db9, to be a
minimal workaround for 0.33.x. with-tty will sleep after script, to
work around NetBSD's script exiting immediately on input EOF.
diff --git a/dev/with-tty b/dev/with-tty
index fbf5962f..9e6d439b 100755
--- a/dev/with-tty
+++ b/dev/with-tty
@@ -10,3 +10,13 @@ if script -qec true /dev/null; then
else
$@
fi
+
+case "$OSTYPE" in
+ netbsd)
+ # On NetBSD, the top-level script(1) process exits when read()
+ # reports EOF on stdin; this happens when running tests with
+ # /dev/null as stdin. As a workaround, wait after script, so
+ # that the command will have finished.
+ sleep 5
+ ;;
+esac
commit 7c3ed6754722e9327a6c291b826dd58850b5623e
Author: Greg Troxel <
g...@lexort.com>
Date: Wed Dec 31 18:54:33 2025 -0500
with-tty: If not -qec, just run command not in script
diff --git a/dev/with-tty b/dev/with-tty
index 99be7857..fbf5962f 100755
--- a/dev/with-tty
+++ b/dev/with-tty
@@ -6,9 +6,7 @@ usage() { echo 'Usage: with-tty command [arg ...]'; }
misuse() { usage 1>&2; exit 2; }
if script -qec true /dev/null; then
- # linux flavor
script -qec "$(printf ' %q' "$@")" /dev/null
else
- # bsd flavor
- script -qe /dev/null "$@"
+ $@
fi