diff options
author | David Sherret <dsherret@users.noreply.github.com> | 2023-04-14 16:22:33 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-14 16:22:33 -0400 |
commit | 136dce67cec749dce5989ea29e88359ef79a0045 (patch) | |
tree | 38e96bbbf22dc06cdba418a35467b215f1335549 /cli/npm/registry.rs | |
parent | a4111442191fff300132259752e6d2d5613d1871 (diff) |
refactor: break up `ProcState` (#18707)
1. Breaks up functionality within `ProcState` into several other structs
to break out the responsibilities (`ProcState` is only a data struct
now).
2. Moves towards being able to inject dependencies more easily and have
functionality only require what it needs.
3. Exposes `Arc<T>` around the "service structs" instead of it being
embedded within them. The idea behind embedding them was to reduce the
verbosity of needing to pass around `Arc<...>`, but I don't think it was
exactly working and as we move more of these structs to be more
injectable I don't think the extra verbosity will be a big deal.
Diffstat (limited to 'cli/npm/registry.rs')
-rw-r--r-- | cli/npm/registry.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/cli/npm/registry.rs b/cli/npm/registry.rs index 798cb17dd..ef050a734 100644 --- a/cli/npm/registry.rs +++ b/cli/npm/registry.rs @@ -52,7 +52,7 @@ static NPM_REGISTRY_DEFAULT_URL: Lazy<Url> = Lazy::new(|| { Url::parse("https://registry.npmjs.org").unwrap() }); -#[derive(Clone, Debug)] +#[derive(Debug)] pub struct CliNpmRegistryApi(Option<Arc<CliNpmRegistryApiInner>>); impl CliNpmRegistryApi { @@ -62,7 +62,7 @@ impl CliNpmRegistryApi { pub fn new( base_url: Url, - cache: NpmCache, + cache: Arc<NpmCache>, http_client: HttpClient, progress_bar: ProgressBar, ) -> Self { @@ -168,7 +168,7 @@ enum CacheItem { #[derive(Debug)] struct CliNpmRegistryApiInner { base_url: Url, - cache: NpmCache, + cache: Arc<NpmCache>, force_reload_flag: AtomicFlag, mem_cache: Mutex<HashMap<String, CacheItem>>, previously_reloaded_packages: Mutex<HashSet<String>>, |