From 5a3d5f5512076d6858a276901b2c3112fbab61eb Mon Sep 17 00:00:00 2001 From: Karl Seguin Date: Wed, 13 Aug 2025 18:17:59 +0800 Subject: [PATCH] improve elapsed display for larger numbers --- src/log.zig | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/log.zig b/src/log.zig index 9ac06d46..f8e9b0fb 100644 --- a/src/log.zig +++ b/src/log.zig @@ -215,7 +215,8 @@ fn logPrettyPrefix(comptime scope: Scope, level: Level, comptime msg: []const u8 if (@mod(padding, 2) == 1) { try writer.writeByte(' '); } - try writer.print(" \x1b[0m[+{d}ms]", .{elapsed()}); + const el = elapsed(); + try writer.print(" \x1b[0m[+{d}{s}]", .{ el.time, el.unit }); try writer.writeByte('\n'); } } @@ -321,7 +322,7 @@ fn timestamp() i64 { } var first_log: i64 = 0; -fn elapsed() i64 { +fn elapsed() struct { time: f64, unit: []const u8 } { const now = timestamp(); last_log_lock.lock(); @@ -331,7 +332,11 @@ fn elapsed() i64 { first_log = now; } - return now - first_log; + const e = now - first_log; + if (e < 10_000) { + return .{ .time = @floatFromInt(e), .unit = "ms" }; + } + return .{ .time = @as(f64, @floatFromInt(e)) / @as(f64, 1000), .unit = "s" }; } const testing = @import("testing.zig");