Hi,
this patch series starts to parse TAP output generated by our tests when executing them via Meson. This has the benefit that Meson starts to understand skipped tests and reports how many subtests have been executed:
```
$ meson test t002*
ninja: Entering directory `/home/pks/Development/git/build'
1/10 t0024-crlf-archive OK 0.17s 2 subtests passed
2/10 t0022-crlf-rename OK 0.18s 2 subtests passed
3/10 t0029-core-unsetenvvars SKIP 0.15s
4/10 t0023-crlf-am OK 0.18s 2 subtests passed
5/10 t0025-crlf-renormalize OK 0.21s 3 subtests passed
6/10 t0026-eol-config OK 0.25s 5 subtests passed
7/10 t0020-crlf OK 0.81s 36 subtests passed
8/10 t0028-working-tree-encoding OK 0.85s 22 subtests passed
9/10 t0021-conversion OK 3.45s 38 subtests passed
10/10 t0027-auto-crlf OK 26.35s 2600 subtests passed
Ok: 9
Fail: 0
Skipped: 1
```This new feature is only enabled with Meson 1.8 and newer, which contains a bugfix that we have upstreamed [1] to make the TAP parser work in `meson test --interactive` mode.
Despite the changes to Meson itself, this patch series also contains a couple of fixes for our test suite that caused us to not generate proper TAP output.
Thanks!
Patrick
[1]: https://github.com/mesonbuild/meson/pull/13980
---
Patrick Steinhardt (4):
t: fix cases where output breaks TAP format
t/test-lib: don't print shell traces to stdout
meson: introduce kwargs variable for tests
meson: parse TAP output generated by our testscontrib/credential/netrc/meson.build | 2 +- contrib/subtree/meson.build | 2 +- meson.build | 12 ++++++++++ t/meson.build | 6 ++--- t/t0000-basic.sh | 35 +++++++++++++++------------- t/t1007-hash-object.sh | 2 +- t/t4041-diff-submodule-option.sh | 4 ++-- t/t4060-diff-submodule-option-diff-format.sh | 2 +- t/t7401-submodule-summary.sh | 4 ++-- t/t9500-gitweb-standalone-no-errors.sh | 14 +++++------ t/test-lib.sh | 4 ++-- 11 files changed, 51 insertions(+), 36 deletions(-)
--- base-commit: 6f84262c44a89851c3ae5a6e4c1a9d06b2068d75 change-id: 20250429-pks-meson-tap-1eed604a02a3