2023-03-01から1ヶ月間の記事一覧

ruby-trunk-changes 2023-03-31

今日は主に lldb や gdb のためのカスタムコマンドの実装の修正や拡張、Ractor まわりのデバッグのためのログ出力の強化、拡張ライブラリ ripper のパターンマッチの文法での RGenGC の Write Barrier 関係の不具合の修正などがありました。 [339295dd7c] No…

ruby-trunk-changes 2023-03-30

今日は標準添付ライブラリ time の不具合修正や YJIT の最適化などがありました。 また今日は ruby の各安定版の脆弱性修正を含むリリースがありました。https://www.ruby-lang.org/en/news/2023/03/30/ruby-3-2-2-released/ https://www.ruby-lang.org/en/n…

ruby-trunk-changes 2023-03-29

今日は主に標準添付ライブラリ reline の修正や YJIT のコマンドラインオプション追加などがありました。 [c86ccccbd7] Nobuyoshi Nakada 2023-03-28 08:58:45 UTC 46132e78b7438389bf49a860a0cd8957f685dcb3 で tool/rbs_skip_tests に rbs のテストから pa…

ruby-trunk-changes 2023-03-28

今日は主に標準添付ライブラリ uri の不具合修正とバージョンアップ、標準添付ライブラリ reline の修正、bundler の依存関係解決の修正などがありました。 また標準添付ライブラリで default gems の uri に脆弱性修正を含む新バージョンのリリースがありま…

ruby-trunk-changes 2023-03-27

今日は主に RJIT の修正や拡張ライブラリ pathname の deprecated なメソッドの削除などがありました。 [ac458f6bc3] Nobuyoshi Nakada 2023-03-26 14:10:50 UTC 2f916812a9b818b432ee7c299e021ec62d4727fb でスキップするようにした "Europe/Lisbon" のタイ…

ruby-trunk-changes 2023-03-26

今日は標準添付ライブラリ reline の不具合修正、拡張ライブラリ ripper の不具合修正、RJIT の修正などがありました。 [60ca800d4f] tomoya ishida 2023-03-25 15:01:30 UTC 標準添付ライブラリ reline の Reline::Unicode.split_by_width で色付けのための…

ruby-trunk-changes 2023-03-25

今日は主に Dir.for_fd や Dir.fchdir、Dir#chdir メソッドなどのディレクトリ操作のメソッド追加や Hash の一部メソッドで引数の Hash の compare_by_identity フラグが引き継がれない場合があった不具合の修正などがありました。 [7149f5763e] MSP-Greg 20…

ruby-trunk-changes 2023-03-24

今日は主に YJIT の不具合修正や最適化、Process.pid のキャッシュの実装の変更などがありました。 [b738cb01b6] Nobuyoshi Nakada 2023-03-23 12:51:18 UTC vm_backtrace.c の calc_pos() で VM_ASSERT() でチェックしている整数の比較を符号の有無による警…

ruby-trunk-changes 2023-03-23

今日は主に Object Shapes の最適化、VM 命令へのコンパイル時の最適化、 rubygems と bundler の更新などがありました。 [27916db08c] Nobuyoshi Nakada 2023-03-22 13:35:58 UTC テストに使う assert_pattern_list という assertion メソッドの使い方のコ…

ruby-trunk-changes 2023-03-22

今日は主に YJIT の不具合修正と rubygems の古い ruby 対応のコード削除などがありました。 [9b85ff01a1] Nobuyoshi Nakada 2023-03-21 09:59:29 UTC test/ruby/test_syntax.rb でヒアドキュメントの <<- の結果を gsub で先頭の空白を除去していたところを …

ruby-trunk-changes 2023-03-21

今日は主に Object#instance_variables などで取得できるインスタンス変数の順番が保存されないことがあるという微妙な挙動の変化を修正する変更などがありました。 [44f444478a] Maxime Chevalier-Boisvert 2023-03-20 14:16:22 UTC YJIT の Rust 実装で VM…

ruby-trunk-changes 2023-03-20

今日は主に Process.pid の結果をキャッシュして不要なシステムコール発行を抑制する最適化や、RJIT のサポートする VM 命令の拡張やメソッドの inline 化による最適化などがありました。 [bcd0aa896f] Nobuyoshi Nakada 2023-03-19 12:57:22 UTC ractor.c …

ruby-trunk-changes 2023-03-19

今日は主に freeze したオブジェクトが Variable Width Allocation の slot サイズが変化した時に freeze 状態が消える不具合の修正やヒアドキュメントのインデントの処理の修正、RJIT の対応 VM 命令追加や最適化などがありました。 [cb22d78354] Peter Zhu…

ruby-trunk-changes 2023-03-18

