From c7823c7566d24f8ef74531062f5cddce7695c937 Mon Sep 17 00:00:00 2001 From: Nyannyacha Date: Wed, 1 Oct 2025 08:21:07 +0000 Subject: [PATCH] fix(deno): builder must detect `DENO_NO_PACKAGE_JSON` --- deno/lib.rs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/deno/lib.rs b/deno/lib.rs index d2e1579a8..d1ef3baee 100644 --- a/deno/lib.rs +++ b/deno/lib.rs @@ -1,4 +1,5 @@ use std::collections::HashMap; +use std::env; use std::path::Path; use std::path::PathBuf; use std::sync::Arc; @@ -243,7 +244,9 @@ impl DenoOptions { }); let config_parse_options = deno_config::deno_json::ConfigParseOptions::default(); - let discover_pkg_json = config != ConfigMode::Disabled && !no_npm; + let discover_pkg_json = config != ConfigMode::Disabled + && !no_npm + && !has_flag_env_var("DENO_NO_PACKAGE_JSON"); if !discover_pkg_json { log::debug!("package.json auto-discovery is disabled"); } @@ -541,3 +544,8 @@ impl DenoOptionsBuilder { DenoOptions::from_builder(self) } } + +pub fn has_flag_env_var(name: &str) -> bool { + let value = env::var(name); + matches!(value.as_ref().map(|s| s.as_str()), Ok("1")) +}