Ruby Head compatibility
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 35/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- ruby, wasm
調査の方向性
ruby.wasm 2.7.0 で 2 つの失敗を再現し、まず tempfile.rb と digest/sha1 の require 例から始めます。参照されている tempfile と digest の pull request、および Ruby のコミットを確認し、その後 Ruby 3.3 と動作を比較します。WebAssembly の head ビルドで両方のライブラリが正常に読み込まれれば完了です。
索引モデルが issue の本文から書いたものです。
説明
I'm actively experimenting with the head Ruby builds (mostly due to #555) and collecting some compatibility
issues compared to 3.3 release here.
Gem/lib versions:
- ruby_wasm: 2.7.0
- js: 2.7.0
- Tempfile vs. /dev/null: https://github.com/ruby/tempfile/pull/38
This commit broke loading tempfile.rb: https://github.com/ruby/ruby/commit/136cbf04419acf993357701e54712f921a294355
require "tempfile"
# => 'File#initialize': No such file or directory @ rb_sysopen - /dev/null (Errno::ENOENT)
Not sure how to properly handle /dev/null in Wasm, though; maybe, we should return nil for IO::NULL and check for nil-ness whenever it's used 🤔
- Fails to require
digest/sha1: https://github.com/ruby/digest/pull/71
require "digest/sha1"
#=> <internal:/usr/local/lib/ruby/3.4.0+0/rubygems/core_ext/kernel_require.rb>:136:in 'Kernel#require': rb_digest_wrap_metadata not found (LoadError)
<internal:/usr/local/lib/ruby/3.4.0+0/rubygems/core_ext/kernel_require.rb>:136:in 'Kernel#require'
eval:3:in '<main>'
-e:in 'Kernel.eval'
Worked fine in 3.3.
- 主要言語
- Ruby
- スター
- 875
- フォーク
- 68
- 平均マージ
- 9日 5時間
- マージ済み PR(30日)
- 1
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
ruby/ruby.wasm のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
-
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
似ている issue
-
SyncEm always forwards a dummy block, so wrapped methods lose their no-block/Enumerator behavior オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
endoflife-date/endoflife.date#11086 ·
-
internal
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
Kong/developer.konghq.com#7322 ·
-
bug P2
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100