diff options
author | snek <snek@deno.com> | 2024-07-31 16:22:34 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-31 23:22:34 +0000 |
commit | f57745fe2106a4d26dd2209e1b2cacb2d6430245 (patch) | |
tree | f3ea0c476940b296ec3cc507adca05088ed947be /ext/node_resolver/resolution.rs | |
parent | fbcd250bc8ffb3b577afca7131d1d37f55eb47a2 (diff) |
feat: upgrade V8 to 12.8 (#24693)
- upgrade to v8 12.8
- optimizes DataView bigint methods
- fixes global interceptors
- includes CPED methods for ALS
- fix global resolution
- makes global resolution consistent using host_defined_options.
originally a separate patch but due to the global interceptor bug it
needs to be included in this pr for all tests to pass.
Diffstat (limited to 'ext/node_resolver/resolution.rs')
-rw-r--r-- | ext/node_resolver/resolution.rs | 24 |
1 files changed, 1 insertions, 23 deletions
diff --git a/ext/node_resolver/resolution.rs b/ext/node_resolver/resolution.rs index 772bc5d34..ae791e312 100644 --- a/ext/node_resolver/resolution.rs +++ b/ext/node_resolver/resolution.rs @@ -1,7 +1,6 @@ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license. use std::borrow::Cow; -use std::collections::HashMap; use std::path::Path; use std::path::PathBuf; @@ -138,38 +137,17 @@ pub type NodeResolverRc<TEnv> = crate::sync::MaybeArc<NodeResolver<TEnv>>; pub struct NodeResolver<TEnv: NodeResolverEnv> { env: TEnv, npm_resolver: NpmResolverRc, - in_npm_package_cache: crate::sync::MaybeArcMutex<HashMap<String, bool>>, } impl<TEnv: NodeResolverEnv> NodeResolver<TEnv> { pub fn new(env: TEnv, npm_resolver: NpmResolverRc) -> Self { - Self { - env, - npm_resolver, - in_npm_package_cache: crate::sync::MaybeArcMutex::new(HashMap::new()), - } + Self { env, npm_resolver } } pub fn in_npm_package(&self, specifier: &Url) -> bool { self.npm_resolver.in_npm_package(specifier) } - pub fn in_npm_package_with_cache(&self, specifier: Cow<str>) -> bool { - let mut cache = self.in_npm_package_cache.lock(); - - if let Some(result) = cache.get(specifier.as_ref()) { - return *result; - } - - let result = if let Ok(specifier) = Url::parse(&specifier) { - self.npm_resolver.in_npm_package(&specifier) - } else { - false - }; - cache.insert(specifier.into_owned(), result); - result - } - /// This function is an implementation of `defaultResolve` in /// `lib/internal/modules/esm/resolve.js` from Node. pub fn resolve( |