Hello,

(Japanese follows after English; 後ろに日本語があります)

I've been admitted as a 2.0 release manager by matz.  I'll do my
best.


As my first work, I'd like to announce a rough plan for 2.0
release.
Anyone who is interested in 2.0, especially who is thinking
about feature proposal, should check it out.


* Aug. 24 2012:  big-feature freeze

  Decide to pass or fail of "big features", and determine their
  rough spec.

  By this deadline, "big feature" proposers should summarize the
  discussion, conclude the rough spec, and should get matz's
  approval.  Otherwise, the proposal will be postponed.

  It is difficult to clearly define what is "big feature," but
  a language feature (e.g., refinements and keyword arguments),
  a feature that seems to take some time to be stable (e.g.,
  GC-related features, Dtrace, etc.) would be considered "big."
  For example, I think the features listed in [ruby-core:39810]
  are almost all "big."

  Just adding a convenience method, extending an existing
  method feaure, etc., may be "small," but I recommend you be
  conservative; the sooner you propose, the better.

* Oct. 24 2012:  feature freeze

  Decide to pass or fail of all features, and determine their
  detailed spec.

* Feb. 02 2013:  2.0 release

  The 20th anniversary of the birth of Ruby.


In short, anybody who has a strong desire for 2.0, ought to
get matz's approval by Aug. 24 2012.



If you have an opinion for this plan, I'm happy to listen.



I give advice to people thinking about feature proposal.
Matz has said the slogan of "100% compatible" for 2.0, since the
developer meeting of RubyKaigi 2010:

http://redmine.ruby-lang.org/projects/ruby/wiki/DevelopersMeeting20100827

# You may think the record is too simple to understand.  I also
# cannot understand.  The only thing that I can surely remember
# is that matz said "100% compatible."

And in fact, matz disagrees a proposal to remove a feature.
[ruby-core:40044]

I don't know the precise definition and the important degree of
the slogan.  But I recommend you propose your suggestion
depending on the slogan.  It may be difficult to remove some
feature or to change the semantics so that affects existing code.
Of course, even such a proposal will be accepted if matz says
okay.


Thanks,



遠藤は 2.0 リリースマネージャになることをまつもとさんに承認して
貰いました。どうも。


まずは、2.0 リリースに向けた大雑把な予定を告知します。
2.0 に興味のある人、特に機能提案を考えている人は見といてください。

* 2012/08/24: big-feature freeze

  "big feature" の採否を決めて、大まかな仕様を決定します。

  この締め切りまでに、"big feature" の提案者は議論をまとめて、
  大まかな仕様の結論を出し、まつもとさんの承認を得てください。
  間に合わなかった提案は見送りになります。

  何が "big feature" かを明確に定義することは難しいですが、
  言語機能 (refinements や keyword arguments) や、安定させるのに
  時間のかかりそうな機能 (GC 関係や Dtrace など) は "big" と
  考えられます。例えば、[ruby-core:39810] に挙がっている機能は
  大体 "big" だと思います。

  便利メソッドを追加するだけとか、既存メソッドの機能拡張とかは
  "small" と考えられるかも知れませんが、保守的に考えることを
  おすすめします。早く提案するに越したことはありません。

* Oct. 24 2012:  feature freeze

  全機能の採否を決めて、仕様を詳細まで決めます。

* Feb. 02 2013:  2.0 release

  Ruby の生誕 20 周年です。


簡単に言うと、2.0 に野望を抱いている人は、2012/08/24 までに
まつもとさんの承認を得るといいと思います。



この予定にご意見あればお聞かせください。



機能提案を考えている人にひとつアドバイスです。
まつもとさんは RubyKaigi 2010 の開発者会議以来、2.0 で "100%
互換" をスローガンに掲げています。

http://redmine.ruby-lang.org/projects/ruby/wiki/DevelopersMeeting20100827

# この議事録は簡潔すぎてわからないと思いますが、私もよくわかり
# ません。まつもとさんが "100% 互換" と言ったことだけは確かです。

実際、まつもとさんは機能の削除提案に対して反対している例が
あります。  [ruby-core:40044]

このスローガンの正確な定義や重要度はわかりませんが、提案する
ときはこのスローガンを考慮することをお勧めします。機能の削除や
既存コードに影響する意味論の変更などは採用されにくいかもしれま
せん。
もちろんそういう提案でも、まつもとさんが OK と言えば OK です。

-- 
Yusuke Endoh <mame / tsg.ne.jp>