diff options
Diffstat (limited to 'cli/args/mod.rs')
-rw-r--r-- | cli/args/mod.rs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/cli/args/mod.rs b/cli/args/mod.rs index 7fcc56c5f..95df047e6 100644 --- a/cli/args/mod.rs +++ b/cli/args/mod.rs @@ -693,6 +693,7 @@ impl CliOptions { maybe_config_file: Option<ConfigFile>, maybe_lockfile: Option<Arc<Mutex<Lockfile>>>, maybe_package_json: Option<PackageJson>, + force_global_cache: bool, ) -> Result<Self, AnyError> { if let Some(insecure_allowlist) = flags.unsafely_ignore_certificate_errors.as_ref() @@ -708,6 +709,7 @@ impl CliOptions { eprintln!("{}", colors::yellow(msg)); } + let maybe_lockfile = maybe_lockfile.filter(|_| !force_global_cache); let maybe_node_modules_folder = resolve_node_modules_folder( &initial_cwd, &flags, @@ -715,8 +717,11 @@ impl CliOptions { maybe_package_json.as_ref(), ) .with_context(|| "Resolving node_modules folder.")?; - let maybe_vendor_folder = - resolve_vendor_folder(&initial_cwd, &flags, maybe_config_file.as_ref()); + let maybe_vendor_folder = if force_global_cache { + None + } else { + resolve_vendor_folder(&initial_cwd, &flags, maybe_config_file.as_ref()) + }; let maybe_workspace_config = if let Some(config_file) = maybe_config_file.as_ref() { config_file.to_workspace_config()? @@ -802,6 +807,7 @@ impl CliOptions { maybe_config_file, maybe_lock_file.map(|l| Arc::new(Mutex::new(l))), maybe_package_json, + false, ) } |