Bundler-1.16.0 がリリースされてから不具合はあるけど、どうなってんのこれ?というのが続いていて、いい加減なんとかしなければという気持ちになったので、すでに pr として出されているものや issue だけのもの、まったく何も動いてないものなどをガガガっと整頓してひたすらマージして stable ブランチで壊れたら直すというのを繰り返してやっとブランチのテストを安定させることができたので、@indirect に 1.16.1 をリリースしてもらった。
https://github.com/bundler/bundler/milestone/56
bundler だいぶわかって来たんだけど、ruby 本体と同じように master で直しまくってから安定版ブランチにバックポートするというリリースモデルなのに、そのバックポートがリリースの直前、またはその瞬間にしか行われなくて、pr としてのパッチを組み合わせたら何が起きるかということが十分に検証されないワークフローになっていて、これがそのままリリースされるという極めて危険なやり方ということがわかったのが特に収穫だった。これやばいよ。
さらに、build matrix が https://travis-ci.org/bundler/bundler/builds/319581357 というようになっていて、これを全部通すのが極めて困難で、あれこれ苦労して全部緑にしたんだけど、エンジニアリリースを消費してまで Ruby 1.8/1.9 サポートという SemVer の維持にどこまでの価値があるのかもだいぶわからない...。
まだ雑巾がけをしている段階なので、この二つをいきなりドンというのはないけど、おいおい頑張っていきます。(そして 1.16.1 と RubyGems 2.7.3 の組み合わせで死ぬことがわかったので RubyGems を直している)