mirror of
https://github.com/denoland/deno.git
synced 2025-08-03 18:38:33 +00:00
refactor(npm): use deno_npm and deno_semver (#18602)
This commit is contained in:
parent
1586c52b5b
commit
d07aa4a072
36 changed files with 759 additions and 5852 deletions
|
@ -13,8 +13,10 @@ use deno_core::error::custom_error;
|
|||
use deno_core::error::AnyError;
|
||||
use deno_core::parking_lot::Mutex;
|
||||
use deno_core::url::Url;
|
||||
use deno_graph::npm::NpmPackageNv;
|
||||
use deno_graph::semver::Version;
|
||||
use deno_npm::registry::NpmPackageVersionDistInfo;
|
||||
use deno_npm::NpmPackageCacheFolderId;
|
||||
use deno_semver::npm::NpmPackageNv;
|
||||
use deno_semver::Version;
|
||||
use once_cell::sync::Lazy;
|
||||
|
||||
use crate::args::CacheSetting;
|
||||
|
@ -25,7 +27,6 @@ use crate::util::fs::hard_link_dir_recursive;
|
|||
use crate::util::path::root_url_to_safe_local_dirname;
|
||||
use crate::util::progress_bar::ProgressBar;
|
||||
|
||||
use super::registry::NpmPackageVersionDistInfo;
|
||||
use super::tarball::verify_and_extract_tarball;
|
||||
|
||||
static SHOULD_SYNC_DOWNLOAD: Lazy<bool> =
|
||||
|
@ -112,32 +113,6 @@ pub fn with_folder_sync_lock(
|
|||
}
|
||||
}
|
||||
|
||||
pub struct NpmPackageCacheFolderId {
|
||||
pub nv: NpmPackageNv,
|
||||
/// Peer dependency resolution may require us to have duplicate copies
|
||||
/// of the same package.
|
||||
pub copy_index: usize,
|
||||
}
|
||||
|
||||
impl NpmPackageCacheFolderId {
|
||||
pub fn with_no_count(&self) -> Self {
|
||||
Self {
|
||||
nv: self.nv.clone(),
|
||||
copy_index: 0,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl std::fmt::Display for NpmPackageCacheFolderId {
|
||||
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||
write!(f, "{}", self.nv)?;
|
||||
if self.copy_index > 0 {
|
||||
write!(f, "_{}", self.copy_index)?;
|
||||
}
|
||||
Ok(())
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug)]
|
||||
pub struct ReadonlyNpmCache {
|
||||
root_dir: PathBuf,
|
||||
|
@ -515,8 +490,8 @@ pub fn mixed_case_package_name_decode(name: &str) -> Option<String> {
|
|||
#[cfg(test)]
|
||||
mod test {
|
||||
use deno_core::url::Url;
|
||||
use deno_graph::npm::NpmPackageNv;
|
||||
use deno_graph::semver::Version;
|
||||
use deno_semver::npm::NpmPackageNv;
|
||||
use deno_semver::Version;
|
||||
|
||||
use super::ReadonlyNpmCache;
|
||||
use crate::npm::cache::NpmPackageCacheFolderId;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue