diff options
author | David Sherret <dsherret@users.noreply.github.com> | 2024-04-27 17:11:57 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-27 21:11:57 +0000 |
commit | 651e3e9e6daf3243dd21b7f66ce9738abdc39a37 (patch) | |
tree | 0417415c1a5fa79d0ae5d8f0f75561138275e34e /cli/standalone/mod.rs | |
parent | e0f849289fdb2c2d86f7fb04182c37012ce2bb69 (diff) |
fix(compile): certain jsr specifiers sometimes can't load (#23567)
When returning a jsr specifier for resolve it seems like deno core does
not work properly and hangs.
Closes https://github.com/denoland/deno/issues/23551
Closes https://github.com/denoland/deno/issues/23139
Diffstat (limited to 'cli/standalone/mod.rs')
-rw-r--r-- | cli/standalone/mod.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/cli/standalone/mod.rs b/cli/standalone/mod.rs index 8ff822f5a..3cfeb4f4c 100644 --- a/cli/standalone/mod.rs +++ b/cli/standalone/mod.rs @@ -150,6 +150,13 @@ impl ModuleLoader for EmbeddedModuleLoader { Some(resolved) => resolved, None => deno_core::resolve_import(specifier, referrer.as_str())?, }; + + if specifier.scheme() == "jsr" { + if let Some(module) = self.shared.eszip.get_module(specifier.as_str()) { + return Ok(ModuleSpecifier::parse(&module.specifier).unwrap()); + } + } + self .shared .node_resolver |