From 556012320ecf546aaf5f7ac84d75c29593af758e Mon Sep 17 00:00:00 2001 From: Nayeem Rahman Date: Thu, 30 May 2024 04:16:15 +0100 Subject: feat(lsp): support .npmrc (#24042) Closes #24040 --- cli/args/mod.rs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'cli/args') diff --git a/cli/args/mod.rs b/cli/args/mod.rs index 5bdecca9b..fe9c27928 100644 --- a/cli/args/mod.rs +++ b/cli/args/mod.rs @@ -554,12 +554,12 @@ fn discover_package_json( /// /// In the future we will need to support it in user directory or global directory /// as per https://docs.npmjs.com/cli/v10/configuring-npm/npmrc#files. -fn discover_npmrc( +pub fn discover_npmrc( maybe_package_json_path: Option, maybe_deno_json_path: Option, -) -> Result, AnyError> { +) -> Result<(Arc, Option), AnyError> { if !*DENO_FUTURE { - return Ok(create_default_npmrc()); + return Ok((create_default_npmrc(), None)); } const NPMRC_NAME: &str = ".npmrc"; @@ -599,7 +599,7 @@ fn discover_npmrc( if let Some(package_json_path) = maybe_package_json_path { if let Some(package_json_dir) = package_json_path.parent() { if let Some((source, path)) = try_to_read_npmrc(package_json_dir)? { - return try_to_parse_npmrc(source, &path); + return try_to_parse_npmrc(source, &path).map(|r| (r, Some(path))); } } } @@ -607,13 +607,13 @@ fn discover_npmrc( if let Some(deno_json_path) = maybe_deno_json_path { if let Some(deno_json_dir) = deno_json_path.parent() { if let Some((source, path)) = try_to_read_npmrc(deno_json_dir)? { - return try_to_parse_npmrc(source, &path); + return try_to_parse_npmrc(source, &path).map(|r| (r, Some(path))); } } } log::debug!("No .npmrc file found"); - Ok(create_default_npmrc()) + Ok((create_default_npmrc(), None)) } pub fn create_default_npmrc() -> Arc { @@ -938,7 +938,7 @@ impl CliOptions { } else { maybe_package_json = discover_package_json(&flags, None, &initial_cwd)?; } - let npmrc = discover_npmrc( + let (npmrc, _) = discover_npmrc( maybe_package_json.as_ref().map(|p| p.path.clone()), maybe_config_file.as_ref().and_then(|cf| { if cf.specifier.scheme() == "file" { -- cgit v1.2.3