1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-21 15:04:11 -05:00

fix(install): Properly handle dist tags when setting up node_modules (#24968)

Fixes https://github.com/denoland/deno/issues/24966.
Fixes https://github.com/denoland/deno/issues/24932.
This commit is contained in:
Nathan Whitaker 2024-08-09 15:35:54 +02:00 committed by GitHub
parent f474c4f4ff
commit 854c7ba198
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 49 additions and 3 deletions

View file

@ -612,12 +612,21 @@ async fn sync_resolution_with_fs(
// 4. Create symlinks for package json dependencies // 4. Create symlinks for package json dependencies
{ {
for remote in pkg_json_deps_provider.remote_pkgs() { for remote in pkg_json_deps_provider.remote_pkgs() {
let Some(remote_id) = snapshot let remote_pkg = if let Ok(remote_pkg) =
snapshot.resolve_pkg_from_pkg_req(&remote.req)
{
remote_pkg
} else if remote.req.version_req.tag().is_some() {
// couldn't find a match, and `resolve_best_package_id`
// panics if you give it a tag
continue;
} else if let Some(remote_id) = snapshot
.resolve_best_package_id(&remote.req.name, &remote.req.version_req) .resolve_best_package_id(&remote.req.name, &remote.req.version_req)
else { {
snapshot.package_from_id(&remote_id).unwrap()
} else {
continue; // skip, package not found continue; // skip, package not found
}; };
let remote_pkg = snapshot.package_from_id(&remote_id).unwrap();
let alias_clashes = remote.req.name != remote.alias let alias_clashes = remote.req.name != remote.alias
&& newest_packages_by_name.contains_key(&remote.alias); && newest_packages_by_name.contains_key(&remote.alias);
let install_in_child = { let install_in_child = {

View file

@ -0,0 +1,12 @@
{
"tempDir": true,
"steps": [
{
"envs": {
"DENO_FUTURE": "1"
},
"args": "install",
"output": "install.out"
}
]
}

View file

@ -0,0 +1,20 @@
[UNORDERED_START]
Download http://localhost:4260/ajv
Download http://localhost:4260/fast-deep-equal
Download http://localhost:4260/json-schema-traverse
Download http://localhost:4260/require-from-string
Download http://localhost:4260/uri-js
Download http://localhost:4260/punycode
Download http://localhost:4260/ajv/ajv-8.11.0.tgz
Download http://localhost:4260/json-schema-traverse/json-schema-traverse-1.0.0.tgz
Download http://localhost:4260/fast-deep-equal/fast-deep-equal-3.1.3.tgz
Download http://localhost:4260/require-from-string/require-from-string-2.0.2.tgz
Download http://localhost:4260/uri-js/uri-js-4.4.1.tgz
Download http://localhost:4260/punycode/punycode-2.1.1.tgz
Initialize require-from-string@2.0.2
Initialize punycode@2.1.1
Initialize fast-deep-equal@3.1.3
Initialize json-schema-traverse@1.0.0
Initialize uri-js@4.4.1
Initialize ajv@8.11.0
[UNORDERED_END]

View file

@ -0,0 +1,5 @@
{
"dependencies": {
"ajv": "latest"
}
}