Skip to content

WebAssembly source phase imports #56056

@legendecas

Description

@legendecas

TC39 proposal source phase imports reached to stage 3 and has been implemented in V8 (starting from M131).

import source FooModule from "./foo.wasm";
FooModule instanceof WebAssembly.Module; // true

The feature requires Node.js integration to support WebAssembly source phase imports. TLDR, if a SourceTextModule imports a source-phase WebAssembly module, create a module source object with v8::WasmModuleObject::Compile and return the WebAssembly.Module object from v8::Module::ResolveSourceCallback, and v8::HostImportModuleWithPhaseDynamicallyCallback.

See design doc for details.

WPT: https://github.com/web-platform-tests/wpt/blob/master/wasm/webapi/esm-integration/source-phase.tentative.html

/cc @guybedford

Metadata

Metadata

Assignees

No one assigned

    Labels

    esmIssues and PRs related to the ECMAScript Modules implementation.wasmIssues and PRs related to WebAssembly.web-standardsIssues and PRs related to Web APIs

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions