What is WASI?
Read more here - https://github.com/bytecodealliance/wasmtime/blob/main/docs/...
When you use JavaScript through Node, your JS gets the ability to open files and make network sockets and so on, because there are a set of APIs implemented by Node and exposed to your JS code, like so:
JS <-> native APIs <-> Node implementation of platform-specific operations
WASI applies to WebAssembly instead of JS. So again if we're on Node:
wasm <-> native APIs (WASI) <-> Node implementation of platform-specific operations
But WASI is much more general than Node's APIs, and meant to be used by different engines in different environments (browsers, native bindings, etc).
At this point, where Microsoft frequently ends up naming something identically to something else already existing (and sometimes quite popular) I'm done believing it's "unfortunate" and not on purpose. Once or twice maybe it's some unfortunate accident, but at this frequency?
Big companies don't care unless you have a trademark.
I've created an issue in their repo, so they are fully aware of the issue and they have the opportunity to amend it :)
That went well :)
But is unfortunate that they used literally the name of the most famous extension for WebAssembly in VSCode (vscode-wasm), which has been around already for a few years, as it might confuse people on what is what:
https://marketplace.visualstudio.com/items?itemName=dtsvet.v... (113k installations)
Repo here: https://github.com/wasmerio/vscode-wasm