ruby-trunk-changes r58610 - r58618

今日は VM の実行状態の構造体の変更などがありました。

hsbt: r58610 2017-05-08 22:14:24 +0900

insns.def の opt_send_without_block 命令のドキュメントの日本語ドキュメント部分を日本語訳しています。 https://github.com/ruby/ruby/pull/1608

kazu: r58611 2017-05-09 01:00:00 +0900

LEGAL に spec/mspec と spec/rubyspec 部分のライセンスについて追記しています。

svn: r58612 2017-05-09 01:00:02 +0900

version.h の日付更新。

nobu: r58613 2017-05-09 11:55:51 +0900

make の ext/distclean, gems/realclean などのターゲットでディレクトリを削除しようとした時のエラーを無視するようにしています。ソースディレクトリではディレクトリの中身が空ではないので削除できないためだそうです。

normal: r58614 2017-05-09 14:06:41 +0900

rb_thread_t から実行中の VM スタックの情報を rb_execution_context_t という構造体に切り出して、 rb_thread_t にはこの構造体を埋め込んで持つようにするリファクタリング。 rb_thread_t から rb_context_t や rb_fiber_t で持つべき情報を rb_execution_context_t に切り出していくつもりみたいですね。 [ruby-core:81045]

normal: r58615 2017-05-09 15:17:01 +0900

r58614 の追加修正。一部のアーキテクチャデバッグ用の分岐の部分で対応が漏れていて、Raspberry Pi 3 の Raspbian でビルドできなくなってたみたいです。 [ruby-core:81048]

naruse: r58616 2017-05-09 16:47:28 +0900

標準添付ライブラリ rubygems の Gem::Specification.all= で渡された specs に nil が含まれていたら例外を発生させるようにしています。CI での失敗のデバッグ用みたいな感じですね。

duerst: r58617 2017-05-09 19:45:46 +0900

lib/unicode_normalize/normalize.rb にコメントでこれが組込み相当(String の該当するメソッド起動時に require されてメソッドを置換する)であることを追記しています。なるほど String#unicode_normalize{!?} の string.c への移動は標準添付ライブラリの gems パッケージ化の流れに対応してのことだったんですね。 https://github.com/ruby/spec/pull/433 https://bugs.ruby-lang.org/issues/5481#note-58

duerst: r58618 2017-05-09 20:13:45 +0900

r58558 でリファクタリングして括り出した unicode_normalize_common() でメソッド呼び出しに rb_funcall() にかわって rb_funcallv() を利用するようにしています。 [ruby-core:81005] [Bug #11078]