summaryrefslogtreecommitdiff
path: root/cli/tools
diff options
context:
space:
mode:
authorMarvin Hagemeister <marvin@deno.com>2024-10-16 18:34:33 +0200
committerGitHub <noreply@github.com>2024-10-16 18:34:33 +0200
commite515f3dd0ea61bb3001e98ad7733ccb67c341f1e (patch)
treea7bd015cd0247f08677dca4e76268d90d0fe69c6 /cli/tools
parent06778e4e9b0a856ac39cc01f0813e6076eb150d6 (diff)
fix(add): exact version should not have range `^` specifier (#26302)
Fixes https://github.com/denoland/deno/issues/26299
Diffstat (limited to 'cli/tools')
-rw-r--r--cli/tools/registry/pm.rs14
1 files changed, 10 insertions, 4 deletions
diff --git a/cli/tools/registry/pm.rs b/cli/tools/registry/pm.rs
index f716dd2ca..02731d303 100644
--- a/cli/tools/registry/pm.rs
+++ b/cli/tools/registry/pm.rs
@@ -617,9 +617,11 @@ async fn find_package_and_select_version_for_req(
});
};
let range_symbol = if req.version_req.version_text().starts_with('~') {
- '~'
+ "~"
+ } else if req.version_req.version_text() == nv.version.to_string() {
+ ""
} else {
- '^'
+ "^"
};
Ok(PackageAndVersion::Selected(SelectedPackage {
import_name: add_package_req.alias,
@@ -637,11 +639,15 @@ async fn find_package_and_select_version_for_req(
package_req: req,
});
};
+
let range_symbol = if req.version_req.version_text().starts_with('~') {
- '~'
+ "~"
+ } else if req.version_req.version_text() == nv.version.to_string() {
+ ""
} else {
- '^'
+ "^"
};
+
Ok(PackageAndVersion::Selected(SelectedPackage {
import_name: add_package_req.alias,
package_name: npm_prefixed_name,