ruby-trunk-changes r39496 - r39511

今日はまず API バージョン(ABI バージョン)の 2.1.0 への更新がありました。ライブラリのパスが変化しますので trunk を追い掛けている人は gem パッケージや setup.rb などでインストールしているライブラリ等は再インストールしましょう。
またメソッド定義でかっこを省略してキーワード引数を使った時のエラーを修正しています。

nobu:r39496 2013-02-25 23:51:12 +0900

include/ruby/version.h の RUBY_API_VERSION_MINOR を 0 -> 1 にアップデートし、API バージョンを 2.1.0 にしました。これによりライブラリのインストールパスに含まれるバージョン番号は "2.1.0" になります。 gem パッケージなども再インストールしましょう。自分でソースからビルドしている場合は make clean してからビルドしなおすほうが良いみたいです。

nobu:r39497 2013-02-25 23:59:21 +0900

test-all のユーティリティ test/ruby/envutil.rb の Test::Unit::Assertions::AssertFile という Struct から作ったクラスのメンバを message -> failure_message に変更しています。 Assersions の message メソッドとかぶっていたのを避けているらしいです。

nobu:r39498 2013-02-25 23:59:24 +0900

File.fnmatch のテストで envutil.rb で定義した assert_file という assertion を利用するように書き変えています。

nobu:r39499 2013-02-26 00:54:00 +0900

r39486 で ext/Setup.nt に cyngin, mingw, mswin のプラットフォームを指定したのを再度コメントアウトしています。もっとも ext/extmk.rb をみると platform というオプションはみてないみたいなので、どこで利用されているのか謎でした。
[追記]r39486 で configure 自身がどの Setup.* を使うかの判定の為に使うようにしていました。[/追記]

svn:r39500 2013-02-26 00:54:04 +0900

version.h の日付更新。

kosaki:r39501 2013-02-26 03:43:41 +0900

SignalException の rdoc コメントのサンプルコードで、自分のプロセスにシグナルを送信した時に、シグナルの配信は非同期なため begin-rescue-end の間に例外を受けとれるとは限らないので sleep を追加しています。 [ruby-core:52864] [Bug #7951]

zzak:r39502 2013-02-26 04:52:11 +0900

r39501 で SignalException のドキュメントのサンプルコードに追加した sleep にその理由をコメントとして追記しています。

nobu:r39504 2013-02-26 10:24:52 +0900

メソッド定義の仮引数のかっこを省略した時に通常引数などなしでいきなりキーワード引数を書くと SyntaxError になっていたのを修正しています。 [ruby-core:52820] [Bug #7942]

nobu:r39505 2013-02-26 10:31:42 +0900

test/ruby/test_keyword.rb で定義していたメソッドであいまいな yield 呼び出しが -w オプション指定時に警告が出力されていたのでかっこをつけるようにしています。

nobu:r39506 2013-02-26 15:04:22 +0900

configure の unexpand_shvar に OpenBSD では動かないシェルの機能(?)を使っていたためビルドに失敗していたのを修正。
quote という変数はもう利用していないのに代入は残っているようなんですけどこれは削ってもいいんでしょうか。 [ruby-core:52893] [Bug #7959]

nobu:r39507 2013-02-26 15:12:17 +0900

tool/mkconfig.rb で configure へのオプションを --opt=arg の形に正規化している部分で、Windows 環境でのコマンドラインの仕様で空白と"="のほかに "," や ";" でも区切りになるので、カンマ区切りに置換するようにしています。

nobu:r39508 2013-02-26 15:39:25 +0900

r39507 の ChangeLog エントリの typo 修正。

kou:r39509 2013-02-26 23:30:40 +0900

r39384 で追加した REXML::Document.entity_expansion_text_limit= などの accessor の実体を定義を lib/rexml/document.rb から lib/rexml/rexml.rb の REXML.entity_expansion_text_limit= などに移動し、REXML::Document のメソッドはこちらを呼ぶようにしています。 rexml/text.rb が rexml/document.rb に依存するため依存関係が循環してしまっていたのを修正しています。 [ruby-core:52895] [Bug #7961]

kou:r39510 2013-02-26 23:34:01 +0900

r39509 と同様に REXML::Document.entity_expansion_limit の accessor も lib/rexml/rexml.rb の REXML.entity_expansion_limit として移動して、REXML::Document のほうのメソッドは deprecated にしています。 [ruby-core:52895] [Bug #7961]

kou:r39511 2013-02-26 23:35:05 +0900

r39509 の ChangeLog エントリの typo 修正。