https://github.com/rbenv/ruby-build/releases/tag/v20170726 に書いてある通りなんですが、definitions が前回のリリースから結構溜まったのでリリースしときました。
High Sierra でもビルドできるようになってると思うので、ビルドできない〜という状況にぶつかっていた人はアップグレードして試してみてください。
だいぶ前にとりあえず lib/bundler
入れて rubygems/rubygems の HEAD でもテスト実行できるようにしてみたというやつをもう少し進めた。
https://github.com/ruby/ruby/pull/1536
まず、ruby のソースに make test-bundler
というタスクを追加して、これを実行すると bundler/bundler をクローンして、isolated な環境でビルドして出来立てホヤホヤのバイナリで rspec を使って bundler のテストを実行するというもの。ひとまず nmake では絶対動かなそうな task はこちらです。
https://github.com/ruby/ruby/pull/1536/files#diff-7e056ddc530791272d363e50c1f25647R488
これ、$(srcdir)
が相対ディレクトリになっていたり、ビルドディレクトリをフルパスでとる方法が見つからなくてこんな感じになってるので、シュッとする方法があれば教えてください。
んでもって、bundler のテストもなかなか厳しくて、まずインストール済みである Ruby 、つまり ruby バイナリがどこかにポンとあってそれを使ってテストするという方法にはなってない箇所がちらほら合った。具体的には
Gem.ruby
としてインストール済みの Ruby を見つけることができずに死ぬbundler/bundler
のディレクトリ構造に密結合しているテストがあって死ぬというあたりはどうしようもないのでとりあえず skip することにした。テストを実行するために当てるパッチはこちらです。
https://github.com/hsbt/ruby/blob/e16f39690e2e7843690f691e9f68e3371aba96f3/spec/bundler.patch
幸いにして、上のパッチを当ててどうしようもないテストを除外した後だと
2269 examples, 0 failures, 3 pending
という感じで、除外した 40 examples を加えた総数 2300 くらいのうち 95% 以上のテストはこれで実行できてテストも通っているので、意外といいんでは?という感触なのがいまここの状況。
もうちょいコード整頓して、bundler 本体ともネゴれば ruby の stdlib として bundler を同梱できるかなあ、RubyKaigi までに何かしらの進捗を出せるといいんだけど。ご期待ください。