diff options
Diffstat (limited to 'cli/npm/managed/resolvers')
-rw-r--r-- | cli/npm/managed/resolvers/common.rs | 11 | ||||
-rw-r--r-- | cli/npm/managed/resolvers/global.rs | 51 | ||||
-rw-r--r-- | cli/npm/managed/resolvers/local.rs | 36 | ||||
-rw-r--r-- | cli/npm/managed/resolvers/mod.rs | 4 |
4 files changed, 25 insertions, 77 deletions
diff --git a/cli/npm/managed/resolvers/common.rs b/cli/npm/managed/resolvers/common.rs index a326b562b..b010bdd7c 100644 --- a/cli/npm/managed/resolvers/common.rs +++ b/cli/npm/managed/resolvers/common.rs @@ -44,11 +44,6 @@ pub trait NpmPackageFsResolver: Send + Sync { mode: NodeResolutionMode, ) -> Result<PathBuf, AnyError>; - fn resolve_package_folder_from_specifier( - &self, - specifier: &ModuleSpecifier, - ) -> Result<Option<PathBuf>, AnyError>; - fn resolve_package_cache_folder_id_from_specifier( &self, specifier: &ModuleSpecifier, @@ -132,16 +127,12 @@ impl RegistryReadPermissionChecker { pub async fn cache_packages( packages: Vec<NpmResolutionPackage>, cache: &Arc<NpmCache>, - registry_url: &Url, ) -> Result<(), AnyError> { let mut handles = Vec::with_capacity(packages.len()); for package in packages { let cache = cache.clone(); - let registry_url = registry_url.clone(); let handle = spawn(async move { - cache - .ensure_package(&package.id.nv, &package.dist, ®istry_url) - .await + cache.ensure_package(&package.id.nv, &package.dist).await }); handles.push(handle); } diff --git a/cli/npm/managed/resolvers/global.rs b/cli/npm/managed/resolvers/global.rs index 4b3c9d613..cfc57e591 100644 --- a/cli/npm/managed/resolvers/global.rs +++ b/cli/npm/managed/resolvers/global.rs @@ -32,7 +32,6 @@ use super::common::RegistryReadPermissionChecker; pub struct GlobalNpmPackageResolver { cache: Arc<NpmCache>, resolution: Arc<NpmResolution>, - registry_url: Url, system_info: NpmSystemInfo, registry_read_permission_checker: RegistryReadPermissionChecker, } @@ -41,18 +40,16 @@ impl GlobalNpmPackageResolver { pub fn new( fs: Arc<dyn FileSystem>, cache: Arc<NpmCache>, - registry_url: Url, resolution: Arc<NpmResolution>, system_info: NpmSystemInfo, ) -> Self { Self { cache: cache.clone(), resolution, - registry_url: registry_url.clone(), system_info, registry_read_permission_checker: RegistryReadPermissionChecker::new( fs, - cache.registry_folder(®istry_url), + cache.root_folder(), ), } } @@ -84,11 +81,7 @@ impl NpmPackageFsResolver for GlobalNpmPackageResolver { .resolution .resolve_pkg_cache_folder_id_from_pkg_id(id) .unwrap(); - Ok( - self - .cache - .package_folder_for_id(&folder_id, &self.registry_url), - ) + Ok(self.cache.package_folder_for_id(&folder_id)) } fn resolve_package_folder_from_package( @@ -99,7 +92,7 @@ impl NpmPackageFsResolver for GlobalNpmPackageResolver { ) -> Result<PathBuf, AnyError> { let Some(referrer_pkg_id) = self .cache - .resolve_package_folder_id_from_specifier(referrer, &self.registry_url) + .resolve_package_folder_id_from_specifier(referrer) else { bail!("could not find npm package for '{}'", referrer); }; @@ -119,32 +112,14 @@ impl NpmPackageFsResolver for GlobalNpmPackageResolver { self.package_folder(&pkg.id) } - fn resolve_package_folder_from_specifier( - &self, - specifier: &ModuleSpecifier, - ) -> Result<Option<PathBuf>, AnyError> { - let Some(pkg_folder_id) = self - .cache - .resolve_package_folder_id_from_specifier(specifier, &self.registry_url) - else { - return Ok(None); - }; - Ok(Some( - self - .cache - .package_folder_for_id(&pkg_folder_id, &self.registry_url), - )) - } - fn resolve_package_cache_folder_id_from_specifier( &self, specifier: &ModuleSpecifier, ) -> Result<Option<NpmPackageCacheFolderId>, AnyError> { Ok( - self.cache.resolve_package_folder_id_from_specifier( - specifier, - &self.registry_url, - ), + self + .cache + .resolve_package_folder_id_from_specifier(specifier), ) } @@ -153,19 +128,13 @@ impl NpmPackageFsResolver for GlobalNpmPackageResolver { .resolution .all_system_packages_partitioned(&self.system_info); - cache_packages( - package_partitions.packages, - &self.cache, - &self.registry_url, - ) - .await?; + cache_packages(package_partitions.packages, &self.cache).await?; // create the copy package folders for copy in package_partitions.copy_packages { - self.cache.ensure_copy_package( - ©.get_package_cache_folder_id(), - &self.registry_url, - )?; + self + .cache + .ensure_copy_package(©.get_package_cache_folder_id())?; } Ok(()) diff --git a/cli/npm/managed/resolvers/local.rs b/cli/npm/managed/resolvers/local.rs index f8d69d148..9d0ca3f8c 100644 --- a/cli/npm/managed/resolvers/local.rs +++ b/cli/npm/managed/resolvers/local.rs @@ -58,7 +58,6 @@ pub struct LocalNpmPackageResolver { cache: Arc<NpmCache>, progress_bar: ProgressBar, resolution: Arc<NpmResolution>, - registry_url: Url, root_node_modules_path: PathBuf, root_node_modules_url: Url, system_info: NpmSystemInfo, @@ -70,7 +69,6 @@ impl LocalNpmPackageResolver { fs: Arc<dyn deno_fs::FileSystem>, cache: Arc<NpmCache>, progress_bar: ProgressBar, - registry_url: Url, node_modules_folder: PathBuf, resolution: Arc<NpmResolution>, system_info: NpmSystemInfo, @@ -80,7 +78,6 @@ impl LocalNpmPackageResolver { cache, progress_bar, resolution, - registry_url, root_node_modules_url: Url::from_directory_path(&node_modules_folder) .unwrap(), root_node_modules_path: node_modules_folder.clone(), @@ -126,6 +123,17 @@ impl LocalNpmPackageResolver { .map(Some) .map_err(|err| err.into()) } + + fn resolve_package_folder_from_specifier( + &self, + specifier: &ModuleSpecifier, + ) -> Result<Option<PathBuf>, AnyError> { + let Some(local_path) = self.resolve_folder_for_specifier(specifier)? else { + return Ok(None); + }; + let package_root_path = self.resolve_package_root(&local_path); + Ok(Some(package_root_path)) + } } #[async_trait] @@ -202,17 +210,6 @@ impl NpmPackageFsResolver for LocalNpmPackageResolver { ); } - fn resolve_package_folder_from_specifier( - &self, - specifier: &ModuleSpecifier, - ) -> Result<Option<PathBuf>, AnyError> { - let Some(local_path) = self.resolve_folder_for_specifier(specifier)? else { - return Ok(None); - }; - let package_root_path = self.resolve_package_root(&local_path); - Ok(Some(package_root_path)) - } - fn resolve_package_cache_folder_id_from_specifier( &self, specifier: &ModuleSpecifier, @@ -231,7 +228,6 @@ impl NpmPackageFsResolver for LocalNpmPackageResolver { &self.resolution.snapshot(), &self.cache, &self.progress_bar, - &self.registry_url, &self.root_node_modules_path, &self.system_info, ) @@ -254,7 +250,6 @@ async fn sync_resolution_with_fs( snapshot: &NpmResolutionSnapshot, cache: &Arc<NpmCache>, progress_bar: &ProgressBar, - registry_url: &Url, root_node_modules_dir_path: &Path, system_info: &NpmSystemInfo, ) -> Result<(), AnyError> { @@ -317,12 +312,9 @@ async fn sync_resolution_with_fs( let pb = progress_bar.clone(); let cache = cache.clone(); - let registry_url = registry_url.clone(); let package = package.clone(); let handle = spawn(async move { - cache - .ensure_package(&package.id.nv, &package.dist, ®istry_url) - .await?; + cache.ensure_package(&package.id.nv, &package.dist).await?; let pb_guard = pb.update_with_prompt( ProgressMessagePrompt::Initialize, &package.id.nv.to_string(), @@ -332,8 +324,8 @@ async fn sync_resolution_with_fs( join_package_name(&sub_node_modules, &package.id.nv.name); fs::create_dir_all(&package_path) .with_context(|| format!("Creating '{}'", folder_path.display()))?; - let cache_folder = cache - .package_folder_for_name_and_version(&package.id.nv, ®istry_url); + let cache_folder = + cache.package_folder_for_name_and_version(&package.id.nv); if hard_link_dir_recursive(&cache_folder, &package_path).is_err() { // Fallback to copying the directory. // diff --git a/cli/npm/managed/resolvers/mod.rs b/cli/npm/managed/resolvers/mod.rs index dfd291afc..d5472344a 100644 --- a/cli/npm/managed/resolvers/mod.rs +++ b/cli/npm/managed/resolvers/mod.rs @@ -7,7 +7,6 @@ mod local; use std::path::PathBuf; use std::sync::Arc; -use deno_core::url::Url; use deno_npm::NpmSystemInfo; use deno_runtime::deno_fs::FileSystem; @@ -25,7 +24,6 @@ pub fn create_npm_fs_resolver( fs: Arc<dyn FileSystem>, cache: Arc<NpmCache>, progress_bar: &ProgressBar, - registry_url: Url, resolution: Arc<NpmResolution>, maybe_node_modules_path: Option<PathBuf>, system_info: NpmSystemInfo, @@ -35,7 +33,6 @@ pub fn create_npm_fs_resolver( fs, cache, progress_bar.clone(), - registry_url, node_modules_folder, resolution, system_info, @@ -43,7 +40,6 @@ pub fn create_npm_fs_resolver( None => Arc::new(GlobalNpmPackageResolver::new( fs, cache, - registry_url, resolution, system_info, )), |