summaryrefslogtreecommitdiff
path: root/cli/args/mod.rs
diff options
context:
space:
mode:
authorDavid Sherret <dsherret@users.noreply.github.com>2023-02-24 14:23:07 -0500
committerGitHub <noreply@github.com>2023-02-24 19:23:07 +0000
commita27d0885f489f5640e38922fad8c8a1c49ae0aa4 (patch)
tree6bc12ec54ade2b38e79e80a379ad0809d17f559d /cli/args/mod.rs
parent7ad64283a16cb0bfc9671ed482890d005eed9dcc (diff)
feat: add `DENO_NO_PACKAGE_JSON` env var (#17926)
Depends on #17924 Part of #17916
Diffstat (limited to 'cli/args/mod.rs')
-rw-r--r--cli/args/mod.rs15
1 files changed, 10 insertions, 5 deletions
diff --git a/cli/args/mod.rs b/cli/args/mod.rs
index 09de47799..f198301b5 100644
--- a/cli/args/mod.rs
+++ b/cli/args/mod.rs
@@ -568,7 +568,10 @@ impl CliOptions {
let maybe_config_file = ConfigFile::discover(&flags, &initial_cwd)?;
let mut maybe_package_json = None;
- if flags.config_flag == ConfigFlag::Disabled || flags.no_npm {
+ if flags.config_flag == ConfigFlag::Disabled
+ || flags.no_npm
+ || has_flag_env_var("DENO_NO_PACKAGE_JSON")
+ {
log::debug!("package.json auto-discovery is disabled")
} else if let Some(config_file) = &maybe_config_file {
let specifier = config_file.specifier.clone();
@@ -1135,10 +1138,12 @@ fn resolve_files(
/// Resolves the no_prompt value based on the cli flags and environment.
pub fn resolve_no_prompt(flags: &Flags) -> bool {
- flags.no_prompt || {
- let value = env::var("DENO_NO_PROMPT");
- matches!(value.as_ref().map(|s| s.as_str()), Ok("1"))
- }
+ flags.no_prompt || has_flag_env_var("DENO_NO_PROMPT")
+}
+
+fn has_flag_env_var(name: &str) -> bool {
+ let value = env::var(name);
+ matches!(value.as_ref().map(|s| s.as_str()), Ok("1"))
}
#[cfg(test)]