aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Alex Lam S.L <alexlamsl@gmail.com> 2023-04-25 15:13:57 +0300
committerGravatar GitHub <noreply@github.com> 2023-04-25 15:13:57 +0300
commit460563ee8996d721d341f3ae0f704a9e3a1ba38d (patch)
tree50741c62e81069633a3033e8ad8128f48624246c
parent3c4f0920b95cfffc52d13cb0211701ca55211164 (diff)
downloadbun-460563ee8996d721d341f3ae0f704a9e3a1ba38d.tar.gz
bun-460563ee8996d721d341f3ae0f704a9e3a1ba38d.tar.zst
bun-460563ee8996d721d341f3ae0f704a9e3a1ba38d.zip
fix `make setup` (#2731)
- minor clean-ups
-rw-r--r--Makefile2
-rw-r--r--src/install/extract_tarball.zig2
-rw-r--r--src/install/install.zig6
-rw-r--r--src/install/lockfile.zig2
4 files changed, 7 insertions, 5 deletions
diff --git a/Makefile b/Makefile
index d95c1aa03..4331243c0 100644
--- a/Makefile
+++ b/Makefile
@@ -520,7 +520,7 @@ npm-install:
npm-install-dev:
$(NPM_CLIENT) install
- cd test && $(NPM_CLIENT) install --production
+ cd test && $(NPM_CLIENT) install
cd packages/bun-types && $(NPM_CLIENT) install --production
print-% : ; @echo $* = $($*)
diff --git a/src/install/extract_tarball.zig b/src/install/extract_tarball.zig
index 893be19fe..0e5f8e188 100644
--- a/src/install/extract_tarball.zig
+++ b/src/install/extract_tarball.zig
@@ -343,7 +343,7 @@ fn extract(this: *const ExtractTarball, tgz_bytes: []const u8) !Install.ExtractD
};
// create an index storing each version of a package installed
- create_index: {
+ if (std.mem.indexOfScalar(u8, basename, '/') == null) create_index: {
var index_dir = cache_dir.makeOpenPathIterable(name, .{}) catch break :create_index;
defer index_dir.close();
index_dir.dir.symLink(
diff --git a/src/install/install.zig b/src/install/install.zig
index 54131fc2a..51cdedea6 100644
--- a/src/install/install.zig
+++ b/src/install/install.zig
@@ -2469,8 +2469,9 @@ pub const PackageManager = struct {
std.debug.assert(buffers.resolutions.items[dependency_id] == invalid_package_id);
}
buffers.resolutions.items[dependency_id] = package_id;
+ const string_buf = buffers.string_bytes.items;
var dep = &buffers.dependencies.items[dependency_id];
- if (dep.name.isEmpty()) {
+ if (dep.name.isEmpty() or strings.eql(dep.name.slice(string_buf), dep.version.literal.slice(string_buf))) {
dep.name = this.lockfile.packages.items(.name)[package_id];
dep.name_hash = this.lockfile.packages.items(.name_hash)[package_id];
}
@@ -2484,8 +2485,9 @@ pub const PackageManager = struct {
std.debug.assert(buffers.resolutions.items[dependency_id] == invalid_package_id);
}
buffers.resolutions.items[dependency_id] = package_id;
+ const string_buf = buffers.string_bytes.items;
var dep = &buffers.dependencies.items[dependency_id];
- if (dep.name.isEmpty()) {
+ if (dep.name.isEmpty() or strings.eql(dep.name.slice(string_buf), dep.version.literal.slice(string_buf))) {
dep.name = this.lockfile.packages.items(.name)[package_id];
dep.name_hash = this.lockfile.packages.items(.name_hash)[package_id];
}
diff --git a/src/install/lockfile.zig b/src/install/lockfile.zig
index ea1c4fcf8..f2cab5ed9 100644
--- a/src/install/lockfile.zig
+++ b/src/install/lockfile.zig
@@ -1352,7 +1352,7 @@ pub fn verifyResolutions(this: *Lockfile, local_features: Features, remote_featu
remote_features,
)) continue;
if (log_level != .silent) {
- if (failed_dep.name.isEmpty()) {
+ if (failed_dep.name.isEmpty() or strings.eql(failed_dep.name.slice(string_buf), failed_dep.version.literal.slice(string_buf))) {
Output.prettyErrorln(
"<r><red>error<r><d>:<r> <b>{}<r><d> failed to resolve<r>\n",
.{