authorgravatar for squeek502@hotmail.comRyan Liptak <squeek502@hotmail.com> 2026-10-23 16:31:25-07:00
committergravatar for squeek502@hotmail.comRyan Liptak <squeek502@hotmail.com> 2026-10-23 17:15:17-07:00
logb9f95fc512b7638408c854936edcb4288f363f38
treed0377c25670f1332b8715ec24bbe5bf28cf67311
parentfb255db0adc7fb39f4d33738fcf3c5831a1a7649

Maker: Add generated dependencies.zig as an input to the config cache manifest

Without this, Maker could enter an infinite loop when a step required some lazy dependencies that were unavailable, and then after the fetch that made them available, the config would get a cache hit so the step would still be configured as needing lazy dependencies, and so on. Now, any change to the generated dependencies.zig file will cause the configuration phase to be re-run.

1 files changed, 4 insertions(+), 0 deletions(-)

lib/compiler/Maker.zig+4
...@@ -1485,6 +1485,10 @@ fn configure(graph: *Graph, options: ConfigureOptions) ConfigureError!ScannedCon...@@ -1485,6 +1485,10 @@ fn configure(graph: *Graph, options: ConfigureOptions) ConfigureError!ScannedCon
1485 fatal("replacing {f}: {t}", .{ dependencies_zig_path, err });1485 fatal("replacing {f}: {t}", .{ dependencies_zig_path, err });
14861486
1487 deps_mod.root_path = try dependencies_zig_path.toString(arena);1487 deps_mod.root_path = try dependencies_zig_path.toString(arena);
1488
1489 if (config_man) |man| {
1490 man.hash.addBytes(&hex_digest);
1491 }
1488 }1492 }
14891493
1490 {1494 {