summaryrefslogtreecommitdiff
path: root/cli
diff options
context:
space:
mode:
authorNathan Whitaker <17734409+nathanwhit@users.noreply.github.com>2024-07-24 16:37:13 -0700
committerGitHub <noreply@github.com>2024-07-24 23:37:13 +0000
commit795ed23b356dc044cfb497a6189d588604a6c335 (patch)
treeb1e53bac1b69cab4ff0f3da181426bbf024be457 /cli
parent1fad6eb2acc993714fad9d333f409495f5b3d6db (diff)
fix(future): Emit `deno install` warning less often, suggest `deno install` in error message (#24706)
Two small changes: - In our BYONM errors, suggest running `deno install` instead of `npm install` if `DENO_FUTURE` is set - Only emit warning about `deno install` changes if you do `deno install <foo>` with deno_future unset
Diffstat (limited to 'cli')
-rw-r--r--cli/npm/byonm.rs7
-rw-r--r--cli/resolver.rs9
-rw-r--r--cli/tools/installer.rs8
3 files changed, 17 insertions, 7 deletions
diff --git a/cli/npm/byonm.rs b/cli/npm/byonm.rs
index d10bb6b2a..86c9badac 100644
--- a/cli/npm/byonm.rs
+++ b/cli/npm/byonm.rs
@@ -286,9 +286,14 @@ impl CliNpmResolver for ByonmCliNpmResolver {
concat!(
"Could not find \"{}\" in a node_modules folder. ",
"Deno expects the node_modules/ directory to be up to date. ",
- "Did you forget to run `npm install`?"
+ "Did you forget to run `{}`?"
),
alias,
+ if *crate::args::DENO_FUTURE {
+ "deno install"
+ } else {
+ "npm install"
+ }
);
}
diff --git a/cli/resolver.rs b/cli/resolver.rs
index c1bb8a0a5..c9940b406 100644
--- a/cli/resolver.rs
+++ b/cli/resolver.rs
@@ -233,8 +233,13 @@ impl CliNodeResolver {
let package_json_path = package_folder.join("package.json");
if !self.fs.exists_sync(&package_json_path) {
return Err(anyhow!(
- "Could not find '{}'. Deno expects the node_modules/ directory to be up to date. Did you forget to run `npm install`?",
- package_json_path.display()
+ "Could not find '{}'. Deno expects the node_modules/ directory to be up to date. Did you forget to run `{}`?",
+ package_json_path.display(),
+ if *crate::args::DENO_FUTURE {
+ "deno install"
+ } else {
+ "npm install"
+ },
));
}
}
diff --git a/cli/tools/installer.rs b/cli/tools/installer.rs
index 01ed36711..d1beb79bb 100644
--- a/cli/tools/installer.rs
+++ b/cli/tools/installer.rs
@@ -283,12 +283,12 @@ pub async fn install_command(
flags: Arc<Flags>,
install_flags: InstallFlags,
) -> Result<(), AnyError> {
- if !install_flags.global {
- log::warn!("⚠️ `deno install` behavior will change in Deno 2. To preserve the current behavior use the `-g` or `--global` flag.");
- }
-
match install_flags.kind {
InstallKind::Global(global_flags) => {
+ if !install_flags.global {
+ log::warn!("⚠️ `deno install` behavior will change in Deno 2. To preserve the current behavior use the `-g` or `--global` flag.");
+ }
+
install_global(flags, global_flags).await
}
InstallKind::Local(maybe_add_flags) => {