From bcfe279fba865763c87f9cd8d5a2d0b2cbf451be Mon Sep 17 00:00:00 2001 From: David Sherret Date: Fri, 21 Oct 2022 11:20:18 -0400 Subject: feat(unstable/npm): initial type checking of npm specifiers (#16332) --- cli/npm/cache.rs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'cli/npm/cache.rs') diff --git a/cli/npm/cache.rs b/cli/npm/cache.rs index 77ecf1228..6a0d72b3a 100644 --- a/cli/npm/cache.rs +++ b/cli/npm/cache.rs @@ -160,13 +160,14 @@ impl ReadonlyNpmCache { .take(if is_scoped_package { 3 } else { 2 }) .map(|(_, part)| part) .collect::>(); + if parts.len() < 2 { + return None; + } let version = parts.pop().unwrap(); let name = parts.join("/"); - - Some(NpmPackageId { - name, - version: NpmVersion::parse(version).unwrap(), - }) + NpmVersion::parse(version) + .ok() + .map(|version| NpmPackageId { name, version }) } pub fn get_cache_location(&self) -> PathBuf { -- cgit v1.2.3