ruby-trunk-changes 2022-02-03

今日は標準添付ライブラリ net/http で IP アドレスでサーバーが指定されてる時の SNI を無効にする変更などがありました。

[94687a6826] Olle Jonsson 2022-02-02 12:06:23 UTC

標準添付ライブラリ net/protocol の gemspec ファイルの不要な spec.bindir と spec.executables の指定を削除しています。

[d8c54bac4a] Olle Jonsson 2022-02-02 12:20:16 UTC

標準添付ライブラリ net/protocol の gemspec ファイルの spec.summary と spec.description の typo 修正。

[af10771045] "S.H" 2022-02-02 13:52:55 UTC

transcode.c の econv_source_encoding() および econv_destination_encoding() から nil チェックをしつつ rb_encoding から Encoding オブジェクト(VALUE)に変換する処理を econv_get_encoding() という関数に切り出して共有するリファクタリング

[7b77d46671] Peter Zhu 2022-02-01 14:25:12 UTC

メモリ管理する heap 内の slot は従来 struct RVALUE のサイズにしていましたが、これを BASE_SLOT_SIZE という定数マクロで定義しておくようにしています。コミットログをみて一瞬 Variable Width Allocation が有効なビルドでは slot のサイズを大きくするのかと思いましたが、現時点ではそういうわけではなくて sizeof(RVALUE) としているところを定数マクロにするようにしているだけのようです。

[2913a2f5cf] Jemma Issroff 2022-02-02 14:14:59 UTC

クラス変数の inline cache のために TS_ICVARC という新たな定数を導入して TS_IVC を使いまわしていたのをやめています。 ISeq の互換性がなくなるのかな?

[3ca244a29a] git 2022-02-02 17:21:00 UTC

version.h の日付更新

[7529c53891] Jeremy Evans 2022-01-04 18:22:37 UTC

標準添付ライブラリ net/http の Net::HTTP#connect でサーバーが IP アドレスで指定されていた時には SNI (Servver Name Indication) を無効化するようにしています。 RFC を厳密に適用するようにしたというのと、LibreSSL で hostname= に IP アドレスを渡すとエラーになるようになってたのでそれを抑制するためとのこと。

[8f3a36fb6e] Nobuyoshi Nakada 2022-02-03 02:21:41 UTC

2913a2f5cfceb6d6b411e165d9c723bd2435eacd の変更による compile.c と iseq.c のインデントの修正のみ。