-
Notifications
You must be signed in to change notification settings - Fork 5.1k
Open
Labels
arch-wasmWebAssembly architectureWebAssembly architecturearea-Metaos-wasiRelated to WASI variant of arch-wasmRelated to WASI variant of arch-wasmtrackingThis issue is tracking the completion of other related issues.This issue is tracking the completion of other related issues.
Milestone
Description
WASI Developer Experience Goals
WebAssembly System Interface is an exciting technology. Lots of work has already gone into enabling C# with WASI.
dotnet/runtime #65895 defines a set of low-level requirements for providing a working implementation. We can up-level that into a set of developer experience goals.
The following are proposed changes in various categories. Please propose your own.
Related (interview about WASI and C#): https://www.youtube.com/watch?v=fnAjxzMPPqk
Building
- Remove requirement for
runtimeconfig.template
file. - Enable building single file wasm files by default (which may require installing the WASI SDK with the workload).
- Enable publishing AOT with a gesture similar to
PublishAot
.
Running
- Enable using Wasm runtime args with
dotnet run
(otherwisedotnet run
isn't generally useful). - Remove the existing
dotnet run
"helpful" output.
Programmability
- Enable importing popular WASI functionality (possibly worlds) as NuGet packages.
- Import other WASI functionality with a reference to a WIT file.
- Import Preview 2 components.
- Enable async with WASI interfaces.
- Enable
HttpClient
as-is (particularly forhttps
endpoints). - Enable minimal APIs (for handling Web requests).
More detailed work breakdown #65895
Viir, silesmo, radu-matei, fl-lutz, relcodedev and 6 moresquillace, SommerEngineering, radu-matei, mikkelhegn, Viir and 8 moreViir, D3-LucaPiombino, radu-matei, flibbertigibbet-uk, ThorstenHans and 3 more
Metadata
Metadata
Assignees
Labels
arch-wasmWebAssembly architectureWebAssembly architecturearea-Metaos-wasiRelated to WASI variant of arch-wasmRelated to WASI variant of arch-wasmtrackingThis issue is tracking the completion of other related issues.This issue is tracking the completion of other related issues.