* [PATCH 0/7] Allow tests to run in parallel
@ 2023-08-25 23:17 Rob Browning
2023-08-25 23:17 ` [PATCH 1/7] srfi-10.test: add missing (test-suite lib) dependency Rob Browning
` (7 more replies)
0 siblings, 8 replies; 9+ messages in thread
From: Rob Browning @ 2023-08-25 23:17 UTC (permalink / raw)
To: guile-devel
This series switches Guile to the Automake parallel test harness so
that commands like "make -j4 check" can run tests concurrently:
https://www.gnu.org/software/automake/manual/html_node/Parallel-Test-Harness.html.
Here it cuts the check time in half.
Right now I just wanted to see if this might be interesting. If so, I
can make whatever adjustments are desired (guessing perhaps changelog
entries, etc.).
I suspect eventually we might also want further adjustments to the
output, but that might or might not be important in the first pass.
Rob Browning (7):
srfi-10.test: add missing (test-suite lib) dependency
interp.test: add missing (test-suite lib) dependency
guile-test: set declarative #f to eliminate warning
guile-test: support automake parallel test harness via --trs-file
check-guile.in: improve quoting (e.g. paths with spaces)
check-guile.in: exit 2 on errors and direct output to stderr
Switch to the preferred parallel automake test harness
Makefile.am | 3 --
check-guile.in | 26 ++++-------
configure.ac | 5 +--
test-suite/Makefile.am | 18 +++++---
test-suite/driver | 60 ++++++++++++++++++++++++++
test-suite/guile-test | 30 ++++++++++---
test-suite/test-suite/lib/automake.scm | 54 +++++++++++++++++++++++
test-suite/tests/interp.test | 3 ++
test-suite/tests/srfi-10.test | 4 +-
9 files changed, 165 insertions(+), 38 deletions(-)
create mode 100755 test-suite/driver
create mode 100644 test-suite/test-suite/lib/automake.scm
--
2.39.2
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 1/7] srfi-10.test: add missing (test-suite lib) dependency
2023-08-25 23:17 [PATCH 0/7] Allow tests to run in parallel Rob Browning
@ 2023-08-25 23:17 ` Rob Browning
2023-08-25 23:17 ` [PATCH 2/7] interp.test: " Rob Browning
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Rob Browning @ 2023-08-25 23:17 UTC (permalink / raw)
To: guile-devel
---
test-suite/tests/srfi-10.test | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/test-suite/tests/srfi-10.test b/test-suite/tests/srfi-10.test
index c379d0bac..bc7a79157 100644
--- a/test-suite/tests/srfi-10.test
+++ b/test-suite/tests/srfi-10.test
@@ -17,7 +17,9 @@
;;;; License along with this library; if not, write to the Free Software
;;;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-(use-modules (srfi srfi-10))
+(use-modules
+ (srfi srfi-10)
+ ((test-suite lib) #:select (pass-if with-test-prefix)))
(define-reader-ctor 'rx make-regexp)
--
2.39.2
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH 2/7] interp.test: add missing (test-suite lib) dependency
2023-08-25 23:17 [PATCH 0/7] Allow tests to run in parallel Rob Browning
2023-08-25 23:17 ` [PATCH 1/7] srfi-10.test: add missing (test-suite lib) dependency Rob Browning
@ 2023-08-25 23:17 ` Rob Browning
2023-08-25 23:17 ` [PATCH 3/7] guile-test: set declarative #f to eliminate warning Rob Browning
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Rob Browning @ 2023-08-25 23:17 UTC (permalink / raw)
To: guile-devel
---
test-suite/tests/interp.test | 3 +++
1 file changed, 3 insertions(+)
diff --git a/test-suite/tests/interp.test b/test-suite/tests/interp.test
index 5f3e2aaf7..7497094a8 100644
--- a/test-suite/tests/interp.test
+++ b/test-suite/tests/interp.test
@@ -16,6 +16,9 @@
;;;; License along with this library; if not, write to the Free Software
;;;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+(define-module (test-suite test-interp)
+ #:use-module (test-suite lib))
+
(pass-if "Internal defines 1"
(letrec ((foo (lambda (arg)
(or arg (and (procedure? foo)
--
2.39.2
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH 3/7] guile-test: set declarative #f to eliminate warning
2023-08-25 23:17 [PATCH 0/7] Allow tests to run in parallel Rob Browning
2023-08-25 23:17 ` [PATCH 1/7] srfi-10.test: add missing (test-suite lib) dependency Rob Browning
2023-08-25 23:17 ` [PATCH 2/7] interp.test: " Rob Browning
@ 2023-08-25 23:17 ` Rob Browning
2023-08-25 23:17 ` [PATCH 4/7] guile-test: support automake parallel test harness via --trs-file Rob Browning
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Rob Browning @ 2023-08-25 23:17 UTC (permalink / raw)
To: guile-devel
---
test-suite/guile-test | 1 +
1 file changed, 1 insertion(+)
diff --git a/test-suite/guile-test b/test-suite/guile-test
index 2d4e94171..e0c4333f7 100755
--- a/test-suite/guile-test
+++ b/test-suite/guile-test
@@ -81,6 +81,7 @@
(apply (module-ref module 'main) args)))
(define-module (test-suite guile-test)
+ :declarative? #f
:use-module (test-suite lib)
:use-module (ice-9 getopt-long)
:use-module (ice-9 and-let-star)
--
2.39.2
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH 4/7] guile-test: support automake parallel test harness via --trs-file
2023-08-25 23:17 [PATCH 0/7] Allow tests to run in parallel Rob Browning
` (2 preceding siblings ...)
2023-08-25 23:17 ` [PATCH 3/7] guile-test: set declarative #f to eliminate warning Rob Browning
@ 2023-08-25 23:17 ` Rob Browning
2023-08-25 23:17 ` [PATCH 5/7] check-guile.in: improve quoting (e.g. paths with spaces) Rob Browning
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Rob Browning @ 2023-08-25 23:17 UTC (permalink / raw)
To: guile-devel
Support an optional --trs-file PATH argument that causes guile-test to
write the status information expected by the automake parallel test
harness to PATH.
In addition, when --trs-file is specified, suppress the final test
summary (via print-counts) since it would be repeated per-test-file
when running in parallel, the automake harness prints its own summary.
cf. https://www.gnu.org/software/automake/manual/html_node/API-for-Custom-Test-Drivers.html
---
test-suite/guile-test | 29 +++++++++++---
test-suite/test-suite/lib/automake.scm | 54 ++++++++++++++++++++++++++
2 files changed, 77 insertions(+), 6 deletions(-)
create mode 100644 test-suite/test-suite/lib/automake.scm
diff --git a/test-suite/guile-test b/test-suite/guile-test
index e0c4333f7..6090efc35 100755
--- a/test-suite/guile-test
+++ b/test-suite/guile-test
@@ -89,6 +89,7 @@
:use-module (system vm coverage)
:use-module (srfi srfi-11)
:use-module (system vm vm)
+ :use-module ((test-suite lib automake) :prefix automake/)
:export (main data-file-name test-file-name))
\f
@@ -184,7 +185,9 @@
(coverage
(single-char #\c))
(debug
- (single-char #\d))))))
+ (single-char #\d))
+ (trs-file
+ (value #t))))))
(define (opt tag default)
(let ((pair (assq tag options)))
(if pair (cdr pair) default)))
@@ -207,11 +210,16 @@
(if (null? foo)
(enumerate-tests test-suite)
foo)))
- (log-file
- (opt 'log-file "guile.log")))
+ (log-file (opt 'log-file "guile.log"))
+ (trs-file (opt 'trs-file #f)))
;; Open the log file.
- (let ((log-port (open-output-file log-file)))
+ (let ((log-port (open-output-file log-file))
+ (trs-port (and trs-file
+ (let ((p (open-output-file trs-file)))
+ (set-port-encoding! p "UTF-8")
+ (display ":copy-in-global-log: no\n" p)
+ p))))
;; Allow for arbitrary Unicode characters in the log file.
(set-port-encoding! log-port "UTF-8")
@@ -223,9 +231,11 @@
;; Register some reporters.
(let ((global-pass #t)
(counter (make-count-reporter)))
+ (when trs-port
+ (register-reporter (automake/reporter trs-port)))
(register-reporter (car counter))
(register-reporter (make-log-reporter log-port))
- (register-reporter user-reporter)
+ (register-reporter user-reporter)
(register-reporter (lambda results
(case (car results)
((unresolved)
@@ -255,10 +265,17 @@
;; Display the final counts, both to the user and in the log
;; file.
(let ((counts ((cadr counter))))
- (print-counts counts)
+ (unless trs-port
+ (print-counts counts))
(print-counts counts log-port))
(close-port log-port)
+
+ (when trs-port
+ (when global-pass (display ":recheck: no\n" trs-port))
+ (display ":test-global-result: umm, ok?\n" trs-port)
+ (close-port trs-port))
+
(quit global-pass))))))
\f
diff --git a/test-suite/test-suite/lib/automake.scm b/test-suite/test-suite/lib/automake.scm
new file mode 100644
index 000000000..237a89d65
--- /dev/null
+++ b/test-suite/test-suite/lib/automake.scm
@@ -0,0 +1,54 @@
+;;;; test-suite/lib/automake.scm --- support for automake driven tests
+;;;; Copyright (C) 2023 Free Software Foundation, Inc.
+;;;;
+;;;; This program is free software; you can redistribute it and/or
+;;;; modify it under the terms of the GNU Lesser General Public
+;;;; License as published by the Free Software Foundation; either
+;;;; version 3, or (at your option) any later version.
+;;;;
+;;;; This program is distributed in the hope that it will be useful,
+;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;;; GNU Lesser General Public License for more details.
+;;;;
+;;;; You should have received a copy of the GNU Lesser General Public
+;;;; License along with this software; see the file COPYING.LESSER.
+;;;; If not, write to the Free Software Foundation, Inc., 51 Franklin
+;;;; Street, Fifth Floor, Boston, MA 02110-1301 USA
+
+(define-module (test-suite lib automake)
+ :use-module ((ice-9 match))
+ :use-module ((srfi srfi-1) :select (drop-right last))
+ :export (reporter))
+
+(define (display->str x)
+ (call-with-output-string (lambda (port) (display x port))))
+
+(define (write->str x)
+ (call-with-output-string (lambda (port) (write x port))))
+
+(define (show port . args)
+ (for-each (lambda (x) (display x port)) args))
+
+(define (render-name name)
+ (string-join (append (map display->str (drop-right name 1))
+ ;; Because for some tests, say via pass-if or
+ ;; pass-if-equal with no explict name, it's an
+ ;; arbirary form, possibly including null chars,
+ ;; etc.
+ (list (write->str (last name))))
+ ": "))
+
+(define (reporter trs-port)
+ (match-lambda*
+ (('pass name) (show trs-port ":test-result: PASS " (render-name name) "\n"))
+ (('upass name) (show trs-port ":test-result: XPASS " (render-name name) "\n"))
+ (('fail name) (show trs-port ":test-result: FAIL " (render-name name) "\n"))
+ (('xfail name . args) (show trs-port ":test-result: XFAIL " (render-name name) "\n"))
+ (('untested name) (show trs-port ":test-result: SKIP " (render-name name) "\n"))
+ (('unsupported name) (show trs-port ":test-result: SKIP " (render-name name) "\n"))
+ (('unresolved name) (show trs-port ":test-result: SKIP " (render-name name) "\n"))
+ (('error name . args)
+ (show trs-port ":test-result: ERROR " (render-name name) " ")
+ (write args trs-port)
+ (newline trs-port))))
--
2.39.2
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH 5/7] check-guile.in: improve quoting (e.g. paths with spaces)
2023-08-25 23:17 [PATCH 0/7] Allow tests to run in parallel Rob Browning
` (3 preceding siblings ...)
2023-08-25 23:17 ` [PATCH 4/7] guile-test: support automake parallel test harness via --trs-file Rob Browning
@ 2023-08-25 23:17 ` Rob Browning
2023-08-25 23:17 ` [PATCH 6/7] check-guile.in: exit 2 on errors and direct output to stderr Rob Browning
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Rob Browning @ 2023-08-25 23:17 UTC (permalink / raw)
To: guile-devel
---
check-guile.in | 23 +++++++++--------------
1 file changed, 9 insertions(+), 14 deletions(-)
diff --git a/check-guile.in b/check-guile.in
index 214deec16..09d95a03c 100644
--- a/check-guile.in
+++ b/check-guile.in
@@ -14,25 +14,22 @@ set -e
top_builddir=@top_builddir_absolute@
top_srcdir=@top_srcdir_absolute@
-TEST_SUITE_DIR=${top_srcdir}/test-suite
-export TEST_SUITE_DIR
+export TEST_SUITE_DIR="${top_srcdir}/test-suite"
if [ x"$1" = x-i ] ; then
- guile=$2
- shift
- shift
+ guile="$2"
+ shift 2
else
- guile=${top_builddir}/meta/guile
+ guile="${top_builddir}/meta/guile"
fi
-GUILE_LOAD_PATH=$TEST_SUITE_DIR
-export GUILE_LOAD_PATH
+export GUILE_LOAD_PATH="$TEST_SUITE_DIR"
if [ -f "$guile" -a -x "$guile" ] ; then
- echo Testing $guile ... "$@"
- echo with GUILE_LOAD_PATH=$GUILE_LOAD_PATH
+ echo "Testing $guile ..." "$@"
+ echo "with GUILE_LOAD_PATH=$GUILE_LOAD_PATH"
else
- echo ERROR: Cannot execute $guile
+ echo "ERROR: Cannot execute $guile"
exit 1
fi
@@ -41,11 +38,9 @@ if [ ! -f guile-procedures.txt ] ; then
@LN_S@ libguile/guile-procedures.txt .
fi
-exec $guile \
+exec "$guile" \
--debug \
-L "$TEST_SUITE_DIR" \
--no-auto-compile -e main -s "$TEST_SUITE_DIR/guile-test" \
--test-suite "$TEST_SUITE_DIR/tests" \
--log-file check-guile.log "$@"
-
-# check-guile ends here
--
2.39.2
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH 6/7] check-guile.in: exit 2 on errors and direct output to stderr
2023-08-25 23:17 [PATCH 0/7] Allow tests to run in parallel Rob Browning
` (4 preceding siblings ...)
2023-08-25 23:17 ` [PATCH 5/7] check-guile.in: improve quoting (e.g. paths with spaces) Rob Browning
@ 2023-08-25 23:17 ` Rob Browning
2023-08-25 23:17 ` [PATCH 7/7] Switch to the preferred parallel automake test harness Rob Browning
2023-09-18 3:00 ` [PATCH 0/7] Allow tests to run in parallel Rob Browning
7 siblings, 0 replies; 9+ messages in thread
From: Rob Browning @ 2023-08-25 23:17 UTC (permalink / raw)
To: guile-devel
Return 2 rather than 1 for errors so that 1 will be available for any
future boolean tests (as with say grep).
Direct error message to stderr rather than stdout.
---
check-guile.in | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/check-guile.in b/check-guile.in
index 09d95a03c..31bdce340 100644
--- a/check-guile.in
+++ b/check-guile.in
@@ -29,8 +29,8 @@ if [ -f "$guile" -a -x "$guile" ] ; then
echo "Testing $guile ..." "$@"
echo "with GUILE_LOAD_PATH=$GUILE_LOAD_PATH"
else
- echo "ERROR: Cannot execute $guile"
- exit 1
+ echo "ERROR: Cannot execute $guile" 1>&2
+ exit 2
fi
# documentation searching ignores GUILE_LOAD_PATH.
--
2.39.2
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH 7/7] Switch to the preferred parallel automake test harness
2023-08-25 23:17 [PATCH 0/7] Allow tests to run in parallel Rob Browning
` (5 preceding siblings ...)
2023-08-25 23:17 ` [PATCH 6/7] check-guile.in: exit 2 on errors and direct output to stderr Rob Browning
@ 2023-08-25 23:17 ` Rob Browning
2023-09-18 3:00 ` [PATCH 0/7] Allow tests to run in parallel Rob Browning
7 siblings, 0 replies; 9+ messages in thread
From: Rob Browning @ 2023-08-25 23:17 UTC (permalink / raw)
To: guile-devel
Here, this allows make -j4 check to run in about half the time that it
does with the deprecated serial harness.
---
Makefile.am | 3 ---
check-guile.in | 5 +---
configure.ac | 5 +---
test-suite/Makefile.am | 18 ++++++++-----
test-suite/driver | 60 ++++++++++++++++++++++++++++++++++++++++++
5 files changed, 73 insertions(+), 18 deletions(-)
create mode 100755 test-suite/driver
diff --git a/Makefile.am b/Makefile.am
index eb3541c34..b2ac5539e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -85,9 +85,6 @@ EXTRA_DIST = LICENSE HACKING GUILE-VERSION \
.guix/modules/guile-package.scm \
.guix/manifest.scm
-TESTS = check-guile
-TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@
-
ACLOCAL_AMFLAGS = -I m4
CLEANFILES = libguile/guile-procedures.txt
diff --git a/check-guile.in b/check-guile.in
index 31bdce340..137fe6d40 100644
--- a/check-guile.in
+++ b/check-guile.in
@@ -25,10 +25,7 @@ fi
export GUILE_LOAD_PATH="$TEST_SUITE_DIR"
-if [ -f "$guile" -a -x "$guile" ] ; then
- echo "Testing $guile ..." "$@"
- echo "with GUILE_LOAD_PATH=$GUILE_LOAD_PATH"
-else
+if ! [ -f "$guile" -a -x "$guile" ] ; then
echo "ERROR: Cannot execute $guile" 1>&2
exit 2
fi
diff --git a/configure.ac b/configure.ac
index d0a2dc79b..28f5d4166 100644
--- a/configure.ac
+++ b/configure.ac
@@ -33,11 +33,8 @@ AC_CONFIG_SRCDIR(GUILE-VERSION)
AC_CANONICAL_TARGET
-dnl Use `serial-tests' so the output `check-guile' is not hidden
-dnl (`parallel-tests' is the default in Automake 1.13.)
-dnl `serial-tests' was introduced in Automake 1.12.
AM_INIT_AUTOMAKE([1.12 gnu no-define -Wall -Wno-override \
- serial-tests color-tests dist-lzip dist-xz])
+ color-tests dist-lzip dist-xz])
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])], [AC_SUBST([AM_DEFAULT_VERBOSITY],1)])
AC_COPYRIGHT(GUILE_CONFIGURE_COPYRIGHT)
diff --git a/test-suite/Makefile.am b/test-suite/Makefile.am
index 81e63bce2..b00d598a5 100644
--- a/test-suite/Makefile.am
+++ b/test-suite/Makefile.am
@@ -77,9 +77,7 @@ SCM_TESTS = tests/00-initial-env.test \
tests/list.test \
tests/load.test \
tests/match.test \
- tests/match.test.upstream \
tests/modules.test \
- tests/multilingual.nottest \
tests/net-db.test \
tests/numbers.test \
tests/optargs.test \
@@ -93,7 +91,6 @@ SCM_TESTS = tests/00-initial-env.test \
tests/procs.test \
tests/poe.test \
tests/popen.test \
- tests/popen-child.scm \
tests/ports.test \
tests/posix.test \
tests/q.test \
@@ -206,6 +203,9 @@ EXTRA_DIST = \
guile-test \
test-suite/lib.scm \
$(SCM_TESTS) \
+ tests/match.test.upstream \
+ tests/multilingual.nottest \
+ tests/popen-child.scm \
tests/rnrs-test-a.scm \
tests/srfi-64-test.scm \
ChangeLog-2008
@@ -248,9 +248,13 @@ LALR_EXTRA += \
lalr/glr-test.scm \
lalr/run-guile-test.sh
-TESTS = $(LALR_TESTS)
-TESTS_ENVIRONMENT = \
- @LOCALCHARSET_TESTS_ENVIRONMENT@ \
- $(top_builddir)/meta/guile --no-auto-compile
+TESTS = $(LALR_TESTS) $(SCM_TESTS)
+
+AM_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@
+LOG_COMPILER = $(top_builddir)/meta/guile
+AM_LOG_FLAGS = --no-auto-compile
+
+TEST_EXTENSIONS = .test
+TEST_LOG_DRIVER = ./driver
EXTRA_DIST += $(LALR_EXTRA) $(LALR_TESTS) tests/sxml-match-tests.ss
diff --git a/test-suite/driver b/test-suite/driver
new file mode 100755
index 000000000..be71a2e63
--- /dev/null
+++ b/test-suite/driver
@@ -0,0 +1,60 @@
+#!/bin/sh
+
+set -ue
+
+script_home="$(cd "$(dirname "$0")" && pwd)"
+
+usage()
+{
+ cat <<-EOF
+ Usage: driver [OPTION ...] -- TEST [ARG ...]
+ This is a test
+ Options:
+ --log-file PATH
+ --trs-file PATH
+ --color-tests (yes|no) currently ignored
+ --expect-failure (yes|no) currently ignored
+ --enable-hard-errors (yes|no) currently ignored
+ --test-name NAME currently ignored
+
+ This command provides an Automake parallel test harness
+ compatible driver for running TEST with Guile. This is
+ essentially an adapter for check-guile and it currently
+ assumes that check-guile is in the parent directory.
+
+ EOF
+}
+
+misuse() { usage 1>&2; exit 2; }
+
+test_name=''
+log_file=''
+trs_file=''
+
+while test $# -gt 0; do
+ case "$1" in
+ --test-name) test $# -gt 1 || misuse; test_name="$2"; shift 2 ;;
+ --log-file) test $# -gt 1 || misuse; log_file="$2"; shift 2 ;;
+ --trs-file) test $# -gt 1 || misuse; trs_file="$2"; shift 2 ;;
+ --color-tests|--expect-failure|--enable-hard-errors) shift 2 ;;
+ --) shift; break ;;
+ *) break ;;
+ esac
+done
+
+test "$test_name" || misuse
+test "$log_file" || misuse
+test "$trs_file" || misuse
+
+test $# -gt 0 || misuse
+program="$1"
+shift
+
+# REVIEW: check test-name vs program...
+
+cd ..
+
+exec ./check-guile \
+ --log-file "test-suite/$log_file" \
+ --trs-file "test-suite/$trs_file" \
+ "$(basename "$program")"
--
2.39.2
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH 0/7] Allow tests to run in parallel
2023-08-25 23:17 [PATCH 0/7] Allow tests to run in parallel Rob Browning
` (6 preceding siblings ...)
2023-08-25 23:17 ` [PATCH 7/7] Switch to the preferred parallel automake test harness Rob Browning
@ 2023-09-18 3:00 ` Rob Browning
7 siblings, 0 replies; 9+ messages in thread
From: Rob Browning @ 2023-09-18 3:00 UTC (permalink / raw)
To: guile-devel
Rob Browning <rlb@defaultvalue.org> writes:
> This series switches Guile to the Automake parallel test harness so
> that commands like "make -j4 check" can run tests concurrently:
> https://www.gnu.org/software/automake/manual/html_node/Parallel-Test-Harness.html.
>
> Here it cuts the check time in half.
>
> Right now I just wanted to see if this might be interesting. If so, I
> can make whatever adjustments are desired (guessing perhaps changelog
> entries, etc.).
>
> I suspect eventually we might also want further adjustments to the
> output, but that might or might not be important in the first pass.
Now also available for evaluation via
https://codeberg.org/rlb/guile/pulls/2 and the corresponding rev branch.
Thanks
--
Rob Browning
rlb @defaultvalue.org and @debian.org
GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A
GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2023-09-18 3:00 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-25 23:17 [PATCH 0/7] Allow tests to run in parallel Rob Browning
2023-08-25 23:17 ` [PATCH 1/7] srfi-10.test: add missing (test-suite lib) dependency Rob Browning
2023-08-25 23:17 ` [PATCH 2/7] interp.test: " Rob Browning
2023-08-25 23:17 ` [PATCH 3/7] guile-test: set declarative #f to eliminate warning Rob Browning
2023-08-25 23:17 ` [PATCH 4/7] guile-test: support automake parallel test harness via --trs-file Rob Browning
2023-08-25 23:17 ` [PATCH 5/7] check-guile.in: improve quoting (e.g. paths with spaces) Rob Browning
2023-08-25 23:17 ` [PATCH 6/7] check-guile.in: exit 2 on errors and direct output to stderr Rob Browning
2023-08-25 23:17 ` [PATCH 7/7] Switch to the preferred parallel automake test harness Rob Browning
2023-09-18 3:00 ` [PATCH 0/7] Allow tests to run in parallel Rob Browning
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).