mod: bump zig version to 0.16
Zig Project Action / Lint, Spell-check and test zig project (push) Failing after 13m45s

This commit is contained in:
2026-06-03 18:03:32 +02:00
parent b3c8a3ab1c
commit 5c88e2b0f8
+17 -15
View File
@@ -1,11 +1,15 @@
/// *zlog* defaultLog function replacement, which adjusts the surrounding contents of every `std.log` message. /// *zlog* defaultLog function replacement, which adjusts the surrounding contents of every `std.log` message.
fn logFn( fn logFn(
comptime message_level: log.Level, comptime message_level: log.Level,
comptime scope: @Type(.enum_literal), comptime scope: @EnumLiteral(),
comptime format: []const u8, comptime format: []const u8,
args: anytype, args: anytype,
) void { ) void {
var buf: [128]u8 = undefined; var buf: [128]u8 = undefined;
const io = std.Options.debug_io;
const prev = io.swapCancelProtection(.blocked);
defer _ = io.swapCancelProtection(prev);
if (comptime build_options.file.len > 0) { if (comptime build_options.file.len > 0) {
const prefix = if (scope == .default) " " else "(" ++ @tagName(scope) ++ ") "; const prefix = if (scope == .default) " " else "(" ++ @tagName(scope) ++ ") ";
const level_txt = switch (comptime message_level) { const level_txt = switch (comptime message_level) {
@@ -25,12 +29,12 @@ fn logFn(
}, 0o600) catch @panic("Could not append to log file"); }, 0o600) catch @panic("Could not append to log file");
defer std.posix.close(fd); defer std.posix.close(fd);
var file: fs.File = .{ .handle = fd }; var file: Io.File = .{ .handle = fd };
var buffer = file.writer(&buf); var buffer = file.writer(io, &buf);
var writer = &buffer.interface; var writer = &buffer.interface;
defer writer.flush() catch unreachable; defer writer.flush() catch unreachable;
log_writing(writer, complete_format, false, args); log_writing(io, writer, complete_format, false, args);
} }
if (comptime build_options.stderr) { if (comptime build_options.stderr) {
@@ -43,20 +47,17 @@ fn logFn(
}; };
const complete_format = level_txt ++ prefix ++ format ++ "\n"; const complete_format = level_txt ++ prefix ++ format ++ "\n";
std.debug.lockStdErr(); var buffer = Io.File.stderr().writer(io, &buf);
defer std.debug.unlockStdErr();
var buffer = fs.File.stderr().writer(&buf);
var writer = &buffer.interface; var writer = &buffer.interface;
defer writer.flush() catch unreachable; defer writer.flush() catch unreachable;
log_writing(writer, complete_format, true, args); log_writing(io, writer, complete_format, true, args);
} }
} }
inline fn log_writing(writer: *std.Io.Writer, comptime format: []const u8, comptime ansi: bool, args: anytype) void { inline fn log_writing(io: std.Io, writer: *std.Io.Writer, comptime format: []const u8, comptime ansi: bool, args: anytype) void {
nosuspend { nosuspend {
if (build_options.timestamp) log_timestamp(writer, ansi); if (build_options.timestamp) log_timestamp(io, writer, ansi);
writer.print(format, args) catch return; writer.print(format, args) catch return;
} }
} }
@@ -65,9 +66,10 @@ inline fn log_writing(writer: *std.Io.Writer, comptime format: []const u8, compt
/// `<year>/<month>/<day> <hour>:<minute>:<sec> ` /// `<year>/<month>/<day> <hour>:<minute>:<sec> `
/// ///
/// NOTE all information are displayed using numbers /// NOTE all information are displayed using numbers
inline fn log_timestamp(writer: anytype, comptime ansi: bool) void { /// NOTE the timestamp is printed in UTC time regardless of the machine's configuration
const time = std.posix.clock_gettime(.REALTIME) catch @panic("Cannot request timestamp"); inline fn log_timestamp(io: std.Io, writer: anytype, comptime ansi: bool) void {
const epoch_secs: std.time.epoch.EpochSeconds = .{ .secs = @intCast(time.sec) }; const time_ms: u64 = @intCast(std.Io.Timestamp.now(io, .real).toMilliseconds());
const epoch_secs: std.time.epoch.EpochSeconds = .{ .secs = @intCast(time_ms / std.time.ms_per_s) };
const day_secs = epoch_secs.getDaySeconds(); const day_secs = epoch_secs.getDaySeconds();
const year_and_day = epoch_secs.getEpochDay().calculateYearDay(); const year_and_day = epoch_secs.getEpochDay().calculateYearDay();
const month_and_day = year_and_day.calculateMonthDay(); const month_and_day = year_and_day.calculateMonthDay();
@@ -222,7 +224,7 @@ pub const std_options: std.Options = .{
}; };
const std = @import("std"); const std = @import("std");
const fs = std.fs; const Io = std.Io;
const log = std.log; const log = std.log;
const fmt = std.fmt; const fmt = std.fmt;
const build_options = @import("build_options"); const build_options = @import("build_options");