Skip to content

Commit cbb6228

Browse files
committed
update prepare_release_payload.zig script
1 parent 08536bb commit cbb6228

File tree

1 file changed

+19
-9
lines changed

1 file changed

+19
-9
lines changed

.github/workflows/prepare_release_payload.zig

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,19 +12,29 @@ pub fn main() !void {
1212
var arena_allocator: std.heap.ArenaAllocator = .init(std.heap.page_allocator);
1313
const arena = arena_allocator.allocator();
1414

15-
const metadata_source = try std.fs.cwd().readFileAlloc("zig-out/release.json", arena, .limited(std.math.maxInt(u32)));
16-
const artifacts_dir = try std.fs.cwd().openDir("zig-out/artifacts", .{ .iterate = true });
15+
var threaded: std.Io.Threaded = .init_single_threaded;
16+
const io = threaded.ioBasic();
17+
18+
const metadata_source = try std.Io.Dir.cwd().readFileAlloc(io, "zig-out/release.json", arena, .limited(std.math.maxInt(u32)));
19+
const artifacts_dir = try std.Io.Dir.cwd().openDir(io, "zig-out/artifacts", .{ .iterate = true });
1720
const metadata = try std.json.parseFromSliceLeaky(Metadata, arena, metadata_source, .{});
1821

1922
var buffer: [4096]u8 = undefined;
20-
var file_writer = std.fs.File.stdout().writer(&buffer);
21-
try createRequestBody(&file_writer.interface, artifacts_dir, metadata, "full");
23+
var file_writer = std.Io.File.stdout().writer(io, &buffer);
24+
try createRequestBody(
25+
io,
26+
&file_writer.interface,
27+
artifacts_dir,
28+
metadata,
29+
"full",
30+
);
2231
try file_writer.interface.flush();
2332
}
2433

2534
fn createRequestBody(
35+
io: std.Io,
2636
writer: *std.Io.Writer,
27-
artifacts_dir: std.fs.Dir,
37+
artifacts_dir: std.Io.Dir,
2838
metadata: Metadata,
2939
compatibility: []const u8,
3040
) !void {
@@ -58,15 +68,15 @@ fn createRequestBody(
5868
try write_stream.objectField(file_name);
5969
try write_stream.beginObject();
6070

61-
var file = try artifacts_dir.openFile(file_name, .{});
62-
defer file.close();
71+
var file = try artifacts_dir.openFile(io, file_name, .{});
72+
defer file.close(io);
6373

64-
const stat = try file.stat();
74+
const stat = try file.stat(io);
6575

6676
var sha256sum: std.crypto.hash.sha2.Sha256 = .init(.{});
6777
var read_buffer: [16 * 1024]u8 = undefined;
6878
while (true) {
69-
const amt = try file.read(&read_buffer);
79+
const amt = try file.readStreaming(io, &.{&read_buffer});
7080
if (amt == 0) break;
7181
sha256sum.update(read_buffer[0..amt]);
7282
}

0 commit comments

Comments
 (0)