From b4aa1530970f7b9cc4e6f2f27e077852c4e178d3 Mon Sep 17 00:00:00 2001 From: Leo Kettmeir Date: Tue, 7 Feb 2023 20:22:46 +0100 Subject: refactor: Use ES modules for internal runtime code (#17648) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This PR refactors all internal js files (except core) to be written as ES modules. `__bootstrap`has been mostly replaced with static imports in form in `internal:[path to file from repo root]`. To specify if files are ESM, an `esm` method has been added to `Extension`, similar to the `js` method. A new ModuleLoader called `InternalModuleLoader` has been added to enable the loading of internal specifiers, which is used in all situations except when a snapshot is only loaded, and not a new one is created from it. --------- Co-authored-by: Bartek IwaƄczuk --- tools/wgpu_sync.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'tools/wgpu_sync.js') diff --git a/tools/wgpu_sync.js b/tools/wgpu_sync.js index 6edc4c92f..4d14f43cf 100755 --- a/tools/wgpu_sync.js +++ b/tools/wgpu_sync.js @@ -92,11 +92,23 @@ async function patchSrcLib() { ); } +async function patchSurface() { + await patchFile( + join(TARGET_DIR, "src", "surface.rs"), + (data) => + data.replace( + `prefix "internal:deno_webgpu",`, + `prefix "internal:ext/webgpu",`, + ), + ); +} + async function main() { await clearTargetDir(); await checkoutUpstream(); await patchCargo(); await patchSrcLib(); + await patchSurface(); await bash(join(ROOT_PATH, "tools", "format.js")); } -- cgit v1.2.3