bytecodealliance / bytecodealliance/ComponentizeJS

Better error for `performance` access at Wizer time

オープン
#153 コメント 10 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Rust
スター
391
フォーク
53
平均マージ
3日 5時間
マージ済み PR(30日)
1

説明

I still get the same error with jco 1.7.1 that uses 0.13.1 of this project. #150 does not set timeOrigin. The change from https://github.com/bytecodealliance/ComponentizeJS/pull/146/commits/cb4d73af4fbbd75fb4bafc79b04a7d500180bd96#diff-882dd8ad95be11b373fd2693a697c12144f8b51d4605a35cd678a0d2e5b4a09dR354 makes it work for me locally.

```
~/ms/StarlingMonkey15/cowsay> npx jco componentize cowsay.js --wit src/cowsay.wit -o cowsay.wasm
Redirecting call to abort() to mozalloc_abort

Error: the `componentize.wizer` function trapped

Caused by:
0: error while executing at wasm backtrace:
0: 0x25f20 - !
1: 0x25f29 - !
2: 0xa921 - !
3: 0x42119 - !
4: 0x25431f - !
5: 0x254f50 - !
6: 0x25576e - !
7: 0x35a029 - !
8: 0x258ee8 - !
9: 0x24bbcc - !
10: 0x245b22 - !
11: 0x255aeb - !
12: 0x29a0a9 - !
13: 0x34e9db - !
14: 0x34e72d - !
15: 0x20286 - !
16: 0x1f50e - !
17: 0xa882 - !
18: 0x22580f - !
1: wasm trap: wasm `unreachable` instruction executed
(jco componentize) Error: Failed to initialize the compiled Wasm binary with Wizer:
Wizering failed to complete
at componentize (file:///Users/cataggar/ms/StarlingMonkey15/node_modules/@bytecodealliance/componentize-js/src/componentize.js:271:13)
at async componentize (file:///Users/cataggar/ms/StarlingMonkey15/node_modules/@bytecodealliance/jco/src/cmd/componentize.js:11:25)
at async file:///Users/cataggar/ms/StarlingMonkey15/node_modules/@bytecodealliance/jco/src/jco.js:200:9
```

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

jco componentize コマンド、cowsay.js、src/cowsay.wit を使って失敗を再現し、報告されたスタックの 271 行目にある componentize.js の呼び出しを調査します。参照されている ComponentizeJS PR #146 の変更と issue #150 を比較し、Wizer の初期化中のパフォーマンスアクセスに焦点を当てます。例が componentize.wizer trap なしで componentize できれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
javascript
領域
tooling
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。