diff options
Diffstat (limited to 'src/resolver/package_json.zig')
-rw-r--r-- | src/resolver/package_json.zig | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/resolver/package_json.zig b/src/resolver/package_json.zig index 165da7b53..7b1442898 100644 --- a/src/resolver/package_json.zig +++ b/src/resolver/package_json.zig @@ -833,7 +833,15 @@ pub const PackageJSON = struct { if (tag == .npm) { const sliced = Semver.SlicedString.init(package_json.version, package_json.version); - if (Dependency.parseWithTag(allocator, String.init(package_json.name, package_json.name), package_json.version, .npm, &sliced, r.log)) |dependency_version| { + if (Dependency.parseWithTag( + allocator, + String.init(package_json.name, package_json.name), + String.Builder.stringHash(package_json.name), + package_json.version, + .npm, + &sliced, + r.log, + )) |dependency_version| { if (dependency_version.value.npm.version.isExact()) { if (pm.lockfile.resolve(package_json.name, dependency_version)) |resolved| { package_json.package_manager_package_id = resolved; @@ -945,6 +953,7 @@ pub const PackageJSON = struct { for (group_obj.properties.slice()) |*prop| { const name_prop = prop.key orelse continue; const name_str = name_prop.asString(allocator) orelse continue; + const name_hash = String.Builder.stringHash(name_str); const name = String.init(name_str, name_str); const version_value = prop.value orelse continue; const version_str = version_value.asString(allocator) orelse continue; @@ -953,6 +962,7 @@ pub const PackageJSON = struct { if (Dependency.parse( allocator, name, + name_hash, version_str, &sliced_str, r.log, @@ -960,7 +970,7 @@ pub const PackageJSON = struct { const dependency = Dependency{ .name = name, .version = dependency_version, - .name_hash = String.Builder.stringHash(name_str), + .name_hash = name_hash, .behavior = group.behavior, }; package_json.dependencies.map.putAssumeCapacityContext( |