※ 本サイトにはアフィリエイト広告が含まれます
自分で設定した冬休みの宿題(?)の1つ「ruby.wasmで有用っぽいもの作ってみる」が一応達成できた。
https://github.com/tnantoka/rubocop-on-wasm
以前 のようにさっくりできるかと思ってたんだけど、
↓の辺りで思ったより手間取った。
- irb.wasmの手順だと最新のrubyでこける
→ 11末のコミットを使えばいけた
→ ruby.wasmのreleaseを使ってもいけたので最終的にはそうした
https://github.com/tnantoka/irb.wasm/pull/1 - wasmがでかすぎてCloudflare Pagesに置けない
→ 転送量無制限ということでGitLab Pagesに置かせてもらった
→ 海を越える数十MBの転送待ちに耐えきれなかったので、最終的に国内レンサバに置いた(さくら) - RubyGemsへのDoS攻撃になっちゃう問題
→ ページを開くたびにrubocopをインストールするとRubyGemsにいっぱいリクエストが飛ぶ
→ 自サーバーでキャッシュしたファイルを使うように
→ 通信の数を減らすため最終的にはwasmの中に組み込むことにした
Pure Rubyで動いてるものなら hoge-on-wasm をいろいろ作れそう。