今日は主に拡張ライブラリなどで T_TYPEDDATA 型オブジェクトの構造体メンバーの VALUE 型のものをマクロを利用して宣言することで mark/compact 関数を定義せずに処理できるようにする機構の導入や RJIT の VM 命令のサポートの拡張などがありました。 [11f…

ruby-trunk-changes 2023-03-17

今日は主に rubygems と bundler の更新や if/unless 文などの条件分岐の ISeq へのコンパイル時に静的に条件が判定できる場合に不要な部分をコンパイルしない最適化などがありました。 [364364c3bd] Mau Magnaguagno 2023-03-14 02:04:58 UTC rubygems の G…

ruby-trunk-changes 2023-03-16

今日は YJIT の実装のリファクタリングや小さな最適化、いくつかのテストの修正などがありました。 [77c8daa2d4] Aaron Patterson 2023-03-15 14:55:07 UTC YJIT の Rust 実装の JITState の ec を必須にする変更。 https://github.com/ruby/ruby/pull/7520 …

ruby-trunk-changes 2023-03-15

今日は Process.waitpid 系の実装のため SIGCHLD シグナルの扱いを特別扱いしていたのをやめる変更の再挑戦や ObjectSpace::WeakMap の GC.compact 対応の不具合修正などがありました。 [548086b34e] Jean Boussier 2023-03-14 08:12:55 UTC ObjectSpace::We…

ruby-trunk-changes 2023-03-14

今日は irb で BasicObject を表示するための対応の追加や先日の SIGCHLD の特別扱いを削除した変更を revert する変更などがありました。 [1095baed34] Stan Lo 2023-03-13 14:31:30 UTC irb でオブジェクトの inspect 結果を表示するために Kernel#is_a? …

ruby-trunk-changes 2023-03-13

今日は主に正規表現のマッチのメモ化による最適化がうまく効かないケースの修正などがありました。 [7ce4b716bd] Nobuyoshi Nakada 2023-03-12 09:50:39 UTC tool/lib/core_assertions.rb に assert_linear_performance という assertion メソッドを追加して…

ruby-trunk-changes 2023-03-12

今日は主に組み込みメソッドの ruby 実装で使う Primitive.attr! の実装と引数の名前の変更や RJIT の実装の整理などがありました。 [0c0c88d383] Takashi Kokubun 2023-03-11 21:32:58 UTC 組み込みメソッドの ruby 実装で使う Primitive.attr! メソッドの…

ruby-trunk-changes 2023-03-11

今日は組み込みメソッドの ruby 実装で利用する Primitive.attr! メソッドの引数を Symbol にする変更や RJIT のコード整理、RJIT 用コマンドラインオプションの追加などがありました。 [dd47ce10db] Ian Ker-Seymer 2023-02-06 19:19:18 UTC bundler の bun…

ruby-trunk-changes 2023-03-10

今日は昨日追加された VM 命令 defined_ivar を definedivar と改名する変更、gem pristine コマンドに --only-missing-extensions というオプションを追加する変更、YJIT の最適化などがありました。 [3926ad578c] Hiroshi SHIBATA 2023-03-09 06:42:07 UTC…

ruby-trunk-changes 2023-03-09

今日は主に ObjectSpace.trace_object_allocations のコールバック内で Variable Width Allocation を利用しているオブジェクトを生成すると異常終了する可能性があった不具合の修正や defined? をインスタンス変数に使う時の専用の VM 命令 defined_ivar の…

ruby-trunk-changes 2023-03-08

今日は RJIT(元 MJIT)関連のもう不要な実装の削除/整理や YJIT で rest 引数を持つメソッドを配列を splat して渡すメソッド呼び出しで呼ぶ時などのサポートの強化などがありました。 [638f68b2fe] Samuel Giddins 2023-03-07 01:13:49 UTC rubygems の Gem:…

ruby-trunk-changes 2023-03-07

今日は主に再実装に伴なって MJIT を RJIT と改名する変更や Thread::Mutex の Fiber で使った時の不具合修正などがありました。 [704dd25812] Jean Boussier 2023-02-06 08:29:39 UTC Thread の終了時に RB_INTERNAL_THREAD_HOOK() でフックを起動するのを …

ruby-trunk-changes 2023-03-06

今日は主に MJIT の再実装、irb の補完処理の不具合修正などがありました。 [1b4c1492c1] Burdette Lamar 2023-03-05 19:06:31 UTC 標準添付ライブラリ net/http の Net::HTTP クラスの rdoc 用コメントにメソッド一覧などを追加しています。 [fc5482d088] A…

ruby-trunk-changes 2023-03-05

今日は irb のメソッドチェイン時の補完処理をやめる変更や bundled gems の minitest のバージョン更新などがありました。 [191e4ae33f] Stan Lo 2023-03-04 15:34:44 UTC irb の補完処理でメソッドチェインしている時のメソッド名の補完を全てのメソッドか…

ruby-trunk-changes 2023-03-04

今日はインスタンス変数の管理の不具合修正、irb の補完処理の変更や標準添付ライブラリ reline の不具合修正などがありました。 [b49053a6be] tomoya ishida 2023-03-03 13:41:17 UTC irb の補完処理で ":" だけの状態でタブを押した時に Symbol を補完しよ…

ruby-trunk-changes 2023-03-03

今日は主に YJIT の不具合修正、Ractor::Selector#empty? メソッドの追加、Regexp.compile が timeout キーワード引数を受け取っていなかった不具合修正などがありました。 [da6ac30d1e] Stan Lo 2023-03-02 13:48:58 UTC 標準添付ライブラリ irb の gemspec…

ruby-trunk-changes 2023-03-02

今日は主に YJIT の生成コードサイズ削減の変更や Ractor のメッセージ送受信の排他処理の実装変更や Ractor::Selector クラスの導入などがありました。 [5e607cfa4c] Takashi Kokubun 2023-03-01 17:15:36 UTC YJIT の生成するコードサイズを小さくするため…