bytecodealliance / bytecodealliance/ComponentizeJS
Async func exports unimplemented in bindgen
- Linguagem predominante
- Rust
- Estrelas
- 391
- Forks
- 53
- Merge médio
- 3d 5h
- PRs com merge (30d)
- 1
Descrição
`componentize-js` 0.20.0 panics with `not yet implemented` when a WIT world exports an async function, because the export path in `spidermonkey-embedding-splicer/src/bindgen.rs` hits `todo!()` for all three async function kinds:
https://github.com/bytecodealliance/ComponentizeJS/blob/main/crates/spidermonkey-embedding-splicer/src/bindgen.rs#L485-L487
```rust
FunctionKind::AsyncFreestanding => todo!(),
FunctionKind::AsyncMethod(_id) => todo!(),
FunctionKind::AsyncStatic(_id) => todo!(),
```
This blocks targeting any WIT world whose exports use `async func`, including the component-model-async style used by wasmtime 43's `component-model-async` feature and WASI preview 3 worlds that declare async exports.
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Direção de pesquisa
Comece em spidermonkey-embedding-splicer/src/bindgen.rs, no match de FunctionKind por volta das linhas 485-487, e então siga o caminho de exportação ao redor e o tratamento que ele faz das funções síncronas. O trabalho estará concluído quando as exportações async freestanding, de métodos e estáticas não atingirem mais todo!() e um mundo WIT que exporta async puder ser processado sem o panic relatado.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- rust, wasm
- Domínio
- tooling
- Tipo de issue
- Funcionalidade
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Pouca atividade
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 48/100