From 348291f5eccfa19fde67e16bc5d706b5f465da09 Mon Sep 17 00:00:00 2001 From: David Sherret Date: Wed, 24 Aug 2022 13:44:38 -0400 Subject: fix(npm): always require --unstable flag even for esm (#15583) --- cli/npm/mod.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'cli/npm/mod.rs') diff --git a/cli/npm/mod.rs b/cli/npm/mod.rs index 0e5c07914..bdbc5aca3 100644 --- a/cli/npm/mod.rs +++ b/cli/npm/mod.rs @@ -76,6 +76,7 @@ pub struct GlobalNpmPackageResolver { cache: NpmCache, resolution: Arc, registry_url: Url, + unstable: bool, } impl GlobalNpmPackageResolver { @@ -83,11 +84,13 @@ impl GlobalNpmPackageResolver { dir: &DenoDir, reload: bool, cache_setting: CacheSetting, + unstable: bool, ) -> Result { Ok(Self::from_cache( NpmCache::from_deno_dir(dir, cache_setting.clone())?, reload, cache_setting, + unstable, )) } @@ -95,6 +98,7 @@ impl GlobalNpmPackageResolver { cache: NpmCache, reload: bool, cache_setting: CacheSetting, + unstable: bool, ) -> Self { let api = NpmRegistryApi::new(cache.clone(), reload, cache_setting); let registry_url = api.base_url().to_owned(); @@ -104,6 +108,7 @@ impl GlobalNpmPackageResolver { cache, resolution, registry_url, + unstable, } } @@ -117,6 +122,11 @@ impl GlobalNpmPackageResolver { &self, packages: Vec, ) -> Result<(), AnyError> { + if !self.unstable && !packages.is_empty() { + bail!( + "Unstable use of npm specifiers. The --unstable flag must be provided." + ) + } self.resolution.add_package_reqs(packages).await } -- cgit v1.2.3