From 75209e12f19ca5d4a2a7c9008fba63a487ad8e6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartek=20Iwa=C5=84czuk?= Date: Wed, 15 Feb 2023 19:44:52 +0100 Subject: feat: wire up ext/node to the Node compatibility layer (#17785) This PR changes Node.js/npm compatibility layer to use polyfills for built-in Node.js embedded in the snapshot (that are coming from "ext/node" extension). As a result loading `std/node`, either from "https://deno.land/std@/" or from "DENO_NODE_COMPAT_URL" env variable were removed. All code that is imported via "npm:" specifiers now uses code embedded in the snapshot. Several fixes were applied to various modules in "ext/node" to make tests pass. --------- Co-authored-by: Yoshiya Hinosawa Co-authored-by: Divy Srivastava --- cli/module_loader.rs | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'cli/module_loader.rs') diff --git a/cli/module_loader.rs b/cli/module_loader.rs index b61b4304e..462b41cbb 100644 --- a/cli/module_loader.rs +++ b/cli/module_loader.rs @@ -77,11 +77,10 @@ impl CliModuleLoader { specifier: &ModuleSpecifier, maybe_referrer: Option, ) -> Result { - // TODO(bartlomieju): uncomment, when all `node:` module have been - // snapshotted - // if specifier.scheme() == "node" { - // unreachable!("Node built-in modules should be handled internally."); - // } + if specifier.scheme() == "node" { + unreachable!("Node built-in modules should be handled internally."); + } + let graph = self.ps.graph(); match graph.get(specifier) { Some(deno_graph::Module { -- cgit v1.2.3