summaryrefslogtreecommitdiff
path: root/cli/graph_util.rs
diff options
context:
space:
mode:
authorYoshiya Hinosawa <stibium121@gmail.com>2023-10-20 13:02:08 +0900
committerGitHub <noreply@github.com>2023-10-20 13:02:08 +0900
commitfb73eb1e9dca3e93cc7efcf5c2244e0068733843 (patch)
treeef0d50f6a4f3ff14114cc4a5c544bb7f4dfd2cdf /cli/graph_util.rs
parent8d9fef3b8955eadfd4820455b422b5bec1cdad0a (diff)
feat(unstable): allow bare specifier for builtin node module (#20728)
closes #20566
Diffstat (limited to 'cli/graph_util.rs')
-rw-r--r--cli/graph_util.rs16
1 files changed, 11 insertions, 5 deletions
diff --git a/cli/graph_util.rs b/cli/graph_util.rs
index b90581a14..a7c230e17 100644
--- a/cli/graph_util.rs
+++ b/cli/graph_util.rs
@@ -24,6 +24,7 @@ use deno_core::parking_lot::Mutex;
use deno_core::parking_lot::RwLock;
use deno_core::ModuleSpecifier;
use deno_graph::source::Loader;
+use deno_graph::source::ResolveError;
use deno_graph::GraphKind;
use deno_graph::Module;
use deno_graph::ModuleError;
@@ -487,10 +488,14 @@ fn get_resolution_error_bare_specifier(
{
Some(specifier.as_str())
} else if let ResolutionError::ResolverError { error, .. } = error {
- if let Some(ImportMapError::UnmappedBareSpecifier(specifier, _)) =
- error.downcast_ref::<ImportMapError>()
- {
- Some(specifier.as_str())
+ if let ResolveError::Other(error) = (*error).as_ref() {
+ if let Some(ImportMapError::UnmappedBareSpecifier(specifier, _)) =
+ error.downcast_ref::<ImportMapError>()
+ {
+ Some(specifier.as_str())
+ } else {
+ None
+ }
} else {
None
}
@@ -679,6 +684,7 @@ mod test {
use std::sync::Arc;
use deno_ast::ModuleSpecifier;
+ use deno_graph::source::ResolveError;
use deno_graph::Position;
use deno_graph::Range;
use deno_graph::ResolutionError;
@@ -696,7 +702,7 @@ mod test {
let specifier = ModuleSpecifier::parse("file:///file.ts").unwrap();
let err = import_map.resolve(input, &specifier).err().unwrap();
let err = ResolutionError::ResolverError {
- error: Arc::new(err.into()),
+ error: Arc::new(ResolveError::Other(err.into())),
specifier: input.to_string(),
range: Range {
specifier,