Skip to content

[dart2wasm] Remove support for package:js and dart:js_util in favor of dart:js_interop and dart:js_interop_unsafe #54004

Closed
@srujzs

Description

@srujzs

package:js and dart:js_util is not restrictive enough for our purposes and may lead to unexpected behavior (either due to odd semantics or lack of support) and/or performance cliffs. This will require migrating internal usage, but for now we should treat these two libraries as deprecated for dart2wasm. Support for these libraries will continue on dart2js and ddc until we feel ready to start deprecating and migrating.

This will require migrating any Flutter usages to use dart:js_interop, but we can allowlist existing usages for now and disallow these libraries in dart2wasm for 3.3.

This will also require making sure dart:js_interop reaches parity with package:js and dart:js_util by providing any missing functionalities.

cc @kevmoo

Metadata

Metadata

Assignees

Labels

area-dart2wasmIssues for the dart2wasm compiler.area-web-jsIssues related to JavaScript support for Dart Web, including DDC, dart2js, and JS interop.web-js-interopIssues that impact all js interop

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions