ruby-trunk-changes r38683 - r38694

今日は RDoc と RubyGems の更新(主に不具合修正)および NativeClient 版のビルドとテストのための修正がありました。

yugui:r38683 2013-01-04 00:39:10 +0900

NativeClient では fcntl(2) で F_DUPFD_CLOEXEC や F_DUPFD を使った fd の dup ができないので条件コンパイルの分岐を修正して __native_client__ が定義されていたら dup2(2) を利用するようにしています。

yugui:r38684 2013-01-04 00:39:15 +0900

bootstraptest/test_io.rb と bootstraptest/test_literal.rb のテストで NativeClient 版では実行できない処理(File.unlink と バッククオート(``) によるコマンドの実行)をスキップするようにしています。またそのために bootstraptest/runner.rb に nacl? というメソッドを追加して実行体のパスから NativeClient 版かどうか判定するようにしています。 あと configure で NaCl では PIE を無効にしたり libnosys というライブラリのリンクオプションをつけるかどうかを条件を追加したりしています。

svn:r38685 2013-01-04 00:39:16 +0900

version.h の日付更新。

yugui:r38686 2013-01-04 00:40:12 +0900

r38684 の ChangeLog エントリが追加されているんですが、既に記述されているので重複してしまっています。

yugui:r38687 2013-01-04 00:42:14 +0900

というわけど r38686 の ChangeLog への重複していた追記を revert しています。

zzak:r38688 2013-01-04 11:49:53 +0900

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

zzak:r38689 2013-01-04 11:52:54 +0900

標準添付ライブラリ forwardable.rb の rdoc の def_single_delegator についての説明内の引数の名称をメソッド定義の仮引数名と揃えるように修正しています。 https://github.com/ruby/ruby/pull/230

drbrain:r38690 2013-01-04 15:16:13 +0900

Rdoc を 4.0.0.preview2.1 から 4.0.0.preview3.1 に更新しています。 "C#===" のようなメソッドや日付の parse の不具合修正、rdoc コマンドの -E option が有効にならない不具合修正([ruby-core:44796] [Bug #6392])、マルチバイト文字を含むファイルの判定で先頭 1024 bytes を無条件に読むため末尾がマルチバイト文字の途中だと壊れたマルチバイト文字となりバイナリファイルと判定されてしまう不具合修正([ruby-core:44798] [Bug #6393])、"[]" という名称のメソッド名の parse に失敗する不具合修正などがあったようです。それ以外にも細かく例外の捕捉などエラー処理の強化がありそうです。

drbrain:r38691 2013-01-04 16:31:57 +0900

RubyGems を 2.0.0.preview3 から 2.0.0.preview3.1 へ更新しています。 gem doctor サブコマンドの Dir.each_child が順番が不定なための不具合を修正したり([ruby-core:51114] [Bug #7618])、テストの未使用ローカル変数の警告除去などです。

yugui:r38692 2013-01-04 18:04:58 +0900

configure で CROSS_COMPILING というマクロを定義するようにしています。また NativeClient 版で bootstraptest を実行するために $(CROSS_COMPILING) を利用して fake と $(RBCONFIG) への依存関係を追加しています。

yugui:r38693 2013-01-04 19:47:06 +0900

make run と make parse (って何だろ?)も fake を依存関係に含めてクロスコンパイルしている時(NativeClient とか)に miniruby ではなく baseruby でスクリプトを実行させるようにしています。

yugui:r38694 2013-01-04 20:19:19 +0900

r38692 で Makefile.in で $(RBCONFIG) を参照するようにしたので RBCONFIG の定義を common.mk から Makefile.in と win32/Makefile.sub に移動しています。