Non-canonical identifiers in imports
The new WASI reactor definition is now:
default world reactor {
import wall-clock: clocks.wall-clock
import monotonic-clock: clocks.monotonic-clock
...
}
That is, from a WIT perspective, the identifying import name is the unique string "wall-clock". Without having any wasi reference in this unique string, there is no blanket way to disambiguate this now from other types of world imports which are non-wasi.
I'd really appreciate some direction here for the JS translation process since it's not clear how to handle this now.
Is the plan to have something like:
default world reactor {
import wall-clock: clocks.wall-clock as "wasi:wall-clock"
import monotonic-clock: clocks.monotonic-clock as "wasi:monotonic-lock"
...
}
or something other mechanism to bring in the URL identifier as distinct?
I believe this is related to: https://github.com/WebAssembly/component-model/issues/177.
Yes; see also https://github.com/WebAssembly/component-model/issues/169 which is about unioning worlds and renaming things when there are name conflicts.