Tracking issue for WASIp3
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 32/100
- Tipo de issue
- Funcionalidade
- Clareza
- Razoavelmente clara
- Status de atividade
- Ativa
- Stack de tecnologia
- rust, wasm
- Domínio
- operating-systems
Direção de pesquisa
Leia o Plan e as Breaking Changes, depois abra um item não marcado da checklist, como #145, #148 ou #151, e inspecione a implementação correspondente de WASIp2 no subsistema nomeado. Compare o tratamento atual de target e features com os requisitos do WASIp3. Está concluído quando o subsistema selecionado estiver implementado para WASIp3 e seu caminho de CI de desenvolvimento funcionar.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Plan
The ultimate goal is to have wstd use WASIp2 when compiled to wasm32-wasip2 and WASIp3 when compiling to wasm32-wasip3, with essentially the same APIs.
Until https://github.com/rust-lang/rust/pull/161940 has landed we'll create mutually exclusive p2 and p3 features on wstd, where p2 will be enabled by default and p3 will only be run in CI during development, not meant for actual use. Then we can switch the feature directives to target_env directives when the work is complete and wasm32-wasip3 is tier 2.
Breaking Changes
- The stream APIs in
ioand TCP APIs innetwork with&references and will switch to requiring&mut. This is becausep2is a single threaded environment, whereasp3is not. This change will be made to both targets to keep them in sync. - Some APIs expose the underlying WASIp2 types (e.g.
AsyncInputStream::newtakes awasip2::InputStream) these will naturally change to use the equivalent WASIp3 types. This will only be breaking when upgrading to the WASIp3 target. - (Up for discussion) The
wasip3crate has its ownTasktype whichwstdcould use directly instead ofasync_task::Task. If done this would be another breaking change between the two targets.
Checklist
- #144
- #145
- #148
- #152
- #153
- #154
- #155
- #161
- #164
- Implement
wstd-axumon WASIp3 - #147
- (Optional) Switch from
async_task::Tasktowasip3::Task - #151
- Linguagem predominante
- Rust
- Estrelas
- 138
- Forks
- 21
- Merge médio
- 6d 2h
- PRs com merge (30d)
- 8
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de bytecodealliance/wstd
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 55/100
bytecodealliance/wstd#151 ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 45/100
bytecodealliance/wstd#109 ·
-
Add `wstd-azure`Talvez livre de novo @yoshuawuyts assumiu há 352 dias e não há nenhum pull request aberto. Abertaenhancement
bytecodealliance/wstd#104 · 1 reação · 1 responsável ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 55/100
bytecodealliance/wstd#103 ·
-
Testing backlogAberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 45/100
bytecodealliance/wstd#98 ·
Todas as issues de bytecodealliance/wstd
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 82/100
521xueweihan/HelloGitHub#4023 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
cloudflare/pingora#1055 ·
Mantenedores costumam responder em até 1 dia
-
enhancement
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
Mantenedores costumam responder em até 1 dia