19 Commits

Author SHA1 Message Date
Daniel Hofstetter 5fcb15dba5 Make test_compare_test_results.py executable 2026-05-09 16:05:32 +02:00
Kevin Burke 16f11456b3 fix: rewrite GNU testsuite harness to run upstream test scripts directly
The previous harness tried to extract sed commands from GNU test scripts
via regex pattern matching, which produced false negatives (comparing
against empty expected output) and false positives. This led to inflated
test counts and unreliable pass/fail signals.

The new approach:
- Provides a lightweight shim for the gnulib test framework (init.sh)
  with implementations of compare_, returns_, skip_, framework_failure_,
  and all require_* functions
- Executes each .sh test script from the GNU testsuite directly,
  injecting our Rust sed binary via PATH
- Uses a clean srcdir with symlinks to real test data files
- Adds per-test timeout (10s) to catch infinite loops, with SIGTERM
  isolation so timeout signals don't kill the parent script
- Properly propagates exit codes (0=pass, 77=skip, 99=framework failure)

Results are now consistent with CI tracking (~12% pass rate) with
clear PASS/FAIL/SKIP/timeout categorization.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-19 22:04:56 +01:00
Sylvestre Ledru b3350a21c4 python coding style on the file 2026-01-28 09:32:24 +01:00
Sylvestre Ledru 8c46bec97f Skip PR comments when test results are identical 2026-01-28 09:32:24 +01:00
Eisuke Kawashima fc39ff7329 fix(run-gnu-testsuite.sh): unquote sed_script 2026-01-19 15:48:31 +09:00
Eisuke Kawashima f6d26ff00f fix(run-gnu-testsuite.sh): correct input and expected output strings
use ANSI-C strings to interpret `\n`
2026-01-19 14:55:24 +09:00
Sylvestre Ledru b26f59ab2f run testsuite: make sure that everything is run 2026-01-11 22:34:33 +01:00
Sylvestre Ledru ff0c1cdd06 remove artifact 2026-01-11 17:30:22 +01:00
Sylvestre Ledru d89243bdb9 Improve comparison output to show both current and reference numbers 2026-01-11 17:12:41 +01:00
Sylvestre Ledru 270f3fdce8 Add comprehensive unit tests for comparison script 2026-01-11 16:50:14 +01:00
Sylvestre Ledru 35ea457759 Add test result comparison script 2026-01-11 16:24:17 +01:00
Sylvestre Ledru 3fa2227ebf Run against the GNU implementation (#223)
* Add a script to run the sed testsuite

* run the gnu testsuite in the ci

* remove useless comment
2025-12-21 13:05:37 +01:00
Diomidis Spinellis 8665bf67b6 Adjust benchmark for Windown execution
It's difficult to make quoting work reliably and portably with the
Windows shell, so in most casesEsupply sed commands as files.
2025-12-16 21:07:09 +01:00
Diomidis Spinellis 9713cead52 Have benchmarked output go to a file
This is more realistic and allows to benchmark copy_file_range(2)
performance.
2025-09-19 20:56:14 +03:00
Diomidis Spinellis bfac7cf959 Optimize a, c, i text usage
Avoid the cost of string copies through the use of a reference counted
str.

The benchmark results improve as follows:

access-log-append aci-optimize is 1.07 times faster than rust-f2a2d868
2025-07-28 14:41:48 +03:00
Diomidis Spinellis 28b5eb0b72 Report performance changes up to 1% 2025-05-25 15:16:21 +03:00
Diomidis Spinellis a4cee5127d Handle failed executions 2025-05-24 16:15:24 +03:00
Diomidis Spinellis f7365fa422 Add benchmark and comparison scripts 2025-05-24 12:48:42 +03:00
Sylvestre Ledru 495de53f0d empty sed for reimplementation 2025-02-01 18:07:27 +01:00