ruby-trunk-changes 2019-11-19

今日は細かな最適化や require されたファイルから fatal で大域脱出する時に SEGV などする恐れがあった不具合の修正などがありました。

[e1b2341488] Nobuyoshi Nakada 2019-08-07 14:22:06 UTC

common.mk および拡張ライブラリの depend ファイルの依存関係を更新しています。

[f09fc1b034] Nobuyoshi Nakada 2019-11-18 14:14:13 UTC

tool/update-deps に必要に応じて probe.dmyh への依存関係を追加する対応を追加。

[373769c939] Yusuke Endoh 2019-11-18 15:12:50 UTC

NEWS ファイルの yield の deprecate 警告に具体的なコード例を追加しています。 [Feature #15575]

[0c0278b90a] Yusuke Endoh 2019-11-18 15:25:49 UTC

fstring のテストで taint を呼び出すことによく警告を抑制するため一時的に $VERBOSE を nil に設定。

[9067f43c0a] git 2019-11-18 15:27:05 UTC

version.h の日付更新

[e9992bcab0] Kazuhiro NISHIYAMA 2019-11-18 14:36:51 UTC

bundler のテストで ruby 本体上でテストする時に git リポジトリじゃないとこけるテストの対応?

[9aa75795f9] Kazuhiro NISHIYAMA 2019-11-18 14:39:57 UTC

同じく bundler のテストで git のリポジトリ内でない時に失敗するテストを skip するようにしています。

[fea24bbfdb] Kazuhiro NISHIYAMA 2019-11-18 14:41:26 UTC

bundler のテストでテスト用 .gemspec を読み込む前にカレントディレクトリをソースディレクトリに移動するようにしています。

[0be0d90ab0] Takashi Kokubun 2019-11-18 17:31:36 UTC

71fee9bc720ba7a117062bf3f78b6086527b656c の変更で Array#pack が invokebuiltin でなく opt_invokebuiltin_delegate を利用するようになったので MJIT のテストで invokebuiltin を対象としたテストがなくなったので TEST_PENDING_INSNS に追加しています。

[473e314791] Nobuyoshi Nakada 2019-11-13 06:22:39 UTC

reline のテストで assert_equal のかわりに assert_include を使ってよりわかりやすいエラーメッセージが出るようにしています。

[cef9ebfbd3] Nobuyoshi Nakada 2019-11-13 06:28:12 UTC

標準添付ライブラリ reline で Unix 系環境で stty コマンドを起動するのにバッククオートを使っていたのを Kernel#system を使い、標準エラー出力を /dev/null に捨てるようにしています。 Apple Terminal で stty のエラーメッセージが出るそうです。

[78e266da1d] Samuel Williams 2019-11-19 02:40:00 UTC

RubyVM::InstructionSequence.compile の rdoc 用コメントに省略可能な第2引数以降の file、path や lineno の用途の説明やサンプルを追記しています。

[0e8219f591] 卜部昌平 2019-11-18 03:13:08 UTC

現状外から呼ばれていない関数を static 関数に変更しています。これによりバイナリサイズが小さくなるとのこと。

[75e8dd58f6] Kazuhiro NISHIYAMA 2019-11-19 04:06:00 UTC

GitHub Actions の bundled gems のテストで minitest のテスト失敗を無視していたのをやめています。 https://github.com/seattlerb/minitest/pull/798

[f6239ce0fc] 卜部昌平 2019-11-19 04:16:04 UTC

VM 命令の opt_and や opt_or でビット演算を VALUE のままで行なう最適化や、2つの VALUE が両方 Fixnum であることを確認する FIXNUM_2_P() というのを利用する(こんなのあったのか)ようにしたり、条件分岐の順番を調整する最適化など。

[c53aec73dd] Nobuyoshi Nakada 2019-11-19 06:06:11 UTC

ext/extmk.rb の拡張ライブラリを static link する設定に関する修正ですがよくわからず。

[a5fe08fdd9] Koichi Sasada 2019-11-19 07:56:56 UTC

require の実装で EC_EXEC_TAG() から大域脱出で TAG_FATAL を返してきた時に対応していなくて SEGV する場合があったのを修正しています。 [ruby-core:95055] [Bug #16177]

[0b8c73aa65] Nobuyoshi Nakada 2019-11-19 08:17:00 UTC

値として式を取らないキーワード引数のような 'key:' のような記法で名前の部分がクオートされている '"key":' のようなのも扱うのを ripper でも同様に処理できるようにしている?

[822d7ae316] Kazuhiro NISHIYAMA 2019-11-19 08:34:43 UTC

a5fe08fdd9d11f12a6837291ee588ab933a823b6 の修正に対応するテストを追加しています。 [ruby-core:95055] [Bug #16177]