Preview2 Status
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- c, node.js, wasm
- Ambito
- backend-api-design, operating-systems
Direzione di ricerca
Inizia da uvwasi issue #59, dalla packages/preview2-shim library e dalle Preview 2 conformance suites menzionate qui. Chiarisci se il lavoro riguarda il supporto uvwasi di basso livello, un’integrazione Node.js di alto livello come WebAssembly.compile e il supporto ESM, oppure entrambi; il completamento deve includere un ambito concordato e una copertura di conformità superata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
As a further update on https://github.com/nodejs/uvwasi/issues/59, it is now possible to use Preview 2 components via Jco with support for the full set of Preview2 APIs, passing the conformance test suites on Node.js.
To achieve this, Jco implements a Preview 2 implementation on top of the high-level Node.js APIs using the preview2-shim library, which while correct has performance limitations that a uvwasi implementation would avoid. There is an open issue on the Jco project for improving performance in Jco in https://github.com/bytecodealliance/jco/issues/417.
Ideally for the best performance, Preview 2 should be fully implemented in uvwasi, so this is very much a question of implementation effort not design or architecture.
On top of low-level bindings development, there are also the high-level API design questions for Preview 2. Direct host integration, eg for a Node.js Preview2 implementation, should likely involve:
WebAssembly.compilesupport, perhaps via a separatecompileComponentfunction for component binaries (which are uniquely identifiable through their leading bytes), with automatic binding to WASI APIs, similar to how the new strings proposal allows builtins to be specified at compile time - https://github.com/WebAssembly/js-string-builtins/blob/main/proposals/js-string-builtins/Overview.md#using-builtins.- ESM integration support for components (https://github.com/WebAssembly/component-model/blob/main/design/mvp/Explainer.md#ESM-integration)
High-level API work can already be achieved using Jco transpile today as an internal implementation. These two work streams - high-level API integration, and low-level uvwasi updating can thus be implemented completely independently at this point in time based on how development priorities turn out.
- Lingua principale
- C
- Stelle
- 272
- Fork
- 62
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di nodejs/uvwasi
-
path_filestat_get returns inval for empty pathsForse già presa @dannyward630 l’ha presa 6 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 25/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 15/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 20/100
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
Tutte le issue di nodejs/uvwasi
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
espressif/esp-adf-libs#89 · 1 commento ·
-
TLS: a stale OpenSSL error makes non-blocking reads fail with "Resource temporarily unavailable"Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement severity: low
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
luainkernel/lunatik#2091 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 1-3 ore Idoneità per principianti 82/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
bigtreetech/BIGTREETECH-TouchScreenFirmware#3056 ·
I maintainer di solito rispondono entro 1 giorno