bytecodealliance / bytecodealliance/ComponentizeJS
Reproducible builds
- Linguagem predominante
- Rust
- Estrelas
- 391
- Forks
- 53
- Merge médio
- 3d 5h
- PRs com merge (30d)
- 1
Descrição
I have used ComponentizeJS in 3 different projects
I'm seeing with every project that the wasm file output is not reproducible from one build to the next
For example: https://github.com/rhodey/lock.host-wasm-js
I have `npm run bundle` and `npm run build`
I run `sha256sum dist/bundle.js` and determine the same js bundle is being produced
I run `sha256sum dist/bundle.wasm` and determine the wasm file is different with every run of `componentize-js`
It is not hard to imagine that more than 1 thing would need to change to get reproducible builds
A first thought is I think from what I have read that ComponentizeJS is doing something like snapshot of the JS Runtime memory in order to get faster boots. And so that is suspicious as an area of non determinism.
I will much appreciate any help with achieving reproducible builds and if it can be achieved quicker by disabling some features and losing some speed it would be acceptable for my purposes
Thanks!!
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Direção de pesquisa
Reproduce the issue with the reported npm run bundle and npm run build commands, then compare sha256sum dist/bundle.js and dist/bundle.wasm across repeated componentize-js runs. Investigate the componentize-js build path and the suspected JavaScript runtime snapshot behavior; done means the wasm output has the same checksum across builds, or a documented reproducible-build mode is identified.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- javascript, rust, wasm
- Domínio
- build-system
- Tipo de issue
- Bug
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Estagnada
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 45/100