bytecodealliance / bytecodealliance/componentize-py

Use `wasm-pkg-tools` to pull interface and world definitions from well-known registries

Aperta
#220 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Rust
Stelle
277
Fork
51
Merge medio
12h 10m
PR unite (30g)
10

Descrizione

[`wasm-pkg-tools`](https://github.com/bytecodealliance/wasm-pkg-tools) provides tools for downloading published WIT definitions (in binary form) from registries, including [default registries](https://github.com/bytecodealliance/wasm-pkg-tools#default-fallback-registries). Ideally, if a `componentize-py` user targets a world that's been published to such a registry, e.g. `wasi:cli/command@0.2.0`, they shouldn't need to provide any WIT files (nor, in the case of WASI worlds, even specify the registry). Instead, `componentize-py` should use `wasm-pkg-tools` to query any available registries and download the world and interface definitions automatically.

In short, we should add a new option for specifying one or more registries (and use the default registries otherwise), plus another option to disable using the default registries if desired. I imagine we'll still want to prioritize using local WIT files if provided.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Trace componentize-py's current WIT and world-resolution entry point, then review how wasm-pkg-tools queries default and explicitly supplied registries. Done means published worlds such as wasi:cli/command@0.2.0 can be resolved without local WIT files, custom registries and disabling defaults are supported, and local WIT files retain priority; add or run coverage for these cases.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
python, rust, wasm
Ambito
build-system, cli, tooling
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
55/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.