今日は rubygems と bundler の更新や Ractor 利用時のメモリリーク修正、Integer.try_convert メソッドの新規追加などがありました。
[33bea3bdff] Nobuyoshi Nakada 2021-07-15 12:30:15 UTC
1a637544166eca6b917fb6f32baeb771f4914b7a の Struct が生成したクラスのクラスメソッド keyword_init? で Struct.new に明示的に keyword_init キーワード引数に ture/false 以外のオブジェクトが渡されてた場合に対応するように? しています。 [ruby-core:104410] [Feature #18008]
[3e7a7fb28a] Nobuyoshi Nakada 2021-07-15 12:33:39 UTC
1a637544166eca6b917fb6f32baeb771f4914b7a で追加した Struct で生成したクラスの keyword_init? メソッドは keyword_init キーワード引数が指定されずに生成された場合は nil を返すようにしています。 [ruby-core:104410] [Feature #18008]
[119697f61e] Peter Zhu 2021-06-29 18:32:28 UTC
rb_gc_force_recycle() で mark フラグを記録している bitmap のクリアする条件が判定していたのを修正しています。 [ruby-core:104443] [Bug #18014]
[4a627dbdfd] Peter Zhu 2021-06-29 18:32:50 UTC
Ractor 利用時にパフォーマンスのために追加さえた Ractor ごとに管理されているオブジェクトの slot が返却されなくて再利用できずメモリリークしていたのを修正しています。 [ruby-core:104443] [Bug #18014]
[e5fe48646c] Peter Zhu 2021-06-29 18:32:54 UTC
4a627dbdfd1165022fa9e716ba845e937b03773d の続きで gc_page_sweep() に struct heap_page::free_slots と freelist の要素数が一致していることを確認するチェックを RGENGC_CHECK_MODE が真の時に実行するようにしています。 [ruby-core:104443] [Bug #18014]
[feec80a362] git 2021-07-15 15:49:08 UTC
version.h の日付更新
[f1035248af] aycabta 2021-07-15 14:42:11 UTC
irb のテストで irb_info コマンドで Windows 版の時 code page (chcp コマンドの出力)も出力するようにしています。
[fa87f72e1e] Jeremy Evans 2021-05-13 22:31:46 UTC
pattern match の文法の式の値を埋め込む "^" の後にグローバル変数、インスタンス変数、クラス変数が書けなくなってたのを書けるように文法を拡張しています。 [ruby-core:102851] [Feature #17724]
[95f8ffa5f6] Jeremy Evans 2021-07-15 17:04:17 UTC
Hash のメソッド群 except, merge, reject, select, slice, transform_values など新しい Hash オブジェクトを返すものが compare_by_identity でキーの同一性で比較するようにした Hash に対しても通常の Hash を返してしまっていたので、receiver の compare_by_identity のフラグを保持した Hash を返すようにしています。 [ruby-core:103071] [Bug #17757]
[25689024cf] Nobuyoshi Nakada 2021-07-16 02:23:36 UTC
fa87f72e1e84e2b55516be188f00434a683b924c の pattern match の文法拡張についての NEWS の記述でサンプルコードがコードとして表示されるようにマークアップを追加しています。 [ruby-core:102851] [Feature #17724]
[55a79b648c] Hiroshi SHIBATA 2021-07-16 04:50:15 UTC
lib/ruby2_keywords.gemspec のバージョンを 0.0.5 に変更しています。3.1 の添付のバージョンが 1.0.0 以降になってしまうとまずいみたいなので巻き戻しています。
[6073a8bdc0] Samuel Williams 2021-07-16 03:43:57 UTC
rb_funcallv() および rb_funcallv_kw() に VM_ASSERT() で現在の Thread が GVL を確保していることを確認するようにしています。拡張ライブラリでうっかり GVL 解放中に ruby の呼び出しがありえる API を呼んだりするとありえるか。
[29ed9d1aaa] Nobuyoshi Nakada 2021-07-15 12:08:57 UTC
標準添付ライブラリ error_highlight のテストで一時ファイルの閉じ忘れがあったのを修正しています。
[bbaebbf529] Jared Beck 2021-07-08 15:27:50 UTC
rubygems の Gem::Uninstaller で default gem の削除時に特別なメッセージを出力するようにしています。
[227c2deff4] David Rodríguez 2021-07-12 08:30:16 UTC
bundler の依存関係解決時に gemspec の development_dependency と Gemfile に書かれた依存関係が重複してた時の処理に問題があったようで修正していますがよくわからない。
[44ba77d16d] Andre Arko 2021-07-13 09:25:21 UTC
bundler の生成するリポジトリでの Gemfile.lock ファイルの PLATFORM に arm64-darwin-20 を追加しています。 M1 Mac での対応ですかね。
[5cce96891e] Andre Arko 2021-07-13 09:12:00 UTC
bundler のテストの :focused というタグがついてた spec のひとつからタグを外しています。
[a3d2200b2a] Andre Arko 2021-07-13 09:25:09 UTC
bundler の plugin ロード時に名前が空だったら無視するようにしています。
[c5f78ade5a] Andre Arko 2021-07-13 09:13:48 UTC
bundler の plugin 管理のサブコマンドで bundle plugin uninstall 時のフックを呼ぶ機能が動いていなかったのを修正しているようです。
[71d3c9bbfa] David Rodríguez 2021-07-13 11:00:02 UTC
bundler の bundle plugin install --help で bundle install のヘルプメッセージが表示されてしまっていたのを修正。
[650a65c6fc] Masafumi Koba 2021-07-15 11:25:12 UTC
rubygems で FileUtils 利用時に require "fileutils" するようにしています。
[eee709595c] Yusuke Endoh 2021-06-17 02:34:20 UTC
IO.read、IO.foreach、IO.binread、IO.write、IO.binwrite などのメソッドの rdoc 用コメントの call-seq に File を receiver として呼ぶ形式も追加して、パイプが使えるのは IO を receiver として呼んだ場合と明記しています。そういう実装なんでしたっけ。File 以外の IO を継承したクラスでもパイプは無効なんだっけ。
[301d194ee3] Nobuyoshi Nakada 2018-10-07 04:02:46 UTC
Integer.try_convert メソッドを追加しています。今までなかったんだっけ。 to_int による変換が可能なら変換して、なかったら nil を返します。 [ruby-core:89301] [Feature #15211]
[fd0df9c4fb] Benoit Daloze 2021-07-06 16:52:29 UTC
C API rb_iterate() を DEPRECATED_BY() つきで宣言して利用時に警告が出るようにしています。 [ruby-core:104520] [Misc #18025]