Contact emailsyoavwe...@chromium.org

Explainerhttps://github.com/whatwg/html/pull/10528#issue-2437162429

Specificationhttps://github.com/whatwg/html/pull/10528

Summary

Import maps currently have to load before any ES module and there can only
be a single import map per document. That makes them fragile and
potentially slow to use in real-life scenarios: Any module that loads
before them breaks the entire app, and in apps with many modules they
become a large blocking resource, as the entire map for all possible
modules needs to load first. This feature is to enable multiple import maps
per document, by merging them in a consistent and deterministic way.


Blink componentBlink>HTML>Modules
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EHTML%3EModules>

TAG reviewhttps://github.com/w3ctag/design-reviews/issues/980

TAG review statusIssues addressed

Risks


Interoperability and Compatibility

This feature changes the existing behavior of import maps, but does so in a
backwards compatible way. Sites that have working import maps right now
will continue to work. The main compatibility risk may come from sites with
import maps that aren't working today (either defined after module loads or
multiple of them) that would start working after this feature ships. As
such maps are currently throwing errors, I wouldn't expect them to be
common in functioning sites, and there's even a chance that this change
will fix such sites.


One thing to note is that we haven't defined a non-destructive way to
feature-detect this change. I believe this is fine, as (similar to JS
language features) sites would need to use UA version sniffing to know if
they can deliver multiple (smaller) import maps or a single large one.


In terms of interop risk, WebKit has expressed a positive position, and I'm
planning to implement the feature there as well.


*Gecko*: No signal (
https://github.com/mozilla/standards-positions/issues/1058)

*WebKit*: Support (https://github.com/WebKit/standards-positions/issues/381)

*Web developers*: Positive
Shopify is interested in seeing this ship.
We also have 6 positive reactions on
https://github.com/whatwg/html/pull/10528 and an LGTM from Guy Bedford, who
authored the relevant polyfill.

*Other signals*:

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that
it has potentially high risk for Android WebView-based applications?

None


Debuggability

None


Will this feature be supported on all six Blink platforms (Windows, Mac,
Linux, ChromeOS, Android, and Android WebView)?Yes

Is this feature fully tested by web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
?Yes

https://wpt.fyi/results/import-maps/multiple-import-maps?label=experimental&label=master&aligned
https://wpt.fyi/results/import-maps/not-overridden?label=master&label=experimental&aligned


Flag name on about://flagsNone

Finch feature nameMultipleImportMaps

Requires code in //chrome?False

Estimated milestones
Shipping on desktop 133
Shipping on Android 133
Shipping on WebView 133

Anticipated spec changes

Open questions about a feature may be a source of future web compat or
interop issues. Please list open issues (e.g. links to known github issues
in the project for the feature specification) whose resolution may
introduce web compat/interop risk (e.g., changing to naming or structure of
the API in a non-backward-compatible way).


None

Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5121916248260608?gate=5126546826985472

Links to previous Intent discussionsIntent to Prototype:
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOmohSJrxQj19LattoOyE3Af5dn%3D50UD9ecpHZWjVZ5-GrMr9w%40mail.gmail.com


This intent message was generated by Chrome Platform Status
<https://chromestatus.com/>.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOmohSLUMpeNwZiV7nqrFw-zZgseF1kuRe253OTj50td32k5hQ%40mail.gmail.com.

Reply via email to