zig/lib/std/Build
mlugg b8e568504e
std.Build: extend test_runner option to specify whether runner uses std.zig.Server
The previous logic here was trying to assume that custom test runners
never used `std.zig.Server` to communicate with the build runner;
however, it was flawed, because modifying the `test_runner` field on
`Step.Compile` would not update this flag. That might have been
intentional (allowing a way for the user to specify a custom test runner
which *does* use the compiler server protocol), but if so, it was a
flawed API, since it was too easy to update one field without updating
the other.

Instead, bundle these two pieces of state into a new type
`std.Build.Step.Compile.TestRunner`. When passing a custom test runner,
you are now *provided* to specify whether it is a "simple" runner, or
whether it uses the compiler server protocol.

This is a breaking change, but is unlikely to affect many people, since
custom test runners are seldom used in the wild.
2025-01-20 00:14:58 +00:00
..
Cache std.Build.Cache.Path: fix single-quote escaping format 2024-10-10 14:21:52 -07:00
Fuzz Replace deprecated default initializations with decl literals 2024-09-12 16:01:23 +01:00
Step std.Build: extend test_runner option to specify whether runner uses std.zig.Server 2025-01-20 00:14:58 +00:00
Cache.zig std.Build.Cache.hit: work around macOS kernel bug 2024-12-11 11:56:44 -08:00
Fuzz.zig Replace deprecated default initializations with decl literals 2024-09-12 16:01:23 +01:00
Module.zig std.Build: simplify module dependency handling 2024-12-18 01:47:51 +05:00
Step.zig std.Build.Cache.hit: work around macOS kernel bug 2024-12-11 11:56:44 -08:00
Watch.zig std.Build.Watch: implement removing watches for kqueue 2024-10-24 23:31:56 -07:00