authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2023-01-11 17:06:10-08:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2023-01-11 17:06:10-08:00
log2de08633800cd458fa657afed25a821236520cd8
treeaff2e1299341e6705cf1cd1bd93bccad15c51725
parent741445ce298df5136553802f2681ca8dc5ad596f

use local cache dir for dependencies-listing package


2 files changed, 6 insertions(+), 6 deletions(-)

src/Package.zig+5-5
...@@ -249,14 +249,14 @@ pub fn fetchAndAddDependencies(...@@ -249,14 +249,14 @@ pub fn fetchAndAddDependencies(
249249
250pub fn createFilePkg(250pub fn createFilePkg(
251 gpa: Allocator,251 gpa: Allocator,
252 global_cache_directory: Compilation.Directory,252 cache_directory: Compilation.Directory,
253 basename: []const u8,253 basename: []const u8,
254 contents: []const u8,254 contents: []const u8,
255) !*Package {255) !*Package {
256 const rand_int = std.crypto.random.int(u64);256 const rand_int = std.crypto.random.int(u64);
257 const tmp_dir_sub_path = "tmp" ++ fs.path.sep_str ++ hex64(rand_int);257 const tmp_dir_sub_path = "tmp" ++ fs.path.sep_str ++ hex64(rand_int);
258 {258 {
259 var tmp_dir = try global_cache_directory.handle.makeOpenPath(tmp_dir_sub_path, .{});259 var tmp_dir = try cache_directory.handle.makeOpenPath(tmp_dir_sub_path, .{});
260 defer tmp_dir.close();260 defer tmp_dir.close();
261 try tmp_dir.writeFile(basename, contents);261 try tmp_dir.writeFile(basename, contents);
262 }262 }
...@@ -267,9 +267,9 @@ pub fn createFilePkg(...@@ -267,9 +267,9 @@ pub fn createFilePkg(
267 const hex_digest = hh.final();267 const hex_digest = hh.final();
268268
269 const o_dir_sub_path = "o" ++ fs.path.sep_str ++ hex_digest;269 const o_dir_sub_path = "o" ++ fs.path.sep_str ++ hex_digest;
270 try renameTmpIntoCache(global_cache_directory.handle, tmp_dir_sub_path, o_dir_sub_path);270 try renameTmpIntoCache(cache_directory.handle, tmp_dir_sub_path, o_dir_sub_path);
271271
272 return createWithDir(gpa, global_cache_directory, o_dir_sub_path, basename);272 return createWithDir(gpa, cache_directory, o_dir_sub_path, basename);
273}273}
274274
275fn fetchAndUnpack(275fn fetchAndUnpack(
...@@ -558,7 +558,7 @@ fn renameTmpIntoCache(...@@ -558,7 +558,7 @@ fn renameTmpIntoCache(
558 tmp_dir_sub_path: []const u8,558 tmp_dir_sub_path: []const u8,
559 dest_dir_sub_path: []const u8,559 dest_dir_sub_path: []const u8,
560) !void {560) !void {
561 assert(dest_dir_sub_path[1] == '/');561 assert(dest_dir_sub_path[1] == fs.path.sep);
562 var handled_missing_dir = false;562 var handled_missing_dir = false;
563 while (true) {563 while (true) {
564 cache_dir.rename(tmp_dir_sub_path, dest_dir_sub_path) catch |err| switch (err) {564 cache_dir.rename(tmp_dir_sub_path, dest_dir_sub_path) catch |err| switch (err) {
src/main.zig+1-1
...@@ -4116,7 +4116,7 @@ pub fn cmdBuild(gpa: Allocator, arena: Allocator, args: []const []const u8) !voi...@@ -4116,7 +4116,7 @@ pub fn cmdBuild(gpa: Allocator, arena: Allocator, args: []const []const u8) !voi
41164116
4117 const deps_pkg = try Package.createFilePkg(4117 const deps_pkg = try Package.createFilePkg(
4118 gpa,4118 gpa,
4119 global_cache_directory,4119 local_cache_directory,
4120 "dependencies.zig",4120 "dependencies.zig",
4121 dependencies_source.items,4121 dependencies_source.items,
4122 );4122 );