Reproducible builds
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 45/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- javascript, rust, wasm
- Bereich
- build-system
Rechercherichtung
Reproduziere das Problem mit den gemeldeten Befehlen npm run bundle und npm run build und vergleiche anschließend sha256sum dist/bundle.js und dist/bundle.wasm über wiederholte componentize-js-Ausführungen hinweg. Untersuche den componentize-js-Build-Pfad und das vermutete Verhalten von JavaScript-Runtime-Snapshots; abgeschlossen bedeutet, dass die wasm-Ausgabe über Builds hinweg dieselbe Prüfsumme hat oder ein dokumentierter Modus für reproduzierbare Builds identifiziert wurde.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
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!!
- Vorherrschende Sprache
- Rust
- Sterne
- 392
- Forks
- 54
- Ø Merge
- 2 T. 18 Std.
- Gemergte PRs (30 T.)
- 3
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus bytecodealliance/ComponentizeJS
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
-
enhancement
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 56/100
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 52/100
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 45/100
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
bytecodealliance/ComponentizeJS#335 · 3 Kommentare ·
Alle Issues in bytecodealliance/ComponentizeJS
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
TheLarkInn/aipm#2413 ·
-
documentation
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 90/100
alexgorbatchev/simple-ptt#15 ·
-
tooling
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
todo:ticket
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
taikoxyz/taiko-mono#22168 · 1 Kommentar ·