Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 15 additions & 19 deletions ClarTestStep.zig
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

step: Step,
runner: *Step.Compile,
args: std.ArrayListUnmanaged([]const u8),
args: std.ArrayList([]const u8),

const ClarTestStep = @This();

Expand Down Expand Up @@ -41,15 +41,15 @@ fn make(step: *Step, options: Step.MakeOptions) !void {
var man = b.graph.cache.obtain();
defer man.deinit();

var argv_list: std.ArrayList([]const u8) = .init(arena);
var argv_list: std.ArrayList([]const u8) = .empty;
{
const file_path = clar.runner.installed_path orelse clar.runner.generated_bin.?.path.?;
try argv_list.append(file_path);
try argv_list.append(arena, file_path);
_ = try man.addFile(file_path, null);
}
try argv_list.append("-t"); // force TAP output
try argv_list.append(arena, "-t"); // force TAP output
for (clar.args.items) |arg| {
try argv_list.append(arg);
try argv_list.append(arena, arg);
man.hash.addBytes(arg);
}

Expand All @@ -74,26 +74,22 @@ fn make(step: *Step, options: Step.MakeOptions) !void {
);
defer poller.deinit();

const fifo = poller.fifo(.stdout);
const r = fifo.reader();

var buf: std.BoundedArray(u8, 1024) = .{};
const w = buf.writer();
const r: *std.io.Reader = poller.reader(.stdout);
var buf: [1024]u8 = undefined;
var w: std.io.Writer = .fixed(&buf);

var parser: TapParser = .default;
var node: ?std.Progress.Node = null;
defer if (node) |n| n.end();

while (true) {
r.streamUntilDelimiter(w, '\n', null) catch |err| switch (err) {
error.EndOfStream => if (try poller.poll()) continue else break,
while (try poller.poll()) {
_ = r.streamDelimiter(&w, '\n') catch |err| switch (err) {
error.EndOfStream => continue,
else => return err,
};
defer _ = w.consumeAll();

const line = buf.constSlice();
defer buf.resize(0) catch unreachable;

switch (try parser.parseLine(arena, line)) {
switch (try parser.parseLine(arena, w.buffered())) {
.start_suite => |suite| {
if (node) |n| n.end();
node = options.progress_node.start(suite, 0);
Expand Down Expand Up @@ -131,8 +127,8 @@ const TapParser = struct {
feed_line,

const Failure = struct {
description: std.ArrayListUnmanaged(u8),
reasons: std.ArrayListUnmanaged([]const u8),
description: std.ArrayList(u8),
reasons: std.ArrayList([]const u8),
};
};

Expand Down
6 changes: 3 additions & 3 deletions build.zig.zon
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
.{
.name = .libgit2,
.version = "1.9.0",
.minimum_zig_version = "0.14.0",
.minimum_zig_version = "0.15.0-dev.1262+e12dc4947",
.fingerprint = 0x7f0051374dea2cba,
.dependencies = .{
.libgit2 = .{
Expand All @@ -14,8 +14,8 @@
.lazy = true,
},
.mbedtls = .{
.url = "git+https://github.com/allyourcodebase/mbedtls#7d862fe61ff2eac37ee54e1e017fc287bed1cd7a",
.hash = "mbedtls-3.6.2-E4NURzYUAABWLBwHJWx_ppb_j2kDSoGfCfR2rI2zs9dz",
.url = "git+https://github.com/dasimmet/mbedtls.git#6f66ef4eee5fece2b9bf676b8d53e13de36f2151",
.hash = "mbedtls-3.6.4-E4NUR8QUAADIsIWJKRmTnmiCKS3bPdbBg2mubW4y7OsH",
.lazy = true,
},
},
Expand Down