At Mon, 27 Nov 2006 02:16:59 +0900,
WATANABE Hirofumi wrote:
> わたなべです。
> 
> Urabe Shyouhei <shyouhei / ruby-lang.org> writes:
> 
> > Akinori MUSHA wrote:
> > >  ruby_1_8_5 系列の patchlevel の最大値はどのくらいと見ればいい
> > > でしょうか。ruby_1_8 の patchlevel の値はそれより大きい値にする
> > > 必要があります。
> > >   
> > ruby_1_8はこの際1.8.6と名乗るのがいいと思いますが、ダメ?
> 
> ruby_1_8_5との区別をつける意味でも賛成します。

 私の提案も同趣旨ですが、 patchlevel はリリース版を起点とする
ものという前提に立ち、 ruby_1_8 では十分に 0 から遠い値を取ると
いうものです。

 その上で、バージョン番号を上げるのは機能凍結を宣言してリリース
準備フェーズに入るときとしたいです。でないと、 patchlevel 0 と
たとえば patchlevel 3 の間に機能的な違いが生じる可能性があり、
せっかく導入した patchlevel の意味づけがよくわからなくなります。
また、「Ruby 1.8.6以降で動きます」のような簡潔な表現ができなく
なるのは不便でしょう。

 ruby_1_8 の patchlevel を 5000 以上としておけば、少なくとも
0 <= patchlevel < 5000 の間は機能的に同等、と範囲を固定できます。
もし 5000 が中途半端なら 9000 でもいいです。(GNU Emacs は 51,
FreeBSD は 100, NetBSD や X.org は 99 等さまざま)


 リリース絡みのフロー案は以下の通りです。

1. Ruby 1.8.N リリース準備
  1-1. Ruby 1.8 ブランチのバージョン番号を 1.8.N に設定
  1-2. Ruby 1.8 ブランチから Ruby 1.8.N ブランチを分岐
  1-3. Ruby 1.8.N ブランチの patchlevel を 0 に設定
  1-4. Ruby 1.8 ブランチの patchlevel を 5000 に設定

  1-5. 脆弱性が見つかった場合、修正して patchlevel を上げる

2. Ruby 1.8.N リリース
  2-1. Ruby 1.8.N リリースのタグを作成、リリース

3. Ruby 1.8.N 脆弱性対応
  3-1. Ruby 1.8.N ブランチに修正を入れ、確認
  3-2. Ruby 1.8.N ブランチの patchlevel を増加
  3-3. Ruby 1.8.N.P リリースのタグを作成、リリース

どうでしょうか。

-- 
                     /
                    /__  __            Akinori.org / MUSHA.org
                   / )  )  ) )  /     FreeBSD.org / Ruby-lang.org
Akinori MUSHA aka / (_ /  ( (__(  @ iDaemons.org / and.or.jp

"Different eyes see different things,
    Different hearts beat on different strings --
       But there are times for you and me when all such things agree"