とある Ruby のプロジェクトで依存 gem のバージョンを上げたらエラーが出たのでその原因を探った。 起こったこと ある種のウェブアプリ機能を持った gem を開発し,長らく多数のプロジェクトで使っていた。 この gem は rack という gem を利用している1。rack への依存はとくにバージョンを指定していない。 ある日,bundle update で gem たちのバージョンを上げたところ,rack もバージョン 2.2.4 から 3.0.0 に上がった。 メジャーバージョンが上がったので何かしら非互換性があるかとは予想したが,起動しようとしたら案の定