summaryrefslogtreecommitdiff
path: root/cli/npm/managed
diff options
context:
space:
mode:
Diffstat (limited to 'cli/npm/managed')
-rw-r--r--cli/npm/managed/resolvers/common/lifecycle_scripts.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/cli/npm/managed/resolvers/common/lifecycle_scripts.rs b/cli/npm/managed/resolvers/common/lifecycle_scripts.rs
index 35040386c..f700d4bf9 100644
--- a/cli/npm/managed/resolvers/common/lifecycle_scripts.rs
+++ b/cli/npm/managed/resolvers/common/lifecycle_scripts.rs
@@ -4,6 +4,7 @@ use super::bin_entries::BinEntries;
use crate::args::LifecycleScriptsConfig;
use deno_npm::resolution::NpmResolutionSnapshot;
use deno_semver::package::PackageNv;
+use deno_semver::Version;
use std::borrow::Cow;
use std::rc::Rc;
@@ -113,6 +114,17 @@ impl<'a> LifecycleScripts<'a> {
} else if !self.strategy.has_run(package)
&& (self.config.explicit_install || !self.strategy.has_warned(package))
{
+ // Skip adding `esbuild` as it is known that it can work properly without lifecycle script
+ // being run, and it's also very popular - any project using Vite would raise warnings.
+ {
+ let nv = &package.id.nv;
+ if nv.name == "esbuild"
+ && nv.version >= Version::parse_standard("0.18.0").unwrap()
+ {
+ return;
+ }
+ }
+
self
.packages_with_scripts_not_run
.push((package, package_path.into_owned()));