Rubyのライフサイクルがよくわかってなかったので調べた

各バージョンの寿命ってどんなもんなの?

先に結論

  • 現在更新されているのは、2.1 と 2.2
    • 2.0はセキュリティFixのみ(メンテナンスモード)
    • メンテナンスモードは1年間(2.0 は 2016/02/24 に終了予定)
  • 1年に1回、クリスマスにマイナーバージョンが上がる
    • 2015/12/25 に 2.3 が出る予定
  • 明言されていないけど、2.0 を見る限り、マイナーバージョンはリリースから2年でメンテナンスモードに入る様子
    • 多分 2.3 がでたら、2.1 はメンテナンスモードになるんじゃないかなぁ(憶測)

最近のRubyの各バージョンの動向

2012

  • 2012/07/01 : 1.8.7 メンテナンスモード開始

2013

2014

  • 2014/02/23 : 1.9.3 メンテナンスモード開始
  • 2014/07/31 : 1.8.7, 1.9.2 メンテナンスモード終了
  • 2014/12/25 : Ruby 2.2.0 リリース

2015

今後の予定

  • 2015/12/25 : 2.3.0 リリースの予定
  • 2016/02/24 : 2.0.0 メンテナンスモード終了の予定
  • Ruby3.0新機能案
    • C拡張なくなるのか...

メンテナンスモードについて

メンテナンスモードに入ると、それ以降は重要度の高いセキュリティfix以外のリリースは行われなくなる

  • メンテナンスモードの期間は1年
  • 以降は特別な理由が無い限りアップデートは終了となる
    • スポンサーがつくとか

バージョン番号について

ざっくりこんな運用らしい

  • マイナーリリースで対応出来ない場合、メジャーバージョンが上がる(2.x → 3.0)
  • 年に1回(クリスマス)マイナーバージョンが上がる(2.1 → 2.2)
    • APIレベルの非互換がありえる
  • API互換性を維持したセキュリティ/バグフィックスした時、タイニーバージョンが上がる(2.2.1 → 2.2.2)
    • 2-3ヶ月毎にリリースされる予定

2.1系、2.2系はいつまで使えるの?

多分 2.3 がでたら、2.1 はメンテナンスモードになるんじゃないかなぁ(憶測)

参考