Hatena::ブログ(Diary)

PB memo このページをアンテナに追加 RSSフィード

2017-01-24 ruby-trunk-changes r57408 - r57414

[][]ruby-trunk-changes r57408 - r57414

今日は FreeBSD での gcc 7.0.0 での最適化しすぎの不具合対応や RubyGems の更新などがありました。

kazu: r57408 2017-01-24 00:47:32 +0900

test/test_tmpdir.rb の magic comment frozen_string_literal を true に変更しています。

svn: r57409 2017-01-24 00:47:33 +0900

version.h の日付更新。

naruse: r57410 2017-01-24 01:58:27 +0900

marshal.c の rb_marshal_dump_limited() と rb_marshal_load_with_proc() の変数 wrapper の宣言に volatile 修飾子を追加して GC による不正なメモリ解放の不具合修正をしています。 RB_GC_GUARD() もしているのですが FreeBSD 10.3 の gcc 7.0.0 では効かないという不具合があるみたいです。 [ruby-core:79224] [Bug #13150]

naruse: r57411 2017-01-24 02:02:08 +0900

標準添付ライブラリ uriURI#escape の rdoc 用コメントのメソッド名の typo 修正。 [ruby-core:79218] [Bug #13147]

hsbt: r57412 2017-01-24 11:38:57 +0900

標準添付ライブラリ rubygems のバージョンを 2.6.10 に更新しています。 ChangeLog が以下の URL にあります。 Ruby 2.4 での不具合の修正などが含まれているようです。 https://github.com/rubygems/rubygems/commit/2ee5bf9fd3bd7649d3e244bc40107ff32070ef47 https://github.com/rubygems/rubygems/commit/be510dd4097e65c6a256a6e173d6b724a3a96472


svn: r57413 2017-01-24 11:38:58 +0900

r57412 の行末の空白除去。

nobu: r57414 2017-01-24 16:52:41 +0900

r57367 でメソッド呼び出しの開きかっことの間に空白があった時の警告を追加していましたが、そのうち1つが間違っていたそうで revert しています。

2017-01-23 ruby-trunk-changes r57395 - r57407

[][]ruby-trunk-changes r57395 - r57407

今日は拡張ライブラリまわりのビルドプロセスの変更や標準添付ライブラリ csv の field_size_limit と改行を含むカラムについての不具合修正などがありました。

nobu: r57395 2017-01-22 21:50:36 +0900

ext/extinit.c を生成するためのテンプレートが ext/extmk.rb に埋め込まれていたのを template/extinit.c.tmpl に切り出しています。

nobu: r57396 2017-01-23 11:18:59 +0900

r57395 で extinit.c のテンプレートを template/extinit.c.tmpl に切り出したので extinit.c の作りなおしができるように EXTINITS 変数を sub make に伝播させるように ext/extmk.rb で submakeopts に追加しています。

svn: r57397 2017-01-23 11:18:59 +0900

version.h の日付更新。

nobu: r57398 2017-01-23 11:19:00 +0900

ext/extmk.rb で extinit.c に渡すための features 名(basename)とそのファイルパスは "," 区切りで渡されてましたが、extinit.c のテンプレートでは basename のほうは無視されていたので、最初からファイルパスのみ渡すようにしています。

shyouhei: r57399 2017-01-23 11:47:16 +0900

RubyVM の命令列に出てくる命令のテスト coverage を上げるため、命令ごとにそれが登場するように式を compile するテストを bootstraptest (make test で実行されるテスト)に追加しています。

svn: r57400 2017-01-23 11:47:17 +0900

r57399 で新規追加されたファイルの svn property の設定。

nobu: r57401 2017-01-23 11:50:23 +0900

ext/ 以下の 拡張ライブラリの configure を並列に実行できるようにしているようです。ビルドプロセスの変更でいかにもすんなりいかなさそうなところですね…。

nobu: r57402 2017-01-23 12:43:43 +0900

r57401 で追加した template/configure-ext.mk.tmpl で .PHONY ターゲットとして指定した FORCE を実際に空のターゲットとして宣言するようにしています。 BSD make ではそうする必要があったとのこと。

nobu: r57403 2017-01-23 12:51:25 +0900

r57401 の拡張ライブラリ並列 configure 対応の nmake 向け対応。

nobu: r57404 2017-01-23 13:22:23 +0900

r57401 の拡張ライブラリ並列 configure 対応の nmake 向け対応もうひとつ。やはり一筋縄ではいかなかった模様。けどこれで一旦落ち着いたみたい? ですね(まだ油断はできない)。

nobu: r57405 2017-01-23 13:49:19 +0900

Exception#message の rdoc 用コメントに Exception の to_str として挙動するという古い記述が残っていたので削っています。 https://github.com/ruby/ruby/pull/1517

nobu: r57406 2017-01-23 14:59:28 +0900

標準添付ライブラリ csv でクオートして改行をカラムに含んでいるデータの時に field_size_limit の指定が正しく判定されないことがある不具合を修正しています。 [ruby-dev:49964] [Bug #13149]

nobu: r57407 2017-01-23 15:16:04 +0900

special_object_p() が T_SYMBOL の時(つまり即値じゃない dynamic symbol? mortal symbol? どっちでしたっけ?) も Qtrue を返すようにしています。 Symbol#clone で複製しようとすると例外が発生していたのを修正して self を返すようにしています。 [ruby-core:79216] [Bug #13145]

2017-01-22 ruby-trunk-changes r57389 - r57394

[][]ruby-trunk-changes r57389 - r57394

今日は tempfile の frozen_string_literal の変更とドキュメントの追記などがありました。

kazu: r57389 2017-01-21 21:21:05 +0900

標準添付ライブラリ tempfile とそのテストの magic commect frozen_string_literal を true に変更しています。

kazu: r57390 2017-01-22 12:06:17 +0900

Hash#fetch の rdoc 用コメントの英文法の修正。 https://github.com/ruby/ruby/pull/1515

svn: r57391 2017-01-22 12:06:18 +0900

version.h の日付更新。

shyouhei: r57392 2017-01-22 13:02:42 +0900

NEWS ファイルに r57382 で SipHashの実装を SipHash24 から SipHash13 に変更した旨を追記しています。

shyouhei: r57393 2017-01-22 13:14:21 +0900

NEWS ファイルに r57384 で SecureRandom の乱数源の優先順位を変更したことを追記しています。

nobu: r57394 2017-01-22 17:04:37 +0900

win32/Makefile.sub で make distclean-ext, realclean-ext で ext ディレクトリを削除する時に先に ext/extinit.c を削除するようにしています。

2017-01-21 ruby-trunk-changes r57387 - r57388

[][]ruby-trunk-changes r57387 - r57388

今日は make clean で消すファイルの追加だけでした。

nobu: r57387 2017-01-21 15:17:07 +0900

make clean で ruby-runner とそのソースコード(自動生成されるもの)を削除するようにしています。

svn: r57388 2017-01-21 15:17:08 +0900

version.h の日付更新。

2017-01-20 ruby-trunk-changes r57377 - r57386

[][]ruby-trunk-changes r57377 - r57386

今日は Array#sample の一部条件での高速化、SecureRandom で利用する乱数源の優先度の変更などがありました。

nobu: r57377 2017-01-20 10:02:37 +0900

r57370 の Kernel#warn で Warning.warn を呼ぶようにした変更に関連して空文字列の時に追加する改行コードを rb_default_rs を使うようにしています。 [ruby-core:78156] [Feature #12944]

svn: r57378 2017-01-20 10:02:38 +0900

version.h の日付更新。

nobu: r57379 2017-01-20 11:27:28 +0900

大きなサイズの配列に対する Array#sample を呼ぶと引数が 10 よりも大きい時に非常に遅くなるというのを改善するという [Bug #13136] のチケットのためにまずベンチマークスクリプトを追加しています。

nobu: r57380 2017-01-20 11:39:27 +0900

r57379 でベンチマークを追加した Array#sample について大きなサイズの配列から 11以上の要素を取り出す時に配列サイズに応じた処理の切り替えをするようにして高速化しています。 [ruby-dev:49956] [Bug #13136]

nobu: r57381 2017-01-20 13:27:55 +0900

条件分岐の条件に defined? が書かれていた時に生成する VM 命令を少し最適化しています。

shyouhei: r57382 2017-01-20 15:01:23 +0900

random.c で利用している SipHash の実装を SipHash24 から SipHash13 に変更しています。こちらのほうが高速で、かつ充分に Secure だから、ということかな? [ruby-core:78549] [Feature #13017]

nobu: r57383 2017-01-20 16:45:10 +0900

r55505 で GNUMakefile.in で sub-make に渡す時に -j オプションを filter-out で削るようにしていたのをコメントアウトしています。 make test-all の並列化が伝播しなくなっていたのを戻したみたいです。

shyouhei: r57384 2017-01-20 17:00:00 +0900

Random.raw_seed を Random.urandom に改名して、標準添付ライブラリ securerandom で OpenSSL の実装よりも先に Random.urandom の実装を試すようにしています。 [ruby-core:61094] [Bug #9569]

nobu: r57385 2017-01-20 19:59:47 +0900

ext/extmk.rb で自動生成されたファイルを検出して extconf.rb からやりなおしになるのを避けるように条件を調整しています。

kazu: r57386 2017-01-20 22:33:06 +0900

lib/rbconfig/datadir.rb という標準添付ライブラリを削除しています。既に 2011年から deprecated になってました。