-*- coding: utf-8 -*-

commit 8f611e0c46012e321b39efd629eb5f4f53976863
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-07-24 17:24:13 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-07-24 17:27:18 +0900

    bump teeny

commit 2417ed9275eaea69fd52f83ec810d21d9486598b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-07-24 13:11:55 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-07-24 14:39:20 +0900

    Update dependencies

commit b2cd6d71bbb7e66cdb8067259ec607f270700977
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2025-05-12 10:17:49 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-07-24 14:39:20 +0900

    Cast up `int` instruction code to `VALUE`

    Fix Visual C warnings:
    ```
    iseq.c(3793): warning C4312: 'type cast': conversion from 'int' to 'void *' of greater size
    iseq.c(3794): warning C4312: 'type cast': conversion from 'int' to 'void *' of greater size
    ```

commit 2509297258b40f8b55bee252611efc28a12f2f67
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2025-05-12 10:16:11 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-07-24 14:39:20 +0900

    Separate `__has_attribute` from `defined(__has_attribute)`

    Fix Visual C warnings:
    ```
    regenc.h(121): warning C4067: unexpected tokens following preprocessor directive - expected a newline
    ```

commit e26e8423b5b8a375a8fd6412a99eb6a8cc73cf2c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2025-04-30 18:35:25 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-07-24 14:39:20 +0900

    Suppress gcc 15 unterminated-string-initialization warnings

commit 7e6bbc40c8781bff4d99f0ab2a363016bc5ffadd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2025-07-01 17:38:25 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-07-24 12:21:34 +0900

    [ruby/io-wait] Run `have_func` with the header providing the declarations

    https://github.com/ruby/io-wait/commit/48309d7877

commit 5c74f2a79bb1b184d5eea975178007e2da1816ed
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2025-07-01 17:38:25 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-07-24 12:21:34 +0900

    [ruby/json] Run `have_func` with the header providing the declarations

    https://github.com/ruby/json/commit/95fb084027

commit f82b9d8d7b29130d27f5c13aa3bdd2ed3f9a57c8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2025-07-01 17:38:25 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-07-24 12:21:34 +0900

    [ruby/strscan] Run `have_func` with the header providing the declarations

    https://github.com/ruby/strscan/commit/18c0a59b65

commit eba9fa20b5421deda53961f09dadc04f3f92ff7e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2025-06-12 10:32:49 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-07-24 12:21:34 +0900

    [ruby/strscan] Update extconf.rb
    (https://github.com/ruby/strscan/pull/158)

    - `have_func` includes "ruby.h" by default.
    - include "ruby/re.h" where `rb_reg_onig_match` is declared.

    https://github.com/ruby/strscan/commit/1ac96f47e9

commit 9f00b8872d3e294312c99150f1c34b6b3fa74985
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-07-08 16:36:33 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-07-09 06:18:51 +0900

    Bump up resolv-0.2.3 for Ruby 3.2

commit bd7d210d1c33d78a364d18f0c346bb63e69bb6ad
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2025-05-26 20:11:41 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-06-25 14:33:23 +0900

    Win: Suppress false warnings from Visual C 17.14.1

    https://developercommunity.visualstudio.com/t/warning-C5287:-operands-are-different-e/10877942?

    It is not able to silence "operands are different enum types"
    warnings, even using an explicit cast, as the message says.

commit 8eadf30cf464e040f95f9d11b832b35a96afea99
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-06-25 12:29:06 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-06-25 13:28:38 +0900

    Removed unnecessary winsdk version

commit 051e5f54ccaef1721796252af259530b82c44211
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2025-05-26 20:37:14 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-06-25 13:28:38 +0900

    [Bug #21255] Win32: Do not export `__declspec(selectany)` symbols

    ```
    x64-vcruntime140-ruby350.def : error LNK2001: unresolved external symbol Avx2WmemEnabledWeakValue
    ```

commit d946d65cea2468086932bb95d77ac2f93b9f67b9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2025-05-12 14:16:06 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-06-06 08:33:30 +0900

    Detect `clock_gettime` and `clock_getres` for winpthreads

commit cce19c9c252f53a1c31c9b3962d773007e20891d
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-05-23 14:57:51 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-28 10:38:11 +0900

    Fixed cache key of vcpkg installed artifacts

commit 7e3c8174694f633bccb52132321b8ef7d6f83605
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-05-23 14:48:58 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-28 10:38:11 +0900

    Don't store download cache of vcpkg

commit 161aede142c8a10f7858f79549bf9d66ac107fcd
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-05-21 17:39:13 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-23 07:39:44 +0900

    Disabled TRAP cache of CodeQL

commit 5862be0e89260e597d3dd3d350e7ecb40ee62cce
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-05-22 15:27:34 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-22 18:32:10 +0900

    Skip failing tests with mingw platform

    https://github.com/ruby/ruby/actions/runs/15159221855/job/42621232822?pr=13397

    ```
      1)
      File.atime returns the last access time for the named file with microseconds FAILED
      Expected 0 == 123456
      to be truthy but was false
      D:/a/ruby/ruby/src/spec/ruby/core/file/atime_spec.rb:26:in `block (3 levels) in <top (required)>'
      D:/a/ruby/ruby/src/spec/ruby/core/file/atime_spec.rb:3:in `<top (required)>'

      2)
      File.ctime returns the change time for the named file (the time at which directory information about the file was changed, not the file itself) with microseconds. FAILED
      Expected 0 > 0
      to be truthy but was false
      D:/a/ruby/ruby/src/spec/ruby/core/file/ctime_spec.rb:21:in `block (3 levels) in <top (required)>'
      D:/a/ruby/ruby/src/spec/ruby/core/file/ctime_spec.rb:3:in `<top (required)>'

      3)
      File.utime sets the access and modification time of each file FAILED
      Expected 2025-05-21 10:30:54 +0000
      to be within 2025-05-21 10:30:54 +0000 +/- 0.0001
      D:/a/ruby/ruby/src/spec/ruby/core/file/utime_spec.rb:25:in `block (2 levels) in <top (required)>'
      D:/a/ruby/ruby/src/spec/ruby/core/file/utime_spec.rb:3:in `<top (required)>'

      4)
      File.mtime returns the modification Time of the file with microseconds FAILED
      Expected 0 == 123456
      to be truthy but was false
      D:/a/ruby/ruby/src/spec/ruby/core/file/mtime_spec.rb:25:in `block (3 levels) in <top (required)>'
      D:/a/ruby/ruby/src/spec/ruby/core/file/mtime_spec.rb:3:in `<top (required)>'
    ```

    It may be fixed with https://github.com/ruby/ruby/commit/7aea269b89bd7024bcacb7fe7d4ddb0be2f215af.
    But Ruby 3.2 is now security maintenance status. We can't backport it.

commit b7aca78cee41f59d7724c9fff7805dcb4f9411e1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2024-06-21 16:00:16 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-22 18:32:10 +0900

    [ruby/io-console] Use gperf 3.1 to generate ANSI-C code

    https://github.com/ruby/io-console/commit/3798aae42d

commit c239069d07c860e5b01ca139cf322b7535405686
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2025-05-11 14:47:02 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-22 18:32:10 +0900

    Fix redefinition of `clock_gettime` and `clock_getres`

    winpthreads-git 12.0.0.r720 provides `clock_gettime` and
    `clock_getres` as inline functions.

commit 395e5de8d47fe61da470c45bc20be7bfe66e07c0
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-05-21 18:16:48 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-22 18:32:10 +0900

    Update the latest version of ruby/setup-ruby

commit f91480d7a671b1b114270a4b5e4d3c5aa6dabce9
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-05-13 11:20:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-13 11:22:38 +0900

    merge revision(s) 719486a642f0e282b02b958069b8b39b85b3aa1e: [Backport #21286]

            Fix C23 (GCC 15) WIN32 compatibility for rb_define_* functions

            Fixes [Bug #21286]

commit b133b39705a862cb14df216560e2babb680c6aa6
  Author:     nick evans <nick@rubinick.dev>
  AuthorDate: 2025-05-01 02:01:17 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-01 20:33:38 +0900

    Bump net-imap to v0.3.9 for Ruby 3.2 (CVE-2025-43857)

    This update addresses CVE-2025-43857 (GHSA-j3g3-5qv5-52mj).

commit d274682728d68f06b16e638dec23452de30b833b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-05-01 13:37:40 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-01 14:19:08 +0900

    Use system vcpkg command for windows-2022 image

commit 9597813f9dda4cbb12a7998bfcccff86dbf1d500
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-05-01 12:10:56 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-01 14:19:08 +0900

    Bump up the latest version of actions

commit 09a5f7a4f39cb3712084a7c2344b98ba28a914df
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-01-16 18:02:16 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-01 14:19:08 +0900

    Use configu.guess with wasi compatible version

commit 42a993a9b4fde86b9c664d28f83fdf5ce2c56d48
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-05-01 11:53:41 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-01 14:19:08 +0900

    Bump up clang-14 with mjit-bindgen job

commit ac91a472062a5e627a0f3a961408f66fd3f7cfb4
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-05-01 11:52:09 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-01 14:19:08 +0900

    Removed unused auto_request_review

commit 3ae7535a4e2a4ce8ca75fd025682cd2bf4f7b6f5
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-05-01 11:44:01 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-01 14:19:08 +0900

    Use windows-2022 because windows-2019 is EOL at June 2025

commit f274a4ea42fbee2c8d682edf5871f8dc4f30290e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-05-01 11:42:12 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-01 14:19:08 +0900

    Bump up clang-14 with yjit-bindgen job

commit a4b4e86a19b7ef5ed2b327414f087261ef3bda3e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-05-01 11:41:49 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-05-01 14:19:08 +0900

    ubuntu-20.04 is retired

commit 647e1ff938318615b69eb22f8eb8035510a20372
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-04-03 19:30:24 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-04-04 07:38:56 +0900

    Use EnvUtil.apply_timeout_scale

commit fa95d1b0b8f69625cfac0843d02b9cff6cae01dd
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-04-03 19:07:08 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-04-04 07:38:56 +0900

    Extend open_timeout for test failure on s390x

    https://rubyci.s3.amazonaws.com/s390x/ruby-master/log/20250403T060004Z.fail.html.gz

commit b79909fc5ab0979eabb3d04c5d58388e760197c6
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-04-03 18:57:46 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-04-03 19:36:39 +0900

    Followed up 7c400c66c9

commit 7c400c66c9b30f5cbc40b37a7fb1feb7d2d31c63
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-04-03 14:18:55 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-04-03 14:44:09 +0900

    Use IPv4 for test server because TestNetHTTPS is failing with s390x

    https://rubyci.s3.amazonaws.com/s390x/ruby-3.2/log/20250403T005659Z.fail.html.gz

commit 105d9da252669fd80803e40b0348edd0974ff502
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-04-03 09:40:11 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-04-03 14:10:36 +0900

    Enforce to use CMake 3 because CMake 4 is not compatible to build libyaml via vcpkg

commit d75d4275e421cecf2485fb110273592359336117
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-04-01 15:20:17 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-04-02 10:37:08 +0900

    [rubygems/rubygems] Bump up minimum required version for cmake 4

    https://github.com/rubygems/rubygems/commit/3e77caeddf

commit 13f495dc2c98d0762d9af37e7143d2e2a07d9926
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-26 13:18:02 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-26 13:18:02 +0900

    bump teeny

commit a56c2fb37559bc2df39f9930d6174f8f82f65313
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2025-03-21 02:19:58 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-24 13:24:21 +0900

    [rubygems/rubygems] Support git 2.49

    One error message that we parse is now slightly different.

    https://github.com/rubygems/rubygems/commit/758528791d

commit 469a0a4a08dc4b3d3b6387b1f569108cc0750f17
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-13 13:34:24 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-13 14:27:06 +0900

    merge revision(s) da4464b824857d7610f9865ceb452ce0ead49164: [Backport #19426]

            [Bug #19426] Fix endless `Range#step` with `#succ` method

commit 998c26cd28e225b701aee00ad8f91694ba7d383a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-13 13:29:59 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-13 14:27:06 +0900

    merge revision(s) 79eb75a8dd64848f23e9efc465f06326b5d4b680: [Backport #20025]

            [Bug #20025] Check if upper/lower before fallback to case-folding

commit 774e3f0003ac53d604fb5dd080faf9cb41c21bcd
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-13 13:28:51 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-13 14:27:06 +0900

    merge revision(s) 08b3a45bc97c835b4677bf76dbce68fd51d81897: [Backport #21180]

            Push a real iseq in rb_vm_push_frame_fname()

            Previously, vm_make_env_each() (used during proc
            creation and for the debug inspector C API) picked up the
            non-GC-allocated iseq that rb_vm_push_frame_fname() creates,
            which led to a SEGV when the GC tried to mark the non GC object.

            Put a real iseq imemo instead. Speed should be about the same since
            the old code also did a imemo allocation and a malloc allocation.

            Real iseq allows ironing out the special-casing of dummy frames in
            rb_execution_context_mark() and rb_execution_context_update(). A check
            is added to RubyVM::ISeq#eval, though, to stop attempts to run dummy
            iseqs.

            [Bug #21180]

            Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>

commit f89a334b555d9f91f0bb5a7c58b3097960dd7fb8
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-13 13:26:38 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-13 14:27:06 +0900

    merge revision(s) bccec7fb468ad977be75e7e4c2644b4ea845ab0c, 5f8ebcada099351acbc22db264e7cd3773c2bdc4, e13575bb7938e9e5b6a79bfca1b3793123f479da, 4adcfc8cd7a17593a6590025da2b03eebf4fd63c: [Backport #19584]

            Fix crash in rb_gc_register_address

            [Bug #19584]

            Some C extensions pass a pointer to a global variable to
            rb_gc_register_address. However, if a GC is triggered inside of
            rb_gc_register_address, then the object could get swept since it does
            not exist on the stack.

            [Bug #19584] Register global variable address before assignment

            [Bug #19584] Register global variables before assignment

            [Bug #19584] [DOC] Tweek description of `rb_gc_register_address`

commit 2c4951329122143b5e0375caf1d4481173e403cb
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-12 18:35:40 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-13 14:27:06 +0900

    it is not working with Ruby 3.2

commit 64d93539e78fc3c8c4527dded8f7f4288f7ff1ae
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-12 18:15:12 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-13 14:27:06 +0900

    Merge strscan-3.0.7

commit 30379fa1e25c2dbc887e5ee80ddd601bfdd9f20b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-12 18:14:58 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-13 14:27:06 +0900

    Merge strscan-3.0.6

commit 6dd8bd0d9090d0a347b90479d441884fcaa1629a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-12 18:09:32 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-13 14:27:06 +0900

    merge revision(s) f423f6e10c0c226dfed98e7cb7a5d489191dfa35: [Backport #21131]

            Ensure IO.copy_stream buffer is an independent string

            Otherwise, changes to the buffer by the destination write method
            could result in data changing for supposedly independent strings.

            Fixes [Bug #21131]

commit 1c9af6c10f97c0b612492fa63842c78ea2b8da56
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-12 18:08:38 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-13 14:27:06 +0900

    merge revision(s) d4a1a2780c39bc648496ac92fc6e6ce2eb38ab47: [Backport #21032]

            rb_feature_p: skip `get_expanded_load_path` for absolute paths

            Ref: https://github.com/fxn/zeitwerk/pull/308

            ```ruby
            require 'benchmark'

            $LOAD_PATH << 'relative-path'

            autoload :FOO, '/tmp/foo.rb'

            puts Benchmark.realtime {
              500_000.times do
                Object.autoload?(:FOO)
              end
            }
            ```

            The above script takes 2.5 seconds on `master`, and only
            50ms on this branch.

            When we're looking for a feature with an absolute path, we don't
            need to call the expensive `get_expanded_load_path`.

commit 0ef3411b98823a1cd12fda5209f09b5242a41562
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-12 17:56:55 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-13 14:27:06 +0900

    merge revision(s) 647390308239fbf82d159ecd83ed8df090af518d: [Backport #18257]

            [Bug #18257] Register the class path of FrozenCore to mark

            ICLASS does not have the path usually, so it needs to be registered
            separately.

commit f7ec9546ee07298f5d0aed6fc245e2405fe950bc
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-10 15:48:58 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-10 15:48:58 +0900

    merge revision(s) 3f07bc76ff6a11232d9f18e5eaa31835c195e8f0, 34098b669c0cbc024cd08e686891f1dfe0a10aaf: [Backport #21144]

            [Bug #21144] Win32: Use Windows time zone ID if TZ is not set

            If the TZ environment variable is not set, the time zone names
            retrieved from the system are localized for UI display and may vary
            across editions and language packs for the same time zone.
            Use the time zone IDs that are invariant across environments instead.

            [Bug #21144] Win32: Convert the time zone name to the current locale

            The Windows time zone IDs provided by Microsoft as of 24H1 are ASCII
            only all, but the API itself is not impossible to set non-ASCII key
            name.  Prefer the current locale encoding for now until we move to
            UTF-8 including environment variables and command line arguments.

commit d635eb5156e07101a62217d5f70d9d080fb96f1f
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-10 15:48:05 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-10 15:48:27 +0900

    Update the latest version of redmine-backporter.rb and merger.rb

commit bb6b3c98dc06b92c48928d8c7f942b3dfd990089
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2025-03-06 07:21:48 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-06 11:05:43 +0900

    Replace tombstone when converting AR to ST hash

    [Bug #21170]

    st_table reserves -1 as a special hash value to indicate that an entry
    has been deleted. So that that's a valid value to be returned from the
    hash function, do_hash replaces -1 with 0 so that it is not mistaken for
    the sentinel.

    Previously, when upgrading an AR table to an ST table,
    rb_st_add_direct_with_hash was used which did not perform the same
    conversion, this could lead to a hash in a broken state where one if its
    entries which was supposed to exist being marked as a tombstone.

    The hash could then become further corrupted when the ST table required
    resizing as the falsely tombstoned entry would be skipped but it would
    be counted in num entries, leading to an uninitialized entry at index
    15.

    In most cases this will be really rare, unless using a very poorly
    implemented custom hash function.

    This also adds two debug assertions, one that st_add_direct_with_hash
    does not receive the reserved hash value, and a second in
    rebuild_table_with, which ensures that after we rebuild/compact a table
    it contains the expected number of elements.

    Co-authored-by: Alan Wu <alanwu@ruby-lang.org>

commit 977d711ba103f1d6b9656e891461a1c0e5cb35f8
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-03-06 08:39:49 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-03-06 09:52:09 +0900

    Update actions/checkout and actions/cache and others

commit d6517a3ddee82a18bcf8917f8da1f56c549bcc69
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-02-28 15:54:12 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-02-28 17:02:07 +0900

    Skip VS2022 17.13.x build

    see https://github.com/ruby/ruby/pull/12830

commit 98fc456891c0dbf3b4bccdb7a89d05d485cd0b2a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-02-28 15:06:44 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-02-28 15:06:44 +0900

    merge revision(s) 2b6fc9ea7212543a1be26768403f59c7a759b5ea: [Backport #21092]

            [Bug #21092] Fallback variables after execonf has done

            When reading from a dummy makefile, the global variables initialized
            in `init_mkmf` may not be overridden.
            ---
             ext/extmk.rb | 6 +++---
             1 file changed, 3 insertions(+), 3 deletions(-)

commit 9e5d68f03f6800b0ccde3bee32ac1789a1d0dc14
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-02-26 18:12:00 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-02-26 19:19:19 +0900

    Merge cgi-0.3.7

commit 946907f218e4bbef7f7a215962fcb7c97f94b7d3
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2025-02-26 18:11:46 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-02-26 19:19:19 +0900

    Merge uri-0.12.4

commit 164aaf6a47879db6c938fd388da8fcd83410b073
  Author:     nick evans <nick@rubinick.dev>
  AuthorDate: 2025-02-11 23:18:10 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2025-02-14 11:50:48 +0900

    Bump net-imap to 0.3.8 for Ruby 3.2 (CVE-2025-25186)

    This update addresses CVE-2025-25186 (GHSA-7fc5-f82f-cx69).

commit 02ec31524440656c4e1d3f2d84dfbd15d2c63658
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2025-02-04 20:33:29 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2025-02-04 20:33:29 +0900

    bump teeny

commit 7c0c2df9b497dbf9c1376a995eebe6d43a00e21b
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2025-01-25 14:51:31 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2025-01-25 14:51:31 +0900

    merge revision(s) dd80d9b089e35729d585bae2f8866c845c48f3b7: [Backport #20997]

            YJIT: Filter `&` calls from specialized C method codegen

            Evident with the crash reported in [Bug #20997], the C replacement
            codegen functions aren't authored to handle block arguments (nor
            should they because the extra code from the complexity defeats
            optimization). Filter sites with VM_CALL_ARGS_BLOCKARG.

commit 97243cc9c76b9cc2803cfd1c01165ab5bd432450
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2025-01-25 14:39:22 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2025-01-25 14:39:22 +0900

    merge revision(s) 04ec07794657cd2444ecb001a522b9df2db1b90a: [Backport #21038]

            Preserve `errno` in `rb_fiber_scheduler_unblock`. (#12576)

            [Bug #21038]

            Co-authored-by: Julian Scheid <julians37@gmail.com>

commit f9adaab928dff8dd7ecd4c560c288300a3c74880
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2025-01-25 14:37:41 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2025-01-25 14:37:41 +0900

    merge revision(s) e0d600ec190c64aff76cfcbd6009cffb927da166: [Backport #21012]

            Avoid opt_aset_with optimization inside multiple assignment

            Previously, since the opt_aset_with optimization was introduced,
            use of the opt_aset_with optimization inside multiple assignment
            would result in a segfault or incorrect instructions.

            Fixes [Bug #21012]

            Co-authored-by: Nobuyoshi Nakada <nobu.nakada@gmail.com>

commit 845763fdf370846938b86a062827b237313c924f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2025-01-11 15:32:49 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2025-01-11 15:32:49 +0900

    merge revision(s) b176d4f52e4af67654814dab3e9c5f4bf9170e54: [Backport #21008]

            [Bug #21008] Normalize before sum to float

            After switching to `Float`-mode when summing `Numeric` objects,
            normalization for `Float` is still needed.

commit f150d67b7d389eb88e0cd13694d3529895d55579
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2025-01-11 15:30:06 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2025-01-11 15:30:06 +0900

    merge revision(s) 8034e9c3d001ca3dff124ab42972684eac8af2ae: [Backport #20995]

            [Bug #20995] Protect `IO.popen` block from exiting by exception

commit 4e59c10646cf012d457da99ad258b0e6a3e42132
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2025-01-11 15:28:05 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2025-01-11 15:28:05 +0900

    merge revision(s) 19c39e4cfaa467e69b9848c9c5496d7f50d39c7f, d78ff6a767ca813ac5fa178dd7611f20a993c191: [Backport #20984]

            [Bug #20984] ENV.inspect should be encoding aware

            [Bug #20984] Fix test with locale encoding

commit 1d57924d693534b10699a375cb8400e57a67031c
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-12-21 13:31:11 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-12-21 13:31:11 +0900

    merge revision(s) a1758fbd7fe7406601b0eb1617752db59b83586a:

            Crash when malloc during GC

            This feature was introduced in commit 2ccf6e5, but I realized that
            using rb_warn is a bad idea because it allocates objects, which causes
            a different crash ("object allocation during garbage collection phase").
            We should just hard crash here instead.

commit 3110d5c8abf8f710de42989fbc35870287a12f75
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-12-15 16:18:43 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-12-15 16:18:43 +0900

    merge revision(s) e90b447655dd39ad1eb645cdaae450efd605db00: [Backport #20924]

            [Bug #20924] Fix reading with delimiter in wide character encodings

commit 59254caff0f39c87370d0c11793e3aae5c38d6e1
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-12-15 15:31:58 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-12-15 15:31:58 +0900

    merge revision(s) 055613fd868a8c94e43893f8c58a00cdd2a81f6d: [Backport #20447]

            Fix pointer incompatiblity

            Since the subsecond part is discarded, WIDEVAL to VALUE conversion is
            needed.

commit 303a83d35c485db626c57415b344fdd4a8d0d5e5
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-12-15 15:28:25 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-12-15 15:28:25 +0900

    merge revision(s) 660b995365f719fa59ed6f2809bb1527e6470d14: [Backport #20915]

            [Bug #20915] Fix SEGV with `TracePoint#parameters` and aliased C method

            The following snippet results with a SEGV:

            ```ruby
            C = Class.new do
              alias_method :new_to_s, :to_s
            end

            TracePoint.new(:c_call, &:parameters).enable { C.new.new_to_s }
            ```

            at MRI 3.3.6 and ruby 3.4.0dev

            The root cause of the issue lies in the `rb_tracearg_parameters` function
            within the `RUBY_EVENT_C_RETURN` branch. Specifically, when the invoked
            method is an alias for a C function,
            `rb_method_entry_without_refinements(..., trace_arg->called_id, ...)`
            may return NULL. In that case we can fallback to `trace_arg->id`.

commit d78e1a413333bae4e70e662ac7eceb378b2a5369
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-12-15 15:26:55 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-12-15 15:26:55 +0900

    merge revision(s) f65a6c090c229de1665af49f2e51fc1d6397ab72: [Backport #20921]

            Fix use-after-free in constant cache

            [Bug #20921]

            When we create a cache entry for a constant, the following sequence of
            events could happen:

            - vm_track_constant_cache is called to insert a constant cache.
            - In vm_track_constant_cache, we first look up the ST table for the ID
              of the constant. Assume the ST table exists because another iseq also
              holds a cache entry for this ID.
            - We then insert into this ST table with the iseq_inline_constant_cache.
            - However, while inserting into this ST table, it allocates memory, which
              could trigger a GC. Assume that it does trigger a GC.
            - The GC frees the one and only other iseq that holds a cache entry for
              this ID.
            - In remove_from_constant_cache, it will appear that the ST table is now
              empty because there are no more iseq with cache entries for this ID, so
              we free the ST table.
            - We complete GC and continue our st_insert. However, this ST table has
              been freed so we now have a use-after-free.

            This issue is very hard to reproduce, because it requires that the GC runs
            at a very specific time. However, we can make it show up by applying this
            patch which runs GC right before the st_insert to mimic the st_insert
            triggering a GC:

                diff --git a/vm_insnhelper.c b/vm_insnhelper.c
                index 3cb23f06f0..a93998136a 100644
                --- a/vm_insnhelper.c
                +++ b/vm_insnhelper.c
                @@ -6338,6 +6338,10 @@ vm_track_constant_cache(ID id, void *ic)
                        rb_id_table_insert(const_cache, id, (VALUE)ics);
                    }

                +    if (id == rb_intern("MyConstant")) rb_gc();
                +
                    st_insert(ics, (st_data_t) ic, (st_data_t) Qtrue);
                }

            And if we run this script:

                Object.const_set("MyConstant", "Hello!")

                my_proc = eval("-> { MyConstant }")
                my_proc.call

                my_proc = eval("-> { MyConstant }")
                my_proc.call

            We can see that ASAN outputs a use-after-free error:

                ==36540==ERROR: AddressSanitizer: heap-use-after-free on address 0x606000049528 at pc 0x000102f3ceac bp 0x00016d607a70 sp 0x00016d607a68
                READ of size 8 at 0x606000049528 thread T0
                    #0 0x102f3cea8 in do_hash st.c:321
                    #1 0x102f3ddd0 in rb_st_insert st.c:1132
                    #2 0x103140700 in vm_track_constant_cache vm_insnhelper.c:6345
                    #3 0x1030b91d8 in vm_ic_track_const_chain vm_insnhelper.c:6356
                    #4 0x1030b8cf8 in rb_vm_opt_getconstant_path vm_insnhelper.c:6424
                    #5 0x1030bc1e0 in vm_exec_core insns.def:263
                    #6 0x1030b55fc in rb_vm_exec vm.c:2585
                    #7 0x1030fe0ac in rb_iseq_eval_main vm.c:2851
                    #8 0x102a82588 in rb_ec_exec_node eval.c:281
                    #9 0x102a81fe0 in ruby_run_node eval.c:319
                    #10 0x1027f3db4 in rb_main main.c:43
                    #11 0x1027f3bd4 in main main.c:68
                    #12 0x183900270  (<unknown module>)

                0x606000049528 is located 8 bytes inside of 56-byte region [0x606000049520,0x606000049558)
                freed by thread T0 here:
                    #0 0x104174d40 in free+0x98 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x54d40)
                    #1 0x102ada89c in rb_gc_impl_free default.c:8183
                    #2 0x102ada7dc in ruby_sized_xfree gc.c:4507
                    #3 0x102ac4d34 in ruby_xfree gc.c:4518
                    #4 0x102f3cb34 in rb_st_free_table st.c:663
                    #5 0x102bd52d8 in remove_from_constant_cache iseq.c:119
                    #6 0x102bbe2cc in iseq_clear_ic_references iseq.c:153
                    #7 0x102bbd2a0 in rb_iseq_free iseq.c:166
                    #8 0x102b32ed0 in rb_imemo_free imemo.c:564
                    #9 0x102ac4b44 in rb_gc_obj_free gc.c:1407
                    #10 0x102af4290 in gc_sweep_plane default.c:3546
                    #11 0x102af3bdc in gc_sweep_page default.c:3634
                    #12 0x102aeb140 in gc_sweep_step default.c:3906
                    #13 0x102aeadf0 in gc_sweep_rest default.c:3978
                    #14 0x102ae4714 in gc_sweep default.c:4155
                    #15 0x102af8474 in gc_start default.c:6484
                    #16 0x102afbe30 in garbage_collect default.c:6363
                    #17 0x102ad37f0 in rb_gc_impl_start default.c:6816
                    #18 0x102ad3634 in rb_gc gc.c:3624
                    #19 0x1031406ec in vm_track_constant_cache vm_insnhelper.c:6342
                    #20 0x1030b91d8 in vm_ic_track_const_chain vm_insnhelper.c:6356
                    #21 0x1030b8cf8 in rb_vm_opt_getconstant_path vm_insnhelper.c:6424
                    #22 0x1030bc1e0 in vm_exec_core insns.def:263
                    #23 0x1030b55fc in rb_vm_exec vm.c:2585
                    #24 0x1030fe0ac in rb_iseq_eval_main vm.c:2851
                    #25 0x102a82588 in rb_ec_exec_node eval.c:281
                    #26 0x102a81fe0 in ruby_run_node eval.c:319
                    #27 0x1027f3db4 in rb_main main.c:43
                    #28 0x1027f3bd4 in main main.c:68
                    #29 0x183900270  (<unknown module>)

                previously allocated by thread T0 here:
                    #0 0x104174c04 in malloc+0x94 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x54c04)
                    #1 0x102ada0ec in rb_gc_impl_malloc default.c:8198
                    #2 0x102acee44 in ruby_xmalloc gc.c:4438
                    #3 0x102f3c85c in rb_st_init_table_with_size st.c:571
                    #4 0x102f3c900 in rb_st_init_table st.c:600
                    #5 0x102f3c920 in rb_st_init_numtable st.c:608
                    #6 0x103140698 in vm_track_constant_cache vm_insnhelper.c:6337
                    #7 0x1030b91d8 in vm_ic_track_const_chain vm_insnhelper.c:6356
                    #8 0x1030b8cf8 in rb_vm_opt_getconstant_path vm_insnhelper.c:6424
                    #9 0x1030bc1e0 in vm_exec_core insns.def:263
                    #10 0x1030b55fc in rb_vm_exec vm.c:2585
                    #11 0x1030fe0ac in rb_iseq_eval_main vm.c:2851
                    #12 0x102a82588 in rb_ec_exec_node eval.c:281
                    #13 0x102a81fe0 in ruby_run_node eval.c:319
                    #14 0x1027f3db4 in rb_main main.c:43
                    #15 0x1027f3bd4 in main main.c:68
                    #16 0x183900270  (<unknown module>)

            This commit fixes this bug by adding a inserting_constant_cache_id field
            to the VM, which stores the ID that is currently being inserted and, in
            remove_from_constant_cache, we don't free the ST table for ID equal to
            this one.

            Co-Authored-By: Alan Wu <alanwu@ruby-lang.org>

commit 1ae2b16d0014018c99a37e3e18531cdfa5f27f06
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-12-03 10:02:17 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-12-03 11:04:23 +0900

    Lock json-schema-5.1.0 for using pure ruby version

commit 937319126af801016d410226eb0cefc2c0b5ed32
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-11-30 18:34:32 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-30 18:34:32 +0900

    merge revision(s) 02b70256b5171d4b85ea7eeab836d3d7cfb3dbfc, 6b4f8945d600168bf530d21395da8293fbd5e8ba: [Backport #20909]

            Check negative integer underflow

            Many of Oniguruma functions need valid encoding strings

commit 87249cbddb5dbac16cb7f0fa33958a42389759cb
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-11-30 14:31:31 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-30 14:31:31 +0900

    merge revision(s) a8c2d5e7bee5fad0965baeb58d312ddc5932ec26: [Backport #20907]

            Ensure fiber scheduler re-acquires mutex when interrupted from sleep. (#12158)

            [Bug #20907]

commit bb065f08441aab8f97b45bd3f1600202547c9532
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-11-30 14:29:18 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-30 14:29:18 +0900

    merge revision(s) 3b7892b6e4d1a1a5d6019987f9b46ed443dd104f: [Backport #20871]

            Fix a bug in rb_include_module that stops nested inclusion into module subclasses

            This bug was present since the code was originally added by me
            in 3556a834a2847e52162d1d3302d4c64390df1694.

            Fixes [Bug #20871]

commit 1fc0895971812d5287b23d8cbb00529e425041c0
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-11-30 14:25:56 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-30 14:25:56 +0900

    merge revision(s) 0d4de0f4b1b9ac90be437bf1bac6851dd1d96fd0: [Backport #20898]

            wasm: align fiber stack pointer to 16 bytes

            In WebAssembly C ABI, the linear stack pointer must be always aligned
            to 16 bytes like other archs.
            The misaligned stack pointer causes some weird memory corruption since
            compiler assumes the aligned stack pointer.

commit d3098d2068770f8bdeca8fda06736cbebb8d3a5b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-11-21 12:14:49 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-22 08:06:01 +0900

    Removed extra assertions for Ruby 3.2

commit 9e1a78059dc1c2bee1159f7626a15de689f4fc1c
  Author:     KJ Tsanaktsidis <kj@kjtsanaktsidis.id.au>
  AuthorDate: 2023-11-27 15:33:08 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-22 08:06:01 +0900

    Fix flaky "Expected 499 to be >= 500" assertion in test_gc_compact.rb

    There have been some sproradically flaky tests related to GC compaction,
    which fail with:

      1) Failure:
    TestGCCompact#test_moving_hashes_down_size_pools [/test/ruby/test_gc_compact.rb:442]:
    Expected 499 to be >= 500.

    What's happening here, is that, _sometimes_, depending on very unlucky
    combinations of machine things, one of the expected-to-be-moved hashes
    might be found on the machine stack during GC, and thus pinned.

    One factor which seems to make this _more_ likely is that GCC 11 on
    Ubuntu 22.04 seems to want to allocate 440 bytes of stack space for
    `gc_start`, which is much more than it actually uses on the common code
    path. The result is that there are some 50-odd VALUE-sized cells "live"
    on the stack which may well contain valid heap pointers from previous
    function calls, and will need to be pinned.

    This is, of course, totally normal and expected; Ruby's GC is
    conservative and if there is the possibility that a VALUE might be live
    on the machine stack, it can't be moved. However, it does make these
    tests flaky.

    This commit "fixes" the tests by performing the work in a fiber; the
    fiber goes out of scope and should be collected by the call to
    verify_compaction_references, so there should be no references to the
    to-be-moved objects floating around on the machine stack.

    Fixes [#20021]

commit 9aa313f2f8ce2a437fe027a5d757f957b9aad5c8
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2023-07-31 23:26:43 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-22 08:06:01 +0900

    Assert that at least one element has been embedded

    It's not guaranteed that the first element will always be embedded.

commit c692229197af9088538dfd8c1234807867326e35
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2023-01-06 23:14:30 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-22 08:06:01 +0900

    Assert that resizing arrays will re-embed them

commit 605592b9becf55dab7fd00adfc9f10b9e4fa58b8
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2023-01-06 23:11:42 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-22 08:06:01 +0900

    Assert that resizing objects will re-embed them

commit ed41225edd5e5488db13785aac7180e613c07915
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-12-22 00:48:00 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-22 08:06:01 +0900

    Fix Error in GC Compaction specs

    Previously if any of the tests that move objects between size pools
    failed to move anything, then the call to stats.dig would return `nil`
    which would then cause assert_operator to error.

    This should be a test Failure, rather than an Error so this commit uses
    a default value of 0 if stats.dig fails to find a key.

    Also refactor object movement tests to use stats.dig, rather than :[]

commit 2861aa22d01a817d84842dec8cc7a57c01f96139
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2024-11-17 19:56:02 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-19 19:31:46 +0900

    Make `rb_ec_set_vm_stack` conformant to the C++11 requirement

    Https://learn.microsoft.com/en-us/cpp/build/reference/zc-inline-remove-unreferenced-comdat?view=msvc-140
    > If `/Zc:inline` is specified, the compiler enforces the C++11
    > requirement that all functions declared inline must have a definition
    > available in the same translation unit if they're used.

commit 0c8a3181c0ad21051a291d82cb24979bfa3bf2c4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2024-11-17 19:29:16 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-19 19:31:46 +0900

    Win32: Remove unreferenced COMDAT from object files

    Windows 11 SDK Version 10.0.26100.0 introduced a new internal inline
    function in ucrt/corecrt_math.h.  Even it appears in object files and
    will be included in the DEF file, it will be removed from the DLL and
    result in a linker error.

commit 3d6fe67f4237b244361a01e35b7b294297839f7d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2024-11-17 22:49:16 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-19 19:31:46 +0900

    Win32: Expose wchar main routine only

    Warned if both of `main` and `wmain` are exposed:
    ```
    LINK : warning LNK4067: ambiguous entry point; selected 'mainCRTStartup'
    ```

commit e5b29c89a0f797ffad29cf436e12273fe1817d5c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2024-11-10 21:31:43 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-19 19:31:46 +0900

    Make `MUNICODE_FLAG` simply expanded

    It is not expected that `target_os` will change going forward.

commit 104ba2edfb1ccfa382f2312e983d16206bd2a608
  Author:     Daisuke Fujimura (fd0) <booleanlabel@gmail.com>
  AuthorDate: 2024-11-06 21:28:19 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-19 19:31:46 +0900

    `EXE_LDFLAGS` uses the same `MUNICODE_FLAG`

commit fba0b48c8922d819b6b4e032ed34f08bd390fc65
  Author:     Daisuke Fujimura (fd0) <booleanlabel@gmail.com>
  AuthorDate: 2024-11-06 10:01:35 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-19 19:31:46 +0900

    `-municode` is available for MinGW-w64 targets only

commit c71f74c346f8727dd888c135ae06fe75dcabc4d4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2024-11-04 09:39:15 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-19 19:31:46 +0900

    Use wide character startup

    Mingw crt-git 12.0.0.r369.g0d4221712-1 now prohibits "command line
    contains characters that are not supported in the active code page".
    https://sourceforge.net/p/mingw-w64/mingw-w64/ci/0d42217123d3aec0341b79f6d959c76e09648a1e/

    Already Ruby builds `argv` in `rb_w32_sysinit`, instead of mswin- or
    mingw-made `argv`.  Just bypass the conversion in mingw crt.

commit 1e56c26ace1f9f5b8d2189ab00bee1cd8992795e
  Author:     MSP-Greg <Greg.mpls@gmail.com>
  AuthorDate: 2024-06-21 09:33:06 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-19 19:31:46 +0900

    [ruby/net-http] test_https.rb - fix test_session_reuse_but_expire

    https://github.com/ruby/net-http/commit/5544243c41

commit 870e5b2b4fc786f8513ff91a623ef67a0d16f940
  Author:     Job Snijders <job@sobornost.net>
  AuthorDate: 2024-03-25 21:20:13 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-19 19:31:46 +0900

    [ruby/openssl] Only CSR version 1 (encoded as 0) is allowed by PKIX standards

    RFC 2986, section 4.1 only defines version 1 for CSRs. This version
    is encoded as a 0. Starting with OpenSSL 3.3, setting the CSR version
    to anything but 1 fails.

    Do not attempt to generate a CSR with invalid version (which now fails)
    and invalidate the CSR in test_sign_and_verify_rsa_sha1 by changing its
    subject rather than using an invalid version.

    This commit fixes the following error.

    ```
     2) Error: test_version(OpenSSL::TestX509Request): OpenSSL::X509::RequestError:
    X509_REQ_set_version: passed invalid argument
    /home/runner/work/openssl/openssl/test/openssl/test_x509req.rb:18:in `version='
    /home/runner/work/openssl/openssl/test/openssl/test_x509req.rb:18:in `issue_csr'
    /home/runner/work/openssl/openssl/test/openssl/test_x509req.rb:43:in
    `test_version'
         40:     req = OpenSSL::X509::Request.new(req.to_der)
         41:     assert_equal(0, req.version)
         42:
      => 43:     req = issue_csr(1, @dn, @rsa1024, OpenSSL::Digest.new('SHA256'))
         44:     assert_equal(1, req.version)
         45:     req = OpenSSL::X509::Request.new(req.to_der)
         46:     assert_equal(1, req.version)
    ```

    https://github.com/ruby/openssl/commit/c06fdeb091

commit 910d10e4eefaf89d8e6605a4603cd3a938419aae
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-11-19 17:12:10 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-19 19:31:46 +0900

    Update minitest-5.25.1

    5.16.3 is flaky with `make test-bundled-gems`

    https://github.com/ruby/actions/actions/runs/11898853810/job/33156475298

commit a7b013b392ca0ba4930e579f4c9e40d99d871752
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-11-10 15:15:53 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-10 15:15:53 +0900

    merge revision(s) d71be7274bd2623bb521be72c245c08fc38d6ae4: [Backport #20873]

            [Bug #20873] Consider `-FIXNUM_MIN` overflow

            `-FIXNUM_MIN` is usually greater than `FIXNUM_MAX` on platforms using
            two's complement representation.

commit 9bcc5c5fd9e8e4d15040eec6850b49d860eba621
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2024-10-23 11:22:37 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-10 15:13:24 +0900

    Fix update_coderange for binary strings

    Although a binary (aka ASCII-8BIT) string will never have a broken
    coderange, it still has to differentiate between "valid" and "7bit".

    On Ruby 3.4/trunk this problem is masked because we now clear the
    coderange more agressively in rb_str_resize, and we happened to always
    be strinking this string, but we should not assume that.

    On Ruby 3.3 this created strings where `ascii_only?` was true in cases
    it shouldn't be as well as other problems.

    Fixes [Bug #20883]

    Co-authored-by: Daniel Colson <danieljamescolson@gmail.com>
    Co-authored-by: Matthew Draper <matthew@trebex.net>

commit ee3428aa0e3a11ed1574b7d99222f6f08737f818
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-11-10 13:04:43 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-10 13:04:43 +0900

    merge revision(s) 56ecc243e230e8e99761ec0ffc5116601f094bb0: [Backport #20868]

            [Bug #20868] Fix Method#hash to not change after compaction

            The hash value of a Method must remain constant after a compaction, otherwise
            it may not work as the key in a hash table.

            For example:

                def a; end

                # Need this method here because otherwise the iseq may be on the C stack
                # which would get pinned and not move during compaction
                def get_hash
                  method(:a).hash
                end

                puts get_hash # => 2993401401091578131

                GC.verify_compaction_references(expand_heap: true, toward: :empty)

                puts get_hash # => -2162775864511574135

commit 288e24b73ab20100b63ae7d30fb06a7d8a19de6e
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-11-10 12:31:36 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-10 12:55:34 +0900

    merge revision(s) 29c480dd6fca993590c82078ba797e2c4e876ac7: [Backport #20853]

            [Bug #20853] Fix Proc#hash to not change after compaction

            The hash value of a Proc must remain constant after a compaction, otherwise
            it may not work as the key in a hash table.

commit 31b58f89c682e2568c1d7b3299a13a64fbc846de
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-11-10 12:51:12 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-11-10 12:51:34 +0900

    backport 2a5354e59324cb296a423c73ec15ff9191086964 partially to make rb_any_hash() non-static.

commit 86fc40edfcdc57f999c5c02106ef554d73065660
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-11-06 13:59:28 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-11-06 15:35:34 +0900

    We should support ruby/spec with Ruby 3.1 and 3.2

commit 35bd3d110fb2b41b107423c26042c8404e295214
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-11-06 13:18:52 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-11-06 15:35:34 +0900

    Skip MinGW failure with GitHub Actions update

    We should fix this later

commit 2ad331acf6b7990361ead9d03382f4198206610a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-11-06 12:36:38 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-11-06 15:35:34 +0900

    Partly reverted from 449899b38314d0ecbe61e42d34398bdf2561b8e9

commit e548ff67ea1a769d79aece363fe93ce113b3a07c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-07-12 12:35:58 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-11-06 15:35:34 +0900

    Pend some tests because these are not working with macOS 15 and Xcode 16

commit 3bea0abd68172678ce9234e09a9604142d1a046b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-11-06 11:26:06 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-11-06 15:35:34 +0900

    Export homebrew's bison path to PATH environmental variable

commit e6ff23ef5b2fdce0a8bcafc7d71dd80abd3e73ee
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-11-06 11:14:48 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-11-06 15:35:34 +0900

    Retired macos-12 and added macos-14 and macos-15 on GitHub Actions

commit 7be9f5a6e502e3d831ffb96cda345ef3db797a26
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-11-06 10:55:11 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-11-06 15:35:34 +0900

    Fix test tail with mjit options for clang provided by Xcode 16

    ```
    clang: error: unknown argument '-emit-pch'; did you mean '-Xclang -emit-pch'?
    MJIT warning: Making precompiled header failed on compilation. Stopping MJIT worker...
    Successful MJIT finish
    ```

commit 63aeb018eb1cc0f7b00f955980711fd1bd94af7f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-10-30 18:47:11 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-30 18:47:11 +0900

    bump teeny

commit d09b47ddf569aeb443e3fb07b380062e825d47fc
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-10-28 13:31:57 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-28 13:31:57 +0900

    merge revision(s) 70d20ce473952e3a2e5b0aa4a6884886517ee3cc:

            Update bundled gems list

commit e55b1af2573eb21db57a06e5509f9868f288b583
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-10-20 14:21:15 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-20 14:21:15 +0900

    merge revision(s) ce20367a0e2f1fcfabebf3b6bea732fc71fa79f7: [Backport #20500]

            Define `incflags` also on mswin

commit 2fbae07c42f40ea43b4822e278cc92fb2415cb61
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-10-20 14:19:52 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-20 14:19:52 +0900

    merge revision(s) bcb3247072e6973d0f6b50ca5fed238d5824bd28: [Backport #20500]

            [Bug #19778] Pass additional include options to INCFLAGS in common.mk

commit f70e3254e067663e72e6d410370d231e4245e4f4
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-10-20 13:56:22 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-20 13:56:22 +0900

    merge revision(s) 5fa6ba9568e87e43e08a4daeba1572254c589fb1: [Backport #20500]

            [Bug #20500] Search non-default directories for jemalloc

            Co-Authored-by: lish82 (Hiroki Katagiri)

commit cb75fcef6feb126a67874109ce1503976a6f90cc
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-10-18 13:10:46 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-18 13:57:08 +0900

    merge revision(s) 6118e8a47394409b53164b60e79fadf348b97db3, dc64448202299633a235f310b8bf2192263f274f: [Backport #20716]

            Fix method caching bug when including/prepend module A that prepends module B

            Fix by always adding the generated iclass to the subclasses list,
            otherwise the method cache for the iclass is not cleared when
            the method in the module is overwritten.

            Fixes [Bug #20716]

            Remove an unused variable

commit 087e4ed6cc9da9cfca1a107058905446ff474bd1
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-10-18 13:03:48 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-18 13:57:08 +0900

    merge revision(s) 35e124832e29b65c84d4e0e4e434616859f9bdf5: [Backport #20755]

            [Bug #20755] Frozen string should not be writable via IO::Buffer

commit d85516eab59f932d65283572d0b9090005f60c20
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-10-01 11:39:25 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-18 12:59:30 +0900

    Disabled annocheck same as f5b6b3dba7b32dcd1f15c150dd78dce6c0d92b1e

commit 4873bbd6cc25311fb477bb8fe823d2ea16299717
  Author:     Jun Aruga <jaruga@redhat.com>
  AuthorDate: 2024-08-31 15:39:57 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-18 12:59:30 +0900

    .travis.yml: Drop all the pipelines due to jobs not starting.

    Remove `.travis.yml` as a temporary workaround.

commit dcad0ad9097583f71eac2ece22ad527305dc7bee
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-09-30 12:03:02 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-18 12:59:30 +0900

    -l option of 7z is unknown switch with the `ubuntu-latest`.

    https://github.com/ruby/actions/actions/runs/11095032727/job/30823174026#step:3:349

commit 5777fe5ab57d6479326bdb21ef9a6b88ea1516dc
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-10-18 11:30:05 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-18 11:30:05 +0900

    merge revision(s) 637067440f74043c6d79fc649ab8acf1afea25a5: [Backport #20752]

            [Bug #20752] Slice of readonly `IO::Buffer` also should be readonly

commit 18074c508105244552678cf6afd4b23304cb4c8f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-10-18 11:25:12 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-18 11:25:12 +0900

    merge revision(s) c1862cbb89a6bf42dcd07d92fe4f4bfeebca5775: [Backport #20719]

            [Bug #20719] `Float` argument must be ASCII compatible

commit 48af30b068729058c2f45375e67fa76f6240a228
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-10-18 11:22:30 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-18 11:22:30 +0900

    merge revision(s) d33e3d47b84a73b38644f2a3d41881ce9be6ef18: [Backport #20704]

            [Bug #20704] Win32: Fix chdir to non-ASCII path

            On Windows, `chdir` in compilers' runtime libraries uses the active
            code page, but command line arguments in ruby are always UTF-8, since
            commit:33ea2646b98adb49ae2e1781753bf22d33729ac0.

commit 3d4d5c8d8cca0c290a234fb3c47c035822b18add
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2024-10-03 20:11:36 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-04 10:09:39 +0900

    Add `IO::Buffer` tests for read and write with length & offset.

commit bc482e632c99f30db2e12aa51cc3b10b3b0f7886
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2024-10-03 19:58:36 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-10-04 10:09:39 +0900

    Fix size calcuation when offset is given + updated documentation.

commit 2d62c5d3d9a565fe50a3582124e6d4a58d130084
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-09-26 13:00:19 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-09-26 13:00:19 +0900

    merge revision(s) 0d16c36d0ab2afa2ec79b72b229e69c141ebdaba: [Backport #13831]

            [win32/registry] Fallback to UTF-8 for unknown codepages

            There are some codepages like cp708 for which no ruby encoding exists:

                $ ruby -e "Encoding.find('cp708')"
                Traceback (most recent call last):
                    1: from -e:1:in `<main>'
                -e:1:in `find': unknown encoding name - cp708 (ArgumentError)

            win32/registry uses ENCODING to transcode error messages and expand environment
            variables from UTF-16LE, so using UTF-8 seems like the best choice and is better
            than a hard failure.

            This should resolve [Bug #13831]

commit b6f7d544851ee8e1f6e4d151cc915b40f8b8e4f6
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-25 12:12:51 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-31 19:10:29 +0900

    merge revision(s) 29500e3034681a30045dea462d6bb653e8600738: [Backport #20698]

            Update bundled gems list as of 2024-08-22

commit 04fab1dfd956a536fa3683682f3e8f2707f6f8ce
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-31 19:09:13 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-31 19:09:13 +0900

    merge revision(s) bb849ffdb18305f01457de4e9848c830eb83a2d7:

            Added explicitly begin-end block for Ruby 2.4.

              strscan, ipaddr and some default gems still support Ruby 2.4.

              After this, I extract this CoreAssertions to their repositories.

commit f095a085a43b609be6282fcc27ab7fe859259dfc
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-31 18:51:41 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-31 18:51:41 +0900

    merge revision(s) 8a7e6f6852740e989ef8f679db5631306466a4ed:

            Improve base time of assert_linear_performance (#11369)

            Remove `.ceil` from base time calculation that makes 10x gap.
            This will make the assertion more strict and also less flaky.

commit f4847607ee52040fc62531f37001ea1a22acd856
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-31 18:49:58 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-31 18:49:58 +0900

    merge revision(s) f1c78b23313e63eb31a213cc7277b1eb206a581b:

            Suppress warning for shadowing outer local variable

commit b5bb0ee64b24251f103311e56168b96f5334cc6f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-31 18:49:27 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-31 18:49:27 +0900

    merge revision(s) d23964360335ad561f252cb6fe8e90df7ebee90e:

            core_assertions.rb: Support old rubies

            Some symbol argument might not be accepted by Process.clock_gettime.

commit bec6da392d26677194160cb4875f1bc491db27f5
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-31 18:49:12 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-31 18:49:12 +0900

    merge revision(s) 533423ebe46ebfe3005198c12aa0d2c899c695ea:

            core_assertions.rb: Prefer CPU time clocks

            To prevent influence from other processes.

commit 7c2cdca7f250d0b270df585f69f275f72c415348
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-31 18:48:57 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-31 18:48:57 +0900

    merge revision(s) f9eb2515a3221cced611b4de971b72a78a7a566f:

            core_assertions.rb: Extract common code block

commit 07d7ffeb9c2c6537883a1ea7b180eb04ecbe47e6
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-31 18:48:17 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-31 18:48:17 +0900

    merge revision(s) 3fe134759cc4904c74306e0832c22fa518a5bea2:

            Skip assert_linear_performance for RJIT

commit 00fada3890fe7bebbd660af3682eee6a8857b222
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-31 18:45:29 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-31 18:45:29 +0900

    merge revision(s) f07c756494b0e473ff8e4ece6f04c7ababe93b01:

            core_assertions.rb: Tweak timeout limit

            Increase the timeout limit when variance at rehearsal is small.

commit c96ba1fec4b4b80b60a08514bd9030258ba7f628
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-08-27 14:25:16 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-27 19:12:13 +0900

    Merge URI-0.12.3

commit 529b618235deb287be7c691064e11f942162f595
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-27 17:22:49 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-27 17:22:49 +0900

    Revert "merge revision(s) 29500e3034681a30045dea462d6bb653e8600738: [Backport #20698]"

    This reverts commit 3a3784a197383046537e66a9c567b96a52f0f86f.

commit 3a3784a197383046537e66a9c567b96a52f0f86f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-25 12:12:51 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-25 12:13:34 +0900

    merge revision(s) 29500e3034681a30045dea462d6bb653e8600738: [Backport #20698]

            Update bundled gems list as of 2024-08-22

commit 21c708ee802e1a59901eccc6448e40e8f72189b8
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-18 18:07:14 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-18 18:07:14 +0900

    merge revision(s) 992596fb7af18a7f472589a607d0eb3fbb03b49a: [Backport #20344]

            Fix next inside block argument stack underflow

            [Bug #20344]
            Fix compile_next adding removable adjust label

commit 65fed1c3e439bc47bcf6ec884431a86cb9ebd1dc
  Author:     Stan Hu <stanhu@gmail.com>
  AuthorDate: 2024-05-17 17:05:48 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-18 18:02:09 +0900

    Allow waitpid(-1, Process::WNOHANG) to be woken if a waitpid(pid) is

    ...pending

    If two threads are running, with one calling waitpid(-1, Process::WNOHANG),
    and another calling waitpid($some_pid), and then
    $some_other_pid exits, we would expect the waitpid(-1,
    Process::WNOHANG) call to retrieve that exit status. However, it
    cannot actually do so until $some_pid _also_ exits.

    This patch fixes the issue by calling do_waitpid unconditionally in
    waitpid_wait; this will ensure that a waitpid -1 actually reaps
    something (after first checking that no PID-directed call wants the
    process).

    [Bug #20490]

commit 50399eebd96c76ce808ea4d84fe39693f585a531
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-18 11:18:49 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-18 11:19:09 +0900

    merge revision(s) 1870505f478cc75993b296b7144a45137ace6937: [Backport #20651] [Backport #20571]

            Fix wrong unreachable chunk remove when jump destination label is unremovable

commit a8a25291447e3630d455e82851ca58fc8ac372ec
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-18 10:52:06 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-18 10:52:06 +0900

    merge revision(s) 97449338d6cb42d9dd7c9ca61550616e7e6b6ef6: [Backport #20649]

            [Bug #20649] Allow `nil` as 2nd argument of `assign_error`

            Fallback to the last token element in that case, for the backward
            compatibilities.

commit 0f2f6b31aa6433fd800f0621b5bedbaf0da12a6f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-17 21:41:24 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-17 21:41:24 +0900

    merge revision(s) 2a7da0b6e76929c684cd948630a897c1d5b16c26: [Backport #20667]

            Update bundled gems list as of 2024-08-12

commit 6fd660e6179117a86304ef29ba0da71e5722be1a
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-10 16:27:40 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-10 16:27:40 +0900

    merge revision(s) 657f4b99f61a15e21584b87f7b206933d116589b:

            Update bundled gems list as of 2024-08-02

commit c307c2b6a13bf11aef0c9ab8dea6e0ff77047c91
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-08-10 16:24:51 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-10 16:24:51 +0900

    merge revision(s) 54d26221b4c4cfc46048f30892c626db69ce9244:

            .travis.yml: Allow failures for ppc64le and s390x.

            Because Travis ppc64le/s390x are unstable.

            ppc64le:
            * https://app.travis-ci.com/github/ruby/ruby/builds/269211469
            * https://app.travis-ci.com/github/ruby/ruby/builds/269204073

            s390x:
            * https://app.travis-ci.com/github/ruby/ruby/builds/269201221

commit 634db38b22f0e6c3397a3780863e6e0650a68c9b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-08-08 16:44:02 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-08-08 18:00:44 +0900

    Added bootstrap job for release workflow

commit bbef31b7b4c715589392b215d4a40320221c9d2c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-08-07 10:47:38 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-08-07 12:07:01 +0900

    Fix installation failure of rss

commit 116d95b476aed8c7dd525d521bf35f5f324096c0
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-08-01 13:31:55 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-06 18:59:52 +0900

    Revert "skip bundled gem rss test for a while."

    This reverts commit 0cc98ae353fd231bcd0e704c251198abc4406247.

commit 16f795b5e9321088c1ba765e0dfe4a8300fc18ad
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-08-01 13:31:23 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-06 18:59:52 +0900

    Reapply "merge revision(s) 9f708d48f6df37ee9600db9d51b57a156609a13b,0301473fb523c71d8cdc4966971f31f502001185,7f0e26b7f99bf76408569892ce20318501f74729: [Backport #20516]"

    This reverts commit 367ad5055c3d5210c884d4611e08ffa32ec608ee.

commit 06cfabd49a1be9c00f2cb7d477cde6d47c3b8d32
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-02-16 17:57:38 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-06 18:59:52 +0900

    Adjust indent

commit 84f2da297f325b1fcde887bc307a4719cd5d9dab
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-02-16 16:33:25 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-06 18:59:52 +0900

    Try to find gemspec from `.bundle/specifications

commit 6517f15f9f07d1a516532fb08c264c1a113e9993
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-02-16 15:39:36 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-06 18:59:52 +0900

    Try to load original gemspec from `.bundle/gems/foo-x.y.z/foo.gemspec`.

    `.bundle/specification/foo-x.y.z.gemspec` may be changed our toolchain

commit 2e7949f006e4ab092b3749b89130e6888b6fdf48
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-02-16 17:23:19 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-06 18:59:52 +0900

    Use gemspec that keeps original dependencies

commit b62e1df3a1527c811f7fe857423023a479bc807f
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-08-01 13:19:17 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-06 18:59:52 +0900

    Revert "Backport [Bug #19158] for Ruby 3.2 (#7356)"

    This reverts commit 65ab2c1ef23bd4a02120a27c371dce12ea9024d4.

commit 7fc6448ec7f7505ca5772af0a60ee780c321492c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2024-07-27 00:10:53 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-02 18:26:26 +0900

    Fix ceil when ndigits is large

    [Bug #20654]

    This commit fixes Integer#ceil and Float#ceil when the number is
    negative and ndigits is large such that 10**ndigits is a bignum.

    Previously, it would return 0 in such cases. However, this would cause
    unexpected behaviour such as:

        puts 1.ceil(-5) # => 100000
        puts 1.ceil(-10) # => 10000000000
        puts 1.ceil(-20) # => 0

    This commit changes the last result so that it will return
    100000000000000000000.

commit 7048fbdf59509e4f52eff56d7c044ed28eb67727
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2024-07-27 00:10:39 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-08-02 18:26:26 +0900

    Fix floor when ndigits is large

    [Bug #20654]

    This commit fixes Integer#floor and Float#floor when the number is
    negative and ndigits is large such that 10**ndigits is a bignum.

    Previously, it would return 0 in such cases. However, this would cause
    unexpected behaviour such as:

        puts -1.floor(-5) # => -100000
        puts -1.floor(-10) # => -10000000000
        puts -1.floor(-20) # => 0

    This commit changes the last result so that it will return
    -100000000000000000000.

commit 0cc98ae353fd231bcd0e704c251198abc4406247
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-26 22:37:30 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-26 22:37:30 +0900

    skip bundled gem rss test for a while.

commit 31d0f1a2e7dbfb60731d1f05b868e1d578cda493
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-26 20:54:27 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-26 20:54:27 +0900

    bump patchlevel.

commit 367ad5055c3d5210c884d4611e08ffa32ec608ee
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-26 20:53:32 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-26 20:53:32 +0900

    Revert "merge revision(s) 9f708d48f6df37ee9600db9d51b57a156609a13b,0301473fb523c71d8cdc4966971f31f502001185,7f0e26b7f99bf76408569892ce20318501f74729: [Backport #20516]"

    This reverts commit 56c311aa0b20dee13ab43309ae3386f57f8cb797.

commit ae9a43512c6a6c8d4c60a0987137bc0a00a97d85
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-26 18:41:18 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-26 18:41:18 +0900

    bump teeny

commit 1dba48bb3a92bccc350508935ed0b59a249b674b
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-22 11:36:03 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-22 12:21:12 +0900

    bump rexml version to 3.3.2.

commit 483ad38c6968feb1990f36d48d14fd55988d2150
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-21 12:25:04 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-21 12:25:04 +0900

    merge revision(s) b15e88e0fcccb03b9cc5e4c1478ec9b10e26c961: [Backport #19619]

            [Bug #19619] Preserve numbered parameters context

            Preserve numbered parameters context across method definitions

commit 2ac8e2049bad37da38576b1ed263713c66eba2c9
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-20 15:12:36 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-20 15:12:36 +0900

    merge revision(s) e1104017e3080fd432c0b5fdc3ae6e004ffd0834: [Backport #19781]

            YJIT: Fix cfp inconsistency on tailcall (#8107)

            [Bug #19781]

commit 4f1e047f86b159528055d37ee0da2ad6e5a38c23
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-20 13:11:29 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-20 13:11:29 +0900

    merge revision(s) a3eb5e5c70eaee12964cdd807b8f19950003141f: [Backport #20573]

            Don't call `Warning.warn` unless the category is enabled (#10981)

            Don't call `Warning.warn` unless the category is enabled

            The warning category should be enabled if we want to call
            `Warning.warn`.

            This commit speeds up the following benchmark:

            ```ruby
            eval "def test; " +
              1000.times.map { "'  '.chomp!" }.join(";") + "; end"

            def run_benchmark count
              i = 0
              while i < count
                start = Process.clock_gettime(Process::CLOCK_MONOTONIC)
                yield
                ms = Process.clock_gettime(Process::CLOCK_MONOTONIC) - start
                puts "itr ##{i}: #{(ms * 1000).to_i}ms"
                i += 1
              end
            end

            run_benchmark(25) do
              250.times do
                test
              end
            end
            ```

            On `master` this runs at about 92ms per iteration. With this patch, it
            is 7ms per iteration.

            [Bug #20573]

commit 3fe51aa26867159af574fac8eba7ae86a0b30971
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-20 13:00:32 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-20 13:05:33 +0900

    merge revision(s) fba8aff7af450e476e97b62385427dfa51850955, d8c6e91748871ab2287d7703347847fe18a292d2: [Backport #20592]

            [Bug #20592] Fix segfault when sending NULL to freeaddrinfo

            On alpine freeaddrinfo does not accept NULL pointer

            Fix dangling `else`

commit c10c73fd16f1b7c9b658afee2b1b53ecfaed4fa4
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-20 12:53:25 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-20 12:53:25 +0900

    merge revision(s) 2dd46bb82ffc4dff01d7ea70922f0e407acafb4e: [Backport #20468]

            [Bug #20468] Fix safe navigation in `for` variable

commit db5201ffd531d07747de03c55c4cb1c0e9e5c5bf
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 22:09:30 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 22:09:30 +0900

    Revert "merge revision(s) 5fa6ba9568e87e43e08a4daeba1572254c589fb1: [Backport #20500]"

    This reverts commit fc5b9ffad1b0710bd999521d0bf9631af6b762c2.

commit 96a82418b2efe98a92f239a9a1cbf30dd396d335
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 22:01:57 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 22:01:57 +0900

    merge revision(s) 05553cf22d43dd78b8f30cc4591230b5c000c538: [Backport #20517]

            [Bug #20517] Make a multibyte character one token at meta escape

commit a804d5514c7c0608b9fb52426ec3ec738420ad29
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 21:51:03 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 21:51:03 +0900

    merge revision(s) d503e1b95a40e45d7767e0175de60092de4ba54e: [Backport #20030]

            [Bug #20030] dispatch invalid escaped character without ignoring it

commit fc5b9ffad1b0710bd999521d0bf9631af6b762c2
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 21:31:23 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 21:31:23 +0900

    merge revision(s) 5fa6ba9568e87e43e08a4daeba1572254c589fb1: [Backport #20500]

            [Bug #20500] Search non-default directories for jemalloc

            Co-Authored-by: lish82 (Hiroki Katagiri)

commit 958adb5b65f1edd0d4a204d299baf05f0b490c2c
  Author:     kimuraw (Wataru Kimura) <kimuraw@i.nifty.jp>
  AuthorDate: 2024-07-14 10:36:35 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 20:44:07 +0900

    [Bug #20633] Fix the condition for `atomic_signal_fence`

    `AC_CHECK_DECLS` defines `HAVE_DECL_SYMBOL` to 1 if declared, 0
    otherwise, not undefined.

commit c22398f96c29c2357bee50b291c358cc34837013
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 18:03:08 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 18:03:08 +0900

    merge partially d292a9b98ce03c76dbe13138d20b9fbf613cc02d. Just add the test to ensure the issue doesn't exit in ruby_3_2 branch.

commit b72deb7ca1198f8c799cd5e7e44635cf50abd7ec
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 17:56:01 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 17:56:01 +0900

    merge revision(s) 58918788abd63901588e4aa1e39b5c057321c10a: [Backport #20342]

            [Bug #20342] Consider wrapped load in `main` methods

commit bfdb6d5a9dca32b41a2b22c108b46f9fc01fee35
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 16:47:41 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 16:47:41 +0900

    update GitHub Action spec_guards workflow.

commit 8200325e932e40e1ae7a959e588dae655bea9660
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 14:03:11 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 14:03:11 +0900

    follow-up for a6b7aad954680e23e7db81d69a7e8e44583bf8b4. suppress compiler warning.

commit a6b7aad954680e23e7db81d69a7e8e44583bf8b4
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 13:40:01 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 13:40:01 +0900

    merge revision(s) 7e4b1f8e1935a10df3c41ee60ca0987d73281126: [Backport #20322]

            [Bug #20322] Fix rb_enc_interned_str_cstr null encoding

            The documentation for `rb_enc_interned_str_cstr` notes that `enc` can be
            a null pointer, but this currently causes a segmentation fault when
            trying to autoload the encoding. This commit fixes the issue by checking
            for NULL before calling `rb_enc_autoload`.

commit 519d164b6682a8b9fde2b1d5ab7d74f54c4f0224
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 13:24:57 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 13:24:57 +0900

    merge revision(s) c7ce2f537f96ab2cf2f5fc2982d6147866ff5340: [Backport #20304]

            Fix memory leak in setting encodings

            There is a memory leak in Encoding.default_external= and
            Encoding.default_internal= because the duplicated name is not freed
            when overwriting.

                10.times do
                  1_000_000.times do
                    Encoding.default_internal = nil
                  end

                  puts `ps -o rss= -p #{$$}`
                end

            Before:

                 25664
                 41504
                 57360
                 73232
                 89168
                105056
                120944
                136816
                152720
                168576

            After:

                9648
                9648
                9648
                9680
                9680
                9680
                9680
                9680
                9680
                9680

commit db45554fef4c8e1b0ba494965449db13068e6051
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 12:00:14 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 12:00:14 +0900

    merge revision(s) 1faeb44dfcf777ace28321e80d0ebf942161a0a7, 7f87ad9fc4bc45faf8cd33602a025f27c094b2fd: [Backport #20431]

            Check if macros are defined before using

            Assume macros with the same prefix would be defined together.

            Refer autoconfigured endian macro (#10572)

            Remove the case `RB_IO_BUFFER_HOST_ENDIAN` is not defined.

commit 0cb1e753cadb4cd1706ecf334e007bb246438577
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 11:55:41 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 11:55:41 +0900

    Revert "merge revision(s) 5e0c17145131e073814c7e5b15227d0b4e73cabe: [Backport #20169]"

    This reverts commit 6b73406833dd22e489114fa77c1c80c4b7af2ed0.

commit b5e554d03a0bd34f260e783e84f4d8a16de39a61
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 11:08:50 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 11:08:50 +0900

    Revert "merge revision(s) e04146129ec6898dd6a9739dad2983c6e9b68056, d5080f6e8b77364483ff6727b1065e45e180f05d: [Backport #20292]"

    This reverts commit a54c717c7a74b91a3cdf20742c355e3ea42052d1.

commit 8051a6d3854687c008d69d3d198a16d0d1c5dac1
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 11:07:31 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 11:07:31 +0900

    Revert "follow-up for a54c717c7a74b91a3cdf20742c355e3ea42052d1."

    This reverts commit 715633ba6e982dc5404abeafc5246c31af92ac10.

commit 715633ba6e982dc5404abeafc5246c31af92ac10
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 10:41:21 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 10:41:21 +0900

    follow-up for a54c717c7a74b91a3cdf20742c355e3ea42052d1.

commit 90f4c5dc73af3fff76500dd4223792a6d9f58636
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 09:50:14 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 09:50:14 +0900

    merge revision(s) dc146babf47a84bbd1f176d766637d4a40327019, f23d5028059078a346efc977287b669d494a5a3f, a0f7de814ae5c299d6ce99bed5fb308a05d50ba0: [Backport #20296]

            [Bug #20296] Clear errinfo when `exception: false`

            [Bug #20296] Refine the test

            [Bug #20296] Fix the default assertion message

commit a54c717c7a74b91a3cdf20742c355e3ea42052d1
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 09:26:25 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 09:26:25 +0900

    merge revision(s) e04146129ec6898dd6a9739dad2983c6e9b68056, d5080f6e8b77364483ff6727b1065e45e180f05d: [Backport #20292]

            [Bug #20292] Truncate embedded string to new capacity

            Fix -Wsign-compare on String#initialize
            MIME-Version: 1.0
            Content-Type: text/plain; charset=UTF-8
            Content-Transfer-Encoding: 8bit

            ../string.c:1886:57: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘long int’ [-Wsign-compare]
             1886 |                 if (STR_EMBED_P(str)) RUBY_ASSERT(osize <= str_embed_capa(str));
                  |                                                         ^~

commit 6b73406833dd22e489114fa77c1c80c4b7af2ed0
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-15 08:46:16 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-15 08:50:38 +0900

    merge revision(s) 5e0c17145131e073814c7e5b15227d0b4e73cabe: [Backport #20169]

            Make io_fwrite safe for compaction

            [Bug #20169]

            Embedded strings are not safe for system calls without the GVL because
            compaction can cause pages to be locked causing the operation to fail
            with EFAULT. This commit changes io_fwrite to use rb_str_tmp_frozen_no_embed_acquire,
            which guarantees that the return string is not embedded.

commit 9f1e18a138e5196c04c5231c6a799dc637f2e9af
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-13 18:48:18 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-13 18:48:18 +0900

    follow-up for 3faef1d40dc1d6eea8ffcd624528f431ccaf0a5b.

commit 90a44bcd39c569d851f73d167955c83f3ff2384f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-13 15:43:23 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-13 15:43:23 +0900

    merge revision(s) f36a71e26995b69ff72bc132bbcf40ad89571414: [Backport #20307]

            [Bug #20307] Fix `Hash#update` to make frozen copy of string keys

commit d802b6122b5e501cc0172376acb185160710454a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2024-02-27 01:22:01 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-13 15:42:41 +0900

    Extract `RHASH_STRING_KEY_P`

commit 3faef1d40dc1d6eea8ffcd624528f431ccaf0a5b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2024-02-26 23:47:45 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-13 15:40:01 +0900

    Extract `RHASH_IDENTHASH_P`

commit 584a02aaafda74c21d24dc4c5e223a2482c7fde3
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-13 15:17:51 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-13 15:17:51 +0900

    merge revision(s) d19d683a354530a27b4cbb049223f8dc70c75849: [Backport #20250]

            rb_obj_setup: do not copy RUBY_FL_SEEN_OBJ_ID

            [Bug #20250]

            We're seting up a new instance, so it never had an associated
            object_id.

commit c97a632363a170879b9755c5a123e92533908039
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-07 14:42:08 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-07 16:46:02 +0900

    merge revision(s) 82b57d7bfeefd717c10f7a5a3484aca6b3e708a3: [Backport #20162]

            Fix memory leak when duplicating too complex object

            [Bug #20162]

            Creating a ST table then calling st_replace leaks memory because the
            st_replace overwrites the ST table without freeing any of the existing
            memory. This commit changes it to use st_copy instead.

            For example:

                RubyVM::Shape.exhaust_shapes

                o = Object.new
                o.instance_variable_set(:@a, 0)

                10.times do
                  100_000.times { o.dup }

                  puts `ps -o rss= -p #{$$}`
                end

            Before:

                23264
                33600
                42672
                52160
                61600
                71728
                81056
                90528
                100560
                109840

            After:

                14752
                14816
                15584
                15584
                15664
                15664
                15664
                15664
                15664
                15664

commit bd5df1693c89d389471d145fc19b487c708912b1
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-07 14:47:04 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-07 16:44:06 +0900

    merge revision(s) e626da82eae3d437b84d4f9ead0164d436b08e1a, f3af5ae7e6c1c096bbfe46d69de825a02b1696cf: [Backport #20311]

            Don't pin named structs defined in Ruby

            [Bug #20311]

            `rb_define_class_under` assumes it's called from C and that the
            reference might be held in a C global variable, so it adds the
            class to the VM root.

            In the case of `Struct.new('Name')` it's wasteful and make
            the struct immortal.

            Make Struct memory leak test faster

            [Bug #20311]

            It times out on some platform, so we can reduce iterations.
            On my machine it completes in 250ms and RSS grows 8X.

commit 2a4469ea590e6719eb30e8b7aea7e147e3b82f75
  Author:     Ivo Anjo <ivo.anjo@datadoghq.com>
  AuthorDate: 2024-06-21 19:48:37 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-06 16:20:45 +0900

    [Backport #11036 to 3.2] Add explicit compiler fence when pushing frames to ensure safe profiling

    **What does this PR do?**

    This PR tweaks the `vm_push_frame` function to add an explicit compiler
    fence (`atomic_signal_fence`) to ensure profilers that use signals
    to interrupt applications (stackprof, vernier, pf2, Datadog profiler)
    can safely sample from the signal handler.

    This is a backport of #11036 to Ruby 3.2 .

    **Motivation:**

    The `vm_push_frame` was specifically tweaked in
    https://github.com/ruby/ruby/pull/3296 to initialize the a frame
    before updating the `cfp` pointer.

    But since there's nothing stopping the compiler from reordering
    the initialization of a frame (`*cfp =`) with the update of the cfp
    pointer (`ec->cfp = cfp`) we've been hesitant to rely on this on
    the Datadog profiler.

    In practice, after some experimentation + talking to folks, this
    reordering does not seem to happen.

    But since modern compilers have a way for us to exactly tell them
    not to do the reordering (`atomic_signal_fence`), this seems even
    better.

    I've actually extracted `vm_push_frame` into the "Compiler Explorer"
    website, which you can use to see the assembly output of this function
    across many compilers and architectures: https://godbolt.org/z/3oxd1446K

    On that link you can observe two things across many compilers:
    1. The compilers are not reordering the writes
    2. The barrier does not change the generated assembly output
       (== has no cost in practice)

    **Additional Notes:**

    The checks added in `configure.ac` define two new macros:
    * `HAVE_STDATOMIC_H`
    * `HAVE_DECL_ATOMIC_SIGNAL_FENCE`

    Since Ruby generates an arch-specific `config.h` header with
    these macros upon installation, this can be used by profilers
    and other libraries to test if Ruby was compiled with the fence enabled.

    **How to test the change?**

    As I mentioned above, you can check https://godbolt.org/z/3oxd1446K
    to confirm the compiled output of `vm_push_frame` does not change
    in most compilers (at least all that I've checked on that site).

commit 2b35d80834f14011f7d313f8fac7855dc9949f70
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-06 15:55:04 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-06 15:55:04 +0900

    merge revision(s) 75aaeb35b82da26359b9418d2963384d0c55839c: [Backport #20239]

            [Bug #20239] Fix overflow at down-casting

commit a67b43d99e24dc7c2a9e134a65f28f968fe124c1
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-06 15:54:03 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-06 15:54:03 +0900

    merge revision(s) 3a04ea2d0379dd8c6623c2d5563e6b4e23986fae: [Backport #20305]

            [Bug #20305] Fix matching against an incomplete character

            When matching against an incomplete character, some `enclen` calls are
            expected not to exceed the limit, and some are expected to return the
            required length and then the results are checked if it exceeds.

commit 89de66dbb0d8454c9d69faa331d6e35f8b315cce
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-06 13:33:24 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-06 13:35:22 +0900

    merge revision(s) 78d9fe69479d32214a52ad7291c3973f1b6b7f6f, 04729fe68dceddab045be7324e26c2bb15aa62c7: [Backport #20286] [Backport #20286]

            Ensure that exiting thread invokes end-of-life behaviour. (#10039)

            Fix exception handling in `rb_fiber_scheduler_set`. (#10042)

commit 5577e5d396cc8f062833b67d6280db6cc8501e7a
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-06 13:26:26 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-06 13:26:26 +0900

    merge revision(s) a7ff264477105b5dc0ade6facad4176a1b73df0b: [Backport #20393]

            Don't clear pending interrupts in the parent process. (#10365)

commit 2f8f17e842666abb05ca522d6072c957fab0e12e
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-06 11:16:44 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-06 11:16:44 +0900

    merge revision(s) 5d1702e01a36e11b183fe29ce10780a9b1a41cf0: [Backport #20414]

            Enumerator should use a non-blocking fiber, change `rb_fiber_new` to be non-blocking by default. (#10481)

commit 5141d72fde2528721663ddbc0554ac81ddc0656f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-07-06 11:01:02 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-06 11:01:02 +0900

    merge revision(s) 1e08a9f0e9058186db18f29efc6458c00f10a856: [Backport #20499]

            [Bug #20499] Use Xcode owned tools for Xcode clang

            Xcode has its own version tools that may be incompatible with genuine
            LLVM tools, use the tools in the same directory.

commit 2dfaa00e09ceb7f1dcee87acd56c47701fc8ca19
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-07-05 17:47:40 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-07-05 18:37:44 +0900

    Added macos-13 and removed macos-11

commit eca044a3870d4767d10c0ca8a51f1de4e5e2fdb0
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-19 06:13:54 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-19 06:13:54 +0900

    bump patchlevel.

commit 8e68752a5e48c5baf07114952d256efa360e3f4b
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-19 00:27:18 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-19 00:27:18 +0900

    bump rexml version to 3.2.9.

commit fa042a0f10f70347c1717c068d96e43e19f2171b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-01-22 10:36:06 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-18 22:53:59 +0900

    added redirect wrapper for envutil

commit 963bb96e29204f351fa58a205a6eec075c0194ff
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-01-17 12:31:35 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-18 22:53:58 +0900

    Load Rake::TaskLib when missing it

commit 5a70a323904368987b79c59140bd2aca009da7a0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2023-06-14 01:33:44 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-18 22:53:58 +0900

    Show prerequisites for compile task

commit 9542ef2798c6f555df5115da6881a5d50ed7034b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2023-06-14 01:21:27 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-18 22:53:58 +0900

    Allow test-unit-ruby-core files to be loaded from bundled gems

    Separate the directly from the customized test-unit, since it may not
    work with bundled gems.

commit 56c311aa0b20dee13ab43309ae3386f57f8cb797
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-02 07:13:25 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-18 22:50:39 +0900

    merge revision(s) 9f708d48f6df37ee9600db9d51b57a156609a13b,0301473fb523c71d8cdc4966971f31f502001185,7f0e26b7f99bf76408569892ce20318501f74729: [Backport #20516]

            Clear runtime dependencies if default gems is specified.

            The current build system uses runtime dependencies from only
            `.bundle` directory. We shouldn't install runtime dependencies
            from rubygems.org when `make test-bundled-gems` is invoked.

            Fixed dependencies list format

            Re-use strscan with ruby repo

commit 8e7d5adb4a481e9b4050505ea88cdf64278cacb7
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-01 16:11:08 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-18 22:50:16 +0900

    partially merge revision(s) 70ad58cb62b195ba86a5ef07a565b22b02a040ea: [Backport #20516]

            Update bundled_gems

commit e308f47888cfb5c85344d030098932340b57147d
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-18 22:47:12 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-18 22:47:12 +0900

    Revert "merge revision(s) 18eaf0be905e3e251423b42d6f4e56b7cae1bc3b: [Backport #20494]"

    This reverts commit ec30266267b2a063089b8ce7967203bcbadbdf4e.

commit 478b21f63127f30fd1a9ee051a6c5593f41937ed
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-18 22:46:48 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-18 22:46:48 +0900

    Revert "merge revision(s) 22e4eeda6561693367fc7a00b92b90f46b09cabd, 1ab7c412d2e3880a7ad233c32e93961888f8145c, fd549b229b0822198ddc847703194263a2186ed1: [Backport #20515]"

    This reverts commit dc4ca25e0a01e072ba3cf1fc47612aff72c980af.

commit dc4ca25e0a01e072ba3cf1fc47612aff72c980af
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-15 13:13:19 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-15 13:13:19 +0900

    merge revision(s) 22e4eeda6561693367fc7a00b92b90f46b09cabd, 1ab7c412d2e3880a7ad233c32e93961888f8145c, fd549b229b0822198ddc847703194263a2186ed1: [Backport #20515]

            ci: Test whether GMP is working in compilers.yml (#10875)

            Avoid reoccurence of [Bug #20515]

            Requires https://github.com/ruby/ruby/pull/10876 since 18eaf0be905e3e251423b42d6f4e56b7cae1bc3b

            bug: https://bugs.ruby-lang.org/issues/20515

            RUBY_CHECK_HEADER didn't define HAVE_{header-file} (#10876)

            --with-gmp is not working at all because HAVE_GMP_H
            was missing since 18eaf0be90. [Bug #20515]

            bug: https://bugs.ruby-lang.org/issues/20515
            follow-up: https://bugs.ruby-lang.org/issues/20494
            follow-up: 18eaf0be905e3e251423b42d6f4e56b7cae1bc3b
            follow-up: https://github.com/ruby/ruby/pull/10805

            test_bignum: defined? returns String (#10880)
            MIME-Version: 1.0
            Content-Type: text/plain; charset=UTF-8
            Content-Transfer-Encoding: 8bit

            didn't verify the test is working properly due to mistaken auto-merge… [Bug #20515]

            bug: https://bugs.ruby-lang.org/issues/20515
            follow-up: 22e4eeda6561693367fc7a00b92b90f46b09cabd
            follow-up: https://github.com/ruby/ruby/pull/10875

commit ec30266267b2a063089b8ce7967203bcbadbdf4e
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-15 13:09:47 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-15 13:09:47 +0900

    merge revision(s) 18eaf0be905e3e251423b42d6f4e56b7cae1bc3b: [Backport #20494]

            [Bug #20494] Search non-default directories for GMP

            Co-Authored-by: lish82 (Hiroki Katagiri)

commit 2f010f31f1887ad0f429709a2906fc5a4dae8e87
  Author:     KJ Tsanaktsidis <ktsanaktsidis@zendesk.com>
  AuthorDate: 2024-05-18 18:37:49 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-15 13:05:25 +0900

    Inline RB_VM_SAVE_MACHINE_CONTEXT into BLOCKING_REGION

    There's an exhaustive explanation of this in the linked redmine bug, but
    the short version is as follows:

    blocking_region_begin can spill callee-saved registers to the stack for
    its own use. That means they're not saved to ec->machine by the call to
    setjmp, since by that point they're already on the stack and new,
    different values are in the real registers. ec->machine's end-of-stack
    pointer is also bumped to accomodate this, BUT, after
    blocking_region_begin returns, that points past the end of the stack!

    As far as C is concerned, that's fine; the callee-saved registers are
    restored when blocking_region_begin returns. But, if another thread
    triggers GC, it is relying on finding references to Ruby objects by
    walking the stack region pointed to by ec->machine.

    If the C code in exec; subsequently does things that use that stack
    memory, then the value will be overwritten and the GC might prematurely
    collect something it shouldn't.

    [Bug #20493]

commit b494ecfbc1b2a934d27233b7171c40adaa81e3c5
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2024-06-11 08:05:58 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-15 13:02:26 +0900

    Fix inconsistent evaluation of keyword splat (#10959)

    [Bug #20180]

    Backports #9624.

commit e0e1a0f502fe57e7e7e8cf643b8f141b4582d62d
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2024-06-10 22:12:54 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-15 12:58:19 +0900

    compile.c: use putspecialobject for RubyVM::FrozenCore

    [Bug #20569]

    `putobject RubyVM::FrozenCore`, is not serializable, we
    have to use `putspecialobject VM_SPECIAL_OBJECT_VMCORE`.

commit ab7dfa7ff270feb155d4715fb7ffcee3668ef38f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-03 20:59:51 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-03 20:59:51 +0900

    merge revision(s) 631449ac6b9336dfce577a786aff7eca0b8abcf1:

            README.ja.md: Remove Cirrus CI badge image. folloup for 15ee9c7c1b693f29b6b2dbe7b47488bf154e481c.

commit f9a9035b98526b8b50587ab7959cc1d2292f5b7f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-03 19:57:28 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-03 19:57:28 +0900

    merge revision(s) 15ee9c7c1b693f29b6b2dbe7b47488bf154e481c:

            [DOC] README.md: Remove Cirrus CI badge image. (#8785)

            We removed the `.cirrus.yml` at the commit
            <01b5d1d2ff6ca91b2909dfa67295f59b53e6f065>.
            Let's remove the badge image too.

commit 5afdfbdd0924c2cede5626e9d762caa90ce656d9
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-03 19:57:19 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-03 19:57:19 +0900

    merge revision(s) 01b5d1d2ff6ca91b2909dfa67295f59b53e6f065:

            YJIT: Add a cargo job for Arm64 and remove .cirrus.yml (#8679)

            * YJIT: Add a cargo job for Arm64

            * YJIT: Use command names as job names

            They look more consistent with jobs that use the command name as a job
            name, such as `make (check)`, `make (test-bundled-gems)`, etc.

            * Remove .cirrus.yml

commit 3c04fd11a0a387d99d0e439b0e4147128beaa88d
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-03 12:22:51 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-03 12:22:51 +0900

    Revert "partially merge revision(s) 70ad58cb62b195ba86a5ef07a565b22b02a040ea: [Backport #20516]"

    This reverts commit 519ac9c5fd7bfa75655231188ac1da9589563618.

commit c48b2312acf40371590ac2a9618f4cb39472ef0f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-03 12:22:25 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-03 12:22:25 +0900

    Revert "merge revision(s) 9f708d48f6df37ee9600db9d51b57a156609a13b,0301473fb523c71d8cdc4966971f31f502001185,7f0e26b7f99bf76408569892ce20318501f74729: [Backport #20516]"

    This reverts commit 0de1ff12973ffc04bc9a8b0799e963922986d1eb.

commit 0de1ff12973ffc04bc9a8b0799e963922986d1eb
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-02 07:13:25 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-02 07:13:25 +0900

    merge revision(s) 9f708d48f6df37ee9600db9d51b57a156609a13b,0301473fb523c71d8cdc4966971f31f502001185,7f0e26b7f99bf76408569892ce20318501f74729: [Backport #20516]

            Clear runtime dependencies if default gems is specified.

            The current build system uses runtime dependencies from only
            `.bundle` directory. We shouldn't install runtime dependencies
            from rubygems.org when `make test-bundled-gems` is invoked.

            Fixed dependencies list format

            Re-use strscan with ruby repo

commit 519ac9c5fd7bfa75655231188ac1da9589563618
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-06-01 16:11:08 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-06-01 16:11:08 +0900

    partially merge revision(s) 70ad58cb62b195ba86a5ef07a565b22b02a040ea: [Backport #20516]

            Update bundled_gems

commit dd77934ca6e2e8b2b894f2460017323b33b619b6
  Author:     matoro <matoro@users.noreply.github.com>
  AuthorDate: 2024-05-24 05:10:32 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-05-28 09:26:37 +0900

    [ruby/readline-ext] Skip test_interrupt_in_other_thread on arm32-linux

    This is a combination of main Ruby commit
    https://github.com/ruby/ruby/commit/aefc98891c42024039f19ef45bdfe93fbc590b7c
    and my PR correcting the regex https://github.com/ruby/ruby/pull/10819.
    Upstream Ruby requests that changes to this test go to readline-ext repo
    before being backported to 3.2 branch.

    https://github.com/ruby/readline-ext/commit/868f873a78

commit 0e664ebcd36879591223d1ecbb181aa05d82a4d9
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2023-09-14 17:37:43 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-05-18 20:09:56 +0900

    Fix `io_buffer_get_string` default length computation. (#8427)

    * Fix `io_buffer_get_string` default length computation.

    When an offset bigger than the size is given, the resulting length will be
    computed incorrectly. Raise an argument error in this case.

    * Validate all arguments.

commit 67d499a7646a4f2f5294b6c83ac9503fcd873270
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2023-05-24 10:17:35 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-05-18 20:09:56 +0900

    Improvements to `IO::Buffer` `read`/`write`/`pread`/`pwrite`. (#7826)

    - Fix IO::Buffer `read`/`write` to use a minimum length.

commit 359e40e3c9986b8a5d77359995f0e926d1c6eb72
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2023-05-22 12:27:20 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-05-18 20:09:56 +0900

    Rename `data` -> `buffer` for better readability. (#7836)

commit 2d686e1019414f6bbb7ccbfa897b7b665250743d
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-05-16 11:36:47 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-05-16 11:36:47 +0900

    merge revision(s) ae8990aef098410ecc2b5f48fea9d7d171a3c5f6: [Backport #20183]

            Alias init functions

            The extension library has each initialization function named "Init_" +
            basename. If multiple extensions have the same base name (such as
            cgi/escape and erb/escape), the same function will be registered for
            both names.

            To fix this conflict, rename the initialization functions under sub
            directories using using parent names, when statically linking.

commit 449899b38314d0ecbe61e42d34398bdf2561b8e9
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2024-05-09 18:56:51 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2024-05-14 16:29:21 +0900

    Fix `String#index` to clear MatchData when a regexp is passed

    [Bug #20421]

    The bug was fixed in Ruby 3.3 via 9dcdffb8bf8a3654fd78bf1a58b30c8e13888a7a

commit a10a0d0c77826b97ec246274adcc80952049688b
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2023-01-17 05:30:18 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-05-08 20:12:13 +0900

    CI: Pass -O2 for annocheck

    Because `optflags` is pasted into the invocation line after `CC`, we were
    building with -O1 unintentionally. You can see this in the configuration
    summary: https://github.com/ruby/ruby/actions/runs/3933391169/jobs/6727044423#step:9:753

    The check actually fails with -O2. To make it pass, upstream suggest
    that we use the annocheck GCC plugin. Since it requires building from
    source as the debian package for it isn't ready yet, punt on it for now
    and use `--skip-gaps`.

    Co-authored-by: Jun Aruga <jaruga@redhat.com>

commit 8029ee41768cdc6b86cad90390f281185ab995e2
  Author:     Jun Aruga <jaruga@redhat.com>
  AuthorDate: 2024-03-12 22:39:05 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-05-08 20:12:13 +0900

    [ruby/openssl] test_asn1.rb: Remove the assertions of the time string format without second.

    This commit fixes the following errors in the tests.
    Because the OpenSSL project changed the code to make the time string format
    without second invalid. So, we drop the assertions.

    ```
    1) Error: test_generalizedtime(OpenSSL::TestASN1): OpenSSL::ASN1::ASN1Error: generalizedtime is too short
    /home/runner/work/ruby-openssl/ruby-openssl/test/openssl/test_asn1.rb:698:in `decode'
    /home/runner/work/ruby-openssl/ruby-openssl/test/openssl/test_asn1.rb:698:in `decode_test'
    /home/runner/work/ruby-openssl/ruby-openssl/test/openssl/test_asn1.rb:433:in `test_generalizedtime'
         430:       OpenSSL::ASN1::GeneralizedTime.new(Time.utc(9999, 9, 8, 23, 43, 39))
         431:     # LibreSSL 3.6.0 requires the seconds element
         432:     return if libressl?
      => 433:     decode_test B(%w{ 18 0D }) + "201612081934Z".b,
         434:       OpenSSL::ASN1::GeneralizedTime.new(Time.utc(2016, 12, 8, 19, 34, 0))
         435:     # not implemented
         436:     # decode_test B(%w{ 18 13 }) + "https://github.com/ruby/openssl/commit/201612081934+0930".b,

    2) Error: test_utctime(OpenSSL::TestASN1): OpenSSL::ASN1::ASN1Error: utctime is too short
    /home/runner/work/ruby-openssl/ruby-openssl/test/openssl/test_asn1.rb:698:in `decode'
    /home/runner/work/ruby-openssl/ruby-openssl/test/openssl/test_asn1.rb:698:in `decode_test'
    /home/runner/work/ruby-openssl/ruby-openssl/test/openssl/test_asn1.rb:411:in `test_utctime'
         408:     end
         409:     # Seconds is omitted. LibreSSL 3.6.0 requires it
         410:     return if libressl?
      => 411:     decode_test B(%w{ 17 0B }) + "1609082343Z".b,
         412:       OpenSSL::ASN1::UTCTime.new(Time.utc(2016, 9, 8, 23, 43, 0))
         413:     # not implemented
         414:     # decode_test B(%w{ 17 11 }) + "https://github.com/ruby/openssl/commit/500908234339+0930".b,
    ```

    https://github.com/ruby/openssl/commit/2e826d5715

commit 0ca642cd300ee2d7a8f5dbef512344467285b2ea
  Author:     Xi Ruoyao <xry111@xry111.site>
  AuthorDate: 2024-04-24 14:42:09 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-05-08 20:12:13 +0900

    [ruby/net-http] Skip test_session_reuse_but_expire with OpenSSL 3.3

    OpenSSL 3.3.0 9 Apr 2024 is also broken.

    Signed-off-by: Xi Ruoyao <xry111@xry111.site>

    https://github.com/ruby/net-http/commit/ab525c956d

commit af471c0e0127eea0cafa6f308c0425bbfab0acf5
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-04-23 19:20:09 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-04-23 19:20:09 +0900

    bump teeny

commit 90b194b5e3fe793c1ed895a4522675845181e6fd
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-04-23 19:18:14 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-04-23 19:18:14 +0900

    merge revision(s) 989a2355808a63fc45367785c82ffd46d18c900a:

            Fix Use-After-Free issue for Regexp

            Co-authored-by: Isaac Peka <7493006+isaac-peka@users.noreply.github.com>
            ---
             regexec.c | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

commit 404f1e215a1707b31edba36f9f07a82367960618
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-04-23 19:17:53 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-04-23 19:17:53 +0900

    merge revision(s) 33e5b47c16f1fd3382186e6ffe73cfc6e00946f7:

            Fix handling of reg->dmin in Regex matching

            ---
             regexec.c | 10 ++++++++++
             1 file changed, 10 insertions(+)

commit 06049fe98ef6eced6ccf6028621f3e10edeedccb
  Author:     KJ Tsanaktsidis <ktsanaktsidis@zendesk.com>
  AuthorDate: 2024-03-28 13:57:10 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-04-08 18:40:47 +0900

    Backport https://github.com/ruby/ruby/pull/9240 to Ruby 3.2

    Merged into master in 7ba2506232d3fa6c4e82e3708c0ff746a1a8de5c

    [Bug #20050]

commit e6bf38a6e7fbae0097fdf51e3c752820a2c58ae4
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-04-07 14:53:48 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-04-07 14:53:48 +0900

    merge revision(s) d3279a0c11ca45ca85027e7eb74dc4aac52c478b: [Backport #20327]

            [Bug #20327] Do not count subsecond to calculate UTC offset

            Assume that there will never be any time zones with UTC offsets that
            are subseconds.  Historically, UTC offset has only been used down to
            the second.
            ---
             test/ruby/test_time_tz.rb | 8 ++++++++
             time.c                    | 2 +-
             2 files changed, 9 insertions(+), 1 deletion(-)

commit baa5bc16c17e3b4dac7b590ed5d6b7e705535e15
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-04-07 14:41:29 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-04-07 14:41:29 +0900

    merge revision(s) adaff1fc496b6f01fb1c4c812b9b4082618e2f79: [Backport #19592]

            [Bug #19592] Fix ext/Setup support

            After [1], using ext/Setup to link some, but not all extensions failed
            during linking. I did not know about this option, and had assumed that
            only `--with-static-linked-ext` builds can include statically linked
            extensions.

            Include the support code for statically linked extensions in all
            configurations like before [1]. Initialize the table lazily to minimize
            footprint on builds that have no statically linked extensions.

            [1]: 790cf4b6d0475614afb127b416e87cfa39044d67 "Fix autoload status of
                     statically linked extensions"
            ---
             load.c    | 28 +++++++++++++++++-----------
             vm.c      |  3 ---
             vm_core.h |  6 ------
             3 files changed, 17 insertions(+), 20 deletions(-)

commit 27606daf8efeb0ae6d0590a2c9bb1c5aae07f140
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-03-31 17:37:01 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-03-31 17:37:01 +0900

    merge revision(s) ac0163949a6ee678dfccec9f6e56422b91e5f0a9,01fd262e62076277a41af72ea13f20deb1b462a2: [Backport #20245]

            Compile code without Symbol GC always

            ---
             symbol.c | 28 +++++++++++++---------------
             1 file changed, 13 insertions(+), 15 deletions(-)

            Fix crash when checking symbol encoding

            [Bug #20245]

            We sometimes pass in a fake string to sym_check_asciionly. This can crash
            if sym_check_asciionly raises because it creates a CFP with the fake
            string as the receiver which will crash if GC tries to mark the CFP.

            For example, the following script crashes:

                GC.stress = true
                Object.const_defined?("\xC3")
            ---
             symbol.c                 | 17 ++++++++++-------
             test/ruby/test_module.rb |  8 ++++++++
             2 files changed, 18 insertions(+), 7 deletions(-)

commit 4f3ed07d5bfd581b630e4afc8b9bb170ce781e7f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-03-31 17:18:55 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-03-31 17:18:55 +0900

    merge revision(s) ade56737e2273847426214035c0ff2340b43799a: [Backport #20190]

            Fix coderange of invalid_encoding_string.<<(ord)

            Appending valid encoding character can change coderange from invalid to valid.
            Example: "\x95".force_encoding('sjis')<<0x5C will be a valid string "\x{955C}"
            ---
             string.c                 | 6 +++++-
             test/ruby/test_string.rb | 3 +++
             2 files changed, 8 insertions(+), 1 deletion(-)

commit 1b5c74a2408d248f35cb811327dd51f49ee37c9e
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-03-31 17:17:34 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-03-31 17:17:34 +0900

    merge revision(s) b14674b236445fb70f484603e678722760f678f4: [Backport #20194]

            Memory leak with TracePoint on bmethod

            [Bug #20194]

            When disabling the TracePoint on bmethod, the hooks list is not freed.

            For example:

                obj = Object.new
                obj.define_singleton_method(:foo) {}
                bmethod = obj.method(:foo)
                tp = TracePoint.new(:return) {}

                10.times do
                  100_000.times do
                    tp.enable(target: bmethod) {}
                  end

                  puts `ps -o rss= -p #{$$}`
                end

            Before:

                18208
                22832
                26528
                29728
                34000
                37776
                40864
                44400
                47680
                51504

            After:

                16688
                17168
                17168
                17248
                17696
                17760
                17824
                17824
                17856
                17920
            ---
             test/ruby/test_settracefunc.rb | 13 +++++++++++++
             vm_trace.c                     |  1 +
             2 files changed, 14 insertions(+)

commit bf6e9299ef4f10dbd23f32331c355ac875bfb5e3
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-03-31 17:16:26 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-03-31 17:16:26 +0900

    merge revision(s) 2554c5d3b8738a248cedb2fea96dfab9fbe19417: [Backport #20231]

            Don't wait in `io_binwrite_string` if not necessary. (#9792)

            ---
             io.c | 8 +++-----
             1 file changed, 3 insertions(+), 5 deletions(-)

commit d5dbada8a2127d9b6b670dd891eabbb63c48268f
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-03-21 15:39:09 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-03-21 21:21:00 +0900

    Merge RDoc-6.5.1.1

commit 0a2238d509c158fb5539c0d7dd42d8e3faec6ead
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-03-21 21:15:02 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-03-21 21:15:02 +0900

    merge revision(s) 64b6a018a38f200c957fdbbe7d0cbe0e64781c9f:

            Fix test session reuse but expire (#9824)

            * OpenSSL 3.2.1 30 Jan 2024 is also broken

            Import 45064610725ddd81a5ea3775da35aa46985bc789 from ruby_3_3 branch
            tentatively.
            ---
             test/net/http/test_https.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

commit b12343c3b6c557b7e5668dcd8a9eab12fc9ee2c0
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-03-10 19:12:31 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-03-10 19:12:31 +0900

    merge revision(s) d2cd903c85f38f42c6aefc6d97a1558f74d8d9db:

            [ruby/openssl] pkey/ec: constify

            https://github.com/ruby/openssl/commit/6fb3499a7b
            ---
             ext/openssl/ossl_pkey_ec.c | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

commit 80112a9847b705b53e17e48540a6d00daa7e59a4
  Author:     Andrea Culot <andclt@amazon.com>
  AuthorDate: 2024-02-28 22:28:30 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-02-29 10:17:34 +0900

    Make sure RUBY_YJIT_ENABLE only enables YJIT for truthy values

commit 5e4606423da96c2e26b00981c22bddfce0d970bf
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-02-25 18:29:16 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-02-25 18:29:16 +0900

    merge revision(s) f15123c34ce80f3928612befe2a9aaf4c9d27fda: [Backport #18743]

            Fix stack trace for rescued StopIteration

            ---
             enumerator.c                 | 15 +++++++++++++--
             test/ruby/test_enumerator.rb | 20 ++++++++++++++++++++
             2 files changed, 33 insertions(+), 2 deletions(-)

commit 1b9ff146e38c348519434754e0466352b8b25c50
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-02-25 14:03:05 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-02-25 14:03:05 +0900

    Revert "merge revision(s) c8d162c889008028b148437d02f36f4edaa749fd: [Backport #19973]"

    This reverts commit 24dd529750c08b5603fb418a4f34998b9bf6c8f9.

commit 24dd529750c08b5603fb418a4f34998b9bf6c8f9
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-02-25 11:52:05 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-02-25 11:52:05 +0900

    merge revision(s) c8d162c889008028b148437d02f36f4edaa749fd: [Backport #19973]

            [Bug #19973] Warn duplicated keyword arguments after keyword splat

            ---
             parse.y                  | 11 +++++++----
             test/ruby/test_syntax.rb |  6 ++++++
             2 files changed, 13 insertions(+), 4 deletions(-)

commit 3960d894d98d20540e646a0d6c2186a2d676b96c
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-02-25 00:23:21 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-02-25 00:23:21 +0900

    merge revision(s) 665b4c5b2a31078d7db0173ad60daad0b463c1fd,642875e474b4e6a13770b1dbbc33d466ba5e0718,54b9b80b84760717aadb8bf67f638785ed895a58,361bce8d2c4c90a01eb3b7365a87dec0d93bb2b6: [Backport #19967]

            [Bug #19967] Reset `LIBPATHENV` env after started

            Not to affect other tools invoked as child processes.
            ---
             common.mk            | 3 ++-
             template/Makefile.in | 3 +++
             template/fake.rb.in  | 3 +++
             tool/fake.rb         | 8 ++++++++
             4 files changed, 16 insertions(+), 1 deletion(-)

            [Bug #19967] Revert "configure.ac: LIBPATHENV on macOS"

            This reverts commit 1961c786aab243b3eb60e7238224e87975d88056.  These
            environment variables should no longer propagate to child processes.
            ---
             configure.ac | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

            [Bug #19967] Delete real path

            ---
             tool/fake.rb | 3 ++-
             1 file changed, 2 insertions(+), 1 deletion(-)

            [Bug #19967] Ignore library before build

            ---
             tool/fake.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

commit aefc98891c42024039f19ef45bdfe93fbc590b7c
  Author:     Jun Aruga <jaruga@redhat.com>
  AuthorDate: 2024-01-04 01:34:39 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-01-31 19:43:45 +0900

    readline: Skip the test_interrupt_in_other_thread on arm32.

    Skip the test_interrupt_in_other_thread test failing on Travis arm32.
    The failing test is not a new issue. It had already been skipped in .travis.yml
    before updating .travis.yml.
    https://github.com/ruby/ruby/blob/7b05cb8dbbd637910757f402e64da3908b4bb809/.travis.yml#L99-L101

    Note that RUBY_PLATFORM is "armv8l-linux-eabihf" on Travis arm32 pipeline.
    And the readline was deleted in both master and ruby_3_3 branches.
    https://github.com/ruby/ruby/commit/59fd67fc3d405e529e038172e769ff20a8fb5535

    So, we only need this commit on ruby_3_2 and older Ruby version branches.

commit fc25e1662e88621178c15dbbb1a8b9cbc1cc4b13
  Author:     Jun Aruga <jaruga@redhat.com>
  AuthorDate: 2024-01-04 00:55:25 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-01-31 19:43:45 +0900

    Backport .travis.yml from ruby_3_3 branch.

    Update the .travis.yml file copied from the latest ruby_3_3 branch
    <5124f9ac7513eb590c37717337c430cb93caa151>.

commit 52bb2ac0a6971d0391efa2275f7a66bff319087c
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-01-18 15:26:39 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-01-18 15:26:39 +0900

    bump teeny

commit 99c9aeef4b4417120e30b145cf98e1bc68a2a0de
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-01-18 12:57:01 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-01-18 12:57:01 +0900

    merge revision(s) b8a3f1bd456f92866c4a7bd83235f78c574784a8:

            Fix crash in tracing object allocations

            ObjectSpace.trace_object_allocations_start could crash since it adds a
            TracePoint for when objects are freed. However, TracePoint could crash
            since it modifies st tables while inside the GC that is trying to free
            the object. This could cause a memory allocation to happen which would
            crash if it triggers another GC.

            See a crash log: http://ci.rvm.jp/results/trunk@ruby-sp1/4373707
            ---
             ext/objspace/depend           | 1 +
             ext/objspace/object_tracing.c | 7 +++++++
             gc.h                          | 4 ++--
             3 files changed, 10 insertions(+), 2 deletions(-)

commit 3302e251dccec1e981945ab19d316d0856c68bf6
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-01-18 11:56:43 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-01-18 11:56:43 +0900

    merge revision(s) e07e9f8491d9ab8b22d2bdf6a8aeba834dac7eef: [Backport #20174]

            RJIT: Do nothing on jit_cont_free

            if cont is NULL.
            ---
             cont.c | 2 ++
             1 file changed, 2 insertions(+)

commit 5dae6eb55e9785c8329708e55a49a280a344cdc1
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-01-18 11:53:29 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-01-18 11:53:29 +0900

    merge revision(s) 051a874325c177e040301878069c2b28f5d06ce6: [Backport #20096]

            Fix memory overread in registry.rb

            The terminator is not actually getting filled in; we're simply passing
            (two) bytes of empty memory as the NUL terminator. This can lead to
            garbage characters getting written to registry values.

            Fix this by explicitly putting a WCHAR_NUL character into the string to
            be sent to the registry API, like we do in the MULTI_SZ case.

            [Bug #20096]
            ---
             ext/win32/lib/win32/registry.rb | 7 ++-----
             1 file changed, 2 insertions(+), 5 deletions(-)

commit a26b41bf7a2db69b0889ed599f568a4ba2529eba
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-01-18 11:51:58 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-01-18 11:51:58 +0900

    merge revision(s) 37ed86fd3c798e298fad9db6e7df1f3f45e1e03b: [Backport #20161]

            Fix memory leak in regexp grapheme clusters

            [Bug #20161]

            The cc->mbuf gets overwritten, so we need to free it to not leak memory.

            For example:

                str = "hello world".encode(Encoding::UTF_32LE)

                10.times do
                  1_000.times do
                    str.grapheme_clusters
                  end

                  puts `ps -o rss= -p #{$$}`
                end

            Before:

                15536
                15760
                15920
                16144
                16304
                16480
                16640
                16784
                17008
                17280

            After:

                15584
                15584
                15760
                15824
                15888
                15888
                15888
                15888
                16048
                16112
            ---
             regparse.c | 3 ++-
             1 file changed, 2 insertions(+), 1 deletion(-)

commit b4f8623441a8be53b643fed826ba44e933cafd7e
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-01-18 11:50:31 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-01-18 11:50:31 +0900

    merge revision(s) b3d612804946e841e47d14e09b6839224a79c1a4: [Backport #20150]

            Fix memory leak in grapheme clusters

            [Bug #20150]

            String#grapheme_cluters and String#each_grapheme_cluster leaks memory
            because if the string is not UTF-8, then the created regex will not
            be freed.

            For example:

                str = "hello world".encode(Encoding::UTF_32LE)

                10.times do
                  1_000.times do
                    str.grapheme_clusters
                  end

                  puts `ps -o rss= -p #{$$}`
                end

            Before:

                26000
                42256
                59008
                75792
                92528
                109232
                125936
                142672
                159392
                176160

            After:

                9264
                9504
                9808
                10000
                10128
                10224
                10352
                10544
                10704
                10896
            ---
             string.c                 | 98 +++++++++++++++++++++++++++++++-----------------
             test/ruby/test_string.rb | 11 ++++++
             2 files changed, 75 insertions(+), 34 deletions(-)

commit 0cc0e43745ffc13a596441adccee295274d99a0b
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2024-01-18 11:48:46 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2024-01-18 11:48:46 +0900

    merge revision(s) f9a48548cf3ef54fc0a385ccd78c708737055ecc: [Backport #20042]

            restore the stack pointer on finalizer

            When error on finalizer, the exception will be ignored.
            To restart the code, we need to restore the stack pointer.

            fix [Bug #20042]
            ---
             gc.c                 | 4 ++++
             test/ruby/test_gc.rb | 9 +++++++++
             2 files changed, 13 insertions(+)

commit 3bd9adadbe0b500cf7e910c99db97aaddfba3369
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-01-05 17:34:25 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-01-05 18:21:44 +0900

    Bump up net-http to 0.4.1

commit 671fd2a6323ab1b11fe2ba672ad22b7d3e87945e
  Author:     Sorah Fukumori <her@sorah.jp>
  AuthorDate: 2024-01-01 20:45:54 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-01-05 18:21:44 +0900

    [ruby/net-http] Renew test certificates

    The private key is replaced with a public known test key published at
    [RFC 9500].

    Also lifetime has been extended to 10 years from 4 years.

    [RFC 9500]: https://www.rfc-editor.org/rfc/rfc9500.html

    https://github.com/ruby/net-http/commit/4ab6c4a500

commit 041448de7d326c6f88f8f4d20f6a546646c1cbf7
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-01-05 17:09:21 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-01-05 18:21:44 +0900

    Bump up net-imap to 0.3.4.1

commit 152eadd37ce7697b6b1596733fb37e3d69b33253
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-01-05 16:51:13 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-01-05 18:21:44 +0900

    Bump up net-smtp to 0.3.4

commit 01d63a459027bf62548359f30d55321edd3f49c8
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2024-01-05 14:40:07 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2024-01-05 18:21:44 +0900

    Bump up net-ftp to 0.2.1

commit 7b05cb8dbbd637910757f402e64da3908b4bb809
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-16 10:51:16 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-16 10:51:16 +0900

    NEWS.md: bump default gem net-http to 0.4.0

commit e7ad9a786dc4d4574f69629e9efa3d1d95413dca
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-16 10:45:01 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-16 10:48:39 +0900

    merge revision(s) e3a19b8a4306ae3103e6a27cdac7482585aac453:

            [ruby/net-http] Bump up 0.4.0

            https://github.com/ruby/net-http/commit/4be99c204c
            ---
             lib/net/http.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

commit c5cea385a5e42e464b436844f0ae185b17a93eb9
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-16 10:42:34 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-16 10:48:39 +0900

    merge revision(s) 66d266244c00c1f9ffcfbd2970386e0adcc2512a:

            [ruby/net-http] Removed obsolated Revision constant

            https://github.com/ruby/net-http/commit/c1c5638014
            ---
             lib/net/http.rb | 1 -
             1 file changed, 1 deletion(-)

commit 4cbad13e9cd1c4cf63ad4adc096cc4b6294a838f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-16 10:42:13 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-16 10:48:39 +0900

    merge revision(s) f109269a0392940df2b314e16502c4509b94a290,14fa5e39d72c84d3e12e10dc5d77a6e6200c10f5:

            [ruby/net-http] fix a false-negative test

            * no_proxy is meant to operate on the destination address, not on the name of the proxy
            * if both end with `'.example'`, the test does not nail down the behaviour

            https://github.com/ruby/net-http/commit/bb9a5cfa3d
            ---
             test/net/http/test_http.rb | 4 ++--
             1 file changed, 2 insertions(+), 2 deletions(-)

            [ruby/net-http] fix no_proxy behaviour

            https://github.com/ruby/net-http/commit/f4951dc42a
            ---
             lib/net/http.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

commit b3639871b2566c25c6c3b547f57348dc101ed3a4
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-16 10:41:49 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-16 10:48:39 +0900

    merge revision(s) 3dec5dc3462286cdbdb53e496e6175a82bdc39b7:

            [ruby/net-http] Force TLS version to 1.2 when using LibreSSL

            This comment previously specified TLS 1.2, but actually set the
            version to TLS 1.0.  LibreSSL 3.8.1 (included in OpenBSD 7.4)
            dropped support for TLS 1.0/1.1 for security reasons, which
            broke this test.  Switch the test to use TLS 1.2 as documented
            so it will continue to work on OpenBSD 7.4+.

            https://github.com/ruby/net-http/commit/97be4de53a
            ---
             test/net/http/test_https.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

commit 06051311d828bead3922ac5766822000c011e5db
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-16 10:40:29 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-16 10:48:39 +0900

    merge revision(s) 9d58f9382893a71d8badad605879c0120915fbee:

            [ruby/net-http] Net::HTTPResponse nil checking

            Fix nil handling in read_body and stream_check.

            Fixes: #70

            https://github.com/ruby/net-http/commit/36f916ac18
            ---
             lib/net/http/response.rb           |  3 ++-
             test/net/http/test_httpresponse.rb | 35 +++++++++++++++++++++++++++++++++++
             2 files changed, 37 insertions(+), 1 deletion(-)

commit 359653658e604c075e3eca73e20b02d0d46bd0ef
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-16 10:39:42 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-16 10:48:39 +0900

    merge revision(s) 8d04260acd8b6fba98867acc1a7e786495813fa0,2fbd8dca18a102cb3ffc5e7e6235c09fd0d04ba3,4165ec91d87ff1fcb41e312d896bea8a678c9bab,4d21134f3f1645ae2042d836e750ad267ee1551f,70da92cdf7ac75e071353c4551419ad02c284497,ea321a654d4b4fd6d56a1cdd6e117c62075898ee,ae68a8df586e9f3b3211e9c174b7001e57ee6aee,af67ced3b0945e8ea67434f8e66ef1e602656438,e77c766b7ab17e801c5cfa881754c392f8c13f0b:

            [ruby/net-http] turn on frozen strings for net/http/header

            https://github.com/ruby/net-http/commit/a5203c9f92
            ---
             lib/net/http/header.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

            [ruby/net-http] turn on frozen strings for net/http/generic_request

            https://github.com/ruby/net-http/commit/b92ade088d
            ---
             lib/net/http/generic_request.rb | 6 +++---
             1 file changed, 3 insertions(+), 3 deletions(-)

            [ruby/net-http] update net/http/response to be frozen string literal

            https://github.com/ruby/net-http/commit/dc3b4a75ca
            ---
             lib/net/http/response.rb | 6 +++---
             1 file changed, 3 insertions(+), 3 deletions(-)

            [ruby/net-http] freeze rest of lib

            https://github.com/ruby/net-http/commit/455a74734a
            ---
             lib/net/http.rb             | 2 +-
             lib/net/http/backward.rb    | 2 +-
             lib/net/http/exceptions.rb  | 2 +-
             lib/net/http/proxy_delta.rb | 2 +-
             lib/net/http/request.rb     | 2 +-
             lib/net/http/requests.rb    | 2 +-
             lib/net/https.rb            | 2 +-
             7 files changed, 7 insertions(+), 7 deletions(-)

            [ruby/net-http] Fix on 2.7

            https://github.com/ruby/net-http/commit/5194fd541e
            ---
             lib/net/http.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

            [ruby/net-http] use +'' everywhere

            https://github.com/ruby/net-http/commit/1077427152
            ---
             lib/net/http/generic_request.rb | 4 ++--
             lib/net/http/response.rb        | 2 +-
             2 files changed, 3 insertions(+), 3 deletions(-)

            [ruby/net-http] Update lib/net/http/response.rb

            @natematykiewicz's suggestion to avoid a string allocation

            https://github.com/ruby/net-http/commit/925630f227

            Co-authored-by: Nate Matykiewicz <natematykiewicz@gmail.com>
            ---
             lib/net/http/response.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

            [ruby/net-http] Update lib/net/http.rb

            @natematykiewicz's suggestion to avoid another string allocation

            https://github.com/ruby/net-http/commit/4a22c42338

            Co-authored-by: Nate Matykiewicz <natematykiewicz@gmail.com>
            ---
             lib/net/http.rb | 4 ++--
             1 file changed, 2 insertions(+), 2 deletions(-)

            [ruby/net-http] No longer neccessary to call `String#freeze` on
             string literals.

            See #144

            https://github.com/ruby/net-http/commit/5a986c13d3
            ---
             lib/net/http.rb                 | 2 +-
             lib/net/http/generic_request.rb | 8 ++++----
             2 files changed, 5 insertions(+), 5 deletions(-)

commit affd2c02962a83b353acd846d99500f3b7994009
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-16 10:36:58 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-16 10:48:39 +0900

    merge revision(s) 0300ea5a6c8a7a49feed73318fc8a991aa89fcfc:

            [ruby/net-http] Improve performance of HTTPHeader#content_type

            In the existing implementation, `main_type` and `sub_type` would end up
            being called multiple times potentially.

            Instead of doing that, save the result so it can be re-used.

            https://github.com/ruby/net-http/commit/179976f7ea
            ---
             lib/net/http/header.rb | 12 ++++++++----
             1 file changed, 8 insertions(+), 4 deletions(-)

commit ca83700944623d5934a6979ed209733045ac541c
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-16 10:36:05 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-16 10:48:39 +0900

    partially merge revision cfa6a892d05c5dcbd8fcd7c78cdbac49a8ff6100:

    Redirect to  for the portability

commit e337b858343f12a2765505dc958ab22c7e134cc9
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-16 10:32:50 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-16 10:48:39 +0900

    merge revision(s) 1b4c1492c1704407f86af2882efebc047b9c2d26,62e2b61607c04ff0d2543f0515b2171a24e66b4e,fd0a5659cadb49f1640b20896cd750decdbbd701,c8c3431b0a5995d58f97c511ffa0a39e0f19c75e,755c379d877c66916d20840f07738d6050da3ca2,030f39822ac9d6d7dcdb639e099b320d3517c19c,2f19c5b7e080f75c3373c5b1671b4d4cfab6d334:

            [ruby/net-http] [DOC] What's Here for Net:HTTP
             (https://github.com/ruby/net-http/pull/128)

            https://github.com/ruby/net-http/commit/39e70f0f9b
            ---
             lib/net/http.rb | 269 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
             1 file changed, 267 insertions(+), 2 deletions(-)

            Replaced non-ascii charactor. It fails version detection at
             `net-http.gemspec`.

              >#   Returns the X509 certificate chain for the session<E2><80><99>s socket peer.
            ---
             lib/net/http.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

            [ruby/net-http] Test building packages

            Also revert commit https://github.com/ruby/net-http/commit/d22ca54904de "Replaced
            non-ascii charactor. It fails version detection at `net-http.gemspec`."

            https://github.com/ruby/net-http/commit/fbeb247d93
            ---
             lib/net/http.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

            [ruby/net-http] Read in binary mode to get rid of invalid byte
             sequence

            https://github.com/ruby/net-http/commit/38de3d17a7
            ---
             lib/net/http/net-http.gemspec | 11 ++++++++---
             1 file changed, 8 insertions(+), 3 deletions(-)

            [ruby/net-http] Exclude git related files

            https://github.com/ruby/net-http/commit/2767df580d
            ---
             lib/net/http/net-http.gemspec | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

            [ruby/net-http] Re-apply
             https://github.com/ruby/net-http/commit/d22ca54904de after testing

            https://github.com/ruby/net-http/commit/7ac7401a9c
            ---
             lib/net/http.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

            [ruby/net-http] Enhanced RDoc for Net::HTTP
             (https://github.com/ruby/net-http/pull/130)

            https://github.com/ruby/net-http/commit/698e18cfc1
            ---
             lib/net/http/response.rb | 53 ++++++++++++++++++++++++++++++++----------------
             1 file changed, 36 insertions(+), 17 deletions(-)

commit 0869dc58d601022f31065aa064b1cda02f53a7de
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-16 10:27:52 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-16 10:48:39 +0900

    merge revision(s) 9cc0ac22f7c9f37aa7fadfe5606ce2feed260d2d:

            Update lib/net/http/status.rb

            ---
             lib/net/http/status.rb | 9 +++++----
             1 file changed, 5 insertions(+), 4 deletions(-)

commit f48a9bbb16fb369d614208a60a4b81ea024a67d1
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-16 10:27:07 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-16 10:48:39 +0900

    partially merge revision db0a4c8923e0e084c7d757d132a83fc9c8431633:

    Prefer to use File.foreach instead of IO.foreach

commit 74444d539dbb0c5c460f42cdaf0a23a59c10972f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-16 10:07:51 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-16 10:48:39 +0900

    merge revision(s) cd6c7613f31a371326d86de55af15918d6aa01f1:

            Apply the accidental commits again before Ruby 3.2.

              Reverts the following commits:

              eb8d4d7b5145849325985c00b810b8d75661d86e
              edb83dc3a2c374e880e8eb488152872152790e92
              d40064d1846b5835dff81e3f168c0c3a6c85e814
            ---
             ext/openssl/ossl_pkey_ec.c |   2 +-
             lib/erb.gemspec            |   2 +-
             lib/net/http/responses.rb  | 137 +++++++++++++++++++++++++++++++++++++++------
             3 files changed, 121 insertions(+), 20 deletions(-)

commit a77833b02d1cc33b26fc1ce5fa8be5eccef49dde
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2023-12-15 10:21:52 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2023-12-15 10:21:52 +0900

    Backport YJIT docs for Ruby 3.2 (#9245)

    * Backport YJIT docs for Ruby 3.2

    * Revert a change since ext/readline still exists in 3.2

commit f1097813a30ced07b324daa9699f07dba3b202fa
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-09 16:50:08 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-09 16:50:08 +0900

    merge revision(s) d8b8294c28a09278de357c26b291abf1b9f3cc5d,eedcd696a57521a18963d58487db8057a374a67a,bc0a7a641b6d0d3ff979cfa11e25683f8fa59ebd:

            [ruby/net-http] Limit header length

            https://github.com/ruby/net-http/commit/c245f7f9c8
            ---
             lib/net/http/header.rb | 8 ++++++++
             1 file changed, 8 insertions(+)

            [ruby/net-http] Fix previous commit

            https://github.com/ruby/net-http/commit/1b276e2654
            ---
             lib/net/http/header.rb | 4 ++--
             1 file changed, 2 insertions(+), 2 deletions(-)

            [ruby/net-http] typofix

            https://github.com/ruby/net-http/commit/4d31bde125
            ---
             lib/net/http/header.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

commit 4797127258f26ebac18d23c5715dde36b8a1b1ef
  Author:     MSP-Greg <Greg.mpls@gmail.com>
  AuthorDate: 2023-12-02 23:52:44 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-03 13:58:16 +0900

    [CI] windows.yml - use MSYS2 bison instead of Chocolatey

commit 82d39cb846748cd7de618b34b818f34d2c077e7e
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-12-02 17:58:03 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-12-02 17:58:03 +0900

    merge revision(s) 6ebcf25de2859b5b6402b7e8b181066c32d0e0bf: [Backport #20036]

            GC guard catch_table_ary in iseq_set_exception_table

            The function iseq_set_exception_table allocates memory which can cause
            a GC compaction to run. Since catch_table_ary is not on the stack, it
            can be moved, which would make tptr incorrect.
            ---
             compile.c | 10 +++++++---
             1 file changed, 7 insertions(+), 3 deletions(-)

commit 1fe09feb065972a6b76ec2dfe0e3aa6bbdf37eb7
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-11-21 22:06:00 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-11-21 22:06:00 +0900

    bump patchlevel. [Backport #20010]

commit 6ad47f356b8d6cafe2da6306aab801af406ee94e
  Author:     Bo Anderson <mail@boanderson.me>
  AuthorDate: 2023-11-21 22:04:00 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2023-11-21 22:04:00 +0900

    [3.2 backport] Fix compile error on older systems without clock_get* (#8948)

    Fix compile error on older systems without clock_get*

commit ba0de58de3bc891507f2d1dfffbe4ad632fdcd5c
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-11-21 22:01:54 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-11-21 22:01:54 +0900

    merge revision(s) 8d1109c03bacc952b6218af2e4ae9b74c9855273:

            Added assertion values for Amazon Linux 2023

            ---
             spec/ruby/core/file/utime_spec.rb | 8 +++++---
             1 file changed, 5 insertions(+), 3 deletions(-)

commit d9f4f321c60ecd8f569c383a3a63f952fd764f48
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-11-19 22:02:55 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-11-19 22:02:55 +0900

    merge revision(s) 674db715f5a141891a66e67004ca138696d3b0ad,1f1b9b0942ec12dde1af8000f8cb84692904fccc:

            [ruby/rdoc] test/rdoc/test_rdoc_generator_json_index.rb: Use
             assert_equal instead of assert.

            It's better because assert_equal prints the values when it fails.

            https://github.com/ruby/rdoc/commit/91d40ce8f8
            ---
             test/rdoc/test_rdoc_generator_json_index.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

            [ruby/rdoc] test/rdoc/test_rdoc_generator_json_index.rb: pend in
             test_generate in ppc64le.

            We observed that this test randomly fails in the ruby/ruby Travis ppc64le case.
            This commit is to pend the test_generate if the assertion for the generated
            file's modified time fails in a ppc64le environment.

            Note that I didn't use the word "Travis CI" or Travis CI specific environment variables
            such as `TRAVIS` and `TRAVIS_CPU_ARCH`[1] in the code. Because I wanted to prioritize the
            rdoc's independence from the ruby/ruby.

            [1] https://docs.travis-ci.com/user/environment-variables/#default-environment-variables

            https://github.com/ruby/rdoc/commit/42cdad1cf2
            ---
             test/rdoc/test_rdoc_generator_json_index.rb | 12 ++++++++++++
             1 file changed, 12 insertions(+)

commit 5e9948336e95ea8e5ff7f0554ae57be8d498af70
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-11-19 22:01:21 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-11-19 22:01:21 +0900

    merge revision(s) 3eaae72855b23158e2148566bb8a7667bfb395cb:

            test/fiber/test_queue.rb: Make the stuck test fail. (#8791)

            test/fiber/test_queue.rb: Make the stuck tests fail.

            We observed the 2 tests in the `test/fiber/test_queue.rb` getting stuck
            in some GCC compilers in Ubuntu ppc64le focal/jammy, even when the timeout
            `queue.pop(timeout: 0.0001)` is set in the code.

            This commit is to make the tests fail rather than getting stuck.
            ---
             test/fiber/test_queue.rb | 20 ++++++++++++++++----
             1 file changed, 16 insertions(+), 4 deletions(-)

commit 1cc38d5a2f84733e1c2e42548639e2891fe61e69
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-11-19 22:00:38 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-11-19 22:00:38 +0900

    merge revision(s) 9eac9d71786a8dbec520d0541a91149f01adf8ea: [Backport #19969]

            [Bug #19969] Compact st_table after deleted if possible

            ---
             hash.c                 | 19 +++++++++++++++++++
             st.c                   | 40 +++++++++++++++++++++++++++++-----------
             test/ruby/test_hash.rb |  9 +++++++++
             3 files changed, 57 insertions(+), 11 deletions(-)

commit 5baf94f9131fb45d50c8c408e007a138ced46606
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-11-18 11:28:03 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-11-18 12:06:27 +0900

    merge revision(s) 1f115f141dd17f75049a5e17107906c5bcc372e1:

            Speed up rebuilding the loaded feature index

            Rebuilding the loaded feature index slowed down with the bug fix
            for #17885 in 79a4484a072e9769b603e7b4fbdb15b1d7eccb15.  The
            slowdown was extreme if realpath emulation was used, but even when
            not emulated, it could be about 10x slower.

            This adds loaded_features_realpath_map to rb_vm_struct. This is a
            hidden hash mapping loaded feature paths to realpaths. When
            rebuilding the loaded feature index, look at this hash to get
            cached realpath values, and skip calling rb_check_realpath if a
            cached value is found.

            Fixes [Bug #19246]
            ---
             load.c    | 27 +++++++++++++++++++++++----
             vm.c      |  2 ++
             vm_core.h |  1 +
             3 files changed, 26 insertions(+), 4 deletions(-)

commit d1ba26a54d9301ea12fbc1b7d0e8223ce507de3b
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-11-18 12:04:57 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-11-18 12:04:57 +0900

    Revert "merge revision(s) 9682275b5493439334fb3933ce2da3b95271eb1c: [Backport #19999]"

    This reverts commit 4b16259d1d6f408a88ac2c8d04ed78e87bdeda9f.

commit 4b16259d1d6f408a88ac2c8d04ed78e87bdeda9f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-11-18 11:41:58 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-11-18 11:41:58 +0900

    merge revision(s) 9682275b5493439334fb3933ce2da3b95271eb1c: [Backport #19999]

            [Travis] make `.bundle` directory writable

            To create gem files from sources under `gems/src` for tests.
            ---
             .travis.yml | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

commit 482e1f573ee45ef562cc6d218ba26d44660f8e0a
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-11-10 11:41:57 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-11-10 11:41:57 +0900

    merge revision(s) 17b0643392749f45b7aacb64fc1c1bd704d42b4c: [Backport #19924]

            [Bug #19924] Source code should be unsigned char stream

            Use `peekc` or `nextc` to fetch the next character, instead of reading
            from `lex.pcur` directly, for compilers that plain char is signed.
            ---
             parse.y                 | 10 +++++-----
             test/ruby/test_parse.rb |  2 ++
             2 files changed, 7 insertions(+), 5 deletions(-)

commit 2aaa9af75989bb0993a44e9690ed2ca890b2ff91
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-11-09 17:36:42 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-11-09 17:36:42 +0900

    merge revision(s) 4329554f171fdb483cafa672df5f2a08741940c5,b5c74d548872388921402ff2db36be15e924a89b: [Backport #19985]

            [Bug #19985] Raise LoadError with the converted feature name

            `Kernel#require` converts feature name objects that have the `to_path`
            method such as `Pathname`, but had used the original object on error
            and had resulted in an unexpected `TypeError`.
            ---
             load.c                    | 14 +++++++++++---
             test/ruby/test_require.rb | 26 +++++++++++++++++++++-----
             2 files changed, 32 insertions(+), 8 deletions(-)

            Ease the `Encoding::CompatibilityError` test failure

            At the time this test first started using `assert_raise_with_message`,
            it did not touch `Encoding.default_internal`.
            ---
             test/ruby/test_require.rb | 3 ++-
             1 file changed, 2 insertions(+), 1 deletion(-)

commit 8bbf909bb561732057b533cee1618b14886e07ba
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-10-28 11:39:43 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-10-28 11:57:52 +0900

    merge revision(s) 19346c2336053b351673da030b00c704138252d8: [Backport #19754]

            [Bug #19754] Make `IO::Buffer#get_string` check `offset` range
             (#8016)

            ---
             io_buffer.c                 | 3 +++
             test/ruby/test_io_buffer.rb | 8 ++++++++
             2 files changed, 11 insertions(+)

commit ddbab4f837460f070942e8127de9a9f1b9868fff
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-09-30 13:51:18 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-09-30 13:51:18 +0900

    merge revision(s) 6b66b5fdedb2c9a9ee48e290d57ca7f8d55e01a2: [Backport #19902]

            [Bug #19902] Update the coderange regarding the changed region

            ---
             ext/-test-/string/set_len.c       | 10 ++++++++++
             string.c                          | 27 +++++++++++++++++++++++++++
             test/-ext-/string/test_set_len.rb | 29 +++++++++++++++++++++++++++++
             3 files changed, 66 insertions(+)

commit 128d8728d39c2da21e5433c7af169f73e18fd133
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-09-30 13:48:45 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-09-30 13:48:45 +0900

    merge revision(s) ef59175a68c448fe334125824b477a9e1d5629bc: [Backport #19903]

            fix iseq kwargs table and original_iseq leaks

            [bug #19903]

            Co-authored-by: Peter Zhu <peter@peterzhu.ca>
            ---
             iseq.c | 4 ++++
             1 file changed, 4 insertions(+)

commit a191cf561786bde3d0b7d298aab1fbeb1051645c
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-09-30 13:47:33 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-09-30 13:47:33 +0900

    merge revision(s) c42261059dfebabbf0391327a5e077545a9bc438: [Backport #19901]

            [Bug #19901]

            fix leak in module clone

            Co-authored-by: Peter Zhu <peter@peterzhu.ca>
            ---
             class.c                  |  1 +
             test/ruby/test_module.rb | 12 ++++++++++++
             2 files changed, 13 insertions(+)

commit 97b7070ebd5493de8d3a6a9b0ecc91bef5068d3f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-09-30 13:46:29 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-09-30 13:46:29 +0900

    merge revision(s) 8b236e0c66da8f92e9fc33de66cfbc8e4b0c0763: [Backport #19896]

            [Bug #19896]

            fix memory leak in vm_method

            This introduces a unified reference_count to clarify who is referencing a method.
            This also allows us to treat the refinement method as the def owner since it counts itself as a reference

            Co-authored-by: Peter Zhu <peter@peterzhu.ca>
            ---
             gc.c                     |   4 +-
             method.h                 |   6 +--
             rjit_c.rb                |   6 +--
             test/ruby/test_module.rb |   4 +-
             vm_insnhelper.c          |   2 +-
             vm_method.c              | 105 +++++++++++++++++++----------------------------
             6 files changed, 54 insertions(+), 73 deletions(-)

commit 5640baa2f82f528a092d92ceaabeb76c43c098ee
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-09-30 13:37:37 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-09-30 13:37:37 +0900

    merge revision(s) fe0225ff4d5af8b1f54009727b39d0d9b821eea3: [Backport #19778]

            [Bug #19778] Add `-I` options for opt-dir to `$INCFLAGS`

            These options have been separated from `$CFLAGS` already in the
            other places.
            ---
             configure.ac | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

commit e7ab923b880ac75862cf9c287ac8ecbcd8ed1a31
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-09-30 13:30:08 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-09-30 13:30:08 +0900

    merge revision(s) d4c720a91bc7bb9ff31810e1720acffb939f7a2f: [Backport #19845]

            Fix support for dynamic keys. (#8273)

            * Skip RBS test.
            ---
             cont.c                               |  8 +++-----
             spec/ruby/core/fiber/storage_spec.rb | 14 ++++++++++++++
             tool/rbs_skip_tests                  |  2 ++
             3 files changed, 19 insertions(+), 5 deletions(-)

commit d30781db4de82a891712f359d7659c9fc98cb215
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-09-30 13:07:35 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-09-30 13:07:35 +0900

    merge revision(s) 2214bcb70d9f9120f1f3790ca340236c8f080991: [Backport #19792]

            Fix premature string collection during append

            Previously, the following crashed due to use-after-free
            with AArch64 Alpine Linux 3.18.3 (aarch64-linux-musl):

            ```ruby
            str = 'a' * (32*1024*1024)
            p({z: str})
            ```

            32 MiB is the default for `GC_MALLOC_LIMIT_MAX`, and the crash
            could be dodged by setting `RUBY_GC_MALLOC_LIMIT_MAX` to large values.
            Under a debugger, one can see the `str2` of rb_str_buf_append()
            getting prematurely collected while str_buf_cat4() allocates capacity.

            Add GC guards so the buffer of `str2` lives across the GC run
            initiated in str_buf_cat4().

            [Bug #19792]
            ---
             string.c | 2 ++
             1 file changed, 2 insertions(+)

commit 9ee58b2054c1bbe722ae5a2a4ec6a750ee583220
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-09-24 15:13:32 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-09-24 15:13:32 +0900

    merge revision(s) 96c5a4be7b0d72502001734770af0f4a735c544c: [Backport #19894]

            Fix memory leak in complemented method entries

            [Bug #19894]

            When a copy of a complemented method entry is created, there are two
            issues:

            1. IMEMO_FL_USER3 is not copied, so the complemented status is not
               copied over.
            2. In rb_method_entry_clone we increment both alias_count and
               complemented_count. However, when we free the method entry in
               rb_method_definition_release, we only decrement one of the two
               counters, resulting in the rb_method_definition_t being leaked.

            Co-authored-by: Adam Hess <adamhess1991@gmail.com>
            ---
             method.h                 |  5 +++--
             test/ruby/test_module.rb | 29 +++++++++++++++++++++++++++++
             vm_method.c              |  8 +++++---
             3 files changed, 37 insertions(+), 5 deletions(-)

commit 9cd28caa7cc3b0d987db7c1231fe101fb3b27399
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-09-24 14:16:10 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-09-24 14:16:10 +0900

    merge revision(s) 901b6d9c5025a30b3d7a5ed0a2c00baf9cfb061d: [Backport #19853]

            Validate the typed data before dereferencing the internal struct.
             (#8315)

            ---
             process.c                  |  5 +++--
             test/fiber/test_process.rb | 21 +++++++++++++++++++++
             2 files changed, 24 insertions(+), 2 deletions(-)

commit 217ef2bf89b3861e83c2e2a3a633c019f0731de6
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-09-24 13:48:08 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-09-24 13:48:08 +0900

    merge revision(s) 25711683e86271385e8abe09a9c03782000e48db: [Backport #19864]

            Fix regression when testing inclusion in unbounded ranges

            Caused by 04a92a6764bf678919cf4b68a27496a39d6b886a.  This treats
            unbounded ranges of arbitrary objects the same as how unbounded
            string ranges are treated:

              (..x)  === y  # (y <=> x) <= 0
              (...x) === y  # (y <=> x) <  0
              (x..)  === y  # (x <=> y) <= 0

            Fixes [Bug #19864]
            ---
             range.c                 |  9 +++++++++
             test/ruby/test_range.rb | 23 +++++++++++++++++++++++
             2 files changed, 32 insertions(+)

commit a7335e11e354d1ee2e15233f32f087230069ad5c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2023-09-16 14:17:20 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2023-09-16 14:17:20 +0900

    [Backport 3.2] Fix missing write barrier in iseq instruction list (#8431)

    Fix missing write barrier in iseq instruction list

    [Bug #19880]

    There's a missing write barrier for operands in the iseq instruction
    list, which can cause crashes.

    It can be reproduced when Ruby is compiled with `-DRUBY_DEBUG_ENV=1`.
    Using the following command:

    ```
    RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR=0 RUBY_DEBUG=gc_stress ruby -w --disable=gems -Itool/lib -W0 test.rb
    ```

    The following script crashes:

    ```
    require "test/unit"
    ```

commit e159971e03102090e29f3555975498f75cf02f2c
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2023-09-16 13:06:39 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2023-09-16 13:06:39 +0900

    [For ruby_3_2] Fix unused_mut Rust warnings (#8435)

    Fix unused_mut Rust warnings

    Rust version 1.71.0 and up issue these warnings. On GitHub CI, the
    warnings were previously seen in -DYJIT_FORCE_ENABLE runs.

commit bb877e5b4fe81965af60a0d86daeb8ed477e8e87
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-09-09 19:33:29 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-09-09 19:33:29 +0900

    merge revision(s) 382678d4112f4afc6272244c22924d2b004274b1: [Backport #19788]

            [Bug #19788] Use the result of `tCOLON2` event

            ---
             parse.y                            | 16 ++++++++--------
             test/ripper/test_parser_events.rb  | 17 +++++++++++++++++
             test/ripper/test_scanner_events.rb |  5 +++++
             3 files changed, 30 insertions(+), 8 deletions(-)

commit 0b7a4fbaa9c56d2c67d00d86c69f9e5c71803267
  Author:     KJ Tsanaktsidis <kj@kjtsanaktsidis.id.au>
  AuthorDate: 2023-08-18 22:19:21 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-09-09 18:51:25 +0900

    Allow waitpid(-1) to be woken if a waitpid(pid) call is pending

    If two threads are running, with one calling waitpid(-1), and another
    calling waitpid($some_pid), and then $some_other_pid exits, we would
    expect the waitpid(-1) call to retrieve that exit status; however, it
    cannot actually do so until $some_pid _also_ exits.

    This patch fixes the issue by unconditionally checking for pending
    process group waits on SIGCHLD, and then allowing pending pid-only waits
    to "steal" the notification.

    [Fixes #19387]

commit bbdffef63c55a594e604bd1ec5e90bffc6ea4c12
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-08-23 13:05:09 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-29 23:25:18 +0900

    Bump up bundler-2.4.19

commit ab1eacc8bc32a5604219878911ab1b3a92c320f6
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-08-18 12:10:47 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-29 23:25:18 +0900

    Merge RubyGems-3.4.19 and Bundler-2.4.19

commit 1434059ab5006e32ad872a62e7f0ecca190194fb
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-08-18 12:10:30 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-29 23:25:18 +0900

    Merge RubyGems-3.4.18 and Bundler-2.4.18

commit d6c3a1778c74431e68766db8a65eef77c8659661
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-07-19 14:15:15 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-29 23:25:18 +0900

    Merge RubyGems-3.4.17 and Bundler-2.4.17

commit 829048df2ff7f810b01bcf524086f891ee1ac5af
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-07-19 14:14:48 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-29 23:25:18 +0900

    Merge RubyGems-3.4.16 and Bundler-2.4.16

commit e44e42c3039d26c016554f3db1c0d6817abbad87
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-07-19 14:14:12 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-29 23:25:18 +0900

    Merge RubyGems-3.4.15 and Bundler-2.4.15

commit a36c8364331d39dd7da6308c6ae99f5a810ac510
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-07-19 14:13:32 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-29 23:25:18 +0900

    Merge RubyGems-3.4.14 and Bundler-2.4.14

commit 1b1a5b29843aba07e5a45f30ac1f23b1cb1e8173
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-07-19 14:13:05 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-29 23:25:18 +0900

    Merge RubyGems-3.4.13 and Bundler-2.4.13

commit c71a89f7854bd68bc631747681b4ea6c91d845d5
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-07-19 14:12:38 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-29 23:25:18 +0900

    Merge RubyGems-3.4.12 and Bundler-2.4.12

commit dd91a17560946db1cb33c0ae1ecf3abe555ed1d0
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-07-19 14:12:03 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-29 23:25:18 +0900

    Merge RubyGems-3.4.11 and Bundler-2.4.11

commit 5d568e18980b2fdec4701b52f2d89833fa20c0a8
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-08-29 21:06:04 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-29 21:06:04 +0900

    merge revision(s) a28c5151f567cada0d2f5c0c3ec4df7f97b80784: [Backport #19855]

            Fix Array#bsearch when block returns a non-integer numeric value

            ---
             array.c                 | 4 ++--
             test/ruby/test_array.rb | 4 ++++
             2 files changed, 6 insertions(+), 2 deletions(-)

commit e777064e4b064fd77aca65c123f1919433f6732d
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-08-24 14:56:50 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-24 16:06:32 +0900

    Revert "Re-apply "Ruby 3.2 - Speed up rebuilding the loaded feature index and realpath cache (#8023)" (#8252)"

    This reverts commit 788b03d5ba82fd8b35ce1fe2618ce6bacc648333.

commit 788b03d5ba82fd8b35ce1fe2618ce6bacc648333
  Author:     MSP-Greg <MSP-Greg@users.noreply.github.com>
  AuthorDate: 2023-08-22 08:33:47 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2023-08-22 08:33:47 +0900

    Re-apply "Ruby 3.2 - Speed up rebuilding the loaded feature index and realpath cache (#8023)" (#8252)

    * Re-apply "Ruby 3.2 - Speed up rebuilding the loaded feature index and realpath cache (#8023)"

    * [CI] mingw.yml - remove IBM437 encoding for test-all, use cmd shell for test & test-all

    * Skip failing test on mingw with readline.so

    Co-authored-by: nagachika <nagachika@ruby-lang.org>

    ---------

    Co-authored-by: nagachika <nagachika@ruby-lang.org>

commit e517ba2e5b6434e7d2370de7703f481dcb8eecba
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-06-01 17:05:35 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-20 13:26:54 +0900

    Bump up syntax_suggest-1.1.0

commit 0c908fa681271f13750aa64420203f1a58fa03fe
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-08-13 13:35:25 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-13 13:35:25 +0900

    merge revision(s) 0b8f15575a440f85ac686f5b0eae8f8b7c2b72e7: [Backport #19836]

            Fix memory leak for incomplete lambdas

            [Bug #19836]

            The parser does not free the chain of `struct vtable`, which causes
            memory leaks.

            The following script reproduces this issue:

            ```
            10.times do
              100_000.times do
                Ripper.parse("-> {")
              end

              puts `ps -o rss= -p #{$$}`
            end
            ```
            ---
             parse.y                    | 24 ++++++++++++++----------
             test/ripper/test_ripper.rb |  7 +++++++
             2 files changed, 21 insertions(+), 10 deletions(-)

commit 6898389a0f640c4155a7073579f43d1e16893698
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-08-13 13:21:30 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-13 13:21:30 +0900

    merge revision(s) 5bc8fceca8d47ed1ef9c603c6531a408de36b60c: [Backport #19835]

            Fix memory leak in parser for incomplete tokens

            [Bug #19835]

            The parser does not free the `tbl` of the `struct vtable` when there are
            leftover `lvtbl` in the parser. This causes a memory leak.

            The following script reproduces this issue:

            ```
            10.times do
              100_000.times do
                Ripper.parse("class Foo")
              end

              puts `ps -o rss= -p #{$$}`
            end
            ```
            ---
             parse.y                    | 42 ++++++++++++++++++++++++++++--------------
             test/ripper/test_ripper.rb |  7 +++++++
             2 files changed, 35 insertions(+), 14 deletions(-)

commit ead1a83b2f5951cd09667ed2722ab14b9bcf0834
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-08-12 13:54:17 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-12 13:54:17 +0900

    merge revision(s) 1b0da1e6236ad9a380abfe4ca8b51f06c34bb6f9:

            Skip running brew upgrade (#8189)

            This has been unstable:
            https://github.com/ruby/ruby/actions/runs/5797755676/job/15713988590

            and I'm not sure if we need that in the first place, assuming the
            OS image itself is maintained by GitHub.
            ---
             .github/actions/setup/macos/action.yml | 1 -
             1 file changed, 1 deletion(-)

commit b11f238a811513b31c4f65c822370ac470f438dc
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-08-12 13:51:03 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-12 13:51:03 +0900

    merge revision(s) 72d1a790cfe0e4a457db98c587f1acaa5e39f001: [Backport #19833]

            [Bug #19833] Fix index underflow at superclasses of `BasicObject`

            ---
             object.c                | 4 ++++
             test/ruby/test_class.rb | 7 +++++++
             2 files changed, 11 insertions(+)

commit 3c9cb7031154b8666d600b0055ba868e18805dc8
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-08-12 13:48:14 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-12 13:48:14 +0900

    merge revision(s) 1d096c1e53581ed9fe94694c9760babd1e12e580: [Backport #19793]

            Fix crash in NoMethodError for dummy frames
            MIME-Version: 1.0
            Content-Type: text/plain; charset=UTF-8
            Content-Transfer-Encoding: 8bit

            [Bug #19793]

            Dummy frames are created at the top level when requiring another file.
            While requiring a file, it will try to convert using encodings. Some of
            these encodings will not respond to to_str. If method_missing is
            redefined on Object, then it will call method_missing and attempt raise
            an error. However, the iseq is invalid as it's a dummy frame so it will
            write an invalid iseq to the created NoMethodError.

            The following script crashes:

            ```
            GC.stress = true

            class Object
              public :method_missing
            end

            File.write("/tmp/empty.rb", "")
            require "/tmp/empty.rb"
            ```

            With the following backtrace:

            ```
            frame #0: 0x00000001000fa8b8 miniruby`RVALUE_MARKED(obj=4308637824) at gc.c:1638:12
            frame #1: 0x00000001000fb440 miniruby`RVALUE_BLACK_P(obj=4308637824) at gc.c:1763:12
            frame #2: 0x00000001000facdc miniruby`gc_writebarrier_incremental(a=4308637824, b=4308332208, objspace=0x000000010180b000) at gc.c:8822:9
            frame #3: 0x00000001000faad8 miniruby`rb_gc_writebarrier(a=4308637824, b=4308332208) at gc.c:8864:17
            frame #4: 0x000000010016aff0 miniruby`rb_obj_written(a=4308637824, oldv=36, b=4308332208, filename="../iseq.c", line=1279) at gc.h:804:9
            frame #5: 0x0000000100162a60 miniruby`rb_obj_write(a=4308637824, slot=0x0000000100d09888, b=4308332208, filename="../iseq.c", line=1279) at gc.h:837:5
            frame #6: 0x0000000100165b0c miniruby`iseqw_new(iseq=0x0000000100d09880) at iseq.c:1279:9
            frame #7: 0x0000000100165a64 miniruby`rb_iseqw_new(iseq=0x0000000100d09880) at iseq.c:1289:12
            frame #8: 0x00000001000d8324 miniruby`name_err_init_attr(exc=4309777920, recv=4304780496, method=827660) at error.c:1830:35
            frame #9: 0x00000001000d1b80 miniruby`name_err_init(exc=4309777920, mesg=4308332496, recv=4304780496, method=827660) at error.c:1869:12
            frame #10: 0x00000001000d1bd4 miniruby`rb_nomethod_err_new(mesg=4308332496, recv=4304780496, method=827660, args=4308332448, priv=0) at error.c:1957:5
            frame #11: 0x000000010039049c miniruby`rb_make_no_method_exception(exc=4304914512, format=4308332496, obj=4304780496, argc=1, argv=0x000000016fdfab00, priv=0) at vm_eval.c:959:16
            frame #12: 0x00000001003b3274 miniruby`raise_method_missing(ec=0x0000000100b06f40, argc=1, argv=0x000000016fdfab00, obj=4304780496, last_call_status=MISSING_NOENTRY) at vm_eval.c:999:15
            frame #13: 0x00000001003945d4 miniruby`rb_method_missing(argc=1, argv=0x000000016fdfab00, obj=4304780496) at vm_eval.c:944:5
            ...
            frame #23: 0x000000010038f5e4 miniruby`rb_vm_call_kw(ec=0x0000000100b06f40, recv=4304780496, id=2865, argc=1, argv=0x000000016fdfab00, me=0x0000000100cbfcf0, kw_splat=0) at vm_eval.c:326:12
            frame #24: 0x00000001003c18e4 miniruby`call_method_entry(ec=0x0000000100b06f40, defined_class=4304927952, obj=4304780496, id=2865, cme=0x0000000100cbfcf0, argc=1, argv=0x000000016fdfab00, kw_splat=0) at vm_method.c:2720:20
            frame #25: 0x00000001003c440c miniruby`check_funcall_exec(v=6171896792) at vm_eval.c:589:12
            frame #26: 0x00000001000dec00 miniruby`rb_vrescue2(b_proc=(miniruby`check_funcall_exec at vm_eval.c:587), data1=6171896792, r_proc=(miniruby`check_funcall_failed at vm_eval.c:596), data2=6171896792, args="Pȗ") at eval.c:919:18
            frame #27: 0x00000001000deab0 miniruby`rb_rescue2(b_proc=(miniruby`check_funcall_exec at vm_eval.c:587), data1=6171896792, r_proc=(miniruby`check_funcall_failed at vm_eval.c:596), data2=6171896792) at eval.c:900:17
            frame #28: 0x000000010039008c miniruby`check_funcall_missing(ec=0x0000000100b06f40, klass=4304923536, recv=4304780496, mid=3233, argc=0, argv=0x0000000000000000, respond=-1, def=36, kw_splat=0) at vm_eval.c:666:15
            frame #29: 0x000000010038fa60 miniruby`rb_check_funcall_default_kw(recv=4304780496, mid=3233, argc=0, argv=0x0000000000000000, def=36, kw_splat=0) at vm_eval.c:703:21
            frame #30: 0x000000010038fb04 miniruby`rb_check_funcall(recv=4304780496, mid=3233, argc=0, argv=0x0000000000000000) at vm_eval.c:685:12
            frame #31: 0x00000001001c469c miniruby`convert_type_with_id(val=4304780496, tname="String", method=3233, raise=0, index=-1) at object.c:3061:15
            frame #32: 0x00000001001c4a4c miniruby`rb_check_convert_type_with_id(val=4304780496, type=5, tname="String", method=3233) at object.c:3153:9
            frame #33: 0x00000001002d59f8 miniruby`rb_check_string_type(str=4304780496) at string.c:2571:11
            frame #34: 0x000000010014b7b0 miniruby`io_encoding_set(fptr=0x0000000100d09ca0, v1=4304780496, v2=4, opt=4) at io.c:11655:19
            frame #35: 0x0000000100139a58 miniruby`rb_io_set_encoding(argc=1, argv=0x000000016fdfb450, io=4308334032) at io.c:13497:5
            frame #36: 0x00000001003c0004 miniruby`ractor_safe_call_cfunc_m1(recv=4308334032, argc=1, argv=0x000000016fdfb450, func=(miniruby`rb_io_set_encoding at io.c:13487)) at vm_insnhelper.c:3271:12
            ...
            frame #43: 0x0000000100390b08 miniruby`rb_funcall(recv=4308334032, mid=16593, n=1) at vm_eval.c:1137:12
            frame #44: 0x00000001002a43d8 miniruby`load_file_internal(argp_v=6171899936) at ruby.c:2500:5
            ...
            ```
            ---
             error.c                   |  4 +++-
             test/ruby/test_require.rb | 15 +++++++++++++++
             2 files changed, 18 insertions(+), 1 deletion(-)

commit 19823032abc2d1827a2aaf41bf3a3948afad8feb
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-08-12 13:46:25 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-08-12 13:46:25 +0900

    merge revision(s) 954b7ac81ef503df3c1efc5566df985b08951d52: [Backport #19789]

            addr2line.c: fix `DW_FORM_ref_addr` parsing for DWARF 2 (#8146)

            addr2line.c: fix DW_FORM_ref_addr parsing for DWARF 2

            This fixes a crash when retrieving backtrace info with YJIT enabled on
            macOS with Rust 1.71.0. Since Rust 1.71.0, the DWARF info generated by
            the Rust compiler uses DW_FORM_ref_addr instead of DW_FORM_ref4 for
            pointers to other DIEs.
            DW_FORM_ref_addr representation in DWARF 2 is different from DWARF 3+,
            so we need to handle it separately.
            This patch fixes the parsing of DW_FORM_ref_addr for DWARF 2, which is
            the default DWARF version Rustc uses on macOS.

            See the DWARF 2.0.0 spec, section 7.5.4 Attribute Encodings
            https://dwarfstd.org/doc/dwarf-2.0.0.pdf

            https://bugs.ruby-lang.org/issues/19789
            ---
             addr2line.c | 40 ++++++++++++++++++++++++++--------------
             1 file changed, 26 insertions(+), 14 deletions(-)

commit 1c7624469880bcb964be09a49e4907873f45b026
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-29 17:58:42 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-29 17:58:42 +0900

    Revert "Ruby 3.2 - Speed up rebuilding the loaded feature index and realpath cache (#8023)"

    This reverts commit 8346d1630b8193eef1ec9dd537b16de74afdc2e8.
    It seems break CI on MinGW.
    https://github.com/ruby/ruby/actions/runs/5698775895/job/15447455988

commit 8346d1630b8193eef1ec9dd537b16de74afdc2e8
  Author:     Kerem Kat <keremkat@gmail.com>
  AuthorDate: 2023-07-29 14:27:11 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2023-07-29 14:27:11 +0900

    Ruby 3.2 - Speed up rebuilding the loaded feature index and realpath cache (#8023)

    * Speed up rebuilding the loaded feature index

    Rebuilding the loaded feature index slowed down with the bug fix
    for #17885 in 79a4484a072e9769b603e7b4fbdb15b1d7eccb15.  The
    slowdown was extreme if realpath emulation was used, but even when
    not emulated, it could be about 10x slower.

    This adds loaded_features_realpath_map to rb_vm_struct. This is a
    hidden hash mapping loaded feature paths to realpaths. When
    rebuilding the loaded feature index, look at this hash to get
    cached realpath values, and skip calling rb_check_realpath if a
    cached value is found.

    Fixes [Bug #19246]

    * Add a realpath cache to reduce number of syscalls.

    Number of lstat and stat syscalls for each 'require'd file is doubled,
    because rb_realpath_internal is called from two places with the same
    arguments in require_internal; once for checking the realpaths cache,
    and once in load_iseq_eval when iseq is not found.

    Introduce rb_realpath_internal_cached function to reuse the realpath_map
    cache which memoizes rb_realpath_internal function, leading to less
    syscalls and increased startup performance depending on the cost of the syscalls
    in a particular environment.

    ---------

    Co-authored-by: Jeremy Evans <code@jeremyevans.net>

commit 19a3466a1460924058ca16a259601bb753293d43
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-29 14:04:01 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-29 14:04:01 +0900

    merge revision(s) cada537040743cbe49aac6740816d648ca0d3fb: [Backport #19786]

            [DOC] Fix call-seq for Data.define

            ---
             struct.c | 4 +---
             1 file changed, 1 insertion(+), 3 deletions(-)

commit 9f5c32ce85db830459768c588b82a6d07f5d22dc
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-29 13:54:10 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-29 13:54:10 +0900

    merge revision(s) 99162dee7aa478d8a65f028b098bdaa69e1ecad5: [Backport #19751]

            [Bug #19751] Remove linemarkers in middle

            ---
             template/fake.rb.in | 1 +
             1 file changed, 1 insertion(+)

commit 0b3ed6043c9d091d499ca1caed604a983c7e285b
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-23 12:20:12 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-23 12:20:12 +0900

    merge revision(s) 5d4fff845602872eef072e7611558b5f8762efe0: [Backport #19293]

            Tighten Time.new(string) parsing

            Disallow:

            * Only year-month
            * Only year-month-day
            * Preceding whitespace
            * Trailing whitespace

            Fixes [Bug #19293]
            ---
             test/ruby/test_time.rb | 13 +++++++++++++
             time.c                 | 13 ++++++++++++-
             2 files changed, 25 insertions(+), 1 deletion(-)

commit 3354aacb73c65420a10cb41c0696e62dd1ba279b
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-23 12:01:21 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-23 12:01:21 +0900

    merge revision(s) 3874381c4483ba7794ac2abf157e265546f9bfa7: [Backport #19759]

            Fix autosplat conditions to handle ruby2_keywords case

            Autosplat should not occur if there are two arguments but second
            argument is an array containing a ruby2_keywords splat. Only
            autosplat if a single argument to be yielded to the block, and there
            is no splatted flagged keyword hash passed.

            Fixes [Bug #19759]
            ---
             test/ruby/test_proc.rb | 26 ++++++++++++++++++++++++++
             vm_args.c              |  3 ++-
             2 files changed, 28 insertions(+), 1 deletion(-)

commit b97a744a3778abe52fffb051e1460a0a6f7c4a6d
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-22 14:01:55 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-22 14:01:55 +0900

    merge revision(s) 9c94db7cfc584e982a6449b72e58a1cf25024177,fe4d906f5fbacbe6e9267af3bd3503339bad63a9: [Backport #19774]

            Add tests for `return` in `BEGIN` and `END` blocks

            ---
             spec/ruby/language/return_spec.rb | 15 +++++++++++++++
             test/ruby/test_syntax.rb          |  1 +
             2 files changed, 16 insertions(+)

            [Bug #19774] Fix segfault at `return` in `END`

            ---
             eval_error.c             | 7 ++++++-
             test/ruby/test_syntax.rb | 5 +++++
             2 files changed, 11 insertions(+), 1 deletion(-)

commit 65d294ad019c8ac5bba12e2c9098360bacafc9e3
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-22 13:39:44 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-22 13:39:44 +0900

    merge revision(s) bc3ac1872e4523334e3ed04c2bb70a55c4c43f98: [Backport #19748]

            [Bug #19748] Fix out-of-bound access in `String#byteindex`

            ---
             string.c                 | 17 +++++++----------
             test/ruby/test_string.rb |  3 +++
             2 files changed, 10 insertions(+), 10 deletions(-)

commit 35cf3a5f8d01aad07762eb824c3107bee9ae7fdd
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-22 13:32:30 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-22 13:32:30 +0900

    merge revision(s) 038f9ade3c4d965415e4956561975454cf9eeb21: [Backport #19585]

            Use tools appropriate with CC

            To get rid of mysterious errors such as:

            ```
            /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm: error: libruby.3.3-static.a(/): The end of the file was unexpectedly encountered
            ```

            and

            ```
            ld: warning: ignoring file ../../libruby.3.3-static.a, building for macOS-x86_64 but attempting to link with file built for macOS-x86_64
            Undefined symbols for architecture x86_64:
              "_rb_rational_num", referenced from:
            ```
            ---
             configure.ac | 6 ++++++
             1 file changed, 6 insertions(+)

commit 4e0653db3315e9e7859e38e0995e2b9900471370
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-22 13:31:34 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-22 13:31:34 +0900

    merge revision(s) 2c8f2871a8aeff592369a993b1d69557160cfa61: [Backport #19532]

            Fix handling of 6-byte codepoints in left_adjust_char_head in CESU-8
             encoding

            ---
             enc/cesu_8.c                | 23 +++++++++++++++++++----
             test/ruby/enc/test_cesu8.rb |  4 ++++
             2 files changed, 23 insertions(+), 4 deletions(-)

commit fa72ba72f8c64fd0fa87c8f68cbc31f2e7b94b00
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-22 13:24:55 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-22 13:24:55 +0900

    merge revision(s) 54dbd8bea8a79bfcdefa471c1717c6cd28022f33: [Backport #19535]

            Use an st table for "too complex" objects

            st tables will maintain insertion order so we can marshal dump / load
            objects with instance variables in the same order they were set on that
            particular instance

            [ruby-core:112926] [Bug #19535]

            Co-Authored-By: Jemma Issroff <jemmaissroff@gmail.com>
            ---
             gc.c                     | 10 ++++------
             include/ruby/st.h        |  2 ++
             object.c                 |  2 +-
             ractor.c                 | 43 ++++++++++++++++++++++---------------------
             shape.h                  |  6 +++---
             st.c                     |  6 ++++++
             test/ruby/test_shapes.rb | 21 +++++++++++++++++++++
             variable.c               | 28 ++++++++++++++--------------
             vm_insnhelper.c          |  2 +-
             9 files changed, 74 insertions(+), 46 deletions(-)

commit a3911b965f094f07080cf7adb22ee5e2e8555d86
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-22 13:08:16 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-22 13:08:16 +0900

    merge revision(s) 0402193723647b8c4f57b1453fe2192ad2788d12: [Backport #19709]

            Fix `Thread#join(timeout)` when running inside the fiber scheduler.
             (#7903)

            ---
             test/fiber/test_thread.rb | 22 ++++++++++++++++++++++
             thread.c                  |  5 +++++
             2 files changed, 27 insertions(+)

commit ea89527a76a84741463c304246db2dd3a5df845b
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-22 13:03:22 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-22 13:03:22 +0900

    merge revision(s) 0b2613f44309bddae45562c9f3a14ed43e56959b: [Backport #19640]

            `rb_io_puts` should not write zero length strings. (#7806)

            ---
             io.c                  | 40 ++++++++++++++++++++++++----------------
             test/fiber/test_io.rb | 28 ++++++++++++++++++++++++++++
             2 files changed, 52 insertions(+), 16 deletions(-)

commit 465eb7418d7ed91f5f0c75da77765c7f5ef8354f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-22 11:55:49 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-22 11:55:49 +0900

    merge revision(s) 91c004885fc75a93cadf0094fa86ec3bd0ec25f5: [Backport #19025]

            [Bug #19025] Numbered parameter names are always local variables

            ---
             parse.y                  | 2 +-
             test/ruby/test_syntax.rb | 1 +
             2 files changed, 2 insertions(+), 1 deletion(-)

commit e65e0b99267c495186d7abb78c2725418761d756
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-22 11:48:47 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-22 11:48:47 +0900

    merge revision(s) fac814c2dc31afef272b45392a7389ef0bfa3a4f: [Backport #19602]

            Fix `PLATFORM_GET_INC`

            On platforms where unaligned word access is not allowed, and if
            `sizeof(val)` and `sizeof(type)` differ:

            - `val` > `type`, `val` will be a garbage.
            - `val` < `type`, outside `val` will be clobbered.
            ---
             regexec.c | 2 +-
             regint.h  | 9 ++++++++-
             2 files changed, 9 insertions(+), 2 deletions(-)

commit 46b62f44ce30bf234a76114c8249081e47ce3da4
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-22 11:44:54 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-22 11:44:54 +0900

    merge revision(s) 3592b24cdc07ed89eecb39161f21fe721a89a5de: [Backport #19531]

            ObjectSpace::WeakMap: clean inverse reference when an entry is
             re-assigned

            [Bug #19531]

            ```ruby
            wmap[1] = "A"
            wmap[1] = "B"
            ```

            In the example above, we need to remove the `"A" => 1` inverse reference
            so that when `"A"` is GCed the `1` key isn't deleted.
            ---
             test/ruby/test_weakmap.rb | 17 +++++++++
             weakmap.c                 | 91 ++++++++++++++++++++++++++++++++++++++---------
             2 files changed, 91 insertions(+), 17 deletions(-)

commit 3f6187a94797d3c4a7db00563a885e4e613b51cf
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 18:04:41 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 18:04:41 +0900

    merge revision(s) 1bc8838d60ef3fc6812d3b64ed87caaf0ae943d9: [Backport #19750]

            Handle unterminated unicode escapes in regexps

            This fixes an infinite loop possible after ec3542229b29ec93062e9d90e877ea29d3c19472.
            For \u{} escapes in regexps, skip validation in the parser, and rely on the regexp
            code to handle validation. This is necessary so that invalid unicode escapes in
            comments in extended regexps are allowed.

            Fixes [Bug #19750]

            Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
            ---
             parse.y                 | 97 ++++++++++++++++++++++++++++++++-----------------
             test/ruby/test_parse.rb | 16 ++++++++
             2 files changed, 79 insertions(+), 34 deletions(-)

commit aef53162249ce090568e24a70e6d26b85bf399d6
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 17:30:42 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 17:30:42 +0900

    Fixup be09d77b966c7bcc77957927f16cefe66b365495.

commit be09d77b966c7bcc77957927f16cefe66b365495
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 17:23:31 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 17:23:31 +0900

    merge revision(s) a8ba1ddd78544b4bda749051d44f7b2a8a0ec5ff: [Backport #19455]

            Use UTF-8 encoding for literal extended regexps with UTF-8 characters
             in comments

            Fixes [Bug #19455]
            ---
             re.c                     | 9 ++++++++-
             test/ruby/test_regexp.rb | 7 +++++++
             2 files changed, 15 insertions(+), 1 deletion(-)

commit 5fbd72764e020c6b165604e9cdcc932a1c5d2a93
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 17:21:51 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 17:21:51 +0900

    merge revision(s) 31e67a476f2262e01a0829e8ab5e6d8a97e0724e,0b95cbcbde8875effdbcbb676cb0a7f751a1d4c1: [Backport #19601]

            YJIT: Fix false object collection when setting ivar

            Previously, setinstancevariable could generate code that calls
            `rb_ensure_iv_list_size()` without first updating `cfp->sp`. This means
            in the event that a GC start from within said routine the top few
            objects would not be marked, causing them to be falsly collected.

            Call `jit_prepare_routine_call()` first.

            [Bug #19601]
            ---
             bootstraptest/test_yjit.rb | 20 ++++++++++++++++++++
             yjit/src/codegen.rs        |  5 +++++
             2 files changed, 25 insertions(+)

            YJIT: Remove duplicate `asm.spill_temps()`

            `jit_prepare_routine_call()` calls it, and there is another call above on line 2302.

            Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>
            ---
             yjit/src/codegen.rs | 1 -
             1 file changed, 1 deletion(-)

commit 5fc9825ccf651664c547b1822c7f753464e27f06
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 16:09:00 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 16:09:00 +0900

    merge revision(s) 02a7e12b80823919fb614ad3ea6241d5115d14fe: [Backport #19593]

            Ensure throw data is not set as cause

            [Bug #19593]

            rb_ec_setup_exception did not check if errinfo is a throw_data. This can
            cause crashes in code since it is assumed that id_cause is an object.

            We saw a crash in show_cause due to id_cause of errinfo being a
            throw_data. It crashes on rb_obj_is_kind_of since it cannot be called on
            T_IMEMO objects.

            Unfortunately, we couldn't find a reproduction script, however we
            debugged the core dump and rb_ec_setup_exception is the only place where
            id_cause is assigned from errinfo without checking if it is a
            throw_data.

            ```
            0x0000556c5708e6dd in sigsegv (sig=11, info=0x7f301befa3f0, ctx=0x7f301befa2c0) at signal.c:964
            0x00007f301d046420 in <signal handler called> () at /lib/x86_64-linux-gnu/libpthread.so.0
            class_search_class_ancestor (c=139844586301760, cl=<optimized out>) at object.c:810
            rb_obj_is_kind_of (obj=obj@entry=139839221734880, c=139844586301760) at object.c:861
            0x0000556c56f2f00f in show_cause
                (errinfo=errinfo@entry=139838840645160, str=str@entry=139839221730520, opt=139839221730480, highlight=0, reverse=reverse@entry=0, backtrace_limit=backtrace_limit@entry=-1, shown_causes=0x7ffe9d1a2d68) at ./include/ruby/internal/special_consts.h:175
            ```

            Co-Authored-By: Jean Boussier <byroot@ruby-lang.org>
            ---
             eval.c | 4 ++++
             1 file changed, 4 insertions(+)

commit 5328c58c7d00540f4f56749aaeefb68761bd7eba
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 16:07:39 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 16:07:39 +0900

    merge revision(s) 1a149aab776aa6741628eb35482eff1ded197fd2,fb17c833f542222afdf482924877d43aa577782d,60f22ebf86248388b41b4ec751d16700f2b4b621: [Backport #19533]

            Extract range type check functions

            ---
             range.c | 55 ++++++++++++++++++++++++++++++++++++-------------------
             1 file changed, 36 insertions(+), 19 deletions(-)

            [Bug #19533] Fix infinite range inclusion with numeric value

            ---
             range.c                 | 10 +++++++---
             test/ruby/test_range.rb |  2 ++
             2 files changed, 9 insertions(+), 3 deletions(-)

            [Bug #19533] Add spec of infinite range inclusion

            ---
             spec/ruby/core/range/case_compare_spec.rb | 6 ++++++
             1 file changed, 6 insertions(+)

commit 8165db0f4666f90fe0df5cdd466f73c6de1f6cea
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 14:21:39 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 14:21:39 +0900

    merge revision(s) 8c360ce713f57d4177de833297364f6f6d950420: [Backport #19589]

            hash.c: Fix hash_iter_lev_dec corrupting shape

            [Bug #19589]

            When decrementing `iter_lev` from `65` to `64` the flags would be
            corrupted, causing the shape_id to be invalid.
            ---
             hash.c                 | 12 +++++++++---
             test/ruby/test_hash.rb | 11 +++++++++++
             2 files changed, 20 insertions(+), 3 deletions(-)

commit a7b0d3c9db9afeccf6e0962bb1cdcbea5bf04cae
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 14:20:00 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 14:20:00 +0900

    merge revision(s) 0ac3f2c20e50c22d298238f602f25f84248ac7a5: [Backport #19587]

            [Bug #19587] Fix `reset_match_cache` arguments

            ---
             regexec.c                | 2 +-
             test/ruby/test_regexp.rb | 8 ++++++++
             2 files changed, 9 insertions(+), 1 deletion(-)

commit 0c5d539421e50351ed26fbf9cac852d58425776a
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 14:09:11 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 14:09:11 +0900

    Fixup the latest commits.

commit 8852b4b2deea20f488208dc4730ef149f67d7594
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 13:59:25 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 13:59:25 +0900

    merge revision(s) 0ce2bdc76dd17aa3d42a352a6244c87a51e7606d: [Backport #19595]

            YJIT: Fix missing argc check in known cfuncs

            Previously we were missing a compile-time check that the known cfuncs
            receive the correct number of arguments.

            We noticied this because in particular when using ARGS_SPLAT, which also
            wasn't checked, YJIT would crash on code which was otherwise correct
            (didn't raise exceptions in the VM).

            This still supports vararg (argc == -1) cfuncs. I added an additional
            assertion that when we use the specialized codegen for one of these
            known functions that the argc are popped off the stack correctly, which
            should help ensure they're implemented correctly (previously the crash
            was usually observed on a future `leave` insn).

            [Bug #19595]
            ---
             bootstraptest/test_yjit.rb | 32 ++++++++++++++++++++++++++++++++
             yjit/src/codegen.rs        |  4 +++-
             2 files changed, 35 insertions(+), 1 deletion(-)

commit 9d8d0585ec35070099e4fdeef5ee18f6fbf339b6
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 09:54:51 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 09:54:51 +0900

    merge revision(s) f6adc5be94a9f70a5b9897b81dabdeb49b573393,bccdc041665032b819fab1c04ed4dbdfeeeb366b: [Backport #19582]

            Check if Bundler is defined

            ---
             tool/lib/leakchecker.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

            Check if `Bundler::EnvironmentPreserver` is defined

            Only `Bundler` might be defined.  `EnvironmentPreserver` and its
            `BUNDLER_PREFIX` would be defined together in the same file.
            ---
             tool/lib/leakchecker.rb | 5 ++++-
             1 file changed, 4 insertions(+), 1 deletion(-)

commit 62763658d53a66ad624e1c730742cb3811d18329
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 09:51:53 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 09:51:53 +0900

    merge revision(s) 52e571fa72debcd764765775bd1b76ee87e36d2d: [Backport #19580]

            Ensure ruby_xfree won't segfault if called after vm_destruct

            [Bug #19580]

            The real-world scenario motivating this change is libxml2's pthread
            code which uses `pthread_key_create` to set up a destructor that is
            called at thread exit to free thread-local storage.

            There is a small window of time -- after ruby_vm_destruct but before
            the process exits -- in which a pthread may exit and the destructor is
            called, leading to a segfault.

            Please note that this window of time may be relatively large if
            `atexit` is being used.
            ---
             gc.c | 12 ++++++++++--
             1 file changed, 10 insertions(+), 2 deletions(-)

commit 98b4ac7287928c202c90e9de1ae02c0707ec68b8
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 09:50:10 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 09:50:10 +0900

    merge revision(s) 537183cd2ac0163851277b46a2f21ea5914c11c0: [Backport #19577]

            Fix write barrier order for `klass` to `cme` edge

            Previously, the following crashes with
            `CFLAGS=-DRGENGC_CHECK_MODE=2 -DRUBY_DEBUG=1 -fno-inline`:

                $ ./miniruby -e 'GC.stress = true; Marshal.dump({})'

            It crashes with a write barrier (WB) miss assertion on an edge from the
            `Hash` class object to a newly allocated negative method entry.

            This is due to usages of vm_ccs_create() running the WB too early,
            before the method entry is inserted into the cc table, so before the
            reference edge is established. The insertion can trigger GC and promote
            the class object, so running the WB after the insertion is necessary.
            Move the insertion into vm_ccs_create() and run the WB after the
            insertion.

            Discovered on CI:
            http://ci.rvm.jp/results/trunk-asserts@ruby-sp2-docker/4391770
            ---
             vm_eval.c       |  3 +--
             vm_insnhelper.c | 10 ++++++----
             vm_method.c     |  3 +--
             3 files changed, 8 insertions(+), 8 deletions(-)

commit cb8d656100659eaee44042ca680886c30892df04
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 09:45:57 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 09:45:57 +0900

    merge revision(s) a84c99468f26a9f79fec57926d561ed906505eac: [Backport #19575]

            Fix crash in Time on 32-bit systems

            [Bug #19575]

            struct vtm is packed causing it to have a size that is not aligned on
            32-bit systems. When allocating it on the stack, it will have unaligned
            addresses which means that the fields won't be marked by the GC when
            scanning the stack (since the GC only marks aligned addresses). This can
            cause crashes when the fields are heap allocated objects like Bignums.

            This commit moves the flags in struct time_object into struct vtm for
            space efficiency and removes the need for packing.

            This is an example of a crash:

                ruby(rb_print_backtrace+0xd) [0x56848945] ../src/vm_dump.c:785
                ruby(rb_vm_bugreport) ../src/vm_dump.c:1101
                ruby(rb_assert_failure+0x7a) [0x56671857] ../src/error.c:878
                ruby(vm_search_cc+0x0) [0x56666e47] ../src/vm_method.c:1366
                ruby(rb_vm_search_method_slowpath) ../src/vm_insnhelper.c:2090
                ruby(callable_method_entry+0x5) [0x568232d3] ../src/vm_method.c:1406
                ruby(rb_callable_method_entry) ../src/vm_method.c:1413
                ruby(gccct_method_search_slowpath) ../src/vm_eval.c:427
                ruby(gccct_method_search+0x20f) [0x568237ef] ../src/vm_eval.c:476
                ruby(opt_equality_by_mid_slowpath+0x2c) [0x5682388c] ../src/vm_insnhelper.c:2338
                ruby(rb_equal+0x37) [0x566fe577] ../src/object.c:133
                ruby(rb_big_eq+0x34) [0x56876ee4] ../src/bignum.c:5554
                ruby(rb_int_equal+0x14) [0x566f3ed4] ../src/numeric.c:4640
                ruby(rb_int_equal) ../src/numeric.c:4634
                ruby(vm_call0_cfunc_with_frame+0x6d) [0x568303c2] ../src/vm_eval.c:148
                ruby(vm_call0_cfunc) ../src/vm_eval.c:162
                ruby(vm_call0_body) ../src/vm_eval.c:208
                ruby(rb_funcallv_scope+0xd1) [0x56833971] ../src/vm_eval.c:85
                ruby(RB_TEST+0x0) [0x567e8488] ../src/time.c:78
                ruby(eq) ../src/time.c:78
                ruby(small_vtm_sub) ../src/time.c:1523
                ruby(timelocalw+0x23b) [0x567f3e9b] ../src/time.c:1593
                ruby(time_s_alloc+0x0) [0x567f536b] ../src/time.c:3698
                ruby(time_new_timew) ../src/time.c:2694
                ruby(time_s_mktime) ../src/time.c:3698
            ---
             test/ruby/test_time.rb |  7 ++-----
             time.c                 | 57 ++++++++++++++++++++++++--------------------------
             timev.h                |  7 +++++--
             3 files changed, 34 insertions(+), 37 deletions(-)

commit 9fb94407b97bb85ea344e67606f8ae9ba0bdbd48
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-17 09:29:04 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-17 09:29:04 +0900

    merge revision(s) 417b1a36447cb2c650de55b433ba623541fb8bb3: [Backport #19550]

            Fix memory leak for iclass

            [Bug #19550]

            If !RCLASS_EXT_EMBEDDED (e.g. 32 bit systems) then the rb_classext_t is
            allocated throug malloc so it must be freed.

            The issue can be seen in the following script:

            ```
            20.times do
              100_000.times do
                mod = Module.new
                Class.new do
                  include mod
                end
              end

              # Output the Resident Set Size (memory usage, in KB) of the current Ruby process
              puts `ps -o rss= -p #{$$}`
            end
            ```

            Before this fix, the max RSS is 280MB, while after this change, it's
            30MB.
            ---
             gc.c                     |  2 +-
             test/ruby/test_module.rb | 15 +++++++++++++++
             2 files changed, 16 insertions(+), 1 deletion(-)

commit 45b14ef5c55e5b1956c590f4cfddacbccfc7bf8a
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-16 23:30:43 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-16 23:30:43 +0900

    merge revision(s) 7c9ce38cdb781958c52a89b910ee83d5fea99048:

            Remove duplicated Rust installation

            ---
             .cirrus.yml | 6 +-----
             1 file changed, 1 insertion(+), 5 deletions(-)

commit 6feef620c5bfc17548e96227ab08910dd97bb11c
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-16 23:28:37 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-16 23:28:37 +0900

    merge revision(s) 4bfa4433830a4e48bc4ca43aef861d213affdd84:

            [Cirrus] Set up cargo environments just once at first

            ---
             .cirrus.yml | 22 +++++++++++-----------
             1 file changed, 11 insertions(+), 11 deletions(-)

commit 35b0f10519afb5446dc1da1ebea440cc1efdc8d9
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-16 23:27:44 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-16 23:27:44 +0900

    merge revision(s) 3a761dcc91fcbed828699fcc38017f14a1a2db65,d2ffd0ad3d225b6b9e121278146eae8500e9f259:

            [Cirrus] Show CPU and memory info

            ---
             .cirrus.yml | 6 ++++++
             1 file changed, 6 insertions(+)

            [Cirrus] Share configuration using YAML aliases

            https://cirrus-ci.org/guide/tips-and-tricks/#sharing-configuration-between-tasks
            ---
             .cirrus.yml | 113 ++++++++++++++++++------------------------------------------
             1 file changed, 33 insertions(+), 80 deletions(-)

commit e14280fa25b085a1c9521d45064529984f5c6324
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-16 23:20:16 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-16 23:20:16 +0900

    merge revision(s) bde3b98a6040800e05c9cf448228f094f80b8fed:

            [Cirrus] Make gem download non-verbose

            ---
             .cirrus.yml | 16 ++++++++--------
             1 file changed, 8 insertions(+), 8 deletions(-)

commit 88cd13999251797b9a0563123a9bf130197e230b
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-16 18:59:17 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-16 18:59:17 +0900

    merge revision(s) 37513490442322e82961bf6d06c1c86d55cb3830:

            [Cirrus] Cache the bundled gems in advance

            ---
             .cirrus.yml | 19 +++++++++++++++++++
             1 file changed, 19 insertions(+)

commit c911cbd6c3dcc80def61ab48be1815cd910fc91b
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-16 16:50:13 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-16 16:50:13 +0900

    merge revision(s) bd786e78969f9d4a8699376ceafe10934b6ad533: [Backport #19084]

            Fix mutation on shared strings. (#7837)

            ---
             io_buffer.c                 | 19 ++++++++++++-------
             test/ruby/test_io_buffer.rb |  4 ----
             2 files changed, 12 insertions(+), 11 deletions(-)

commit 5ad2390b551f4a28ea3d4db78c21863489fdd681
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-16 16:44:22 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-16 16:44:22 +0900

    merge revision(s) 466aa8010fb49f9ec6c78ea1de4e8ca0965f4fdf: [Backport #19546]

            Fix incorrect usage of `rb_fiber_scheduler_io_(p)(read|write)`.
             (#7593)

            ---
             io_buffer.c                  |  8 ++++----
             scheduler.c                  | 48 ++++++++++++++++++++++----------------------
             test/fiber/test_io_buffer.rb | 33 ++++++++++++++++++++++++++++++
             3 files changed, 61 insertions(+), 28 deletions(-)

commit c13757ed9ae02a2d03aea91bb852397aa920f3fd
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-16 16:42:12 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-16 16:42:12 +0900

    merge revision(s) 09295ea796900fb7b05d29e93364090e21598566: [Backport #19543]

            IO::Buffer#resize: Free internal buffer if new size is zero (#7569)

            `#resize(0)` on an IO::Buffer with internal buffer allocated will
            result in calling `realloc(data->base, 0)`. The behavior of `realloc`
            with size = 0 is implementation-defined (glibc frees the object
            and returns NULL, while BSDs return an inaccessible object). And
            thus such usage is deprecated in standard C (upcoming C23 will make it
            UB).

            To avoid this problem, just `free`s the memory when the new size is zero.
            ---
             io_buffer.c                 |  5 +++++
             test/ruby/test_io_buffer.rb | 18 ++++++++++++++++++
             2 files changed, 23 insertions(+)

commit 141402d11c09fa641eebd8f4841f81e7bbf3518c
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-16 12:58:21 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-16 12:58:21 +0900

    merge revision(s) e1bd45624c85e8a80991bda20801f50967ac77a1: [Backport #19482]

            Fix crash when allocating classes with newobj hook

            We need to zero out the whole slot when running the newobj hook for a
            newly allocated class because the slot could be filled with garbage,
            which would cause a crash if a GC runs inside of the newobj hook.

            For example, the following script crashes:

            ```
            require "objspace"

            GC.stress = true

            ObjectSpace.trace_object_allocations {
              100.times do
                Class.new
              end
            }
            ```

            [Bug #19482]
            ---
             gc.c                           | 8 +++++++-
             test/objspace/test_objspace.rb | 7 +++++++
             2 files changed, 14 insertions(+), 1 deletion(-)

commit b13db31ce8cb8c3a763cc41a6ff616be363ef14a
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-16 11:46:04 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-16 11:46:04 +0900

    merge revision(s) fe42d88ad28df395111cfb9f2f67e21910083df1:

            Pass -Werror=lto-type-mismatch for GCC LTO jobs

            This helps to find possible LTO miscompilations earlier. See also
            https://github.com/ruby/ruby/pull/7695.
            ---
             .github/workflows/compilers.yml | 12 ++++++------
             1 file changed, 6 insertions(+), 6 deletions(-)

commit 3e664c58133a5954de878e138854447e945b8246
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-16 11:43:54 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-16 11:43:54 +0900

    merge revision(s) 27a21ad201b04f9af6c206836b4c7543fb69a1e7:

            give up checking old compilers

            These old compilers needed old OSes, which are getting EODed.  We
            cannot maintain healthy binary of them (building compilers on our
            own is quite haed).  Let us just retire them.  Fixes [Bug #19353]
            ---
             .github/workflows/compilers.yml | 6 ------
             1 file changed, 6 deletions(-)

commit 293a00e622da077cd6fad2e4055eb15b081fc2a6
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-16 11:25:10 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-16 11:25:45 +0900

    merge revision(s) 33edcc112081f96856d52e73253d73c97a5c4a3c,b4e438d8aabaf4bba2b27f374c787543fae07c58: [Backport #19483]

            YJIT: Protect strings from GC on String#<< (#7466)

            Fix https://github.com/Shopify/yjit/issues/310

            [Bug #19483]

            Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
            Co-authored-by: Jimmy Miller <jimmy.miller@shopify.com>
            ---
             yjit/src/codegen.rs | 3 +++
             1 file changed, 3 insertions(+)

            YJIT: Save PC on rb_str_concat (#7586)

            [Bug #19483]

            Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>
            ---
             test/ruby/test_yjit.rb | 19 +++++++++++++++++++
             yjit/src/codegen.rs    |  6 ++++--
             2 files changed, 23 insertions(+), 2 deletions(-)

commit 0ba10fd8508b1a2bf7488649ee90622de9bef04a
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-16 11:22:31 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-16 11:25:45 +0900

    merge revision(s) 132934b82baad97107fe754d60f9a68a1db7ecda: [Backport #19463]

            YJIT: Generate Block::entry_exit with block entry PC

            Previously, when Block::entry_exit is requested from any instruction
            that is not the first one in the block, we generated the exit with an
            incorrect PC. We should always be using the PC for the entry of the
            block for Block::entry_exit.

            It was a simple typo. The bug was [introduced][1] while we were
            refactoring to use the current backend. Later, we had a chance to spot
            this issue while [preparing][2] to enable unused variable warnings, but
            didn't spot the issue.

            Fixes [Bug #19463]

            [1]: 27fcab995e6dde19deb91dc6e291bdb72100af68
            [2]: 31461c7e0eab4963ccc8649ea8ebf27979132c0c
            ---
             test/ruby/test_yjit.rb | 41 +++++++++++++++++++++++++++++++++++++++++
             yjit/src/codegen.rs    |  4 ++--
             2 files changed, 43 insertions(+), 2 deletions(-)

commit 2f603bc4d750384d57513679ca9db2b4e2e3ec34
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2023-07-05 00:07:18 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2023-07-05 00:07:18 +0900

    ruby_3_2 backport for #8006 (#8008)

    YJIT: Fix autosplat miscomp for blocks with optionals

    When passing an array as the sole argument to `yield`, and the yieldee
    takes more than 1 optional parameter, the array is expanded similar
    to `*array` splat calls. This is called "autosplat" in
    `setup_parameters_complex()`.

    Previously, YJIT did not detect this autosplat condition. It passed the
    array without expanding it, deviating from interpreter behavior.
    Detect this conditon and refuse to compile it.

commit 07d5709feea0b4d4fe23e2f346383791c614f073
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-01 14:18:06 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-01 14:18:06 +0900

    bump patchlevel

commit 038913f1e9dd4efdbea4047b3e0a3e15f407dfd2
  Author:     eileencodes <eileencodes@gmail.com>
  AuthorDate: 2023-06-03 04:26:02 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-01 14:17:30 +0900

    Add missing write barrier

    We were missing the write barrier for class_value to cref. This should
    fix the segv we were seeing in http://ci.rvm.jp/logfiles/brlog.trunk-gc-asserts.20230601-165052

    Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>

commit 8a3d57971c99680d4baec84553247b9c6ee41080
  Author:     eileencodes <eileencodes@gmail.com>
  AuthorDate: 2023-02-08 05:46:50 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-01 14:17:30 +0900

    Fix cvar caching when class is cloned

    The class variable cache that was added in
    https://github.com/ruby/ruby/pull/4544 changed the behavior of class
    variables on cloned classes. As reported when a class is cloned AND a
    class variable was set, and the class variable was read from the
    original class, reading a class variable from the cloned class would
    return the value from the original class.

    This was happening because the IC (inline cache) is stored on the ISEQ
    which is shared between the original and cloned class, therefore they
    share the cache too.

    To fix this we are now storing the `cref` in the cache so that we can
    check if it's equal to the current `cref`. If it's different we don't
    want to read from the cache. If it's the same we do. Cloned classes
    don't share the same cref with their original class.

    This will need to be backported to 3.1 in addition to 3.2 since the bug
    exists in both versions.

    We also added a marking function which was missing.

    Fixes [Bug #19379]

    Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>

commit 06dae46036316e6e9926c4613ac8058b78eb7f2e
  Author:     eileencodes <eileencodes@gmail.com>
  AuthorDate: 2023-02-09 05:27:28 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-01 14:17:30 +0900

    Copy cvar table on clone

    When a class with a class variable is cloned we need to also copy the
    cvar cache table from the original table to the clone. I found this bug
    while working on fixing [Bug #19379]. While this does not fix that bug
    directly it is still a required change to fix another bug revealed by
    the fix in https://github.com/ruby/ruby/pull/7265

    This needs to be backported to 3.2.x and 3.1.x.

    Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>

commit 814271b2f7e20dd3da13f30a2fdc823c720110ac
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-07-01 13:48:08 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-01 13:48:08 +0900

    bump patchlevel

commit bbf1eb40977441cbe5d1748bbadaf5d46414e170
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-06-21 14:13:30 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-01 13:46:09 +0900

    Merge URI-0.12.2 for Bundler

commit dd73fe077cae077808e820f4765a12b1f4660521
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-06-21 13:20:54 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-07-01 13:46:09 +0900

    Merge URI-0.12.2

commit b422c3523c419b88c6da23a4022ae8864f411b84
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-06-25 15:20:43 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-06-25 15:20:43 +0900

    merge revision(s) 7bd7aee02e303de27d2cddfc5ef47e612d6782cb: [Backport #18464]

            Fix interpreter crash caused by RUBY_INTERNAL_EVENT_NEWOBJ + Ractors

            When a Ractor is created whilst a tracepoint for
            RUBY_INTERNAL_EVENT_NEWOBJ is active, the interpreter crashes. This is
            because during the early setup of the Ractor, the stdio objects are
            created, which allocates Ruby objects, which fires the tracepoint.
            However, the tracepoint machinery tries to dereference the control frame
            (ec->cfp->pc), which isn't set up yet and so crashes with a null pointer
            dereference.

            Fix this by not firing GC tracepoints if cfp isn't yet set up.
            ---
             gc.c                         |  1 +
             test/objspace/test_ractor.rb | 17 +++++++++++++++++
             2 files changed, 18 insertions(+)
             create mode 100644 test/objspace/test_ractor.rb

commit 0c00fb5d92dbd87bfdde393d1e3bece9b457d17c
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-06-25 12:37:14 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-06-25 12:37:14 +0900

    merge revision(s) ec14861f0d7a1e99d3e6667dee2f4c9cc426d5f3:

            Update to ruby/spec@7e680fa

            ---
             spec/ruby/core/dir/home_spec.rb      | 5 +++--
             spec/ruby/core/process/spawn_spec.rb | 2 +-
             2 files changed, 4 insertions(+), 3 deletions(-)

commit e3d10dedf106357d2b17fc8786d35035e0b366cf
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-06-25 12:29:49 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-06-25 12:29:49 +0900

    merge revision(s) bffadcd6d46ccfccade79ce0efb60ced8eac4483: [Backport #19529]

            Add guard to compaction test in WeakMap

            Some platforms don't support compaction, so we should skip this test.
            ---
             test/ruby/test_weakmap.rb | 2 ++
             1 file changed, 2 insertions(+)

commit 3ebcbb537d7ae37e49c49e05b28d2cc5b324f151
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-06-25 12:26:20 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-06-25 12:26:20 +0900

    merge revision(s) 548086b34e3dd125edabf5dc1e46b891fad3ea9c,3dc8cde70078ccb38f5f4b0818ad5eecded01bd5,e0cf80d666d4b5df3229f030a16d10d21323508e: [Backport #19529]

            ObjectSpace::WeakMap: fix compaction support

            [Bug #19529]

            `rb_gc_update_tbl_refs` can't be used on `w->obj2wmap` because it's
            not a `VALUE -> VALUE` table, but a `VALUE -> VALUE *` table, so
            we need some dedicated iterator.
            ---
             test/ruby/test_weakmap.rb |  8 ++++++++
             weakmap.c                 | 37 ++++++++++++++++++++++++++++++++++++-
             2 files changed, 44 insertions(+), 1 deletion(-)

            Fix crash during compaction

            [Bug #19529]

            The fix for [Bug #19529] in commit 548086b contained a bug that crashes
            on the following script:

            ```
            wm = ObjectSpace::WeakMap.new
            obj = Object.new
            100.times do
              wm[Object.new] = obj
              GC.start
            end
            GC.compact
            ```
            ---
             test/ruby/test_weakmap.rb | 10 ++++++++++
             weakmap.c                 |  2 +-
             2 files changed, 11 insertions(+), 1 deletion(-)

            Fix incorrect size of WeakMap buffer

            In wmap_final_func, j is the number of elements + 1 (since j also
            includes the length at the 0th index), so we should resize the buffer
            to size j and the new length is j - 1.
            ---
             weakmap.c | 4 ++--
             1 file changed, 2 insertions(+), 2 deletions(-)

commit a048f7882a13e96080021a5bc13ef1fb293b4985
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-06-25 11:52:21 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-06-25 11:52:21 +0900

    merge revision(s) 1cdf8ab07b24ebd16e93621957196e8b1d67f2ba: [Backport #19323]

            [Bug #19323] Raise `RangeError` instead of integer overflow

            ---
             bignum.c                  |  5 ++++-
             test/ruby/test_integer.rb | 18 ++++++++----------
             2 files changed, 12 insertions(+), 11 deletions(-)

commit 9fca561980c6d024229d72600180b20f3f77536f
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2023-06-24 16:59:30 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-06-24 16:59:30 +0900

    merge revision(s) cd5e6cc0ea48353c88d921b885b552dc76da255c,bbf54ec334fe2edd7669a944d88d17efde49a412: [Backport #19307]

            Update to ruby/mspec@fef9b81

            ---
             spec/mspec/tool/tag_from_output.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

            Update to ruby/spec@9d69b95

            ---
             spec/ruby/core/array/keep_if_spec.rb               |   1 +
             spec/ruby/core/array/pack/c_spec.rb                |  14 +-
             spec/ruby/core/array/pack/shared/basic.rb          |  40 ++++
             spec/ruby/core/array/pack/shared/float.rb          |  66 ++++++-
             spec/ruby/core/array/pack/shared/integer.rb        |  96 +++++++--
             spec/ruby/core/array/pack/shared/numeric_basic.rb  |  10 +-
             spec/ruby/core/array/pack/shared/unicode.rb        |  14 +-
             spec/ruby/core/array/pack/w_spec.rb                |  14 +-
             spec/ruby/core/array/shared/unshift.rb             |  18 ++
             spec/ruby/core/array/values_at_spec.rb             |   1 +
             spec/ruby/core/array/zip_spec.rb                   |   6 +
             spec/ruby/core/class/subclasses_spec.rb            |  22 +++
             spec/ruby/core/dir/home_spec.rb                    |  44 +++--
             spec/ruby/core/dir/mkdir_spec.rb                   |  18 +-
             spec/ruby/core/enumerable/zip_spec.rb              |   5 +
             spec/ruby/core/float/comparison_spec.rb            |  35 ++--
             spec/ruby/core/float/divmod_spec.rb                |   2 +-
             spec/ruby/core/float/gt_spec.rb                    |  21 ++
             spec/ruby/core/float/gte_spec.rb                   |  21 ++
             spec/ruby/core/float/lt_spec.rb                    |  21 ++
             spec/ruby/core/float/lte_spec.rb                   |  21 ++
             spec/ruby/core/float/shared/equal.rb               |  21 ++
             spec/ruby/core/io/gets_spec.rb                     |   4 +
             spec/ruby/core/io/lineno_spec.rb                   |   9 +-
             spec/ruby/core/io/new_spec.rb                      |   2 +
             spec/ruby/core/io/readline_spec.rb                 |   4 +
             spec/ruby/core/io/readlines_spec.rb                |   4 +
             spec/ruby/core/io/shared/each.rb                   |   4 +
             spec/ruby/core/io/shared/new.rb                    |   2 +
             spec/ruby/core/io/shared/pos.rb                    |   8 +-
             spec/ruby/core/io/shared/readlines.rb              |   4 +
             spec/ruby/core/io/sysseek_spec.rb                  |   2 +-
             spec/ruby/core/kernel/shared/load.rb               |  31 ++-
             spec/ruby/core/kernel/singleton_class_spec.rb      |   2 +
             spec/ruby/core/marshal/dump_spec.rb                |  45 ++++-
             spec/ruby/core/marshal/fixtures/classes.rb         |   4 +
             spec/ruby/core/matchdata/values_at_spec.rb         |  73 ++++++-
             spec/ruby/core/module/fixtures/classes.rb          |   1 +
             spec/ruby/core/module/include_spec.rb              |   4 +-
             spec/ruby/core/module/prepend_spec.rb              |  12 ++
             .../ruby/core/objectspace/define_finalizer_spec.rb |  22 +++
             spec/ruby/core/process/constants_spec.rb           |   1 +
             spec/ruby/core/process/detach_spec.rb              |  29 +++
             spec/ruby/core/process/spawn_spec.rb               |  10 +
             spec/ruby/core/process/times_spec.rb               |   2 +-
             spec/ruby/core/queue/initialize_spec.rb            |  13 +-
             spec/ruby/core/refinement/import_methods_spec.rb   |  34 ++++
             spec/ruby/core/refinement/include_spec.rb          |  27 +++
             spec/ruby/core/refinement/prepend_spec.rb          |  27 +++
             spec/ruby/core/regexp/initialize_spec.rb           |   2 +-
             spec/ruby/core/signal/trap_spec.rb                 |  12 ++
             spec/ruby/core/string/byteslice_spec.rb            |   6 +
             spec/ruby/core/string/capitalize_spec.rb           |   4 +
             spec/ruby/core/string/chars_spec.rb                |   7 +-
             spec/ruby/core/string/chomp_spec.rb                |   4 +
             spec/ruby/core/string/chop_spec.rb                 |   4 +
             spec/ruby/core/string/clone_spec.rb                |   4 +
             spec/ruby/core/string/delete_prefix_spec.rb        |   4 +
             spec/ruby/core/string/delete_spec.rb               |   4 +
             spec/ruby/core/string/delete_suffix_spec.rb        |   4 +
             spec/ruby/core/string/downcase_spec.rb             |   4 +
             spec/ruby/core/string/dump_spec.rb                 |  10 +-
             spec/ruby/core/string/dup_spec.rb                  |   4 +
             spec/ruby/core/string/lines_spec.rb                |   1 -
             spec/ruby/core/string/reverse_spec.rb              |   4 +
             spec/ruby/core/string/scan_spec.rb                 |   6 +
             spec/ruby/core/string/scrub_spec.rb                |  10 +
             spec/ruby/core/string/shared/each_line.rb          |   6 +
             spec/ruby/core/string/shared/partition.rb          |  15 ++
             spec/ruby/core/string/shared/slice.rb              |  13 +-
             spec/ruby/core/string/shared/strip.rb              |   4 +
             spec/ruby/core/string/shared/succ.rb               |   4 +
             spec/ruby/core/string/split_spec.rb                |  17 +-
             spec/ruby/core/string/squeeze_spec.rb              |   5 +
             spec/ruby/core/string/swapcase_spec.rb             |   4 +
             spec/ruby/core/string/undump_spec.rb               |   2 +-
             spec/ruby/core/string/unpack/b_spec.rb             |  28 ++-
             spec/ruby/core/string/unpack/c_spec.rb             |  14 +-
             spec/ruby/core/string/unpack/h_spec.rb             |  28 ++-
             spec/ruby/core/string/unpack/shared/basic.rb       |  28 ---
             spec/ruby/core/string/unpack/shared/float.rb       |  60 +++++-
             spec/ruby/core/string/unpack/shared/integer.rb     |  88 +++++++--
             spec/ruby/core/string/unpack/shared/unicode.rb     |  14 +-
             spec/ruby/core/string/unpack/w_spec.rb             |  14 +-
             spec/ruby/core/string/unpack1_spec.rb              |  12 +-
             spec/ruby/core/string/unpack_spec.rb               |  34 ++++
             spec/ruby/core/string/upcase_spec.rb               |   4 +
             spec/ruby/core/string/valid_encoding/utf_8_spec.rb | 214 +++++++++++++++++++++
             spec/ruby/core/struct/values_at_spec.rb            |  55 +++++-
             spec/ruby/core/symbol/shared/id2name.rb            |   7 +
             spec/ruby/core/time/at_spec.rb                     |  16 ++
             spec/ruby/core/time/localtime_spec.rb              |  16 +-
             spec/ruby/core/time/new_spec.rb                    |  94 +++++++--
             spec/ruby/core/time/shared/gmtime.rb               |   4 +-
             spec/ruby/core/time/shared/time_params.rb          |  11 +-
             spec/ruby/core/time/strftime_spec.rb               |  40 +++-
             spec/ruby/core/time/utc_spec.rb                    |  41 +++-
             spec/ruby/core/time/zone_spec.rb                   |  20 +-
             spec/ruby/core/tracepoint/inspect_spec.rb          |   9 +
             spec/ruby/fixtures/code/load_wrap_fixture.rb       |  12 ++
             spec/ruby/fixtures/code/wrap_fixture.rb            |   9 -
             spec/ruby/language/case_spec.rb                    |   4 +-
             .../ruby/language/regexp/character_classes_spec.rb |   5 +
             spec/ruby/library/coverage/running_spec.rb         |  20 ++
             spec/ruby/library/date/civil_spec.rb               |   7 +-
             spec/ruby/library/objectspace/fixtures/trace.rb    |   5 +
             spec/ruby/library/objectspace/trace_spec.rb        |  15 ++
             spec/ruby/library/openssl/x509/name/verify_spec.rb |   4 +-
             spec/ruby/library/stringio/initialize_spec.rb      |  85 ++++++++
             spec/ruby/library/stringio/new_spec.rb             |   8 +
             spec/ruby/library/stringio/shared/write.rb         |  22 +++
             spec/ruby/optional/capi/ext/io_spec.c              |  43 +++++
             spec/ruby/optional/capi/io_spec.rb                 |  15 ++
             spec/ruby/shared/rational/Rational.rb              |  48 ++---
             114 files changed, 1963 insertions(+), 245 deletions(-)
             create mode 100644 spec/ruby/core/marshal/fixtures/classes.rb
             create mode 100644 spec/ruby/core/refinement/import_methods_spec.rb
             create mode 100644 spec/ruby/core/refinement/include_spec.rb
             create mode 100644 spec/ruby/core/refinement/prepend_spec.rb
             create mode 100644 spec/ruby/core/string/unpack_spec.rb
             create mode 100644 spec/ruby/core/string/valid_encoding/utf_8_spec.rb
             create mode 100644 spec/ruby/fixtures/code/load_wrap_fixture.rb
             delete mode 100644 spec/ruby/fixtures/code/wrap_fixture.rb
             create mode 100644 spec/ruby/library/coverage/running_spec.rb
             create mode 100644 spec/ruby/library/objectspace/fixtures/trace.rb
             create mode 100644 spec/ruby/library/objectspace/trace_spec.rb
             create mode 100644 spec/ruby/library/stringio/new_spec.rb

commit f89101fa3610a7b977801d60b85bcc1ea2f6dee4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2023-03-15 20:34:21 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2023-06-13 14:01:57 +0900

    [ruby/openssl] Relax error message check for OpenSSL 3.1

    A tentative measures fo https://github.com/ruby/openssl/issues/606.

    With OpenSSL 3.1.0, the error message at connection using "self-signed
    certificate" seems to return `SSL_R_TLSV1_ALERT_UNKNOWN_CA` instead of
    `SSL_R_CERTIFICATE_VERIFY_FAILED`.

    https://github.com/ruby/openssl/commit/fc4629d246

commit 34da58bd17af10099e2a8f771d8c6aaa038b6cbe
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-06-12 11:29:25 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2023-06-13 14:01:57 +0900

    Try to skip Prime_test.rb

commit 1b2ad95c256b0ed5ff5658d752aeadcfed82268c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-06-12 10:02:42 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2023-06-13 14:01:57 +0900

    Run test-unit test without rake task to avoid yard dependency

commit 60ea850bbe7b418b7e6552203f7f48c58d11b9c4
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-06-12 09:34:37 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2023-06-13 14:01:57 +0900

    pry is not needed for test-bundled-gems

commit 60d75a5665e808e7491ea6bca9c02245852ea495
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2023-04-30 16:38:10 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-06-02 18:55:53 +0900

    MJIT: Check if self is T_OBJECT before opt_pc jump

commit ae70d2d7866174c19f67a1ab4f52625476ca6173
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2023-06-02 12:47:29 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-06-02 16:30:00 +0900

    YJIT: Use #[cfg] instead of if cfg!

commit 08bf3bcfb722aff2eb66782c0aec59a145fee185
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2023-05-01 02:32:25 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2023-06-02 09:41:40 +0900

    MJIT: Trigger compaction when the queue is empty

commit e51014f9c05aa65cbf203442d37fef7c12390015
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-30 20:06:29 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-30 20:06:29 +0900

    v3.2.2p53

commit 936b705d7839f78d88a1dde5ba4ca309848dd792
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-30 19:55:41 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-30 20:05:11 +0900

    v3.2.1p53

commit 34d5d10517825a51bea6bcb13ead1484c7182b42
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-03-30 19:54:12 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2023-03-30 19:54:12 +0900

    Merge Time-0.2.2 (#7623)

commit 250ff4ff45f1257b395260fe42d914cbb0720a41
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-29 00:47:10 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-29 00:48:11 +0900

    gem related automation must run only on master

commit 00041131e25699136179a7de06794527eaaabfd6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2023-02-22 22:14:26 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-28 22:47:23 +0900

    Skip failing test on MSWin

commit 18d3223563cc74b07e53e79c44d45dc50a6004c7
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-28 21:01:44 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-28 21:04:02 +0900

    Use merge_group

commit c3c461c4ff1b998ac49ed1a3ad411d2f0a9123b8
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-03-28 20:36:47 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2023-03-28 20:36:47 +0900

    Merge RubyGems-3.4.10 and Bundler-2.4.10 (#7479)

    * Merge RubyGems-3.4.7 and Bundler-2.4.7

    * Merge RubyGems-3.4.8 and Bundler-2.4.8

    * Skip failing test on MSWin

    * Merge RubyGems-3.4.9 and Bundler-2.4.9

    * Merge RubyGems-3.4.10 and Bundler-2.4.10

    ---------

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

commit f8c775cb413724a45bb5641de94f4f9210044116
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-03-28 20:36:36 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2023-03-28 20:36:36 +0900

    Use URI-0.12.1 for Ruby 3.2 (#7603)

    * Merge URI-0.12.1

    * Use URI-0.12.1

    * Update core_assertions for using assert_linear_performance

commit 582aadb3905eac131591f4c7884f441c036c49fb
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-28 17:02:53 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-28 17:02:53 +0900

    merge revision(s) 2f916812a9b818b432ee7c299e021ec62d4727fb,ac458f6bc3c520c9f23364c85bfb033acda907a6:

            Skip test_europe_lisbon on macOS

            until we figure out why it's failing.
            ---
             test/ruby/test_time_tz.rb | 1 +
             1 file changed, 1 insertion(+)

            Historical timezones of Lisbon in tzdata are unstable

            ---
             test/ruby/test_time_tz.rb | 3 +--
             1 file changed, 1 insertion(+), 2 deletions(-)

commit fb4ffce0dd8cae3b7d0141d3b1ea3f0ab710a45a
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-28 14:25:13 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-28 14:25:13 +0900

    merge revision(s) 680bd9027f8cb7977bbc216609db2f4e3cf199a8: [Backport #19471]

            [Bug #19471] `Regexp.compile` should handle keyword arguments

            As well as `Regexp.new`, it should pass keyword arguments to the
            `Regexp#initialize` method.
            ---
             re.c                     | 2 +-
             test/ruby/test_regexp.rb | 5 +++++
             2 files changed, 6 insertions(+), 1 deletion(-)

commit b93e2223300bc54dfa387ffb9fa3d48ecbe670f0
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-23 12:04:46 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-23 12:04:46 +0900

    merge revision(s) e7342e76dfd26237c604e42f9a59a1eaa578c94e: [Backport #19485]

            [Bug #19485] [DOC] Mention tabs in indentation of heredoc identifier

            Co-Authored-By: sawa (Tsuyoshi Sawada) <sawadatsuyoshi@gmail.com>
            ---
             doc/syntax/literals.rdoc | 6 ++++++
             1 file changed, 6 insertions(+)

commit 400ccb16eefe4e21c4e3eacab4fd0f208fc5e151
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-23 08:11:23 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-23 08:11:23 +0900

    merge revision(s) cb22d78354e201ca74eba68a8b4edefb593e6754: [Backport #19536]

            Fix frozen status loss when moving objects

            [Bug #19536]

            When objects are moved between size pools, their frozen status is lost
            in the shape. This will cause the frozen check to be bypassed when there
            is an inline cache. For example, the following script should raise a
            FrozenError, but doesn't on Ruby 3.2 and master.

                class A
                  def add_ivars
                    @a = @b = @c = @d = 1
                  end

                  def set_a
                    @a = 10
                  end
                end

                a = A.new
                a.add_ivars
                a.freeze

                b = A.new
                b.add_ivars
                b.set_a # Set the inline cache in set_a

                GC.verify_compaction_references(expand_heap: true, toward: :empty)

                a.set_a
            ---
             shape.c                      |  2 +-
             test/ruby/test_gc_compact.rb | 28 ++++++++++++++++++++++++++++
             2 files changed, 29 insertions(+), 1 deletion(-)

commit ad6fe84dfa6935bd6e2c3ef3ee36bed4e8627d0b
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-22 10:34:12 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-22 10:34:12 +0900

    merge revision(s) dddc542e9b61b292d80a96d0d0efbbf58719e3be: [Backport #19476]

            [Bug #19476]: correct cache index computation for repetition (#7457)

            ---
             regexec.c                | 4 ++--
             test/ruby/test_regexp.rb | 5 +++++
             2 files changed, 7 insertions(+), 2 deletions(-)

commit 4b4087dce318570f9f9c05e14900325b499fb632
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-20 15:06:34 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-20 15:06:34 +0900

    merge revision(s) e22c4e8877677ff90805e4a4dcbdef80f4220136: [Backport #19467]

            [Bug #19467] correct cache points and counting failure on
             `OP_ANYCHAR_STAR_PEEK_NEXT` (#7454)

            ---
             regexec.c                | 20 ++++++++++++++++----
             test/ruby/test_regexp.rb | 10 ++++++++++
             2 files changed, 26 insertions(+), 4 deletions(-)

commit 0555303464f3595223ec8093146041f96595865d
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-18 15:02:04 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-18 15:02:04 +0900

    merge revision(s) 96d1acfdf6c6b42f2029f44d5b5920961d6efa92: [Backport #19161]

            [Bug #19161] Check for TLS usability

            On all platforms using GCC, even other than darwin.
            ---
             configure.ac | 13 +++++++------
             1 file changed, 7 insertions(+), 6 deletions(-)

commit f3abe5ba645839fb2a686aee18d3466b59256af0
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-17 13:40:04 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-17 13:40:04 +0900

    merge revision(s) 0700d0fd1c77b4fddf803dea3c10be654df600ff,62c2082f1f726cb90d8c332fbedbecf41d5d82ec: [Backport #19469]

            Fix indentation in vm_setivar_default

            ---
             vm_insnhelper.c | 6 +++---
             1 file changed, 3 insertions(+), 3 deletions(-)

            [Bug #19469] Fix crash when resizing generic iv list

            The following script can sometimes trigger a crash:

            ```ruby
            GC.stress = true

            class Array
              def foo(bool)
                if bool
                  @a = 1
                  @b = 2
                  @c = 1
                else
                  @c = 1
                end
              end
            end

            obj = []
            obj.foo(true)

            obj2 = []
            obj2.foo(false)

            obj3 = []
            obj3.foo(true)
            ```

            This is because vm_setivar_default calls rb_ensure_generic_iv_list_size
            to resize the iv list. However, the call to gen_ivtbl_resize reallocs
            the iv list, and then inserts into the generic iv table. If the
            st_insert triggers a GC then the old iv list will be read during
            marking, causing a use-after-free bug.

            Co-Authored-By: Jemma Issroff <jemmaissroff@gmail.com>
            ---
             internal/variable.h |  2 +-
             variable.c          | 23 ++++++++++++++++++-----
             vm_insnhelper.c     |  4 ++--
             3 files changed, 21 insertions(+), 8 deletions(-)

commit b309c246ee70926d593d3857e1625202e2d0f67b
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-17 10:56:18 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-17 10:56:18 +0900

    merge revision(s) d78ae78fd76e556e281a743c75bea4c0bb81ed8c: [Backport #19468]

            rb_str_modify_expand: clear the string coderange

            [Bug #19468]

            b0b9f7201acab05c2a3ad92c3043a1f01df3e17f errornously stopped
            clearing the coderange.

            Since `rb_str_modify` clears it, `rb_str_modify_expand`
            should too.
            ---
             string.c | 1 +
             1 file changed, 1 insertion(+)

commit b73a07359758a9034996752e981e09ddaffe8d87
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-15 16:36:32 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-15 16:36:32 +0900

    merge revision(s) 0eb634ae73cb327ede833b72492f912792a4a9d5: [Backport #19464]

            YJIT: Detect and reject `send(:alias_for_send, :foo)`

            Previously, YJIT failed to put the stack into the correct shape when
            `BasicObject#send` calls an alias method for the send method itself.
            This can manifest as strange `NoMethodError`s in the final non-send
            receiver, as [seen][1] with the kt-paperclip gem. I also found a case
            where it makes YJIT fail the stack size assertion while compiling
            `leave`.

            YJIT's `BasicObject#__send__` implementation already rejects sends to
            `send`, but didn't detect sends to aliases of `send`. Adjust the
            detection and reject these cases.

            Fixes [Bug #19464]

            [1]: https://github.com/Shopify/yjit/issues/306
            ---
             test/ruby/test_yjit.rb | 20 ++++++++++++++++++++
             yjit/src/codegen.rs    | 25 ++++++++++---------------
             2 files changed, 30 insertions(+), 15 deletions(-)

commit db28f7003f7d49cfa13871c38d10c1967282ca6b
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-09 09:35:39 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-09 09:35:39 +0900

    merge revision(s) 3b567eb491e460e00a66fdea8054eeb083b5dafd: [Backport #19459]

            [Bug #19459] Remove unnecessary always-true checks (#7362)

            `length` is a required argument for `IO::Buffer#read` and
            `IO::Buffer#write` methods, and `argc` is already checked with
            `rb_check_arity`.  Also fix the call-seq of `IO::Buffer#read`.
            ---
             io_buffer.c | 24 +++++++-----------------
             1 file changed, 7 insertions(+), 17 deletions(-)

commit 4e4a4e42b284d9309a7e51c97058093539e7a843
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-08 14:46:30 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-08 14:46:30 +0900

    merge revision(s) d2520b7b76759118071a16e6bca22726a5de9fb4: [Backport #19439]

            Marshal.load: restore instance variables on Regexp

            [Bug #19439]

            The instance variables were restore on the Regexp source,
            not the regexp itself.

            Unfortunately we have a bit of a chicken and egg problem.

            The source holds the encoding, and the encoding need to be set on
            the source to be able to instantiate the Regexp.

            So the instance variables have to be read on the `source`.
            To correct this we transfert the instance variables after
            instantiating the Regexp.

            The only way to avoid this would be to read the instance variable
            twice and rewind.
            ---
             marshal.c                             | 20 ++++++++++++++++++--
             spec/ruby/core/marshal/shared/load.rb | 11 +++++++++++
             2 files changed, 29 insertions(+), 2 deletions(-)

commit 59eb18037ff92839be48fb6c46ff0acc179b4f4c
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-08 12:02:22 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-08 12:02:22 +0900

    merge revision(s) dd28c55a7cd6780dad637b4d6a20507fbfc6af4a: [Backport #19445]

            [Bug#19445] Fix keyword splat in enumerator

            Extracted arguments do not have keyword hash to splat.
            ---
             numeric.c                 | 2 +-
             test/ruby/test_numeric.rb | 3 +++
             2 files changed, 4 insertions(+), 1 deletion(-)

commit 4d75035e1762a23d38c5192b30bb47f40b752bee
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-07 19:48:32 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-07 19:48:32 +0900

    merge revision(s) c178926fbe879045fa711444a1fd9e906af23e3b,a4b7ec12298c78392797e5ba7704076550e4f100: [Backport #19444]

            YJIT: jit_prepare_routine_call() for String#+@ missing

            We saw SEGVs due to this when running with StackProf, which needs a
            correct PC for RUBY_INTERNAL_EVENT_NEWOBJ, the same event used for
            ObjectSpace allocation tracing.

            [Bug #19444]
            ---
             test/ruby/test_yjit.rb | 27 +++++++++++++++++++++++++++
             yjit/src/codegen.rs    |  5 ++++-
             2 files changed, 31 insertions(+), 1 deletion(-)

            YJIT: Fix false assumption that String#+@ => ::String

            Could return a subclass.

            [Bug #19444]
            ---
             test/ruby/test_yjit.rb | 17 +++++++++++++++++
             yjit/src/codegen.rs    | 10 +++++++---
             2 files changed, 24 insertions(+), 3 deletions(-)

commit f1cde05d99898f491c8e302ae74029468fdb6eb9
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-07 10:11:43 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-07 10:11:43 +0900

    merge revision(s) 86de48e9f69b665ba9ffb5bdc5a181a3adb1a7b8: [Backport #19419]

            Remove ibf_dumper's WB_PROTECTED status

            It doesn't have the right write barriers in place. For example, there is

                rb_mark_set(dump->global_buffer.obj_table);

            in the mark function, but there is no corresponding write barrier when
            adding to the table in the
            `ibf_dump_object() -> ibf_table_find_or_insert() -> st_insert()` code path.

            To insert write barrier correctly, we need to store the T_STRUCT VALUE
            inside `struct ibf_dump`. Instead of doing that, let's just demote it
            to WB unproected for correctness. These dumper object are ephemeral so
            there is not a huge benefit for having them WB protected.

            Users of the bootsnap gem ran into crashes due to this issue:
            https://github.com/Shopify/bootsnap/issues/436

            Fixes [Bug #19419]
            ---
             compile.c | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

commit f93c7b9f58966fd04496bfeb2538fb1ff41f788e
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-04 15:39:47 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-04 15:39:47 +0900

    merge revision(s) b78f871d838c168789648738e5c67b071beb8a19,ecd0cdaf820af789f355f1a18c31d6adfe8aad94: [Backport #19400]

            YJIT: Use the system page size when the code page size is too small
             (#7267)

            Previously on ARM64 Linux systems that use 64 KiB pages
            (`CONFIG_ARM64_64K_PAGES=y`), YJIT was panicking on boot due to a failed
            assertion.

            The assertion was making sure that code GC can free the last code page
            that YJIT manages without freeing unrelated memory. YJIT prefers picking
            16 KiB as the granularity at which to free code memory, but when the
            system can only free at 64 KiB granularity, that is not possible.

            The fix is to use the system page size as the code page size when the
            system page size is 64 KiB. Continue to use 16 KiB as the code page size
            on common systems that use 16/4 KiB pages.

            Add asserts to code_gc() and free_page() about code GC's assumptions.

            Fixes [Bug #19400]
            ---
             yjit/src/asm/mod.rs    | 78 ++++++++++++++++++++++++++++++++------------------
             yjit/src/codegen.rs    |  2 --
             yjit/src/virtualmem.rs | 13 +++++++++
             3 files changed, 63 insertions(+), 30 deletions(-)

            YJIT: Fix assertion for partially mapped last pages (#7337)

            Follows up [Bug #19400]
            ---
             test/ruby/test_yjit.rb | 19 +++++++++++++++++++
             yjit/src/asm/mod.rs    |  2 +-
             yjit/src/virtualmem.rs | 18 +++++++++++++-----
             3 files changed, 33 insertions(+), 6 deletions(-)

commit 53f6173cfc085a7422b4a76c85e6c35969209327
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-03-02 09:28:58 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-03-02 09:29:38 +0900

    merge revision(s) 8ce2fb9bbbaea14737c84385b1573f743a30f773,3a0f6ce1d31eefd8af01b50f3632a64d64e8f8c1: [Backport #19415]

            Only emit circular dependency warning for owned thread shields [Bug
             #19415]

            If multiple threads attemps to load the same file concurrently
            it's not a circular dependency issue.

            So we check that the existing ThreadShield is owner by the current
            fiber before warning about circular dependencies.
            ---
             internal/thread.h                                     |  1 +
             load.c                                                |  3 ++-
             spec/ruby/core/kernel/shared/require.rb               | 11 +++++++++++
             spec/ruby/fixtures/code/concurrent_require_fixture.rb |  4 ++++
             test/ruby/test_require.rb                             |  3 ---
             thread.c                                              | 11 +++++++++++
             6 files changed, 29 insertions(+), 4 deletions(-)
             create mode 100644 spec/ruby/fixtures/code/concurrent_require_fixture.rb

            Use Thread.pass until thread.stop? to wait for thread to block

            [Bug #19415]

            It should be more reliable
            ---
             spec/ruby/fixtures/code/concurrent_require_fixture.rb | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

commit 65ab2c1ef23bd4a02120a27c371dce12ea9024d4
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-02-22 19:00:00 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2023-02-22 19:00:00 +0900

    Backport [Bug #19158] for Ruby 3.2 (#7356)

    Backport https://github.com/ruby/ruby/pull/7321

commit 31819e82c88c6f8ecfaeb162519bfa26a14b21fd
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-02-08 13:02:20 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-02-08 13:02:20 +0900

    v3.2.1

commit 88e0862267cec6764ab9888f7522a40f2996e2c7
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-02-08 01:31:22 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-02-08 01:31:22 +0900

    Remove wrong file

commit 3decf7df6f678ff6386c5c1888642d76f49dc147
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-02-07 15:15:17 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-02-07 15:15:17 +0900

    merge revision(s) 3a7367ccc319499127ead147e5a08f769e44208e: [Backport #19403]

            mkconfig: Map `includedir` only for system ruby

            Only when installing to the system path on macOS, prepend '$(SDKROOT)'
            and remap `includedir`.
            Fix https://github.com/rbenv/ruby-build/discussions/2123
            ---
             test/mkmf/test_config.rb | 4 ++--
             test/test_rbconfig.rb    | 9 ---------
             tool/mkconfig.rb         | 4 +++-
             3 files changed, 5 insertions(+), 12 deletions(-)

commit 7246cd0081ec845e1407484fca10439e7868880b
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-02-07 13:46:36 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-02-07 13:46:36 +0900

    merge revision(s) fad48fefe19cc282a5b209944244a3713359b47f: [Backport #19399]

            [Bug #19399] Parsing invalid heredoc inside block parameter

            Although this is of course invalid as Ruby code, allow to just parse
            and tokenize.
            ---
             ext/ripper/lib/ripper/lexer.rb |  2 +-
             test/ripper/test_lexer.rb      | 12 ++++++++++++
             2 files changed, 13 insertions(+), 1 deletion(-)

commit 3426ebd0489654f951a8b92efaf5e72b9f43efab
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-02-06 16:41:23 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-02-06 16:41:23 +0900

    merge revision(s) c6f84e918943a0bf8db6fee556fc53180d257510: [Backport #19398]

            [Bug #19398] Memory leak in WeakMap

            There's a memory leak in ObjectSpace::WeakMap due to not freeing
            the `struct weakmap`. It can be seen in the following script:

            ```
            100.times do
              10000.times do
                ObjectSpace::WeakMap.new
              end

              # Output the Resident Set Size (memory usage, in KB) of the current Ruby process
              puts `ps -o rss= -p #{$$}`
            end
            ```
            ---
             gc.c                      | 1 +
             test/ruby/test_weakmap.rb | 9 +++++++++
             2 files changed, 10 insertions(+)

commit 3a88589399f7f1059be245f766809c49790ad939
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-02-06 14:00:47 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-02-06 14:00:47 +0900

    merge revision(s) 3b83b265f11965582d4b9b439eff8a501792ab68: [Backport #19404]

            YJIT: Crash with rb_bug() when panicking

            Helps with getting good bug reports in the wild. Intended to be
            backported to the 3.2.x series.
            ---
             yjit/bindgen/src/main.rs       |  3 +++
             yjit/src/cruby_bindings.inc.rs |  1 +
             yjit/src/yjit.rs               | 29 +++++++++++++++++++++++++++--
             3 files changed, 31 insertions(+), 2 deletions(-)

commit 535d863f34e6c36a2378683e7c2d3b7369e3d076
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-02-03 14:13:02 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-02-03 14:13:09 +0900

    merge revision(s) 188688a53e7708d25ab80e14d05e70ffcf792e13: [Backport #19385]

            [PATCH 1/4] YJIT: Move CodegenGlobals::freed_pages into an Rc

            This allows for supplying a freed_pages vec in Rust tests. We need it so we
            can test scenarios that occur after code GC.
            ---
             yjit/src/asm/mod.rs | 48 +++++++++++++++++++++++++++++++++------------
             yjit/src/codegen.rs | 16 ++++-----------
             2 files changed, 39 insertions(+), 25 deletions(-)

            Subject: [PATCH 2/4] YJIT: other_cb is None in tests

            Since the other cb is in CodegenGlobals, and we want Rust tests to be
            self-contained.
            ---
             yjit/src/asm/mod.rs | 1 +
             1 file changed, 1 insertion(+)

            Subject: [PATCH 3/4] YJIT: ARM64: Move functions out of arm64_emit()

            ---
             yjit/src/backend/arm64/mod.rs | 180 +++++++++++++++++-----------------
             1 file changed, 90 insertions(+), 90 deletions(-)

            Subject: [PATCH 4/4] YJIT: ARM64: Fix long jumps to labels

            Previously, with Code GC, YJIT panicked while trying to emit a B.cond
            instruction with an offset that is not encodable in 19 bits. This only
            happens when the code in an assembler instance straddles two pages.

            To fix this, when we detect that a jump to a label can land on a
            different page, we switch to a fresh new page and regenerate all the
            code in the assembler there. We still assume that no one assembler has
            so much code that it wouldn't fit inside a fresh new page.

            [Bug #19385]
            ---
             yjit/src/backend/arm64/mod.rs | 65 ++++++++++++++++++++++++++++++++---
             1 file changed, 60 insertions(+), 5 deletions(-)

commit f4e6e78410136100ef5f285136a66df8d6004a61
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2023-02-01 12:05:19 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2023-02-01 12:05:19 +0900

    Merge RubyGems 3.4.6 and Bundler 2.4.6 (#7214)

    Merge RubyGems-3.4.6 and Bundler-2.4.6

commit 40e0b1e123503805c16a2a9aafae0a5c302c20d1
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-31 23:46:50 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-31 23:46:50 +0900

    merge revision(s) 9726736006b3f74635fd8af05814fe0908e2cf84: [Backport #19327]

            Set STR_SHARED_ROOT flag on root of string

            ---
             string.c | 1 +
             1 file changed, 1 insertion(+)

commit 22bfad0ec9968be4c99c8c68f2c809b833069ea7
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-31 18:27:44 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-31 18:27:44 +0900

    Remove "Miscellaneous checks" from CI

    It is expected to use on master branch

commit ca75332f46c39804e06cd37c2608cbdef0aebf05
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-31 15:28:01 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-31 15:28:01 +0900

    merge revision(s) eccfc978fd6f65332eb70c9a46fbb4d5110bbe0a: [Backport #19379]

            Fix parsing of regexps that toggle extended mode on/off inside regexp

            This was broken in ec3542229b29ec93062e9d90e877ea29d3c19472. That commit
            didn't handle cases where extended mode was turned on/off inside the
            regexp.  There are two ways to turn extended mode on/off:

            ```
            /(?-x:#y)#z
            /x =~ '#y'

            /(?-x)#y(?x)#z
            /x =~ '#y'
            ```

            These can be nested inside the same regexp:

            ```
            /(?-x:(?x)#x
            (?-x)#y)#z
            /x =~ '#y'
            ```

            As you can probably imagine, this makes handling these regexps
            somewhat complex. Due to the nesting inside portions of regexps,
            the unassign_nonascii function needs to be recursive.  In
            recursive mode, it needs to track both opening and closing
            parentheses, similar to how it already tracked opening and
            closing brackets for character classes.

            When scanning the regexp and coming to `(?` not followed by `#`,
            scan for options, and use `x` and `i` to determine whether to
            turn on or off extended mode.  For `:`, indicting only the
            current regexp section should have the extended mode
            switched, recurse with the extended mode set or unset. For `)`,
            indicating the remainder of the regexp (or current regexp portion
            if already recursing) should turn extended mode on or off, just
            change the extended mode flag and keep scanning.

            While testing this, I noticed that `a`, `d`, and `u` are accepted
            as options, in addition to `i`, `m`, and `x`, but I can't see
            where those options are documented.  I'm not sure whether or not
            handling  `a`, `d`, and `u` as options is a bug.

            Fixes [Bug #19379]
            ---
             re.c                     | 153 +++++++++++++++++++++++++++++++++++++----------
             test/ruby/test_regexp.rb |  56 +++++++++++++++++
             2 files changed, 176 insertions(+), 33 deletions(-)

commit 5a2b28909ece2e1310250180f097bfcb7b0203dc
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-31 13:39:13 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-31 13:39:13 +0900

    merge revision(s) 3f54d09a5b8b6e4fd734abc8911e170d5967b5b0: [Backport #19390]

            bignum.c: rb_int_parse_cstr handle `0` strings

            [Bug #19390]

            We shouldn't check the string length when skipping zeros, as the
            string might only contains zero characters, resulting in an empty string.
            ---
             bignum.c               | 1 -
             test/ruby/test_time.rb | 4 ++++
             2 files changed, 4 insertions(+), 1 deletion(-)

commit 1689d8bb4843f92c1805e4a4bdd94049569198f4
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-31 11:08:50 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-31 11:08:50 +0900

    merge revision(s) 21dced8b01823a991829b66ffdc8ffc635965c76: [Backport #19389]

            [ruby/stringio] [Bug #19389] Fix chomping with longer separator

            https://github.com/ruby/stringio/commit/eb322a9716
            ---
             ext/stringio/stringio.c        | 5 +++--
             test/stringio/test_stringio.rb | 2 ++
             2 files changed, 5 insertions(+), 2 deletions(-)

commit fee5b8f263211faef10ed9f3e43c1e8b34548bbd
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-25 16:34:24 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-25 16:34:24 +0900

    merge revision(s) 2c93c554019ebdc394d3c51c6d925620d3005f84,f5ea43a2e61789357e9c4b374b4bc6756abeae17: [Backport #19360]

            Ensure main file has default coverage if required. (#7169)

            * Extract common code for coverage setup.
            ---
             iseq.c | 13 +++++++++++--
             1 file changed, 11 insertions(+), 2 deletions(-)

            More coverage tests & specs. (#7171)

            * Add spec for eval and line coverage.

            * Add test for main file coverage.
            ---
             spec/ruby/library/coverage/start_spec.rb | 8 +++++++-
             test/coverage/autostart.rb               | 2 ++
             test/coverage/main.rb                    | 1 +
             test/coverage/test_coverage.rb           | 7 +++++++
             4 files changed, 17 insertions(+), 1 deletion(-)
             create mode 100644 test/coverage/autostart.rb
             create mode 100644 test/coverage/main.rb

commit 4110137fcfd805de03a8f5569c3d6926959b9363
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-25 13:26:25 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-25 13:26:25 +0900

    merge revision(s) 6f3aff3961a4c5ce87e05096a1a9dcf1055b7647: [Backport #19289]

            [Bug #19289] Retain `ruby_abi_version` function

            A few extension libraries, to hide all symbols except for necessary to
            load, hardcode the symbols to be exported in symbol list files for
            linker without even checking by `have_func`.  As a workaround for such
            libraries, retain `ruby_abi_version` symbol always even in released
            versions for now.
            ---
             include/ruby/internal/abi.h | 7 +++++--
             1 file changed, 5 insertions(+), 2 deletions(-)

commit 0090cb82b0bf477c29a659e34cf4427a3b1ceb27
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-25 10:23:38 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-25 10:23:38 +0900

    merge revision(s) df6b72b8ff7af16a56fa48f3b4abb1d8850f4d1c: [Backport #19348]

            Avoid checking interrupt when loading iseq
            MIME-Version: 1.0
            Content-Type: text/plain; charset=UTF-8
            Content-Transfer-Encoding: 8bit

            The interrupt check will unintentionally release the VM lock when loading an iseq.
            And this will cause issues with the `debug` gem's
            [`ObjectSpace.each_iseq` method](https://github.com/ruby/debug/blob/0fcfc28acae33ec1c08068fb7c33703cfa681fa7/ext/debug/iseq_collector.c#L61-L67),
            which wraps iseqs with a wrapper and exposes their internal states when they're actually not ready to be used.

            And when that happens, errors like this would occur and kill the `debug` gem's thread:

            ```
             DEBUGGER: ReaderThreadError: uninitialized InstructionSequence
            ┃ DEBUGGER: Disconnected.
            ┃ ["/opt/rubies/ruby-3.2.0/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/breakpoint.rb:247:in `absolute_path'",
            ┃  "/opt/rubies/ruby-3.2.0/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/breakpoint.rb:247:in `block in iterate_iseq'",
            ┃  "/opt/rubies/ruby-3.2.0/lib/ruby/gems/3.2.0/gems/debug-1.7.1/lib/debug/breakpoint.rb:246:in `each_iseq'",
            ...
            ```

            A way to reproduce the issue is to satisfy these conditions at the same time:

            1. `debug` gem calling `ObjectSpace.each_iseq` (e.g. [activating a `LineBreakpoint`](https://github.com/ruby/debug/blob/0fcfc28acae33ec1c08068fb7c33703cfa681fa7/lib/debug/breakpoint.rb#L246)).
            2. A large amount of iseq being loaded from another thread (possibly through the `bootsnap` gem).
            3. 1 and 2 iterating through the same iseq(s) at the same time.

            Because this issue requires external dependencies and a rather complicated timing setup to reproduce, I wasn't able to write a test case for it.
            But here's some pseudo code to help reproduce it:

            ```rb
            require "debug/session"

            Thread.new do
              100.times do
                ObjectSpace.each_iseq do |iseq|
                  iseq.absolute_path
                end
              end
            end

            sleep 0.1

            load_a_bunch_of_iseq
            possibly_through_bootsnap
            ```

            [Bug #19348]

            Co-authored-by: Peter Zhu <peter@peterzhu.ca>
            ---
             compile.c       |  2 +-
             vm_core.h       |  1 +
             vm_insnhelper.c | 11 +++++++++++
             3 files changed, 13 insertions(+), 1 deletion(-)

commit a20061cb1aa34b73bdbdfa7cba6cfc575a05ca38
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-24 17:41:17 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-24 17:41:35 +0900

    merge revision(s) 72eb33066fa9e7dacb7470cd140b219abe37667e: [Backport #19320]

            Fix off-by-one error in rb_vm_each_stack_value

            Applying the following patch to test/erb/test_erb.rb and running that
            file will cause Ruby to crash on my machine (macOS 13.1 on M1 Pro):

            ```
            --- a/test/erb/test_erb.rb
            +++ b/test/erb/test_erb.rb
            @@ -7,6 +7,12 @@
             class TestERB < Test::Unit::TestCase
               class MyError < RuntimeError ; end

            +  def setup
            +    GC.auto_compact = true
            +    GC.stress = true
            +    GC.verify_compaction_references(expand_heap: true, toward: :empty)
            +  end
            +
            ```

            It crashes with the following log:

            ```
            /Users/peter/src/ruby/lib/erb/compiler.rb:276: [BUG] Segmentation fault at 0x00000001083a8690
            ...
            -- C level backtrace information -------------------------------------------
            ...
            /Users/peter/src/ruby/build/ruby(rb_vm_each_stack_value+0xa8) [0x104cc3a44] ../vm.c:2737
            /Users/peter/src/ruby/build/ruby(rb_vm_each_stack_value+0xa8) [0x104cc3a44] ../vm.c:2737
            /Users/peter/src/ruby/build/ruby(check_stack_for_moved+0x2c) [0x104b272a4] ../gc.c:5512
            /Users/peter/src/ruby/build/ruby(gc_compact_finish) ../gc.c:5534
            /Users/peter/src/ruby/build/ruby(gc_sweep_compact) ../gc.c:8653
            /Users/peter/src/ruby/build/ruby(gc_sweep) ../gc.c:6196
            /Users/peter/src/ruby/build/ruby(has_sweeping_pages+0x0) [0x104b19c54] ../gc.c:9568
            /Users/peter/src/ruby/build/ruby(gc_rest) ../gc.c:9570
            ```

            This crash happens because it's reading the VALUE at sp. But since
            sp points to the top of the stack, it's reading the VALUE above the
            top of the stack, which is causing this segfault.

            Fixes [Bug #19320]
            ---
             vm.c | 2 +-
             1 file changed, 1 insertion(+), 1 deletion(-)

commit c0df0a85dec77a09308caddb1e1efd4d38fbf7b8
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-20 17:01:47 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-20 17:01:47 +0900

    merge revision(s) ed6fbb79e19bf401db0e85447fee955fd10a25c7: [Backport #19339]

            Fix crash when defining ivars on special constants

            [Bug #19339]
            ---
             test/ruby/test_variable.rb | 6 ++++++
             vm_insnhelper.c            | 5 +++++
             2 files changed, 11 insertions(+)

commit 373e62248c9dceb660e95f1cf05fa2a4a469cd64
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-20 12:24:24 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-20 12:24:24 +0900

    merge revision(s) f7b72462aa27716370c6bea1f2c240983aca9a55: [Backport #19356]

            String#bytesplice should return self

            In Feature #19314, we concluded that the return value of String#bytesplice
            should be changed from the source string to the receiver, because the source
            string is useless and confusing when extra arguments are added.

            This change should be included in Ruby 3.2.1.
            ---
             string.c                 | 4 ++--
             test/ruby/test_string.rb | 2 +-
             2 files changed, 3 insertions(+), 3 deletions(-)

commit 6a8fcb50210f8414d76968298576e39b9fa82562
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-19 21:52:47 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-19 21:52:47 +0900

    merge revision(s) 3be2acfafd3b3c6168e2266c7c6561d143d7ae5c: [Backport #19327]

            Fix re-embedding of strings during compaction

            The reference updating code for strings is not re-embedding strings
            because the code is incorrectly wrapped inside of a
            `if (STR_SHARED_P(obj))` clause. Shared strings can't be re-embedded
            so this ends up being a no-op. This means that strings can be moved to a
            large size pool during compaction, but won't be re-embedded, which would
            waste the space.
            ---
             gc.c                         | 16 +++++++++-------
             string.c                     | 12 ++++++++----
             test/ruby/test_gc_compact.rb |  8 ++++----
             3 files changed, 21 insertions(+), 15 deletions(-)

commit 98abe4a0be09e0571104f4ca1b5655e353910aa0
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-31 00:31:50 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-19 15:50:58 +0900

    Fix test when Ruby is verbose

    The test added in 90a80eb0 fails if Ruby is verbose, it outputs the
    following line to stderr:

        RUBY_GC_HEAP_INIT_SLOTS=100 (default value: 10000)

commit 686b38f83e70b3e1796092c71dd0b7dc2206b118
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-19 11:59:43 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-19 11:59:43 +0900

    merge revision(s) d8ef0a98c670449b20436947f5ebbd327ed5ab0d: [Backport #19319]

            [Bug #19319] Fix crash in rb_str_casemap

            The following code crashes on my machine:

            ```
            GC.stress = true

            str = "testing testing testing"

            puts str.capitalize
            ```

            We need to ensure that the object `buffer_anchor` remains on the stack
            so it does not get GC'd.
            ---
             string.c | 2 ++
             1 file changed, 2 insertions(+)

commit 1a2447ac9925e7794a7c5aa07960ad4de08e6aca
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-19 11:05:29 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-19 11:05:29 +0900

    merge revision(s) 979dd02e2f0a70f3f30d47c6115780d8fac6147e: [Backport #19262]

            Check if the argument is Thread::Backtrace::Location object

            [Bug #19262]
            ---
             ast.c                 | 5 +++++
             test/ruby/test_ast.rb | 6 ++++++
             2 files changed, 11 insertions(+)

commit 08ae7f64dc52c2b61e451d6e79ebdae73d482677
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-19 09:31:47 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-19 09:31:47 +0900

    merge revision(s) 273dca3aed7989120d57f80c789733d4bc870ffe: [Backport #19248]

            Fix undefined behavior in shape.c

            Under strict aliasing, writing to the memory location of a different
            type is not allowed and will result in undefined behavior. This was
            happening in shape.c due to `rb_id_table_lookup` writing to the memory
            location of `VALUE *` that was casted from a `rb_shape_t **`.

            This was causing test failures when compiled with LTO.

            Fixes [Bug #19248]

            Co-Authored-By: Alan Wu <alanwu@ruby-lang.org>
            ---
             shape.c | 13 +++++++++++--
             1 file changed, 11 insertions(+), 2 deletions(-)

commit d7fb4629b4058eb86be03760e6b9f1f272e44147
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-18 20:15:28 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-18 20:15:28 +0900

    merge revision(s) 837ef8911c638c3e2bdb6af710de7c1fac7b5f90: [Backport #19305]

            Fix crash in TracePoint c_call for removed method

            trace_arg->id is the ID of the original method of an aliased method. If
            the original method is removed, then the lookup will fail. We should use
            trace_arg->called_id instead, which is the ID of the aliased method.

            Fixes [Bug #19305]
            ---
             test/ruby/test_settracefunc.rb | 23 +++++++++++++++++++++++
             vm_trace.c                     |  2 +-
             2 files changed, 24 insertions(+), 1 deletion(-)

commit 44a3043d1182acf3147935d9c1564028b5538417
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-18 20:14:43 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-18 20:14:43 +0900

    merge revision(s) 2bbf63dd867fe3d349b1758805ad4421f2d772ab: [Backport #19298]

            Remove lib/mjit/instruction.rb

            This was accidentally re-introduced in f6620037ba1477d2c337d7b511f094d6d0fbb69c.

            [Bug #19298]
            ---
             lib/mjit/instruction.rb | 2162 -----------------------------------------------
             1 file changed, 2162 deletions(-)
             delete mode 100644 lib/mjit/instruction.rb

commit 1fb5eb5740d4c4f1fc34a4a50bc0482eac27b545
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-18 18:56:51 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-18 18:56:51 +0900

    merge revision(s) aeddc19340c7116d48fac3080553fbb823857d16: [Backport #19316]

            YJIT: Save PC and SP before calling leaf builtins (#7090)

            Previously, we did not update `cfp->sp` before calling the C function of
            ISEQs marked with `Primitive.attr! "inline"` (leaf builtins). This
            caused the GC to miss temporary values on the stack in case the function
            allocates and triggers a GC run. Right now, there is only a few leaf
            builtins in numeric.rb on Integer methods such as `Integer#~`. Since
            these methods only allocate when operating on big numbers, we missed
            this issue.

            Fix by saving PC and SP before calling the functions -- our usual
            protocol for calling C functions that may allocate on the GC heap.

            [Bug #19316]
            ---
             test/ruby/test_yjit.rb | 16 ++++++++++++++++
             yjit/src/codegen.rs    |  4 ++++
             2 files changed, 20 insertions(+)

commit f7e9b79f815e08e0a29fff11f77466f4ffb92520
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-18 18:56:09 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-18 18:56:09 +0900

    merge revision(s) 4959e01932cf6c4d3e5e90d3e0b4fa780f754fa6: [Backport #19271]

            common.mk: Do not invoke outdate-bundled-gems by default

            If baseruby is available (and its version is different from one being
            built) when compiling ruby, tool/outdate-bundled-gems.rb (which is
            invoked by `make install`) wrongly deletes debug.so and rbs_extension.so
            in .bundle/extension/*.

            This leads to a broken installation of ruby which lacks the libraries,
            which may make rubygems show the following warnings (in some additional
            complex conditions):

            ```
            $ irb
            Ignoring debug-1.7.1 because its extensions are not built. Try: gem pristine debug --version 1.7.1
            Ignoring rbs-2.8.2 because its extensions are not built. Try: gem pristine rbs --version 2.8.2
            irb(main):001:0>
            ```

            According to some committers, tool/outdate-bundled-gems.rb is introduced
            for fixing a build issue, but the detail is not recorded. The issue
            seems to occur only when debug gem or rbs gem is updated, so it is
            difficult to fix the script so soon.

            Tentatively, this change stops invoking the script by default.
            This should be backported to ruby_3_2.

            Fixes [Bug #19271]
            ---
             common.mk | 1 -
             1 file changed, 1 deletion(-)

commit 97c32b49e2fe4de8b57ce05146e63b2aa64c7a44
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-18 17:18:44 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-18 17:18:44 +0900

    merge revision(s) 43ff0c2c488c80aaf83b486d45bcd4a92ebe3848: [Backport #19299]

            YJIT: Fix `yield` into block with >=30 locals on ARM

            It's a register spill issue. Fix by moving the Qnil fill snippet to
            after registers are released.

            [Bug #19299]
            ---
             test/ruby/test_yjit.rb | 14 ++++++++++++++
             yjit/src/codegen.rs    | 29 ++++++++++++++---------------
             2 files changed, 28 insertions(+), 15 deletions(-)

commit 52ea5ea9906c3a96c60a68e01b303672602a6832
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-18 17:17:27 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-18 17:17:27 +0900

    merge revision(s) 291a4098cf649c027cb50c16b872455f26ad1dfb,5be0d42d2c4dc765230c76738289560f9ee37f09: [Backport #19296]

            Add missing assertion

            ---
             test/ruby/test_time.rb | 3 +++
             1 file changed, 3 insertions(+)

            [Bug #19296] Precheck bits of time components

            ---
             test/ruby/test_time.rb | 15 +++++++++++++++
             time.c                 | 14 ++++++++------
             2 files changed, 23 insertions(+), 6 deletions(-)

commit 057eff7663a0a4bc95a4799336a2bc14ca2480f0
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-18 17:08:23 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-18 17:08:23 +0900

    merge revision(s) eab7f4623fbf0488e828b75843d70c8e02dc8aa5: [Backport #19336]

            Return 0 if there is no CFP on the EC yet

            StackProf uses a signal handler to call `rb_profile_frames`.  Signals
            are delivered to threads randomly, and can be delivered after the thread
            has been created but before the CFP has been established on the EC.

            This commit returns early if there is no CFP to use.

            Here is some info from the core files we are seeing.  Here you can see
            the CFP on the current EC is 0x0:

            ```
            (gdb) p ruby_current_ec
            $20 = (struct rb_execution_context_struct *) 0x7f3481301b50
            (gdb) p ruby_current_ec->cfp
            $21 = (rb_control_frame_t *) 0x0
            ```

            Here is where VM_FRAME_CFRAME_P gets a 0x0 CFP:

            ```
            6  VM_FRAME_CFRAME_P (cfp=0x0) at vm_core.h:1350
            7  VM_FRAME_RUBYFRAME_P (cfp=<optimized out>) at vm_core.h:1350
            8  rb_profile_frames (start=0, limit=2048, buff=0x7f3493809590, lines=0x7f349380d590) at vm_backtrace.c:1587
            ```

            Down the stack we can see this is happening after thread creation:

            ```
            19 0x00007f3495bf9420 in <signal handler called> () at /lib/x86_64-linux-gnu/libpthread.so.0
            20 0x000055d531574e55 in thread_start_func_2 (th=<optimized out>, stack_start=<optimized out>) at thread.c:676
            21 0x000055d531575b31 in thread_start_func_1 (th_ptr=<optimized out>) at thread_pthread.c:1170
            22 0x00007f3495bed609 in start_thread (arg=<optimized out>) at pthread_create.c:477
            23 0x00007f3495b12133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
            ```
            ---
             vm_backtrace.c | 9 +++++++++
             1 file changed, 9 insertions(+)

commit 89cd61890fe78e0491708f87a5df678b03fda8a3
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-17 11:21:00 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-17 11:21:00 +0900

    merge revision(s) 542e984d82fa25098eb15398d716d907acc52b93: [Backport #19292]

            [Bug #19292] Re-initialize tm when wday or yday is not set

            ---
             test/ruby/test_time.rb |  3 ++-
             time.c                 | 31 ++++++++++++++++++++++---------
             2 files changed, 24 insertions(+), 10 deletions(-)

commit 49cf0896a2934547c0764aadaec021fb37a2e96f
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2023-01-17 11:20:40 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2023-01-17 11:20:40 +0900

    merge revision(s) 90a80eb076429978e720e11fb17a3cbb96de3454: [Backport #19284]

            Fix integer underflow when using HEAP_INIT_SLOTS

            There is an integer underflow when the environment variable
            RUBY_GC_HEAP_INIT_SLOTS is less than the number of slots currently
            in the Ruby heap.

            [Bug #19284]
            ---
             gc.c                 | 25 +++++++++++++------------
             test/ruby/test_gc.rb |  5 +++++
             2 files changed, 18 insertions(+), 12 deletions(-)

commit a7d467a792c644a7260d6560ea2002fdb8ff6de3
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2022-12-29 15:59:52 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2022-12-29 15:59:52 +0900

    merge revision(s) b726d60c986bf951d13e7a2ab5f5e58f58657b03: [Backport #19273]

            Fix [Bug 19273], set correct value to `outer_repeat` on `OP_REPEAT`
             (#7035)

            ---
             regexec.c                | 2 +-
             test/ruby/test_regexp.rb | 5 +++++
             2 files changed, 6 insertions(+), 1 deletion(-)

commit 5c551ac59f9620901394a46dffda5a1833b9c4b0
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2022-12-27 14:56:51 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2022-12-27 14:56:51 +0900

    merge revision(s) fc03ba50f1ff6c30f7c654f564b4dffbed0844ef: [Backport #19263]

            MJIT: Fix JIT code for multiple values in a single case

            [Bug #19263]
            ---
             lib/ruby_vm/mjit/compiler.rb |  2 +-
             test/ruby/test_mjit.rb       | 10 ++++++++++
             2 files changed, 11 insertions(+), 1 deletion(-)

commit a528908271c678360d2d8ca232c178e7cdd340b4
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2022-12-25 15:55:25 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2022-12-25 15:55:25 +0900

    v3.2.0

commit 8f05e4f54bdb3bcf05574bd5f12e56f7e010c8a2
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-25 04:42:50 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-25 05:55:36 +0900

    Update Bundler to 2.4.1 & and RubyGems to 3.4.1

  Notes:
    Merged: https://github.com/ruby/ruby/pull/7020

commit 3cbe37bd357464c0ce665770998b691cad022a24
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-25 00:43:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-25 00:43:27 +0900

    Support new style diagnostic reports

commit 4378de02f9c2c494ae1302c59625e2d126b23f3e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-24 11:21:28 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-24 23:49:27 +0900

    Test of environment variables order for HOME on Windows

commit d0f5dc9eac78ecade459b740ed08795c8df6d129
  Author:     Lars Kanis <lars@greiz-reinsdorf.de>
  AuthorDate: 2022-12-19 05:05:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-24 23:48:47 +0900

    Windows: Prefer USERPROFILE over HOMEPATH

    HOMEPATH is set to "\WINDOWS\system32" when running per "runas" session.
    This directory is not writable by ordinary users, leading to errors with many ruby tools.
    Also config files in the home directory are not recognized.

    Still keeping HOME at first which is not used by native Windows,
    but by ruby specs and by MSYS2 environment.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6992

commit 6a55b4601a50144a4c98571a79395b85465fda7f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-23 18:55:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-24 22:55:12 +0900

    Add Dir.home test with encoding

commit d6ce4180a5b4dacbac895c9911031a6df6c61136
  Author:     Lars Kanis <lars@greiz-reinsdorf.de>
  AuthorDate: 2022-12-19 05:05:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-24 22:54:23 +0900

    Windows: Fix encoding of Dir.home

    Dir.home returns an UTF-8 string since ruby-3.0, but the actual
    encoding of the bytes was CP_ACP or CP_OEMCP.
    That led to invalid bytes when calling Dir.home with an unicode
    username.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6991

commit 18c1ca8f4c0748905d5cedb6c044df507ea8ad6a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-24 20:18:10 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-24 20:18:10 +0900

    Fix test-syntax-suggest order

    Prepare for test-syntax-suggest after other tests finished.

commit 3fb1d49a1f1289142f3da8e876133bd7f459e4f6
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2022-12-24 18:59:45 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2022-12-24 18:59:45 +0900

    Revert "darwin: resolve rb symbols from ext by `-flat_namespace` to see libruby transitively"

    This reverts commit c5eefb7f37db2865891298dd1a1e60dff09560ad.

    Flat namespace breaks gems with C extention if its symbols conflict
    with ohter libraries.

commit b9332ac8e7126066ac4238443d63eaa4c06789f9
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-24 18:13:40 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-24 18:13:40 +0900

    MJIT: Cancel all on disastrous situations (#7019)

    I noticed this while running test_yjit with --mjit-call-threshold=1,
    which redefines `Integer#<`. When Ruby is monkey-patched,
    MJIT itself could be broken.

    Similarly, Ruby scripts could break MJIT in many different ways. I
    prepared the same set of hooks as YJIT so that we could possibly
    override it and disable it on those moments. Every constant under
    RubyVM::MJIT is private and thus it's an unsupported behavior though.

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit d521c9e5a7ed603f8f1aaa9a9a66c3cc80599b0c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-24 17:54:21 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-24 17:54:21 +0900

    cosmetic changes for external link

commit 8263feaa22bce11f173c53305bcd43eb702cc5fc
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-24 17:20:09 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-24 17:20:09 +0900

    Added some of new features for RubyGems 3.4 and Bundler 2.4

commit f6620037ba1477d2c337d7b511f094d6d0fbb69c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-22 08:20:23 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-24 16:57:07 +0900

    Merge RubyGems-3.4.0 and Bundler-2.4.0

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6987

commit d5635dfe36588b04d3dd6065ab4e422f51629b11
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-24 11:27:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-24 11:29:11 +0900

    Extract setup of environment variables

commit 640dca9ae72e55028af812cc041bdaed1f5a2af4
  Author:     zverok <zverok.offline@gmail.com>
  AuthorDate: 2022-12-23 06:29:44 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-24 10:52:20 +0900

    [DOC] Document AST.parse's keyword arguments

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6996

commit c3c116f6a6b92d0224b35e7423959a7ab39ddc6b
  Author:     Victor Shepelev <zverok.offline@gmail.com>
  AuthorDate: 2022-12-24 07:48:58 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-24 07:48:58 +0900

    [DOC] Document new methods of IO::Buffer and Fiber::Scheduler (#7016)

    Co-authored-by: Samuel Williams <samuel.williams@oriontransfer.co.nz>

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 11ad9a42d76ba785b2ec93f327469ead9b810ef4
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-12-24 03:52:10 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-24 03:52:10 +0900

    Fix missing handling of offset argument in `IO::Buffer` `pread` and `pwrite`. (#7012)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit af4cd997a160c4eddc935dd384dbd0160d3160ce
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-20 01:20:21 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-24 03:19:45 +0900

    sample/trick2022/03-mame/entry.rb: remove trailing spaces

  Notes:
    Merged: https://github.com/ruby/ruby/pull/7014

commit a8485291bbdbe3b8e867f59d2d77b7a22732e5a6
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-19 22:32:48 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-24 03:19:45 +0900

    test/test_trick.rb: Add tests for TRICK 2022 entries

  Notes:
    Merged: https://github.com/ruby/ruby/pull/7014

commit e8b0180974a1f51ae3894d3e055461a1037c778d
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-19 22:12:34 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-24 03:19:45 +0900

    sample/trick2022/: adds the top-three entries of TRICK 2022

    See https://github.com/tric/trick2022 for TRICK 2022.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/7014

commit 1d3bfd804cdba027ab9ec79678692b607c43b798
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-24 03:18:57 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-24 03:18:57 +0900

    MJIT: Export fewer shape functions (#7007)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit ee60756495b775c4e8fc93a57094ac4e4b83fa7f
  Author:     NARUSE, Yui <nurse@users.noreply.github.com>
  AuthorDate: 2022-12-24 02:24:55 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-24 02:24:55 +0900

    Fix backtrace beyond _singtramp on macOS arm64 (#7015)

    * move ptrauth_strip logic into vm_dump.c
    * don't use _sigtramp special logic on arm64

  Notes:
    Merged-By: nurse <naruse@airemix.jp>

commit 1876cda972ea226ee85faf14dae6d047e145a4c6
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-23 23:42:18 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-24 01:21:14 +0900

    Add tests for compacting shared arrays

  Notes:
    Merged: https://github.com/ruby/ruby/pull/7013

commit 7891f9407184ca6b4636092555d2546e3830c2ff
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-23 23:33:51 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-24 01:21:14 +0900

    Don't allow re-embedding frozen arrays

    Frozen arrays should not move from heap allocated to embedded because
    frozen arrays could be shared roots for other (shared) arrays. If the
    frozen array moves from heap allocated to embedded it would cause issues
    since the shared array would no longer know where to set the pointer
    in the shared root.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/7013

commit d61a4cec618b8f5554398fff2ee4656763aeec4e
  Author:     zverok <zverok.offline@gmail.com>
  AuthorDate: 2022-12-22 05:33:48 +0900
  Commit:     Victor Shepelev <zverok.offline@gmail.com>
  CommitDate: 2022-12-24 01:09:49 +0900

    Docs: path: option for IO.new

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6985

commit c621c6140ad8ace766e616f593f530041d860a23
  Author:     zverok <zverok.offline@gmail.com>
  AuthorDate: 2022-12-22 05:10:21 +0900
  Commit:     Victor Shepelev <zverok.offline@gmail.com>
  CommitDate: 2022-12-24 01:09:49 +0900

    Docs: Fix problems with Fiber's docs

    * References to Scheduler (was outdated to SchedulerInterface)
    * References between new methods (storage, [], []=)
    * Storage's call-sequence (rendered confusingly)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6985

commit 5c04ff944ee6bdfb1c20acef20b7b0b1d5074440
  Author:     zverok <zverok.offline@gmail.com>
  AuthorDate: 2022-12-22 04:52:55 +0900
  Commit:     Victor Shepelev <zverok.offline@gmail.com>
  CommitDate: 2022-12-24 01:09:49 +0900

    Docs: Fix small glitch in GC

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6985

commit 64cdf1936a3952fbd43083de55244dd1b701cce6
  Author:     zverok <zverok.offline@gmail.com>
  AuthorDate: 2022-12-22 04:51:08 +0900
  Commit:     Victor Shepelev <zverok.offline@gmail.com>
  CommitDate: 2022-12-24 01:09:49 +0900

    Docs: Separate documentation for UnboundMethod#==

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6985

commit b3d57fdd64d2e88499bf718e64522dfce9358c48
  Author:     zverok <zverok.offline@gmail.com>
  AuthorDate: 2022-12-22 04:23:14 +0900
  Commit:     Victor Shepelev <zverok.offline@gmail.com>
  CommitDate: 2022-12-24 01:09:49 +0900

    Docs: Update Struct docs about keyword initialization

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6985

commit 91076b2c595a83fd55b49f907b2f9d84d264e5a2
  Author:     zverok <zverok.offline@gmail.com>
  AuthorDate: 2022-12-22 04:22:38 +0900
  Commit:     Victor Shepelev <zverok.offline@gmail.com>
  CommitDate: 2022-12-24 01:09:49 +0900

    Docs: Fix rendering of SyntaxError#path

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6985

commit 65920cfc40b47e9e037e0536b2b7de8f0cf30fc3
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-19 17:15:31 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-23 23:48:18 +0900

    addr2line.c: Strip pointer authentication

    We need to manually strip pointer authentication bits on M1 mac because
    libunwind leaks them out.

    Co-Authored-By: NARUSE, Yui <naruse@airemix.jp>
    Co-Authored-By: Yuta Saito <kateinoigakukun@gmail.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/7011

commit 540b67da4d59ab7d9dbba8d5551944dad1ef8200
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-23 12:57:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-23 20:33:27 +0900

    test-syntax-suggest is run by check now

  Notes:
    Merged: https://github.com/ruby/ruby/pull/7010

commit cae53842735237ccf71a13873fd0d1ae7f165582
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-23 12:02:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-23 20:33:27 +0900

    Test syntax_suggest by `make check`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/7010

commit 17b63ab6b1a8b9f5af99d3bcdb95a3bb19fdd576
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-23 20:27:58 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-23 20:31:25 +0900

    [ruby/rdoc] Fix fragile tests

    When the temporary path is long enough, the formatter may fold the
    path and may hit a hyphen at the end of line, and miscounted.

    https://github.com/ruby/rdoc/commit/5f46479543

commit edb83dc3a2c374e880e8eb488152872152790e92
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-23 19:37:24 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-23 19:37:24 +0900

    Revert the additional change from openssl-3.1.0

      Revert "[ruby/openssl] pkey/ec: constify"

      This reverts commit d2cd903c85f38f42c6aefc6d97a1558f74d8d9db.

commit eb8d4d7b5145849325985c00b810b8d75661d86e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-23 19:36:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-23 19:36:43 +0900

    Revert the additional changes from net-http-0.3.2

commit d40064d1846b5835dff81e3f168c0c3a6c85e814
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-23 19:32:35 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-23 19:33:27 +0900

    Revert the accidentally commit from erb-4.0.2

      Revert "[ruby/erb] Use a ruby-lang alias on spec.email"

      This reverts commit fa64889abbad727d31bb927604d87679825dcd37.

commit c5eefb7f37db2865891298dd1a1e60dff09560ad
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-12-23 13:58:45 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-12-23 17:45:20 +0900

    darwin: resolve rb symbols from ext by `-flat_namespace` to see libruby transitively

    This repairs the assumption, which many fat-gem maintainer expect, "An
    extension built with --disable-shared Ruby is loadable from
    --enable-shared Ruby".

    By default all references resolved to a dynamic library use "two-level
    namespace", which record the library name and symbol name for each
    resolution entry. On the other hand, `-flat_namespace` discards the
    library name information and resolves symbols "flatly".
    This behavior is useful for us to ignore which image (`ruby`
    executable or `libruby.dylib`) provides rb symbols at runtime.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/7008

commit 2192f2e6bc361396f6a81ead955a0de31a2e164c
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-12-23 14:48:35 +0900
  Commit:     Shugo Maeda <shugo@ruby-lang.org>
  CommitDate: 2022-12-23 14:48:35 +0900

    Update bundled_gems for net-imap

commit 4aeea3cc09b302862fd0d40ccfaf86a688681d82
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-23 13:10:26 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-23 14:07:02 +0900

    Removed the needless test guard for syntax_suggest.

      It's resolved by https://github.com/ruby/ruby/commit/5bb43aeb890657ea586e3fabbf763e5b5670ffd7

  Notes:
    Merged: https://github.com/ruby/ruby/pull/7006

commit bf3b376522705eaa01204618a15fce4c11dde42b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-23 12:29:53 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-23 13:05:26 +0900

    [ruby/syntax_suggest] Remove debug print

    https://github.com/ruby/syntax_suggest/commit/4d53d31bc5

commit 5bb43aeb890657ea586e3fabbf763e5b5670ffd7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-23 12:28:32 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-23 13:05:25 +0900

    [ruby/syntax_suggest] Should not hardcode ruby name

    https://github.com/ruby/syntax_suggest/commit/0d5201b24d

commit d2cd903c85f38f42c6aefc6d97a1558f74d8d9db
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-23 11:18:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-23 11:42:15 +0900

    [ruby/openssl] pkey/ec: constify

    https://github.com/ruby/openssl/commit/6fb3499a7b

commit d2847009dbe1df52b3984ab994b1d5c2dadbb86e
  Author:     Marco Costa <mmarcottulio@gmail.com>
  AuthorDate: 2022-12-23 11:12:16 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-23 11:12:16 +0900

    [DOC] Fix most of Range#cover? marked as verbatim

  Notes:
    Merged: https://github.com/ruby/ruby/pull/7005

    Merged-By: nobu <nobu@ruby-lang.org>

commit 792c50e917c6f7a7ed0f3ca8c64b47c005593b41
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-23 10:46:25 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-23 11:05:09 +0900

    [ruby/rdoc] Clean up home directories for each test

    https://github.com/ruby/rdoc/commit/f067c174da

commit 3ade713967de46665c3682af5696fd3b8dac1d86
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-23 09:42:51 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-23 09:51:52 +0900

    Bump version to 1.6.2

commit ba342088009619f5df84116a0567e93bf6c9181b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-23 09:11:59 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-23 09:51:35 +0900

    Bump up Racc parser version

commit 6438f3cad684fc3ab5d4cd9950a01eabbfdfd289
  Author:     Johnny Willemsen <jwillemsen@remedy.nl>
  AuthorDate: 2022-12-21 03:44:00 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-23 09:46:59 +0900

    [ruby/racc] Removed old originalId in comment

    https://github.com/ruby/racc/commit/1dfbef8e99

commit 2d2baaf2f46d447f64f4f8fd7cfa3a2a7eba69ed
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-12-23 08:52:24 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] Ruby/OpenSSL 3.1.0

    https://github.com/ruby/openssl/commit/c2f7d775c6

commit a77830591919f06feaeb82585c229322d5e8836b
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-12-23 08:49:36 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] Ruby/OpenSSL 3.0.2

    https://github.com/ruby/openssl/commit/48b79333e0

commit 046aadb89b62d5ca5b8a0a061e5682f82defa22d
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-12-23 08:40:26 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] Ruby/OpenSSL 2.2.3

    https://github.com/ruby/openssl/commit/04acccd692

commit 75e7b85e3ec0b9724cce585d31c2c3c5aaa6a9a0
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-12-23 06:04:20 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] test/openssl/test_pkey.rb: allow failures in test_s_generate_parameters

    The root cause has been fixed by OpenSSL 3.0.6, but Ubuntu 22.04's
    OpenSSL package has not backported the patch yet.

    Reference: https://github.com/ruby/openssl/issues/492

    https://github.com/ruby/openssl/commit/f2e2a5e5ed

commit 0e11d2c3f8a74d2310efa67179b50c12acb3fa42
  Author:     Joe Truba <joe@bannable.net>
  AuthorDate: 2022-11-20 09:54:32 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] pkey/ec: check private key validity with OpenSSL 3

    The behavior of EVP_PKEY_public_check changed between OpenSSL 1.1.1
    and 3.0 so that it no longer validates the private key. Instead, private
    keys can be validated through EVP_PKEY_private_check and
    EVP_PKEY_pairwise_check.

    [ky: simplified condition to use either EVP_PKEY_check() or
    EVP_PKEY_public_check().]

    https://github.com/ruby/openssl/commit/e38a63ab3d

commit 782777a803f990f688579db50c938d1a80a5f24a
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-10-31 20:07:57 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] Undefine `OpenSSL::SSL` for no socket platforms

    This fixes a linkage error about `ossl_ssl_type` on platforms which do
    not have socket, like WASI.

    Even before this patch, some items are disabled under `OPENSSL_NO_SOCK` since
    https://github.com/ruby/ruby/commit/ee22fad45d394818690c4a7586d7bb576ba67c56
    However, due to some new use of OpenSSL::SSL::Socket over the past few years,
    the build under `OPENSSL_NO_SOCK` had been broken.

    This patch guards whole `OpenSSL::SSL` items by `OPENSSL_NO_SOCK`.

    [ky: adjusted to apply on top of my previous commit that removed the
    OpenSSL::ExtConfig, and added a guard to lib/openssl/ssl.rb.]

    https://github.com/ruby/openssl/commit/b0cfac6a96

commit e6ca6443299b48f906662b438e5267d876d21a1e
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-12-23 04:34:43 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] ssl: remove OpenSSL::ExtConfig

    This module was introduced in 2015 for internal use within this library.
    Neither of the two constants in it is used anymore. I don't think we
    will be adding a new constant in the foreseeable future, either.

    OPENSSL_NO_SOCK is unused since commit https://github.com/ruby/openssl/commit/998d66712a78 (r55191).
    HAVE_TLSEXT_HOST_NAME is unused since commit https://github.com/ruby/openssl/commit/4eb4b3297a92.

    https://github.com/ruby/openssl/commit/eed3894bda

commit a4b4997c69437e9d2ba09629d72284a4fb9defc5
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-12-23 04:06:12 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] test/openssl/test_ssl.rb: do not run SSL tests if not available

    https://github.com/ruby/openssl/commit/a3d230d4e0

commit dd6f3276e07f8f731a3bbcbdd58525ee6dd6581e
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-10-17 17:33:37 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] ssl: disable NPN support on LibreSSL

    As noted in commit https://github.com/ruby/openssl/commit/a2ed156cc9f1 ("test/test_ssl: do not run NPN tests
    for LibreSSL >= 2.6.1", 2017-08-13), NPN is known not to work properly
    on LibreSSL.

    Disable NPN support on LibreSSL, whether OPENSSL_NO_NEXTPROTONEG is
    defined or not.

    NPN is less relevant today anyway. Let's also silence test suite when
    it's not available.

    https://github.com/ruby/openssl/commit/289f6e0e1f

commit d6c16dd3e67ea5aa58a2f17dc8aa8aa977ded99a
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-10-17 16:52:46 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] ssl: update TLS1_3_VERSION workaround for older LibreSSL versions

    The macro is now defined by default in LibreSSL 3.4+. Let's document it
    for future readers.

    https://github.com/ruby/openssl/commit/935698e9f9

commit 7c073cc11221eb85ac0c55ec38ff4c9da22ca26c
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-10-17 16:50:10 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] test/openssl/test_asn1.rb: remove pend for unsupported LibreSSL versions

    Commit https://github.com/ruby/openssl/commit/af895bc5596b ("asn1: avoid truncating OID in
    OpenSSL::ASN1::ObjectId#oid", 2016-12-15) added this test case.

    The OBJ_obj2txt() issue was fixed by LibreSSL 2.5.1 (released in 2017)
    and is no longer relevant today.

    https://github.com/ruby/openssl/commit/6a188f1a29

commit 5591e4935da7b606f9d3047894eeea5d7e4a8864
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-10-17 16:50:01 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] test/openssl/test_asn1.rb: skip failing tests on LibreSSL 3.6.0

    LibreSSL 3.6.0 expects the seconds part in UTCTime and GeneralizedTime
    to be always present. LibreSSL 3.6.0 release note [1] says:

    > - The ASN.1 time parser has been refactored and rewritten using CBS.
    >   It has been made stricter in that it now enforces the rules from
    >   RFC 5280.

    [1] https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.6.0-relnotes.txt

    https://github.com/ruby/openssl/commit/bbc540fe83

commit 6df4d272c3f74d3f9d206536add39b59ee1acb57
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-10 00:15:46 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] Suppress deprecation warnings by OpenSSL 3

    https://github.com/ruby/openssl/commit/91657a7924

commit d7d1bb3e871108b787d67da1f0d11d317bdfacf7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-09 00:17:25 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:15 +0900

    [ruby/openssl] Constify when building with OpenSSL 3

    https://github.com/ruby/openssl/commit/c0023822fe

commit 2bc7eac8224d3a58381505d5296652594159017c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-09 23:32:44 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:14 +0900

    [ruby/openssl] Check for functions with arguments

    https://github.com/ruby/openssl/commit/b67aaf925d

commit ca7a6b15535f23b624452ab793d60ee277d8c73f
  Author:     Joe Truba <joe@bannable.net>
  AuthorDate: 2022-11-26 07:30:01 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:14 +0900

    [ruby/openssl] pkey/ec: fix ossl_raise() calls using cEC_POINT instead of eEC_POINT

    https://github.com/ruby/openssl/commit/b2e9f5e132

commit 13137236dc34e80402489de226d3671c87a24686
  Author:     Joe Truba <joe@bannable.net>
  AuthorDate: 2022-11-20 06:46:49 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-12-23 09:39:14 +0900

    [ruby/openssl] raise when EC_POINT_cmp or EC_GROUP_cmp error instead of returning true

    https://github.com/ruby/openssl/commit/e1e8f3cebe

commit fe2bcd352899cd402091c2815846d17a0eb1369b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-23 09:33:44 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-23 09:35:07 +0900

    Check `added` for the second sub! properly

    Even if the first sub! modifies `news`, when `added` is empty, it always
    ended up skipping `File.write("NEWS.md", news)` because of the `next`.
    This commit fixes the problem.

commit 7d700a9f5df32718a9376d53e023a5a9787c0afa
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-12-23 03:13:24 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-12-23 08:32:57 +0900

    debug.gem v1.7.1

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6995

commit dc8c5bafcf3afe478710a8f93b8638fcbf510f1f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-23 06:06:31 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-23 06:06:31 +0900

    Clean intermediate source file in `TestMJIT#test_jit_failure` (#6994)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 7e8fa06022a9e412e3f8e6c8b6f0ba1909f648d5
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-12-21 05:44:11 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-12-23 04:50:26 +0900

    Always issue deprecation warning when calling Regexp.new with 3rd positional argument

    Previously, only certain values of the 3rd argument triggered a
    deprecation warning.

    First step for fix for bug #18797.  Support for the 3rd argument
    will be removed after the release of Ruby 3.2.

    Fix minor fallout discovered by the tests.

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6976

commit 4f73de67edc18207148fa311eff8f463ac873981
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-23 03:16:55 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-23 03:16:55 +0900

    Fix typo in array.c

    We should be using the size of RArray and not RString for arrays.

commit 98675ac09cf7bc204b708faea1874b0b0610f309
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-23 03:15:04 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-23 03:15:04 +0900

    [DOC] IO#read doesn't always read in binary mode

    When `maxlen` is `nil`, it uses the data mode of the stream.
    For example in the following:

    ```ruby
    File.binwrite("a.txt", "\r\n\r")
    p File.open("a.txt", "rt").read    # "\n\n"
    p File.open("a.txt", "rt").read(3) # "\r\n\r"
    ```

    Note, this newline translation is _not_ specific to Windows.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6982

    Merged-By: XrXr

commit bba2bfc97512014134ea1c172e7a077bddebdbad
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-22 02:34:08 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-12-23 03:10:22 +0900

    [DOC] encodings.rdoc: universal_newline reacts to \r

    It wasn't clear that the mode also translates "\r" to "\n".

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6981

commit 95a1d1fde8fb13d6b7bd6d63864d3bae8b34b0b0
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-22 22:41:10 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-23 00:32:35 +0900

    addr2line.c: Support DW_FORM_rnglistx

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6993

commit 53c82a6ce4c90bca5212c2d533014af47c6a5b4e
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-22 22:39:04 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-23 00:32:35 +0900

    addr2line.c: Implement DW_AT_*_base

    ... and add code to parse the sections of .debug_addr_base and
    .debug_rnglists_base.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6993

commit 515f816b7f3985e0cfa889a574c3b93274d50b6f
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-22 22:34:34 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-23 00:32:35 +0900

    addr2line.c: Support DW_FORM_strx* forms

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6993

commit 5234f99b76689e7cf711961a737efd4de863460a
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-22 22:33:06 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-23 00:32:35 +0900

    addr2line.c: Support DW_FORM_addrx* forms

    ... and add VAL_addr value type

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6993

commit 303e11697dab49a3522712cdc0b4d34af1dc6bfc
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-22 22:29:39 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-23 00:32:35 +0900

    addr2line.c: Keep .debug_str_offsets and .debug_addr sections as well

    clang generates DWARF with the sections

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6993

commit d7388f720c706d94f21ee4e169678a71c73ce37c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-22 05:09:27 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-22 23:23:40 +0900

    Fix buffer overrun with auto-compact for shapes

    The following script crashes:

    ```ruby
    GC.auto_compact = true
    GC.stress = true

    class Foo
      def initialize
        @a = @b = @c = 0
      end

      def add_ivars
        @d = @e = @f = 0
      end
    end

    ary = 1_000.times.map { Foo.new }
    ary.each { |f| f.add_ivars }
    ```

    This is because in rb_grow_iv_list, it first calls
    rb_ensure_iv_list_size to allocate the buffer (and also unsets the
    embed bit) then rb_shape_transition_shape_capa to get the new shape.
    However, auto-compact can trigger in rb_shape_transition_shape_capa
    which would re-embed the object since it doesn't have the new shape yet.
    This causes a crash as the object is now embedded but has a non-embed
    shape which would cause the object to have a buffer overrun.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6986

commit d1d61cabbc332790c0d53fea01f51d52a3489670
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-22 20:37:40 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-22 20:37:40 +0900

    addr2line.c: Fix another indexing bug

commit ebd6b5d826b1a04b20e477f54723aa5c545cbf69
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-22 20:26:32 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-22 20:28:03 +0900

    addr2line.c: Fix indexing bug

commit e61e4ae60b1858254051de1e7e90f47185e31491
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-22 15:59:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-22 19:27:27 +0900

    Refactor `reg_extract_args` to return regexp if given

commit 78826ad4868c56964d0c47cf37f0100565a5b997
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-22 00:51:46 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-22 18:57:06 +0900

    addr2info.c: Make it work with --enable-yjit

    Background: GCC 12 generates DWARF 5 with .debug_rnglists, while rustc
    generates DWARF 4 with .debug_ranges.

    The previous logic always used .debug_rnglists if there is the section.
    However, we need to refer .debug_ranges for DWARF 4.

    This change keeps DWARF version of the current compilation unit and use
    a proper section depending on the version.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6980

commit c827d724b767a4624b9a3a00c61f181aaf6aef7e
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-21 22:18:48 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-22 18:57:06 +0900

    addr2line.c: Support "Line Number Program Header" in DWARF 5

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6980

commit 2445a4c5b705e6a4bc5113c25d8a6684d0a1df82
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-21 22:13:22 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-22 18:57:06 +0900

    addr2line.c: Keep .debug_line_str section as well

    ... and properly support DW_FORM_line_strp.

    This is a prepartion to support DWARF 5.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6980

commit fe7190a8c19bb56ca0aefed368402af1547dd09a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-22 17:47:34 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-22 17:48:22 +0900

    [ruby/optparse] Bump version to 0.3.1

    https://github.com/ruby/optparse/commit/2a1e157ae1

commit 298176f23acb6a79ec6bca6767547bf7d7162dfd
  Author:     Kazuki Tsujimoto <kazuki@callcc.net>
  AuthorDate: 2022-12-22 16:20:23 +0900
  Commit:     Kazuki Tsujimoto <kazuki@callcc.net>
  CommitDate: 2022-12-22 16:20:23 +0900

    NEWS.md: Update power_assert version

commit 454c00723a24916daeedde993a8429ab508576d3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-21 23:17:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-22 15:51:00 +0900

    Share argument parsing in `Regexp#initialize` and `Regexp.linear_time?`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6988

commit bb4cbd0803c3297ad036008adc7a01159ce44e1e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-22 15:46:15 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-22 15:46:15 +0900

    Put RubyVM::MJIT::Compiler under ruby_vm directory (#6989)

    [Misc #19250]

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 186b5c0086a3b7b02b19f58aeda09016ee1c3d52
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-22 14:49:30 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-22 14:49:30 +0900

    Revert "Update bundled gems list at 2022-12-22"

    This reverts commit 89a66f20d8701f30f3d9952ae62a02fdefcd166b.

commit 1e193c78d20e567c8eaeedf56b728adb9e0aaf7b
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-12-22 14:05:08 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-12-22 14:05:08 +0900

    Clarify NEWS entry for Bug #16889

commit 4213f42555a62b565ff99e0ad3e7d3c7f5495180
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-12-22 14:02:43 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-22 14:02:43 +0900

    Make sure TracePoint#binding returns nil for c_call/c_return events

    This makes sure the method returns nil for these events, as
    described in NEWS, even if the TracePoint could create a binding.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6984

    Merged-By: jeremyevans <code@jeremyevans.net>

commit ae455a129e97709d7fd8b11c1e5c3245f4738528
  Author:     zverok <zverok.offline@gmail.com>
  AuthorDate: 2021-12-31 03:52:42 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-12-22 13:37:58 +0900

    [DOC] Update TracePoint.allow_reentry docs

    Adjust call-seq to mention block, and add examples
    and explanations.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5380

commit b7bb14b96e7e1923d91787fa5a9ca2e4053431b1
  Author:     Kazuki Tsujimoto <kazuki@callcc.net>
  AuthorDate: 2022-12-22 13:05:09 +0900
  Commit:     Kazuki Tsujimoto <kazuki@callcc.net>
  CommitDate: 2022-12-22 13:05:09 +0900

    Update documentation about Time#deconstruct_keys

commit 4e6c44e297a7b504f6390446e2e499a7a97a5363
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-22 12:48:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-22 12:48:11 +0900

    [DOC] Fix the paragraph about PRNG update

commit e3847f39a199407059349f19a98cbe790d08f0cd
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-22 12:27:09 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-22 12:27:09 +0900

    Added the missing word with 1e1d7047fcc

commit 1e1d7047fcc741dae66b29c611004d722ad087c9
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-22 12:25:00 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-22 12:25:00 +0900

    Introduce GH releases for default gems and bundled gems

commit 2811d9d224645ea714c3d20ef3d0e6a6661d441f
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-18 19:18:35 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-18 19:18:35 +0900

    NEWS.md: Tweak "Constant lookup when defining a class/module"

commit dd338ae124182b445c688666769cd8b7930ad88c
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-18 18:48:02 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-18 18:48:02 +0900

    NEWS.md: Fix typos

commit 937299ede1a996efa0992b8a8cfb4a5f830b0e5c
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-18 18:47:19 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-18 18:47:19 +0900

    NEWS.md: Fix a typo

commit 89a66f20d8701f30f3d9952ae62a02fdefcd166b
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-12-22 11:34:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-22 11:34:24 +0900

    Update bundled gems list at 2022-12-22

commit 5b85e4040e130777ab1652a1cbfcbfa170bcc799
  Author:     Kazuki Tsujimoto <kazuki@callcc.net>
  AuthorDate: 2022-12-22 11:12:59 +0900
  Commit:     Kazuki Tsujimoto <kazuki@callcc.net>
  CommitDate: 2022-12-22 11:12:59 +0900

    Update power_assert to 2.0.3

commit 67ef3cd3ccdaeb1310a550f62a8a23606fb3bced
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-22 09:56:41 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-22 09:56:41 +0900

    Skip a flaky Ractor test for mswin

commit 99cee85775bc5656b942bf4e1b0568a8f40addcd
  Author:     Ufuk Kayserilioglu <ufuk@paralaus.com>
  AuthorDate: 2022-12-22 09:27:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-22 09:27:38 +0900

    Add copy with changes functionality for Data objects (#6766)

    Implements [Feature #19000]

    This commit adds copy with changes functionality for `Data` objects
    using a new method `Data#with`.

    Since Data objects are immutable, the only way to change them is by
    creating a copy. This PR adds a `with` method for `Data` class instances
    that optionally takes keyword arguments.

    If the `with` method is called with no arguments, the behaviour is the
    same as the `Kernel#dup` method, i.e. a new shallow copy is created
    with no field values changed.

    However, if keyword arguments are supplied to the `with` method, then
    the copy is created with the specified field values changed. For
    example:
    ```ruby
        Point = Data.define(:x, :y)
        point = Point.new(x: 1, y: 2)
        point.with(x: 3) # => #<data Point x: 3, y: 2>
    ```

    Passing positional arguments to `with` or passing keyword arguments to
    it that do not correspond to any of the members of the Data class will
    raise an `ArgumentError`.

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 398aaed2f0e56a81c5c15cc1126b6bbba79ffec0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-22 00:33:44 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-22 00:34:21 +0900

    Fix the case trailer without newline

    cf0b413ef8b794ef6e7436f22fd5a998050dada9

commit 98fbebf110f0802fd6c72e48eb9d9a6c40878e40
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-21 23:59:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-22 00:01:18 +0900

    [DOC] Fix typo

commit 172dc98c94d1b0356c14e60dfcc4ba1ed2c7ed16
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-12-21 06:10:51 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-21 23:17:19 +0900

    [ruby/net-http] Adding links to references

    https://github.com/ruby/net-http/commit/71bae5c0fe

commit 276b84f8ed1639d22df072c622e0a5d501bf8c5f
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-12-21 01:52:26 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-21 23:17:19 +0900

    [ruby/net-http] Adding links to references

    https://github.com/ruby/net-http/commit/e4df80f299

commit 86f0128efe687a9db2756c9902b4a28f26981b1b
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-12-20 02:38:02 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-21 23:17:18 +0900

    [ruby/net-http] Adding links to references

    https://github.com/ruby/net-http/commit/df5a554fa8

commit 6af6857ecfd5d67e5e9125c7ace0900475481275
  Author:     Soutaro Matsumoto <matsumoto@soutaro.com>
  AuthorDate: 2022-12-21 22:11:51 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-21 22:11:51 +0900

    Set up RBS_SKIP_TESTS (#6862)

    * Set up RBS_SKIP_TESTS

  Notes:
    Merged-By: soutaro <matsumoto@soutaro.com>

commit befc99c00813568973a6330b2101e27184aab509
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-21 12:52:44 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-21 20:48:51 +0900

    [DOC] tool/update-NEWS-refs.rb: Align footnotes

commit c7c006cc68573cea356253cb1cc2c428d83fdf6c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-21 02:06:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-21 20:48:51 +0900

    [DOC] tool/update-NEWS-refs.rb: Remove extra brackets

    Surrounding with brackets is just a convention for the bugs tracker
    links.

commit cc4c28ec2efa71b1c8afb4ce11409ad7b5ca1c95
  Author:     Akinori MUSHA <knu@idaemons.org>
  AuthorDate: 2022-12-21 19:13:15 +0900
  Commit:     Akinori MUSHA <knu@idaemons.org>
  CommitDate: 2022-12-21 19:13:15 +0900

    Make Enumerartor.product return nil when called with a block

commit 308ccbaeb2c1c0e78d59c0411ddbeede8d2324f0
  Author:     Akinori MUSHA <knu@idaemons.org>
  AuthorDate: 2022-12-21 18:19:19 +0900
  Commit:     Akinori MUSHA <knu@idaemons.org>
  CommitDate: 2022-12-21 18:19:19 +0900

    Make product consistently yield an array of N elements instead of N arguments

    Inconsistency pointed out by @mame:

    ```
    >> Enumerator.product([1], [2], [3]).to_a
    => [[1, 2, 3]]
    >> Enumerator.product([1], [2]).to_a
    => [[1, 2]]
    >> Enumerator.product([1]).to_a
    => [1]
    >> Enumerator.product().to_a
    => [nil]
    ```

    Got fixed as follows:

    ```
    >> Enumerator.product([1], [2], [3]).to_a
    => [[1, 2, 3]]
    >> Enumerator.product([1], [2]).to_a
    => [[1, 2]]
    >> Enumerator.product([1]).to_a
    => [[1]]
    >> Enumerator.product().to_a
    => [[]]
    ```

    This was due to the nature of the N-argument funcall in Ruby.

commit 684fa46ee68dd7f1f07d4f7f65861d6875736122
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-21 18:57:34 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-21 18:57:37 +0900

    Removed empty section

commit e894ff5ec18ff42d90b7977317d1bcaecd51f186
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-21 14:19:17 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-21 18:57:36 +0900

    Update bundled_gems

commit 1a24442193fe437e761e941d1ae0923d45fbb92f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-21 15:18:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-21 15:18:34 +0900

    test/socket/test_addrinfo.rb: Suppress Errno::EACCES on Windows

commit 9f42ee3e529759dc18a92ed4d3bbd0612787d8fd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-21 14:32:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-21 14:34:40 +0900

    [DOC] Fix formatting

commit 1e989c49a823c7257040fdd1d712a06a5acd6a60
  Author:     Mau Magnaguagno <maumagnaguagno@gmail.com>
  AuthorDate: 2022-12-21 14:28:48 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-21 14:28:48 +0900

    MJIT: Refactor Compiler#cast_offset (#6967)

    Subtract max value from offset when sign bit is set, without string operations.

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 502ca37dde288d20fed6e6ea34f4ab3299de7777
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-21 14:07:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-21 14:09:12 +0900

    [ruby/optparse] The encoding argument of `Regexp.new` has been ignored since 1.9

    https://github.com/ruby/optparse/commit/766f567405

commit afd46429fcdb83aa9fa7c193ede40bff3f3ff151
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-19 15:14:02 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-12-21 11:19:23 +0900

    tool/m4/ruby_wasm_tools.m4: force passing WASI_SDK_PATH when building for wasi

    Make the WASI_SDK_PATH variable mandatory when building for wasi host.
    This requirement prevents developers from being stuck due to unfriendly
    configuration's error message.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5464

commit 2b96119fc00a49813c169d811e43a49ba9833f5f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-21 08:34:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-21 09:48:42 +0900

    [DOC] fix unintentional verbatim

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6975

commit 47988e63d65098ce1e6484f03ae5e2ca42bd7963
  Author:     Sorah Fukumori <her@sorah.jp>
  AuthorDate: 2022-01-08 14:03:02 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-21 09:40:09 +0900

    test_readline#test_without_tty: Use EnvUtil.rubybin

    `ruby` is not always available in certain build environments and
    configure options. Choose appropriate command line using EnvUtil.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5417

commit 33debffdd3aa0ef9752857530c125f0a889db970
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-12-21 07:02:25 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-12-21 07:05:56 +0900

    Use "Fiber storage variables" consistently

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6974

commit 4495dea153a097c59d56819bc827bebfbef5be3f
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-12-21 06:10:37 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-12-21 07:05:56 +0900

    Improve documentation for fiber-scoped variables

    * Especially around Enumerator.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6974

commit 39e70eef724d1c4b50a6ee894c35a3e60773671c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-21 05:18:36 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-21 05:18:36 +0900

    [DOC] Fix formatting for GC.compact

commit 9f4472cad76ced858e84095bd64089900265f4b4
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-21 05:16:36 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-21 05:16:36 +0900

    [DOC] Escape all usages of GC

    RDoc was making every usage of the word "GC" link to the page for GC
    (which is the same page).

commit 63fe03aa4e9bba62dec83e5b7927c47b9599eeff
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-21 05:09:14 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-21 05:09:14 +0900

    [DOC] Fix call-seq for GC methods

    RDoc parses the last arrow in the call-seq as the arrow for the return
    type. It was getting confused over the arrow in the hash.

commit 790b3f7bbde1e1c9594c12e8d8ed8ae9718148f7
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-21 05:07:11 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-21 05:07:11 +0900

    [DOC] Fix formatting for GC#latest_gc_info

commit ae53986834d5220b779ed01bfa7e3f15a3f9b58f
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-21 05:06:06 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-21 05:06:06 +0900

    [DOC] Fix formatting for GC#latest_compact_info

commit 0efa36ac06a14a3e2e0aca395fee6530c790bdf1
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-12-21 02:21:43 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-12-21 03:32:23 +0900

    Ensure Fiber storage is only accessed from the Fiber it belongs to

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6972

commit d557f17974384dde4ff2da021a1b38905a39bda2
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-12-21 02:10:57 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-12-21 03:32:23 +0900

    Use an experimental warning for Fiber#storage=

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6972

commit 45175962a6fd74ab2e9ba92f1280f3987af25494
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-12-21 01:59:46 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-12-21 03:32:23 +0900

    Never use the storage of another Fiber, that violates the whole design

    * See https://bugs.ruby-lang.org/issues/19078#note-30

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6972

commit 88040063d0ec8aa64e0de2a3afae7286ec53bfdb
  Author:     Jean Boussier <byroot@ruby-lang.org>
  AuthorDate: 2022-12-20 17:25:05 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-12-21 03:17:57 +0900

    Array#pack: document silent truncation

    Ref: [Feature #19245]

    At the very least this behavior should be documented.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6969

commit b2bf5d237ba5f2d1ebaf12d164064ce8c5b3628f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-21 02:06:44 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-21 02:07:55 +0900

    [ruby/irb] Version 1.6.2

    https://github.com/ruby/irb/commit/a8ea9963c6

commit cf0b413ef8b794ef6e7436f22fd5a998050dada9
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-21 02:05:58 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-21 02:07:54 +0900

    [ruby/irb] Respect DLEXT to force-load debug.so
    (https://github.com/ruby/irb/pull/481)

    https://github.com/ruby/irb/commit/9d82778152

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

commit 80e56d1438724d37ca09f61e560f95c00599cdf3
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-20 23:06:29 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-21 01:32:51 +0900

    Fix thrashing of major GC when size pool is small

    If a size pooll is small, then `min_free_slots < heap_init_slots` is true.
    This means that min_free_slots will be set to heap_init_slots. This
    causes `swept_slots < min_free_slots` to be true in a later if statement.
    The if statement could trigger a major GC which could cause major GC
    thrashing.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6971

commit c72a748b277af14e807aa3c4815a0287a6dce41c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-20 13:33:57 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-21 00:50:32 +0900

    Win32: add dependency of revision.h

    When out-of-place build, and revision.h does not exist in the source
    directory, `VPATH` fallbacks to the current directory.

commit 25635bbcee64f052e9d66298c25ff3005583bc58
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-12-20 16:32:14 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-12-21 00:10:27 +0900

    Add links to Wasm port resources to NEWS.md

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6968

commit 950dc1698910e329fe224720123292e27c9d0981
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-17 19:04:55 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-17 19:04:55 +0900

    Move Coverage-related items to Stdlib section

commit c00f7cfb9b1dc7c79c7858c54205121aeb02bfcb
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-17 18:29:24 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-17 18:29:24 +0900

    Move Socket-related changes to stdlib section

commit 031bc21abba4c2e9ce38bb49c456478073e6672a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-19 22:43:51 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-20 17:40:19 +0900

    expand-config.rb: search revision.h to extract release date

commit 0ccc498e6e9f1f2884d72381d57c2f97cfa6e59a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-20 00:32:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-20 16:06:32 +0900

    loadpath.c does not depend on revision.h since 947ebd0ac5ba

commit 5c21cc39704f7e50b12f19c423e17ab275f74fbe
  Author:     Mike Dalessio <mike.dalessio@gmail.com>
  AuthorDate: 2022-12-19 06:59:03 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-12-20 15:57:22 +0900

    configure.ac: limit miniruby dep to when bundle_loader needs it

    See also e7bffe0

    https://bugs.ruby-lang.org/issues/19239

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6959

commit 20f9316f9dd5c77f96f1c08adb8da7e91d666f3b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-20 14:39:45 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 14:50:08 +0900

    [ruby/syntax_suggest] Bump version to 1.0.2

    https://github.com/ruby/syntax_suggest/commit/92ea00650a

commit 2e7e153a2af1456515d43b6381e38534b069b1c2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-19 14:10:58 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-20 14:12:38 +0900

    [Bug #19242] Prohibit circular causes to be loaded

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6960

commit 18ba89093a0b214cd89f1567c037c239f094496d
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-20 09:43:53 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    Merge RubyGems/Bundler master

      Pick from https://github.com/rubygems/rubygems/commit/ba3adad4d80038ffd7bea015da2f11d3e8a2ff82

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 870bcc96bab644656cd914b5061fcacc39db6557
  Author:     Mark Burns <markburns@users.noreply.github.com>
  AuthorDate: 2022-12-19 02:55:53 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] fix
    https://github.com/rubygems/rubygems/pull/6147 when --parseable and
    --groups used
    together

    https://github.com/rubygems/rubygems/commit/3b0b95c509

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 8eb66180137e3cba030d43fba21980efa5f58bb3
  Author:     Josef Šimánek <josef.simanek@gmail.com>
  AuthorDate: 2022-12-17 22:34:49 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Turn `--ext` option into string. Deprecate usage without explicit value.

    - this is preparation for onboarding Rust based extension gem generator

    https://github.com/rubygems/rubygems/commit/d32801bdbc

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit eaf0157dd1ad6cfbecedd9ff4158954418c1331c
  Author:     Josef Šimánek <josef.simanek@gmail.com>
  AuthorDate: 2022-12-17 22:35:32 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Regenerate bundler man pages for December 2022.

    https://github.com/rubygems/rubygems/commit/17037fe32c

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit f270aa3eda535f3eb3f77912cf4a7a80f240b89e
  Author:     Josef Šimánek <josef.simanek@gmail.com>
  AuthorDate: 2022-12-17 16:47:52 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Use safe Marshal deserialization for dependency API response. - adds Bundler#safe_load_marshal and Bundler::SAFE_MARSHAL_CLASSES listing safe classes to deserialize

    https://github.com/rubygems/rubygems/commit/e947c608cc

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit efd103f3e58fcf3aeb6c4a0d3dd9233448698231
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-17 09:54:46 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Fix crash when showing some resolution errors

    If the conflict explanation includes empty ranges and version unions,
    Pub Grub was crashing.

    https://github.com/rubygems/rubygems/commit/eb360b77a2

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 1db9bcfeaf27b8a8ced1ea5ad13f5c5774530a6b
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-17 09:20:14 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Fix crash when building resolution errors with OR requirements

    https://github.com/rubygems/rubygems/commit/8f287479bc

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 829348956476fc395f267b3f4a20ea67546551b2
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-17 08:53:45 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Slight tweak to error message building

    Let Pub Grub decide how the constraint should be displayed.

    https://github.com/rubygems/rubygems/commit/4f651b6429

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit beef72965e8d3e23bfc37a6da553d171357ec7f3
  Author:     Michael Siegfried <michaeldsiegfried@gmail.com>
  AuthorDate: 2022-12-17 02:20:55 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Clarify flag description

    Prerelease versions are already considered in a certain circumstance,
    and the 'if updating' is redundant in the update case anyway.

    https://github.com/rubygems/rubygems/commit/8d68635f8c

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 32e72b78b31a80d308f9762913399d179ed96914
  Author:     Michael Siegfried <michaeldsiegfried@gmail.com>
  AuthorDate: 2022-12-16 10:33:54 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Add tests for bundle lock

    Ensure `bundle lock` handles pre flag just like bundle update does.

    https://github.com/rubygems/rubygems/commit/b9e85e3157

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 42972bdd9259c93c007ecb48987f0b617a5f21e0
  Author:     Michael Siegfried <michaeldsiegfried@gmail.com>
  AuthorDate: 2022-11-17 11:00:26 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Test the public interface

    With `GemVersionPromoter#sort_versions` being so simple, we no longer
    need to reach into the class's internals to make private methods public
    in order to effectively test. We can just allow both cases to go through
    the main method.

    https://github.com/rubygems/rubygems/commit/6cbe891003

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit c436f52fe81b90e09376c9b75ac4cb4a4b090e32
  Author:     Michael Siegfried <michaeldsiegfried@gmail.com>
  AuthorDate: 2022-11-17 10:52:50 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Fix tiny typo

    https://github.com/rubygems/rubygems/commit/390e3e1ebd

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 2bc4f1dea5e663acba1d3c662390e8fc20bf6721
  Author:     Michael Siegfried <michael@procore.com>
  AuthorDate: 2022-01-05 07:54:17 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Support for pre flag in `bundle update`

    Passing this flag allows bumping to the current version, even if that
    version is prerelease. This works in concert with the current flags.

    https://github.com/rubygems/rubygems/commit/a6409e3509

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 1ee31f9d9dc8da4b0eb8ca39b79a6b270c6c2f2d
  Author:     Michael Siegfried <michaeldsiegfried@gmail.com>
  AuthorDate: 2022-11-17 09:19:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Clarify segment equality check

    https://github.com/rubygems/rubygems/commit/6624474c5a

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit e58d18bf23a4dff7f17c76e6a3c762896cc2d807
  Author:     Michael Siegfried <michaeldsiegfried@gmail.com>
  AuthorDate: 2022-11-17 09:18:34 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Return early outside of loop

    The conditions are not dependent on each spec and can be checked once at
    the beginning of the method.

    https://github.com/rubygems/rubygems/commit/086bc9433f

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit c67f6c4dafbc868c36b3e021331fe0b1fac680f5
  Author:     Michael Siegfried <michaeldsiegfried@gmail.com>
  AuthorDate: 2022-11-17 09:13:06 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Add question marks to interrogative methods

    https://github.com/rubygems/rubygems/commit/52da85e9ef

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 0a9544ce4ab86963dde0f3ad0b489b6a354cc8b3
  Author:     Eloy Espinaco <eloyesp@gmail.com>
  AuthorDate: 2022-11-30 11:40:02 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Cleanup intermediate artifacts after installing built extensions

    https://github.com/rubygems/rubygems/commit/98b6a959bd

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 9d10b8393e6692d076d79d3b80c6eefb40a65b44
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-16 21:37:28 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Use better name for variable

    The installed file not always have the `.so` extension.

    https://github.com/rubygems/rubygems/commit/6f6681bcb9

    Co-authored-by: Eloy Espinaco <eloyesp@gmail.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 012ef7d1d035f2c5cdb06bea777c22d72acc78c9
  Author:     Eloy Espinaco <eloyesp@gmail.com>
  AuthorDate: 2022-11-29 02:09:00 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Fix tests checking intermediate files

    Some tests check that the shared objects are actually installed, but
    checking an intermediate build file instead of the installed one.

    https://github.com/rubygems/rubygems/commit/ad526073b0

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 3fd33590f624ff74d91c1d505f85653902764384
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-15 20:14:40 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Fix crash when lockfile is missing dependencies

    We have a check for a corrupt lockfile right before installing. However,
    the check accounted for locked specs not satisfying locked dependencies,
    but not for locked specs missing for some locked dependencies.

    Instead of fixing this check, I decided to remove it in favor of
    automatically detecting the situation and re-resolve to automatically
    fix the lockfile rather than printing a warning but leave the problem
    there.

    https://github.com/rubygems/rubygems/commit/4a7a584252

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 16b36a5b0c71afdcd125c530ee6fb809d4306822
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-15 20:22:48 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Remove unused code

    https://github.com/rubygems/rubygems/commit/b88c43a28c

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit d1533f20f1c3f9b6f2324c62ab1460996cda174a
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-14 02:08:29 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Detect circular dependency errors

    https://github.com/rubygems/rubygems/commit/a8348d271d

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit 96aa1a1a9888720d73321013a5cb4de20381a974
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-14 00:30:59 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Remove dead logic

    https://github.com/rubygems/rubygems/commit/950615405e

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit d1c210355b0c27fa5846cd0fd0c55358a7d5a0e0
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-14 00:31:13 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-20 13:15:02 +0900

    [rubygems/rubygems] Extract a variable for consistency

    https://github.com/rubygems/rubygems/commit/3f4b1c7a01

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6966

commit fe3dedb21a945063724502e96c21ed3682c61c18
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-17 08:51:20 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-17 08:51:20 +0900

    Prevent a "method redefined" warning

commit 2013dd465811b6d01129f25af4fbe84002a2273f
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-17 08:40:36 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-17 08:40:36 +0900

    Prevent warning "assigned but unused variable - initial_shape"

commit e7915d6d7042c7945195289d882aa91e35dc9404
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-20 01:44:00 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-20 07:09:08 +0900

    Fix misfire of compaction read barrier

    gc_compact_move incorrectly returns false when destination heap is full
    after sweeping. It returns false even if destination heap is different
    than source heap (returning false means that the source heap has
    finished compacting). This causes the source page to get locked, which
    causes a read barrier fire when we try to compact the source heap again.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6963

commit 650a20a3e1205f47224a987676cdbad7d826d597
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-20 06:59:23 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-20 06:59:36 +0900

    Re-enable test_ractor for YJIT

    This would be still flaky, but we want to make sure there's no
    YJIT-specific issue when Ruby 3.2 is released. We might skip it again
    after the release.

commit 8275cad1e1646a2b301962313dc3e8ff1deb87b3
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-20 01:21:16 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-20 03:13:26 +0900

    Fix buffer overrun when re-embedding objects

    We eagerly set the new shape of an object when moving an object during
    compaction. This new shape may have a different capacity than the
    current original shape capacity. This means that we cannot copy from the
    original buffer using size of the new capacity. Instead, we should use
    the ivar count (which is less than or equal to both the new and original
    capacities).

    Co-Authored-By: Matt Valentine-House <matt@eightbitraptor.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6962

commit b2f53dccbedd9f399bc4668eb02f26b2eafa6f5c
  Author:     Mau Magnaguagno <maumagnaguagno@gmail.com>
  AuthorDate: 2022-12-20 00:44:23 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-20 00:44:23 +0900

    YJIT: skip map in print_sorted_exit_counts (#6954)

    Array#sum accepts a block.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 1482f0649e303c8bf11281268d3e1e6e2370c093
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-20 00:26:21 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-20 00:26:21 +0900

    YJIT: Improve the description about --enable-yjit (#6947)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit bcdc9cf1590caeda83c4e8f90f27a4a80b152e08
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-20 00:19:56 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-20 00:19:56 +0900

    YJIT: Make --yjit-stats always visible on --help (#6946)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 1148636e3dfb3aa25485b6e5cf40c043df848c07
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-19 17:29:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-19 17:49:59 +0900

    [ruby/irb] PTY module is platform dependent

    https://github.com/ruby/irb/commit/dbb3dc72ff

commit 9761422f47f6c06b8aa332b7c941a5874319508a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-19 15:55:04 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-19 15:55:13 +0900

    Added news entries for Bundler

commit 1142bc875bc00d492046ecbf781f076a78e4b8c5
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-19 14:59:10 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-19 14:59:59 +0900

    [ruby/did_you_mean] Bump version to 1.6.3

    https://github.com/ruby/did_you_mean/commit/f7703add76

commit 2605ff79aa84a635d135c5892339483e337bbd03
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-19 14:47:37 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-19 14:48:18 +0900

    tool/update-NEWS-refs.rb: Accept non-redmine url links

commit 9a48459393d27229759ea484ad5244b71fc4e614
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-19 14:20:08 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-19 14:22:18 +0900

    Added notable changes for the default gems

commit c41a7012ca79ad9bcf6f4c7b422caac82c99fb98
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-19 13:27:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-19 14:09:30 +0900

    Use pthread API if the target platform doesn't support TLS attribute

commit 4de514da383ef70d784e2ddded42e74375880996
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-19 14:04:10 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-19 14:04:10 +0900

    Revert "Mentioned https://github.com/ruby/ruby/pull/6086 to NEWS"

    This reverts commit 6229c02d6b895eda8c73efa8a41c73692d133a65.

    Nothing has been changed in RubyVM.stat on normal Ruby build. It seems
    confusing to say that something has been changed there. The flag is
    supposed to be enabled only by CRuby developers, and it's not efficient
    enough for public consumption.

commit d64e10228da1cabf07c3d5f6289e219a12d4cd86
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-19 13:14:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-19 13:14:46 +0900

    Fix guess_diff type

    `unsigned_time_t` has the same size as `time_t`, but it doesn't mean
    these types are same except for signedness.  For instance, while
    `long` and `long long` has the same size and `time_t` is defined as
    the latter on 64bit OpenBSD, `unsigned_time_t` has been defined as
    `long`.

commit df4820e749fbada28b622ccd36c3a1d542231705
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-19 12:10:02 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-19 12:10:02 +0900

    Added some changes that are only exists on GitHub to NEWS

commit 40ec3762d233de12a04bd6321fc32ef1affd7852
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-19 11:45:23 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-19 11:45:23 +0900

    Mentioned https://github.com/ruby/date/pull/80

commit 289d99cc62985e9a8834e80a1da424c1bdbb4502
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-19 11:43:56 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-19 11:43:56 +0900

    Merge Time class sections on NEWS

commit 6229c02d6b895eda8c73efa8a41c73692d133a65
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-19 11:38:23 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-19 11:38:25 +0900

    Mentioned https://github.com/ruby/ruby/pull/6086 to NEWS

commit 63a9b72c171219db9310ee613a69d5bcc5926220
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-19 11:34:17 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-19 11:34:17 +0900

    Removed empty section

commit 08d21b4bd2000596160d62f28b840b53e26d738d
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-19 10:39:05 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-19 10:50:21 +0900

    [ruby/net-http] Bump version to 0.3.2

    https://github.com/ruby/net-http/commit/b8bdb7248e

commit 1998d979085bdcd2db25db76709dc49c3cd7fffb
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-19 10:48:51 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-19 10:50:21 +0900

    [ruby/date] Bump version to 3.3.3

    https://github.com/ruby/date/commit/ea3644a7c4

commit 6073782627b8a4976cab232daab2350e36c21cdd
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-12-19 09:45:50 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-19 09:45:50 +0900

    Disable SEH workaround on __MINGW64__ only. (#6957)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit d4315284e9382caf264e66ecf890f5a45d85c5e3
  Author:     Alyssa Ross <hi@alyssa.is>
  AuthorDate: 2019-01-21 21:10:53 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-19 04:17:42 +0900

    [rubygems/rubygems] Add bundle lock --update --bundler

    bundle lock --update can do everything that bundle update can do, but
    it doesn't actually install gems. This is especially useful for
    generating a lockfile on a machine that doesn't have the libraries
    available to be able to build native extensions.

    But, there was no parallel for bundle update --bundler. So let's add
    one.

    https://github.com/rubygems/rubygems/commit/7fc00bd2a5

commit ede7c035d58a3384b684051647aa56f258ecc286
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-12-18 08:09:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-19 00:37:45 +0900

    [ruby/net-http] Adding links to references

    https://github.com/ruby/net-http/commit/6dfe6f411a

commit e7bffe0c4b8bebabc89e7440efffa43ee3e1123e
  Author:     Mike Dalessio <mike.dalessio@gmail.com>
  AuthorDate: 2022-12-18 03:43:24 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-12-18 12:56:53 +0900

    configure.ac: add miniruby to PREP when cross-compiling to darwin

    miniruby is used to resolve symbols in ext bundles

    https://bugs.ruby-lang.org/issues/19239

    Co-authored-by: Yuta Saito <kateinoigakukun@gmail.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6944

commit b8cc0992c681de30d48e9c9bdb59721604c194b5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-18 11:38:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-18 11:58:51 +0900

    [ruby/date] Extract `head_match_p` and abbreviated name length constants

    https://github.com/ruby/date/commit/3f666fa882

commit df49bf8150ee0a6ea2a06b0d2288863b2032c932
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-30 01:11:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-18 11:58:50 +0900

    [ruby/date] Consider the length of string to parse

    https://github.com/ruby/date/commit/3bfed83ce7

commit 49dc424ff304149a847880f7c6c19179668f94de
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-30 01:10:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-18 11:58:49 +0900

    [ruby/date] Remove `extz_pats` table

    https://github.com/ruby/date/commit/945e26e243

commit 70c905963e71667c1c8b131f290f1d5436d104e0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-30 01:09:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-18 11:58:48 +0900

    [ruby/date] Remove `merid_names` table

    https://github.com/ruby/date/commit/7fe2bd5f94

commit 6efeaabef05253cfce64f2d7c94be57cd7d4acd5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-30 00:43:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-18 11:58:47 +0900

    [ruby/date] Match abbreviated day and month names with head of full names

    https://github.com/ruby/date/commit/a45f8f03c9

commit ea3d3c455294b2ad94c93cbe0e61921d71f1d9d3
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-12-17 10:00:13 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-12-18 07:51:49 +0900

    Use FL_TEST_RAW in rb_hash_default_value

    We should always have a T_HASH here, so we can use FL_TEST_RAW to avoid
    checking whether we may have an immediate value.

    I expect this to be a very small performance improvement (perf stat
    ./miniruby benchmark/hash_aref_miss.rb shows a ~1% improvement). It also
    removes 9 instructions from rb_hash_default_value on x86_64.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6945

commit fbaa5db44a3b0622e2755fd00e0519a603aa9bcb
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-12-16 03:46:24 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-12-18 07:51:49 +0900

    Use a BOP for Hash#default

    On a hash miss we need to call default if it is redefined in order to
    return the default value to be used. Previously we checked this with
    rb_method_basic_definition_p, which avoids the method call but requires
    a method lookup.

    This commit replaces the previous check with BASIC_OP_UNREDEFINED_P and
    a new BOP_DEFAULT. We still need to fall back to
    rb_method_basic_definition_p when called on a subclasss of hash.

        |                |compare-ruby|built-ruby|
        |:---------------|-----------:|---------:|
        |hash_aref_miss  |       2.692|     3.531|
        |                |           -|     1.31x|

    Co-authored-by: Daniel Colson <danieljamescolson@gmail.com>
    Co-authored-by: "Ian C. Anderson" <ian@iancanderson.com>
    Co-authored-by: Jack McCracken <me@jackmc.xyz>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6945

commit 632beec01f6a293aa03da06f5f0e6f9a7c22a8c5
  Author:     Mau Magnaguagno <maumagnaguagno@gmail.com>
  AuthorDate: 2022-12-18 06:06:50 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-18 06:06:50 +0900

    MJIT: Refactor BitField dereference byte and bitmask (#6955)

    Prefer Array#unpack1 and Enumerable#sum.
    I think the bitmask formula ``2 ** @width - 1`` would be clearer, but not faster for such small integers.

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 6e3bc6710324aeb75299c9edce305b6f7c22321c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-17 23:18:54 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-17 23:18:54 +0900

    Hard crash when allocating in GC when RUBY_DEBUG

    Not all builds have RGENGC_CHECK_MODE set, so it should also crash when
    RUBY_DEBUG is set.

commit 965f4259db5ad59045f778d4129f65e381aab004
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-17 23:13:46 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-17 23:16:26 +0900

    Move check for GC to xmalloc and xcalloc

    Moves the check earlier to before we actually perform the allocation.

commit 9da5a7e79dcaed9bf233f6a9a5df54c727f60c77
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-12-17 16:43:21 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-17 16:43:21 +0900

    Add tests for `Queue#pop` with fiber scheduler. (#6953)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 297df9240772a14141988aef63400e3988584ced
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-12-16 06:38:53 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-17 03:27:45 +0900

    Clean up Ruby Shape API

    Make printing shapes better, use a struct instead of specific methods
    for each field on a shape.

    Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6942

commit 2ccf6e539458ef5c9f7a2d68163089d1d38e47f7
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-16 23:06:26 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-17 00:01:53 +0900

    Don't allow allocating memory during GC

    Allocating memory (xmalloc and xrealloc) during GC could cause GC to
    trigger, which would crash with `[BUG] during_gc != 0`. This is an
    intermittent bug which could be hard to debug.

    This commit changes it so that any memory allocation during GC will
    emit a warning. When debug flags are enabled it will also cause a crash.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6921

commit 3d2eb7c9a6d473411bf2f08dcf9bbdbb59ea93cb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-18 13:47:10 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-16 22:52:59 +0900

    [Feature #18033] [DOC] Add NEWS

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4825

commit 3e49d62bc1696a7943e4407328714e32b539b007
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-18 14:18:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-16 22:52:59 +0900

    [Feature #18033] Parse more strictly conformant with ISO-8601

    * 4-digits or more is required as year
    * Minutes and seconds parts are not ommittable

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4825

commit 635fc5f7fc88a2344118e7a156ff1b2644d0de0c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-18 14:17:10 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-16 22:52:59 +0900

    [Feature #18033] Make more conformant with C standard

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4825

commit 9515179d74f2d9934c1b2c69879d72254d940f85
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-10-23 23:32:25 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-16 22:52:59 +0900

    [Feature #18033] Add `precision:` option

    Which limits the precision of subsecond. Defaulted to 9, that
    means nanosecond.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4825

commit 67c589afa05b1a894ed07969bec16647eff4e593
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-09-19 14:06:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-16 22:52:59 +0900

    [Feature #18033] More strict checks

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4825

commit 0a2f300a8a21e013e5debb639adba77fb18b5f40
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-16 11:55:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-16 22:52:59 +0900

    [Feature #18033] Name a magic number

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4825

commit 8c272f44816f098c1e057c72a47451efc8cd1739
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-09-05 00:24:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-16 22:52:59 +0900

    [Feature #18033] Make Time.new parse time strings

    `Time.new` now parses strings such as the result of `Time#inspect`
    and restricted ISO-8601 formats.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4825

commit ee7a338d2b21a84d194015c3680bd2a95c0dd23f
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-16 04:04:41 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-12-16 20:15:50 +0900

    Unconditionally warn "unknown pack/unpack directive"

    [Bug #19150]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6948

commit b9ea83fc1c95dba0f5548e6bd1b2fa40c6e65e2d
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-16 02:20:59 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-16 02:21:50 +0900

    Update NEWS.md

    Regexp optimization and Wasm support are added.

commit f2690be746ae0c79d7f1d9eb431eb7cf25761d95
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-16 15:47:49 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-16 15:48:00 +0900

    Removed temporary workaround for syntax_suggest tags

commit 11f3bef260258c4c8a05ea35ab3bf8a4998e1ff0
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-16 15:35:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-16 15:36:03 +0900

    [ruby/date] Bump version to 3.3.2

    https://github.com/ruby/date/commit/7afd9d4615

commit 2cd22f9abd2e759a94452b54408a682fce78bdb9
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-16 15:34:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-16 15:34:47 +0900

    [ruby/logger] Bump version to 1.5.3

    https://github.com/ruby/logger/commit/4e8d9e27fd

commit 5e5f3f6bd1ca980685849ca9fc79ef685e1cd252
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-16 13:59:04 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-16 13:59:04 +0900

    Followed up ad18d1297ed82aa9c38375532b0b709131cf1ae7 with tool/update-deps --fix

commit ad18d1297ed82aa9c38375532b0b709131cf1ae7
  Author:     Akinori MUSHA <knu@idaemons.org>
  AuthorDate: 2022-12-16 13:32:13 +0900
  Commit:     Akinori MUSHA <knu@idaemons.org>
  CommitDate: 2022-12-16 13:32:13 +0900

    Reject keyword arguments given to Enumerator::Product.new

    The use of keyword arguments should be reserved for future extension.

commit d95ee114621c3cd34b4a34233888bbe0780f1c28
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-16 12:44:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-16 12:45:11 +0900

    [ruby/io-console] Bump version to 0.6.0

    https://github.com/ruby/io-console/commit/441528e3eb

commit 7e26ff7dc008ce14e34b43b8ee04a7aa09cd5886
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-16 11:34:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-16 11:36:21 +0900

    [ruby/io-wait] Bump version to 0.3.0

    https://github.com/ruby/io-wait/commit/940ba319d3

commit dbf77d420d49e541c59f4c14b8e56d3e7af689aa
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-12-16 11:12:37 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-12-16 11:12:37 +0900

    surpress warning

    now `enc_table->list` is not a pointer.

commit d6624db92608f65b5ba91de8a927916f7b096c5b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-15 13:55:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-16 10:10:46 +0900

    [ruby/irb] Prefer to use File.open instead of Kernel.open

    https://github.com/ruby/irb/commit/ed9e435a6b

commit ae19ac5b5ba1e613a788addeb6d4d67fa65f6518
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-12-15 17:53:55 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-12-16 10:04:37 +0900

    fixed encoding table

    This reduces global lock acquiring for reading.
    https://bugs.ruby-lang.org/issues/18949

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6935

commit 15b60bb1a48b98e2ba267c88551803df5f88355e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-16 09:13:32 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-16 09:13:35 +0900

    Mentioned https://bugs.ruby-lang.org/issues/17767 on NEWS.md

commit 14158f1f8c50069f076f99e08405c5006ca65df9
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-16 08:10:28 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-16 08:10:28 +0900

    YJIT: Fix `obj.send(:call)`

    All the method call types need to handle argument shifting in case they're
    called by `.send`, and we weren't handling that in `OPTIMIZED_METHOD_TYPE_CALL`.

    Lack of shifting caused the stack size assertion in gen_leave() to fail.

    Discovered by Rails CI: https://buildkite.com/rails/rails/builds/91705#018516c4-f8f8-469e-bc2d-ddeb25ca8317/1920-2067
    Diagnosed with help from `@eileencodes` and `@k0kubun`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6943

    Merged-By: XrXr

commit e9ba3042e13313944fd2695731d0d7498532b80f
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-12-16 03:42:24 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-12-16 06:41:47 +0900

    Indicate if a shape is too_complex in ObjectSpace#dump

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6939

commit c505448cdbd4cd1a52ed7108095f6738d29b3419
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-16 03:54:07 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-16 06:33:46 +0900

    Move definition of SIZE_POOL_COUNT back to gc.h

    SIZE_POOL_COUNT is a GC macro, it should belong in gc.h and not shape.h.
    SIZE_POOL_COUNT doesn't depend on shape.h so we can have shape.h depend
    on gc.h.

    Co-Authored-By: Matt Valentine-House <matt@eightbitraptor.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6940

commit d5eafaed812bc683d5069154c5c9391ba98ea151
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-12-16 00:11:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-16 06:33:19 +0900

    [ruby/net-http] Enhanced RDoc for Net::HTTP

    https://github.com/ruby/net-http/commit/da626e4e42

commit 5e81cf8fd009d1aa74b49dce8ba174cd65776d15
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-16 04:20:32 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-16 05:27:38 +0900

    Refactor to only attempt to move movable objects

    Moves check for gc_is_moveable_obj from try_move to gc_compact_plane.

    Co-Authored-By: Matt Valentine-House <matt@eightbitraptor.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6938

commit bfc66e07b7e0134dfa2041c311dc56941fe1caf0
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-12-14 00:11:57 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-16 05:27:38 +0900

    Fix Object Movement allocation in GC

    When moving Objects between size pools we have to assign a new shape.

    This happened during updating references - we tried to create a new shape
    tree that mirrored the existing tree, but based on the root shape of the
    new size pool.

    This causes allocations to happen if the new tree doesn't already exist,
    potentially triggering a GC, during GC.

    This commit changes object movement to look for a pre-existing new tree
    during object movement, and if that tree does not exist, we don't move
    the object to the new pool.

    This allows us to remove the shape allocation from update references.

    Co-Authored-By: Peter Zhu <peter@peterzhu.ca>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6938

commit 5fa608ed79645464bf80fa318d89745159301471
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-16 05:10:14 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-16 05:10:14 +0900

    YJIT: Fix code GC freeing stubs with a trampoline (#6937)

    Stubs we generate for invalidation don't necessarily co-locate with the
    code that jump to the stub. Since we rely on co-location to keep stubs
    alive as they are in the outlined code block, it used to be possible for
    code GC inside branch_stub_hit() to free the stub that's its direct
    caller, leading us to return to freed code after.

    Stubs used to look like:

    ```
    mov arg0, branch_ptr
    mov arg1, target_idx
    mov arg2, ec
    call branch_stub_hit
    jmp return_reg
    ```

    Since the call and the jump after the call is the same for all stubs, we
    can extract them and use a static trampoline for them. That makes
    branch_stub_hit() always return to static code. Stubs now look like:

    ```
    mov arg0, branch_ptr
    mov arg1, target_idx
    jmp trampoline
    ```

    Where the trampoline is:

    ```
    mov arg2, ec
    call branch_stub_hit
    jmp return_reg
    ```

    Code GC can now free stubs without problems since we'll always return
    to the trampoline, which we generate once on boot and lives forever.

    This might save a small bit of memory due to factoring out the static
    part of stubs, but it's probably minor.

    [Bug #19234]

    Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit c0b14e128ff2114e9fc226a5bce117f7fb1d4a19
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-12-16 04:45:38 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-12-16 04:46:55 +0900

    Update NEWS.md to include shapes and gc bitmap marking

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6941

commit 8b0e44214c91ceddf6e7189348bad07e8983fca7
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-16 03:45:40 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-16 03:45:41 +0900

    Fix missing variables

    It was a bad copy-paste.

commit e25beac145dd3b3943dcf270a2f0d7c7f8c12e60
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-16 03:40:32 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-16 03:43:21 +0900

    Enable Slack notifications on more Actions

    auto_request_review, codeql-analysis, scorecards don't have it either,
    but those are intentional.

commit ef008d8946d004dc273a033ab399b0df6c71e4f3
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-16 03:07:50 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-16 03:08:11 +0900

    Partially revert "Update bundled_gems"

    This reverts the net-imap upgrade of commit e3ed6c07832edf2a95bae3bdd908cc3f5b65eebe.
    net-imap tests of test-bundled-gems seem to be broken
    https://github.com/ruby/ruby/actions/runs/3704473689/jobs/6277145052.

commit c1ab6ddc9a6fa228caa5d26b118b54855051279c
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-12-09 07:16:52 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-12-16 03:06:04 +0900

    Transition complex objects to "too complex" shape

    When an object becomes "too complex" (in other words it has too many
    variations in the shape tree), we transition it to use a "too complex"
    shape and use a hash for storing instance variables.

    Without this patch, there were rare cases where shape tree growth could
    "explode" and cause performance degradation on what would otherwise have
    been cached fast paths.

    This patch puts a limit on shape tree growth, and gracefully degrades in
    the rare case where there could be a factorial growth in the shape tree.

    For example:

    ```ruby
    class NG; end

    HUGE_NUMBER.times do
      NG.new.instance_variable_set(:"@unique_ivar_#{_1}", 1)
    end
    ```

    We consider objects to be "too complex" when the object's class has more
    than SHAPE_MAX_VARIATIONS (currently 8) leaf nodes in the shape tree and
    the object introduces a new variation (a new leaf node) associated with
    that class.

    For example, new variations on instances of the following class would be
    considered "too complex" because those instances create more than 8
    leaves in the shape tree:

    ```ruby
    class Foo; end
    9.times { Foo.new.instance_variable_set(":@uniq_#{_1}", 1) }
    ```

    However, the following class is *not* too complex because it only has
    one leaf in the shape tree:

    ```ruby
    class Foo
      def initialize
        @a = @b = @c = @d = @e = @f = @g = @h = @i = nil
      end
    end
    9.times { Foo.new }
    ``

    This case is rare, so we don't expect this change to impact performance
    of most applications, but it needs to be handled.

    Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6931

commit a3d552aedd190b0f21a4f6479f0ef1d2ce90189b
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-12-09 06:48:48 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-12-16 03:06:04 +0900

    Add variation_count on classes

    Count how many "variations" each class creates. A "variation" is a a
    unique ordering of instance variables on a particular class. This can
    also be thought of as a branch in the shape tree.

    For example, the following Foo class will have 2 variations:

    ```ruby
    class Foo ; end

    Foo.new.instance_variable_set(:@a, 1) # case 1: creates one variation
    Foo.new.instance_variable_set(:@b, 1) # case 2: creates another variation

    foo = Foo.new
    foo.instance_variable_set(:@a, 1) # does not create a new variation
    foo.instance_variable_set(:@b, 1) # does not create a new variation (a continuation of the variation in case 1)
    ```

    We will use this number to limit the amount of shapes that a class can
    create and fallback to using a hash iv lookup.

    Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6931

commit f50aa19da63067c4b0de5964b6632df20202e71c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-16 02:00:30 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-16 02:00:30 +0900

    Revert "Fix Object Movement allocation in GC"

    This reverts commit 9c54466e299aa91af225bc2d92a3d7755730948f.

    We're seeing crashes in Shopify CI after this commit.

commit 9c54466e299aa91af225bc2d92a3d7755730948f
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-12-14 00:11:57 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-15 23:04:30 +0900

    Fix Object Movement allocation in GC

    When moving Objects between size pools we have to assign a new shape.

    This happened during updating references - we tried to create a new shape
    tree that mirrored the existing tree, but based on the root shape of the
    new size pool.

    This causes allocations to happen if the new tree doesn't already exist,
    potentially triggering a GC, during GC.

    This commit changes object movement to look for a pre-existing new tree
    during object movement, and if that tree does not exist, we don't move
    the object to the new pool.

    This allows us to remove the shape allocation from update references.

    Co-Authored-By: Peter Zhu <peter@peterzhu.ca>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6926

commit e3ed6c07832edf2a95bae3bdd908cc3f5b65eebe
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-12-15 22:18:52 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-12-15 22:18:52 +0900

    Update bundled_gems

commit 49b0f3b024855efad66a386595eabd103058826d
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-15 18:00:04 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-15 19:06:40 +0900

    Merge RubyGems/Bundler master

      Pick from https://github.com/rubygems/rubygems/commit/084f7d1f21f6fc3e2bb685b7bda3653fb2891c6e

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6936

commit 2581de112c1957dc4b5852e54337551dc8972c99
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-12-15 15:12:33 +0900
  Commit:     Shugo Maeda <shugo.maeda@gmail.com>
  CommitDate: 2022-12-15 18:56:24 +0900

    Disallow mixed usage of ... and */**

    [Feature #19134]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6934

commit 613fca01486e47dee9364a2fd86b5f5e77fe23c8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-07 22:14:44 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-15 11:00:42 +0900

    [Bug #19189] Fallback to the default "pkg-config"

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6927

commit d20bd06a97555a4493458d866590107da6cb21f4
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-12-15 07:37:01 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-15 07:37:01 +0900

    Remove `require 'io/wait'` where it's no longer necessary. (#6932)

    * Remove `require 'io/wait'` as it's part of core now.

    * Update ruby specs using version gates.

    * Add note about why it's conditional.

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 55f56eb66e9045943c4b61876b67bcd971666788
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-12-15 07:13:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-15 07:13:28 +0900

    [ruby/net-http] [DOC] New doc for responses classes
    (https://github.com/ruby/net-http/pull/91)

    https://github.com/ruby/net-http/commit/d394404402

commit d2b87456f0e0046630dea9dd7fae4ec6324e9e92
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-12-15 06:34:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-15 06:34:12 +0900

    [ruby/net-http] [DOC] Correct formatting in header.rb
    (https://github.com/ruby/net-http/pull/90)

    https://github.com/ruby/net-http/commit/d9d829ca53

commit 693c01d50917071433ff1bc7c4d8ce626a12c48e
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-15 05:12:44 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-12-15 06:17:46 +0900

    YJIT: Remove duplicate call to jit_prepare_routine_call()

    It's idempotent.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6930

commit 7a63114f8eaba7a1fe8a56a2e665703d9f9cfa8a
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-15 00:57:44 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-15 03:21:46 +0900

    Remove dead code in get_next_shape_internal

    If the rb_id_table_lookup fails, then res is not updated so it cannot be
    any value other than null.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6928

commit 71dd8b3caa6462e5c3dfd7059314459b51ebebc0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-15 00:27:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-15 00:27:47 +0900

    socket.rb - simplify check for the method

commit 9eb19a02aea2f867972d2c28cab25e5df162091f
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2022-12-15 00:14:00 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2022-12-15 00:14:00 +0900

    Add more comments why CRuby uses __pioinfo

commit 1df6d0e57828de9606613db940e32aa5b15eff18
  Author:     Jean Boussier <byroot@ruby-lang.org>
  AuthorDate: 2022-12-14 23:19:56 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-12-14 23:53:41 +0900

    objspace_dump.c: don't dump class of T_IMEMO

    They don't actually have a class.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6925

commit 3e5f8b2af305daee719dedf0162be1652e336447
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-12-14 22:54:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 22:55:06 +0900

    [ruby/net-http] [DOC] Enhanced RDoc for Net::HTTP
    (https://github.com/ruby/net-http/pull/89)

    https://github.com/ruby/net-http/commit/86b84eb307

commit 3e104b4419caecb9cd328f36169d993fe86d983c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-12 13:33:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 19:11:07 +0900

    [rubygems/rubygems] Clean up Indexer build files in tests

    https://github.com/rubygems/rubygems/commit/5479d99a1d

commit 1a8d460534c7423091b790530bb3ead4840820c4
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 17:47:44 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 17:48:38 +0900

    [ruby/securerandom] Bump version to 0.2.2

    https://github.com/ruby/securerandom/commit/9e16b597f5

commit 95d7b5e2e933cf74cc29782ce33b6503e874890d
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 16:36:42 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-14 17:42:15 +0900

    [ruby/resolv-replace] Bump version to 0.1.1

    https://github.com/ruby/resolv-replace/commit/187e91d149

commit bec7deba306572a130e971b53a82270a7b1255c6
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 16:44:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 16:56:09 +0900

    [ruby/date] Fixed wrong minimum version of Ruby

      Fixed https://github.com/ruby/date/issues/83

    https://github.com/ruby/date/commit/9731a3e732

commit 15f5842a5fe57fdc9af28494609cbd2c9901d40f
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 16:51:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 16:53:51 +0900

    [ruby/English] Bump version to 0.7.2

    https://github.com/ruby/English/commit/736f819b3b

commit 0b67e435ed07a2febf7c7bd4911257a8f4836779
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 16:38:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 16:38:37 +0900

    [ruby/abbrev] Bump version to 0.1.1

    https://github.com/ruby/abbrev/commit/8c3debac5a

commit c6f41a3255e55d6a30bc8ef557bfba1c87a7a868
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 15:14:23 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-14 16:07:44 +0900

    [ruby/time] Bump version to 0.2.1

    https://github.com/ruby/time/commit/4cebf6de3c

commit 989d993f5b03fbbf712554abe7f93bbeaad6298c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 15:59:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 16:01:19 +0900

    [ruby/reline] Bump version to 0.3.2

    https://github.com/ruby/reline/commit/3fbb7ec2ae

commit 20c34f10d799c6b10a657a266db3aa6c51c850d3
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 15:44:48 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-14 15:46:19 +0900

    Use versioning sort for released version detection

commit 307d2e0e91632a61cc492653a47027fbce7332d4
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-14 15:40:13 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-14 15:40:13 +0900

    Skip yet another flaky Ractor test

commit 65dfe2eea80bef95c1bebc990780314f8118ec0d
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-14 15:25:47 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-14 15:26:24 +0900

    Suppress the output of `if [ 'xyes' = xyes ];` code

    itself

commit 9e4d7e99ce5686760ef2eab0d8b4f933c1c665dc
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 15:17:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 15:18:10 +0900

    [ruby/syslog] Bump version to 0.1.1

    https://github.com/ruby/syslog/commit/a92b55b638

commit e2f4b8bf77ac29b2b94fc01d6d2d6365d5ff4345
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 15:16:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 15:16:29 +0900

    [ruby/weakref] Bump version to 0.1.2

    https://github.com/ruby/weakref/commit/5b5f79d8a6

commit abf9a321823184f73a5aaf3c8e25291e75f94a84
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-14 15:06:02 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-14 15:07:42 +0900

    Match ABI versions precisely

    "3.2.0+33" starts with "3.2.0+3", but it doesn't mean that they are the
    same ABI version.

commit 2d5b723b2f69dda8c7cf0de69c25e16a1818b88c
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-12-14 14:59:21 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-14 14:59:21 +0900

    Fix build when enable_shared is on (#6924)

    Before this change, if enable_shared was true, the directory would have a suffix of -static and be deleted on each make install. This would cause a second make install to fail.

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 87d32376d96d2c73083ac149df788edc16543c05
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 14:53:44 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 14:54:06 +0900

    [ruby/readline-ext] Bump version to 0.1.5

    https://github.com/ruby/readline-ext/commit/7af996f24b

commit 0c27c1b3fca72e638a9d91705234e7c4b2e236d4
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 14:37:25 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 14:49:14 +0900

    [ruby/open3] Bump version to 0.1.2

    https://github.com/ruby/open3/commit/38904e204d

commit 067747bb9a959808c47b32393170ca09e0214df4
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 14:33:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 14:35:48 +0900

    [ruby/tempfile] Bump version to 0.1.3

    https://github.com/ruby/tempfile/commit/99dc1f7058

commit 03927b565b9b6c8578c6a1c6f8e17e72ef82a05e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-14 12:57:04 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-14 12:57:30 +0900

    Pin syntax_suggest-1.0.1 manually because it mixed dead_end tags

commit fbedadb61f49ba3aaf4f07939b4fc7d0b8f8ac03
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-12-14 12:57:14 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-14 12:57:14 +0900

    Add `Regexp.linear_time?` (#6901)

  Notes:
    Merged-By: makenowjust <make.just.on@gmail.com>

commit fe3cbc61c805a860da3d41253879708ec86b6aa2
  Author:     HASUMI Hitoshi <hasumikin@gmail.com>
  AuthorDate: 2022-12-14 09:00:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 09:00:39 +0900

    [ruby/reline] Fix a misparameter of RubyLex#set_input in
    termination_checker.rb
    (https://github.com/ruby/reline/pull/482)

    * Fix a misparameter of RubyLex#set_input in termination_checker.rb

    The keyword parameter `:context` of RubyLex#set_input became mandatory due to this commit:
    https://github.com/ruby/irb/pull/427/files#diff-612b926e42ed78aed1a889ac1944f7d22229b3a489cc08f837a7f75eca3d3399R51

    Without my patch, tests that specify "--auto-indent" option in test_yamatanooroti fall into an infinite loop.

    This would need more explanation:
    - The infinite loop happens in Yamatanooroti::VTermTestCaseModule#sync
      see: https://github.com/aycabta/yamatanooroti/blob/v0.0.9/lib/yamatanooroti/vterm.rb#L60-L63
    - `@pty_output.read_nonblock(1024)` actually returned an exception
    - However, this method doesn't anticipate such a situation
    - As a result, `startup_message` couldn't be resolved for good and the
      infinite loop happens
    - I think we would eventually have to fix yamatanooroti, though the
      inconsistency of the kwarg of "set_input" has to be fixed anyway

    The actual exception message that is raised but ignored silently in Yamatanooroti::VTermTestCaseModule#sync:

    ```
    /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/bundler/gems/irb-d30c0c994351/lib/irb/ruby-lex.rb:51:in `set_input': missing keyword: :context (ArgumentError)
            from /home/hasumi/work/ruby/reline/test/reline/yamatanooroti/termination_checker.rb:23:in `initialize'
            from /home/hasumi/work/ruby/reline/test/reline/yamatanooroti/multiline_repl:43:in `new'
            from /home/hasumi/work/ruby/reline/test/reline/yamatanooroti/multiline_repl:43:in `block in <main>'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/3.1.0/optparse.rb:1576:in `block in parse_in_order'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/3.1.0/optparse.rb:1559:in `catch'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/3.1.0/optparse.rb:1559:in `parse_in_order'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/3.1.0/optparse.rb:1553:in `order!'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/3.1.0/optparse.rb:1659:in `permute!'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/3.1.0/optparse.rb:1684:in `parse!'
            from /home/hasumi/work/ruby/reline/test/reline/yamatanooroti/multiline_repl:174:in `<main>'
    ```

    Backtrace of an inifinite loop:

    ```
    /home/hasumi/work/ruby/yamatanooroti/lib/yamatanooroti/vterm.rb:59:in `sleep': Interrupt
            from /home/hasumi/work/ruby/yamatanooroti/lib/yamatanooroti/vterm.rb:59:in `block in sync'
            from /home/hasumi/work/ruby/yamatanooroti/lib/yamatanooroti/vterm.rb:58:in `loop'
            from /home/hasumi/work/ruby/yamatanooroti/lib/yamatanooroti/vterm.rb:58:in `sync'
            from /home/hasumi/work/ruby/yamatanooroti/lib/yamatanooroti/vterm.rb:28:in `start_terminal'
            from /home/hasumi/work/ruby/reline/test/reline/yamatanooroti/test_rendering.rb:653:in `test_suppress_auto_indent_just_after_pasted'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/testcase.rb:871:in `run_test'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/testcase.rb:566:in `block (2 levels) in run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/fixture.rb:276:in `block in create_fixtures_runner'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/fixture.rb:276:in `block in create_fixtures_runner'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/fixture.rb:257:in `run_fixture'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/fixture.rb:292:in `run_setup'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/testcase.rb:564:in `block in run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/testcase.rb:563:in `catch'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/testcase.rb:563:in `run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/testsuite.rb:124:in `run_test'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/testsuite.rb:53:in `run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/testsuite.rb:124:in `run_test'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/testsuite.rb:53:in `run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/testsuite.rb:124:in `run_test'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/testsuite.rb:53:in `run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/testsuite.rb:124:in `run_test'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/testsuite.rb:53:in `run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/ui/testrunnermediator.rb:67:in `run_suite'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/ui/testrunnermediator.rb:45:in `block (2 levels) in run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/ui/testrunnermediator.rb:102:in `with_listener'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/ui/testrunnermediator.rb:41:in `block in run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/ui/testrunnermediator.rb:39:in `catch'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/ui/testrunnermediator.rb:39:in `run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/ui/testrunner.rb:40:in `start_mediator'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/ui/testrunner.rb:25:in `start'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/ui/testrunnerutilities.rb:24:in `run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/autorunner.rb:458:in `block in run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/autorunner.rb:514:in `change_work_directory'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/autorunner.rb:457:in `run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit/autorunner.rb:66:in `run'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/test-unit-3.5.5/lib/test/unit.rb:518:in `block (2 levels) in <top (required)>'
    ```

    * Fix mock object of Context

    The previous commit solved one problem, but it found the next problem.

    Following error message got from the command `RELINE_STDERR_TTY=error.log rake test_yamatanooroti`:

    ```
    Reline is used by 24373
    /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/bundler/gems/irb-d30c0c994351/lib/irb/ruby-lex.rb:151:in `ripper_lex_without_warning': private method `local_variables' called for #<struct auto_indent_mode=true, workspace=nil> (NoMethodError)

        lvars_code = generate_local_variables_assign_code(context&.local_variables || [])
                                                                 ^^^^^^^^^^^^^^^^^
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/bundler/gems/irb-d30c0c994351/lib/irb/ruby-lex.rb:213:in `block in set_auto_indent'
            from /home/hasumi/work/ruby/reline/lib/reline/line_editor.rb:1721:in `process_auto_indent'
            from /home/hasumi/work/ruby/reline/lib/reline/line_editor.rb:1663:in `input_key'
            from /home/hasumi/work/ruby/reline/lib/reline.rb:346:in `block (3 levels) in inner_readline'
            from /home/hasumi/work/ruby/reline/lib/reline.rb:345:in `each'
            from /home/hasumi/work/ruby/reline/lib/reline.rb:345:in `block (2 levels) in inner_readline'
            from /home/hasumi/work/ruby/reline/lib/reline.rb:420:in `block in read_io'
            from /home/hasumi/work/ruby/reline/lib/reline.rb:390:in `loop'
            from /home/hasumi/work/ruby/reline/lib/reline.rb:390:in `read_io'
            from /home/hasumi/work/ruby/reline/lib/reline.rb:343:in `block in inner_readline'
            from /home/hasumi/work/ruby/reline/lib/reline.rb:341:in `loop'
            from /home/hasumi/work/ruby/reline/lib/reline.rb:341:in `inner_readline'
            from /home/hasumi/work/ruby/reline/lib/reline.rb:271:in `readmultiline'
            from /home/hasumi/.rbenv/versions/3.1.2/lib/ruby/3.1.0/forwardable.rb:238:in `readmultiline'
            from /home/hasumi/work/ruby/reline/test/reline/yamatanooroti/multiline_repl:185:in `<main>'
    ```

    In irb/ruby-lex.rb, `context` is originally supposed to be an instance of IRB::Context with a public method `#local_variables`.
    However, the `context` in reline/test/reline/yamatanooroti/termination_checker.rb is a Struct that is a mock object with no `#local_variables` method.

    Thus, `rake test_yamatanooroti` no longer causes an infinite loop and an unexpected error with these two commits (at least in WITH_VTERM environment)

    * Name the Struct "MockIRBContext" to specify what it is for

commit 74995162fc5d530e1a7a91b9f5c11a3b270f7f5f
  Author:     MSP-Greg <MSP-Greg@users.noreply.github.com>
  AuthorDate: 2022-12-14 04:57:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-14 04:57:38 +0900

    socket.rb - don't load io/wait (#6922)

    See d2166c09b08fc1 and #6036 for more context.

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 1859784422ca7f19710bbfb1b12b46fdd8ecf3cb
  Author:     zverok <zverok.offline@gmail.com>
  AuthorDate: 2022-12-07 02:57:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 04:52:06 +0900

    [ruby/date] Implement Date#deconstruct_keys and DateTime#deconstruct_keys

    https://github.com/ruby/date/commit/6bb6d3a810

commit a1dba60b5bec6b25e8262640228e19329d0dfec2
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-14 03:36:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-14 03:36:45 +0900

    [ruby/irb] Version 1.6.1

    https://github.com/ruby/irb/commit/229476ba76

commit a66a69865d444509710253d3210a1e72bcd040f9
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-14 01:00:22 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-14 01:00:22 +0900

    YJIT: Change the default mem size to 64MiB (#6912)

    * YJIT: Change the default mem size to 64MiB

    * Also update ruby --help

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 99d0a257af54aa819c6ced5f1ff8ff37e3d5342b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-13 19:47:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-13 19:55:18 +0900

    [ruby/openssl] [DOC] Remove duplicate doc

    RDoc does not consider preprocessor conditionals, but equally uses
    both documents of `#if` and `#else` sides.

    https://github.com/ruby/openssl/commit/ea0a112a0c

commit 3de7ff8eb9eb74e0dbd48902d1535d3c9fe14005
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-13 17:47:20 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-13 18:07:41 +0900

    We should apply https://github.com/ruby/openssl/pull/576 instead of them:

      https://github.com/ruby/ruby/commit/6d8f396f37350b7aa9c85a097929f54a0939448b
      https://github.com/ruby/ruby/commit/c8b3bd45cc3cae93ae701333202416838ee6a00c

commit 2be03fb5b0fc6ba18cf9842f410f3853e0369600
  Author:     Henrique Bontempo <henrique.s.bontempo@gmail.com>
  AuthorDate: 2022-11-24 02:04:38 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-13 18:07:41 +0900

    [ruby/openssl] Fixes OPENSSL_LIBRARY_VERSION description on
    documentation
    (https://github.com/ruby/openssl/pull/559)

    Adds back missing constant description on the documentation.

commit 8ab8c2d601db398c2d0e17db2105acb561ef0e04
  Author:     Theo Buehler <tb@openbsd.org>
  AuthorDate: 2022-11-24 01:09:50 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-13 18:07:41 +0900

    [ruby/openssl] Enable HKDF support for LibreSSL 3.6 and later

    LibreSSL 3.6 added support for HKDF in EVP. Enable this in ossl_kdf.c.

    https://github.com/ruby/openssl/commit/9bdd39a7e2

commit d4dce27d894f4889f29d779c94ba2d30c231f9f8
  Author:     Yusuke Nakamura <yusuke1994525@gmail.com>
  AuthorDate: 2022-11-23 21:05:49 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-13 18:07:41 +0900

    [ruby/openssl] Allow empty string to OpenSSL::Cipher#update

    For some reasons, plaintext may be empty string.

    ref https://www.rfc-editor.org/rfc/rfc9001.html#section-5.8

    https://github.com/ruby/openssl/commit/953592a29e

commit d92f4fe4d74d929cec9ca36ec3dbec070b314902
  Author:     Theo Buehler <tb@openbsd.org>
  AuthorDate: 2022-11-10 22:50:22 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-13 18:07:41 +0900

    [ruby/openssl] Use EVP_Digest{Sign,Verify} when available

    LibreSSL 3.4 added EVP_DigestSign() and EVP_DigestVerify(). Use them
    when available to prepare for the addition of Ed25519 support in
    LibreSSL 3.7.

    https://github.com/ruby/openssl/commit/475b2bf766

commit ce025a5cb4a7aea62629fcf8685e931671a0672d
  Author:     Jarek Prokop <jprokop@redhat.com>
  AuthorDate: 2022-10-18 16:52:13 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-13 18:07:41 +0900

    [ruby/openssl] Use SHA256 instead of SHA1 where needed in tests.

    Systems such as RHEL 9 are moving away from SHA1
    disabling it completely in default configuration.

    https://github.com/ruby/openssl/commit/32648da2f6

commit 764da87ab02d30c578138bdb0f37e7c18f2d4371
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-13 15:18:42 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-13 18:06:11 +0900

    [Bug #19195] Allow optional newlines before closing parenthesis

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6916

commit 3262842e0adaed63935923bdc14884ac19d7549c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-13 17:22:57 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-13 17:25:02 +0900

    Skip calling f.read for `overwrite: true`-only cases

    We only need to set outpath for that case.

commit 5ba9dcff16226bbe0f24b234e62e2ed67a17ac53
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-13 17:15:02 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-13 17:17:47 +0900

    Make sure f.read is not called twice

    --revision.h and --if-change are not used simultaneously, but they might
    be in the future.

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

commit 7edcdc380f3bb6f5a81bfb5798c339acd844a0d3
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-13 16:34:30 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-13 16:34:30 +0900

    Avoid overwriting revision.h when .git doesn't exist (#6915)

    * Avoid overwriting revision.h when .git doesn't exist

    * Overwrite revision.h if it's blank

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 3e00cb8256cfe0640cb1d744d07d496128edb7e9
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-13 11:24:14 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-13 12:41:08 +0900

    Merge RubyGems/Bundler master

      from https://github.com/rubygems/rubygems/commit/1fdbeeabedd3cc4fffb0bb527b7c789afa44fb51

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6914

commit 6d00053c741cc7a369a1967e0631e32ddf3d1f82
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-12 04:17:51 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-13 12:41:08 +0900

    [rubygems/rubygems] Use better matcher

    Hopefully it gives a better error.

    https://github.com/rubygems/rubygems/commit/5bc9ff64b6

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6914

commit 43f9351177c14c554d88630b3db771b2faf11dd0
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-12-13 04:09:10 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-12-13 07:05:43 +0900

    Fix parens on LIKELY in basic operators

    We want to hint to the compiler that it's likely that the BOP is
    unredefined (the bit is 0). Previously we were accidentally hinting to
    the compiler that it was non-zero due to a misplaced parenthesis.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6911

commit 17559f0420fd925147156e7434916b58c830f44c
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-12 20:19:40 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-13 07:01:52 +0900

    Don't leave backup file around

    I suspect this was for debugging? If not, these days we have source
    control tools, so this wouldn't seem necessary?

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6907

commit f88f2bd92f4a1760c0f323614c45369d6a281317
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-12-13 06:04:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-13 06:05:03 +0900

    [ruby/irb] Group show_doc tests and update the expectation
    (https://github.com/ruby/irb/pull/479)

    https://github.com/ruby/irb/commit/bede04c14a

commit 258ac07907b2e3561db48d53ed0a50c8dd05f102
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-13 05:59:29 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-13 05:59:29 +0900

    YJIT: Generate debug info in release builds (#6910)

    * YJIT: Generate debug info in release builds

    They are helpful in case we need to do core dump debugging.

    * Remove Cirrus DOC skip rule

    The syntax for this is weird, and escaping [ and ] cause parse failures.
    Cirrus' docs said to surround with .*, but then that seems to skip
    everything. Revert e0a4205eb785f266fdf08f409c2f112f5dfcb229 for now.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 1004d693b7a3db5db98be59a3d3d468d2ee21ca5
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-12-13 05:13:46 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-13 05:13:46 +0900

    Make it so YJIT is no longer marked as experimental (#6909)

    Tested on production workloads at Shopify for > 1 year and proven
    to be quite stable. Enabling YJIT at run-time is still guarded
    behind the --yjit command-line option for now.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 63f682ba11d92f5f9c1254c491d5881b1614731a
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-12-13 04:34:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-13 04:34:21 +0900

    [ruby/net-http] [DOC] Enhanced RDoc for HTTPHeader
    (https://github.com/ruby/net-http/pull/88)

    https://github.com/ruby/net-http/commit/46e966be10

commit 223d4448c827b9daeb6a61312777e67405e66379
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-12-13 02:35:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-13 02:35:48 +0900

    [ruby/irb] `show_doc` command should take non-string argument too
    (https://github.com/ruby/irb/pull/478)

    Given that `show_doc` already supports syntax like `String#gsub`, it
    should be able to take it in non-string form too, like `edit` and
    `show_source` do. This ensures users can have a consistent syntax on
    argument between different commands.

commit ece624605785f6640118a0cfd97618e71abfbee8
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-13 00:19:24 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-13 00:19:24 +0900

    YJIT: Implement opt_newarray_max instruction (#6893)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 5302d04e5a7fe226a4e9f6aba8b681e0d5088b27
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-13 00:16:38 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-13 00:16:38 +0900

    [DOC] Fix format in ObjectSpace.dump_all

commit be710c1bf797f539707e00a1ec6bf86e6009add0
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-13 00:15:24 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-13 00:15:24 +0900

    [DOC] Fix format for ObjectSpace.dump_shapes

commit a9c3dc8d2ea4f2461862a999ce40cf944af97190
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-12 23:58:39 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-12 23:58:39 +0900

    [DOC] Fix call-seq for ObjectSpace methods

commit 58e3ce5de6e54e4ede6ab6c5df2426ddb92b5a17
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-12 23:56:44 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-12 23:56:44 +0900

    [DOC] Fix typo in docs for ObjectSpace.dump_all

commit 87d54708735a77c867638e3157695d75cab279b3
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-12 23:51:12 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-12 23:51:12 +0900

    [DOC] Fix indentation for ObjectSpace.dump_all

commit 0b4fda11ec918e8f40059cfd1d2f417bf780d60d
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-12 23:37:31 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-12 23:48:06 +0900

    [DOC] Don't document private methods in objspace

commit 6d6b1e599034717c8c8df67ece0d4abb4e12d4cb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-12 13:38:12 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-12 23:32:37 +0900

    Display error messages outside the groups so can be found quickly

commit 0ba65c689e27b0b6229fbb40fc6794d0c853a33f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-12 17:05:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-12 17:05:37 +0900

    outdate-bundled-gems.rb: check for gemspec files for extensions

    https://github.com/ruby/setup-ruby/issues/415#issuecomment-1345662263

commit ff6831c3343a3d30fdccb0932b8ae0834ee85709
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-12 17:05:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-12 17:05:03 +0900

    outdate-bundled-gems.rb: remove unused option

commit be18b60c335ea0d557717470826a489939316192
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-09 14:19:31 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-12 16:21:31 +0900

    Prevent potential buffer overflow on enclen

    Follow up of 1d2d25dcadda0764f303183ac091d0c87b432566

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6903

commit e1f42844a0b2a4dcf4c7338c41ef92f1b45393d8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2020-07-27 09:59:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-12 15:00:41 +0900

    [rubygems/rubygems] Prefer RbConfig::CONFIG['EXEEXT'] over hardcorded '.exe'

    https://github.com/rubygems/rubygems/commit/bc84b2d262

commit b8e542b46350cc1e7975bb711082e4cc6fcb7c82
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-09 14:17:35 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-12 14:26:38 +0900

    Make absent operator work at the end of the input string

    https://bugs.ruby-lang.org/issues/19104#change-100542

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6902

commit f093b619a4863be96e6ebfa2fd58c77f4a360eae
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-12 13:56:06 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-12 13:56:06 +0900

    [DOC] NEWS about [Feature #19104]

commit bbe56a643734025aef6a3cbeb07c5306505040f6
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-12 09:09:23 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-12 10:49:43 +0900

    Merge RubyGems/Bundler master

      from https://github.com/rubygems/rubygems/commit/bfb0ae69776069155d2092702bfbb5a12617d85a

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6906

commit f1cdc129d4d6440168b840fa852fa6c3e28d46a9
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-12-12 07:26:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-12 07:26:18 +0900

    [ruby/net-http] [DOC] Enhanced RDoc for Net::HTTP
    (https://github.com/ruby/net-http/pull/85)

    https://github.com/ruby/net-http/commit/9d9040fb79

commit e1ca089b5dddd30c4ac8de9c7ec9e52948768117
  Author:     Jonathan Lim <snowblink@gmail.com>
  AuthorDate: 2022-12-12 02:24:01 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-12 02:24:01 +0900

    [DOC] Correct Array#compact! description

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6904

    Merged-By: XrXr

commit e0a4205eb785f266fdf08f409c2f112f5dfcb229
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-12 02:02:05 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-12-12 02:14:04 +0900

    Skip Cirrus checks for [DOC] commits

    Since we also skip them on GitHub Actions.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6905

commit 381a373ab92e2a5869e75f43815993cef39d32cf
  Author:     zverok <zverok.offline@gmail.com>
  AuthorDate: 2022-01-13 05:05:30 +0900
  Commit:     Victor Shepelev <zverok.offline@gmail.com>
  CommitDate: 2022-12-12 01:49:56 +0900

    [DOC] Improve Random::Formatter docs

    * Make its usage more obvious (by providing more detailed
      examples);
    * Include mention of it into Random itself;
    * Small cleanups of docs.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5434

commit f07897fd7bb53a40a8fad5ee2be74e02b53e8614
  Author:     zverok <zverok.offline@gmail.com>
  AuthorDate: 2022-01-25 07:31:12 +0900
  Commit:     Victor Shepelev <zverok.offline@gmail.com>
  CommitDate: 2022-12-12 01:43:44 +0900

    [DOC] Clarify Class#subclases behavior quirks

    As per discussion in [Feature #18273], explain the
    non-deterministic nature of the method.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5480

commit 73eddee76efdc4ed255fd13533b4a0a329cf3b1a
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-11 06:10:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-11 22:35:01 +0900

    [rubygems/rubygems] Bump optparse to 0.3.0

    And remove a patch no longer needed since we dropped Ruby 2.4 support.

    https://github.com/rubygems/rubygems/commit/8939337072

commit d82328ffc8b70564cb84ee8ec8c3d90884234eb7
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-12-11 06:05:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-11 22:35:00 +0900

    [rubygems/rubygems] Bump Molinillo and tsort

    And configure tsort to be vendored as a dependency of Molinillo.

    https://github.com/rubygems/rubygems/commit/8ec749f891

commit 9477ec732b680df1ffa1d17b86ba641c83dc4b74
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2022-12-11 20:23:36 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2022-12-11 20:23:36 +0900

    NEWS.md: fix ticket ref position.

commit 9d59d093bd99ca7f4266dec1e9b4cd8b5efbd2d4
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-11 15:21:06 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-11 15:21:06 +0900

    MJIT: Compile methods in batches (#6900)

    * MJIT: Compile methods in batches

    * MJIT: make mjit-bindgen

    * MJIT: Fix RubyVM::MJIT tests

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 7055574cf9dbcabd9d440c364f3e7b7812527bde
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-06 22:16:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-11 11:55:28 +0900

    [Bug #19182] Unicode updating targets do not need to run for each files

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6899

commit ea613c63608232bf33fd454fc6cd1ce20d63d82e
  Author:     Mirek Klimos <myreggg@gmail.com>
  AuthorDate: 2022-12-11 03:35:31 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-11 03:35:31 +0900

    Expose need_major_gc via GC.latest_gc_info (#6791)

  Notes:
    Merged-By: peterzhu2118 <peter@peterzhu.ca>

commit 12003acbb9c2c2624be8c41c22c15e6d1fa3a42e
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-12-10 03:33:48 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-12-11 00:10:21 +0900

    Update shape capacity when removing ivar and rewriting shape transitions

    Since edc7af48acd12666a2945f30901d16b62a39f474, we now no longer have
    undef ivar transitions. Instead, we rebuild the shapes table. When we do
    this, we need to ensure that we retain our capacities on shapes.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6894

commit 0645c8b3c1f7448d88c6fe6a4ebbd7b3a091c042
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-10 19:01:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-10 19:01:29 +0900

    [DOC] Fix update-NEWS-refs.rb

    * Issue numbers are path components but not fragments
    * Align justification width to Feature lines

commit fd440b09fc64b1d2275942c7f6d1e1f4069e85ae
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-10 18:57:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-10 18:57:20 +0900

    A negative denominator case in the Rational string parsing test

commit c33615b6543b46227e7f51c17c2d725cf5bfa2ef
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2022-12-10 16:10:39 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2022-12-10 16:10:39 +0900

    NEWS.md: Added compatibility issue of String#to_c. [ruby-core:110523] [Bug #19087]

commit fc8d22f89124d2b7f1df5de87274e86ccefadbd2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-10 04:24:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-10 13:58:20 +0900

    Win32: Move fallback BASERUBY definition

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6898

commit 7a976c106030f37d6ab72b1abaef10e575bb8809
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-06 16:47:42 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-10 13:58:20 +0900

    [Bug #19181] Separate the rule for unicode_normalize/tables.rb timestamp

    It should depends on only existing data files (except for the tools),
    unless `ALWAYS_UPDATE_UNICODE=yes`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6898

commit 5404e2fd31736af3a7477f3ec67d3f07276485d6
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-10 11:56:02 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-10 11:56:02 +0900

    [DOC] Fix false link to ::Data

commit 22d391dc637dd756fdcdfc0ece4a71753b5b2ddb
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-12-10 09:54:53 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-10 09:54:53 +0900

    Add spec for fiber storage. (#6896)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 24043031be75cb5119cc4a6c1ffb2c867b567633
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-10 09:45:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-10 09:45:38 +0900

    YJIT: Split send_iseq_complex_callee exit reasons (#6895)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 381e128c135e491689714cb69353d11e782f5994
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-12-10 08:39:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-10 08:39:17 +0900

    [ruby/irb] Fix step command (https://github.com/ruby/irb/pull/477)

    The current `next` pre-command workaround on IRB source stepping
    moves the location by 1 extra line. A better way is to make `debug`
    skip IRB frames completely, which is what this commit does.

    It also fixes the step command's test. The `|` in regexp was not escaped
    so it was always incorrectly matched.

commit daa893db412c6ae814d0291b4ac6fc62a466d394
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-12-10 07:12:15 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-10 07:12:15 +0900

    YJIT: implement `getconstant` YARV instruction (#6884)

    * YJIT: implement getconstant YARV instruction

    * Constant id is not a pointer

    * Stack operands must be read after jit_prepare_routine_call

    Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 1c057cfc2fd84369a2ebff048c4a5fdf5fa08fff
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-10 06:14:19 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-10 06:14:19 +0900

    YJIT: Filter out 0-exit ops from Top-20 exit ops (#6892)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit d7812d1949b6315eff5088c6f74eaf9ef6b34119
  Author:     Jean Boussier <byroot@ruby-lang.org>
  AuthorDate: 2022-12-09 23:22:10 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-12-10 01:06:21 +0900

    objspace_dump.c: dump the capacity field for INITIAL_CAPACITY shapes

    We forgot about that one, it's quite useful to see which capacity
    we started from.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6891

commit 12b52686790582e30d7d92f2070741d28be8c517
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-12-08 22:42:19 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-09 23:34:17 +0900

    Remove unused counter for heap_page->pinned_slots

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6881

commit fe67998816245fbab6a65095bde3d57f1277609c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-09 22:15:38 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-09 22:15:38 +0900

    Clean up a temporary file

commit 11acb7f7bcf6e80e03cf83bba863b9b3f980fdca
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-09 01:14:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-09 22:11:44 +0900

    [Bug #19167] Remove useless conversion of classes for special const

commit 181d4bee5e03a30596e78b2d7aa0396887a53881
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-12-08 01:01:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-09 22:11:00 +0900

    Use rb_inspect instead of +PRIsVALUE for Object.inspect

    In order to preserve the values when TrueClass, FalseClass or NilClass
    are stored in ivars

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6872

commit 01cf3ab3b8ee20ad6746373ae17a5679cad47125
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 16:56:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-09 16:57:33 +0900

    [ruby/date] Bump version to 3.3.1

    https://github.com/ruby/date/commit/b7a8229041

commit e96b64f5e749425b63cc71f256da304fe3ee476b
  Author:     Charles Oliver Nutter <headius@headius.com>
  AuthorDate: 2022-12-09 13:43:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-09 16:55:07 +0900

    [ruby/date] No-op gem for JRuby for now

    Remove all shipped files and require path on JRuby until we can
    add JRuby's extension to the gem.

    Temporary workaround for #48

    https://github.com/ruby/date/commit/94c3becef2

commit 8893913ae6da33662201d0a0e6ba2d37f50630ca
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-09 16:41:12 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-09 16:43:09 +0900

    MJIT: Clarify jit_unit is only for MJIT

commit 93ac1503be10c43978fe7ee1fec95ca2098fbd26
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 15:13:23 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-09 16:36:22 +0900

    Added condition for ruby/ruby repository

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6890

commit 0677bbe3ff139a4f369c128bdab3526450c5ee6f
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 15:12:51 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-09 16:36:22 +0900

    Merge syntax_suggest master

      Pick from https://github.com/ruby/syntax_suggest/commit/daee74dcb06296fa69fe8595fdff5d93d432b30d

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6890

commit 9557c8edf2dcf18fdece066c596a71696b2f2b30
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 15:00:11 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-09 16:36:22 +0900

    Merge net-protocol-0.2.1

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6890

commit 4cbd3e19447591f66c3ab08c322a32aa53eae74f
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 14:54:10 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-09 16:36:22 +0900

    Merge RDoc-6.5.0

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6890

commit a4e14b9d9d58391fb7d7a10be8d883690860373b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 14:45:51 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-09 16:36:22 +0900

    Merge RubyGems/Bundler master

      Pick from https://github.com/rubygems/rubygems/commit/823c776d951f3c35094611473ec77f94e8bf6610

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6890

commit d928ebacb23639cbf3f28201304f0451e5bd45a7
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 14:36:54 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-09 16:36:22 +0900

    Merge Psych-5.0.1

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6890

commit 98e33aa992a86c8000e050ffa870fa72517187fe
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 14:19:59 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-09 16:36:22 +0900

    Merge yaml-0.2.1

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6890

commit 3b45498d3e4e459cf881c97cc72c4c8d5adcc546
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 14:18:20 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-09 16:36:22 +0900

    Merge json-2.6.3

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6890

commit 7d04cddfef5a4aa212799a5ab6f8518819bed937
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 14:03:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-09 16:36:22 +0900

    Merge stringio-3.0.4

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6890

commit 286812bcf3f3ece9ed784d943902007ec065bdd9
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 13:43:01 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-09 16:36:22 +0900

    Merge fiddle-1.1.1

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6890

commit 4e31fea77d360c6535e33ff2525d80fba38d15d8
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 13:03:33 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-09 16:36:22 +0900

    Merge strscan-3.0.5

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6890

commit bcf01b18cfe9b21bfde32e28edd4745703bf190c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 08:51:13 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-09 16:36:22 +0900

    Reapply the following commits related to extend timeout value.

      66d1900423e6fb9774c2fe72dba8c2968b54d7ab
      0686e4181d04dd911316a227753ceaa96d8c6533
      1a63468831524f68e73cbb068071652c6486cfc6
      e1fee7f949cb6719122672fa1081c60984a5339f
      232e43fd52e53f667c2c290cffb4afa524889f0f

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6890

commit 643918ecfe9c980f251247de6acd3be6280da24c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 08:46:14 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-09 16:36:22 +0900

    Merge csv-3.2.6

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6890

commit 260a00d80e4dcc930b040313a99da29e4b1e6678
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-09 16:08:34 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-09 16:08:34 +0900

    MJIT: Refactor JIT failure handling

commit 97ed056274f4b1f5a174f9ed45aecba4d3c37568
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-09 15:58:39 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-09 15:58:40 +0900

    MJIT: Give a more appropriate name to the initial state

commit 0dc5c117a5eb8773b717ef79c4f78ccf0e3981d5
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-09 15:53:27 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-09 15:53:58 +0900

    MJIT: Convert compact_p flag to an enum

    I'm gonna add another type of unit shortly.

commit bda070f0162e293e296c1fe7e6cb80a736058162
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-30 23:04:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-09 15:40:05 +0900

    [ruby/rdoc] Fix `=end` delimiter

    https://github.com/ruby/rdoc/commit/e1679fa7e4

commit acd857b9897cf98994e9d798f4e9179cf4a8d6e0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-30 22:59:15 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-09 15:40:04 +0900

    [ruby/rdoc] Non-RD part feature has not been imported to RDoc

    https://github.com/ruby/rdoc/commit/fe0159de2f

commit b749bc05d0c54ced973628372f43085a9719aa2e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-30 22:44:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-09 15:40:04 +0900

    [ruby/rdoc] Use Tempfile

    https://github.com/ruby/rdoc/commit/0b9dde5ab4

commit fa64889abbad727d31bb927604d87679825dcd37
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-09 15:36:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-09 15:36:55 +0900

    [ruby/erb] Use a ruby-lang alias on spec.email

    https://github.com/ruby/erb/commit/39414f32a5

commit d7baa17b49a681a7436718f6219fcbb1ce8b2ff3
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-09 14:57:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-09 14:57:49 +0900

    [ruby/etc] Bump version to 1.4.2

    https://github.com/ruby/etc/commit/5cac138538

commit ec184077bc503756f42a19dc5ee16f9c5cd894b6
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-09 14:42:15 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-09 14:42:15 +0900

    MJIT: Remove obsoleted conditional variables

commit 95b423f93a418abc010d7bc1baab48b526dd3304
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-09 13:35:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-09 13:35:43 +0900

    [ruby/irb] Version 1.6.0

    https://github.com/ruby/irb/commit/d799c5c9da

commit 6ea3edbdad1ecad20f9856e0e260e5ca5976b7fc
  Author:     Janosch Müller <janosch84@gmail.com>
  AuthorDate: 2022-12-09 06:14:08 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-09 11:26:26 +0900

    Fix bad code example in documentation

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6885

commit e714907d82f486c13fc1ea5e3ad291dabf4e7fbe
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-09 05:03:47 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-12-09 07:35:18 +0900

    YJIT: Upgrade bindgen to stabilize and reduce output

    The new version has an option to merge everything into a big
    `extern "C"` block and it's nicer.

    More importantly, this upgrade fixes an issue where Ubuntu with Clang 12
    and macOS with Clang 14 gave a one line diff for `rb_shape_t`. It was
    slightly annoying because we use macOS locally.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6887

commit 51ef991d8dabadf8fbd46ad02cd9fea3c4d06f62
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-09 07:33:18 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-09 07:33:18 +0900

    YJIT: Drop Copy trait from Context (#6889)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit b26c9ce5e9b1c80a59f4faeb92be4a302232e12c
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-12-09 07:31:33 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-09 07:31:33 +0900

    YJIT: implement opt_newarray_min YARV instruction (#6888)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit c9076d546aae9dbcb7da404aada7ce8d23e2273b
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-12-09 06:46:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-09 06:46:55 +0900

    [ruby/irb] Add show_doc as an alias to the help command
    (https://github.com/ruby/irb/pull/475)

    In the long-term, we want to align with `Pry`, `byebug` and `debug` to
    use the `help` command to list all commands, which is what `show_cmds`
    currently does. And `show_doc` will be the command to look up Ruby APIs.

    By aliasing `show_doc` to the current `help` now, users will have time
    to get use to it.

commit 12b7c129bf8ed3a113e2cc73f817868507504268
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-12-09 06:05:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-09 06:05:37 +0900

    [ruby/irb] Gracefully handle missing command argument
    (https://github.com/ruby/irb/pull/473)

    * Handle file loading commands' argument error gracefully

    Currently, if users don't provide an argument to `source`,
    `irb_load`, and `irb_require`, IRB raises `ArgumentError` with full
    stacktrace. This is confusing because it looks similar to when IRB has
    internal issues. The message also isn't helpful on helping users avoid
    the error.

    So in this commit, I add a new `CommandArgumentError` for commands to
    raise explicitly when users' input doesn't satisfy a command's argument
    requirement.

    * Gracefully handle `fg` command's argument requirement

commit 8bbf4e5d8dccba3adf07fb56a38c062477653aec
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-12-09 05:58:40 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-09 05:58:53 +0900

    [ruby/stringio] bump up to 3.0.5

    https://github.com/ruby/stringio/commit/e62b9d78d3

commit bb8afd7265af41a75e8889774aa26f157f146380
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-07 02:06:25 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-12-09 05:58:26 +0900

    Freeze singleton class, not its origin

    Previously, when we froze an object, we froze
    `RCLASS_ORIGIN(object.singleton_class)`, which didn't freeze
    `object.singleton_class` when it has some prepended modules.

    Origin iclass are internal objects and users can't interact with
    them through Kernel#freeze?, Kernel#freeze, or any mutation method
    that checks the frozen status. So we shouldn't touch the origin
    iclasses when the frozen status should be visible.

    [Bug #19169]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6869

commit 47a5b34aba514fd075664b4cf0e95e0f7f26609f
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-09 05:02:21 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-12-09 05:58:00 +0900

    YJIT: Fold check-yjit-bindings into yjit-bindgen

    So it's shorter on CI and the hint about how the fix the failure shows
    up. It's going to print a diff locally too, but that should be fine.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6883

commit 2ae26554de200adc0d557776e2d2c3eb91c6ec90
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-09 03:23:46 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-12-09 05:58:00 +0900

    YJIT: Add a hint for fixing "check-yjit-bindings"

    This makes it clear what to do when the CI check
    fails and should remove a few minutes of confusion
    for people seeing this for the first time.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6883

commit a87f802f1ecc2f1442f4590dc58068a72f68eae9
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-12-09 04:11:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-09 04:11:51 +0900

    [ruby/irb] Kill PTY process after test is finished
    (https://github.com/ruby/irb/pull/471)

    The killing/waiting logic is borrowed from ruby/debug:

    https://github.com/ruby/debug/blob/ec5ae5aebd61a99dc84028d8dffa8e7e165c1ec6/test/support/test_case.rb#L107-L136

commit 3956bb859c2442d34ea171db8f92f3e5895c43d9
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-12-09 04:10:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-09 04:10:23 +0900

    [ruby/irb] Add "show_cmds" command to list all commands'
    descriptions
    (https://github.com/ruby/irb/pull/463)

    https://github.com/ruby/irb/commit/7e857655ac

commit 2cea8e014dbbbb68e4e8be367529b2beae564c54
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-09 03:31:45 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-09 03:31:56 +0900

    MJIT: Mark MJIT's objects from mjit_mark

    It looks like the current way of marking objects was breaking
    eightbitraptor's upcoming VWA changes and this seems to fix it.

commit 73771e4b192f3db62efb854affdfc95babba1d35
  Author:     Jean Boussier <byroot@ruby-lang.org>
  AuthorDate: 2022-12-06 20:56:51 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-12-09 02:46:16 +0900

    ObjectSpace.dump_all: dump shapes as well

    I see several arguments in doing so.

    First they use a non trivial amount of memory, so for various memory
    profiling/mapping tools it is relevant to have visibility of the space
    occupied by shapes.

    Then, some pathological code can create a tons of shape, so it is
    valuable to have a way to have a way to observe shapes without having
    to compile Ruby with `SHAPE_DEBUG=1`.

    And additionally it's likely much faster to dump then this way than
    to use `RubyVM::Shape`.

    There are however a few open questions:

    - Shapes can't respect the `since:` argument. Not sure what to do when
      it is provided. Would probably make sense to not dump them.
    - Maybe it would make more sense to have a separate `ObjectSpace.dump_shapes`?
    - Maybe instead `dump_all` should take a `shapes: false` argument?

    Additionally, `ObjectSpace.dump_shapes` is added for the use case of
    debugging the evolution of the shape tree.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6868

commit b19490f75dd790f2f886df2c05ed8fba947326a9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-07 21:41:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-09 02:20:16 +0900

    Use the built bundled gems in test-all as well as test-bundled-gems

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6882

commit 5738ae70d959a2bab0dfe40b12ba16a2c2cd6a12
  Author:     Jimmy Bourassa <jbourassa@gmail.com>
  AuthorDate: 2022-12-09 00:38:23 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-09 00:38:23 +0900

    [DOC] Update `rb_gc_mark_locations` doc

    The documentation says that the `end` pointer will be marked
    but looking at the source, that is not the case.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6876

    Merged-By: nobu <nobu@ruby-lang.org>

commit e9f6d6b3fb522f2f9a70f06230c6ecb0cad0ac90
  Author:     Jean Boussier <byroot@ruby-lang.org>
  AuthorDate: 2022-12-08 18:15:06 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-12-08 21:29:13 +0900

    Ignore .o.tmp files

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6879

commit 6081fd456436a98ada7f51ebb4d44c0cc7f01b06
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-12-08 17:44:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-08 21:15:52 +0900

    [ruby/net-protocol] Failing test case for #19

    Unfortunately we have to use a mock, but this test demonstrate the
    mutation bug fixed in #19.

    It fails on 0.2.0 but passes on 0.1.3 or 0.2.1.

    https://github.com/ruby/net-protocol/commit/40a1ab687c

commit 6f44dc8edf5b444a45ea9f0a375a2620b93ed19d
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-08 16:23:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-08 16:23:46 +0900

    [ruby/net-protocol] Bump version to 0.2.1

    https://github.com/ruby/net-protocol/commit/06d1420936

commit 8547f61dafa1ea1a18b6f823320e3fcf97e1a156
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-12-08 00:37:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-08 16:17:51 +0900

    [ruby/net-protocol] Undo BufferedIO#rbuf_consume_all_shareable! optimization

    This optimization is unsafe because `dest` is allowed to be a custom
    object responding to `<<` (e.g. a block wrapped in `ReadAdapter`).

    So the receiver can hold onto the passed buffer for as long as it wants.

    If it was guaranteed that `ReadAdapter` was the only possible receiver
    we could dup the buffer there for mutation safety, but I'm not certain
    it's the case so I'd rather err on the safe side.

    Ref: https://github.com/shrinerb/shrine/issues/610

    https://github.com/ruby/net-protocol/commit/7efa16d55d

commit a57a3154d3e11b347ecde7b86a656d0c0737169e
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-12-08 01:30:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-08 16:17:09 +0900

    [rubygems/rubygems] Avoid deprecated Gem::Platform.match in Gem::Resolver::InstallerSet

    https://github.com/rubygems/rubygems/commit/05cb5410cb

commit 3938bd1b42a157877f63c3d322456d8c7dd54cff
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-08 15:05:14 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-08 15:05:15 +0900

    MJIT: Remove Windows-specific code

    because we no longer support it

commit 09bc3abd2e4e65aed1bdf8adb67ecfcad17e0836
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-07 16:24:19 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-08 14:20:05 +0900

    MJIT: Deal with a TODO with assertion

commit 6fd5d2dc003bda5ce0685abd2b975d7ac7079d46
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-12-08 14:19:53 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-08 14:19:53 +0900

    Introduce `IO.new(..., path:)` and promote `File#path` to `IO#path`. (#6867)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit b9d055d7604ea41f54268076622c8a1a5d0f7750
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-12-08 14:11:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-08 14:12:15 +0900

    [ruby/stringio] bump up to 3.0.4

    https://github.com/ruby/stringio/commit/5ba853d6ff

commit 7e121dc4a883d1e69db601bdcaac42de33e176e1
  Author:     Akira Matsuda <ronnie@dio.jp>
  AuthorDate: 2022-12-08 12:31:30 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-08 12:31:36 +0900

    [ruby/logger] Another performance improvement on the Formatter by
    using Kernel#sprintf over String#%
    (https://github.com/ruby/logger/pull/75)

    * Prefer Kernel#sprintf over String#% for formatting Strings

commit 7ab4820af7b39e12023ab3aee74cb7e66e97f786
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-12-08 12:28:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-08 12:28:18 +0900

    [ruby/logger] Only assign to `@filename` if the path is valid.
    (https://github.com/ruby/logger/pull/81)

    https://github.com/ruby/logger/commit/b41d7c699c

commit 2efaa80523054a50bbd21f079c5d4eb133053a60
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-08 12:21:59 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-08 12:22:02 +0900

    Don't sync jar artifact of CGI

commit 701251c57650a70d838caf5a11905fca12300546
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-12-08 12:21:25 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-08 12:21:40 +0900

    [ruby/logger] Drop RDoc development dependency to avoid CI failures.
    (https://github.com/ruby/logger/pull/82)

    https://github.com/ruby/logger/commit/8915627234

commit 9fce6014b52852265c6b34a04a20579b6242552e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-08 11:06:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-08 11:08:25 +0900

    [ruby/psych] Bump version to 5.0.1

    https://github.com/ruby/psych/commit/bdf20e6042

commit 645cd94d9a2383f973ae2fd83fef7024ae59c679
  Author:     Chris Seaton <chris.seaton@shopify.com>
  AuthorDate: 2022-12-08 10:09:30 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-08 10:09:30 +0900

    Add debug counters to RubyVM.stat (#6086)

    * Add debug counters to RubyVM.stat

    * Use SIZET2NUM

    Co-author: Nobuyoshi Nakada <nobu@ruby-lang.org>

    * Prefix debug_counter_names

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit a2d3f5606a241999feda113f7331cf1a637bcaf0
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-12-08 08:29:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-08 08:30:00 +0900

    [ruby/irb] Lazily load the multi-irb extension
    (https://github.com/ruby/irb/pull/472)

    * Lazily load the multi-irb extension

    We now have plan to implement a command that prints all commands'
    information, which will need to load all command files without actually
    running them.

    But because the `multi-irb` extension patches IRB's top-level methods,
    loading it would cause unintentional side-effects.

    So this commit moves related requires into command execution to avoid the problem.

    * Make extend_irb_context private

    Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>

commit 30c76f4d0d1b090a2ac4885f10f31d59d9c243df
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-12-08 06:46:59 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-08 06:46:59 +0900

    Update yjit.md

    Update citation, fix outdated and inaccurate information.

commit 9350c2b12f308e8a3676630460e3aa0ae38f8b47
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-12-08 05:02:45 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-08 05:02:45 +0900

    Update YJIT warning, mention need to install rustc (#6873)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 3bb7a401600d37b569a6da6a2be82bcd84eac37f
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-12-08 05:00:18 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-08 05:00:18 +0900

    Update NEWS.md

commit a89d856f2693007cceabcce07b1d60542ad9ddf9
  Author:     Aaron Patterson <aaron.patterson@gmail.com>
  AuthorDate: 2022-12-07 23:56:30 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-12-08 02:57:11 +0900

    Update spec/bundler/bundler/fetcher/compact_index_spec.rb

    Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6866

commit edc7af48acd12666a2945f30901d16b62a39f474
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-12-06 09:48:47 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-12-08 02:57:11 +0900

    Stop transitioning to UNDEF when undefining an instance variable

    Cases like this:

    ```ruby
    obj = Object.new
    loop do
      obj.instance_variable_set(:@foo, 1)
      obj.remove_instance_variable(:@foo)
    end
    ```

    can cause us to use many more shapes than we want (and even run out).
    This commit changes the code such that when an instance variable is
    removed, we'll walk up the shape tree, find the shape, then rebuild any
    child nodes that happened to be below the "targetted for removal" IV.

    This also requires moving any instance variables so that indexes derived
    from the shape tree will work correctly.

    Co-Authored-By: Jemma Issroff <jemmaissroff@gmail.com>
    Co-authored-by: John Hawthorn <jhawthorn@github.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6866

commit f725bf358a38b2d5dccb016a962f560baaee55c2
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2022-12-07 21:27:03 +0900
  Commit:     nagachika <nagachika@ruby-lang.org>
  CommitDate: 2022-12-07 21:27:36 +0900

    Fix a typo in NEWS.md. [ci-skip]

commit 01fd1c482e6ca08c7598c951e6929ba55b4a8228
  Author:     Ian Ker-Seymer <ian.kerseymer@shopify.com>
  AuthorDate: 2022-12-07 14:30:01 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-07 20:31:26 +0900

    [rubygems/rubygems] Remove remaining dev profile test

    https://github.com/rubygems/rubygems/commit/7d50e998b3

commit 88497b2167b88bb7e4f17cb5f2f74f8314d6d45d
  Author:     Ian Ker-Seymer <ian.kerseymer@shopify.com>
  AuthorDate: 2022-12-07 14:15:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-07 20:31:25 +0900

    [rubygems/rubygems] Better tests are better

    https://github.com/rubygems/rubygems/commit/17abb80c2c

commit ef50934721e86e4e02623959ee4a27ec53864dcc
  Author:     Ian Ker-Seymer <ian.kerseymer@shopify.com>
  AuthorDate: 2022-12-07 14:11:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-07 20:31:25 +0900

    [rubygems/rubygems] Fix string match in test

    https://github.com/rubygems/rubygems/commit/82554f2bfd

commit 554161236a263e47f6a2590bafbf9e7b59415736
  Author:     Ian Ker-Seymer <ian.kerseymer@shopify.com>
  AuthorDate: 2022-12-07 14:07:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-07 20:31:25 +0900

    [rubygems/rubygems] Always build in release mode

    https://github.com/rubygems/rubygems/commit/7b84fc1f19

commit 37d10caa0dbec950694cedea5c7924aef6b39f1f
  Author:     Ian Ker-Seymer <ian.kerseymer@shopify.com>
  AuthorDate: 2022-12-07 13:26:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-07 20:31:21 +0900

    [rubygems/rubygems] Updates rb-sys to 0.9.46

    https://github.com/rubygems/rubygems/commit/6c2e7aafd6

commit 58cc3c9f387dcf8f820b43e043b540fa06248da3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-07 13:08:40 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-07 19:19:54 +0900

    [Bug #19187] Fix for tzdata-2022g

commit 1968b4e2c7f9ae7a4d9f4bc6f7f6da0efc6afb75
  Author:     Jean Boussier <byroot@ruby-lang.org>
  AuthorDate: 2022-12-07 17:53:27 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-12-07 18:08:25 +0900

    Mention `rb_hash_new_capa` and `rb_internal_thread_*` in NEWS.md

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6871

commit bcd8b2f00aef8fdaa54f1d76ca841ae8d10e5e0f
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-07 12:31:00 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-07 12:32:29 +0900

    NEWS.md: Added some missing features

    Also, tool/update-NEWS-refs.rb is added to help the update of NEWS.md.

commit 65545c66086c0dfb36275d3014586281ec3ee27e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-07 16:45:49 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-07 16:46:16 +0900

    MJIT: Fix an assertion broken with --mjit-wait enabled

commit 17d45feeb6291c407e00b20a7f16ac472c7b1ef9
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-07 16:16:21 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-07 16:21:19 +0900

    MJIT: Refactor mjit_wait

commit 57cb4a817916637eaeb4732f56c5aa5b748a4349
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-07 16:01:30 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-07 16:05:00 +0900

    MJIT: Remove obsoleted MJIT counters

commit 12916e283fdeb87b84f09379c056614c6196615a
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-07 16:00:12 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-07 16:00:22 +0900

    MJIT: Use xfree for units

    now that we use ZALLOC_N for allocating units

commit 98c41dfe6f986ed0a0277d8b1379ed632ec1ce82
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-07 15:40:03 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-07 15:40:08 +0900

    MJIT: Just use ZALLOC_N in create_unit

    We no longer use an MJIT worker thread, so there's no need to avoid GC.

commit 7e20704000177c5863d97bbda7ca3ea160dafdd1
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-07 15:18:42 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-07 15:19:26 +0900

    MJIT: Remove an unused argument and unused counters

    I plan to rebuild MJIT metrics later, not using debug counters.

commit e6b63b382c30cb665d24853f745586a157ae58f3
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-07 14:27:46 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-07 14:36:58 +0900

    MJIT: Refactor the jit_func enum for MJIT

    All values should have a MJIT_ prefix. We could address the warning for
    the end mark if we just define the macro for the check next to the enum.
    It even simplifies some code for checking the enum.

commit 8684904cb418df3f6d15ea0b0ad5c7c357d7ef06
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-07 08:11:35 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-07 08:11:35 +0900

    NEWS.md: Explain the change of [Feature #18367]

commit 40a9964b893fee5680b455d0e905155be3360685
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-12-07 04:52:11 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-12-07 06:43:42 +0900

    Set max_iv_count (used for object shapes) based on inline caches

    With this change, we're storing the iv name on an inline cache on
    setinstancevariable instructions. This allows us to check the inline
    cache to count instance variables set in initialize and give us an
    estimate of iv capacity for an object.

    For the purpose of estimating the number of instance variables required
    for an object, we're assuming that all initialize methods will call
    `super`.

    This change allows us to estimate the number of instance variables
    required without disassembling instruction sequences.

    Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6870

commit 64cdf8bae7cd85bc2911b39074d5710616c7ec73
  Author:     Daniel Colson <danieljamescolson@gmail.com>
  AuthorDate: 2022-12-02 06:07:59 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-12-07 05:37:23 +0900

    Update dependencies

commit e69b91fae4602b69c5ef45fcf82932adde8b31d8
  Author:     Daniel Colson <danieljamescolson@gmail.com>
  AuthorDate: 2022-11-23 11:16:11 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-12-07 05:37:23 +0900

    Introduce BOP_CMP for optimized comparison

    Prior to this commit the `OPTIMIZED_CMP` macro relied on a method lookup
    to determine whether `<=>` was overridden. The result of the lookup was
    cached, but only for the duration of the specific method that
    initialized the cmp_opt_data cache structure.

    With this method lookup, `[x,y].max` is slower than doing `x > y ?
    x : y` even though there's an optimized instruction for "new array max".
    (John noticed somebody a proposed micro-optimization based on this fact
    in https://github.com/mastodon/mastodon/pull/19903.)

    ```rb
    a, b = 1, 2
    Benchmark.ips do |bm|
      bm.report('conditional') { a > b ? a : b }
      bm.report('method') { [a, b].max }
      bm.compare!
    end
    ```

    Before:

    ```
    Comparison:
             conditional: 22603733.2 i/s
                  method: 19820412.7 i/s - 1.14x  (± 0.00) slower
    ```

    This commit replaces the method lookup with a new CMP basic op, which
    gives the examples above equivalent performance.

    After:

    ```
    Comparison:
                  method: 24022466.5 i/s
             conditional: 23851094.2 i/s - same-ish: difference falls within
    error
    ```

    Relevant benchmarks show an improvement to Array#max and Array#min when
    not using the optimized newarray_max instruction as well. They are
    noticeably faster for small arrays with the relevant types, and the same
    or maybe a touch faster on larger arrays.

    ```
    $ make benchmark COMPARE_RUBY=<master@5958c305> ITEM=array_min
    $ make benchmark COMPARE_RUBY=<master@5958c305> ITEM=array_max
    ```

    The benchmarks added in this commit also look generally improved.

    Co-authored-by: John Hawthorn <jhawthorn@github.com>

commit c43951e60eed0b01f464cd25441b81751d2d5087
  Author:     Daniel Colson <danieljamescolson@gmail.com>
  AuthorDate: 2022-12-01 10:28:14 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-12-07 05:37:23 +0900

    Move BOP macros to separate file

    This commit moves ruby_basic_operators and the unredefined macros out of
    vm_core.h and into basic_operators.h so that we can use them more
    broadly in places where we currently use a method look up via
    `rb_method_basic_definition_p` (e.g. object.c, numeric.c, complex.c,
    enum.c, but also in internal/compar.h after introducing BOP_CMP and
    elsewhere if we introduce more BOPs)

    The most controversial part of this change is probably moving
    redefined_flag out of rb_vm_t. [vm_opt_method_def_table and
    vm_opt_mid_table](https://github.com/ruby/ruby/blob/9da2a5204f32a4f2ce135fddde2abb6e07d647e9/vm.c)
    are not part of rb_vm_t either, and I think this fits well with those.
    But more significantly it seems to result in one fewer instruction. For
    example:

    Before:

    ```
    (lldb) disassemble -n vm_opt_str_freeze
    miniruby`vm_exec_core:
    miniruby[0x10028233e] <+14558>: movq   0x11a86b(%rip), %rax      ; ruby_current_vm_ptr
    miniruby[0x100282345] <+14565>: testb  $0x4, 0x242c(%rax)
    ```

    After:

    ```
    (lldb) disassemble -n vm_opt_str_freeze
    ruby`vm_exec_core:
    ruby[0x100280ebe] <+14510>: testb  $0x4, 0x120147(%rip)      ; ruby_vm_redefined_flag + 43
    ```

    Co-authored-by: John Hawthorn <jhawthorn@github.com>

commit 9d4483f24deaf360dafe745a71211ec73dc7029a
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-06 23:25:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-06 23:27:15 +0900

    [ruby/net-http] [DOC] Fix call-seq for Net::HTTP.start

    The lack of a newline between the call-seq and the documentation was
    causing the documentation to be parsed as a call-seq.

    https://github.com/ruby/net-http/commit/1a212e2065

commit 87a1fb9ac306769d74edf7d99aa7860c1e8e07e5
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-12-06 18:23:54 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-12-06 18:23:54 +0900

    NEWS: `UnboundMethod#==`

commit 81e274c9907c9ddb8fbf8ad0c28cd2b39d6e1639
  Author:     Lars Kanis <lars@greiz-reinsdorf.de>
  AuthorDate: 2022-11-01 23:40:52 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-12-06 14:55:05 +0900

    [DOC] Improve documentation to RB_ALLOCV

    Although the storage of the opaque Ruby object is an array of VALUEs, the intention of RB_ALLOCV is to allocate bytes of memory.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6654

commit e9a0f45dc40d3539640739c1cc7e6c47abc02a2f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-06 11:06:15 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-06 11:06:15 +0900

    [Bug #19180] rbconfig.rb depends on common.mk

commit 68bb6bfc35e8971bde21dd2ed4fc5406d5dc5e7c
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-12-06 10:17:34 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-12-06 10:17:34 +0900

    update NEWS to mention Unicode version 15.0.0

commit e0487ec45e12044874473d6c4a05cc25a00d8afb
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-12-06 10:10:36 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-12-06 10:11:33 +0900

    update rbconfig spec to Unicode version 15.0.0

    (this includes emoji version 15.0)

commit 368b844874afe10d4a402baa15f1e3fd6cb14e16
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-12-06 10:01:24 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-12-06 10:11:33 +0900

    update Unicode include files to version 15.0.0

commit 66bf15636f26e84c644d38d4ce6a61a21d059706
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-12-06 09:50:31 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-12-06 10:11:33 +0900

    move Unicode include files to version 15.0.0 directory

commit 156069d7b6a44656e1155ba8f39dbda3be9d6724
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-12-06 09:41:36 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-12-06 10:11:33 +0900

    update Unicode normalization tables to version 15.0.0

commit ea532bd557e7579f82f1375cf9bcad5ade5fd6f8
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-12-06 09:38:06 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-12-06 10:11:33 +0900

    add file version check for new Unicode emoji file header

    The change in the Unicode emoji file header took place at
    version 14.0.0, but is needed only from version 15.0.0
    because in version 14.0.0, another check is still active.

commit f82a38be2616b190377877646fd91e3314626085
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-12-06 09:36:39 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-12-06 10:11:33 +0900

    change Unicode version to 15.0.0

commit 9aa18f61f297fcb2ee0cbd4be0772607745274b7
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-12-06 09:53:28 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-06 09:53:32 +0900

    [ruby/irb] Allow disabling autocompletion with
    `IRB_USE_AUTOCOMPLETE=false`
    (https://github.com/ruby/irb/pull/469)

    * Allow using IRB_USE_AUTOCOMPLETE=false to disable autocompletion

    Currently, the only 2 ways to disable autocompletion are:

    1. Create `.irbrc` and set `IRB.conf[:USE_AUTOCOMPLETE] = false`
    2. Add the `--noautocomplete` flag when using the `irb` executable

    Both of them are less convenient than setting a env var and are
    lesser known to devs.

    And given the number of problems the autocompletion has (see #445), I
    think we should allow disabling it with a simple `IRB_USE_AUTOCOMPLETE=false`.

    * Mention some env var configs in the README

commit e31d645da58abce67a0fb8b27251ee532adcfab5
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-12-06 08:52:54 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-12-06 08:58:30 +0900

    fix wrong property information in name2ctype.h

    See https://github.com/ruby/ruby/pull/6451 and
    https://bugs.ruby-lang.org/issues/19007.

    This keeps the Unicode version at 14.0.0, so this commit
    is suited for backporting where applicable.

    At the time of this commit, the reason for the wrong properties
    which we fix here is still not completely known, so issue 19007
    should be kept open.

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

commit b78fbfdbb44ee6979a647fcc5d3e7c1422a531bc
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-06 08:03:58 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-06 08:03:58 +0900

    Skip auto-request-review on fork repositories

commit 235fc50447c13b054d8849ef2fcdac55ef1f5f9c
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-06 07:43:17 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-06 07:43:17 +0900

    YJIT: Remove --yjit-code-page-size (#6865)

    Certain code page sizes don't work and can cause crashes, so having this
    value available as a command-line option is a bit dangerous. Remove it
    and turn it into a constant instead.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit e4aba8f519ca0b63fb3da11d6573443545aaef9b
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-12-06 04:59:07 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-12-06 07:33:16 +0900

    Add shape_id to heap dump

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6864

commit e7642d8095d7f597c322ed26797d649aec7edbd9
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-12-06 06:20:11 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-06 06:20:11 +0900

    YJIT: Extract SHAPE_ID_NUM_BITS into a constant (#6863)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 1602d75c34c39f6d2f5a505a6532c3664288ef06
  Author:     Matthew Boeh <m@mboeh.com>
  AuthorDate: 2022-12-05 22:16:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 22:16:33 +0900

    [ruby/did_you_mean] Do not suggest #name= for #name and vice versa
    (https://github.com/ruby/did_you_mean/pull/180)

    * Do not suggest #name= for #name and vice versa
    * Avoid allocating unnecessary MatchData

    Co-authored-by: Jean byroot Boussier <jean.boussier+github@shopify.com>
    Co-authored-by: Jean byroot Boussier <jean.boussier+github@shopify.com>

commit 74923aaf31ae49cd372f2fe54baa4115a20bfe76
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-05 19:31:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 21:03:57 +0900

    [ruby/irb] Close leaked pty IOs

    https://github.com/ruby/irb/commit/cc9b1d7ba8

commit fa865f5752d55c6fd2f88b81401c43de7317dbce
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 19:44:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 19:44:30 +0900

    [ruby/bigdecimal] Bump version to 3.1.3

    https://github.com/ruby/bigdecimal/commit/25a75c2033

commit 3fe5890f7b2edca1b5e25b1bf240bbbe90c0e867
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 19:29:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 19:29:44 +0900

    [ruby/did_you_mean] Bump version to 1.6.2

    https://github.com/ruby/did_you_mean/commit/f5b15128e2

commit 3f8dad0463e6d55f800dacb2ed55fa01182b2974
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 17:26:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 17:26:21 +0900

    [ruby/zlib] Bump version to 3.0.0

    https://github.com/ruby/zlib/commit/f1ce5e3e8d

commit 48644e71096c70132be9dfdcbfb414ec2e68d18b
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-12-04 15:34:55 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-12-05 17:24:17 +0900

    tool/runruby.rb: remove LD_PRELOAD-like env-var options from runruby.rb

    LD_PRELOAD sometimes forces loading libraries into unrelated
    executables. For example, macOS on recent Apple Silicon can execute
    arm64 and arm64e binaries by default, and /usr/bin/clang is built as
    arm64e. If Ruby is built as arm64, and mkmf launched through runruby.rb
    spawns /usr/bin/clang, dynamic loader tries to load libruby (arm64e)
    into clang (arm64). This force-load causes library load failure.
    In theory, we don't need both LD_PRELOAD and LD_LIBRARY_PATH at the same
    time, because executables requiring libruby already have libruby
    dependency, so LD_LIBRARY_PATH is enough for this case.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6857

commit 3396b10ff191a8ac7c4d0dfa051930ce55c53fcf
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 17:22:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 17:22:51 +0900

    [ruby/win32ole] Bump version to 1.8.9

    https://github.com/ruby/win32ole/commit/e4a1f3a2bf

commit b62b7dc705b347e9fdd0aa543a0a22dfa461c8c7
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 17:20:01 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 17:20:24 +0900

    [ruby/uri] Bump version to 0.12.0

    https://github.com/ruby/uri/commit/72f22716f8

commit 3fe8907b84d6df75590f273ebd79b417a9543e57
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 17:18:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 17:18:33 +0900

    [ruby/un] Bump version to 0.2.1

    https://github.com/ruby/un/commit/8f1c78e27c

commit eca80901200f96e50b174dcb69af468016eb7968
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 17:16:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 17:16:29 +0900

    [ruby/tsort] Bump version to 0.1.1

    https://github.com/ruby/tsort/commit/dd71002c65

commit 325ac80c21d9da96b314d1e5b0cb1dc55034878a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 17:14:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 17:15:11 +0900

    [ruby/tmpdir] Bump version to 0.1.3

    https://github.com/ruby/tmpdir/commit/ee99c758fd

commit 3909cfaa02f96976e2734948e356001345c133be
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 17:12:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 17:13:18 +0900

    [ruby/timeout] Bump version to 0.3.1

    https://github.com/ruby/timeout/commit/4941e8c871

commit 30379e33c3f5fdac0692ed56cf3cf90aa31a3d3a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-09-01 16:13:18 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-05 17:09:49 +0900

    Handle depend files on nmake

commit facb5cd4d5405dafabe0bd150f5dc56dc73aa96a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-07-08 17:28:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-05 17:09:49 +0900

    Clean compiler intermediate files more

commit faafb7b74027213b59e7cfbd4de969a654b27022
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 17:03:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 17:03:29 +0900

    [ruby/stringio] Revert "Bump version to 3.0.4"

    This reverts commit https://github.com/ruby/stringio/commit/aeb7e1a0bde6.

    https://github.com/ruby/stringio/commit/003dd0d003

commit 95e272baf801aa081569729c5bc518e7ac46b829
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 17:01:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 17:02:25 +0900

    [ruby/stringio] Bump version to 3.0.4

    https://github.com/ruby/stringio/commit/aeb7e1a0bd

commit f5355df6102fbfb4f6f3391448518c7398958a50
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 16:51:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 16:51:34 +0900

    [ruby/securerandom] Bump version to 0.2.1

    https://github.com/ruby/securerandom/commit/5bfe7d6c16

commit 52c76d0f692c3be8670bcbe1c7791575f4a0389b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 16:48:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 16:49:03 +0900

    [ruby/resolv] Bump version to 0.2.2

    https://github.com/ruby/resolv/commit/261f049058

commit 40ee1eea76f91af9387a8d3b55c57340905db05e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 16:43:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 16:44:39 +0900

    [ruby/psych] Bump version to 5.0.0

    https://github.com/ruby/psych/commit/4fed0941b9

commit 73404e8f1233bdeb6cbe5b80acf3f0144dbaf192
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 16:37:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 16:38:23 +0900

    [ruby/pstore] Bump version to 0.1.2

    https://github.com/ruby/pstore/commit/2d95c19c43

commit 7a7d1b38537356aa5d1dd6ed85f00de11751e9a3
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 16:21:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 16:35:19 +0900

    [ruby/pp] Bump version to 0.4.0

    https://github.com/ruby/pp/commit/8870aa02df

commit 0d5ad44ac3565e780076c8cc4b8b2c1fe55027cb
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 16:19:14 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-05 16:33:43 +0900

    [ruby/pathname] Bump version to 0.2.1

    https://github.com/ruby/pathname/commit/7e796cc78e

commit 71b4d355266ae4ae3c2bf05b5882edbdbce1abfc
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 16:17:01 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 16:17:23 +0900

    [ruby/optparse] Bump version to 0.3.0

    https://github.com/ruby/optparse/commit/c80dfb1ebd

commit c5911408f905fdd90f6b93026adc5a45b26e5bb0
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 16:13:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 16:14:06 +0900

    [ruby/open-uri] Bump version to 0.3.0

    https://github.com/ruby/open-uri/commit/783892ebb0

commit 04311008b6fcb32d3a9512b644acc6b74e4d07cd
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-12-05 15:52:45 +0900
  Commit:     Shugo Maeda <shugo@ruby-lang.org>
  CommitDate: 2022-12-05 15:54:21 +0900

    Use loc to fix a failure of test_ast.rb

    ```
        1) Failure:
      TestAst#test_ranges:test/fiber/scheduler.rb [/home/runner/work/ruby/ruby/src/test/ruby/test_ast.rb:122]:
      <[]> expected but was
      <[{:type=>:max_validation_error,
        :max=>
         #<RubyVM::AbstractSyntaxTree::Node::CodePosition:0x00007f80d630b598
          @column=20,
          @lineno=203>,
        :end_pos=>
         #<RubyVM::AbstractSyntaxTree::Node::CodePosition:0x00007f80d630b778
          @column=19,
          @lineno=203>,
        :node=>
         (BLOCK_PASS@203:15-203:19
            (ARGSPUSH@203:15-203:20 (SPLAT@203:16-203:19 (LVAR@203:16-203:19 :*))
               (HASH@203:16-203:19
                  (LIST@203:16-203:19 nil (LVAR@203:16-203:19 :**) nil)))
            (LVAR@203:16-203:19 :&))}]>.
    ```

commit ccb41a0a362bb6e203939a23e1f353a526989c89
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 15:51:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 15:51:37 +0900

    [ruby/nkf] Bump version to 0.1.2

    https://github.com/ruby/nkf/commit/98607bd2be

commit ad970f54742c3275e407baa8d5777c373b44cfb9
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 15:46:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 15:46:33 +0900

    [ruby/net-protocol] Bump version to 0.2.0

    https://github.com/ruby/net-protocol/commit/3097bb4cc3

commit 9e114338b97c1b063b26b378f0eff8d215e8ff06
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 15:42:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 15:42:56 +0900

    [ruby/net-http] Bump version to 0.3.1

    https://github.com/ruby/net-http/commit/09a9ea163a

commit 826adbc963912ea705f131320585aaab8873abfc
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 15:39:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 15:39:55 +0900

    [ruby/mutex_m] Bump version to 0.1.2

    https://github.com/ruby/mutex_m/commit/57f23978cd

commit 8a5dffe513a0b5bd8264b4b19a80c7dc1184c3cb
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 15:36:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 15:36:31 +0900

    [ruby/logger] Bump version to 1.5.2

    https://github.com/ruby/logger/commit/9c4ae3b81d

commit 51cfe70135045536b442648e691e84db7e39b3fb
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 15:31:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 15:32:03 +0900

    [ruby/ipaddr] Bump version to 1.2.5

    https://github.com/ruby/ipaddr/commit/d92acb3982

commit 8c596369e8e308672a34031378e2d445aed61436
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 15:21:44 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 15:22:15 +0900

    [ruby/io-nonblock] Bump version to 0.2.0

    https://github.com/ruby/io-nonblock/commit/46c0ec245e

commit 519c31e48cfea27bbe4cdfa489f288d68d9aa419
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 15:19:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 15:19:25 +0900

    [ruby/getoptlong] Bump version to 0.2.0

    https://github.com/ruby/getoptlong/commit/71fbf2123f

commit f41d38a6fb778980fc4476067bc81d05ab2c7694
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 15:15:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 15:15:38 +0900

    [ruby/forwardable] Bump version to 1.3.3

    https://github.com/ruby/forwardable/commit/301687dbfa

commit 05caafb4731c796890027cafedaac59dc108a23a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 15:12:08 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 15:12:31 +0900

    [ruby/fileutils] Bump version to 1.7.0

    https://github.com/ruby/fileutils/commit/213e6a3d1f

commit 2649055c98fe2b221c50866c3d75e7dccbeddadc
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-12-05 15:09:19 +0900
  Commit:     Shugo Maeda <shugo@ruby-lang.org>
  CommitDate: 2022-12-05 15:10:15 +0900

    Should use argsloc for the last argument for arg_append()

commit f6dad3954469b0051286237bd6bb4b19d6d914a7
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 15:09:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 15:09:41 +0900

    [ruby/fcntl] Bump version to 1.0.2

    https://github.com/ruby/fcntl/commit/20fd776303

commit a0deb649098979ec1c7349080a32415be6185de1
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 15:05:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 15:07:32 +0900

    [ruby/etc] Bump version to 1.4.1

    https://github.com/ruby/etc/commit/b3e9d9ceb0

commit 3cfb7afbfec492ba5ec2f7f50775bd134816c3cb
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 14:59:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 14:59:33 +0900

    [ruby/drb] Bump version to 2.1.1

    https://github.com/ruby/drb/commit/7c2d56e9f3

commit fcbafe7f4a22417f20b327a22696df9daceb00da
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 14:56:28 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 14:56:58 +0900

    [ruby/digest] Bump version to 3.1.1

    https://github.com/ruby/digest/commit/fad16582ea

commit c4d22d47f8bd019ae6df98fafb9db7c20c33d30c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 14:46:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 14:47:54 +0900

    [ruby/delegate] Bump version to 0.3.0

    https://github.com/ruby/delegate/commit/420637be45

commit 650b87b0bdbeb351be185604465cbe302082089e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 14:40:27 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-05 14:40:32 +0900

    Manually bumped date-3.3.0 version

commit 774dad4915c4f4c8e315d5cb6b4051861f61fedd
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 14:18:53 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 14:19:16 +0900

    [ruby/date] Bump version to 3.3.0

    https://github.com/ruby/date/commit/ac1642cf39

commit 0f534bfb6ae03247620beb871c93256b7ad78e78
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 14:12:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 14:15:02 +0900

    [ruby/benchmark] Bump version to 0.2.1

    https://github.com/ruby/benchmark/commit/303ac8f28b

commit 4d39a11cd1a0e45eb38de70b930fab15c504d26d
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-05 14:04:36 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-05 14:04:50 +0900

    Change the dependabot interval to monthly

    It's not that important for ruby/ruby to keep them up to date.

commit d7b00b55a91583610cf5ceac162d6579064126a1
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 13:59:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 13:59:54 +0900

    [ruby/rdoc] Bump version to 6.5.0

    https://github.com/ruby/rdoc/commit/c5e7ee03ac

commit 5fb3dec05868f9513b15d0b0a9c81d4d17459c89
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 13:55:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 13:55:35 +0900

    [ruby/racc] Bump version to 1.6.1

    https://github.com/ruby/racc/commit/1768ed252f

commit 16b2e0301411531a6ced6c673a1f9bd41d7b7e3e
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-12-04 20:16:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 12:14:55 +0900

    [ruby/reline] Remove unapproved color setting APIs

    These APIs/configs are not approved by the Ruby core, so they can't be
    released to the public. This means having them in the codebase will
    block other fixes/features from being released as well.

    So this commit removes those exposed interfaces to unblock the release.

    Hopefully when https://bugs.ruby-lang.org/issues/18996 is approved we
    can re-implement better APIs.

    https://github.com/ruby/reline/commit/f7a961c550

commit 06cc30b1898d7536f7024b9d4c7f22ec6a967c15
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-05 11:22:48 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-05 11:22:48 +0900

    gitignore yjit_exit_locations.dump

commit d90835aeb54c635d99a3ba199605d062109a54ed
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-12-05 05:23:09 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-12-05 05:23:09 +0900

    Fix crash when RGENGC_CHECK_MODE=2

    Commit dba61f4 fixes a crash when GC'ing a iseq that failed to compile.
    However, if we turn on RGENGC_CHECK_MODE then rb_iseq_memsize crashes
    since it cannot handle an iseq without is_entries.

commit e58c4f97fa45206172a19803bfb2270b9a5bc010
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-12-05 05:22:25 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-05 05:22:31 +0900

    [ruby/net-http] [DOC] Enhanced RDoc for Net::HTTP
    (https://github.com/ruby/net-http/pull/84)

    https://github.com/ruby/net-http/commit/660046386f

commit dba61f487cd7c1555f1187a2e2846506c1b143be
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-12-03 00:44:10 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-12-04 04:03:51 +0900

    return early if there is no is_entries buffer

    If there is a compilation error, is_entries may not be allocated, but
    ic_size could be greater than 0.  If we don't have a buffer to iterate
    over, just return early.  Otherwise GC could segv

    [Bug #19173]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6853

commit b8a73e704ddc77db36317dda293e99fb0ee641f4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-04 00:31:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-04 00:53:20 +0900

    [ruby/pathname] [Misc #19155] [DOC] Addition of absolute paths

    https://github.com/ruby/pathname/commit/3cb5ed2576

commit 59e389af2893c0fcf8b2cfa008c9a16825bf56ff
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-12-03 05:55:33 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-12-03 08:53:12 +0900

    UnboundMethod only refer defined_class

    UnboundMethod records caller's class, like `D` or `E` on the
    following case:

    ```ruby
    class C
      def foo = :foo
    end

    class D < C
    end

    class E < C
    end

    d = D.instance_method(:foo)
    e = E.instance_method(:foo)
    ```

    But `d` and `e` only refers `C#foo` so that UnboundMethod doesn't
    record `D` or `E`. This behavior changes the following methods:

    * `UnboundMethod#inspect` (doesn't show caller's class)
    * `UnboundMethod#==` (`d == e` for example)

    fix https://bugs.ruby-lang.org/issues/18798

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6855

commit 7161bf34e161979b97dbc0c1f7450c195faffcfe
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-12-03 07:00:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-03 07:00:42 +0900

    [ruby/irb] Require pathname in test helper
    (https://github.com/ruby/irb/pull/467)

    https://github.com/ruby/irb/commit/39c6924c12

commit 41bacd9b0d0a2cec497b0b81c0d5916c5e98e96f
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-12-03 03:41:06 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-03 05:53:51 +0900

    Remove unused rb_shape_flag_shift and rb_shape_flag_mask

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6767

commit ebd4c7bb01860735779e90fbaa53f7e4ab78ff6e
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-12-03 02:45:25 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-03 05:53:51 +0900

    Fixed yjit bindings rb_gc_write_barrier

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6767

commit 4c5e89791b2e5e168aadb949c90f804736a472bd
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-12-03 02:33:20 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-03 05:53:51 +0900

    Extracted rb_shape_id_offset

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6767

commit 606653e43a8207e15d6c3b450754d2a8bd349fc9
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-12-03 01:37:02 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-03 05:53:51 +0900

    Update yjit/src/codegen.rs

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6767

commit be40af284a03d09e0197daed1c26f098c92d7d2d
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-19 06:13:32 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-03 05:53:51 +0900

    make flag clearing better

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6767

commit 07fe3d37c5a27629bbddb98c6c7af73054a47754
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-18 08:17:01 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-03 05:53:51 +0900

    only generate wb when we really need to

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6767

commit 744b0527eacb6f1d76c225c720c1a3ed23185ad4
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-17 09:31:14 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-03 05:53:51 +0900

    bail on compilation if the comptime receiver is frozen

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6767

commit 7b5ee9a8a60bb4d8cdc68aab9795109e766dbc96
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-17 09:15:43 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-03 05:53:51 +0900

    do not fire the wb when writing immediates

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6767

commit 17f9bcd7d77c0d9fdd4be605f0791f3f03fd6caf
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-17 08:37:57 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-03 05:53:51 +0900

    implement IV writes

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6767

commit 69fd673b1a22039c7414a5eb4046d3bf54a0c750
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-12-03 05:43:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-03 05:43:59 +0900

    [ruby/irb] Disable debug cmd tests based on project structure
    instead of env
    (https://github.com/ruby/irb/pull/466)

    It's hard to find an env var that's universally set in all Ruby CI
    environments but not in local. Checking gemspec seems to be a better way
    as `syntax_suggest` already uses it for a while.

    https://github.com/ruby/syntax_suggest/blob/d8f1bca297a392b80b5d167e2be07cf6ac4feae3/spec/spec_helper.rb#L47

commit e9e624b76e1f1b2c8dd5d4a6eea7e55ab491822e
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-12-03 05:33:47 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-03 05:33:47 +0900

    YJIT: check that we correctly auto-enable YJIT on Linux (#6854)

    * YJIT: check that we correctly auto-enable YJIT on Linux

    YJIT should be automatically built on Linux x86-64 when
    rustc is present, and we should see +YJIT in the version string.

    * Use miniruby rather than system ruby

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 82b86b4c97963d25c4e8ba12aab327d47c1f5861
  Author:     Ellen Marie Dash <me@duckie.co>
  AuthorDate: 2022-07-01 09:28:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-03 04:21:08 +0900

    [rubygems/rubygems] Delete partial file and re-raise on Errno::ENOSPC.

    Add test for not leaving empty files if ENOSPC is raised during 'gem install'

    https://github.com/rubygems/rubygems/commit/8e0e20f079

commit 5fafff15c606dd4ad323cc9a9c75776ab9536d54
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-03 03:48:50 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-03 03:49:56 +0900

    Do not run drb SSL tests on Windows

    These tests often cause a timeout and this issue seems specific to the
    Windows platforms.
    https://github.com/ruby/ruby/actions/runs/3603761925/jobs/6072346738

commit 7b38853bc37a312b0543d402b334d4cc67be5aed
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-03 03:26:54 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-03 03:26:54 +0900

    Skip another flaky Ractor test for YJIT

commit 85f041c0c5cb3edf2bd062aa19020bde3b4cbc44
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-03 03:18:49 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-03 03:18:50 +0900

    Skip a couple of Ractor tests

    Koichi plans to rework Ractor implementation to address these failures.
    He agreed to skip flaky Ractor tests for now.

commit 1015e69d37b8e75145a3d21e4bd54fa538d1fa68
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-03 02:24:17 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-03 02:24:17 +0900

    YJIT: echo "\n" is not portable

    It's unspecified by POSIX. zsh and dash give a newline and
    bash doesn't substitute it. Attributes don't have to be
    followed by a newline anyway, so just remove it.

    [Bug #19174]

commit 6f3c8fdab46872ccece3bf512adac95b64e29111
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-12-03 00:03:37 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-12-03 02:23:28 +0900

    debug.gem v1.7.0

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6852

commit a5dde619a4d8c9280d5ea1a79d8de858d074a85f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-03 02:01:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-03 02:03:57 +0900

    Fix up "Avoid bash specific variable substitution"

    Keep `target_alias` empty if it is set to empty.  If it is set to non
    empty, `os_version_style_transform` is not used.

commit c2671fa0513c49c874810677f347d727c4ed4502
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-03 01:37:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-03 02:03:23 +0900

    downloader.rb: Select less components path

commit eb2b717a8bfc18f8ee53ff3d738bcfd3960f8fa4
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-03 01:40:16 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-03 01:40:16 +0900

    YJIT: Make case-when optimization respect === redefinition (#6846)

    * YJIT: Make case-when optimization respect === redefinition

    Even when a fixnum key is in the dispatch hash, if there is a case such
    that its basic operations for === is redefined, we need to fall back to
    checking each case like the interpreter. Semantically we're always
    checking each case by calling === in order, it's just that this is not
    observable when basic operations are intact.

    When all the keys are fixnums, though, we can do the optimization we're
    doing right now. Check for this condition.

    * Update yjit/src/cruby_bindings.inc.rs

    Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>

    Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit fa77bcf7220a5515323a53a8320132418124f202
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-03 01:32:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-03 01:32:49 +0900

    YJIT: Change the default --yjit-call-threshold to 30 (#6850)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit e558c374b7975f9923228cdf325f767eef97a725
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-03 01:28:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-03 01:28:34 +0900

    downloader.rb: Fix link to absolute cache path

commit bb0ec7df3220de317f719d1e8b5aa45bd40dad25
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-02 23:44:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-02 23:46:21 +0900

    Wait killed threads

commit eb6785356d5c5775f26a49ae1138fdb0214ec509
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-01 13:49:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-02 23:45:43 +0900

    Avoid bash specific variable substitution

    It may cause parse errors in some other sh even in never executed
    parts.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6844

commit 11871e49c4fe493d6b958046969bc863f7fb6627
  Author:     HASUMI Hitoshi <hasumikin@gmail.com>
  AuthorDate: 2022-11-29 10:06:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-02 19:47:18 +0900

    [ruby/reline] Fix misuse of kwarg in IO#raw

    - Obviously, `tim` is a typo for `time`
    - This didn't cause an exception because IO#raw is implemented in C and it doesn't check the keyword of the parameters
    - Though this typo doesn't produce any problems for now, I think it should be fixed just in case for the future
    - I've used this fixed version of Reline with IRB for several days and didn't find any new problems due to the fix
    - But I myself am not sure how to make sure this fix is completely robust

    https://github.com/ruby/reline/commit/e66a9696a1

commit 21ed929e157f1b859534de421a9e3641a2ec22c8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-02 18:43:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-02 19:33:36 +0900

    [ruby/io-console] Omit on JRuby

    https://github.com/ruby/io-console/commit/9122c181eb

commit 678bcfcaa686c0b3125c856a3fc53186126c7554
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-02 17:39:30 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-02 19:33:35 +0900

    [ruby/io-console] Check rawmode option names strictly

    https://github.com/ruby/io-console/commit/aa8fc7e947

commit 7390eb43fe1bfb069af80ba8f73f7dc4999df0fd
  Author:     Jean Boussier <byroot@ruby-lang.org>
  AuthorDate: 2022-11-29 18:39:56 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-12-02 17:53:57 +0900

    io.c (read_all): grow the buffer exponentially when size is unknown

    [Feature #6047]

    Currently it's grown by `BUFSIZ` (1024) on every iteration which is bit wasteful.
    Instead we can double the capacity whenever there is less than `BUFSIZ` capacity
    left.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6829

commit 07ac707758395749611e1028ef18127087d198db
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-02 16:55:55 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-02 16:56:02 +0900

    MJIT: Use install = true for bundler/inline

    It prints a `bundle install`-like output, which seems more useful than
    a silent output.

commit f01bfa8af7e4d163e411d133da7ef170f1b33988
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-02 16:40:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-02 16:41:18 +0900

    [ruby/irb] This doesn't work on RubyCI either

    http://rubyci.s3.amazonaws.com/rhel_zlinux/ruby-master/log/20221202T063302Z.fail.html.gz
    http://rubyci.s3.amazonaws.com/openbsd-current/ruby-master/log/20221202T053006Z.fail.html.gz
    http://rubyci.s3.amazonaws.com/freebsd12/ruby-master/log/20221202T063002Z.fail.html.gz
    http://rubyci.s3.amazonaws.com/osx1013/ruby-master/log/20221202T054503Z.fail.html.gz

    https://github.com/ruby/irb/commit/13c2484d59

commit ad4eab1a8ccacf7dc79a73407978a5591062f057
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-02 16:20:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-02 16:20:43 +0900

    Wait killed thread

commit 4fa47eabf21f3a13bb614cf8a63708f05decb710
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-12-02 13:49:42 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-02 13:49:42 +0900

    Clarify the storage argument. (#6849)

    * Slightly more consistent indentation with other parts of the document.

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 7e3b42d008de3c69c9e6bc1d127f28d91c0e88a9
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-02 13:42:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-02 13:43:36 +0900

    [ruby/irb] Skip debug command tests on ruby/ruby

    Stan has said these tests could be excluded if they don't work on
    ruby/ruby CI.

    https://github.com/ruby/irb/commit/11e779ecb7

commit bc3ac86795877b752c082230e561f547e682e951
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-28 14:52:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-02 13:12:16 +0900

    [rubygems/rubygems] require bundler/setup only when Bundler is not defined

    ... to prevent "circular require" when `--disable-gems` is used.

    This is a simplified case of https://github.com/ruby/ruby/commit/e5a0abc5dedfd011986b16e8f8cf5cda476984c9

    ```
    $ bundle exec ruby -we 'system("ruby", "-w", "--disable-gems", "-e", "")'
    <internal:/home/mame/work/ruby/local/lib/ruby/3.2.0+3/rubygems/core_ext/kernel_require.rb>:85: warning: <internal:/home/mame/work/ruby/local/lib/ruby/3.2.0+3/rubygems/core_ext/kernel_require.rb>:85: warning: loading in progress, circular require considered harmful - /home/mame/work/ruby/local/lib/ruby/3.2.0+3/bundler/setup.rb
    ```

    When bundler/setup is require'ed under --disable-gems mode, it loads
    rubygems by `require "rubygems" unless defined?(Gem)` in
    https://github.com/rubygems/rubygems/blob/0b1f682a6d65e57b86ba4853cba23cac361c769d/bundler/lib/bundler/rubygems_integration.rb#L3
    In this case, require'ing bundler/setup from rubygems.rb is circular.

    This change makes rubygems.rb to require "bundler/setup" only when
    `Bundler` is not defined.

    https://github.com/rubygems/rubygems/commit/b4608dee5e

commit b6c66ead9da8e4a8a0aeed0eece056d74273b6d9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-02 12:08:25 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-02 12:14:51 +0900

    [ruby/irb] Use the proper ruby command and library path

    https://github.com/ruby/irb/commit/1416cc1871

commit d55d1a737bf5784856cd35f2d94b7b5d411e6d3c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-02 10:34:00 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-02 10:34:00 +0900

    Skip examples for SyntaxError extensions on Ruby 3.2

commit 8abf9e6ad0390e384ab47243ed4ece62a4d9cea0
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-12-02 10:05:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-02 10:05:22 +0900

    [ruby/irb] Test debug commands without yamatanooroti
    (https://github.com/ruby/irb/pull/464)

    * Add debug command tests that don't require yamatanooroti

    * Remove debug command related yamatanooroti tests

    As discussed in https://github.com/ruby/irb/pull/449#pullrequestreview-1187255149,
    we should avoid adding new tests that need yamatanooroti because it's
    not maintained by the Ruby org. And since debug commands are now tested
    in `test/irb/test_debug_cmd.rb`, we don't need these tests anymore.

    * Test against latest debug gem

    https://github.com/ruby/irb/commit/78a8aa8834

commit 85a1c67a6550641e5de96cdbee1713be3f1e8882
  Author:     schneems <richard.schneeman+foo@gmail.com>
  AuthorDate: 2022-12-02 04:27:59 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-02 09:36:40 +0900

    [ruby/syntax_suggest] Add temp support for 3.2.0-preview{3,2,1}

    This SyntaxError#path feature only exists in Ruby HEAD. Until it is released in a preview I want to continue to support existing releases of 3.2.0 (and also so CI will continue to work, as it still uses a preview version to execute tests).

    https://github.com/ruby/syntax_suggest/commit/9862032465

commit 652e2d8f5d0e0210a4ef3cb541504433dbae57b3
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-12-01 19:45:09 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-12-02 09:36:39 +0900

    [ruby/syntax_suggest] No longer need PathnameFromMessage with SyntaxError#path.

      https://bugs.ruby-lang.org/issues/19138

      Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

    https://github.com/ruby/syntax_suggest/commit/8e1e7b3298

commit def258e77544409df507c0fa153cf40e84d65082
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-12-02 04:51:18 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-12-02 09:31:54 +0900

    Improve packing of iseq_constant_body struct

    By moving the two bools into a packing gap above the mark_bits
    pointer/union we can save 8 bytes in the struct and avoid an extra cache
    line (328 bytes vs 320 bytes).

    Co-authored-by: Adam Hess <HParker@github.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6847

commit dcbea7671be74a328f115c6410980f54c872c478
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-02 09:13:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-02 09:13:38 +0900

    YJIT: Respect destination num_bits on STUR (#6848)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 8ffa8fc192f4c4005fd2216108ee82876b4165cb
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-02 08:37:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-12-02 08:37:41 +0900

    Relax the timeout of a YAML test

    https://cirrus-ci.com/task/4752663775019008

commit f0cf70c84065f0780f9bd251688c56da2ecede28
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-11-24 07:01:03 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-12-02 08:37:15 +0900

    Add a macro for SHAPE_DEBUG

    Like before, default to VM_CHECK_MODE > 0, but this allows just enabling
    shape debug helpers without the rest of VM_CHECK_MODE.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6800

commit da204d2eee51082854ff6ec89eacea2911ea1590
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-11-23 07:28:22 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-12-02 08:37:15 +0900

    Inherit max_iv_count from superclass

    In 274870bd5434ab64ac3a3c9db9aa27d262c1d6d6 we gained the ability to
    make an educated guess at the max_iv_count of a class based on its
    initialize method. This commit makes subclasses inherit their super's
    max_iv_count, which makes the estimate work in cases that the subclass
    does not have an initialize method.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6800

commit 171e94bd953b381b2d19e56cf04eadac436f7a31
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-12-02 08:17:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-02 08:17:47 +0900

    [ruby/net-http] [DOC] Enhanced RDoc for Net::HTTPHeader
    (https://github.com/ruby/net-http/pull/83)

    https://github.com/ruby/net-http/commit/1ea5004098

commit 3d272b0fc822f5c2e9c716377b7fcecf15426b27
  Author:     Jean byroot Boussier <jean.boussier+github@shopify.com>
  AuthorDate: 2022-12-02 07:32:41 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-02 07:32:41 +0900

    Module#remove_method: Check frozen on the right object

    Previously, the frozen check happened on `RCLASS_ORIGIN(self)`, which
    can return an iclass. The frozen check is supposed to respond to objects
    that users can call methods on while iclasses are hidden from users.
    Other mutation methods like Module#{define_method,alias_method,public}
    don't do this. Check frozen status on the module itself.

    Fixes [Bug #19164] and [Bug #19166].

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6842

    Merged-By: XrXr

commit 9da2a5204f32a4f2ce135fddde2abb6e07d647e9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-02 01:50:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-02 01:50:48 +0900

    [Bug #19087] Merge to "trailing garbage" case

commit c94cd8534afad86c75f2c7b4f4a2ab4ea2dc4837
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-02 01:47:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-02 01:47:30 +0900

    [Bug #19087] Fix an assertion of `String#to_c`

commit c0dc717c45fc3abc64a337c3481bc4555b675d87
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-28 19:28:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-02 01:35:45 +0900

    [Bug #19087] Disallow successive underscores in Complex string

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6645

commit 914cf26d6e65307910854723964e75edaa748377
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-11-27 21:17:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-02 01:31:27 +0900

    parenthesize to macro

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6700

commit 1a64d45c67feed7355d6b53746801acb319394a4
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-11-15 13:21:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-02 01:31:27 +0900

    Introduce encoding check macro

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6700

commit 7bc63d6f430422535f4dd460a98f3a90578e524c
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-11-04 19:06:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-02 01:30:01 +0900

    Introduce argf_encoding function

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6672

commit 040e0c8d671f86b20e2b929b4077fcc74aa55074
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-11-22 21:49:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-02 01:19:55 +0900

    Reuse NIL_OR_UNDEF_P macro

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6787

commit 2c939458cab06b4fda09b55a57b8bac30efe6b17
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-02 00:59:56 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-02 00:59:56 +0900

    YJIT: Reorder branches for Fixnum opt_case_dispatch (#6841)

    * YJIT: Reorder branches for Fixnum opt_case_dispatch

    Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>

    * YJIT: Don't support too large values

    Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 5872fd6f6cc5ddde33df94fb11e773eeb653e55e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-01 22:50:25 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-02 00:56:52 +0900

    [Feature #19163] Marshal-loaded Data object also should be frozen

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6843

commit a14a1a5626a4d8e661a3e606f8f92b8c455b9a04
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-01 17:26:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-02 00:56:52 +0900

    [Feature #19163] Data object should be frozen

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6843

commit 06a0c580161db7084e8276fcd9fbb5d25bde4a03
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-12-02 00:53:50 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-02 00:53:50 +0900

    YJIT: fix 32 and 16 bit register store (#6840)

    * Fix 32 and 16 bit register store in YJIT

    Co-Authored-By: Takashi Kokubun <takashikkbn@gmail.com>

    * Remove an unnecessary diff

    * Reuse an rm_num_bits result

    * Use u16::MAX instead

    * Update the link

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

    * Just use sturh for 16 bits

    Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>
    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 0436f1e15a8e79ffef5ea412ac1312cbf9f063e6
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-12-01 19:00:33 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-01 19:00:33 +0900

    Introduce `Fiber#storage` for inheritable fiber-scoped variables. (#6612)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 9869bd1d612b489df806cf95bcb56965a02424e0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-22 14:25:44 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-01 17:38:33 +0900

    [Bug #19108] Check for the encoding of pack/unpack format

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6785

commit a1d341efaf0b357e7aad3700ed7551559b4fcdf8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-12-01 14:11:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-12-01 17:08:02 +0900

    [ruby/delegate] Revert "Fix `DelegateClass` block "method redefined" warning"

    https://github.com/ruby/delegate/commit/2a91436284

commit 4e68b594314760611d0926c3de70a4cad26802cd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-20 22:59:52 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-01 17:05:41 +0900

    [Feature #19138] Add `SyntaxError#path`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6779

commit 5752d11f1f33d277356373da749db111e03c96b5
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-12-01 05:04:31 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-12-01 06:27:39 +0900

    Use RTEST and add test for GH-6832

    Technically we shouldn't see Qfalse now, but RTEST also compiles down to
    just one branch anyways. Pretty contrived issue, but easy to fix.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6832

commit 4b9d10b8330b5072993f2c32eaf701c5c1aa7e55
  Author:     Zack Deveau <zack.ref@gmail.com>
  AuthorDate: 2022-11-30 04:40:43 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-12-01 06:27:39 +0900

    struct.c (struct_ivar_get): add conditional for potential Qnil returned by rb_class_superclass

    struct_ivar_get recently started using rb_class_superclass to
    resolve super instead of RCLASS_SUPER. This change made
    Qnil a possible case we need to return from within the
    struct_ivar_get for loop.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6832

commit 0d3fc08ff46cdfa389170db6141f1747d5d9d283
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-12-01 06:16:11 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-01 06:16:11 +0900

    YJIT: Optimize rb_int_equal (#6838)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit d98d84b75dab450070ff3dc7154661a9941fb44d
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-12-01 04:09:10 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-12-01 04:09:10 +0900

    YJIT: add new counters for deferred compilation and queued blocks (#6837)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit ab4c7077cc44cd6725625562b7380a44cf462190
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-12-01 01:31:24 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-12-01 02:38:51 +0900

    Prevent segfault in String#scan with ObjectSpace.each_object

    Calling `String#scan` without a block creates an incomplete MatchData
    object whose `RMATCH(match)->str` is Qfalse. Usually this object is not
    leaked, but it was possible to pull it by using ObjectSpace.each_object.

    This change hides the internal MatchData object by using rb_obj_hide.

    Fixes [Bug #19159]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6836

commit f0c9d2a0c801569725459420acefc8d983bbf307
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-30 23:04:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-01 02:36:20 +0900

    [ruby/rdoc] Fix `=end` delimiter

    https://github.com/ruby/rdoc/commit/e1679fa7e4

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6835

commit 99cad3fccdb9e7a66ff4c8231d43dafa336b2687
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-30 22:59:15 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-01 02:36:20 +0900

    [ruby/rdoc] Non-RD part feature has not been imported to RDoc

    https://github.com/ruby/rdoc/commit/fe0159de2f

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6835

commit c87b3ee671581594b60ae7cac05a053b1c12f3b9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-30 22:44:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-01 02:36:20 +0900

    [ruby/rdoc] Use Tempfile

    https://github.com/ruby/rdoc/commit/0b9dde5ab4

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6835

commit d752cf7601adbe4bc2dc658effc2f61563a7dfb7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-25 14:22:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-12-01 02:28:49 +0900

    Use class methods of `File` over `Kernel.open` and `IO.read`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6834

commit a0b0365e905e1ac51998ace7e6fc723406a2f157
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-30 06:14:13 +0900
  Commit:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  CommitDate: 2022-12-01 02:23:50 +0900

    YJIT: Deallocate `struct Block` to plug memory leaks

    Previously we essentially never freed block even after invalidation.
    Their reference count never reached zero for a couple of reasons:
    1. `Branch::block` formed a cycle with the block holding the branch
    2. Strong count on a branch that has ever contained a stub never
       reached 0 because we increment the `.clone()` call for
       `BranchRef::into_raw()` didn't have a matching decrement.

    It's not safe to immediately deallocate blocks during
    invalidation since `branch_stub_hit()` can end up
    running with a branch pointer from an invalidated branch.
    To plug the leaks, we wait until code GC or global invalidation and
    deallocate the blocks for iseqs that are definitely not running.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6833

commit b30248f74a8f6ce37a78f07597c7c5452ff50abd
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-30 05:41:25 +0900
  Commit:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  CommitDate: 2022-12-01 02:23:50 +0900

    YJIT: Deallocate when assumptions tables are empty

    When we run global invalidation for TracePoints or code GC, we clear out
    all blocks in our assumptions table but we don't deallocate the backing
    buffers. Let's reclaim some memory during these rare events.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6833

commit 03f1e6a2aa8aa1d5aef79a33a243372a457f0fa2
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-30 05:37:29 +0900
  Commit:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  CommitDate: 2022-12-01 02:23:50 +0900

    YJIT: Fix IseqPayload::pages memory bloat

    HashSet::clear() doesn't deallocate the backing buffer and shrink the
    capacity. Replace with a 0-capcity set instead so we reclaim some memory
    each code GC.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6833

commit d532d27507678daa400e1e0ed3da3c014cd38f27
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-30 19:11:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-30 19:18:57 +0900

    [ruby/irb] Use class methods of `File` over `Kernel.open`

    https://github.com/ruby/irb/commit/e0ec5e1bd8

commit cf3b305c43b81161c2c9bdfba48823ecf7e41c6c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-30 19:06:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-30 19:09:17 +0900

    [ruby/un] wait_writable: close opened file

    https://github.com/ruby/un/commit/b08aeb9c48

commit c8bfbbc25e4bc7c3ff59fae40471923a2793ba48
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-30 17:20:38 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-30 17:20:38 +0900

    Removed documentation for incomplete option about [Feature #17134]

commit d0c0d7fa5b2725dfcc98eac3348527a2924a9120
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-30 15:35:17 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-30 15:35:26 +0900

    MJIT: Revert FL_EXIVAR check optimization

    It seems to slow down optcarrot. I'll revisit this later.

commit a1d70f5b120478d11151dc0e2cd554f38574953b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-30 14:42:35 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-30 14:45:34 +0900

    MJIT: Rename mjit_compile_attr to mjit_sp_inc

    There's no mjit_compile.inc, so no need to use this prefix anymore.

commit 7a2b1364ef5889497e7c203f644610f346bdd80a
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-30 14:32:16 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-30 14:34:46 +0900

    MJIT: Merge mjit_unit.h into mjit_c.h

    The distinction doesn't make much difference today.

commit ecc15bc94afc574b6f06478a8625d6364db5c7a9
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-30 14:19:36 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-30 14:26:59 +0900

    MJIT: Rename mjit_compiler.c to mjit_c.c

    It's no longer about the compiler logic itself.

commit 9a84971315f39e3fabd382fd35728eb254333fe2
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-30 13:52:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-30 13:52:33 +0900

    [ruby/irb] Make sure ls doesn't return an array
    (https://github.com/ruby/irb/pull/461)

    https://github.com/ruby/irb/commit/367797bb05

commit d6e91784ab78c25e864869b05a149e7c9cfeab7d
  Author:     schneems <richard.schneeman+foo@gmail.com>
  AuthorDate: 2022-11-30 05:09:20 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-30 12:58:47 +0900

    Update SyntaxSuggest to use angle brackets `>`


    ```
    $ ruby tool/sync_default_gems.rb syntax_suggest
    Sync ruby/syntax_suggest
    ```

    https://github.com/ruby/syntax_suggest/pull/161

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6831

commit 33a9a7fd8d22ea5d87789e64a931dd03d28d9407
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-30 11:35:44 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-30 11:35:44 +0900

    Mention Exception#detailed_message in NEWS.md

commit 4e13f5b579576c3f23f0b10a808d22766ed192b9
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-30 11:33:33 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-30 11:34:02 +0900

    Mention Regexp.timeout= in NEWS.md

commit bbed2269bcc898096cc6a0aa66bb0e76a5ae2794
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-30 05:46:21 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-30 05:46:26 +0900

    Fix unused variable warnings

    builtin seems to be not handling this correctly.

commit 3e4d1a1dd1c78e8e9cd18d0a39b6846d79f90d6e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-30 00:09:32 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-30 00:09:32 +0900

    YJIT: Skip checking interrupt_mask (#6825)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 67ae3e97388bc9083cb3cc2f22ba8abc28d6fda3
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-11-29 11:42:53 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-11-29 18:23:00 +0900

    Add a test case for argument forwarding

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6828

commit ed4b5c4f21d50609d1e895449f50462c293b2a9d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-27 20:14:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-29 18:12:43 +0900

    Extract outdate-bundled-gems.rb

commit 8e3ac264df55ed7903f4f9519b353ca182eea81f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-27 18:19:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-29 18:12:43 +0900

    Fix dependencies of outdate-bundled-gems

    Extract new gems then remove outdated gem directories.

commit aacaa2ec5e13d7d678b58208bf3d6c0551f251cd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-27 01:12:06 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-29 18:12:43 +0900

    Refine outdate-bundled-gems

commit f19deef323609e46a732edaa983e7bfed16582c0
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-29 17:33:49 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-29 17:47:25 +0900

    MJIT: Move Primitive helpers to mjit_c.rb

commit 27f34eeb5a95263f8669e6998247d83606c3763f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-29 17:21:27 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-29 17:23:51 +0900

    MJIT: Self-contain extern declarations

    I'm trying to get rid of mjit_compiler.c, and this helps that migration.

commit 8a0acbea4cf7be4bfaf329d077b2b4c9a2ad425b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-29 17:12:29 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-29 17:12:33 +0900

    MJIT: Refactor CDHASH handling

    Converting a CDHASH into a safe Hash is a lot of work, but retrieving
    just values is much easier.

commit 44165df121f13ef7b148b8ba4aa08386a24c4df5
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-29 16:53:26 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-29 16:53:33 +0900

    MJIT: Cache an ISeq pointer instance

    to obviate one rb_funcall. This also removes rb_ptr as refactoring.

commit 2329cbeb5bf7c7e8720cd4512285e6784c41367e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-29 16:32:24 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-29 16:32:27 +0900

    MJIT: Merge exivar guards as well

    obviating status->merge_ivar_guards_p as refactoring

commit 322e546f60e3a66b9af6aa1b8c7006369932ce27
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-29 15:46:00 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-29 15:46:20 +0900

    MJIT: Remove an unused field

    This has not been used since recent shape-related changes.

commit 8be62f06c8e583578aa3b8ffc4bf02e3273248df
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-11-28 18:54:16 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-11-29 15:39:56 +0900

    Remove ruby2_keywords related to args forwarding

    This was introduced by b609bdeb5307e280137b4b2838af0fe4e4b46f1c
    to suppress warnings. However these warngins were deleted by
    beae6cbf0fd8b6619e5212552de98022d4c4d4d4. Therefore these codes
    are not needed anymore.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6826

commit bb6f933d51ae4c663a1d768508fc840c56be07a3
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-29 14:59:00 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-29 15:03:16 +0900

    MJIT: Get rid of is_entries copy

    MJIT worker no longer exists, so we don't need this safeguard anymore.

commit 9c13fc614c2de0ca4aa8b6ecdd84033ef689b542
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-29 14:33:55 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-29 14:33:55 +0900

    MJIT: Make it parsable by Solargraph (#6827)

    * Revert "Revert "MJIT: Make it parsable by Solargraph""

    This reverts commit 8e18761da1932df88bfb6505acbda4740e1b2930.

    * Call rb_gc_register_mark_object

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit acb76663ba20241e7c2552aafae8b1d883520b9a
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-29 14:22:02 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-29 14:23:14 +0900

    MJIT: Rename mjit_compiler.h to mjit_c.h

    because it exists primarily for generating mjit_c.rb.

commit 74bdf09215da3c9f1eb31feea3666359acbce527
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-11-29 14:17:03 +0900
  Commit:     Shugo Maeda <shugo@ruby-lang.org>
  CommitDate: 2022-11-29 14:18:16 +0900

    Add tests for [Feature #19134]

    https://bugs.ruby-lang.org/issues/19134?next_issue_id=19133&prev_issue_id=19135#note-4

commit 4f8c6711ddb09bb9d0dcbf784e2cdec81c7d427e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-29 13:57:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-29 13:58:29 +0900

    [ruby/erb] Version 4.0.2

    https://github.com/ruby/erb/commit/8c8ff1551b

commit 129d208f9a5d54faf2eb4d944bc874fe347bfd64
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-29 13:55:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-29 13:56:03 +0900

    [ruby/erb] Fix line numbers after multi-line <%#
    (https://github.com/ruby/erb/pull/42)

    https://github.com/ruby/erb/commit/526885923e

commit b5726892d0d9bf282d54e21e8f170f754c235456
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-11-29 10:31:44 +0900
  Commit:     Shugo Maeda <shugo.maeda@gmail.com>
  CommitDate: 2022-11-29 11:22:09 +0900

    Use rbs HEAD for [Feature #19134]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6818

commit a0e4dc52b0ba4a6707cad04ea926dab6cae8ed0f
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-11-28 17:27:27 +0900
  Commit:     Shugo Maeda <shugo.maeda@gmail.com>
  CommitDate: 2022-11-29 11:22:09 +0900

    Use idFWD_* instead of ANON_*_ID

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6818

commit 4fc668a4f3b9b67cc7566096ab55cab34c67c158
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-11-28 10:40:08 +0900
  Commit:     Shugo Maeda <shugo.maeda@gmail.com>
  CommitDate: 2022-11-29 11:22:09 +0900

    Allow ** in def foo(...)

    [Feature #19134]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6818

commit ee49fe5d34c1498a532bbaeaf4c12b162d0df78f
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-11-29 08:33:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-29 08:33:15 +0900

    [ruby/net-http] Enhanced RDoc for header Range
    (https://github.com/ruby/net-http/pull/82)

    https://github.com/ruby/net-http/commit/a26f62a2e5

commit 579c8cb01c7e2192b9741103c54d9064ad01247b
  Author:     moenodedev <113457600+moenodedev@users.noreply.github.com>
  AuthorDate: 2022-11-29 05:33:00 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-29 08:20:59 +0900

    [rubygems/rubygems] Remove pointer to RVM documentation

    https://github.com/rubygems/rubygems/commit/7467019d87

commit 8a74361b41810b5fda74c573810fa1712c4a7841
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-11-29 06:45:42 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-29 06:45:42 +0900

    Update yjit.md to mention `RUBY_YJIT_ENABLE`

commit d13de3a62eddb3a706597f7be975e32e5beb3583
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-29 03:44:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-29 03:44:36 +0900

    [ruby/irb] Version 1.5.1

    https://github.com/ruby/irb/commit/f9507923fa

commit c5279db75f3e00b5c7df4d16bc38f6446f394260
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-29 03:42:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-29 03:42:59 +0900

    [ruby/irb] Fix the debug.gem force-loader for Ruby 3.2
    (https://github.com/ruby/irb/pull/458)

    * Fix the debug.gem force-loader for Ruby 3.2

    * Support 1.7.0dev format as well

commit f3ad68dd161da60bb4f4908974839bb2b5736a85
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-29 01:14:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-29 01:20:40 +0900

    [ruby/optparse] Fix the test failure in ruby/ruby

    ```
    $ make test-all TESTS=test/optparse/
    ...

    [148/178] TestOptionParserDidYouMean#test_raise_unknown = 0.00 s
      1) Failure:
    TestOptionParserDidYouMean#test_raise_unknown [/home/mame/work/ruby/test/optparse/test_optparse.rb:106]:
    <["--bar"]> expected but was
    <[]>.
    ```

    In the old test/unit (bundled in ruby/ruby), when a test class inherits from
    another test class, the child class runs all the tests defined in the parent
    class.
    However, it looks like the new test/unit does not do so. This is because the
    test failure does not occur in ruby/optparse.

    As a tentative solution, this changes the option names in TestOptionParser to
    avoid the name conflict with TestOptionParserDidYouMean.

    https://github.com/ruby/optparse/commit/fee86ef7a4

commit 0bfb185654b13237b874dc00d5719e695416b711
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-30 00:36:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-28 23:24:06 +0900

    [ruby/optparse] Add `raise_unknown` flag
    (https://github.com/ruby/optparse/pull/38)

    https://github.com/ruby/optparse/commit/12529653cd

commit 476700c06f8e54025387f793e17e0522c3f05e16
  Author:     schneems <richard.schneeman+foo@gmail.com>
  AuthorDate: 2022-11-26 07:29:19 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-28 20:55:42 +0900

    [ruby/syntax_suggest] v1.0.0

    https://github.com/ruby/syntax_suggest/commit/f142fcbf96

commit f64ba0fadd97adbd7cb8171fc8aa010b829a7185
  Author:     schneems <richard.schneeman+foo@gmail.com>
  AuthorDate: 2022-11-26 07:26:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-28 20:55:41 +0900

    [ruby/syntax_suggest] Do not output "Syntax OK" when there's an error

    Due to a problem with ripper we do not recognize `break` as invalid code. It's confusing that "Syntax OK" is output in that case.

    When there's no syntax error, the algorithm should not say anything. The exception is in the CLI and that's for compatibility with `ruby -wc`

    ```
    $ cat /tmp/break.rb
    break
    ⛄️ 3.1.2 🚀 /Users/rschneeman/Documents/projects/syntax_suggest (schneems/no-syntax-not-okay-break)
    $ ruby -wc /tmp/break.rb
    Syntax OK
    ```

    > Note that this is invalid, running this code will raise a Syntax error.

    ```
    $ exe/syntax_suggest /tmp/break.rb
    Syntax OK
    ```

    Close https://github.com/ruby/syntax_suggest/pull/157

    https://github.com/ruby/syntax_suggest/commit/d7bd8f03a2

commit 4d51a0b495262073a8c1c0c9d7f276c4e6260688
  Author:     schneems <richard.schneeman+foo@gmail.com>
  AuthorDate: 2022-11-26 07:12:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-28 20:55:41 +0900

    [ruby/syntax_suggest] Failing test for #157

    https://github.com/ruby/syntax_suggest/commit/14e8cdc916

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6824

commit ee11090b280e21304a23511714f41f4057e59605
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-28 19:37:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-28 20:55:09 +0900

    sync_default_gems.rb: move default_branch to REPOSITORIES

    `sync_default_gems_with_commits` also needs the default branch.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6823

commit 6559ba3b5ca5d376736ac3e682d76838e0a05483
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-28 19:28:50 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-28 20:55:09 +0900

    sync_default_gems.rb: suppress a duplicated range warning

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6823

commit 8bac8772df7d202ce290a8e056a680fd5b8c9d23
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-28 16:50:41 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-28 18:28:31 +0900

    Added permission restrictions for GitHub actions

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6821

commit 906a2f067dfc806b7412c7cd79bb7462fc8c7827
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-28 17:13:39 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-28 17:17:06 +0900

    sync_default_gems.rb: extend for singleton methods

commit 8e18761da1932df88bfb6505acbda4740e1b2930
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 17:13:09 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 17:13:23 +0900

    Revert "MJIT: Make it parsable by Solargraph"

    This reverts commit ccd8dd6ad395bbd9f5290e0fcb7929e5e5d36767.

    Revert "MJIT: Fix miniruby with MJIT_FORCE_ENABLE"

    This reverts commit b033775ed9d9226ba73c1d4a197e55ba89575142.

    GitHub Actions is failing. I ran out of time today to investigate it.
    will try it again tomorrow.

commit b033775ed9d9226ba73c1d4a197e55ba89575142
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 16:58:04 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 16:58:50 +0900

    MJIT: Fix miniruby with MJIT_FORCE_ENABLE

commit ccd8dd6ad395bbd9f5290e0fcb7929e5e5d36767
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 16:40:41 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 16:46:59 +0900

    MJIT: Make it parsable by Solargraph

commit 93e87c0217a20dff53dfc576de913620021f83e6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-28 14:50:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-28 16:30:40 +0900

    Fix the case of multiple trailers

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6820

commit 5a171ee4c05c0ed20ac4b4632e54b23717d5fe16
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-28 14:49:40 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-28 16:30:40 +0900

    Add tests for sync_default_gems.rb

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6820

commit 1d1200555faa22683b7d2436f77c00f55044bba1
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 16:05:56 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 16:06:29 +0900

    MJIT: Avoid hanging on mjit_wait with a JIT failure

commit 168b0e1f025a3c8927bbf548cc4631862fe22d29
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 15:48:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 15:48:19 +0900

    Make the timeout of test_system_sigpipe longer

    https://github.com/ruby/ruby/actions/runs/3562236318/jobs/5983796689

commit 2c1c0d3df033da6745aa0f828a704bb46a535fbc
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 15:23:35 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 15:47:46 +0900

    MJIT: Get rid of C.fprintf

    Faster code generation and cleaner code.

commit 87e7b640ebb6002236e601d09347850fab5858df
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 15:14:48 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 15:14:48 +0900

    Suppress warnings again

commit 880e8fd1f94c0eac213a274cb20d95674fb29f2d
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 14:48:13 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 14:48:32 +0900

    Relax a too strict timeout

    Regexp tests are flaky.
    http://rubyci.s3.amazonaws.com/s390x/ruby-master/log/20221128T050004Z.fail.html.gz

commit a22c684c5940210515d295684e016cd834b2b53f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 14:41:53 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 14:44:28 +0900

    MJIT: Refactor invokebuiltin_delegate_leave

    You shouldn't assume bf->compiler is always non-zero. While struct
    aref/aset is no longer a builtin function since
    https://github.com/ruby/ruby/pull/5131, it seems like you could still
    load such an iseq binary.

    The refactored code fallbacks to compile_insn_default correctly when
    bf->compiler is zero.

commit 6844bcc6b4cdc50def1c0d30d4e8b5045fb43443
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 08:15:52 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 14:11:33 +0900

    MJIT: Use a String buffer in builtin compilers

    instead of FILE*.

    Using C.fprintf is slower than String manipulation on memory. I'm going
    to change the way MJIT writes files, and this is a prerequisite for it.

commit 6d26f78f684607a39249882ea686a231f8768bd5
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 08:42:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 14:04:41 +0900

    MJIT: Clear .cache/clangd on bindgen if exists

commit b335d899fff3cc22b022c9ee2ceb636d714bf1a7
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-28 13:39:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-28 13:40:26 +0900

    [ruby/cgi] Bump up 0.3.6

    https://github.com/ruby/cgi/commit/827b7d43cc

commit e0901f46b7c62acb2cbc9b05ee5753baeb37b82d
  Author:     Sven Riedel <sriedel@users.noreply.github.com>
  AuthorDate: 2022-11-28 13:36:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-28 13:36:29 +0900

    [ruby/rdoc] Add `--no-skipping-tests` option

    https://github.com/ruby/rdoc/commit/33925f885f

commit 745dcf5326ea2c8e2047a3bddeb0fbb7e7d07649
  Author:     Xenor Chang <tubaxenor@gmail.com>
  AuthorDate: 2022-11-28 13:34:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-28 13:34:11 +0900

    [ruby/cgi] Loosen the domain regex to accept '.'
    (https://github.com/ruby/cgi/pull/29)

    * Loosen the domain regex to accept '.'

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

    https://github.com/ruby/cgi/commit/5e09d632f3
    Co-authored-by: Hiroshi SHIBATA <hsbt@ruby-lang.org>

commit 98074a57ca9f3169fe9da9af6c49b636d37db16f
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-28 12:34:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-28 12:34:42 +0900

    [ruby/cgi] Prepare to release 0.3.6

    https://github.com/ruby/cgi/commit/710a647855

commit 1a744417f26837f3f90402688c344aec6d60aa61
  Author:     Soutaro Matsumoto <matsumoto@soutaro.com>
  AuthorDate: 2022-11-28 12:31:17 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-28 12:31:17 +0900

    Bundle RBS 2.8.1 (#6819)

    Update `bundled_gems` to bundle RBS 2.8.1

  Notes:
    Merged-By: soutaro <matsumoto@soutaro.com>

commit 0096d99effc4b0a9c2209d6c1312aadab8a5a79c
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-11-28 11:57:48 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-28 11:57:48 +0900

    Update bundled gems list at 2022-11-28

commit 595f3063f01ce25122b6d1ae452720b0ec58e86d
  Author:     StepSecurity Bot <bot@stepsecurity.io>
  AuthorDate: 2022-11-25 20:14:05 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-28 11:42:40 +0900

    [StepSecurity] ci: Harden GitHub Actions

    Signed-off-by: StepSecurity Bot <bot@stepsecurity.io>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6811

commit e3de7230434d5c78cc06d40893b5d7cf41e7e89c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 07:50:10 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 07:50:20 +0900

    MJIT: Move some private declarations

    and clean up legacy comments for the Ruby migration

commit 2a6dfb1cbbe0a5c3026a84ccc9170071c6465a14
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 06:43:43 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 07:16:29 +0900

    Synchronously run the MJIT compiler in the parent

    process. Completely isolating the MJIT compilation process complicates a
    lot of things for ensuring consistency before and after the fork.

    Just running this synchronously makes things a lot easier, for example
    the race condition of capture_cc_entries could be fixed by this patch
    alone. Hopefully, the bottleneck is the C compiler and not this Ruby
    code. Also, this change doesn't negatively impact MJIT's final numbers
    on yjit-bench while "1st itr" is degraded for sure.

commit f93ae96b0e24a4e6101245d07d2d5c95769fe23e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 06:32:39 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 06:34:10 +0900

    Disable test-all on MJIT CI for now

    https://github.com/ruby/ruby/actions/runs/3560006749/jobs/5979749144

commit 62476dd268a829ba81bd3703c3360ccc5a7463fd
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 06:12:29 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 06:12:34 +0900

    Test only --mjit-wait for now

    We've disabled MJIT CI on GitHub Actions for a while. It's convenient
    that fork repositories need to see failures or disable it.

    We should remove unused CI by default instead of silently disabling it.
    Since I saw --mjit-wait passed on my fork, I'd like to try running
    --mjit-wait one.

commit 03b96319b48f3bd1ae5cbebd0f1b6b3b1ac5bb32
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-28 06:02:42 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-28 06:02:43 +0900

    Skip a broken RDoc test

    http://ci.rvm.jp/results/trunk-yjit@phosphorus-docker/4309535
    http://ci.rvm.jp/results/trunk-random0@phosphorus-docker/4309536
    http://ci.rvm.jp/results/trunk-random1@phosphorus-docker/4309538
    http://ci.rvm.jp/results/trunk-random2@phosphorus-docker/4309541
    http://ci.rvm.jp/results/trunk-random3@phosphorus-docker/4309544
    http://ci.rvm.jp/results/trunk-no-mjit@phosphorus-docker/4309550
    http://ci.rvm.jp/results/trunk-yjit@phosphorus-docker/4309556
    http://ci.rvm.jp/results/trunk-random0@phosphorus-docker/4309562
    http://ci.rvm.jp/results/trunk-random1@phosphorus-docker/4309564
    http://ci.rvm.jp/results/trunk-random2@phosphorus-docker/4309567
    http://ci.rvm.jp/results/trunk-random3@phosphorus-docker/4309570
    http://rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20221127T200003Z.fail.html.gz
    http://ci.rvm.jp/results/trunk-random-repeat@phosphorus-docker/4309581
    http://rubyci.s3.amazonaws.com/freebsd12/ruby-master/log/20221127T203002Z.fail.html.gz
    http://ci.rvm.jp/results/trunk-yjit@phosphorus-docker/4309588

commit 5b1db79129a74156f0c95372bb39f53088a8d596
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-28 04:19:01 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-28 04:46:12 +0900

    [ruby/rdoc] Revert "Refactor `RDoc::Markup::Parser#tokenize`"

    This reverts commit https://github.com/ruby/rdoc/commit/41ceae93b3bc.

    https://github.com/ruby/rdoc/commit/5d2c47e8b8

commit 21977b95e238da08ee2dc50fe5a908f11feb130c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-05 20:07:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-28 02:24:38 +0900

    [ruby/rdoc] Refactor `RDoc::Markup::Parser#tokenize`

    Make verbatims text or newline only, and simplify `build_verbatim`.

    https://github.com/ruby/rdoc/commit/41ceae93b3

commit 29862ce27303107935de6df4f85dd7fd610f19e2
  Author:     nick evans <nicholas.evans@gmail.com>
  AuthorDate: 2022-11-17 04:11:08 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-28 02:24:17 +0900

    [ruby/rdoc] Darkfish: group method call-seq in div.method-header

    This way, custom CSS styles can be easily applied to the entire method
    header at once.  Otherwise, it can be tricky to make a border that goes
    around the entire set of method call-seq, but not the method
    description.

    https://github.com/ruby/rdoc/commit/5db4bce01e

commit ae3817bc61cb320524f153e82eb5eee752188a12
  Author:     nick evans <nicholas.evans@gmail.com>
  AuthorDate: 2022-11-17 04:07:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-28 02:18:16 +0900

    [ruby/rdoc] Darkfish: Nest sidebar ToC as a tree of headings

    This uses `<details><summary>heading</summary><ul>nested</ul></detail>`,
    similar to how the classes and pages lists are now nested.

    https://github.com/ruby/rdoc/commit/e57beff287

commit 511864d1a7188f78f8a7ec93a5fe3f406bb6899f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-09 00:10:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-28 01:35:08 +0900

    [ruby/rdoc] Refine regexp usages and reduce substring allocations

    https://github.com/ruby/rdoc/commit/a976fb9d39

commit 1b67c58f41a9387d762afffa09c27ced8245c0f6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-08 23:48:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-28 01:35:07 +0900

    [ruby/rdoc] Pull up handle_tab_width to RDoc::Parser

    To share with the duplicate code in RDoc::Parser::Ruby#initialize.

    https://github.com/ruby/rdoc/commit/27829ac119

commit 6fdc677186b646f8f011411f827c2fa6a50b33bd
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-27 15:32:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-27 15:32:58 +0900

    [ruby/erb] Version 4.0.1

    https://github.com/ruby/erb/commit/3bb67009dd

commit d2c62426e5f5a53fd17e07e789a92994be4351ed
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-27 15:30:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-27 15:30:48 +0900

    [ruby/erb] Skip using the extension for truffleruby as well
    (https://github.com/ruby/erb/pull/39)

    * Skip using the extension for truffleruby as well

    * Just skip building the C extension for TruffleRuby

    * Skip rake compile for truffleruby

    * Use resolve_feature_path

    * Revert "Use resolve_feature_path"

    This reverts commit https://github.com/ruby/erb/commit/acc1e0c0ffaf.

    * Use resolve_feature_path with LoadError guard

    https://github.com/ruby/erb/commit/85dcb08439

commit ec76c9868b9b707aa657b59b8bb9e737c7ff91e7
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-11-27 15:09:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-27 15:09:50 +0900

    [ruby/irb] Activate yamatanooroti tests on CI
    (https://github.com/ruby/irb/pull/459)

    * Activate yamatanooroti tests on CI

    * Fix delete test

    https://github.com/ruby/irb/commit/750cf4c480

commit b55da1cd97c579d65f9a2bad8d638278563008be
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-11-27 09:21:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-27 09:21:49 +0900

    [ruby/net-http] [DOC] Enhanced RDoc for Net::HTTPHeader

    https://github.com/ruby/net-http/commit/77c6878970

commit 73e42ef856840187966c78e73e6994506677a1cf
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-27 08:38:43 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-27 08:39:53 +0900

    MJIT: Remove a duplicated rescue

    `#compile` has a catch-call rescue, so compile_insn_entry shouldn't do
    that. It was a temporary code needed during the migration.

commit b2dcde839d824ba30590ce0a8ab8a2fe281fdeb9
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-27 08:10:58 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-27 08:31:38 +0900

    MJIT: Merge mjit_compiler.rb into mjit.rb

    There are too many mjit_compiler.* files. It was hard to find files.

commit de9e2a5ac7b4ef52a03b1b6a3b07708f11d8d11c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-27 06:06:05 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-27 06:06:05 +0900

    [ruby/net-http] Fix test for Ruby head

    The error raised for broken coderanges was changed in ruby/ruby@571d21f
    and the test was fixed in that commit but not ported to this repo.

    ruby/net-http@e6185dda26ea6db7a3515d4f47ab231f5f4ac902

commit 3853385377525258881d35850a42473ce69c8e47
  Author:     Soutaro Matsumoto <matsumoto@soutaro.com>
  AuthorDate: 2022-11-26 15:44:56 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-26 15:44:56 +0900

    Update bundled_gems (#6813)

    * Update bundled_gems

  Notes:
    Merged-By: soutaro <matsumoto@soutaro.com>

commit 534bac04e71efcbb9f4dc877f490b92e7b4ba2aa
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-26 15:04:41 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-26 15:05:23 +0900

    [ruby/erb] Version 4.0.0

    https://github.com/ruby/erb/commit/2809a54d88

commit 29bf5495a9ecb2b70cd1fc9008e1b861e982ab72
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-26 14:45:27 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-26 14:45:28 +0900

    Do not use the same variable for multiple things

    `conv` proc is used before and after the `url` variable is updated. So
    this script didn't seem to behave correctly for the "Close #xxx" syntax.

    Reusing the same variable name for different things seems prone to errors.

commit 95647378ffdaa0ceb09595430b43534d3a7f3452
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-26 14:41:36 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-26 14:44:21 +0900

    Support other GitHub PR/issue syntaxes

    https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue

commit 7cf94a611fbb4252498990a4277894dda33532f3
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-26 14:36:40 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-26 14:36:40 +0900

    Allow an arbitrary number of newlines

commit 574896a0ce99ab00676aa5ff2fabd3dcf8d49154
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-26 14:32:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-26 14:32:25 +0900

    [ruby/erb] Define ERB::Escape module
    (https://github.com/ruby/erb/pull/38)

    Close #32

commit d0bb24c497ceae01cc7b7698365982303e3ea24d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-26 12:53:10 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-26 13:12:10 +0900

    [DOC] Fix loose and tight lists

    The MarkDown parser of RDoc does not allow mixing loose and tight
    lists, and the results may be very unexpected otherwise.

commit 19fdc9cac2d21a28598764302b7a87478555bef2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-26 12:52:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-26 13:12:10 +0900

    [DOC] Fix indents of nested bullet lists

commit ac4d00df824215d4b85d36cef75c76543fead33e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-26 08:49:52 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-26 08:55:19 +0900

    MJIT: Change default --mjit-max-cache back to 100

    These days we benchmark MJIT using yjit-bench. The warmup duration in
    yjit-bench is very short, so compiling many methods comes at a cost even
    while it's actually optimal for MJIT to compile everything / tens of
    thousands of methods once it reaches the peak performance.

    yjit-bench doesn't necessarily represent the peak performance on production.
    It measures the performance of Ruby 30~60s after boot. If your JIT takes
    more than 1 minute to warm up, there's no way for the JIT to make the numbers
    good on yjit-bench.

    Until we make MJIT's compilation much faster, we don't afford compiling
    10,000 methods on yjit-bench.

    This change alone makes MJIT's benchmark number on railsbench 2x better :p

commit 3c16f33ffdfb96bfdd45bc6067175dcd2eb3f090
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-26 08:27:09 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-26 08:27:27 +0900

    MJIT: Refactor source_shape_id extraction

    I'm not comfortable indenting code that deeply.

commit 89a98ee1e1008588962ab444cee7d51fa46ebcf0
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-26 08:23:42 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-26 08:23:43 +0900

    MJIT: Remove obsoleted variable

    no longer used after 4ea9d7d7c223ff92365c4a013fc1bd073d67a3a5

commit 4ea9d7d7c223ff92365c4a013fc1bd073d67a3a5
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-26 08:16:13 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-26 08:18:34 +0900

    MJIT: Remove the code to optimize shape transition

    because this code crashes on railsbench. I'll try adding a repro for it
    later, but I don't know shapes enough to craft it right away.

commit 1d64a5a7c09d1029508b6b3cb3d04e5a939bc8f8
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-26 03:13:09 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-11-26 07:15:24 +0900

    YJIT: Run test-all tests without requiring RUN_OPTS

    Most tests in test_yjit.rb use a sub process, so we can run them even
    when the parent process is not running with YJIT. Run them so simply
    running `make check` tests YJIT a bit.

    [Misc #19149]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6814

commit 790cf4b6d0475614afb127b416e87cfa39044d67
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-18 07:33:18 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-11-26 06:21:40 +0900

    Fix autoload status of statically linked extensions

    Previously, for statically-linked extensions, we used
    `vm->loading_table` to delay calling the init function until the
    extensions are required. This caused the extensions to look like they
    are in the middle of being loaded even before they're required.
    (`rb_feature_p()` returned true with a loading path output.) Combined
    with autoload, queries like `defined?(CONST)` and `Module#autoload?`
    were confused by this and returned nil incorrectly. RubyGems uses
    `defined?` to detect if OpenSSL is available and failed when OpenSSL was
    available in builds using `--with-static-linked-ext`.

    Use a dedicated table for the init functions instead of adding them to
    the loading table. This lets us remove some logic from non-EXTSTATIC
    builds.

    [Bug #19115]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6756

commit e15cd01149afe4924460f81cb6e27dd96de06657
  Author:     StepSecurity Bot <bot@stepsecurity.io>
  AuthorDate: 2022-11-25 19:26:10 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-25 20:12:23 +0900

    [StepSecurity] ci: Harden GitHub Actions

    Signed-off-by: StepSecurity Bot <bot@stepsecurity.io>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6810

commit 26baf4813e0a717b95860be0d9c71dc7def93643
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-25 15:42:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-25 19:51:31 +0900

    [Feature #18925] [DOC] Add `FileUtils.ln_sr` to NEWS

commit e9d6d2a57949541fd8775832b9ee55cf0df67006
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-25 19:42:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-25 19:42:47 +0900

    [DOC] Fix AST documents

    - Fix indents of `tokens`, to make the contents of Token a list
    - Move the example of `tokens` to separate from the above list
    - Markup keyword argument and method name

commit fb7598fb3e2b9da289556b0a4fa7c9e42e45121a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-25 19:15:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-25 19:17:44 +0900

    [DOC] Remove extraneous backticks

    So cross-references to defined classes/modules/methods work.

commit addb1cbbfd93d30e4752ec63b2d5ff96a13fac3d
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-25 17:53:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-25 17:54:18 +0900

    [ruby/erb] Keep ERB::Util#html_escape private

    ERB::Util.html_escape has been public, but ERB::Util#html_escape had
    been private.

    https://github.com/ruby/erb/commit/e62210bf56

commit 58dc9c931b89931d339cf9db5f329cf650b23be8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-25 12:01:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-25 17:02:28 +0900

    [rubygems/rubygems] Stop installing everything under "lib" at the top in all tests

    https://github.com/rubygems/rubygems/commit/f9772d62e1

commit 64c8ed272fea57e0825650f75e05eb44456a039a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-25 13:47:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-25 16:11:17 +0900

    `remain` no longer starts with 0

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6809

commit ffc6c5d056e0f18a9bdfb9b1477d0192a6d37ea3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-25 13:42:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-25 16:11:17 +0900

    [Bug #18971] Add precheck to enumerator

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6809

commit 67d0f4821ff9ae550425a66202710d82de886384
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-25 14:20:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-25 15:50:06 +0900

    [Bug #19145] `volatile` on an argument may not be effective

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6807

commit 45bad8c7b8851a179515407d7ee2ed70545e4b40
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-25 13:49:06 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-25 15:50:06 +0900

    The mode flags may be clobbered by tag jumps

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6807

commit 67766cd55c3a05f9888c8e2b9e34051a44b3e3fc
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-11-25 11:51:35 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-11-25 14:01:36 +0900

    add debug context APIs for debuggers (frame depth)

    The following new debug context APIs are for implementing debugger's
    `next` (step over) and similar functionality.

    * `rb_debug_inspector_frame_depth(dc, index)` returns `index`-th
      frame's depth.
    * `rb_debug_inspector_current_depth()` returns current frame depth.

    The frame depth is not related to the frame index because debug
    context API skips some special frames but proposed `_depth()` APIs
    returns the count of all frames (raw depth).

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6805

commit 571d21fd4a2e877f49b4ff918832bda9a5e8f91c
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-08-25 02:31:17 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-11-25 11:24:42 +0900

    Make String#rstrip{,!} raise Encoding::CompatibilityError for broken coderange

    It's questionable whether we want to allow rstrip to work for strings
    where the broken coderange occurs before the trailing whitespace and
    not after, but this approach is probably simpler, and I don't think
    users should expect string operations like rstrip to work on broken
    strings.

    In some cases, this changes rstrip to raise
    Encoding::CompatibilityError instead of ArgumentError.  However, as
    the problem is related to an encoding issue in the receiver, and due
    not due to an issue with an argument, I think
    Encoding::CompatibilityError is the more appropriate error.

    Fixes [Bug #18931]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6282

commit c6330cd32b7d02b4603080a2c53d64be9e05773c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-25 10:03:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-25 10:03:57 +0900

    [ruby/fileutils] [Feature #18925] Add `ln_sr` method and `relative:` option to `ln_s`

    https://github.com/ruby/fileutils/commit/5116088d5c

commit 1a47521c4459fd61384c51ee58bc422ec69310d6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-24 23:39:55 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-25 08:51:14 +0900

    Use `rb_sprintf` instead of deprecated `sprintf`

commit bcdfe12919f967cad17c2c6a8c98454f373ca935
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-25 08:49:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-25 08:49:15 +0900

    [ruby/erb] Allow requiring erb/escape.so alone
    (https://github.com/ruby/erb/pull/37)

    Prior to this commit, requiring erb/escape first and then requiring erb
    did not work as expected.

commit 8ac4081aa80e571271296331dbd2a7a0654cd34a
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-25 08:40:48 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-25 08:40:53 +0900

    [ruby/erb] Split erb.rb into files for each module under ERB
    (https://github.com/ruby/erb/pull/36)

    https://github.com/ruby/erb/commit/f74833cc07

commit c480f589c29c4e7f4414ee4b01513bf2bd2e0cbc
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-25 08:21:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-25 08:22:00 +0900

    [ruby/erb] Rename erb.so to erb/escape.so
    (https://github.com/ruby/erb/pull/35)

    https://github.com/ruby/erb/commit/1280046952

commit 04a92a6764bf678919cf4b68a27496a39d6b886a
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-08-20 05:19:03 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-11-25 08:18:44 +0900

    Raise TypeError for endless non-numeric range include?

    Beginless ranges previously raised TypeError for this case,
    except for string ranges, which had unexpected behavior:

      ('a'..'z').include?('ww') # false
      (..'z').include?('ww') # previously true, now TypeError

    Use of include? with endless ranges could previously result
    in an infinite loop.

    This splits off a range_string_cover_internal function from
    range_include_internal.

    Fixes [Bug #18580]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6261

commit 1c0c1c8098bfb989ff5288b2e0a43b1bd0be2781
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-25 07:47:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-25 07:49:21 +0900

    [ruby/erb] Drop deprecated -S option from erb command

    We attempted to remove things like this and reverted all of them, but I
    think nobody relies on this unlike the positional arguments of
    `ERB#initialize`.

    https://github.com/ruby/erb/commit/92fde7e403

commit e5a0abc5dedfd011986b16e8f8cf5cda476984c9
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-25 07:35:28 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-25 07:35:33 +0900

    [ruby/erb] Suppress warnings to fix ruby-head CI
    (https://github.com/ruby/erb/pull/34)

    There seems to be no way to fix this. It doesn't happen in an installed
    directory, so it's likely a false positive and/or a bug in rubygems.

      | <internal:/home/runner/.rubies/ruby-head/lib/ruby/3.2.0+3/rubygems/core_ext/kernel_require.rb>:85: warning: <internal:/home/runner/.rubies/ruby-head/lib/ruby/3.2.0+3/rubygems/core_ext/kernel_require.rb>:85: warning: loading in progress, circular require considered harmful - /home/runner/.rubies/ruby-head/lib/ruby/3.2.0+3/bundler/setup.rb
      |     from /home/runner/work/erb/erb/libexec/erb:0:in  `require'
      |     from /home/runner/.rubies/ruby-head/lib/ruby/3.2.0+3/bundler/setup.rb:3:in  `<top (required)>'
      |     from /home/runner/.rubies/ruby-head/lib/ruby/3.2.0+3/bundler/setup.rb:3:in  `require_relative'
      |     from /home/runner/.rubies/ruby-head/lib/ruby/3.2.0+3/bundler/shared_helpers.rb:8:in  `<top (required)>'
      |     from /home/runner/.rubies/ruby-head/lib/ruby/3.2.0+3/bundler/shared_helpers.rb:8:in  `require_relative'
      |     from /home/runner/.rubies/ruby-head/lib/ruby/3.2.0+3/bundler/rubygems_integration.rb:3:in  `<top (required)>'
      |     from /home/runner/.rubies/ruby-head/lib/ruby/3.2.0+3/bundler/rubygems_integration.rb:3:in  `require'
      |     from /home/runner/.rubies/ruby-head/lib/ruby/3.2.0+3/rubygems.rb:1352:in  `<top (required)>'
      |     from <internal:/home/runner/.rubies/ruby-head/lib/ruby/3.2.0+3/rubygems/core_ext/kernel_require.rb>:85:in  `require'
      |     from <internal:/home/runner/.rubies/ruby-head/lib/ruby/3.2.0+3/rubygems/core_ext/kernel_require.rb>:85:in  `require'

commit 1340195e79b8ae9cc56ebffc4241d6a5b2b12174
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-10-06 03:50:43 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-11-25 07:27:19 +0900

    Reduce duplication in pack by sharing code for some cases

    s/S, i/I, l/L, and q/Q had the same code in both cases, so
    combine the cases.

    Alternatively, we could actually the size of the unsigned type,
    but I doubt there are any platforms where the unsigned type is
    a different size than the signed type.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6495

commit f5d73da8062377e5b93100c6ea109a37bd04b4c1
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-08-25 04:32:46 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-11-25 07:26:08 +0900

    Fix the position of rescue clause without exc_list

    If the rescue clause has only exc_var and not exc_list, use the
    exc_var position instead of the rescue body position.

    This issue appears to have been introduced in
    688169fd83b24564b653c03977c168cea50ccd35 when "opt_list" was split
    into "exc_list exc_var".

    Fixes [Bug #18974]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6283

commit 07169fd824529c0f7f69ff0c10939b63abecc6ef
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-11-25 06:37:04 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-25 06:37:04 +0900

    Update YJIT section of `NEWS.md` (#6803)

    * Update YJIT section of `NEWS.md`

    * Update NEWS.md

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit a81c89b7c877cc0ddf40a8d4672ca90090e116c6
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-25 04:58:41 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-25 04:58:41 +0900

    YJIT: Make sure rustc's target matches before enabling (#6804)

    For people using Rosetta 2 on ARM Macs, it can happen that the
    rustc in the PATH compiles for x86_64 while clang is targeting
    ARM. We were enabling YJIT in these situations because the test
    program compiled fine, but caused linking failure later due to
    the architecture mismatch.

    Adjust the test program to fail when rustc's target arch is different
    from ruby's target arch.

    [Bug #19146]

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 656f25987cf2885104d5b13c8d3f5b7d32f1b333
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-11-23 20:10:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-25 03:32:19 +0900

    [ruby/cgi] Fix test_cgi_cookie_new_with_domain to pass on older rubies

    https://github.com/ruby/cgi/commit/05f0c58048

commit d2fa67de81f66cb42cfeebc81a03c57a4621c09a
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-11-25 00:30:28 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-25 00:30:28 +0900

    YJIT: rename `InsnOpnd` => `YARVOpnd` (#6801)

    Rename InsnOpnd => YARVOpnd

    Make it more clear this refers to YARV insn/vm operands rather
    than backend IR, x86 or ARM insn operands.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 66e5200ba435361624caa3e23db7962d906b70db
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-24 15:11:55 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-24 15:13:00 +0900

    Relax the timeout of TestRegexp#test_cache_optimization_square

    It fails on riscv (QEmu)

    http://rubyci.s3.amazonaws.com/debian-riscv64/ruby-master/log/20221124T000021Z.fail.html.gz
    ```
      1) Error:
    TestRegexp#test_cache_optimization_square:
    Regexp::TimeoutError: regexp match timeout
        /home/rubyci/chkbuild/tmp/build/20221124T000021Z/ruby/test/ruby/test_regexp.rb:1693:in `<main>'
        /home/rubyci/chkbuild/tmp/build/20221124T000021Z/ruby/test/ruby/test_regexp.rb:1688:in `test_cache_optimization_square'
    ```

commit d92054e3711ca5dd336b753c238f4e53a9881157
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-22 10:50:53 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-11-24 08:00:12 +0900

    YJIT: Use a Box for branch targets to save memory

    We frequently make branches that only have one target but we used to
    always allocate space for two branch targets. This patch moves all the
    information a branch target has into a struct and refer to them using
    Option<Box<BranchTarget>>, this way when the second branch target is not
    present it only takes 8 bytes.

    Retained heap size on railsbench went from 16.17 MiB to 14.57 MiB, a
    ratio of about 1.1.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6799

commit e788215125a015d32281aff0a7891d2d2020dbcb
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-24 02:02:14 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-11-24 07:18:10 +0900

    Add next_shape_id to vm stats

    We need to track this number in CI.  It's important to know how changes
    to the codebase impact the number of shapes in the system, so lets add
    the number to the VM stat hash

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6798

commit a50aabde9cf3b58c63563427b2e7d22c60370cdd
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-24 02:14:43 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-24 02:14:43 +0900

    YJIT: Simplify Insn::CCall to obviate Target::FunPtr (#6793)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 5ee947314eac6bc8ce2ee28a0619beb0250f704a
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-11-24 01:49:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-24 02:12:35 +0900

    [ruby/net-http] Enhanced RDoc for Net::HTTPHeader

    https://github.com/ruby/net-http/commit/86b0514239

commit 4b32ed6e33d5a15e22b2f729257ef287e4c964c1
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-11-23 22:06:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-24 02:12:34 +0900

    [ruby/net-http] Enhanced RDoc for Net::HTTPHeader

    https://github.com/ruby/net-http/commit/ef0ef53b0c

commit 79a9280aa59558018d9255b30b596faf1f4ba912
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-11-21 04:51:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-24 02:12:33 +0900

    [ruby/net-http] Enhanced RDoc for Net::HTTPHeader

    https://github.com/ruby/net-http/commit/0af9fb94a9

commit c6dc1266418a5cb84a91718946f9be00d073c2f7
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-11-21 04:43:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-24 02:12:33 +0900

    [ruby/net-http] Enhanced RDoc for Net::HTTPHeader

    https://github.com/ruby/net-http/commit/995ff356b4

commit 66be0922b7a665cb9d52174e435752404e74d962
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-11-20 03:13:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-24 02:12:32 +0900

    [ruby/net-http] Enhanced RDoc for Net::HTTPHeader

    https://github.com/ruby/net-http/commit/e924f1205b

commit d88adaad7ea4761bd36c957260667840472fd2dc
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-24 02:02:05 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-24 02:02:05 +0900

    YJIT: Use NonNull pointer for CodePtr (#6792)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 9c36de3c484f104a59033d75855864853c4325c4
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-23 10:21:26 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-11-24 01:59:50 +0900

    YJIT: Stop passing target1 to gen_return_branch

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6794

commit fe2bed6778962a083fbba7bbd6d2aa4cc8b62768
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-24 01:59:02 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-24 01:59:02 +0900

    YJIT: Simplify code for RB_SPECIAL_CONST_P (#6795)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit e82b15b6603ddc6754f4cfa7a189c0acb0ccce71
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-11-24 00:48:17 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-24 00:48:17 +0900

    Fix YJIT backend to account for unsigned int immediates (#6789)

    YJIT: x86_64: Fix cmp with number where sign bit is set

    Before this commit, we were unconditionally treating unsigned ints as
    signed ints when counting the number of bits required for representing
    the immediate in machine code. When the size of the immediate matches
    the size of the other operand, no sign extension happens, so this was
    incorrect. `asm.cmp(opnd64, 0x8000_0000)` panicked even though it's
    encodable as `CMP r/m32, imm32`. Large shape ids were impacted by this
    issue.

    Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org>
    Co-Authored-By: Alan Wu <alanwu@ruby-lang.org>

    Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>
    Co-authored-by: Alan Wu <alanwu@ruby-lang.org>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit aedf682bfad425149053f58c9115bc830da4efd1
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-23 06:54:30 +0900
  Commit:     Aaron Patterson <tenderlove@ruby-lang.org>
  CommitDate: 2022-11-23 06:54:30 +0900

    Free the IV table after estimation

    We need to make sure the name table is freed otherwise we have a memory
    leak.

commit 003f8ea80983d9a2c1d5352c448ad2991fb73ad7
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-15 01:22:00 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-11-23 06:49:46 +0900

    Remove dead code in rb_obj_copy_ivar

    The removed code is a duplicate of the code above.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6727

commit c4e99ac454cbbf731c2fe51fa549bd472ab1dc41
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-11-23 06:18:31 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-23 06:18:31 +0900

    Update yjit.md

commit eaf2b6c4396ff19921cbc75a394d7a752aaab4ef
  Author:     zverok <zverok.offline@gmail.com>
  AuthorDate: 2022-10-20 04:07:23 +0900
  Commit:     Victor Shepelev <zverok.offline@gmail.com>
  CommitDate: 2022-11-23 06:10:46 +0900

    Add Time#deconstruct_keys

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6594

commit 63f4a7a1ec3433cc985503e3ca342e4a9ebda257
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-23 05:57:17 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-23 05:57:17 +0900

    YJIT: Skip padding jumps to side exits on Arm (#6790)

    YJIT: Skip padding jumps to side exits

    Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>

    Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 9c5e3671ebd9c07c178ca5dac08ad15ad1eae411
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-11-23 05:28:14 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-23 05:28:14 +0900

    Increment max_iv_count on class based on number of set_iv in initialize (#6788)

    We can loosely predict the number of ivar sets on a class based on the
    number of iv set instructions in the initialize method. This should give
    us a more accurate estimate to use for initial size pool allocation,
    which should in turn give us more cache hits.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 20b9d7b9fde83c98046eacdfcb40e8cb6607963e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-22 14:20:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-22 14:20:45 +0900

    Use `enum` over `int`

commit 8c02084ac8412dc57367ac1282cf5ab07554c94c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-22 14:07:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-22 14:07:21 +0900

    Use dedicated assertions for warnings

commit 77f963004f9982c70adde487587cf747503be314
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-22 13:58:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-22 13:58:56 +0900

    Avoid unnecessary use of global variables

commit 36f297e62108072b9377d927321928b994f66a93
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-22 11:29:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-22 11:32:28 +0900

    Use valid tokens as cookie names

commit 805d70f716c782e82ec77ca623b2177129ad1395
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-22 11:11:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-22 11:12:50 +0900

    [ruby/cgi] Bump up 0.3.5

    https://github.com/ruby/cgi/commit/daf88c2a75

commit 58682b6980e9c2046f4b18025c4b684661fbcf66
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-22 11:05:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-22 11:12:50 +0900

    [ruby/cgi] Relax domain label restrictions

    https://github.com/ruby/cgi/commit/b46d41c363

commit 3f960cf445dd387a5497ffad897ea6f4bd03e62e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-22 10:58:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-22 11:00:11 +0900

    [ruby/cgi] Bump up 0.3.4

    https://github.com/ruby/cgi/commit/3649a27bf4

commit 0e75b2f2e633ac9579e63e1d4b3bad02e915889c
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-22 10:49:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-22 11:00:11 +0900

    [ruby/cgi] Prevent CRLF injection

    Throw a RuntimeError if the HTTP response header contains CR or LF to
    prevent HTTP response splitting.

    https://hackerone.com/reports/1204695

    https://github.com/ruby/cgi/commit/64c5045c0a

commit c05f85f373ed48594d9bf08e11ae0c84c06062f7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-16 18:36:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-22 11:00:10 +0900

    [ruby/cgi] Check cookie name/path/domain characters

    https://hackerone.com/reports/1204977

    https://github.com/ruby/cgi/commit/30107a4797

commit cf05c202ce7716748c4f2f9c24b52fe7f12d40fc
  Author:     MSP-Greg <Greg.mpls@gmail.com>
  AuthorDate: 2022-11-21 06:06:33 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-11-22 03:52:44 +0900

    Fixup spec/ruby/optional/capi/rbasic_spec.rb for mswin

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6772

commit 607fb49dbcf9fa24d53c3609ac4e8cba4c0fb8bb
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-22 03:27:39 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-22 03:27:39 +0900

    YJIT: Lower the required Rust version from 1.58.1 to 1.58.0 (#6780)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 09423876f9191a73ab428dc27eb5c436105048db
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-19 00:39:09 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-22 01:26:26 +0900

    Let SHAPE_BITS take 32 bits on debug builds

    The ractor_belonging_id has been moved out of the headers, so object
    shapes can take the top 32 bits of the flags on debug builds.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6763

commit 5f95228c76e6f6994eb4149217fe3e38f9ff8a27
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-19 00:07:06 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-22 01:26:26 +0900

    Add RVALUE_OVERHEAD and move ractor_belonging_id

    This commit adds RVALUE_OVERHEAD for storing metadata at the end of the
    slot. This commit moves the ractor_belonging_id in debug builds from the
    flags to RVALUE_OVERHEAD which frees the 16 bits in the headers for
    object shapes.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6763

commit b7a0ce32da751b437b976b032e73281b9a56b509
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-11 17:51:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-22 00:33:19 +0900

    [Bug #19016] `SyntaxError` with parser error messages

    Raise a `SyntaxError` with the parser error message, in the case
    reading from a file instead of the `-e` option or standard input. So
    syntax_suggest can get the message from the caught error.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6778

commit 5b959e238e5b7c18d6a1a5f5d9b4b2063de628fe
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-11 10:37:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-22 00:33:19 +0900

    [Bug #19016] re-order error handling at cleanup

    Build and store the error message with `#detailed_message` before
    terminating all Ractors, then show the message later.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6778

commit 1f0888ab3e699a1083cddad84b0d8cb28e15ad8e
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-17 23:47:18 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-22 00:22:29 +0900

    Speed up shape transitions

    This commit significantly speeds up shape transitions as it changes
    get_next_shape_internal to not perform a lookup (and instead require
    the caller to perform the lookup). This avoids double lookups during
    shape transitions.

    There is a significant (~2x) speedup in the following micro-benchmark:

        puts(Benchmark.measure do
          o = Object.new

          100_000.times do |i|
            o.instance_variable_set(:"@a#{i}", 0)
          end
        end)

    Before:

        22.393194   0.201639  22.594833 ( 22.684237)

    After:

        11.323086   0.022284  11.345370 ( 11.389346)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6751

commit 648927d71bde5df02a0490f5f45bb7fcde913376
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-16 00:52:39 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-21 23:58:53 +0900

    Refactor obj_ivar_set and vm_setivar

    obj_ivar_set and vm_setivar_slowpath is essentially doing the same thing,
    but the code is duplicated and not quite implemented in the same way,
    which could cause bugs. This commit refactors vm_setivar_slowpath to use
    obj_ivar_set.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6732

commit 612aa5c24a7c249867bbcd7d6567012aa6a7f4b9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-21 16:20:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-21 22:16:49 +0900

    Use class methods of `File` over `Kernel.open` and `IO.read`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6777

commit 116920cff8739c49ba469bf243252f503e28f0fd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-21 16:20:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-21 22:15:48 +0900

    [ruby/un] Use class methods of `File` over `Kernel.open`

    https://github.com/ruby/un/commit/13bdd766fe

commit e2b15461a7dc645f4562e1d1a3f0f89973794258
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-21 18:28:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-21 19:26:42 +0900

    [ruby/optparse] Use class methods of `File` over `IO`

    https://github.com/ruby/optparse/commit/ab5073e4d8

commit c9fbc779a680f3e1fd884ec80722cd32a990e0e9
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-21 17:46:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-21 17:46:27 +0900

    [ruby/irb] Add commands to start and use the debugger
    (https://github.com/ruby/irb/pull/449)

    * Seamlessly integrate a few debug commands

    * Improve the break command support

    * Utilize skip_src option if available

    * Add step and delete commands

    * Write end-to-end tests for each debugger command

    * Add documentation

    * Add backtrace, info, catch commands

    https://github.com/ruby/irb/commit/976100c1c2

commit 854312eede0f4af9027a7556f98666c8637fd636
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-11-21 09:56:36 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-11-21 16:32:13 +0900

    Refactor to use has_delayed_token macro

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6776

commit 730b841f8d6ba76d793a608cc20f46684a7d2cb1
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-21 16:13:15 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-21 16:13:15 +0900

    Prevent a "warning: ambiguity between regexp and two divisions"

commit 509f04ca9159d1dd046af4ffb19cfa8252021b55
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-21 13:44:23 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-21 14:24:25 +0900

    [ruby/irb] Version 1.5.0

    Asked by ko1 to release https://github.com/ruby/irb/pull/444 for
    simplifying https://github.com/ruby/debug/pull/808,
    and hsbt made me a gem owner for this.

    Stan said 1.4.3 should have been 1.5.0, but now that it's already
    released and it's not worth yanking it, we're not doing that change.
    However, now that this release includes `debug` and `edit`, I think it's
    a good opportunity to hit the version 1.5.0.

    https://github.com/ruby/irb/commit/85937d71f6

commit 1753cf59cc2fd30109c84d1a3ea56d226a9bcd75
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-21 14:23:24 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-21 14:23:28 +0900

    Fix a broken interpolation #{head}

commit 29e6d97517bbd4dcc540464c8473172232f3e228
  Author:     Yudai Takada <13041216+ydah@users.noreply.github.com>
  AuthorDate: 2022-11-21 14:07:18 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-21 14:07:18 +0900

    Fix typos (#6775)

    * s/Innteger/Integer/

    * s/diretory/directory/

    * s/Bufer/Buffer/

    * s/defalt/default/

    * s/covearge/coverage/

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit d8601621edcf29e3323b90dcf04b774edd9fb45e
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-09-23 22:40:02 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-11-21 09:01:34 +0900

    Enhance keep_tokens option for RubyVM::AbstractSyntaxTree parsing methods

    Implementation for Language Server Protocol (LSP) sometimes needs token information.
    For example both `m(1)` and `m(1, )` has same AST structure other than node locations
    then it's impossible to check the existence of `,` from AST. However in later case,
    it might be better to suggest variables list for the second argument.
    Token information is important for such case.

    This commit adds these methods.

    * Add `keep_tokens` option for `RubyVM::AbstractSyntaxTree.parse`, `.parse_file` and `.of`
    * Add `RubyVM::AbstractSyntaxTree::Node#tokens` which returns tokens for the node including tokens for descendants nodes.
    * Add `RubyVM::AbstractSyntaxTree::Node#all_tokens` which returns all tokens for the input script regardless the receiver node.

    [Feature #19070]

    Impacts on memory usage and performance are below:

    Memory usage:

    ```
    $ cat test.rb
    root = RubyVM::AbstractSyntaxTree.parse_file(File.expand_path('../test/ruby/test_keyword.rb', __FILE__), keep_tokens: true)

    $ /usr/bin/time -f %Mkb /usr/local/bin/ruby -v
    ruby 3.2.0dev (2022-11-19T09:41:54Z 19070-keep_tokens d3af1b8057) [x86_64-linux]
    11408kb

    # keep_tokens :false
    $ /usr/bin/time -f %Mkb /usr/local/bin/ruby test.rb
    17508kb

    # keep_tokens :true
    $ /usr/bin/time -f %Mkb /usr/local/bin/ruby test.rb
    30960kb
    ```

    Performance:

    ```
    $ cat ../ast_keep_tokens.yml
    prelude: |
      src = <<~SRC
        module M
          class C
            def m1(a, b)
              1 + a + b
            end
          end
        end
      SRC
    benchmark:
      without_keep_tokens: |
        RubyVM::AbstractSyntaxTree.parse(src, keep_tokens: false)
      with_keep_tokens: |
        RubyVM::AbstractSyntaxTree.parse(src, keep_tokens: true)

    $ make benchmark COMPARE_RUBY="./ruby" ARGS=../ast_keep_tokens.yml
    /home/kaneko.y/.rbenv/shims/ruby --disable=gems -rrubygems -I../benchmark/lib ../benchmark/benchmark-driver/exe/benchmark-driver \
                --executables="compare-ruby::./ruby -I.ext/common --disable-gem" \
                --executables="built-ruby::./miniruby -I../lib -I. -I.ext/common  ../tool/runruby.rb --extout=.ext  -- --disable-gems --disable-gem" \
                --output=markdown --output-compare -v ../ast_keep_tokens.yml
    compare-ruby: ruby 3.2.0dev (2022-11-19T09:41:54Z 19070-keep_tokens d3af1b8057) [x86_64-linux]
    built-ruby: ruby 3.2.0dev (2022-11-19T09:41:54Z 19070-keep_tokens d3af1b8057) [x86_64-linux]
    warming up..

    |                     |compare-ruby|built-ruby|
    |:--------------------|-----------:|---------:|
    |without_keep_tokens  |     21.659k|   21.303k|
    |                     |       1.02x|         -|
    |with_keep_tokens     |      6.220k|    5.691k|
    |                     |       1.09x|         -|
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6770

commit 701dfe4eb741628213e4d701c13ad6d76904ac4f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-18 18:22:12 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-20 20:00:40 +0900

    [Bug #19016] Handle syntax error in main script like other errors

    So that `SyntaxError#detailed_message` will be used also in the case
    exiting by such syntax error.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6771

commit 12b7b852272c23d8449af507405ac93cedcb6dd6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-18 18:19:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-20 20:00:40 +0900

    Use `enum ruby_tag_type` over `int`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6771

commit 779917fcc0db9349bc2808150030def57ac229bf
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-20 14:57:40 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-20 14:58:22 +0900

    Avoid a timeout on test_cache_optimization_exponential

    The timeout seems too short for some CIs.
    http://rubyci.s3.amazonaws.com/debian11-aarch64/ruby-master/log/20221120T012840Z.fail.html.gz

commit 66ac288ae2d90ab314f388b4a30b6f2cf87578e7
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-20 14:38:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-20 14:38:43 +0900

    [ruby/irb] Push an accidentally uncommitted diff

    https://github.com/ruby/irb/commit/7e9f27afd7

commit 67034ac7e2a81e1fce0818bec8014f6a35a1353c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-20 14:34:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-20 14:34:51 +0900

    [ruby/irb] Deal with inconsistency with ruby/ruby

    https://github.com/ruby/irb/commit/41d5012849

commit 8512b97d27a617bc74d6ec0a7d3fcc1cea43194f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-20 14:32:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-20 14:32:11 +0900

    [ruby/irb] Require missing EnvUtil

    https://github.com/ruby/irb/commit/9bb1757b02

commit fa2e0cc018e09b81d8bf3b48b4e74070b3eb9228
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-20 14:31:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-20 14:31:56 +0900

    [ruby/irb] Try using a different file name

    hoping to address:
    https://github.com/ruby/ruby/actions/runs/3506561941/jobs/5873689640

    https://github.com/ruby/irb/commit/de9a6b9d00

commit f47251671d7c619f00ff6e66ab7990f573224d5e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-20 14:19:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-20 14:19:50 +0900

    [ruby/irb] Require rubygems for ruby/ruby

    You can't take rubygems for granted in a default gem.
    https://github.com/ruby/ruby/actions/runs/3506561943/jobs/5873689466

    https://github.com/ruby/irb/commit/58bb3954d0

commit 1284baec12c57474fa4dc4f456cdf50199fdab9e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-20 14:13:05 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-20 14:14:08 +0900

    Skip TestDRbSSLAry on mswin

    This doesn't seem to stably work on mswin:
    https://github.com/ruby/ruby/actions/runs/3505363753/jobs/5871633211

    For CI stability, it generally seems like a bad idea to run druby tests
    on Windows, given that it's pretty much unstable on MinGW as well.

commit e0f0367ab5d3504e741bd6b89d6eea7c93a94327
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-20 14:05:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-20 14:06:07 +0900

    [ruby/irb] Fix CI failure on ruby/ruby

    https://github.com/ruby/irb/commit/ea8c716922

commit 180ed611b238db48db9feb1449c4e3b563d2dce0
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-11-20 13:47:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-20 13:47:54 +0900

    [ruby/irb] Add edit command (https://github.com/ruby/irb/pull/453)

    * Add edit command

    * Make find_source a public singleton method

    * Add document for the edit command

    * Make find_end private

    * Remove duplicated private

    https://github.com/ruby/irb/commit/4321674aa7
    Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>

commit 439990318d90a689b2ac067b41c3462ddda60ae5
  Author:     Lars Kanis <kanis@comcard.de>
  AuthorDate: 2022-11-19 03:30:14 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-20 11:06:28 +0900

    Avoid warnings on MINGW:

    win32/win32.c: In function 'rtc_error_handler':
    win32/win32.c:691:5: warning: function 'rtc_error_handler' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
      691 |     rb_str_vcatf(str, fmt, ap);
          |     ^~~~~~~~~~~~

    and

    win32/win32.c:683:1: warning: 'rtc_error_handler' defined but not used [-Wunused-function]
      683 | rtc_error_handler(int e, const char *src, int line, const char *exe, const char *fmt, ...)
          | ^~~~~~~~~~~~~~~~~

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6764

commit 5958c305e527460465bdbd43e59b2da26d4cfbfb
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-20 07:14:40 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-20 07:14:44 +0900

    [ruby/irb] Document a full list of commands
    (https://github.com/ruby/irb/pull/451)

    * Document a full list of commands

    * Document debug as well

    * Make it less duplicated

commit 23750c866a69cec982cc16921bbdc6224dfded94
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-20 07:10:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-20 07:10:09 +0900

    [ruby/irb] Update documentation about Autocompletion
    (https://github.com/ruby/irb/pull/452)

    https://github.com/ruby/irb/commit/e6b4917750

commit 01bc2fc514c732406ad39d63b2e97b76f2f56de4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-20 01:10:40 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-20 01:10:40 +0900

    Update fake.rb for test-spec

    spec/ruby/command_line/dash_v_spec.rb needs it.

commit 909ea6b60d658b2a1c4a53be81b09642dcf86d4b
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-11-19 07:40:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-20 00:33:28 +0900

    [ruby/net-http] About the Examples moved to separate file

    https://github.com/ruby/net-http/commit/0512b5bfc9

commit e6162728f6ca72e97805c7ee16b98f6639b2af11
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-11-18 23:10:38 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-20 00:25:12 +0900

    [ruby/net-http] Enhanced RDoc for Net::HTTP

commit 2047636af81d08d20a083fdd08cc771d772eecfb
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-11-17 04:33:19 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-20 00:17:54 +0900

    [ruby/net-http] Update lib/net/http/request.rb

    https://github.com/ruby/net-http/commit/e3c9011edb

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

commit dbb902fc91b8b9a298d8656830f724c767345969
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-11-17 02:39:17 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-20 00:17:54 +0900

    [ruby/net-http] Enhanced RDoc for Net::HTTP

    https://github.com/ruby/net-http/commit/4444e8cea4

commit 951eabdcf2f0a8c8b0f23904b65bbaf93cde8d82
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-11-16 03:07:46 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-20 00:17:53 +0900

    [ruby/net-http] Enhanced RDoc for Net::HTTP

    https://github.com/ruby/net-http/commit/6b30c5310b

commit 50c6cabadca44b7b034eae5dcc8017154a2858bd
  Author:     Maciek Rząsa <maciejrzasa@gmail.com>
  AuthorDate: 2022-11-19 11:38:16 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-19 11:38:16 +0900

    [DOC] Change formatting in the exec docs

    The last part of the sentence was accidentally put in enumeration, It
    made an impression that it's one of the rules, not the result of
    applying the rules.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6762

    Merged-By: nobu <nobu@ruby-lang.org>

commit 574d849869032f987d6b9168e01fe704258b8974
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-19 08:56:27 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-19 10:36:51 +0900

    Run skipped minitest tests that now pass

    The mentioned PR was merged.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6768

commit 6dcb7b92169e5bd490bb6eaa4d5b9b7445af464c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-19 10:27:07 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-19 10:27:07 +0900

    YJIT: Improve the failure message on enlarging a branch (#6769)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 082cfcfd06f85ea5c578f0654431dad5c2f32814
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-11-18 19:42:37 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-11-19 10:17:16 +0900

    Add test cases for args forwarding after rest argument

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6761

commit 5c505f4a48cafd83493ce2744373bd33361ab9f1
  Author:     Alan Wu <alanwu@ruby-lang.org>
  AuthorDate: 2022-11-19 09:42:24 +0900
  Commit:     Alan Wu <alanwu@ruby-lang.org>
  CommitDate: 2022-11-19 09:42:24 +0900

    Rename misleading label

    We use this code path when we require the same extension twice, so it's
    not necessarily about the feature being statically linked. Removing this
    code when there is no statically linked extensions leads to breakage.

commit 7f269a3c2d19e28d493a492748cd998d4cd43c89
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-19 04:59:04 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-11-19 08:50:34 +0900

    Fix io/console test for --with-static-linked-ext

    The tests looks for the .so file, which doesn't exist when the extension
    is statically linked. In that situation it passes -I to ruby with
    nothing after it which ate the -rio/console argument.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6765

commit 2185f0ca772c1e8c318198b54e3a694b55945bbb
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-19 06:58:13 +0900
  Commit:     Aaron Patterson <tenderlove@ruby-lang.org>
  CommitDate: 2022-11-19 06:58:13 +0900

    Update assertion

    New T_OBJECT objects will have a T_OBJECT shape

commit 9e067df76bda7384e8f3ddda2b348f3a742eb784
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-16 04:46:18 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-11-19 05:04:10 +0900

    32 bit comparison on shape id

    This commit changes the shape id comparisons to use a 32 bit comparison
    rather than 64 bit.  That means we don't need to load the shape id to a
    register on x86 machines.

    Given the following program:

    ```ruby
    class Foo
      def initialize
        @foo = 1
        @bar = 1
      end

      def read
        [@foo, @bar]
      end
    end

    foo = Foo.new
    foo.read
    foo.read
    foo.read
    foo.read
    foo.read

    puts RubyVM::YJIT.disasm(Foo.instance_method(:read))
    ```

    The machine code we generated _before_ this change is like this:

    ```
    == BLOCK 1/4, ISEQ RANGE [0,3), 65 bytes ======================
      # getinstancevariable
      0x559a18623023: mov rax, qword ptr [r13 + 0x18]
      # guard object is heap
      0x559a18623027: test al, 7
      0x559a1862302a: jne 0x559a1862502d
      0x559a18623030: cmp rax, 4
      0x559a18623034: jbe 0x559a1862502d
      # guard shape, embedded, and T_OBJECT
      0x559a1862303a: mov rcx, qword ptr [rax]
      0x559a1862303d: movabs r11, 0xffff00000000201f
      0x559a18623047: and rcx, r11
      0x559a1862304a: movabs r11, 0xb000000002001
      0x559a18623054: cmp rcx, r11
      0x559a18623057: jne 0x559a18625046
      0x559a1862305d: mov rax, qword ptr [rax + 0x18]
      0x559a18623061: mov qword ptr [rbx], rax

    == BLOCK 2/4, ISEQ RANGE [3,6), 0 bytes =======================
    == BLOCK 3/4, ISEQ RANGE [3,6), 47 bytes ======================
      # gen_direct_jmp: fallthrough
      # getinstancevariable
      # regenerate_branch
      # getinstancevariable
      # regenerate_branch
      0x559a18623064: mov rax, qword ptr [r13 + 0x18]
      # guard shape, embedded, and T_OBJECT
      0x559a18623068: mov rcx, qword ptr [rax]
      0x559a1862306b: movabs r11, 0xffff00000000201f
      0x559a18623075: and rcx, r11
      0x559a18623078: movabs r11, 0xb000000002001
      0x559a18623082: cmp rcx, r11
      0x559a18623085: jne 0x559a18625099
      0x559a1862308b: mov rax, qword ptr [rax + 0x20]
      0x559a1862308f: mov qword ptr [rbx + 8], rax
    ```

    After this change, it's like this:

    ```
    == BLOCK 1/4, ISEQ RANGE [0,3), 41 bytes ======================
      # getinstancevariable
      0x5560c986d023: mov rax, qword ptr [r13 + 0x18]
      # guard object is heap
      0x5560c986d027: test al, 7
      0x5560c986d02a: jne 0x5560c986f02d
      0x5560c986d030: cmp rax, 4
      0x5560c986d034: jbe 0x5560c986f02d
      # guard shape
      0x5560c986d03a: cmp word ptr [rax + 6], 0x19
      0x5560c986d03f: jne 0x5560c986f046
      0x5560c986d045: mov rax, qword ptr [rax + 0x10]
      0x5560c986d049: mov qword ptr [rbx], rax

    == BLOCK 2/4, ISEQ RANGE [3,6), 0 bytes =======================
    == BLOCK 3/4, ISEQ RANGE [3,6), 23 bytes ======================
      # gen_direct_jmp: fallthrough
      # getinstancevariable
      # regenerate_branch
      # getinstancevariable
      # regenerate_branch
      0x5560c986d04c: mov rax, qword ptr [r13 + 0x18]
      # guard shape
      0x5560c986d050: cmp word ptr [rax + 6], 0x19
      0x5560c986d055: jne 0x5560c986f099
      0x5560c986d05b: mov rax, qword ptr [rax + 0x18]
      0x5560c986d05f: mov qword ptr [rbx + 8], rax
    ```

    The first ivar read is a bit more complex, but the second ivar read is
    much simpler.  I think eventually we could teach the context about the
    shape, then emit only one shape guard.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6737

commit 6582f34831cc665b2adcf7d475aceb9b918badb6
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-19 03:29:41 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-11-19 05:04:10 +0900

    rename SHAPE_BITS to SHAPE_ID_NUM_BITS

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6737

commit ba3b40a9aeb752d1b3e4c87748c977bfd3cf6f2c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-19 03:03:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-19 03:03:33 +0900

    [ruby/irb] Discover and load debug.gem even if it's not in Gemfile
    (https://github.com/ruby/irb/pull/448)

    * Minor fixes on debug command

    * Discover and load debug.gem even if it's not in Gemfile

    * Eliminate else for rescue

    * Discover the latest one from all gem paths

commit b1cbc883f2add06479113b61005f4cdfa90ff266
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-19 02:34:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-19 02:34:42 +0900

    [ruby/irb] Minor fixes on debug command
    (https://github.com/ruby/irb/pull/447)

    * Minor fixes on debug command

    * Update lib/irb/cmd/debug.rb

commit 10788166e7e568fdcd0b748e8d5dab442dcdc7ef
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-18 08:57:11 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-11-19 01:31:56 +0900

    Differentiate T_OBJECT shapes from other objects

    We would like to differentiate types of objects via their shape.  This
    commit adds a special T_OBJECT shape when we allocate an instance of
    T_OBJECT.  This allows us to avoid testing whether an object is an
    instance of a T_OBJECT or not, we can just check the shape.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6758

commit f0ce1186620273a1182e6084559765143099eb88
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-11-17 23:43:21 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-11-18 18:25:42 +0900

    Make anonymous rest arg (*) and block arg (&) accessible from ARGS node

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6760

commit ddd62fadaf91418cd259593285bc59358fb0b166
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-11-16 23:03:39 +0900
  Commit:     Shugo Maeda <shugo.maeda@gmail.com>
  CommitDate: 2022-11-18 18:23:06 +0900

    Allow anonymous keyword rest parameter with other keyword parameters

    Fixes [Bug #19132]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6743

commit 00872d120b017de2270fe18068cea2d37d41ed71
  Author:     Stan Lo <stan001212@gmail.com>
  AuthorDate: 2022-11-18 18:11:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-18 18:11:23 +0900

    [ruby/irb] Add debug command (https://github.com/ruby/irb/pull/446)

    https://github.com/ruby/irb/commit/30faa13fa3

commit a80b66e7ebf1179964b416cee6fd236048a73dcf
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-18 17:51:33 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-18 17:51:37 +0900

    Added build instructions of psych and fiddle with source files of libyaml and libffi

commit ca1aa7afeae43b02d00cf2f2a82acde293e48875
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-18 15:39:50 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-18 15:39:50 +0900

    Prevent a "method redefined" warning

    http://rubyci.s3.amazonaws.com/ubuntu2004-arm/ruby-master/log/20221118T033003Z.log.html.gz
    ```
    [21350/22024] TestIRB::ExtendCommandTest#test_show_source_end_finder/home/chkbuild/chkbuild/tmp/build/20221118T033003Z/ruby/test/irb/test_cmd.rb:523: warning: method redefined; discarding old show_source_test_method
    /home/chkbuild/chkbuild/tmp/build/20221118T033003Z/ruby/test/irb/test_cmd.rb:523: warning: previous definition of show_source_test_method was here
     ```

commit 417f3cd89365a12c1cd49f0df842a3dc2eb040b3
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-18 14:56:55 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-18 14:56:55 +0900

    tool/generic_erb.rb: Add a hack to prevent "unused variable" warnings

commit e19afe36ca64b261f25622219d570720fd20a28e
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-18 14:45:21 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-18 14:45:21 +0900

    Revert "tool/generic_erb.rb: Use ERB#result_with_hash instead of #result"

    This reverts commit bd148a2bdd0c1a4d7679eedcd649171cdb4234d7.

    ERB#result_with_hash does not work on Ruby 2.2

    https://ci.appveyor.com/project/ruby/ruby/builds/45420170
    ```
    ../tool/generic_erb.rb:33:in `block (2 levels) in <main>': undefined method `result_with_hash' for #<ERB:0x0000000002516650> (NoMethodError)
    ```

commit 096ffebbbf1f4a5bbdb3abb4b8335b43645cc870
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-18 14:39:40 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-18 14:39:40 +0900

    Prevent a "warning: assigned but unused variable - s2"

commit bd148a2bdd0c1a4d7679eedcd649171cdb4234d7
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-18 14:38:09 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-18 14:38:49 +0900

    tool/generic_erb.rb: Use ERB#result_with_hash instead of #result

    to prevent the warnings:
    ```
    ./tool/generic_erb.rb:23: warning: assigned but unused variable - output
    ./tool/generic_erb.rb:24: warning: assigned but unused variable - vpath
    ```

commit 98e9165b0ac0065b0594c41f7d9f8907e5b1e623
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-11-18 13:17:40 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-18 13:17:40 +0900

    Fix bug involving .send and overwritten methods. (#6752)

    @casperisfine reporting a bug in this gist https://gist.github.com/casperisfine/d59e297fba38eb3905a3d7152b9e9350

    After investigating I found it was caused by a combination of send and a c_func that we have overwritten in the JIT. For send calls, we need to do some stack manipulation before making the call. Because of the way exits works, we need to do that stack manipulation at the last possible moment. In this case, we weren't doing that stack manipulation at all. Unfortunately, with how the code is structured there isn't a great place to do that stack manipulation for our overridden C funcs.

    Each overridden C func can return a boolean stating that it shouldn't be used. We would need to do the stack manipulation after all of those checks are done. We could pass a lambda(?) or separate out the logic for "can I run this override" from "now generate the code for it". Since we are coming up on a release, I went with the path of least resistence and just decided to not use these overrides if we are in a send call.

    We definitely should revist this in the future.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit ab4379e086d69b13f4446bb0bddd87844650ea1a
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-18 10:55:24 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-18 10:55:24 +0900

    Refactor RB_SPECIAL_CONST_P (#6759)

    Since https://github.com/ruby/ruby/pull/6599, RUBY_IMMEDIATE_MASK also
    overlaps RUBY_Qnil. Now RB_SPECIAL_CONST_P seems confusing since both
    RB_IMMEDIATE_P and RB_TEST check for RUBY_Qnil while we only need to
    check RUBY_Qnil besides RUBY_IMMEDIATE_MASK. I'd like to make this
    change to make it less confusing.

    I confirmed that this doesn't change the number of instructions used for
    the RUBY_Qfalse check on Linux x86_64 GCC and macOS arm64 Clang.

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit d8202a52a5fedd2209248b030ea6c41382f5f3e2
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-18 09:47:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-18 09:47:53 +0900

    [ruby/irb] Add an option to suppress code_around_binding
    (https://github.com/ruby/irb/pull/444)

    for debug.gem's `irb` command

commit cb4c89e08ea2f879b6a860a3d6944efce6c9bf50
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-11-18 08:19:21 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-18 08:19:21 +0900

    Fix quoting of code in `NEWS.md`.

commit ea8a7287e2b96b9c24e5e89fe863e5bfa60bfdda
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-11-18 07:50:25 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-18 07:50:25 +0900

    Add support for `sockaddr_un` on Windows. (#6513)

    * Windows: Fix warning about undefined if_indextoname()

    * Windows: Fix UNIXSocket on MINGW and make .pair more reliable

    * Windows: Use nonblock=true for read tests with scheduler

    * Windows: Move socket detection from File.socket? to File.stat

    Add S_IFSOCK to Windows and interpret reparse points accordingly.
    Enable tests that work now.

    * Windows: Use wide-char functions to UNIXSocket

    This fixes behaviour with non-ASCII characters.
    It also fixes deletion of temporary UNIXSocket.pair files.

    * Windows: Add UNIXSocket tests for specifics of Windows impl.

    * Windows: fix VC build due to missing _snwprintf

    Avoid usage of _snwprintf, since it fails linking ruby.dll like so:

      linking shared-library x64-vcruntime140-ruby320.dll
      x64-vcruntime140-ruby320.def : error LNK2001: unresolved external symbol snwprintf
      x64-vcruntime140-ruby320.def : error LNK2001: unresolved external symbol vsnwprintf_l

    whereas linking miniruby.exe succeeds.

    This patch uses snprintf on the UTF-8 string instead.

    Also remove branch GetWindowsDirectoryW, since it doesn't work.

    * Windows: Fix dangling symlink test failures

    Co-authored-by: Lars Kanis <kanis@comcard.de>

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 4e4b29b1a9e534554594b6f18fc0bdc462638934
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-18 07:00:25 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-18 07:02:01 +0900

    YJIT: Make the code GC test stabler

    The first `add_pages` call shouldn't hit Code GC yet; otherwise
    `compiles` returns false. With the increased code size in runtime_stats
    itself, it sometimes hits Code GC too early, at least in arm64 that has
    a large code size.

commit c80edc9f98f58826d6c6d4b5ee11a2886bbfb006
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-18 05:59:59 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-18 05:59:59 +0900

    YJIT: Add object shape count to stats (#6754)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 4b29eb17f2b01442198c81c5f62fcd3045aab659
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-18 04:43:46 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-18 04:43:46 +0900

    Fix indentation of switch statement in shape.c

commit 3f3a53919769bc3035d7837eb2f7890d7b675f86
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-18 04:31:56 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-18 04:31:56 +0900

    YJIT: Add missing key for non-stats build

commit 0446d961a09cf324636f6dc0603ae60282c6f1c1
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-18 03:58:56 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-18 03:58:56 +0900

    YJIT: Fix typo in stats references (#6753)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 189e3c0ada43e4adb00d601dfdd26cdc42cffb2d
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-11-17 13:58:08 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-17 23:19:17 +0900

    Add default cases for cache point finding function

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6744

commit 90bfac296ec419b22be9ecb1eb7bf189ebc55243
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-11-16 23:40:44 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-17 23:19:17 +0900

    Add OP_CCLASS_MB case

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6744

commit a145a204ec01a5087a3d3699e3707b41afd5fd6b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-17 21:50:40 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-17 21:52:50 +0900

    [DOC] Update about `sec` argument of `Time.new`

commit 7b1d23fd295fe8275b313f31ea545f7f6b3f2e62
  Author:     Lars Kanis <kanis@comcard.de>
  AuthorDate: 2022-11-17 18:57:52 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-17 18:57:52 +0900

    Windows: Readlink improvements (#6745)

    * Windows: Use readlink emulation for File.readlink

    This fixes readlink emulation for the ERROR_MORE_DATA case and general error reporting.
    It now releases GVL while readlink IO operation.

    The dedicated rb_readlink was introduced in commit 2ffb87995a33cdc7ba609a4b867f03f18da0c3b3
    in order to improve encoding and buffer allocation.
    However the encoding issues are solved since ruby-3.0 switched to UTF-8
    and the buffer allocation will be improved in a later commit.

    * Windows: Increase the default buffer size for reparse point info

    So far nearly all queries of reparse points needed two attempts to get enough buffer.

    * Windows: Remove declaration of rb_w32_wreadlink

    It was removed in commit 2f6fdd3aebdee2ce04d003b206f6da78120e8235

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit c76909e551f0f60b7a354ab748ef1a04b84d06fb
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-17 13:52:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-17 13:52:50 +0900

    [ruby/irb] Bump up 1.4.3

    https://github.com/ruby/irb/commit/1bddbbf602

commit 923c1aaed7a5707d5c358627aad37f29e7738143
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-07-26 07:35:25 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-17 13:06:32 +0900

    Drop Ruby 2.5 support

    Because it has reached EOL for more than 1.5 years and it won't be
    supported by the next reline version either.

commit e61b3e6f43434bd815577a67d4f1719091b57d5c
  Author:     Patrick Plenefisch <simonpatp@gmail.com>
  AuthorDate: 2022-10-01 03:26:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-17 12:39:04 +0900

    [ruby/irb] Fix https://github.com/ruby/irb/pull/295: Ignore Java
    package reference objects in
    JRuby

    https://github.com/ruby/irb/commit/84d030182d

commit a777ec0d85f1d52ddf531931c7457a65961f0082
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-17 09:30:39 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-17 09:30:39 +0900

    YJIT: Shrink version lists after mutation (#6749)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 3259aceb3514892450664828b39a78cc95a412fa
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-17 08:48:46 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-17 08:48:46 +0900

    YJIT: Pack BlockId and CodePtr (#6748)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 1b8236acc212a6751da7248eb3f22b0262ca0623
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-17 08:31:13 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-17 08:31:13 +0900

    YJIT: Add compiled_branch_count stats (#6746)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 3eb7a6521ce08eb3758e63575a90b66a3ea10717
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-17 03:09:15 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-17 03:09:15 +0900

    YJIT: Shrink the vectors of Block after mutation (#6739)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 05af417587cf57142b66e5041b592fe67803a3db
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-17 03:08:52 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-17 03:08:52 +0900

    YJIT: Show YJIT build option in RUBY_DESCRIPTION (#6738)

    YJIT: Show YJIT profile in RUBY_DESCRIPTION

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 24cbc50c76f7ccc89f9510250359f3a405d9af68
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-05 01:01:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-16 20:47:23 +0900

    Remove duplicate `.rbinc` on `.rb` dependencies

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6742

commit 1f4f6c9832d83e7ebd65ccf4e95cef358b3512c6
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-11-15 13:24:08 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-16 18:58:33 +0900

    Using UNDEF_P macro

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6721

commit dc1c4e46758ace2c9e5e822df0d64b16bb564bb4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-16 11:43:52 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-16 18:42:46 +0900

    Clean extension build directories and exts.mk file

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6741

commit be65cf53253fa955cd4016459b3add3ba6046837
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-16 11:41:19 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-16 18:42:46 +0900

    Remove `-j` option from `MFLAGS` for sub-makes

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6741

commit fca50abb7c7e5369fdb8d2d3b6c1750076f3d846
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-16 16:42:41 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-16 16:42:41 +0900

    Let mjit-bindgen use BASERUBY and bundle/inline (#6740)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit cd2da0941035c231bc95007a269b6dc3d4b62ca9
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-16 14:59:38 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-16 14:59:38 +0900

    MJIT: Refactor BitField dereference a little

commit e7443dbbcaf82eee200d33a5c3bc374ad9eec8a7
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-16 14:34:30 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-16 14:34:30 +0900

    Rewrite Symbol#to_sym and #intern in Ruby (#6683)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 41b0f641ef0671d8cde397e56b1eb3c6b8e0f0db
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-16 08:23:20 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-16 08:23:20 +0900

    YJIT: Always encode Opnd::Value in 64 bits on x86_64 for GC offsets (#6733)

    * YJIT: Always encode Opnd::Value in 64 bits on x86_64

    for GC offsets

    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>

    * Introduce heap_object_p

    * Leave original mov intact

    * Remove unneeded branches

    * Add a test for movabs

    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 0d384ce6e627539d17f9307e522cb98bbca1ace3
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-16 08:20:02 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-16 08:20:02 +0900

    YJIT: Include actual memory region size in stats (#6736)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit d1fb6595475707986356fd2533fa3f2a650ea39b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-16 07:50:12 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-16 07:50:12 +0900

    YJIT: Count getivar side exits by receiver flag changes (#6735)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 1125274c4e8aeffd8609ced41c05d26d45b9b5ad
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-16 05:57:43 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-16 05:57:43 +0900

    YJIT: Invalidate redefined methods only through cme (#6734)

    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>

    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 9751b54971c5ad3bab29ce8af6ec50695aa43251
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-11-16 02:26:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-16 02:26:51 +0900

    [ruby/irb] Improve testing infra
    (https://github.com/ruby/irb/pull/442)

    * Add test_in_isolation task to run tests in isolation

    This simulates how tests are run in Ruby CI and can detect some issues
    before they're merged and break Ruby CI later.

    * Run test_in_isolation task on CI

    * Fix TestRaiseNoBacktraceException's setup

    https://github.com/ruby/irb/commit/51f23c58b0

commit ac063fd4c44fc90146908e9039706a79484c6b46
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-16 00:10:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-16 00:44:34 +0900

    Depending on revision.h with VPATH

commit 5dcbe5883364c763ca5324e40716a334360c19a7
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-15 00:24:55 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-15 22:53:46 +0900

    Fix buffer overrun in ivars when rebuilding shapes

    In rb_shape_rebuild_shape, we need to increase the capacity when
    capacity == next_iv_index since the next ivar will be writing at index
    next_iv_index.

    This bug can be reproduced when assertions are turned on and you run the
    following code:

        class Foo
          def initialize
            @a1 = 1
            @a2 = 1
            @a3 = 1
            @a4 = 1
            @a5 = 1
            @a6 = 1
            @a7 = 1
          end

          def add_ivars
            @a8 = 1
            @a9 = 1
          end
        end

        class Bar < Foo
        end

        foo = Foo.new
        foo.add_ivars
        bar = Bar.new
        GC.start
        bar.add_ivars
        bar.clone

    You will get the following crash:

        Assertion Failed: object.c:301:rb_obj_copy_ivar:src_num_ivs <= shape_to_set_on_dest->capacity

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6725

commit 36dc99af5aa3932f3a85b1d8212e1d3625307a90
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-15 20:19:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-15 20:19:43 +0900

    Added empty class for test methods in TestIRB cases

commit aecb7f6efc8422d98453128c80754121022b0766
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-05 20:44:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-15 19:08:30 +0900

    [ruby/irb] Deprecate USE_RELINE and USE_REIDLINE

    Based on this commit: https://github.com/ruby/irb/commit/93f87ec65344b44123b0150a5fc07de1fd4c80c4

    It appears that the maintainer @aycabta wanted to deprecate any `USE_*LINE` configs in favor of
    `USE_MULTILINE`. So we should deprecate `USE_RELINE` as well.

    https://github.com/ruby/irb/commit/478f19f3ae

commit 34320d883f7197444fd240c68a65dd6cc6f395e3
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-05 20:42:01 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-15 19:08:29 +0900

    [ruby/irb] Deprecate reidline flags

    https://github.com/ruby/irb/commit/9957e83f7d

commit 4f348e482c2b539aaf535ac3dabc07fed6718e59
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-05 20:38:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-15 19:08:28 +0900

    [ruby/irb] Rename leftover Reidline references

    https://github.com/ruby/irb/commit/0ed8b103ed

commit 1eae15142f0fd9e5285e3d685bb1448f0f441b1c
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-11-13 20:19:40 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-15 19:07:32 +0900

    [ruby/irb] Remove duplicated TestInputMethod definitions

    https://github.com/ruby/irb/commit/4b831d02e1

commit 1a9e87fe3a0bb8a4a16e34997371b1823557202d
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-15 17:11:44 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-15 17:34:00 +0900

    MJIT: Fix vm_cc_cme(cc).def.type to use bit field

    access properly. Because the libclang node had two children, it wasn't
    handled well by the pattern matching for the bit field case.

    In addition to that, this bit field has a non-1 width. Because we're
    returning true/false for a width-1 bit field, I added another behavior
    that works like a char value for bit fields with width 2-8.

commit f500ca9b8a62599433f7087fe1da30ec16e3564c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-15 17:18:12 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-15 17:18:13 +0900

    Handle more MJIT compilation failures

    NotImplementedError is not part StandardError, for example. When that
    kind of exception happens, current_cc_unit remains not NULL, and
    mjit_finish ends up waiting for 5 seconds, which is inconvenient.

commit 2652bc3578b79dbe9b3b28d4ee67b3729789cc61
  Author:     Johnny Willemsen <jwillemsen@remedy.nl>
  AuthorDate: 2022-11-15 17:06:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-15 17:15:19 +0900

    [ruby/racc] Update racc.gemspec

    Updated homepage to https://github.com/ruby/racc

commit 69e47b7fa6611a852e86ea6efee4ba9cf49f893e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-15 16:37:30 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-15 16:39:38 +0900

    MJIT: Remove reference to ROBJECT_EMBED_LEN_MAX

    maybe not used since some shape changes?

commit d15d1c01c28f63888475f8016adbc8b4f982b573
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-15 16:38:52 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-15 16:38:52 +0900

    Rename --mjit-min-calls to --mjit-call-threshold (#6731)

    for consistency with YJIT

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit c75de1e3304e804be9c073940f396c8a506a005f
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-15 15:58:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-15 15:59:11 +0900

    [ruby/bigdecimal] Add fallback definition of MAYBE_UNUSED

    https://github.com/ruby/bigdecimal/commit/b2123faa52

commit c925a2ee91a06cd91f6c1045d69041c699f12105
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-11-11 20:15:03 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-15 14:45:51 +0900

    Update RSpec gems

commit 3c60e030b57be556ea2002d1416fdfa6c1cb2a1b
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-15 13:01:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-15 13:02:01 +0900

    [ruby/bigdecimal] Replace sprintf by snprintf

    https://github.com/ruby/bigdecimal/commit/d6f5bb40c7

commit e74d82f67447d10347b154d5e9b098397e80567c
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-15 09:15:50 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-11-15 10:04:50 +0900

    Implement LDURH on Aarch64

    When RUBY_DEBUG is enabled, shape ids are 16 bits.  I would like to do
    16 bit comparisons, so I need to load halfwords sometimes.  This commit
    adds LDURH so that I can load halfwords.

      https://developer.arm.com/documentation/ddi0596/2021-12/Base-Instructions/LDURH--Load-Register-Halfword--unscaled--?lang=en

    I verified the bytes using clang:

    ```
    $ cat asmthing.s
    .global _start
    .align 2

    _start:
      ldurh w10, [x1]
      ldurh w10, [x1, #123]
    $ as asmthing.s -o asmthing.o && objdump --disassemble asmthing.o

    asmthing.o:     file format mach-o arm64

    Disassembly of section __TEXT,__text:

    0000000000000000 <ltmp0>:
           0: 2a 00 40 78   ldurh   w10, [x1]
           4: 2a b0 47 78   ldurh   w10, [x1, #123]
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6729

commit 9228ae97c5f4e27a3bd534d4b40c6f390cb8aaac
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-15 09:52:20 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-15 09:53:14 +0900

    Try to let dependabot maintain the version comment

    It seems like dependabot supports updating the `# vX.Y.Z` comment.
    The reason why I disabled this was that it failed to update this, but
    maybe it was because it had `, checking sha`. Let me try it again with
    that removed.

commit 3147a3900f7fc5ee7f763741dcc97f4487de79f4
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-15 09:32:53 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-15 09:34:23 +0900

    [ruby/bigdecimal] Mark some functions MAYBE_UNUSED

    https://github.com/ruby/bigdecimal/commit/d70a4d53e5

commit 5c3dba83faee9dca30fa37d14c52419d68300409
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-15 09:01:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-15 09:01:29 +0900

    Re-order checks for colons in UTC offset

commit b7d591643ae37a556217a22e1ee9e9c6ab7cfd3e
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-15 06:16:26 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-11-15 08:42:11 +0900

    Remove USE_RVARGC code

    We don't need this constant to be exposed anymore, so remove it

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6728

commit 6cd0553ab7d6927e07cc7f00305cb413436b7608
  Author:     Shohei YOSHIDA <syohex@gmail.com>
  AuthorDate: 2022-11-14 09:50:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-15 08:39:32 +0900

    [rubygems/rubygems] Update comment by the review comment

    https://github.com/rubygems/rubygems/commit/7c54dc56f6

commit 436aa6e64df1164c1158210936f8f606f49cbb6b
  Author:     Shohei YOSHIDA <syohex@gmail.com>
  AuthorDate: 2022-11-08 21:30:14 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-15 08:39:32 +0900

    [rubygems/rubygems] Fix '--force' option documentation of 'bundle clean'

    '--path' option is no longer used.

    https://github.com/rubygems/rubygems/commit/43b3d5f7bc

commit 710c1ada8494859a6902c0baf8566d474c34ce32
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-15 06:59:43 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-15 06:59:43 +0900

    Use string's capacity to determine if reembeddable

    During auto-compaction, using length to determine whether or not a
    string can be re-embedded may be a problem for newly created strings.
    This is because usually it requires a malloc before setting the length.
    If the malloc triggers compaction, then the string may be re-embedded
    and can cause crashes.

commit 9a6c3355c5c9541b9afb94d4ee770a7584c7ac15
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-15 05:40:47 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-15 05:40:47 +0900

    Set array capacity/shared immediately after alloc

    If auto-compaction is enabled, then we have to set the capacity/shared
    immediately after allocating a heap array. If compaction runs before
    capacity/shared is set then it could cause the array to be re-embedded,
    which can cause crashes.

commit 6dd1a5f532711a28ffe815455503f5a2b1f70d23
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-12 00:37:11 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-15 01:25:41 +0900

    Remove unused function rb_shape_transition_shape

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6717

commit 3fae53a343ebd7686bb20d8f4b6855f4d11019cd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-14 18:59:06 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-14 18:59:06 +0900

    [Bug #19127] Fix revision.h dependency when no baseruby

    Disconnect the dependency of revision.h on the timestamp file if no
    baseruby is available

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6724

    Merged-By: nobu <nobu@ruby-lang.org>

commit a8537aa6a5ec6da5261e727943ba267bc422e594
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-14 17:29:28 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-14 17:29:28 +0900

    Import shape constants with mjit-bindgen

commit 80bab6c8eddbb225c88155f2eb456a4d937294c7
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-14 17:24:08 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-14 17:24:08 +0900

    Import class constants with mjit-bindgen

commit d019c3a4bd7b0955c630195c585f3f029a78877e
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-14 15:37:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-14 15:37:33 +0900

    [ruby/error_highlight] Bump version

    https://github.com/ruby/error_highlight/commit/5275078dc6

commit 81c494d81009290706967095912a1f4791e2d5ee
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-14 15:19:01 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-14 15:22:35 +0900

    [ruby/error_highlight] Enable tests for TypeError and ArgumentError

    These tests were unintentionally disabled by `if false`

    https://github.com/ruby/error_highlight/commit/fa6d00d80d

commit 8bfd4dd4e15a9ac3a308c3c45db629e74fae9b0c
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-14 14:36:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-14 15:06:12 +0900

    [ruby/error_highlight] Enable ErrorHighlight for TypeError/ArgumentError only after Ruby 3.2

    ... because changing TypeError#message and ArgumentError#message is
    highly incompatible.

    https://github.com/ruby/error_highlight/commit/39aa897c7a

commit 96d29dff66a0d2e045d09ce6bb7bb3b382c59c2c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-14 14:14:46 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-14 14:14:47 +0900

    Fix invokebuiltin in Ruby MJIT

    https://github.com/ruby/ruby/blob/45fe7f757522ed7d1d3ec754da59d41d45dd6bab/tool/ruby_vm/views/_mjit_compile_invokebuiltin.erb#L21
    has not been ported correctly.

commit 3dd4e381fe3c7faf886145ad7ab2152c6b199d69
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-14 13:35:35 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-14 13:35:35 +0900

    Reduce the number of branches in jit_exec (#6722)

    * Reduce the number of branches in jit_exec

    * Address build failure in some configurations

    * Refactor yjit.h

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit dc5e2eaab6a82d31992127e4a3ba4028824d7b92
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-14 08:13:13 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-14 08:13:44 +0900

    Refactor update_global_event_hook

    It seems more readable to put JIT invalidation code together.

commit e377875cff5dd93758296180c3bd6a35c3bbbc12
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-14 07:41:08 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-14 07:41:08 +0900

    s/mjit_func_t/jit_func_t/

commit 68e05234848e8cd0dae7ba9f27a17f9220236fba
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-14 06:58:50 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-14 07:00:30 +0900

    Remove unused debug counters

    The structure and readability of jit_exec is messed up right now. I'd
    like to help the current situation by this for now. I'll resurrect
    them when I need it again.

commit 6246788bc47b5d28e3c612479a2986d84f2aa589
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-14 02:54:41 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-14 02:54:41 +0900

    YJIT: Instrument global allocations on stats build (#6712)

    * YJIT: Instrument global allocations on stats build

    * Just use GLOVAL_ALLOCATOR.stats()

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit bc8ba244b8524c8537eda4ca79f880312c8f4528
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-14 02:51:19 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-14 02:51:19 +0900

    YJIT: Fix invalidation for c_call and c_return (#6719)

    Follow-up for 2b8191bdad7545b71f270d2b25a34cd2b3afa02f. Since that
    commit, we stopped doing code invalidation the second time the call and
    return events are enabled. We need to do it every time these events are
    enabled because we might have generated code while these events are
    disabled.

    Also rename locals and edit comments to make it more clear that the iseq
    rewrite code path only happens the first time a particular iseq trace
    event is enabled.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit a1b460bd6e4b53ce41771669d39a4a6f414bf35f
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-11-14 02:42:47 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-14 02:42:47 +0900

    Update yjit.md

    Remove disclaimer

commit d5e1b82f5c3e29e5d0a4a49216ae26e18af3f1c6
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-14 02:33:23 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-14 02:33:23 +0900

    YJIT: Remove unused src_ctx from Block (#6714)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 2f7d2662dd90a6985f1c98ea93cfc2026407a8ab
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-13 23:54:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-13 23:54:43 +0900

    Control non-parallel parts with `.WAIT` if available

commit 8d82f4ba1c715da6a50b8626792a49c343914efd
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-13 21:05:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-13 21:33:29 +0900

    [ruby/bigdecimal] Add specific value allocators

    * Add NewZero* and NewOne* function families
    * Use them instead of VpAlloc for allocating 0 and 1

    https://github.com/ruby/bigdecimal/commit/9276a94ac7

commit 70c9d5b504525afd679cb45174e9544f150428a5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-13 18:05:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-13 18:05:11 +0900

    Try to overwrite the file in VPATH if possible

commit 66529eef883cc8bb9bc628122f9fa0104acd79fc
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-12 08:48:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-13 17:38:44 +0900

    Force to update revision.h when commits differ

commit 18fa7059e83d6c1afa32c4b331ca254da452a36a
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-13 15:15:31 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-13 15:15:40 +0900

    Deal with different Ruby versions

commit 802dce4acd97234bef88fe4bbb98db5ab90c45d9
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-13 14:59:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-13 15:01:27 +0900

    [ruby/bigdecimal] Add and use specific value allocators

    * Add rbd_allocate_struct_zero for making 0.0
    * Add rbd_allocate_struct_one for making 1.0
    * Use them to replace VpAlloc calls
    * Renmae VpPt5 to VpConstPt5

    https://github.com/ruby/bigdecimal/commit/40c826f5e6

commit 019f53de5c92059745fd1fcf8f3b8dcad92bff67
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-13 14:59:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-13 15:01:27 +0900

    [ruby/bigdecimal] Make VPrint function always available

    https://github.com/ruby/bigdecimal/commit/5391f7e92c

commit c0735d1d72aeeed777a233831c6a5208edadc2dc
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-13 14:55:00 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-13 14:55:00 +0900

    Fix a CI failure in bigdecimal

commit d1f55dea864f1ab819bc8332476ae2824c5d0302
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-13 13:26:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-13 13:29:19 +0900

    [ruby/bigdecimal] Tweak VpAlloc

    * Stop reusing mx and mf
    * Check szVal == NULL first
    * Treat special values before checking the leading `#`

    https://github.com/ruby/bigdecimal/commit/14f3d965f8

commit bbb9f7235329380d9cf617530ca4d39ba07e1824
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-13 12:46:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-13 12:47:40 +0900

    [ruby/bigdecimal] Rewrite allocation functions

    * Rename them
    * Make allocation count operations atomic

    https://github.com/ruby/bigdecimal/commit/a5ab34a115

commit 27034102890f5feeb28682e5117f1d2ec6a949ad
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-13 11:46:00 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-13 11:46:42 +0900

    [ruby/bigdecimal] Twak GetPrecisionInt and rename it to check_int_precision

    https://github.com/ruby/bigdecimal/commit/69d0588a3b

commit ef1c6109b12b78926b7cb31cd8b0d27b629a35c4
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-13 11:01:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-13 11:02:02 +0900

    [ruby/bigdecimal] Tweak check_rounding_mode_option

    https://github.com/ruby/bigdecimal/commit/e1c6c9be25

commit 74c6e6e565aad4cbf2e5b7a13c21e78361808404
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-13 10:50:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-13 11:02:01 +0900

    [ruby/bigdecimal] Rewrite check_rounding_mode function

    Use table-lookup algorithm instead of consecutive if-statements.

    https://github.com/ruby/bigdecimal/commit/23eaff3ae5

commit b89769b978588ede479bea17fedc976d4387b281
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-13 10:13:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-13 11:02:00 +0900

    [ruby/bigdecimal] [Doc] Fix the document of n_significant_digits

    https://github.com/ruby/bigdecimal/commit/91b72a9341

commit 977aac057f590ea19754d03e1475b470fc07c7d3
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-13 10:11:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-13 11:02:00 +0900

    [ruby/bigdecimal] Make GetVpValue inline

    https://github.com/ruby/bigdecimal/commit/1b642e2e59

commit 0d5248673da4399cd5ee7899f988213fff177e87
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-11-13 10:09:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-13 11:01:59 +0900

    [ruby/bigdecimal] Make BigDecimal_double_fig inline

    https://github.com/ruby/bigdecimal/commit/4ecf04da7a

commit 0a9d51ee9d2b3d0111832e5ea1c8195a16e2f99b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-12 06:00:58 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-12 07:40:31 +0900

    Migrate our resolver engine to PubGrub

      https://github.com/rubygems/rubygems/pull/5960

      Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>

commit 14a1394bcd85c90c9f14f687fd4a80ba5b96b437
  Author:     Stan Lo <stan001212@gmail.com>
  AuthorDate: 2022-11-12 06:05:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-12 06:05:35 +0900

    [ruby/irb] Simplify info command's tests
    (https://github.com/ruby/irb/pull/440)

    https://github.com/ruby/irb/commit/5942949226

commit a48e01ccba99eaec48bf63db326c0602fbd50610
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-11-11 00:36:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-12 02:05:29 +0900

    [ruby/net-http] Update lib/net/http.rb

    https://github.com/ruby/net-http/commit/16d042fad6

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

commit 4d9ada223bf7d57a62e94b0a2082cc92ba5b7813
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-11-10 07:08:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-12 02:05:28 +0900

    [ruby/net-http] Prettify class hierarchies in Net::HTTP

    https://github.com/ruby/net-http/commit/4a5732e210

commit 04c5adf80697a310f12f473b5ef772d234576f2b
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-11 07:24:10 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-11-12 01:13:07 +0900

    YJIT: Fix staying in invalidated code after proc calls

    Previously, there is no instruction boundary patch point after
    the call to a non-leaf C function we generate for
    OPTIMIZED_METHOD_TYPE_CALL. This meant that if code GC is triggered
    while inside the C function, we would keep running invalidated code when
    we return from the C function. This had the effect of running
    stale branch stubs, jumping to bad code, etc.

    Use jit_prepare_routine_call() to make sure we exit from the invalidated
    region as soon as possible after the C call in case of invalidation.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6711

commit 90bbc891b192c30432c517ccb279ed687bb2d0b4
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-11 17:01:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-11 21:12:56 +0900

    Enable only master-branch

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6716

commit 5a1ddc486bad30d795ce94021ee03c085e7a88c1
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-11 16:54:51 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-11 21:12:56 +0900

    Test with topic-branch

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6716

commit 800caf4ee1eca21252da0ec148ed7840df89bc9b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-11 16:54:24 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-11 21:12:56 +0900

    Use secrets.SCORECARD_READ_TOKEN

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6716

commit a0fcbce415fc045ff16eb74946a40774c0d39ac5
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-11 16:06:36 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-11 21:12:56 +0900

    Try to use ossf/scorecards

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6716

commit 28611be6ee84ba8eb19e667a70ae129833b98b8b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-11 15:05:59 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-11 17:24:08 +0900

    Merge RubyGems/Bundler master from ee2f8398324af4bc1b95f7565ce2fda98126e026

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6715

commit de159c5a855dd53bfd9ce284c9099306724560a7
  Author:     Josef Šimánek <josef.simanek@gmail.com>
  AuthorDate: 2022-11-05 06:56:31 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-11 17:24:08 +0900

    [rubygems/rubygems] Store last check even when upgrade is not available and fix test.

    https://github.com/rubygems/rubygems/commit/bcffc2b0a5

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6715

commit 7ce0f81fbbd9c2b35e9fe35f5ef040626e284a88
  Author:     Josef Šimánek <josef.simanek@gmail.com>
  AuthorDate: 2022-10-29 09:47:14 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-11 17:24:08 +0900

    [rubygems/rubygems] Use file in XDG_STATE_HOME directory to store last update check timestamp.

    https://github.com/rubygems/rubygems/commit/0fbc4ace8a

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6715

commit c7d043065c058f20ce30c61bb3ce127cb15cc0a8
  Author:     Josef Šimánek <josef.simanek@gmail.com>
  AuthorDate: 2022-09-11 12:40:55 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-11 17:24:08 +0900

    [rubygems/rubygems] Add 'call for update' to RubyGems install command.

    https://github.com/rubygems/rubygems/commit/05811f8248

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6715

commit ceeefb5870c144ddc069b2c9b8a19dbd4947a947
  Author:     Jason Karns <jason.karns@gmail.com>
  AuthorDate: 2022-10-29 04:30:21 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-11 17:24:08 +0900

    [rubygems/rubygems] github source should default to secure protocol

    Bundler 2 switched to secure https here https://github.com/rubygems/rubygems/commit/c2e81f8ff63613871cc8b52653c5e176f8dafde3

    Insecure protocols should be avoided to prevent MITM attacks.

    https://github.com/rubygems/rubygems/commit/758413364a

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6715

commit adfbee85e07494d42e54b1c616e5fa62a207fb8f
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-11 09:05:51 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-11 09:07:00 +0900

    Allow a float error for Regexp.timeout

    The tests failed on windows

    https://github.com/ruby/ruby/actions/runs/3440997073/jobs/5740085169#step:18:62
    ```
        1) Failure:
      TestRegexp#test_s_timeout [D:/a/ruby/ruby/src/test/ruby/test_regexp.rb:1586]:
      <0.30000000000000004> expected but was
      <0.3>.

        2) Failure:
      TestRegexp#test_timeout_shorter_than_global [D:/a/ruby/ruby/src/test/ruby/test_regexp.rb:1631]:
      <0.30000000000000004> expected but was
      <0.3>.
    ```

commit 8fa83fa0b2031ad17f01b5a12b39599398dc6da6
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-11 07:55:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-11 07:55:15 +0900

    [ruby/irb] Transform ls's --grep/-G option to keyword args
    (https://github.com/ruby/irb/pull/437)

    * Transform ls's --grep/-G option to keyword args

    * Make --grep less flexible

    * Support -g instead of --grep

    * Suppress warnings from symbol aliases

commit d5513da01d24fbc4de71975b6a49f0ba3b3be401
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-10-29 03:23:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-11 07:45:31 +0900

    [rubygems/rubygems] Update bundler/spec/bundler/shared_helpers_spec.rb

    https://github.com/rubygems/rubygems/commit/8b1481ba77

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

commit b5f809c4961bd43b8e77cceebad44e341618998d
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-10-29 01:19:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-11 07:45:31 +0900

    [rubygems/rubygems] Load "bundler/setup" in lib/rubygems.rb

    Ruby interpreter loads some special gems at startup: did_you_mean,
    error_highlight, and syntax_suggest. These gems are loaded before
    `bundler/setup` is loaded by `RUBYOPT=-rbundler/setup`.
    So, the versions of the gems are not controllable by Gemfile.

    This change will `require "bundler/setup"` in rubygems.rb (i.e., before
    the special gems are loaded). Now `bundle exec` sets an environment
    variable `BUNDLER_SETUP`, and rubygems requires the variable if defined.

    See also: https://bugs.ruby-lang.org/issues/19089

    https://github.com/rubygems/rubygems/commit/963cb65a2d

commit 06e17d7659f42cd59634931e5c8d9dd211c7b2e6
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-11 07:41:08 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-11 07:42:03 +0900

    Run EnvUtil.apply_timeout_scale outside of assert_separately

    It does not work well in assert_separately

commit 51d161980ae0e26602eb17bed5f9cc0beb61f9a3
  Author:     Thomas E. Enebo <tom.enebo@gmail.com>
  AuthorDate: 2022-11-11 04:37:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-11 07:36:34 +0900

    [ruby/racc] Make racc test more flexible (for JRuby).

    JRuby uses these same files for testing racc. The existing logic will not
    find 'racc' in a JRuby project checkout. This change allows it to work by
    just assuming 'ruby -S racc' when running tests. This will not change C
    Ruby's detection when setting up tests (since earlier checks will find
    racc).

    https://github.com/ruby/racc/commit/b74ce5e018

commit 2b8191bdad7545b71f270d2b25a34cd2b3afa02f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-11 07:12:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-11 07:12:38 +0900

    YJIT: Invalidate JIT code only for ISEQ_TRACE_EVENTS (#6695)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit d9056328514041c22f73809921118fa7a1478092
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-11 06:16:25 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-11 06:16:25 +0900

    Define YJIT_STATS on --enable-yjit=stats (#6710)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 7ee1cacb84e6b19908ac0e692601447597d40605
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-11-11 01:36:24 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-11 03:02:50 +0900

    Extract `rb_shape_get_parent` helper

    Extract an `rb_shape_get_parent` method instead of continually calling
    `rb_shape_get_shape_by_id(shape->parent_id)`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6708

commit 354791c248d7e21d5b70ded7c548af954491e247
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-11 03:00:15 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-11 03:00:16 +0900

    Remove inconsistency

    I meant they should be also fixed in
    https://github.com/ruby/ruby/pull/6694#discussion_r1019445575

commit 8b3347950e6344474430ed08f5fa19f613883660
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-11-11 02:56:22 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-11 02:56:22 +0900

    Enable --yjit-stats for release builds (#6694)

    * Enable --yjit-stats for release builds

    In order for people in the real world to report information about how their application runs with YJIT, we want to expose stats without requiring rebuilding ruby. We can do this without overhead, with the exception of count ratio in yjit, since this relies on the interpreter also counting instructions.

    This change exposes those stats, while not showing ratio in yjit if we are not in a stats build.

    * Update yjit.rb

    Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>
    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 0de3bc92b4fc3bb9fc0930e98baed37044ed44e1
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-11 02:31:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-11 02:31:15 +0900

    [ruby/irb] Make $ and @ default aliases
    (https://github.com/ruby/irb/pull/438)

    https://github.com/ruby/irb/commit/0613589476

commit bab8051d2d20a13f4aa26330a25e72ccec980f7a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-09 19:36:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-11 01:56:46 +0900

    [Bug #19100] [DOC] Add NEWS about PRNG update and incompatiblity

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6697

commit c771d835934141645db72bb98351c77b378ac17e
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-11 01:30:54 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-11 01:30:54 +0900

    Set up EXTSTATIC before checking it

    The bundle_loader check for darwin checks EXTSTATIC, but previously the
    setup for the variable comes after the check. I had trouble building
    using --with-static-linked-ext on darwin before this change.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6675

    Merged-By: XrXr

commit c726c48a3dacd9ca1cb0d96fee98890cb74b37d3
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-11-09 04:09:43 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-11 00:11:34 +0900

    Remove numiv from RObject

    Since object shapes store the capacity of an object, we no longer
    need the numiv field on RObjects. This gives us one extra slot which
    we can use to give embedded objects one more instance variable (for a
    total of 3 ivs). This commit removes the concept of numiv from RObject.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6699

commit 5246f4027ec574e77809845e1b1f7822cc2a5cef
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-11-09 05:35:31 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-11 00:11:34 +0900

    Transition shape when object's capacity changes

    This commit adds a `capacity` field to shapes, and adds shape
    transitions whenever an object's capacity changes. Objects which are
    allocated out of a bigger size pool will also make a transition from the
    root shape to the shape with the correct capacity for their size pool
    when they are allocated.

    This commit will allow us to remove numiv from objects completely, and
    will also mean we can guarantee that if two objects share shapes, their
    IVs are in the same positions (an embedded and extended object cannot
    share shapes). This will enable us to implement ivar sets in YJIT using
    object shapes.

    Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6699

commit 9986697b621e5345177a1c395489dcc9fab8602b
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-11-09 05:35:31 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-11 00:11:34 +0900

    Omit test on IO Buffers which relies on String being embedded

    There is currently a bug ([#19084]) in how extended strings work in
    IO Buffers. Object Shapes changes will make the string in this test
    extended on 32 bit machines. Since this behavior is currently broken
    (unrelated to object shapes) on 32 bit machines, this test will then
    fail. We preemptively omit it so that this commit can be reverted
    once the bug is fixed.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6699

commit 199b59f065ce6f1c13b8424f35a70c513523211b
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-11-10 07:04:35 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-10 23:26:37 +0900

    Fix bug in array pack with shared strings

    If string literals are long and they become shared, we need to make them
    independent before we can write to them. [Bug #19116]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6704

commit 68bd1d685579f9ae96f1c8160cf1fd9820e508da
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-10 23:07:20 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-10 23:07:20 +0900

    Fix compiler issues in test on C99

    Fixes the following issue when compiling using C99:

    ext/-test-/rb_call_super_kw/rb_call_super_kw.c
    ext/-test-/random/loop.c:16:39: error: extra ';' outside of a function [-Werror,-Wextra-semi]
    RB_RANDOM_DEFINE_INIT_INT32_FUNC(loop);

commit b7e8876704648cee6866591ac1aca7a54faff742
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-09 19:36:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-10 12:06:13 +0900

    [Bug #19100] Add `init_int32` function to `rb_random_interface_t`

    Distinguish initialization by single word from initialization by
    array.

commit 6eaed20e145c1ab4c9c4ccf669d0ebea934f4d36
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-08 09:06:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-10 11:59:45 +0900

    Add version to the interface of Random extensions

commit b7504af8fc73b92ae13b4cf3a65d2417d219ecb4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-09 22:04:28 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-10 09:51:50 +0900

    Preprocess for older bison is no longer needed

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6701

commit 9ab978b7183d92cf1451be5dce7c7cc72222a39a
  Author:     Eileen M. Uchitelle <eileencodes@users.noreply.github.com>
  AuthorDate: 2022-11-10 07:09:16 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-10 07:09:16 +0900

    Fix exit locations dump (#6703)

    While I was working on my RubyConf talk for tracing yjit exit locations
    I realized that there were exits from the dump code included in the
    stats data. For example I saw 224 interp leave exits for a simple script
    that should have had 1 or 2. I realized that the dump code needs to be
    called _after_ the stats are generated, otherwise the dump code will be
    counted in the stats exits.

    I've added a `_dump_locations` method to the `at_exit` for stats
    generation to ensure that it runs last. I've updated the documentation
    to add a note that if you call `dump_exit_locations` directly, your
    stats will include the dump code exits as well.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 0e1e1b19804b7ea704ec43c4fb23082f7e74da3b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-11-10 01:15:39 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-10 01:15:39 +0900

    [DOC] Enhanced RDoc for IO (#6669)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 1dc4128e92ed6e7af8556abdfb657c135f4e13b7
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-11-09 16:22:42 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Reduce warnings

commit 36ff0521c1e81f83bf050d428815ae7413960136
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-11-09 12:19:52 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Use long instead of int

commit d868f4ca31339095991e162e010fcda0f2d7bd39
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-09 00:37:46 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Check for integer overflow in the allocation of match_cache table

commit 14845ab4ffccc317a08629f4503c87ee97621c0b
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-08 23:36:14 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Ensure that the table size for CACHE_MATCH fits with int

    Currently, the keys for CACHE_MATCH are handled as an `int` type. So we
    should make sure the table size are smaller than the range of `int`.

commit 537286d0bb5021afe188cfba6100772bb0285e06
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-08 18:13:00 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Prevent GCC warnings

    ```
    regexec.c: In function ‘reset_match_cache’:
    regexec.c:1259:56: warning: suggest parentheses around ‘-’ inside ‘<<’ [-Wparentheses]
     1259 |     match_cache[k1 >> 3] &= ((1 << (8 - (k2 & 7) - 1)) - 1 << ((k2 & 7) + 1)) | ((1 << (k1 & 7)) - 1);
          |                              ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
    regexec.c:1269:60: warning: suggest parentheses around ‘-’ inside ‘<<’ [-Wparentheses]
     1269 |         match_cache[k2 >> 3] &= ((1 << (8 - (k2 & 7) - 1)) - 1 << ((k2 & 7) + 1));
          |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
    regexec.c: In function ‘find_cache_index_table’:
    regexec.c:1192:11: warning: ‘m’ may be used uninitialized [-Wmaybe-uninitialized]
     1192 |   if (!(0 <= m && m < num_cache_table && table[m].addr == p)) {
          |         ~~^~~~
    regexec.c: In function ‘match_at’:
    regexec.c:1238:12: warning: ‘m1’ is used uninitialized [-Wuninitialized]
     1238 |   if (table[m1].addr < pbegin && m1 + 1 < num_cache_table) m1++;
          |            ^
    regexec.c:1218:39: note: ‘m1’ was declared here
     1218 |   int l = 0, r = num_cache_table - 1, m1, m2;
          |                                       ^~
    regexec.c:1239:12: warning: ‘m2’ is used uninitialized [-Wuninitialized]
     1239 |   if (table[m2].addr > pend && m2 - 1 > 0) m2--;
          |            ^
    regexec.c:1218:43: note: ‘m2’ was declared here
     1218 |   int l = 0, r = num_cache_table - 1, m1, m2;
          |                                           ^~
    ```

commit ff5dba831910c91e293220b652be868e9cfdc8e1
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-08 18:09:57 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Return ONIGERR_MEMORY if it fails to allocate memory for cache_match_opt

commit a1c1fc558a0ee791e91a66cae5c9515679890339
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-11-08 15:13:27 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Revert "Refactor field names"

    This reverts commit 1e6673d6bbd2adbf555d82c7c0906ceb148ed6ee.

commit 22294731a82642ac63ed6708e0015361d05d6677
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-11-08 15:05:52 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Refactor field names

commit 0a14825f731afc468481569d332027abdd58cd4e
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-11-08 11:58:47 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Update timeout seconds for square test

commit 71c76d1bfad90c63bcd74fcd2447e52189de8c49
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-11-07 11:52:38 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Update timeout seconds

commit 80d145fa52e9077dc7812a94f3fc41208fc58bd7
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-11-07 09:03:12 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Fix and add regexp tests

commit ff2998a86c5f4238462715eaf6b6bfd70519349b
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-11-06 21:01:10 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Remove debug printf

commit 37613fea1657b1a0732501657275bc03e8e0ebc4
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-10-27 22:39:56 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Clear cache on OP_NULL_CHECK_END_MEMST

commit f25bb291b42a45d23cfc8658720c62e1f3a7390f
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-10-20 16:52:23 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Support OP_REPEAT and OP_REPEAT_INC

commit ea3d9893bf4d6c9b6016d5f7fe5a6cf820376e53
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-10-19 17:28:26 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Reduce warnings

commit 3c797319810ca86f1f3b0e556f6ac04d56b39c76
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-10-19 16:28:30 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Fix to compile when USE_CACHE_MATCH_OPT is disabled

commit 1134fa40ee65be5b74c05e38a29ef4ac353d5763
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-10-12 17:51:44 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Enable optimization for PUSH_IF/OR opcodes

commit 70f8e9efda017420b1a9503763824b87b748d3d5
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-10-12 16:51:00 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Enable optimization for ANYCHAR_STAR opcodes

commit cbabba9c82f3401a67d470ee6ef9213cb6161f57
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-10-06 17:11:33 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Add index to the latest NULL_CHECK_STACK for fast matching

commit aefb7e5fa5f60d6ad9a6cf56bbf9ac950cee302e
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-10-04 14:36:09 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Add static declaration to new functions

commit d84edce689b8634d9a627a2b73434b9115dd5c72
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-10-04 12:28:55 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Increment num_fail on OP_POP too

commit 8c9e4d37a3be68574e0a84d2321d694b3f87793f
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-10-04 11:20:49 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Fix look-around like operators and cclass

commit f07dea16e3f70fbc33c51dbc73ef0f33f965e010
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-10-04 01:02:51 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Keep cache optimization info to MatchArg for global matching

commit 881bf9a0b8b52c05a5917b95d988ae4b9a391a47
  Author:     TSUYUSATO Kitsune <make.just.on@gmail.com>
  AuthorDate: 2022-10-03 22:21:56 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 23:21:26 +0900

    Implement cache optimization for regexp matching

commit 230267d1a8f2b8245e911513926c06299ddeebc8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-09 20:15:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-09 21:34:02 +0900

    Now bison 3.0 or later is required

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6698

commit c3de7a3c58bf9a138ff8720ed56c0045d2b8e01d
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-08 13:35:37 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-09 12:25:35 +0900

    Make pending_interrupt?(Exception) work

    A patch from katsu (Katsuhiro Ueno)

    [Bug #19110]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6689

commit 558137d5f3b77294949bd042bb99ae12d37faa2f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-09 12:04:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-09 12:04:22 +0900

    [DOC] Fix missing type name

commit ef1c1ddf68e7219b055ae707b3f8c825d7c787b7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-09 11:58:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-09 11:58:37 +0900

    Use `rb_sprintf` instead of deprecated `sprintf`

commit 5d95cd99f4ed425c416cc91e8986a3402d5b557a
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-08 06:49:48 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-11-09 06:09:02 +0900

    YJIT: Reset dropped_bytes when patching code

    We switch to a new page when we detect dropped_bytes flipping from false
    to true. Previously, when we patch code for invalidation during code gc,
    we start with the flag being set to true, so we failed to apply patches
    that straddle pages. We would write out jumps half way and then stop,
    which left the code corrupted.

    Reset the flag before patching so we patch across pages properly.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6686

commit 1466682a23ce0d7bf1f30d8b9627b4597c037e4d
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-09 05:29:30 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-09 05:29:30 +0900

    YJIT: Improve checking message for rustc version (#6693)

    Preivously we didn't have a "checking ...." line for this check and when
    rustc was too old, we would dump the error message to the console like:

        checking for rustc... rustc
        error: there is no argument named `x`
         --> <anon>:1:33
          |
        1 | fn main() { let x = 1; format!("{x}"); }
          |                                 ^^^

        error: aborting due to previous error

    `configure` checks usually don't do this and this might be confusing.

    With this commit it now says something like:

        checking whether rustc is new enough for YJIT... no

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 1a65ab20cb6519ab3d4e58141cfd812eaea5f7e0
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-11-09 05:28:28 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-09 05:28:28 +0900

    Implement optimize call (#6691)

    This dispatches to a c func for doing the dynamic lookup. I experimented with chain on the proc but wasn't able to detect which call sites would be monomorphic vs polymorphic. There is definitely room for optimization here, but it does reduce exits.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit aada904d94ece1d1b48d6275169d3f906a062247
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-11-09 02:51:58 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-09 04:59:01 +0900

    [doc] Clarify how to build OpenSSL on macOS

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6692

commit 5643d2bb9aae3417cfc1b9dc85bf28dfb2574a55
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-09 02:36:29 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-09 02:36:29 +0900

    YJIT: Make more stats accessible from Ruby code (#6685)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit b7b78f062ff66c7a6da80e8d1dea734fcb7366c4
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-11-09 02:19:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-09 02:19:59 +0900

    [ruby/irb] Add execute_lines to reduce command tests' boilerplate
    code
    (https://github.com/ruby/irb/pull/436)

    https://github.com/ruby/irb/commit/1595337149

commit 0df47fdaf9c8bcfad0180aab81f9ceb162b360a1
  Author:     Bo Anderson <mail@boanderson.me>
  AuthorDate: 2022-10-16 06:51:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-09 02:05:19 +0900

    [rubygems/rubygems] Add tests for universal Ruby with arch-specific prebuilt gems

    https://github.com/rubygems/rubygems/commit/11229b16c3

commit 2244d5084e32fea801bff1060ef528769bebaa36
  Author:     Bo Anderson <mail@boanderson.me>
  AuthorDate: 2022-10-12 22:08:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-09 02:05:18 +0900

    [rubygems/rubygems] Map 'universal' to the real arch in Bundler for prebuilt gem selection

    https://github.com/rubygems/rubygems/commit/dd0c94f16a

commit 3703a81491a16554674e4b15bac87efa3eb18f3b
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-11-09 01:57:11 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-09 01:57:11 +0900

    YJIT: improve/fix code to automatically build YJIT when available (#6684)

    * YJIT: improve/fix code to automatically build YJIT when available

    * Set YJIT_SUPPORT=no

    * Fix rustc => $RUSTC

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit eacedcfe44a0ae22bf54ddb7df193c48d4c857c6
  Author:     Jean byroot Boussier <jean.boussier+github@shopify.com>
  AuthorDate: 2022-11-08 20:43:16 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-08 20:43:16 +0900

    mutex: Raise a ThreadError when detecting a fiber deadlock (#6680)

    [Bug #19105]

    If no fiber scheduler is registered and the fiber that
    owns the lock and the one that try to acquire it
    both belong to the same thread, we're in a deadlock case.

    Co-authored-by: Jean Boussier <byroot@ruby-lang.org>

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 4e728486b93eaec876ea8f876df9ecad350da269
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-08 14:41:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-08 17:07:39 +0900

    [ruby/error_highlight] Bump version

    https://github.com/ruby/error_highlight/commit/59c291cce1

commit 001606097b3239b84a5910e2f2bc814074cb6973
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-08 15:06:15 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-08 16:13:30 +0900

    Suppress false warning by a bug of gcc

    GCC [Bug 99578] seems triggered by calling `rb_reg_last_match` before
    `match_check(match)`, probably by `NIL_P(match)` in `rb_reg_nth_match`.

    [Bug 99578]: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6690

commit 4a7d6c2852aa734506be83c932168e8f974687b5
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-08 11:52:22 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-08 14:37:08 +0900

    Fix false LocalJumpError when branch coverage is enabled

    `throw TAG_BREAK` instruction makes a jump only if the continuation of
    catch of TAG_BREAK exactly matches the instruction immediately following
    the "send" instruction that is currently being executed. Otherwise, it
    seems to determine break from proc-closure.

    Branch coverage may insert some recording instructions after "send"
    instruction, which broke the conditions for TAG_BREAK to work properly.

    This change forces to set the continuation of catch of TAG_BREAK
    immediately after "send" (or "invokesuper") instruction.

    [Bug #18991]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6688

commit f7db1affd10767d729866e95c02ffb26266829ab
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-09-23 23:01:55 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-11-08 12:30:03 +0900

    Set default %printer for NODE nterms

    Before:

    ```
    Reducing stack by rule 639 (line 5062):
       $1 = token "integer literal" (1.0-1.1: 1)
    -> $$ = nterm simple_numeric (1.0-1.1: )
    ```

    After:

    ```
    Reducing stack by rule 641 (line 5078):
       $1 = token "integer literal" (1.0-1.1: 1)
    -> $$ = nterm simple_numeric (1.0-1.1: NODE_LIT)
    ```

    `"<*>"` is supported by Bison 2.3b (2008-05-27) or later.
    https://git.savannah.gnu.org/cgit/bison.git/commit/?id=12e3584054c16ab255672c07af0ffc7bb220e8bc

    Therefore developers need to install Bison 2.3b+ to build ruby from
    source codes if their Bison is older.

    Minimum version requirement for Bison is changed to 3.0.

    See: https://bugs.ruby-lang.org/issues/19068 [Feature #19068]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6579

commit 7456647effc8c0d0fd85eb16b47635b96d2401df
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-08 09:47:12 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-08 09:47:12 +0900

    [DOC] Properly number the list in building_ruby.md

commit cb2323a98366bb7afb7b2fee2547804bbbc9d345
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-08 09:31:58 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-08 09:31:58 +0900

    Thread#native_thread_id is very platform specific

commit b14f133054bb04e1187f9897fa546faa433d37e7
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-08 04:35:21 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-08 04:35:21 +0900

    [DOC] Improve building_ruby.md

commit 83decbb62b8b3f1638927033f12b55f9b11f78c6
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-11-08 04:05:30 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-11-08 04:05:30 +0900

    Update to ruby/spec@740ccc8

commit c99e4c427897e82a3419abed894d28705f70fa13
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-11-08 04:05:18 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-11-08 04:05:18 +0900

    Update to ruby/mspec@1e16420

commit 9001e53e68d282493f513ed67824e4014fd01d57
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-08 02:29:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-08 02:29:28 +0900

    [ruby/irb] Support non-string input in show_source
    (https://github.com/ruby/irb/pull/430)

    * Support non-string input in show_source

    * Test show_source as a method

commit 7442cb461b32de2eec3b37f52d80752d30627de0
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-08 00:48:26 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-08 00:48:26 +0900

    YJIT: Free pages after ObjectSpace API usages (#6676)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit ca0b59267352dd23bc53b5cb6f09aacd0025f536
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-11-06 23:55:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-07 23:44:25 +0900

    [ruby/irb] Don't lazily retrieve gem specs for completion

    There are a few downsides of the current approach:

    1. Because gem specs are lazily retrieved, this computation happens in
       every irb completion test case, which is not necessary. (In tests we
       don't cache the result of `retrieve_files_to_require_from_load_path`)
    2. Gem::Specification.latest_specs is sensible to the content of
       LOAD_PATH. And when combined with 1, tests fail "randomly" if they
       try to mutate LOAD_PATH, even though the test subject it's something
       else.

    So by pre-computing and storing the gem paths in a constant, it guarantees
    that the computation only happens once and it doesn't get affected by test
    cases.

    One argument could be made against the change is that, it'll store
    unnecessary data for users that disable autocompletion. But the
    counter-arguments are:

    1. Since autocompletion is enabled by default, this should not be the
       case for most users.
    2. For users with autocompletion enabled, IRB already caches the
       result of `retrieve_files_to_require_from_load_path` in memory, which
       should have a similar size of GEM_SPECS. And we currently haven't
       received any report about problems caused by such memory consumption.

    https://github.com/ruby/irb/commit/c671d39020

commit 72c7dba436a5ebb53dfb37f3e400e84b0c2f9f45
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-08-30 16:02:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-07 20:25:25 +0900

    [ruby/fileutils] Revert "FileUtils.rm* methods swallows only Errno::ENOENT when force is true"

    This reverts commit https://github.com/ruby/fileutils/commit/fa65d676ece9.

    This caused some incompatibility problems in real-world cases.
    https://bugs.ruby-lang.org/issues/18784#change-98927
    https://bugs.ruby-lang.org/issues/18784#change-98967

    https://github.com/ruby/fileutils/commit/42983c2553

commit 33bc398b731d699cbdd37110240dd54df15a8f9c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-04 03:54:14 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-07 19:52:15 +0900

    [rubygems/rubygems] Fix rubocop violations

    https://github.com/rubygems/rubygems/commit/cc12e68637

commit b228effd0cf9ec72f51ce3ca8ff597a00a653339
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-04 03:44:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-07 19:52:14 +0900

    [rubygems/rubygems] Drop support for IRIX

    The IRIX OS is no longer maintained with the last release being 16 years
    ago.

    https://github.com/rubygems/rubygems/commit/5381c6a871

commit 1e53ebae57aa8bfb6724f346099e35757184cfd7
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-04 03:43:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-07 19:52:14 +0900

    [rubygems/rubygems] Drop support for bitrig

    The bitrig OS is no longer maintained with the last release being 7
    years ago.

    https://github.com/rubygems/rubygems/commit/85ed90ddd0

commit 0fb7a1c77c8d080f1d5099e07ed705cfd652f029
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-04 03:41:40 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-07 19:52:13 +0900

    [rubygems/rubygems] Drop support for HP-UX

    Support for HP-UX was dropped in Ruby in ruby/ruby#5457.

    https://github.com/rubygems/rubygems/commit/a3a8df3582

commit 011d4c57d21220249600dfb76db84840550da019
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-07 13:23:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-07 15:56:12 +0900

    [Bug #19106] Normalize time at 24:00:00 with a timezone object

commit ee86b57ee5df34390ba1d20343593adf8331c010
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-07 15:51:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-07 15:54:40 +0900

    Revert jobserver handling in spec

commit b02b8e77562661865b380d78e7621edfd8149a8f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-07 10:08:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-07 10:08:30 +0900

    Let other test runners follow the change of GNU make 4.4 jobserver

commit ab01b8f23f1e218fa5a360806120a1d6eaaa228f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-07 09:43:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-07 10:08:09 +0900

    jobserver option may not be at the last

commit 12883f8fa6222324880e2b0f161f8c6d6cf365c7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-06 23:39:55 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-06 23:39:55 +0900

    GNU make 4.4 now uses a fifo for the jobserver

commit fc842c9ccc2059e20ec6487b6678e6b71cbd77e1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-06 19:32:50 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-06 19:32:50 +0900

    Check `rustc` with the target

commit 9627aab82524e71b702479b4fa5e24b36cced398
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-06 15:59:32 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-06 17:07:44 +0900

    `--disable-jit-support` should disable YJIT successfully

    Even if `rustc` is available, it should not be an error unless
    `--enable-yjit` is explicitly given.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6681

commit cb899a990a02ad86ffc27fa17308fe514cc6415c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-06 10:16:12 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-06 10:16:12 +0900

    Disable YJIT support when cross-compiling

    As the target-list of `rustc` is different from `config.guess` and
    `config.sub`, `$target` cannot be used directly.

commit 1454f8f219890b8134f68e868d8cb1d0a9d2aa20
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-05 22:19:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-06 06:47:38 +0900

    Add `--target` option to RUSTC when cross-compiling

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6677

commit 10fd1d9507a87bc9cdb1592cdb10c7890e52eb30
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-05 12:48:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-06 06:47:38 +0900

    Should use the configured rustc consistently

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6677

commit 3a6cdeda89280ade714f158830acee88fb36306d
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-11-06 01:10:35 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-11-06 05:03:21 +0900

    [wasm] Scan machine stack based on `ec->machine.stack_{start,end}`

    fiber machine stack is placed outside of C stack allocated by wasm-ld,
    so highest stack address recorded by `rb_wasm_record_stack_base` is
    invalid when running on non-main fiber.
    Therefore, we should scan `stack_{start,end}` which always point a valid
    stack range in any context.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6679

commit 267452e6fed5d31dcad3c20970f74eec009dc03f
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-11-05 23:18:32 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-11-05 23:18:32 +0900

    Sync TRICK 2018 (02-mame)

    https://github.com/tric/trick2018/pull/5

commit 9af344a42129ea193d6dba92d62458c5f3429507
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-05 17:30:41 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-05 17:34:32 +0900

    [ruby/erb] Revert the strpbrk optimization

    because it's much slower on M1 https://github.com/ruby/erb/pull/29.
    It'd be too complicated to switch the implementation based on known
    optimized platforms / versions.

    Besides, short strings are the most common usages of this method and
    SIMD doesn't really help that case. All in all, I can't justify the
    existence of this code.

    https://github.com/ruby/erb/commit/30691c8995

commit 458d6fb15eedaa142c71f120e3a71b84d0938454
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-05 16:41:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-05 16:52:46 +0900

    [ruby/erb] Optimize away the rb_convert_type call using RB_TYPE_P

    https://github.com/ruby/erb/commit/12058c3784

commit e8873e01b67629f93ebbd83397f2454e16e0d864
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-05 16:26:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-05 16:52:45 +0900

    [ruby/erb] Use strpbrk only when str is long enough for SIMD

    This is the same trick used by https://github.com/k0kubun/hescape to
    choose the best strategy for different scenarios.

    https://github.com/ruby/erb/commit/af26da2858

commit 419d2fc14d2bedc6d5a7080ee80df8330884ea6c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-05 15:58:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-05 15:58:48 +0900

    [ruby/erb] Optimize the no-escape case with strpbrk
    (https://github.com/ruby/erb/pull/29)

    Typically, strpbrk(3) is optimized pretty well with SIMD instructions.
    Just using it makes this as fast as a SIMD-based implementation for the
    no-escape case.

    Not utilizing this for escaped cases because memory allocation would be
    a more significant bottleneck for many strings anyway. Also, there'll be
    some overhead in calling a C function (strpbrk) many times because we're
    not using SIMD instructions directly. So using strpbrk all the time
    might not necessarily be faster.

commit f276d5a7fe28ae4fd2934af4befd920bb78cfa9e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-05 15:24:16 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-05 15:54:25 +0900

    Improve HTML escape benchmarks

commit dd4ae9a475e081f5264c827e8c50b351236a68d2
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-11-05 06:02:04 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-05 06:02:04 +0900

    Auto-enable YJIT build when rustc >= 1.58.0 present (#6662)

    * Auto-enable YJIT build when rustc >= 1.58.0 present

    * Try different incantation to have rustc output to stdout only

    * Add comment, remove whitespace

    * Try to detect if we are on a platform on which YJIT is supported

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 6d835901575d58e7db404665801a1c455ee982a8
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-05 04:36:30 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-05 04:36:30 +0900

    Don't report changed ENV caused by Bundler

    Bundler's backups changes environment variables starting with
    BUNDLER_ORIG_. This causes a lot of noise in tests as the leakchecker
    reports them as changed.

commit 367c072ac6910e487a7619f61baebe1b4a6cf315
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-11-05 02:53:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-05 03:29:54 +0900

    [ruby/irb] Silent the noise created when building Context in tests

    https://github.com/ruby/irb/commit/27e4274b3c

commit b169d78c882efdb4a3da6077f6d723f65ded6f15
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-05 01:46:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-05 01:46:29 +0900

    [ruby/erb] Avoid using prepend + super for fallback
    (https://github.com/ruby/erb/pull/28)

    `prepend` is prioritized more than ActiveSupport's monkey-patch, but the
    monkey-patch needs to work.

    https://github.com/ruby/erb/commit/611de5a865

commit 13395757fa7fe0abee3a260d5669baec2dc2e0fc
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-05 00:43:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-05 00:48:42 +0900

    Update dependencies for bc28acc347eace4d02bbb4b672655216f7dd3a81

commit 6e4b97f1daf2a6e60dcfb5df4136ce5681095849
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-11-04 23:49:00 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-05 00:41:10 +0900

    Increment max_iv_count on class in gc marking, not gc freeing

    We were previously incrementing the max_iv_count on a class in gc
    freeing. By the time we free an object though, we're not guaranteed its
    class is still valid. Instead, we can do this when marking and we're
    guaranteed the object still knows its class.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6673

commit 6b9091097360988dce7b4190fef1602536ddff34
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-05 00:18:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-05 00:18:02 +0900

    Update dependencies

commit 93f364d65e25187ce3c1dd5172a00264804e9380
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-04 22:02:58 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-04 22:02:58 +0900

    Use RTEST to to check return value

    rb_obj_is_kind_of returns a Ruby Qtrue or Qfalse. We should use RTEST
    rather than assuming that Qfalse is 0.

commit 76a6c5d6d16cd0e55df15d66d53c6d7a9614f3d6
  Author:     Alexander Momchilov <alexander.momchilov@shopify.com>
  AuthorDate: 2022-11-04 03:59:48 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-04 21:57:01 +0900

    Remove unnecessary branch in `UnboundMethod#bind`

    Co-authored-by: Michael Herold <michael.herold@shopify.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6670

commit b83074dac7a3a1353ac8f897a510cecfccc2f7c6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-04 20:43:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-04 20:43:21 +0900

    [ruby/irb] Suppress "switching inspect mode" messages

    https://github.com/ruby/irb/commit/ee068d039b

commit ed9d7612172e12f515cb79088efe45267a062276
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-04 18:19:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-04 18:19:30 +0900

    mkconfig.rb: take CPU name from arch flag

commit cb18deee7285dde67102c9702796d7eba0046af5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-04 17:38:28 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-04 17:38:28 +0900

    Substitute from the actual netinet6/in6.h

    Xcode no longer links the system include files directory to `/usr`.
    Extract the actual header file path from cpp output.

commit 2bb89b7f114e4beb3012f63e12e726ae23005e6f
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-11-04 16:13:48 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-04 16:13:48 +0900

    Lower priority of `POSIX_MADV_DONTNEED`. (#6671)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit ccf32a5ca4ce29f9019cf8bae9f3c0f69e27bd22
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-04 15:34:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-04 16:07:24 +0900

    [ruby/erb] Do not allocate a new String if not needed

    [Feature #19102]https://github.com/ruby/erb/commit/ecebf8075c

commit 20efeaddbe246f3b2eaee4f17f54a814777176a8
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-04 15:26:53 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-04 16:07:24 +0900

    [ruby/erb] Optimize away to_s if it's already T_STRING

    [Feature #19102]https://github.com/ruby/erb/commit/38c6e182fb

commit dc5d06e9b145f7d5f8c5f7c3757b43f2d68833fd
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-03 14:28:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-04 16:07:23 +0900

    [ruby/erb] Copy CGI.escapeHTML to ERB::Util.html_escape

    https://github.com/ruby/erb/commit/ac9b219fa9

commit b6d7e98f2540500f072c5cc0f136cae69f80055c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-04 15:18:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-04 15:43:29 +0900

    sync_default_gems.rb: fix the position to insert the original URL

    Since the regexp had expected an empty line before `Co-Authored-By:`
    trailer lines, it failed to match when the body has the trailer only.

commit 570dee15a6939f1a3c8cf301202a1c508c2c2a33
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-04 15:17:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-04 15:43:29 +0900

    sync_default_gems.rb: accept log input from other than STDIN

commit 1956fb9b78c1f78649df48282c716b4f74d45ed7
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-04 09:26:50 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-11-04 09:27:37 +0900

    Bump benchmark-driver version

    https://github.com/benchmark-driver/benchmark-driver/pull/75 is useful
    for quickly benchmarking a single method in CRuby.

commit a9232038119f2401e6c3d3a4946114b1e878afb5
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-11-04 07:13:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-04 07:13:11 +0900

    [ruby/irb] Provide a base test class and let tests restore encodings
    conveniently
    (https://github.com/ruby/irb/pull/429)

    * Create a base TestIRB::TestCase class

    * Save/restore encodings for tests that initializes InputMethod classes

    Because `RelineInputMethod#initializes` calls `set_encoding`, which
    changes stdio/out/err and Encoding's default encoding values, we need to
    make sure any test that directly or indirectly (e.g. through Context)
    initializes `RelineInputMethod` restores encodings.

    `ReadlineInputMethod` also changes encodings but currently no tests
    cover it.

    * Remove unnecessary TestHelper module

    Since we now have a base TestCase, without_rdoc can just live there.

    https://github.com/ruby/irb/commit/c2874ec121

commit a13836e70d9cc2eb569911030cbd735d68b4042c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-04 07:09:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-04 07:09:55 +0900

    [ruby/irb] Allow non-identifier aliases like Pry's @ and $
    (https://github.com/ruby/irb/pull/426)

    * Allow non-identifier aliases

    * Move the configuration to IRB.conf

    * Avoid abusing method lookup for symbol aliases

    * Add more alias tests

    * A small optimization

    * Assume non-nil Context

    * Load IRB.conf earlier

    https://github.com/ruby/irb/commit/e23db5132e

commit d24ac6d2811e461562e3bb95525399bb9cf464f8
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-04 05:58:39 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-04 05:58:39 +0900

    Update configure command in building_ruby.md

    Readers didn't realize that you can use --prefix with
    --disable-install-doc.

commit 5344618cb758e351a857d7e71eecc6ac475ce8a7
  Author:     Yusuke Nakamura <yusuke1994525@gmail.com>
  AuthorDate: 2022-11-04 01:13:26 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-04 03:40:17 +0900

    [DOC] Fix IO::Buffer#slice rdoc position

    Before this change, rdoc shows empty in 'slice' method section

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6668

commit 56884b64deeeffb6400060523f8b85211ec99d78
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-04 02:41:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-04 02:42:45 +0900

    [ruby/irb] Require rubygems to run the test alone on ruby/ruby

    `Gem` is not undefined on test-all

    https://github.com/ruby/irb/commit/08ac803d61

commit 01d7e15757131555291daa2b851a850cfe17cfe7
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-04 02:42:29 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-04 02:42:29 +0900

    YJIT: Show side_exit count in stats as well (#6666)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit ea77aa2fd0899820752df7de6077a3b847a20aee
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-04 02:41:35 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-04 02:41:35 +0900

    YJIT: Make Code GC metrics available for non-stats builds (#6665)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 611b5e7f40dd7f0ee00df7981dc60890eeb2f315
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-04 02:34:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-04 02:35:15 +0900

    [ruby/irb] Fix build_context for ruby/ruby CI

    Co-Authored-By: Stan Lo <stan.lo@shopify.com>

    https://github.com/ruby/irb/commit/d1fe234a9a

commit 124f10f56b16e4fa4572b6dffde7487dcf914b26
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-04 02:33:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-04 02:33:49 +0900

    YJIT: Fix a wrong type reference (#6661)

    * YJIT: Fix a wrong type reference

    * YJIT: Just remove CapturedSelfOpnd for now

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 00f559641a0b4941e0022c67657469dc565ce44d
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-11-04 02:12:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-04 02:12:35 +0900

    [ruby/irb] Require the entire irb lib in RubyLex test
    (https://github.com/ruby/irb/pull/428)

    RubyLex is not designed to be used alone. It's usually used with an IRB
    context, which requires workspace. So its tests should have access to
    those components too.

    https://github.com/ruby/irb/commit/608f261da4

commit c5d6a483f5f771aa904ea85dad35a368ddf8047a
  Author:     Stan Lo <stan001212@gmail.com>
  AuthorDate: 2022-11-04 01:32:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-04 01:32:22 +0900

    [ruby/irb] Refactor RubyLex and its tests
    (https://github.com/ruby/irb/pull/427)

    * Make sure `RubyLex#set_input`'s context is always present in tests

    In real-world scenarios, the context should always be non-nil:
    https://github.com/ruby/irb/blob/master/lib/irb.rb#L489

    So we should make sure our test setup reflects that.

    * Make context a required keyword

    Since in practice, `set_input`'s context should always be non-nil, its
    parameters should reflect that.

    And since `RubyLex#check_state` is only called by `#lex` and
    `#set_input`, both of which now always require context, we can assume
    its context should be non-nil too.

    https://github.com/ruby/irb/commit/1aeeb86203

commit 68ef97d788cf8bff42d981bda41cd26128220740
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-04 00:42:28 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-04 00:42:28 +0900

    YJIT: Stop incrementing write_pos if cb.has_dropped_bytes (#6664)

    Co-Authored-By: Alan Wu <alansi.xingwu@shopify.com>

    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 0468136a1b07d693cf60abd0c5ccd125fc361039
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-03 04:21:50 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-03 22:09:11 +0900

    Make str_alloc_heap return a STR_NOEMBED string

    This commit refactors str_alloc_heap to return a string with the
    STR_NOEMBED flag set.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6663

commit 7b6c5f9b5b16d244268f700aa5cd60bdde3e34d6
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-03 14:56:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-03 14:58:14 +0900

    [ruby/erb] Skip a test for JRuby

    https://github.com/ruby/erb/commit/48a75665ab

commit f667d3afc9096ea32f6f84204529b95099062e86
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-03 14:53:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-03 14:58:14 +0900

    [ruby/erb] Skip tests for truffleruby

    https://github.com/ruby/erb/commit/65a7c70a00

commit c24800f4f71a1971619855065c37adaa766a3dd1
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-03 14:49:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-11-03 14:58:13 +0900

    [ruby/erb] Fix CI for JRuby

    https://github.com/ruby/erb/commit/df642335b7

commit 59a6caf83acf32915abf11ae81ca3167d2577b21
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-11-03 07:27:11 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-11-03 07:27:11 +0900

    Run only daily schedule because CodeQL provides a lot of false-positive results for Ruby code

commit b777408c33b57077f8be09eaed9245eeca0b59c5
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-03 02:34:02 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-03 02:34:02 +0900

    Fix crash in test runner on timeout

    When a test worker hangs and timeouts, the test runner crashes with the
    following stack trace:

    ruby/tool/lib/test/unit.rb:1747:in `puke': undefined method `backtrace' for Timeout::Error:Class (NoMethodError)
            from ruby/tool/lib/test/unit.rb:790:in `block in _run_parallel'
            from ruby/tool/lib/test/unit.rb:788:in `each'

    This commit adds handling for Timeout::Error and outputs a message.

commit 81e84e0a4d348309d5d38311d283d049ffeeb7a2
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-03 01:30:48 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-03 01:30:48 +0900

    YJIT: Support invokeblock (#6640)

    * YJIT: Support invokeblock

    * Update yjit/src/backend/arm64/mod.rs

    * Update yjit/src/codegen.rs

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit ee7c031dc46b4e86f889b2f98cb479d79774a446
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-11-03 00:16:26 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-03 00:16:26 +0900

    YJIT: don't show a full crash report if mmap is only out of memory (#6659)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 946bb34fb57b9588b93d8435c9a581d0c7ef0019
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-03 00:14:31 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-03 00:14:31 +0900

    YJIT: Avoid accumulating freed pages in the payload (#6657)

    Co-Authored-By: Alan Wu <alansi.xingwu@shopify.com>
    Co-Authored-By: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>

    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>
    Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 4a8cd9e8bca2be1c14310cc13366ec9177a1f74d
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-11-03 00:03:21 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-11-03 00:03:21 +0900

    Use shared flags of the type

    The ELTS_SHARED flag is generic, so we should prefer to use the flags
    specific of the type (STR_SHARED for strings and RARRAY_SHARED_FLAG
    for arrays).

commit d9cf0388599a3234b9f3c06ddd006cd59a58ab8b
  Author:     Sampat Badhe <sampat.badhe@kiprosh.com>
  AuthorDate: 2022-11-02 14:05:54 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-02 14:05:54 +0900

    Update Regexp.timeout doc (#6658)

    * Correct Regexp.timeout doc, Timeout.timeout= => Regexp.timeout=

    * add link Regexp Timeout section

  Notes:
    Merged-By: nobu <nobu@ruby-lang.org>

commit 3475b661607e6d2c72460ea381ee856726128259
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-02 12:18:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-02 12:38:31 +0900

    file2lastrev.rb: try to overwrite the found revision.h as before

commit ac06951c31c59781951a70788e4b0de2aa3d481c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-02 11:37:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-02 12:38:03 +0900

    file2lastrev.rb: separate options for `Output` and `VPath`

    So the `--srcdir` option in this file can override the same option in
    `VPath`.

commit 60f12c7d2e37ebb57193612421ab66d6368eff6e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-02 11:33:08 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-02 11:33:08 +0900

    Fix infinite loop when out-of-place build

commit 265a96b005748beb1dea9a3de67ae35f96374c97
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-01 13:32:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-02 11:10:00 +0900

    Manage the timestamp for revision.h

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6653

commit 70173a72a29474b6fd8fdc629954a95a4b0a3793
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-02 04:31:24 +0900
  Commit:     Aaron Patterson <tenderlove@ruby-lang.org>
  CommitDate: 2022-11-02 07:38:44 +0900

    Ivar copy needs to happen _before_ setting the shape

    When we copy instance variables, it is possible for the GC to be kicked
    off.  The GC looks at the shape to determine what slots to mark inside
    the object.  If the shape is set too soon, the GC could think that there
    are more instance variables on the object than there actually are at
    that moment.

commit 0d1e1987d1ca90cf2d2374f576be2633c52a66f4
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-02 04:05:36 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-02 04:05:36 +0900

    YJIT: Visualize live ranges on register spill (#6651)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit cbf15e5cbe30cbca45810ef65224ad1bc19c67b4
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-02 00:44:55 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-11-02 03:16:32 +0900

    YJIT: Add an assert to help with Context changes

    While experimenting I found that it's easy to change Context and forget
    to also change the copying operation in limit_block_versions(). Add an
    assert to make sure we substitute a compatible generic context when
    limiting the number of versions.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6656

commit a70f90e1a95cf4dfbaa2485767156997eb958c4b
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-11-02 00:39:13 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-11-02 03:16:32 +0900

    YJIT: Delete redundant ways to make Context

    Context::new() is the same as Context::default() and
    Context::new_with_stack_size() was only used in tests.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6656

commit 6bf458eefdac6e03fe4f2989b6cf08ad6a838520
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-01 12:29:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-01 14:34:05 +0900

    file2lastrev.rb: use output.rb for the options

commit 7e6e94262c9c916cb22dc9015be0e99659018c1f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-01 11:43:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-01 14:34:05 +0900

    file2lastrev.rb: rename output as format

    Also:
    - format -> time_format
    - output -> formatter

commit a2e7b11f2ae13f96171cb8a5aa6ae3cc75f6f083
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-01 11:08:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-01 14:34:05 +0900

    output.rb: extract from generic_erb.rb

    - writing to a file or stdout
    - touching timestamp files
    - overwriting only if changed
    - colorizing

commit 99a79dc40bf20e0e5d588db4f93b69617affa7f3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-01 10:56:28 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-01 14:34:05 +0900

    colorize.rb: support for NO_COLOR

commit f0c8c1e878978341701b0818c19bf383bd9efbae
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-01 10:51:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-01 14:34:05 +0900

    vpath.rb: tweak --vpath option message

commit 16953867ed8fc951364f05fdf0c9267799e3087a
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-11-01 13:10:31 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-01 13:10:31 +0900

    We don't care about actual hostname resolution. (#6652)

    https://bugs.ruby-lang.org/issues/18380

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit aa8c6759ee7d740939eab9ee0e94260aa8f4f010
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-11-01 11:23:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-11-01 11:40:32 +0900

    vcs.rb: do not reference the constant before assignment

commit 2d86e79fe6a8eaea85edb4b9ab59d12228dbd8b9
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-11-01 07:38:51 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-11-01 09:05:37 +0900

    Always lookup IV buffers when iterating

    Always look up instance variable buffers when iterating.  It is possible
    for the instance variable buffer to change out from under the object
    during iteration, so we cannot cache the buffer on the stack.

    In the case of Bug #19095, the transient heap moved the buffer during
    iteration:

    ```
    Watchpoint 1 hit:
    old value: 0x0000000107c00df8
    new value: 0x00000001032743c0
    Process 31720 stopped
    * thread #1, queue = 'com.apple.main-thread', stop reason = watchpoint 1
        frame #0: 0x00000001006e5178 miniruby`rb_obj_transient_heap_evacuate(obj=0x000000010d6b94b0, promote=1) at variable.c:1361:5
       1358         }
       1359         MEMCPY(new_ptr, old_ptr, VALUE, len);
       1360         ROBJECT(obj)->as.heap.ivptr = new_ptr;
    -> 1361     }
       1362 }
       1363 #endif
       1364
    miniruby`rb_obj_transient_heap_evacuate:
    ->  0x1006e5178 <+328>: b      0x1006e517c               ; <+332> at variable.c:1362:1
        0x1006e517c <+332>: ldp    x29, x30, [sp, #0x50]
        0x1006e5180 <+336>: add    sp, sp, #0x60
        0x1006e5184 <+340>: ret
    Target 0: (miniruby) stopped.
    (lldb) bt
    * thread #1, queue = 'com.apple.main-thread', stop reason = watchpoint 1
      * frame #0: 0x00000001006e5178 miniruby`rb_obj_transient_heap_evacuate(obj=0x000000010d6b94b0, promote=1) at variable.c:1361:5
        frame #1: 0x00000001006cb150 miniruby`transient_heap_block_evacuate(theap=0x0000000100b196c0, block=0x0000000107c00000) at transient_heap.c:734:17
        frame #2: 0x00000001006c854c miniruby`transient_heap_evacuate(dmy=0x0000000000000000) at transient_heap.c:808:17
        frame #3: 0x00000001007fe6c0 miniruby`rb_postponed_job_flush(vm=0x0000000104402900) at vm_trace.c:1773:21
        frame #4: 0x0000000100637a84 miniruby`rb_threadptr_execute_interrupts(th=0x0000000103803bc0, blocking_timing=0) at thread.c:2316:13
        frame #5: 0x000000010078b730 miniruby`rb_vm_check_ints(ec=0x00000001048038d0) at vm_core.h:2025:9
        frame #6: 0x00000001006fbd10 miniruby`vm_pop_frame(ec=0x00000001048038d0, cfp=0x0000000104a04440, ep=0x0000000104904a28) at vm_insnhelper.c:422:5
        frame #7: 0x00000001006fbca0 miniruby`rb_vm_pop_frame(ec=0x00000001048038d0) at vm_insnhelper.c:431:5
        frame #8: 0x00000001007d6420 miniruby`vm_call0_cfunc_with_frame(ec=0x00000001048038d0, calling=0x000000016fdcc6a0, argv=0x0000000000000000) at vm_eval.c:153:9
        frame #9: 0x00000001007d44cc miniruby`vm_call0_cfunc(ec=0x00000001048038d0, calling=0x000000016fdcc6a0, argv=0x0000000000000000) at vm_eval.c:164:12
        frame #10: 0x0000000100766e80 miniruby`vm_call0_body(ec=0x00000001048038d0, calling=0x000000016fdcc6a0, argv=0x0000000000000000) at vm_eval.c:210:15
        frame #11: 0x00000001007d76f0 miniruby`vm_call0_cc(ec=0x00000001048038d0, recv=0x000000010d6b49d8, id=2769, argc=0, argv=0x0000000000000000, cc=0x000000010d6b2e58, kw_splat=0) at vm_eval.c:87:12
        frame #12: 0x0000000100769e48 miniruby`rb_funcallv_scope(recv=0x000000010d6b49d8, mid=2769, argc=0, argv=0x0000000000000000, scope=CALL_FCALL) at vm_eval.c:1051:16
        frame #13: 0x0000000100760a54 miniruby`rb_funcallv(recv=0x000000010d6b49d8, mid=2769, argc=0, argv=0x0000000000000000) at vm_eval.c:1066:12
        frame #14: 0x000000010037513c miniruby`rb_inspect(obj=0x000000010d6b49d8) at object.c:633:34
        frame #15: 0x000000010002c950 miniruby`inspect_ary(ary=0x000000010d6b4938, dummy=0x0000000000000000, recur=0) at array.c:3091:13
        frame #16: 0x0000000100642020 miniruby`exec_recursive(func=(miniruby`inspect_ary at array.c:3084), obj=0x000000010d6b4938, pairid=0x0000000000000000, arg=0x0000000000000000, outer=0, mid=2769) at thread.c:5177:23
        frame #17: 0x00000001006412fc miniruby`rb_exec_recursive(func=(miniruby`inspect_ary at array.c:3084), obj=0x000000010d6b4938, arg=0x0000000000000000) at thread.c:5205:12
        frame #18: 0x00000001000127f0 miniruby`rb_ary_inspect(ary=0x000000010d6b4938) at array.c:3117:12
    ```

    In general though, any calls back out to the interpreter could change
    the IV buffer, so it's not safe to cache.

    [Bug #19095]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6650

commit 02f15542245222ee392e68fb244b3b8c4a12ad82
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-11-01 06:05:37 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-01 06:05:37 +0900

    Implement object shapes for T_CLASS and T_MODULE (#6637)

    * Avoid RCLASS_IV_TBL in marshal.c
    * Avoid RCLASS_IV_TBL for class names
    * Avoid RCLASS_IV_TBL for autoload
    * Avoid RCLASS_IV_TBL for class variables
    * Avoid copying RCLASS_IV_TBL onto ICLASSes
    * Use object shapes for Class and Module IVs

  Notes:
    Merged-By: jhawthorn <john@hawthorn.email>

commit 2b39640b0bbf7459b305d8a98bb01f197975b8d9
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-11-01 03:29:45 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-01 03:29:45 +0900

    YJIT: Add RubyVM::YJIT.code_gc (#6644)

    * YJIT: Add RubyVM::YJIT.code_gc

    * Rename compiled_page_count to live_page_count

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 5e6633fcf988e5874d0a9929bdf2cd496289e75d
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-11-01 03:29:11 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-11-01 03:29:11 +0900

    YJIT: reduce default `--yjit-exec-mem-size` to 128MiB instead of 256 (#6649)

    Reduce default --yjit-exec-mem-size to 128MiB instead of 256

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit c3de08cb245467efb8fe3a661e9ec4a52514faf1
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-10-26 13:55:18 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-10-31 15:57:46 +0900

    Reuse FIBER_RESUMED_P macro

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6635

commit 350d0aa023223f560d812ef61396a2c5359f09a6
  Author:     eileencodes <eileencodes@gmail.com>
  AuthorDate: 2022-10-20 02:50:30 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-31 13:58:38 +0900

    [ruby/error_highlight] Support nodes in `spot`

    Fixes a bug where `spot` was using the wrong local variable.

    We want to use error highlight with code that has been eval'd,
    specifically ERB templates. We can recover the compiled source code of
    the ERB template but we need an API to pass the node into error
    highlight's `spot`.

    Required Ruby PR: https://github.com/ruby/ruby/pull/6593

    https://github.com/ruby/error_highlight/commit/0b1b650a59

    Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>

commit 3391c51effcd61f9a718adf59740661d99f57b5b
  Author:     eileencodes <eileencodes@gmail.com>
  AuthorDate: 2022-10-20 02:23:53 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-10-31 13:39:56 +0900

    Add `node_id_for_backtrace_location` function

    We want to use error highlight with eval'd code, specifically ERB
    templates. We're able to recover the generated code for eval'd templates
    and can get a parse tree for the ERB generated code, but we don't have a
    way to get the node id from the backtrace location. So we can't pass the
    right node into error highlight.

    This patch gives us an API to get the node id from the backtrace
    location so we can find the node in the AST.

    Error Highlight PR: https://github.com/ruby/error_highlight/pull/26

    Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6593

commit 7ed10abdd97a324583c9b9794088a41a550abcd0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-30 22:21:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-30 23:21:31 +0900

    [ruby/bigdecimal] Suppress macro redefinition warnings

    `HAVE_` macros by autoconf are defined as 1.

    https://github.com/ruby/bigdecimal/commit/cd35868aa6

commit 0717cb84193083cbfb7daee115a82418fd9c1474
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-30 18:22:50 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-30 19:16:09 +0900

    Try -fstack-protector-strong on MinGW

    The CI for MinGW has used it.

commit 00d5b7ce7c2e72170b7f563b9de0e7ac4bc8f772
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-30 15:05:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-30 17:06:33 +0900

    vcs.rb: copy safe directory configuration

    Now revision.tmp will be regenerated always and every times, even if
    the recent file exists in the source directory, as far as using git.
    On the other hand, VirtualBox mounts shared folders as root, and git
    rejects the repository there as dubious ownership.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6647

commit b64514f132615c00982d008bb2d7d2d1230d4f1c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-30 12:39:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-30 17:06:33 +0900

    vcs.rb: prettify debug print

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6647

commit 1acbcf0e58f60addf5aa7bb5e0ff7f6907a10fbc
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-10-30 16:04:08 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-30 16:04:08 +0900

    Update bundled gems list at 2022-10-30

commit 91c28ab2ee58f9b5da33dc566a4c263449b8520f
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-30 04:47:16 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-30 04:47:16 +0900

    [DOC] Enhanced RDOc for IO (#6642)

    In io.c treats:
        #close
        #close_read
        #close_write
        #closed

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit d5fb76a6c8d86253110d265070e775a1bf9f9730
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-29 22:25:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-29 22:47:23 +0900

    [ruby/optparse] Add tests for `load(into:)`

    https://github.com/ruby/optparse/commit/51f7e060ee

commit 37291df91dea2616559e64751ae6f8ed799c4310
  Author:     Whyme Lyu <5longluna@gmail.com>
  AuthorDate: 2022-10-29 22:46:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-29 22:46:27 +0900

    [ruby/optparse] #load() into hash
    (https://github.com/ruby/optparse/pull/42)

    OptionParser#load learns .load(into: Hash)

    https://github.com/ruby/optparse/commit/2ea626fcff

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

commit 4dac53f0a48920f80ccaa4de151631659ab1d2ba
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-29 22:23:14 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-29 22:40:19 +0900

    [ruby/optparse] Add tests for `OptionParser#load`

    https://github.com/ruby/optparse/commit/fb34a1d3a3

commit bc28acc347eace4d02bbb4b672655216f7dd3a81
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-29 16:31:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-29 21:06:03 +0900

    [ruby/digest] Use CommonDigest by default if available

    https://github.com/ruby/digest/commit/cce9ada85e

commit c5ca250eb5a0e55391607cc20fa382cd64e49e5e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-29 16:14:19 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-29 16:17:45 +0900

    Clear `_FORTIFY_SOURCE` before definition

    As clang on macOS defines this macro as 0 internally when a sanitizer
    option is given, clear it before definition to suppress redefinition
    warnings.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6646

commit 5e0432f59bb85dd3d98be3c1043a1f9c5b41d86b
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-10-29 08:10:45 +0900
  Commit:     Aaron Patterson <tenderlove@ruby-lang.org>
  CommitDate: 2022-10-29 08:10:55 +0900

    fix ASAN error in GC

commit 9b462aec4af0fbf9d82cbd3efe1d2cfe15f5e539
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-28 19:33:19 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-28 19:33:19 +0900

    Follow up "Rework `first_lineno` to be `int`."

commit 4021c6565f9655bfd667152f76f22f7cc81c7e17
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-31 12:51:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-28 18:36:28 +0900

    [ruby/irb] Do not make non-existent XDG directory on start
    (https://github.com/ruby/irb/pull/357)


    https://github.com/ruby/irb/commit/298b134792

commit 56c97a6621241db99f7c96740164bdd8f898d881
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-28 18:30:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-28 18:30:24 +0900

    [ruby/irb] Update regarding NO_COLOR value

    https://no-color.org has been updated (jcs/no_color#83):

    > Command-line software which adds ANSI color to its output by default
    should check for a `NO_COLOR` environment variable that, when present
    and **not an empty string** (regardless of its value), prevents the
    addition of ANSI color.

    https://github.com/ruby/irb/commit/46e0f7e370

    Co-authored-by: Stan Lo <stan001212@gmail.com>

commit 13e968c1cdd2da470173e2cc15b44ebb936be534
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-28 16:35:00 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-28 17:29:38 +0900

    [ruby/irb] Suppress sequence to inspect asian ambiguous width

    https://github.com/ruby/irb/commit/a7097c5b80

commit 7440fc3eb4ee6409f2204523c8c9875d8e80a208
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-28 16:32:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-28 17:29:37 +0900

    [ruby/irb] Suppress "switching inspect mode" messages

    https://github.com/ruby/irb/commit/565eeb3c19

commit e6e202234c0f5d9755cf2aa88b178371fd8b38e4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-28 13:15:14 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-28 13:15:14 +0900

    sync_default_gems.rb: append orignal commit URLs to subject only log

commit 9cf027f83afba538bea050ad19f4f597c50dcfc1
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-10-28 07:52:58 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-28 07:52:58 +0900

    YJIT: Use guard_known_class() for opt_aref on Arrays (#6643)

    This code used to roll its own heap object check before we made a better
    version in guard_known_class(). The improved version uses one fewer
    comparison, so let's use that.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 2812a57b14de8bfab7feccb7924039edc2611aad
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-10-28 05:50:00 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-28 05:50:00 +0900

    Update docs wrt YJIT limitations and building YJIT (#6641)

    * Update docs wrt YJIT limitations and building YJIT

    * Update building_ruby.md

    Fix relative link

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit ea5972572b116071a5b62d001c7d39e7a080779c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-10-28 04:24:05 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-10-28 04:29:52 +0900

    [ruby/irb] Fix warnings in test_cmd.rb

    Fixes this warning:

        warning: assigned but unused variable - err

    https://github.com/ruby/irb/commit/298fcb57a3

commit b260c1e8c8a2b6c4cef944e3247ca743079478df
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-10-26 04:43:45 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-10-28 04:29:11 +0900

    [ruby/irb] Remove unnecessary test setup

commit bb7067cbdfe1cf1b8bbd742e87f41c9707ddb2d2
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-10-28 04:10:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-28 04:16:52 +0900

    [ruby/irb] Suppress warning for test which uses a locale non-existing on GitHub Actions

commit 8d7844235cd9ba9836e9eacb74c75d31aaa567b3
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-10-28 03:54:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-28 04:16:51 +0900

    [ruby/irb] Remove unecesary and harmful pend for TruffleRuby in TestRaiseNoBacktraceException

    * Specifically the second one causes `$HOME` to be unset, which breaks `File.expand_path('~')`.

    https://github.com/ruby/irb/commit/61963305f5

commit c6f439a6a8df582416e756d7511aa4d9c72071a9
  Author:     S.H <gamelinks007@gmail.com>
  AuthorDate: 2022-10-28 01:13:16 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-28 01:13:16 +0900

    Improve performance some `Integer` and `Float` methods [Feature #19085] (#6638)

    * Improve some Integer and Float methods

    * Using alias and Remove unnecessary code

    * Remove commentout code

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 7cf7e6c33226093c9c4e3078f7ced3b9b9c99b05
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-10-28 00:30:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-28 00:36:18 +0900

    [ruby/irb] Add missing require

commit 26b913c88b087a93f5a7a5f8282d1934b6c5073e
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-27 19:55:40 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-28 00:25:39 +0900

    [ruby/irb] Add test for IRB::InputCompletor::PerfectMatchedProc

    This proc displays rdoc document when the input matches certain symbols
    perfectly, like "String". It's commonly triggered with autocompletion
    but only has 1 test case. So this commit increases its test coverage.

    https://github.com/ruby/irb/commit/d85d719313

commit 5129ca3e056e1ce3189ba39fa311d4d687b97b45
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-10-27 10:29:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-27 17:16:06 +0900

    [ruby/rdoc] Delay `require "readline"` in case the terminal is in raw mode

commit 739ad81ff1ba28608fbc492cc0b09f96c0bd463a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-27 14:12:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-27 14:36:11 +0900

    [ruby/date] Check month range as civil

commit cb80ee7a4a3967be3a0ce687ec76522f1680600b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-26 21:20:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-27 12:12:00 +0900

    [ruby/tmpdir] Warnings should contain the environment variable name

commit 792dc553f19f99113284b72f59acfd7a7614dc4f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-27 07:20:33 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-27 07:20:33 +0900

    YJIT: Test --yjit-verify-ctx on GitHub Actions as well (#6639)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit c746f380f278683e98262883ed69319bd9fa680e
  Author:     Matthew Draper <matthew@trebex.net>
  AuthorDate: 2022-10-27 04:27:59 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-27 04:27:59 +0900

    YJIT: Support nil and blockparamproxy as blockarg in send (#6492)

    Co-authored-by: John Hawthorn <john@hawthorn.email>

    Co-authored-by: John Hawthorn <john@hawthorn.email>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit fa0adbad92fc1216ba0d1757fe40f0453e3a6574
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-27 00:29:12 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-27 00:29:12 +0900

    YJIT: Invalidate i-cache for the other cb on next_page (#6631)

    * YJIT: Invalidate i-cache for the other cb on next_page

    * YJIT: Invalidate only what's written by jmp_ptr

    * YJIT: Move the code to the arm64 backend

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 0dc2e1a764ba2a18d3646f11f272b05395b01201
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-10-26 23:44:01 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-27 00:15:30 +0900

    [ruby/irb] Remove unnecessary warning check on help command

    It's not an intentional behavior of the command and it behaves
    differently in different environments. So checking it actually brings
    more problem than benefit.

    https://github.com/ruby/irb/commit/b3203bc784

commit 73a0223f952ef40d4986dde65eadb8f0b59521f2
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-10-27 00:12:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-27 00:13:44 +0900

    [ruby/irb] Rename test_helper.rb to helper.rb

    The name test_helper.rb conflicts with the test_helper.rb in JSON,
    causing build failures. This commit renames test_helper.rb to helper.rb.

    https://github.com/ruby/irb/commit/b6a92bf6b3

    Co-Authored-By: Stan Lo <stan001212@gmail.com>

commit cb95d834cc19a45a84d8d2c6d0f25d0c44e0d813
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-26 20:40:48 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-10-26 23:44:29 +0900

    [ruby/irb] Don't insert new methods to Test::Unit::TestCase

    Ruby CI runs irb and other Ruby core/stdlib tests in the same process.
    So adding irb-specific helper to Test::Unit::TestCase could potentially
    pollute other components' tests and should be avoided.

commit 2022470a954ad673b0c08aecaa9a7881188cd105
  Author:     Stan Lo <stan001212@gmail.com>
  AuthorDate: 2022-10-26 04:25:49 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-10-26 23:44:26 +0900

    [ruby/irb] Suppress warnings

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

commit d889e810f3d9061fdab5a21470bf32d078d2b06a
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-25 06:52:52 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-10-26 23:44:23 +0900

    [ruby/irb] Add test for the help command

commit 40f8a781a39042cdccd641fef6e10cb2c8d98c41
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-25 07:08:32 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-10-26 23:44:03 +0900

    [ruby/irb] Extract without_rdoc helper

commit 131c31a9209c61f84d318aa18b61f468f48b8219
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-26 19:43:14 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-26 19:43:14 +0900

    [Bug #19081] Show the caller location in warning for Ractor

    The internal location in ractor.rb is not usefull at all.
    ```
    $ ruby -e 'Ractor.new {}'
    <internal:ractor>:267: warning: Ractor is experimental, ...
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6629

    Merged-By: nobu <nobu@ruby-lang.org>

commit a14611cd54d2ac02daad5ccfe99fc3ec9b0818bd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-26 10:53:10 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-26 18:57:26 +0900

    Fix -Wundef warnings

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6634

commit 287eac5e8ecb774edcc3e4000f3b4848700d23e4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-26 10:43:41 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-26 18:57:26 +0900

    Fix format specifiers for `size_t`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6634

commit 923aed26ff217f0b5619d5c53c24be7e0823b951
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-26 13:49:35 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-10-26 13:50:23 +0900

    Start notifying Cirrus CI failures

    It looks like Cirrus doesn't natively support notifications and they
    recomment to use GitHub Actions for it.
    https://cirrus-ci.org/guide/notifications/

    Because I don't know what the payload looks like, I just added a basic
    payload and dumped GitHub context so that we could improve it later.

commit 1670e96c0ddf9e17e94e25517fb424f3a8e20e33
  Author:     Josh Cooper <joshcooper@users.noreply.github.com>
  AuthorDate: 2022-10-26 08:22:57 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-26 10:42:03 +0900

    [win32] Only include base windows types

    esent.h is the header for MS essential storage engine (JET) which is not
    needed in ruby. basetsd.h has existed since _MSC_VER >= 1200 (VS 6.0)
    and is the preferred header to use for WCHAR.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6632

commit 1dd9511b6723b2781e65e2b4093a714576802302
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-26 09:53:08 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-26 09:53:08 +0900

    Use ruby/action-slack@v3.0.0 and ref_name (#6633)

    It's moved from k0kubun to ruby org.

    Also, we don't need JavaScript eval to generate branch if we use
    github.ref_name, so v3.0.0 is a version that doesn't use eval.

    Co-Authored-By: Nobuyoshi Nakada <nobu@ruby-lang.org>

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit d6d9b5130e5545e978fc9763e9419bdddc5ec4bd
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-26 08:11:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-26 08:14:09 +0900

    [ruby/erb] Version 3.0.0

commit ea989127eb9658ffe4b71a29cd3d6ea66e25b664
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-10-23 17:47:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-26 06:19:39 +0900

    Bundler: update docs for gemfile(5) manpage

    - Add mswin/mswin64 to platforms
    - Use TruffleRuby as example instead of Rubinius

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
    Co-authored-by: André Arko <andre@arko.net>

commit 48339d5c5b6f8b34aad0fe2b44d0e2eb479b069f
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-10-26 05:45:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-26 05:50:07 +0900

    [ruby/irb] Make sure Encoding's defaults are restored

commit 217fdbf9aa6dd850eace9f10c9a74bcec8b510e2
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-10-26 01:39:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-26 01:40:05 +0900

    [ruby/erb] url_encode: use CGI.escapeURIComponent
    (https://github.com/ruby/erb/pull/23)

    Ref: https://github.com/ruby/cgi/pull/26

    This native implementation is much faster
    and available in `cgi 0.3.3`.

    https://github.com/ruby/erb/commit/2d90e9b010

commit b7644a231100b1e1b70af528f9629d2e39572087
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-26 01:07:10 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-26 01:07:10 +0900

    YJIT: GC and recompile all code pages (#6406)

    when it fails to allocate a new page.

    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 1d2d25dcadda0764f303183ac091d0c87b432566
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-10-25 15:45:40 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-10-25 17:02:43 +0900

    Prevent potential buffer overrun in onigmo

    A code pattern `p + enclen(enc, p, pend)` may lead to a buffer overrun
    if incomplete bytes of a UTF-8 character is placed at the end of a
    string. Because this pattern is used in several places in onigmo,
    this change fixes the issue in the side of `enclen`: the function should
    not return a number that is larger than `pend - p`.

    Co-Authored-By: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6628

commit 114e71d06280f9c57b9859ee4405ae89a989ddb6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-25 16:39:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-25 16:54:40 +0900

    [ruby/tmpdir] Ignore empty environment variables

    Fixes https://github.com/ruby/tmpdir/pull/17

    https://github.com/ruby/tmpdir/commit/a79c727a5d

commit 883d9c305f82b23fbe0ed28e9d74461cc5e13b97
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-25 16:07:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-25 16:16:36 +0900

    [ruby/tmpdir] Found or raise

commit d55f72bcdbe7f6157c3ad9b1ce32bcc01cf375c4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-25 15:41:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-25 15:59:30 +0900

    [ruby/tmpdir] Update supported and testing ruby versions

commit 287c5da4aae6a3c8ae16cde590a9eb6d4dd655bf
  Author:     Peter Vandenberk <peter.vandenberk@simplybusiness.co.uk>
  AuthorDate: 2022-09-20 16:53:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-25 15:59:16 +0900

    [ruby/tmpdir] Make `Dir.tmpdir` more idiomatic and functional

    Use `Enumerable#find` to iterate over the candidates, not `Enumerable.each`.

    (this makes the code more functional, and - IMO - slightly more idiomatic,
    as it avoids setting the "global" (by which I mean: non-local) `tmp`
    variable from inside the block)

    https://github.com/ruby/tmpdir/commit/d1f20ad694

commit cade3aba610b5b018072c646b28a2c10bc2669bb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-25 14:02:44 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-25 14:02:54 +0900

    [ruby/tmpdir] Fix typo

commit 71a5b1d4573ea16e4691e0847cea7d309116e224
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-25 13:39:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-25 13:57:56 +0900

    [ruby/tmpdir] [DOC] Improve documentation

    https://github.com/ruby/tmpdir/commit/b9c880f2b6

commit 902e459b733a92c3ccdd8762427f71dded997e7c
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-10-25 13:20:25 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-25 13:20:25 +0900

    Prevent buffer overrun in regparse.c

    A regexp that ends with an escape following an incomplete UTF-8 char
    might cause buffer overrun. Found by OSS-Fuzz.

    ```
    $ valgrind ./miniruby -e 'Regexp.new("\\u2d73\\0\\0\\0\\0          \\\xE6".b)'
    ==296213== Memcheck, a memory error detector
    ==296213== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
    ==296213== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info
    ==296213== Command: ./miniruby -e Regexp.new("\\\\u2d73\\\\0\\\\0\\\\0\\\\0\ \ \ \ \ \ \ \ \ \ \\\\\\xE6".b)
    ==296213==
    ==296213== Warning: client switching stacks?  SP change: 0x1ffe8020e0 --> 0x1ffeffff10
    ==296213==          to suppress, use: --max-stackframe=8379952 or greater
    ==296213== Invalid read of size 1
    ==296213==    at 0x484EA10: memmove (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==296213==    by 0x339568: memcpy (string_fortified.h:29)
    ==296213==    by 0x339568: onig_strcpy (regparse.c:271)
    ==296213==    by 0x339568: onig_node_str_cat (regparse.c:1413)
    ==296213==    by 0x33CBA0: parse_exp (regparse.c:6198)
    ==296213==    by 0x33EDE4: parse_branch (regparse.c:6511)
    ==296213==    by 0x33EEA2: parse_subexp (regparse.c:6544)
    ==296213==    by 0x34019C: parse_regexp (regparse.c:6593)
    ==296213==    by 0x34019C: onig_parse_make_tree (regparse.c:6638)
    ==296213==    by 0x32782D: onig_compile_ruby (regcomp.c:5779)
    ==296213==    by 0x313EFA: onig_new_with_source (re.c:876)
    ==296213==    by 0x313EFA: make_regexp (re.c:900)
    ==296213==    by 0x313EFA: rb_reg_initialize (re.c:3136)
    ==296213==    by 0x318555: rb_reg_initialize_str (re.c:3170)
    ==296213==    by 0x318555: rb_reg_init_str (re.c:3205)
    ==296213==    by 0x31A669: rb_reg_initialize_m (re.c:3856)
    ==296213==    by 0x3E5165: vm_call0_cfunc_with_frame (vm_eval.c:150)
    ==296213==    by 0x3E5165: vm_call0_cfunc (vm_eval.c:164)
    ==296213==    by 0x3E5165: vm_call0_body (vm_eval.c:210)
    ==296213==    by 0x3E89BD: vm_call0_cc (vm_eval.c:87)
    ==296213==    by 0x3E89BD: rb_call0 (vm_eval.c:551)
    ==296213==  Address 0x9d45b10 is 0 bytes after a block of size 32 alloc'd
    ==296213==    at 0x4844899: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==296213==    by 0x20FA7B: objspace_xmalloc0 (gc.c:12146)
    ==296213==    by 0x35F8C9: str_buf_cat4.part.0 (string.c:3132)
    ==296213==    by 0x31359D: unescape_escaped_nonascii (re.c:2690)
    ==296213==    by 0x313A9D: unescape_nonascii (re.c:2869)
    ==296213==    by 0x313A9D: rb_reg_preprocess (re.c:2992)
    ==296213==    by 0x313DFC: rb_reg_initialize (re.c:3109)
    ==296213==    by 0x318555: rb_reg_initialize_str (re.c:3170)
    ==296213==    by 0x318555: rb_reg_init_str (re.c:3205)
    ==296213==    by 0x31A669: rb_reg_initialize_m (re.c:3856)
    ==296213==    by 0x3E5165: vm_call0_cfunc_with_frame (vm_eval.c:150)
    ==296213==    by 0x3E5165: vm_call0_cfunc (vm_eval.c:164)
    ==296213==    by 0x3E5165: vm_call0_body (vm_eval.c:210)
    ==296213==    by 0x3E89BD: vm_call0_cc (vm_eval.c:87)
    ==296213==    by 0x3E89BD: rb_call0 (vm_eval.c:551)
    ==296213==    by 0x3E957B: rb_call (vm_eval.c:877)
    ==296213==    by 0x3E957B: rb_funcallv_kw (vm_eval.c:1074)
    ==296213==    by 0x2A4123: rb_class_new_instance_pass_kw (object.c:1991)
    ==296213==
    ==296213==
    ==296213== HEAP SUMMARY:
    ==296213==     in use at exit: 35,476,538 bytes in 9,489 blocks
    ==296213==   total heap usage: 14,893 allocs, 5,404 frees, 37,517,821 bytes allocated
    ==296213==
    ==296213== LEAK SUMMARY:
    ==296213==    definitely lost: 316,081 bytes in 2,989 blocks
    ==296213==    indirectly lost: 136,808 bytes in 2,361 blocks
    ==296213==      possibly lost: 1,048,624 bytes in 3 blocks
    ==296213==    still reachable: 33,975,025 bytes in 4,136 blocks
    ==296213==         suppressed: 0 bytes in 0 blocks
    ==296213== Rerun with --leak-check=full to see details of leaked memory
    ==296213==
    ==296213== For lists of detected and suppressed errors, rerun with: -s
    ==296213== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6625

    Merged-By: mame <mame@ruby-lang.org>

commit ee3da3784e13c9f5164206a373d14d3f7aa9d245
  Author:     Nick Hengeveld <nickh@github.com>
  AuthorDate: 2022-10-25 07:28:57 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-10-25 08:47:42 +0900

    Use CXX14 to allow constexpr with non-return statements

    Co-authored-by: Daniel Colson <composerinteralia@github.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6626

commit b652dbf63b963f92abddf15ed4f2fed0787e1969
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-10-22 06:31:33 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-10-25 02:54:01 +0900

    Remove iv_index_tbl_entry

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6610

commit abeef41c9573b458dec1b960d4251a38aeaa8e03
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-10-25 01:32:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-25 02:02:34 +0900

    [ruby/irb] Restore standard input/output encodings after input method tests

commit 120b747b7df25722c982ff4ba0f8be9a1463bd78
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-25 01:20:44 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-25 01:20:44 +0900

    YJIT: Lazily enable YJIT after prelude (#6597)

    * YJIT: Lazily enable YJIT after prelude

    * Update dependencies

    * Use a bit field for opt->yjit

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 841be6392ef85a02ab8ce7f323b990d6bbcc09cb
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-25 00:38:19 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-25 00:38:19 +0900

    [DOC] Revert previous merge (#6624)

    Revert previous merge

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 21fa0135a4f66e101d6225a9de1e02fade22a38c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-23 18:33:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-24 23:45:45 +0900

    Split tests for `Array#shuffle` and `Array#sample`

commit bcb72f503c311e214545e77906efbbadd8313068
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-24 22:56:13 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-24 22:56:13 +0900

    [DOC] Add note about method names (#6620)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 5a86155249d0cba9135327bce8f5d3f6f69721d8
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-22 05:36:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-24 22:36:58 +0900

    [ruby/irb] Add a test case to cover rdoc unintalled scenario

commit b7622d792dde7922692de6fcf43bd87cd7faa97b
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-18 18:08:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-24 22:36:57 +0900

    [ruby/irb] Move require out of repeated execution path

    SHOW_DOC_DIALOG will be called repeatedly whenever the corresponding key
    is pressed, but we only need to require rdoc once. So ideally the
    require can be put outside of the proc.

    And because when rdoc is not available the entire proc will be
    nonfunctional, we can stop registering the SHOW_DOC_DIALOG if we failed
    to require rdoc.

    https://github.com/ruby/irb/commit/b1278b7320

commit d377cc4530c1edeb4281a6a5a7ee2a4d13b1b561
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-18 19:24:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-24 22:36:56 +0900

    [ruby/irb] Add tests for RelineInputMethod

commit 399747926c323aca4f477ac3f8870b19229f4212
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-10-24 18:27:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-24 18:27:55 +0900

    Update bundled gems list at 2022-10-24

commit 67ed70da615c7fa5dc46c30eb3e966b903ef1f8b
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-10-24 18:21:30 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-10-24 18:21:30 +0900

    Refactor timeout-setting code to a function

commit ef01482f64df9bcd7adb2b64ca6ab96f55f42c43
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-10-24 18:12:49 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-10-24 18:13:26 +0900

    Refactor timeout-related code in re.c a little

commit b51b22513f6a2a514a9e614e7a9f6e0df6c0c985
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-10-24 18:03:26 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-24 18:03:26 +0900

    Fix per-instance Regexp timeout (#6621)

    Fix per-instance Regexp timeout

    This makes it follow what was decided in [Bug #19055]:

    * `Regexp.new(str, timeout: nil)` should respect the global timeout
    * `Regexp.new(str, timeout: huge_val)` should use the maximum value that
      can be represented in the internal representation
    * `Regexp.new(str, timeout: 0 or negative value)` should raise an error

  Notes:
    Merged-By: mame <mame@ruby-lang.org>

commit 6700fa7f62b040b5f69c3c5c3f5dbe740910c990
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-24 13:16:06 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-24 17:48:00 +0900

    Set timestamp path for the target path to TARGET_SO_DIR_TIMESTAMP

commit 711b2ed5fe7abcb44a2432cb5f0e70861bf95aef
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-24 12:49:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-24 17:47:59 +0900

    Make the timestamp path correspond to the bundled target path

    So different timestamps for different paths will be used.  Extentions
    paths in bundled gems contain `ruby_version`, which includes the ABI
    version, and the same timestamp file for different paths resulted in
    build failures when it changed.

commit 298221dfe56c905800967ab7dbe4cf74cecdc531
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-10-24 16:31:07 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-10-24 17:25:01 +0900

    Reuse RBOOL macro in rb_ivar_defined function

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6622

commit c5f5403f6ed9e62f2a1002417e61c949ee9c8420
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-24 14:43:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-24 14:45:44 +0900

    [ruby/net-http] Bump version to 0.3.0

commit 174ddc79c53ffe2efbccfe8737e7b8d50fe79050
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-24 00:33:51 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-24 09:32:13 +0900

    Skip `File.atime`/`File.mtime` tests randomly failing on Travis

    Not only powerpc64le, also s390x and arm32 seem failing too.  These
    failures are probably caused by filesystem settings on Travis, but
    unrelated to CPUs.

commit c4089e65245aa00824c30fa7033a18cfa1c0e4c9
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-10-23 15:00:55 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-23 17:38:59 +0900

    Fix argument & Remove enum

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6616

commit 1e06ef1328880bf39a7e6d757678be619c21f0c1
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-10-22 18:26:53 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-23 17:38:59 +0900

    Introduce rb_memsearch_with_char_size function

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6616

commit 86450d03a8c1570571c20452578cb923060e1d1f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-23 13:42:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-23 16:44:43 +0900

    Reduce type check of arguments at Complex creation

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6618

commit c8c136265c6dd343990293016eb9904aa78a0412
  Author:     S.H <gamelinks007@gmail.com>
  AuthorDate: 2022-10-23 16:17:24 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-23 16:17:24 +0900

    Introduce `hash_iter_status_check` function

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6564

    Merged-By: nobu <nobu@ruby-lang.org>

commit 54cad3123a07583c90e85bcfc55ebd87124c1250
  Author:     Stephen Ierodiaconou <stevegeek@gmail.com>
  AuthorDate: 2022-10-23 12:59:06 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-23 12:59:06 +0900

    [Bug #19004] `Complex.polar` handles complex singular `abs` argument

    `Complex.polar` accepts Complex values as arguments for the polar form as long
    as the value of the complex has no imaginary part (ie it is 'real'). In
    `f_complex_polar` this is handled by extracting the real part of the arguments.
    However in the case `polar` is called with only a single argument, the absolute
    value (abs), then the Complex is created without applying a check on the type
    of abs, meaning it is possible to create a Complex where the real part is itself
    an instance of a Complex. This change removes the short circuit for the single
    argument case meaning the real part extraction is performed correctly
    (by f_complex_polar).

    Also adds an example to `spec/ruby/core/complex/polar_spec.rb` to check that
    the real part of a complex argument is correctly extracted and used in the
    resulting Complex real and imaginary parts.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6568

    Merged-By: nobu <nobu@ruby-lang.org>

commit 0d9628e0decc6c2c7ca0ca4e7ecbf7e4d025959b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-23 12:46:13 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-23 12:46:13 +0900

    Update Complex.polar with Complex tests

commit 8dfe3bdf48ff73052de1262e4644c08742abd8e6
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-22 19:34:00 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-22 19:34:00 +0900

    Improved formatting of `hash_foreach_iter` functions. (#6615)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 420bdba1397b355aec773688487229c20a1e7759
  Author:     Thomas E. Enebo <tom.enebo@gmail.com>
  AuthorDate: 2022-10-21 03:17:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-22 17:01:24 +0900

    [rubygems/rubygems] Allow upcoming JRuby to pass keywords for Kernel#warn

    jruby-head (which will be JRuby 9.4.0.0) can now properly process
    the keywords to Kernel#warn.  I cannot think of any capability based
    test for this so I constrained it using a version guard.  Only JRuby
    will ever hit the version guard.

    https://github.com/rubygems/rubygems/commit/cd468c7e0f

commit a11952dac1a5b0776a493968eeffbd4be4403b76
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-10-22 05:24:29 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-22 06:57:34 +0900

    Rename `iv_count` on shapes to `next_iv_index`

    `iv_count` is a misleading name because when IVs are unset, the new
    shape doesn't decrement this value. `next_iv_count` is an accurate, and
    more descriptive name.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6608

commit 13bd617ea6fdf72467c593639cf33312a06c330c
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-10-22 01:58:51 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-22 06:56:48 +0900

    Remove unused class serial

    Before object shapes, we were using class serial to invalidate
    inline caches. Now that we use shape_id for inline cache keys,
    the class serial is unnecessary.

    Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6605

commit 87bb0bee6b9843ea32ca6bb48f9e03b1876b7c48
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-10-22 06:06:34 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-22 06:06:34 +0900

    YJIT: Fix page rounding for icache busting

    Previously, we found the current page by rounding the current pointer to
    the closest smaller page size. This is incorrect because pages are
    relative to the start of the address we reserve. For example, if the
    starting address is 12KiB modulo the 16KiB page size, once we have more
    than 4KiB of code, calculating with the address would incorrectly give
    us page 1 when we're actually still on page 0.

    Previously, I can reproduce crashes with:

        make btest RUN_OPTS=--yjit-code-page-size=32

    on ARM64 macOS, where system page sizes are 16KiB.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6607

    Merged-By: XrXr

commit 8bbcb75377fed4e4e7f2a5848e1a21f4dc0efa8c
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-10-22 04:11:52 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-10-22 05:25:41 +0900

    YJIT: Read rb_num_t as usize early

    This patch makes sure that we're not accidentally reading rb_num_t
    instruction arguments as VALUE and accidentally baking them into
    code and marking them. Some of these are simply moving the cast earlier,
    but some of these avoid potential problems for flag and ID arguments.

    Follow-up for 39f7eddec4c55711d56f05b085992a83bf23159e.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6606

commit c7754a4d4c977607695758c7fda7a20313a77398
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-22 04:42:28 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-22 04:42:28 +0900

    [DOC] Add link targets (#6602)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit f2ae58119d9581dee467b0a7f05173eca3b2dfea
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-10-21 03:50:41 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-22 02:57:05 +0900

    In init_copy, set shape after copying ivars

    GC uses shapes to determine IV buffer width. Since allocation can
    trigger GC, we need to ensure we only set the shape once we've fully
    allocated new memory for the IV buffer, otherwise the GC can end up
    trying to mark invalid memory.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6601

commit 35e03a44b815c1111e3947ba526a5de0bdf82c82
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-21 23:12:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-21 23:12:45 +0900

    [ruby/stringio] [DOC] Enhanced RDoc for StringIO
    (https://github.com/ruby/stringio/pull/36)

    Treats:
    - #each_codepoint
    - #gets
    - #readline (shows up in doc for module IO::generic_readable, not class
    StringIO)
    - #each_line

    https://github.com/ruby/stringio/commit/659aca7fe5

commit f88bff770578583a708093f4a0d8b1483a1d2039
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-21 21:33:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-21 21:39:52 +0900

    [ruby/net-http] Revert "Replace Timeout.timeout in Net:HTTP#connect"

    This reverts commit https://github.com/ruby/net-http/commit/753cae3bbccc.

    https://github.com/ruby/net-http/commit/98caa38204

commit e026368061c56bc925aff58910a4b02f18b78c70
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-10-21 13:39:15 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-10-21 16:35:46 +0900

    Range#size returns nil for (.."a") and (nil..)

    Fixes [Bug #18983]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6604

commit 39f7eddec4c55711d56f05b085992a83bf23159e
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-10-21 05:45:24 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-10-21 07:12:15 +0900

    YJIT: Fix gen_expandarray treating argument as VALUE

    The expandarray instruction interpreters its arguments as rb_num_t.
    YJIT was treating the num argument as a VALUE previously and when
    it has a certain bit pattern, it can look like a GC pointer. The
    argument is not a pointer, so YJIT crashed when trying to mark those
    pointers.

    This bug existed previously, but our test suite didn't expose it until
    f55212bce939f736559709a8cd16c409772389c8. TestArgf#test_to_io has a
    line like:

        a1, a2, a3, a4, a5, a6, a7, a8 = array

    Which maps to an expandarray with an argument of 8. Qnil happened to
    be defined as 8, which masked the issue.

    Fix it by not using the argument as a VALUE.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6603

commit 9a0a165a5d6d0bc4ed18cb92d05593796f703359
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-21 00:43:08 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-10-21 04:43:34 +0900

    Check writebarrier arguments

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6600

commit 245ad2b38a4a1a13297cb7adfb79834db48aedd3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-20 23:19:22 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-10-21 04:43:34 +0900

    YJIT: incorporate ruby_special_consts

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6600

commit 6aed5b0c11eab5f5b51ef9343cae9313f425c50e
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-10-20 03:56:22 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-21 03:59:34 +0900

    Unmark Internal IV test as pending

    Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6595

commit 0378e2f4a8319440dd65c82b16f189161472d237
  Author:     Ufuk Kayserilioglu <ufuk@paralaus.com>
  AuthorDate: 2022-09-27 07:19:22 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-10-21 00:30:17 +0900

    Add Class#attached_object

    Implements [Feature #12084]

    Returns the object for which the receiver is the singleton class, or
    raises TypeError if the receiver is not a singleton class.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6450

commit 192bc725290ca4b271bff2bae6123d84c25f7173
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-20 14:42:08 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-20 22:05:27 +0900

    Define `UNDEF_P` and `NIL_OR_UNDEF_P` [EXPERIMENTAL]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6599

commit f55212bce939f736559709a8cd16c409772389c8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-20 10:57:40 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-20 22:05:27 +0900

    Move "special consts" so `Qundef` and `Qnil` differ just 1 bit

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6599

commit e35c528d721d209ed8531b10b46c2ac725ea7bf5
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-10-17 17:50:42 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-10-20 17:38:28 +0900

    push dummy frame for loading process

    This patch pushes dummy frames when loading code for the
    profiling purpose.

    The following methods push a dummy frame:
    * `Kernel#require`
    * `Kernel#load`
    * `RubyVM::InstructionSequence.compile_file`
    * `RubyVM::InstructionSequence.load_from_binary`

    https://bugs.ruby-lang.org/issues/18559

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6572

commit 7563604fb868d87057733f52d780d841fc1ab6bb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-20 14:07:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-20 15:35:31 +0900

    [Bug #18998] Honor `#to_str` next to `#to_int` in `Kernel#Integer`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6598

commit 4f1e0bfacd93c28bff549e2f3603c3b4942429a3
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-20 14:36:06 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-20 14:36:06 +0900

    Followed up CVE-2022-39253 for bundler examples

commit b963fb25d2f683759c273eb21af85c1632122056
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-20 09:47:11 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-20 09:47:11 +0900

    YJIT: Respect writable_addrs on --yjit-dump-iseq-disasm as well (#6596)

    YJIT: Respect writable_addrs on --yjit-dump-iseq-disasm

    as well

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 7f175e564875b011efb43537907867dd08d659e8
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-20 09:38:52 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-20 09:38:52 +0900

    Avoid missed wakeup with fiber scheduler and Fiber.blocking. (#6588)

    * Ensure that blocked fibers don't prevent valid wakeups.

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit d9d9005a3a31d0df0b5432eba5d6f2b9bd647cb1
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-20 09:18:59 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-10-20 09:20:48 +0900

    MJIT: Stop using the VM barrier for jit_cont

    This solves multiple problems.

    First, RB_VM_LOCK_ENTER/LEAVE is a barrier. We could at least use the
    _NO_BARRIER variant.

    Second, this doesn't need to interfere with GC or other GVL users when
    multiple Ractors are used. This needs to be used in very few places, so
    the benefit of fine-grained locking would outweigh its small maintenance
    cost.

    Third, it fixes a crash for YJIT. Because YJIT is never disabled until a
    process exits unlike MJIT that finishes earlier, we could call jit_cont_free
    when EC no longer exists, which crashes RB_VM_LOCK_ENTER.

commit 0d360ee7ff962ef66667a75a912c3980c4f5b217
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-20 04:36:24 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-20 04:36:24 +0900

    YJIT: Skip dumping code for the other cb on --yjit-dump-disasm (#6592)

    YJIT: Skip dumping code for the other cb

    on --yjit-dump-disasm

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 9da0d4ca9d7032347776390fc473857c57a72ba3
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-10-20 03:43:36 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-10-20 03:44:58 +0900

    YJIT: fix a #[warn(unused_parens)]

commit 0aaa6133ed7365e5037ccdac8b59b00fb13aa50e
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-10-19 22:30:41 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-20 03:06:19 +0900

    Transition frozen string to frozen root shape

    Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6590

commit 5ca23caa2057fc4760fbefab6087371b11c4bc6c
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-10-20 03:03:07 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-20 03:03:07 +0900

    YJIT: fold the "asm_comments" feature into "disasm" (#6591)

    Previously, enabling only "disasm" didn't actually build. Since these
    two features are closely related and we don't really use one without the
    other, let's simplify and merge the two features together.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit bc939d293768acf9a21568ebe738b8fe5981038f
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-20 00:34:51 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-20 00:34:51 +0900

    [DOC] More about line number (#6582)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit c32180d5ceee28d035db8ce1a7e9973238a4553e
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-20 00:33:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-20 00:33:08 +0900

    [ruby/stringio] [DOC] Enhanced RDoc for StringIO
    (https://github.com/ruby/stringio/pull/35)

    Treated:
    - #getc
    - #getbyte
    - #ungetc
    - #ungetbyte
    - #readchar
    - #readbyte
    - #each_char

    https://github.com/ruby/stringio/commit/6400af8d9f

commit eeea633eb20cfdcaf0fec35109afa3821cb994f3
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-09-28 03:51:34 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-19 23:54:46 +0900

    Stop zeroing memory on allocation / copy

    Shapes gives us an almost exact count of instance variables on an
    object.  Since we know the number of instance variables that have been
    set, we will never access slots that haven't been initialized with an
    IV.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6585

commit 412e3c7a8db275567eaceece6c48dde3aedf2ae6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-19 18:45:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-19 22:55:42 +0900

    Assert for RTEST that Qnil and Qfalse differ just 1 bit

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6589

commit 86096a91d55f72620e0f8ca8634da5fa342dc35b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-19 20:39:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-19 22:03:47 +0900

    [rubygems/rubygems] Use [] instead of double-quotes

commit a25c0338051af3fe2e917cd4d3d4c42b9f0bcf9e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-19 14:57:07 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-19 21:10:00 +0900

    Suppress warning for fgrep

      >fgrep: warning: fgrep is obsolescent; using ggrep -F

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6586

commit dae843f6b7502f921a7e66f39e3714a39d860181
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-19 19:40:00 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-19 20:34:45 +0900

    Bypass git submodule add/update with git config protocol.file.allow=always option.

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6587

commit 567725ed303b6738493c80efaf93dc4c1e65a9c9
  Author:     Sergey Fedorov <vital.had@gmail.com>
  AuthorDate: 2022-10-19 19:49:45 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-19 19:49:45 +0900

    Fix and improve coroutines for Darwin (macOS) ppc/ppc64. (#5975)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit fc3137ef54562c3c3290245c0f62e0bb193c3145
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-19 14:53:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-19 14:53:38 +0900

    Add support for anonymous shared IO buffers. (#6580)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit f982a26374f4300ed9e5cbd122f792f907e20b22
  Author:     Kouhei Yanagita <yanagi@shakenbu.org>
  AuthorDate: 2022-10-18 12:19:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-19 09:14:50 +0900

    [DOC] Fix typo in Enumerable#slice_before

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6577

commit 18b96d8a828f595c46814511f11b41c4dba7d4b4
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-17 03:22:06 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-19 09:12:18 +0900

    [ruby/stringio] [DOC] StringIO doc enhancements
    (https://github.com/ruby/stringio/pull/33)

    Treated:
    - ::new
    - ::open
    - #string
    - #string=
    - #close
    - #close_read
    - #close_write
    - #closed?
    - #closed_read?
    - #closed_write?
    - #eof?

    https://github.com/ruby/stringio/commit/be9b64d739

commit 01d56b99bf1f89b104df789431f698e44d2d547c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-19 08:52:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-19 08:52:29 +0900

    [DOC] Fix rdoc-ref

commit 12c30f215cfadb8feb678c659941d4cfe5310785
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-10-19 05:03:55 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-19 05:03:55 +0900

    Fixes remaining issues and turns back on dead code and unused (#6584)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 6bd72a6406bedce6267b9737b38b9f1b89cf6a51
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-19 03:40:48 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-19 03:41:00 +0900

    [ruby/stringio] [DOC] Enhanced RDoc for StringIO (https://github.com/ruby/stringio/pull/34)

    Treated:
    - #lineno
    - #lineno=
    - #binmode
    - #reopen
    - #pos
    - #pos=
    - #rewind
    - #seek
    - #sync
    - #each_byte

commit b2ba71df9efd2e484cce955a398f2894702c7de0
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-10-19 03:19:41 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-19 03:19:41 +0900

    Code clean around unused code for some architectures or features (#6581)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit e7166c9bb78e20531a9cbb372e460ecd12603b5e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-19 01:07:11 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-19 01:07:11 +0900

    Allow passing a Rust closure to rb_iseq_callback (#6575)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit d67b6310d3e529b4d4a56ba8d850aa5bccfb83b5
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-19 00:16:22 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-19 00:16:22 +0900

    [DOC] Link to packed data doc (#6567)

    * Link to packed data doc

    * Update pack.rb

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

    * Update pack.rb

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

    * Update pack.rb

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit dffca50bb609661f04660221834c48f36b4b21fa
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-07-15 02:00:15 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-18 17:21:45 +0900

    [ruby/fiddle] Free closures immediately
    (https://github.com/ruby/fiddle/pull/109)

    These structs don't need to be freed as part of finalization, so lets
    free them immediately.

    https://github.com/ruby/fiddle/commit/8a10ec1152

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6576

commit e84ea4af695de307c4e66bf0d9aa445a1016a4af
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-04-11 08:32:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-18 17:21:45 +0900

    [ruby/fiddle] Add support for linker script on Linux

    GitHub: fix https://github.com/ruby/fiddle/pull/107

    Reported by nicholas a. evans. Thanks!!!

    https://github.com/ruby/fiddle/commit/49ea1490df

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6576

commit 93da67d46394007aa977c9345535c37878fd0db9
  Author:     John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
  AuthorDate: 2022-03-20 06:16:07 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-18 17:21:45 +0900

    [ruby/fiddle] Fix filenames for glibc SO files on alpha and ia64
    (https://github.com/ruby/fiddle/pull/105)

    Fixes [Bug #18645]

    https://github.com/ruby/fiddle/commit/9a5a1dab1d

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6576

commit 08ec6562822f0734f246741ebc9b0fa0829f8208
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2021-11-24 11:40:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-18 17:21:45 +0900

    [ruby/fiddle] Bump version

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6576

commit 091e3522d709160ebb4cb58794b10b3ab08f163b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-18 10:49:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-18 17:21:45 +0900

    fiddle: use the old rb_ary_tmp_new() alias

    Fiddle is a gem and has the external upstream which supports older
    versions of Ruby.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6576

commit 007946c27d7445e25569be58e255f7bb08e8bd75
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-10-18 12:55:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-18 16:54:32 +0900

    [rubygems/rubygems] Bundler: github DSL has used https protocol over git

    This behavior change was done in Bundler 2.2.0.

    https://github.com/rubygems/bundler/pull/7142

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/9510190be1

commit f5df47d1f3ec403d057f823375f1dfeea711caa6
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-18 15:24:42 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    Merge RubyGems/Bundler master

      https://github.com/rubygems/rubygems/commit/6214d00b2315ed37c76b1fbc1c72f61f92ba5a65

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit 2ab7bb8969ca76d49a6c2043f423a3646b20d1f7
  Author:     Jarek Prokop <jprokop@redhat.com>
  AuthorDate: 2022-09-09 22:25:09 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] TestGemSecuritySigner#test_sign: Correct the expectation for new cert.

    https://github.com/rubygems/rubygems/commit/bed360410d

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit b7debaa8015c7a3dba832954ecc93334f6853f37
  Author:     Jarek Prokop <jprokop@redhat.com>
  AuthorDate: 2022-09-09 22:22:31 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] TestGemSecurity#test_class_re_sign: Correct signature algorithm.

    https://github.com/rubygems/rubygems/commit/e2d533591c

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit cbddc913d94dde97714eeab1eac8570ff6674201
  Author:     Jarek Prokop <jprokop@redhat.com>
  AuthorDate: 2022-09-09 22:18:25 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Set Subject Key Identifier in test to correspond to the new certificate.

    https://github.com/rubygems/rubygems/commit/3a607f43d1

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit cb63a3f4c1d4b3e6245674e8f759adeda7c7abe4
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-10-11 08:36:04 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Materialize platforms strictly on Windows too

    https://github.com/rubygems/rubygems/commit/ab11545f80

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit 4d3dbbe77e273262757483d402ee1157a48453e9
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-10-11 08:34:12 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Remove unnecessary receiver

    https://github.com/rubygems/rubygems/commit/ba9d9b1890

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit 74dbb0d09a694c40b8406ce35ca5d4278185c3f0
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-10-11 08:33:09 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Remove unnecessary generic

    I didn't realize how the `Bundler::GemHelpers.generic` method works when
    I added this. It already matches this and other java platforms properly.

    https://github.com/rubygems/rubygems/commit/5f0f0c678c

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit 5fa18a7b0cb1ffbc0c11d151c074c9aa0ea6ee41
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-10-05 22:40:03 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Fix bad spec wording

    https://github.com/rubygems/rubygems/commit/06faad1e05

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit e956caea88b67cc1a1b42b95327190c63d45888a
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-10-05 21:16:57 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Extract matcher for slow perf spec

    https://github.com/rubygems/rubygems/commit/1c0eb63c6a

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit 56ad79694ba18789cb26a85dd693d51d96a092c3
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-13 01:46:01 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Simplify fetching spec group dependencies

    https://github.com/rubygems/rubygems/commit/62c2edd255

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit 804ae4ea12d05e66aaa680feea83af587ac53745
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-13 01:38:33 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Simplify SpecGroup creation

    https://github.com/rubygems/rubygems/commit/788e46e152

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit 67de00053a26db9d976efa393d121479b5315f5e
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-05 02:04:00 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Inline helper method

    https://github.com/rubygems/rubygems/commit/e60459d6b6

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit b99010f9f2aa9e8ea100f4cdbe1e2f1a5601fd5e
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-05 01:37:59 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Use `flat_map`

    https://github.com/rubygems/rubygems/commit/b31308fb4c

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit 71dede387e089023292e66c7f39305e13400c8c0
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-23 15:36:30 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Remove one more `expand_dependencies` call

    https://github.com/rubygems/rubygems/commit/996fd81871

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit cef7f6b2241565f51bb724c19b89b8320825b98a
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-07 05:29:13 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Remove now unnecessary parameter to `expand_dependencies`

    We just call it once for resolution, so we can simplify things.

    https://github.com/rubygems/rubygems/commit/99c144fbe3

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit 8c4bd1e58d426ff014a3958ac197d40b4e367f00
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-07 05:21:32 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Remove another `expand_dependencies` instance

    https://github.com/rubygems/rubygems/commit/33769ddb07

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit 60670b163f32cae27629c852f95870656d2ee72f
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-04 21:47:53 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Remove another unnecessary dependency expansion

    https://github.com/rubygems/rubygems/commit/b4a0fcd2d2

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit 0b6f2af3ba7bda0a81bc1eb1bd5b067c8d9e3e17
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-06 20:47:11 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Avoid unnecessary dependency expansion

    https://github.com/rubygems/rubygems/commit/426748ed06

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit da1981fca450b5dd28d252cd42d59480c7d062b7
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-29 14:30:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Remove unused parameter to `SharedHelpers.pretty_dependency`

    https://github.com/rubygems/rubygems/commit/665051d085

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit 4205190cb24c350f0fbe5471881c25e8ecece96c
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-29 14:16:32 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-18 16:33:15 +0900

    [rubygems/rubygems] Remove dead code

    https://github.com/rubygems/rubygems/commit/999b644708

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6578

commit 931bcd1b6315de5407a73019482bd3919f16820d
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-18 15:00:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-18 15:03:23 +0900

    [ruby/irb] Assert lvars_code doesn't include \n

    Removing /\A.+\n/ could have an unexpected impact, depending on how
    RubyLex.generate_local_variables_assign_code is implemented. It feels
    like a too much assumption and the intention isn't immediately clear,
    so I added these changes.

    https://github.com/ruby/irb/commit/ccc07a35ce

commit a09f764ce52838a363b006ea434287eca431dbae
  Author:     tomoya ishida <tomoyapenguin@gmail.com>
  AuthorDate: 2022-10-18 14:44:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-18 14:44:07 +0900

    [ruby/irb] Always use local variables in current context to parse code (https://github.com/ruby/irb/pull/397)

    * Use local_variables for colorize, code_block_open check, nesting_level and assignment_expression check

    * Check if expression is an assignment BEFORE evaluating it. evaluate might define new localvars and change result of assignment_expression?

    * Add local_variables dependent code test

    * pend local variable dependent test on truffleruby

    code_block_open is not working on truffleruby

    * Always pass context to RubyLex#lex

    * Rename local_variable_assign_code generator method name

    * Add assignment expression truncate test

    * Add Context#local_variables and make generate_local_variables_assign_code more simple

    * Update lib/irb/input-method.rb

    Co-authored-by: Stan Lo <stan001212@gmail.com>

    * Add a comment why assignment expression check should be done before evaluate

    https://github.com/ruby/irb/commit/c8b3877281

    Co-authored-by: Stan Lo <stan001212@gmail.com>
    Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>

commit 344e6c915f41d99df024c7e90403baca0d5213a5
  Author:     tomoya ishida <tomoyapenguin@gmail.com>
  AuthorDate: 2022-10-18 14:30:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-18 14:30:33 +0900

    [ruby/irb] Fix code terminated check with heredoc and backtick (https://github.com/ruby/irb/pull/390)

    * Fix backtick method def method call handled as backtick open

    * Fix handling heredoc in check_string_literal

    * Sort result of lexer.parse by pos in ruby<2.7. It's not sorted when the given code includes heredoc.

    * Update lib/irb/ruby-lex.rb

    Co-authored-by: Stan Lo <stan001212@gmail.com>

    * Update lib/irb/ruby-lex.rb

    Co-authored-by: Stan Lo <stan001212@gmail.com>

    * Add check_string_literal test for heredoc code that does not end with newline

    https://github.com/ruby/irb/commit/44bc712460

    Co-authored-by: Stan Lo <stan001212@gmail.com>

commit ab3b1b23811c44f56f3dff318b08a9112cba3582
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-18 11:30:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-18 11:37:12 +0900

    sync_default_gems.rb: fix links to GitHub issues

    - Substitute `GH-xxxx` which does not contain `#` too.
    - Split each substitutions.

commit 329d5424a479bb08e75bd750c51a5382e382731c
  Author:     Hiroshi Shirosaki <h.shirosaki@gmail.com>
  AuthorDate: 2022-10-18 09:18:03 +0900
  Commit:     Hiroshi Shirosaki <h.shirosaki@gmail.com>
  CommitDate: 2022-10-18 09:18:03 +0900

    [Bug #19042] Fix Dir.glob brace with '/'

    Dir.glob brace pattern with '/' after '**' does not match
    paths in recursive expansion process.
    We expand braces with '/' before expanding a recursive.

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

commit 995bdd69de0ce0ab5cec93c5818cc28912657458
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-18 07:37:56 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-18 07:37:56 +0900

    Try --x-use-aria2 for better retries (#6574)

    to possibly deal with failures like https://ci.appveyor.com/project/ruby/ruby/builds/45097615.

    I'm not sure how vcpkg retries things, but at least aria2c seems to attempt downloads 5 times by default.
    https://aria2.github.io/manual/en/html/aria2c.html

    Looking at the CI log, vcpkg might be already trying it 5 times, but let me give it a try too.

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit b54c8ba8fc1a03446fa9ecfd7995ba8fafd20a3e
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-10-18 03:31:24 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-18 06:47:45 +0900

    Simplified rb_obj_copy_ivar implementation

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6573

commit 1865ed4ab938a9979b3a310800a37c25e468c564
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-18 06:32:44 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-10-18 06:32:46 +0900

    Fix an outdated notification message

    https://github.com/ruby/ruby/commit/0d7292ec734d49def118959d6a80588e7c0f7a39

commit 1c83469fc6e6bde8781e09ce2844231feed9b170
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-08 07:19:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-18 06:14:50 +0900

    [ruby/irb] Remove unnecessary coloring support check

    https://github.com/ruby/irb/commit/ddd7dbe2c5

commit f11765aef0cafb6fadf98216c94507f2390a0a70
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-18 02:47:22 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-18 02:47:22 +0900

    YJIT: Allow --yjit-dump-disasm to dump into a file (#6552)

    * YJIT: Allow --yjit-dump-disasm to dump into a file

    * YJIT: Move IO implementation to disasm.rs

    * YJIT: More consistent naming

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 64c52c428285e7930aed62740cc9c54ee483178e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-18 02:45:59 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-18 02:45:59 +0900

    YJIT: Interleave inline and outlined code blocks (#6460)

    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>
    Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit e7c71c6c9271b0c29f210769159090e17128e740
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-18 01:27:59 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-18 01:27:59 +0900

    Make mjit_cont sharable with YJIT (#6556)

    * Make mjit_cont sharable with YJIT

    * Update dependencies

    * Update YJIT binding

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 07a93b1e378bf2ea356b0561e5e89e60d30fc684
  Author:     Tatsuya Kawano <tatsuya@hibaridb.org>
  AuthorDate: 2022-10-18 01:26:36 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-18 01:26:36 +0900

    YJIT: Do not call `mprotect` when `mem_size` is zero (#6563)

    This allows x86_64 based YJIT to run on Docker Desktop on Apple silicon (arm64)
    Mac because it will avoid a subtle behavior difference in `mprotect` system call
    between the Linux kernel and `qemu-x86_64` user space emulator.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit ad3d210beab9d162b96e2601aa3ad896785b831b
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-10-15 06:20:41 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-10-18 01:11:17 +0900

    YJIT: call free_block to cleanup block when out of memory

    The commented out instance of free_block() is left over from the port.
    The addition in gen_single_block() was a place we missed. The new block
    is allocated in the same function and could have invariants associated
    with it even though there is no space to hold all the code.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6551

commit 60defe0a68a40d1b3225cf6b971ea195e19ae2e2
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-10-06 22:53:16 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-10-17 23:56:00 +0900

    thread_sync.c: Clarify and document the behavior of timeout == 0

    [Feature #18982]

    Instead of introducing an `exception: false` argument to have `non_block`
    return nil rather than raise, we can clearly document that a timeout of 0
    immediately returns.

    The code is refactored a bit to avoid doing a time calculation in
    such case.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6500

commit 7db29de008bbf06ce1dc2a1e9fd9c9684b31e325
  Author:     Ben Toews <benjamin.toews@gmail.com>
  AuthorDate: 2022-10-17 22:58:04 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 23:38:35 +0900

    [ruby/openssl] add document-method for BN#mod_inverse

    https://github.com/ruby/openssl/commit/5befde7519

commit 149cb049f1d7f5fd2edf5ab467c33037ec993a47
  Author:     Ben Toews <benjamin.toews@gmail.com>
  AuthorDate: 2022-10-17 22:31:40 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 23:38:34 +0900

    [ruby/openssl] add BN#mod_sqrt

    https://github.com/ruby/openssl/commit/4619ab3e76

commit e037731c9f840b0c74eb68a808a109fdef3c6d5e
  Author:     Ben Toews <benjamin.toews@gmail.com>
  AuthorDate: 2022-10-17 22:30:30 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 23:38:34 +0900

    [ruby/openssl] define BIGNUM_2cr macro for BN function that takes context and
    returns a BN

    https://github.com/ruby/openssl/commit/4d0971c51c

commit 6166fa612cf798930863c7cca23dc96f46ab1c37
  Author:     Bart de Water <496367+bdewater@users.noreply.github.com>
  AuthorDate: 2022-10-08 20:53:57 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] Call out insecure PKCS #1 v1.5 default padding for RSA

    https://github.com/ruby/openssl/commit/fd5eaa6dfc

commit aecc470a3354bbf61e5cd2e65f4aeb4f3825a9be
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-07 19:05:17 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] Use default `IO#timeout` if possible.

    https://github.com/ruby/openssl/commit/471340f612

commit 17998ad3bb5864db38ba9e709ed7209da6189f0f
  Author:     Christophe De La Fuente <christophe_delafuente@rapid7.com>
  AuthorDate: 2022-08-30 03:15:54 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] Add support to SSL_CTX_set_keylog_callback

    - This callback is invoked when TLS key material is generated or
      received, in order to allow applications to store this keying material
      for debugging purposes.
    - It is invoked with an `SSLSocket` and a string containing the key
      material in the format used by NSS for its SSLKEYLOGFILE debugging
      output.
    - This commit adds the Ruby binding `keylog_cb` and the related tests
    - It is only compatible with OpenSSL >= 1.1.1. Even if LibreSSL implements
      `SSL_CTX_set_keylog_callback()` from v3.4.2, it does nothing (see
      https://github.com/libressl-portable/openbsd/commit/648d39f0f035835d0653342d139883b9661e9cb6)

    https://github.com/ruby/openssl/commit/3b63232cf1

commit e4b1627983ca27afcae9a2c502915a747a9e1656
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-09-09 16:03:42 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] ssl: fix "warning: ‘ctx’ may be used uninitialized"

    The code was introduced by https://github.com/ruby/openssl/commit/65530b887e54 ("ssl: enable generating keying
    material from SSL sessions", 2022-08-03).

    This is harmless, but we should avoid it.

    https://github.com/ruby/openssl/commit/f5b82e814b

commit 04bf83d6f7c9999ea82e472e09a42286026194f9
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-09-09 00:28:55 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] bump version number to 3.1.0.pre

    https://github.com/ruby/openssl/commit/fceb978a5d

commit cd83f5b961dfb5401d601c3b08ff3db9f02a5793
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-09-08 18:34:26 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] Ruby/OpenSSL 3.0.1

    https://github.com/ruby/openssl/commit/e5bbd015dc

commit 15a966a674a0c6813131057ee1540f021071ad3c
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-09-08 18:07:20 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] Ruby/OpenSSL 2.2.2

    https://github.com/ruby/openssl/commit/de8a644bc4

commit 33d30a8675e926e7ad07ff2b135da0c819af33ca
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-09-08 17:58:27 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] Ruby/OpenSSL 2.1.4

    https://github.com/ruby/openssl/commit/5316241e61

commit b69d41e1c433f9109b7c9237cde6ed8b4884cc06
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-09-02 23:05:28 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] pkey/ec: check existence of public key component before exporting

    i2d_PUBKEY_bio() against an EC_KEY without the public key component
    trggers a null dereference.

    This is a regression introduced by commit https://github.com/ruby/openssl/commit/56f0d34d63fb ("pkey:
    refactor #export/#to_pem and #to_der", 2017-06-14).

    Fixes https://github.com/ruby/openssl/pull/527#issuecomment-1220504524
    Fixes https://github.com/ruby/openssl/issues/369#issuecomment-1221554057

    https://github.com/ruby/openssl/commit/f6ee0fa4de

commit 0677b2fb87fa4bdff64e650e5df0fd7bf684bd2e
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-09-02 22:40:54 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] pkey: restore support for decoding "openssl ecparam -genkey" output

    Scan through the input for a private key, then fallback to generic
    decoder.

    OpenSSL 3.0's OSSL_DECODER supports encoded key parameters. The PEM
    header "-----BEGIN EC PARAMETERS-----" is used by one of such encoding
    formats. While this is useful for OpenSSL::PKey::PKey, an edge case has
    been discovered.

    The openssl CLI command line "openssl ecparam -genkey" prints two PEM
    blocks in a row, one for EC parameters and another for the private key.
    Feeding the whole output into OSSL_DECODER results in only the first PEM
    block, the key parameters, being decoded. Previously, ruby/openssl did
    not support decoding key parameters and it would decode the private key
    PEM block instead.

    While the new behavior is technically correct, "openssl ecparam -genkey"
    is so widely used that ruby/openssl does not want to break existing
    applications.

    Fixes https://github.com/ruby/openssl/pull/535

    https://github.com/ruby/openssl/commit/d486c82833

commit 4fb2845c7b71d94f01a224020e4eb91c99f99d66
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-09-02 18:14:57 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] pkey: clear error queue before each OSSL_DECODER_from_bio() call

    Fix potential error queue leak.

    https://github.com/ruby/openssl/commit/3992b6f208

commit 10f93a8bd787658996f08b13a0e564eaf3f41489
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-01-04 22:11:00 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] pkey/dsa: let PKey::DSA.generate choose appropriate q size

    DSA parameters generation via EVP_PKEY_paramgen() will not automatically
    adjust the size of q value but uses 224 bits by default unless specified
    explicitly. This behavior is different from the now-deprecated
    DSA_generate_parameters_ex(), which PKey::DSA.generate used to call.

    Fixes https://github.com/ruby/openssl/issues/483

    Fixes: https://github.com/ruby/openssl/commit/1800a8d5ebaf ("pkey/dsa: use high level EVP interface to generate parameters and keys", 2020-05-17)

    https://github.com/ruby/openssl/commit/0105975a0b

commit 65bba0ef6fa104324d34079f107f9c72ed8d0e2f
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-09-01 15:59:52 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] hmac: use EVP_PKEY_new_raw_private_key() if available

    Current OpenSSL 3.0.x release has a regression with zero-length MAC
    keys. While this issue should be fixed in a future release of OpenSSL,
    we can use EVP_PKEY_new_raw_private_key() in place of the problematic
    EVP_PKEY_new_mac_key() to avoid the issue. OpenSSL 3.0's man page
    recommends using it regardless:

    > EVP_PKEY_new_mac_key() works in the same way as
    > EVP_PKEY_new_raw_private_key().  New applications should use
    > EVP_PKEY_new_raw_private_key() instead.

    Fixes https://github.com/ruby/openssl/issues/369#issuecomment-1224912710

    https://github.com/ruby/openssl/commit/4293f18b1f

commit bee383d9fe84eb29ec12a8c392fcbf7c646575b8
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-09-02 13:55:19 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] x509*: fix error queue leak in #extensions= and #attributes= methods

    X509at_delete_attr() in OpenSSL master puts an error queue entry if
    there is no attribute left to delete. We must either clear the error
    queue, or try not to call it when the list is already empty.

    https://github.com/ruby/openssl/commit/a0c878481f

commit 79543b9a530d85f0487583d96ad412f5e7683ffa
  Author:     madblobfish <->
  AuthorDate: 2022-08-04 06:24:28 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] ssl: enable generating keying material from SSL sessions

    Add OpenSSL::SSL::SSLSocket#export_keying_material to support RFC 5705

    https://github.com/ruby/openssl/commit/65530b887e

commit a98096349ec7280edabf3822d2c6932ac6e63634
  Author:     Nobuhiro IMAI <nov@yo.rim.or.jp>
  AuthorDate: 2022-08-05 18:42:06 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] Check if the option is an Hash in `pkey_ctx_apply_options0()`

    causes SEGV if it is an Array or something like that.

    https://github.com/ruby/openssl/commit/ef23525210

commit c865e8d161f40c6e9cce411c92e313a91b14124e
  Author:     MSP-Greg <Greg.mpls@gmail.com>
  AuthorDate: 2022-07-26 11:43:47 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] [CI] TestHMAC#test_dup - remove 'pend' for OpenSSL 3

    https://github.com/ruby/openssl/commit/626b0434a6

commit 5dae78b9d36be7e2adfb5f9cad78bb10d641e40a
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-07-12 05:55:39 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:35 +0900

    [ruby/openssl] Pass arguments to check macro presence

    X509_STORE_get_ex_new_index() is a macro, so passing just its name to
    have_func() doesn't detect it. Pass an example call instead.

    https://github.com/ruby/openssl/commit/8d264d3e60

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

commit a211b32180b1ab0532f6978c32e907fe1c0c218a
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-06-27 10:34:42 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:35:33 +0900

    [ruby/openssl] Check for OpenSSL functions in headers

    While building with a custom build of OpenSSL, I noticed in mkmf.log
    that all the feature detection checks are done using a program lacking
    an OpenSSL header include. `mkmf` retries using a fallback program when
    this fails, but that means all the `have_func` calls compile twice when
    compiling once should suffice. Example log without this commit:

        have_func: checking for X509_STORE_CTX_get0_cert()... -------------------- yes

        DYLD_FALLBACK_LIBRARY_PATH=.:../.. "clang -o conftest ...
        conftest.c:14:57: error: use of undeclared identifier 'X509_STORE_CTX_get0_cert'
        int t(void) { void ((*volatile p)()); p = (void ((*)()))X509_STORE_CTX_get0_cert; return !p; }
                                                                ^
        1 error generated.
        checked program was:
        /* begin */
         1: #include "ruby.h"
         2:
         3: /*top*/
         4: extern int t(void);
         5: int main(int argc, char **argv)
         6: {
         7:   if (argc > 1000000) {
         8:     int (* volatile tp)(void)=(int (*)(void))&t;
         9:     printf("%d", (*tp)());
        10:   }
        11:
        12:   return !!argv[argc];
        13: }
        14: int t(void) { void ((*volatile p)()); p = (void ((*)()))X509_STORE_CTX_get0_cert; return !p; }
        /* end */

        DYLD_FALLBACK_LIBRARY_PATH=.:../.. "clang -o conftest ...
        checked program was:
        /* begin */
         1: #include "ruby.h"
         2:
         3: /*top*/
         4: extern int t(void);
         5: int main(int argc, char **argv)
         6: {
         7:   if (argc > 1000000) {
         8:     int (* volatile tp)(void)=(int (*)(void))&t;
         9:     printf("%d", (*tp)());
        10:   }
        11:
        12:   return !!argv[argc];
        13: }
        14: extern void X509_STORE_CTX_get0_cert();
        15: int t(void) { X509_STORE_CTX_get0_cert(); return 0; }
        /* end */

    The second compilation succeeds.

    Specify the header for each checked function.

    https://github.com/ruby/openssl/commit/34ae7d92d0

commit 63234edf6791e787f8ea4d439df431dcc2f0f527
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-10-17 16:17:27 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-10-17 16:25:51 +0900

    openssl: use the old rb_ary_tmp_new() alias

    openssl has to support older versions of Ruby. Undo the change in
    ext/openssl/ossl_pkey_ec.c by commit efb91ff19b73 ("Rename
    rb_ary_tmp_new to rb_ary_hidden_new", 2022-07-25).

commit b7de04d161726fbb277eaa95fb0d658dbb6a9536
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-17 14:47:49 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-10-17 14:47:49 +0900

    Disable dependabot for auto-request-review for now

    because you have to manually update the version tag comment.
    It feels unsafe to trust third party git tags when you need to pass
    MATZBOT_GITHUB_TOKEN to it. Git commit sha alone isn't human-readable
    and I'm reluctant to remove the comment either. It doesn't seem worth
    the effort to review changes for every release of this action.

commit fb6a9656a114cc9246b657cb4fa63313ef266fe0
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-17 14:44:15 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-10-17 14:44:15 +0900

    Do not run CodeQL on dependabot PRs

commit 0d7292ec734d49def118959d6a80588e7c0f7a39
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-17 14:02:47 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-17 14:02:47 +0900

    Leave only the oldest Visual Studio in AppVeyor (#6561)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 7cf37a57221c085aaf29e260060ea0e709af1e93
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-17 12:00:39 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-17 12:02:34 +0900

    [DOC] Add the polar form in String#to_c

commit e4191ac1ec7940b37bfeaf09c000cf46d2db5200
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-10-16 21:40:42 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-10-17 11:30:07 +0900

    Change a tab to spaces

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6570

commit 15488fc1c6f66d2ebb7410c48d76e9588921db63
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-16 18:04:15 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-16 18:22:20 +0900

    Update bundled gems list at 2022-10-16

commit f0654b1027d2f24cbb6e3cfb0c5946b70f06739b
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-10-16 01:37:44 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-16 02:44:10 +0900

    More precisely iterate over Object instance variables

    Shapes provides us with an (almost) exact count of instance variables.
    We only need to check for Qundef when an IV has been "undefined"
    Prefer to use ROBJECT_IV_COUNT when iterating IVs

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6555

commit 8d20632df849833d8a98f3d6f5e61f32eefa0fa6
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-16 00:53:08 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-16 00:53:08 +0900

    [DOC] Packed data (#6520)

    New page for packed data

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit d56301c00afff7115e01f54d57e464d26b8d1177
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-15 23:55:25 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-16 00:34:59 +0900

    No longer download zlib source

    Although zlib package in vcpkg is still 1.2.12, it should be no
    problem in ruby tests.

commit 1e3fa634f7c90bc5eab5bc7280b673333070ca84
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-16 00:20:58 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-16 00:26:51 +0900

    Explicitly cast to uint32_t and suppress warnings by VC

    ```
    ../src/variable.c(1440): warning C4244: 'initializing': conversion from 'double' to 'uint32_t', possible loss of data
    242
    ../src/variable.c(1470): warning C4244: 'initializing': conversion from 'double' to 'uint32_t', possible loss of data
    243
    ```

    TODO: check for `newsize` overflow

commit 7fcad1fa03c21b9a9916a12b816ec886a5b68920
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-15 17:43:45 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-15 17:43:45 +0900

    Update `Fiber::Scheduler` documentation. (#6562)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 52fcb3a72446189448e96a465d8c91c469ac0ed2
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-15 16:04:58 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-15 16:04:58 +0900

    Add missing `#close` call to `test_dup_timeout` test. (#6560)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 8a420670a29a7c78c7201f678eb26528621bf39f
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-15 15:59:04 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-15 15:59:04 +0900

    Introduce `Fiber::Scheduler#io_select` hook for non-blocking `IO.select`. (#6559)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 1acc1a5c6d5d01b2822d7aa4356208095481724b
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-10-15 08:11:37 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-15 09:14:41 +0900

    YJIT doesn't need rb_obj_ensure_iv_index_mapping

    We should make this function static and remove it from YJIT bindings.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6553

commit 53e0e5e8df8648e23278e4811e634671de9e1af1
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-15 04:45:00 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-15 04:45:00 +0900

    YJIT: Avoid creating payloads for non-JITed ISEQs (#6549)

    * YJIT: Count freed ISEQs

    * YJIT: Avoid creating payloads for non-JITed ISEQs

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit cbd3d655745564e3c33a29a5625ac30b4d69fb29
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-10-15 03:59:31 +0900
  Commit:     Aaron Patterson <tenderlove@ruby-lang.org>
  CommitDate: 2022-10-15 04:01:42 +0900

    Add a test for transition order

    We only cache the destination shape id, but that can lead to false cache
    hits.  This patch tests that we correctly handle false cache hits

commit 9a5684bf7f92ae71a55ede82ec18c31c161694ec
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-10-05 04:27:13 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-10-15 03:59:36 +0900

    Add test for ractor race condition on ivar sets

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6490

commit fb99227ca1ee9d8540d251c8b61c3e6433211714
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-10-15 02:04:53 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-15 02:04:53 +0900

    More clippy fixes (#6547)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 7e81dd94073d699f6f0c930072cd43e5e387784e
  Author:     Eileen M. Uchitelle <eileencodes@users.noreply.github.com>
  AuthorDate: 2022-10-15 01:43:18 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-15 01:43:18 +0900

    Update yjit docs (#6548)

    * The list of supported architectures was updated in
    https://github.com/ruby/ruby/commit/5ef048e5b1c3dd61adf782ace570bb0a1f9bb12f
    but the first paragraph wasn't updated.
    * `--yjit-trace-exits` was missing from the command-line options
    * Fixes some spacing issues
    * Updates call threshold default to 10, verified in the code that's
    correct.
    * Add code ticks around method names.
    * Fix namespace of stats example

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 7e24ebc649b9b12e5fc704d7fc7563aeaf589e03
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-15 01:16:21 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-15 01:16:21 +0900

    Disable msystem: MINGW64 job on GitHub Actions (#6545)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit ee6cc2502664ac46edc61868d8954b626bb48e53
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-15 01:03:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-15 01:03:47 +0900

    Remove wrong dollar

commit 60610031009e60bdfe5775b0316df251ee36a973
  Author:     Jonathan Hefner <jonathan@hefner.pro>
  AuthorDate: 2022-10-12 02:02:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-15 00:08:44 +0900

    [ruby/delegate] Fix DelegateClass block "method redefined" warning

    This commit prevents "method redefined" warnings when overriding methods
    within a `DelegateClass` block, such as in the following example:

      ```ruby
      Base = Class.new do
        def foo
          "foo"
        end
      end

      Overridden = DelegateClass(Base) do
        def foo
          super + "!"
        end
      end
      ```

    Fixes https://bugs.ruby-lang.org/issues/19047.

    https://github.com/ruby/delegate/commit/214fae86de

commit d4162053410782a449e0921ee7222e7ce3deca6f
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-14 21:45:51 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-14 21:45:51 +0900

    Copy `IO#timeout` on `IO#dup`. (#6546)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 7b7e5153e81288fe57ae64f2e1db228435156aeb
  Author:     manga_osyo <manga.osyo@gmail.com>
  AuthorDate: 2022-10-10 12:30:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-14 21:31:24 +0900

    [ruby/pp] [Feature #19045] Add support Data#pretty_print

    https://github.com/ruby/pp/commit/343a20d721

commit 5ccb625fbbd1e774636a9fdbe0bf1c3d38e085d5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-04 18:10:41 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-14 19:23:25 +0900

    Use `roomof` macro for rounding up divisions

commit ee8bcbf40578c0c4e60063a3e0c86439a6891131
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-10-13 00:09:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-14 18:31:15 +0900

    Reuse ins_methods_type_i function

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6534

commit 5e554d30ba747ad1b59335efaa63c7e3c94bfad0
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-14 08:28:16 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-10-14 08:29:06 +0900

    Upgrade zlib_version on AppVeyor

    They removed https://zlib.net/zlib1212.zip because
    https://zlib.net/zlib1213.zip was released :thinking_face:

    Fix CI failures like:
    https://ci.appveyor.com/project/ruby/ruby/builds/45064876/job/bb9biogolh0u2595

commit 3c0b4ef1a2a972d5b0b723b82538fc8f40d85f32
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-10-14 07:20:04 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-14 07:20:04 +0900

    fixes more clippy warnings (#6543)

    * fixes more clippy warnings

    * Fix x86 c_callable to have doc_strings

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 93a87f4963703a709bf974c48f76a5503f31f53f
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-10-14 07:17:13 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-14 07:17:13 +0900

    Make op_ext an optional for code clarity (#6542)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit e5058b58c22e19d559b1122d94af5af3931aa416
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-10-13 06:37:02 +0900
  Commit:     Aaron Patterson <tenderlove@ruby-lang.org>
  CommitDate: 2022-10-14 05:11:01 +0900

    Only expose Ruby Shape API if VM_CHECK_MODE is enabled

commit 1b0c9d0e3d6dc3630072dc16c143e0d79886b7a0
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-10-13 05:19:55 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-10-14 03:29:42 +0900

    YJIT: No need to fill to get UDF on ARM64

    On ARM64, all zeros is already undefined, so we don't need to do extra
    work to fill new memory with undefined instructions.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6536

commit 2cc3963a00868ef6ff84a8b3bccca778592b3c2d
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-10-13 19:23:46 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-14 00:14:04 +0900

    Prevent wrong integer expansion

    `(attr_index + 1)` leads to wrong integer expansion on 32-bit machines
    (including Solaris 10 CI) because `attr_index_t` is uint16_t.

    http://rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20221013T080004Z.fail.html.gz
    ```
      1) Failure:
    TestRDocClassModule#test_marshal_load_version_2 [/export/home/users/chkbuild/cb-gcc/tmp/build/20221013T080004Z/ruby/test/rdoc/test_rdoc_class_module.rb:493]:
    <[doc: [doc (file.rb): [para: "this is a comment"]]]> expected but was
    <[doc: [doc (file.rb): [para: "this is a comment"]]]>.

      2) Failure:
    TestRDocStats#test_report_method_line [/export/home/users/chkbuild/cb-gcc/tmp/build/20221013T080004Z/ruby/test/rdoc/test_rdoc_stats.rb:460]:
    Expected /\#\ in\ file\ file\.rb:4/ to match "The following items are not documented:\n" +
    "\n" +
    "  class C # is documented\n" +
    "\n" +
    "    # in file file.rb\n" +
    "    def m1; end\n" +
    "\n" +
    "  end\n" +
    "\n" +
    "\n".

      3) Failure:
    TestRDocStats#test_report_attr_line [/export/home/users/chkbuild/cb-gcc/tmp/build/20221013T080004Z/ruby/test/rdoc/test_rdoc_stats.rb:91]:
    Expected /\#\ in\ file\ file\.rb:3/ to match "The following items are not documented:\n" +
    "\n" +
    "  class C # is documented\n" +
    "\n" +
    "    attr_accessor :a # in file file.rb\n" +
    "\n" +
    "  end\n" +
    "\n" +
    "\n".
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6541

commit 4b1504ae0a5118153f8b47d7bd0fff7e61553d17
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-13 16:24:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-13 16:24:53 +0900

    [ruby/uri] Fix splitting relative URI

    https://github.com/ruby/uri/commit/ffbab83de6

commit 765ee822b54026e6cafa107d93475c2883e2bad8
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-13 15:04:06 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-13 15:04:06 +0900

    Add missing `f.resume` to fiber test. (#6539)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit b734832883e3644af2527bd463de220a0b5794bc
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-13 13:42:22 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-13 13:42:22 +0900

    Skip utime example with Intel C Compiler suite

commit 1cda4146224e857f6258241bbb30d9358ce2d6c7
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-13 11:41:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-13 12:32:02 +0900

    Raise ArgumentError with empty host url again.

      Fixup dd5118f8524c425894d4716b787837ad7380bb0d

    Co-authored-by: Koichi Sasada <ko1@atdot.net>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6538

commit dd5118f8524c425894d4716b787837ad7380bb0d
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2019-01-13 08:58:00 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-13 11:04:06 +0900

    URI.parse should set empty string in host instead of nil

commit 166140aa289e6edfd9b023b87c9e6d4434bb29bc
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-13 04:50:50 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-13 04:50:50 +0900

    YJIT: Set RUST_BACKTRACE=1 in every Cirrus script (#6526)

    * YJIT: Set RUST_BACKTRACE=1 in every Cirrus script

    * YJIT: Print $CIRRUS_ENV correctly

    It looks like $CIRRUS_ENV is cleaned up at every script.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 107531583c8e8b2d706a6a27f46d429e387efff7
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-10-13 00:54:02 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-13 01:56:11 +0900

    Unwrap shape id as unsigned int

    Shape IDs are unsigned.  This commit unwraps the shape id as an unsigned
    int, which will automatically raise an argument error and also eliminate
    a compilation warning.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6535

commit b55e3b842a8cf4349914b05cebf00ab53024ae69
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-12 19:38:29 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-13 01:14:55 +0900

    Initialize shape attr index also in non-markable CC

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6532

commit 80da7250c5d7c862e3c1e1431683a1f1211a4d9c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-12 22:03:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-12 22:24:53 +0900

    file2lastrev.rb: Refactor VCS directory search

    Search VCS directory after other options are in effective, i.e.,
    `--srcdir=nonexitent --suppress_not_found` options, as well as the
    reverse order case, should print the current date only and exit
    successfully.

commit 504e388525ca7a1eeac64d08731f036b2ffc7b07
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-10-12 21:51:23 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-10-12 21:51:23 +0900

    Suppress a "warning: method redefined" in test/ruby/test_method.rb

commit 9cfc45d6e52cf4ffde0375f8d3f2271c36e9e91c
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-10-12 21:48:28 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-10-12 21:48:28 +0900

    Suppress warnings in test/ruby/test_ast.rb

    The tests for error tolerance printed some warnings. This change
    suppresses them.

commit 7a9f865a1d855109c7990b5fee21f92cc951ce60
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-10-12 19:02:11 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-10-12 20:28:24 +0900

    Do not read cached_id from callcache on stack

    The inline cache is initialized by vm_cc_attr_index_set only when
    vm_cc_markable(cc). However, vm_getivar attempted to read the cache
    even if the cc is not vm_cc_markable.

    This caused a condition that depends on uninitialized value.
    Here is an output of valgrind:

    ```
    ==10483== Conditional jump or move depends on uninitialised value(s)
    ==10483==    at 0x4C1D60: vm_getivar (vm_insnhelper.c:1171)
    ==10483==    by 0x4C1D60: vm_call_ivar (vm_insnhelper.c:3257)
    ==10483==    by 0x4E8E48: vm_call_symbol (vm_insnhelper.c:3481)
    ==10483==    by 0x4EAD8C: vm_sendish (vm_insnhelper.c:5035)
    ==10483==    by 0x4C62B2: vm_exec_core (insns.def:820)
    ==10483==    by 0x4DD519: rb_vm_exec (vm.c:0)
    ==10483==    by 0x4F00B3: invoke_block (vm.c:1417)
    ==10483==    by 0x4F00B3: invoke_iseq_block_from_c (vm.c:1473)
    ==10483==    by 0x4F00B3: invoke_block_from_c_bh (vm.c:1491)
    ==10483==    by 0x4D42B6: rb_yield (vm_eval.c:0)
    ==10483==    by 0x259128: rb_ary_each (array.c:2733)
    ==10483==    by 0x4E8730: vm_call_cfunc_with_frame (vm_insnhelper.c:3227)
    ==10483==    by 0x4EAD8C: vm_sendish (vm_insnhelper.c:5035)
    ==10483==    by 0x4C6254: vm_exec_core (insns.def:801)
    ==10483==    by 0x4DD519: rb_vm_exec (vm.c:0)
    ==10483==
    ```

    In fact, the CI on FreeBSD 12 started failing since ad63b668e22e21c352b852f3119ae98a7acf99f1.

    ```
    gmake[1]: Entering directory '/usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby'
    /usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby/lib/optparse.rb:924:in `complete': undefined method `complete' for nil:NilClass (NoMethodError)
            from /usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby/lib/optparse.rb:1816:in `block in visit'
            from /usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby/lib/optparse.rb:1815:in `reverse_each'
            from /usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby/lib/optparse.rb:1815:in `visit'
            from /usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby/lib/optparse.rb:1847:in `block in complete'
            from /usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby/lib/optparse.rb:1846:in `catch'
            from /usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby/lib/optparse.rb:1846:in `complete'
            from /usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby/lib/optparse.rb:1640:in `block in parse_in_order'
            from /usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby/lib/optparse.rb:1632:in `catch'
            from /usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby/lib/optparse.rb:1632:in `parse_in_order'
            from /usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby/lib/optparse.rb:1626:in `order!'
            from /usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby/lib/optparse.rb:1732:in `permute!'
            from /usr/home/chkbuild/chkbuild/tmp/build/20221011T163003Z/ruby/lib/optparse.rb:1757:in `parse!'
            from ./ext/extmk.rb:359:in `parse_args'
            from ./ext/extmk.rb:396:in `<main>'
    ```

    This change adds a guard to read the cache only when vm_cc_markable(cc).
    It might be better to initialize the cache as INVALID_SHAPE_ID when the
    cc is not vm_cc_markable.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6530

commit 66a650ec41a583ec58003737b23b42ec8f069920
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-12 20:17:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-12 20:24:38 +0900

    [ruby/psych] Fix missing `abort` call

    https://github.com/ruby/psych/commit/de2b98c7b7

    Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com>

commit ed01bacf2778a5e3bd813ded5f01d7ccc85b289d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-12 19:53:40 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-12 20:24:37 +0900

    [ruby/psych] Abandon when libyaml is not found

    https://github.com/ruby/psych/commit/0b89eda398

commit 0360fca4ad9cfcffbcc5e5a016308563267a5fcb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-12 13:30:25 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-12 13:30:25 +0900

    [DOC] Replace the external URIs to docs with rdoc-ref

commit b57ecc3eb88db40517f43ed44c007e2ddf5a8b2f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-12 13:24:53 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-12 13:24:53 +0900

    sync_default_gems: Replace the URIs to be redirected

    The reference generated by using RDoc without the proper `--page-dir`
    option (or `.rdoc_options`) file may contain `/doc/`.  Since these
    URIs are redirected by the server now, replace such URIs with the
    corresponding rdoc-refs too.

commit 3539da64fc42d6eb76f1d4c3ccd219c3259ecd8b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-12 11:54:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-12 12:27:40 +0900

    [DOC] Replace the external URIs to docs with rdoc-ref

commit 2b5d4fe28dc548f782be8d71de8b472000e6b38e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-12 11:52:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-12 12:27:40 +0900

    sync_default_gems: Add rdoc-ref command to test

commit df588440ee01e91d87cb815ff85dd6c785dc7827
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-12 11:50:25 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-12 12:27:40 +0900

    sync_default_gems: Replace the external URIs to docs with rdoc-ref

commit c67e49688642b5a650f53765dd11c1202d1ea57f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-12 11:38:44 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-12 12:27:40 +0900

    sync_default_gems: Should match with the beginning of the strings

    `git status -z` result is NUL-separated, and can contain newline
    characters.

commit 04d291a490517eb32ea02df636fc8f1f1ed57873
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-12 11:56:35 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-12 11:56:35 +0900

    Simplify implementation of scheduler `io_read` and `io_write`. (#6527)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 4e29ca0c4093133838eda852879b23ed4fad56b5
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-10-08 01:54:35 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-12 10:36:51 +0900

    Add :ssl_min_version and :ssl_max_version options

    Replace :ssl_version option with these two new options. These provide
    access to OpenSSL::SSL::SSLContext#{min,max}_version=, which is the
    recommended way to specify SSL/TLS protocol versions.

commit ced1d172804b6dfe39aa31a323ffab80a25223b9
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-12 08:59:05 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-12 08:59:05 +0900

    Improvements to IO::Buffer implementation and documentation. (#6525)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 467992ee35b59577ddb53f1323b19af3f3e3d134
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-10-12 05:37:05 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-12 05:37:05 +0900

    Implement optimize send in yjit (#6488)

    * Implement optimize send in yjit

    This successfully makes all our benchmarks exit way less for optimize send reasons.
    It makes some benchmarks faster, but not by as much as I'd like. I think this implementation
    works, but there are definitely more optimial arrangements. For example, what if we compiled
    send to a jump table? That seems like perhaps the most optimal we could do, but not obvious (to me)
    how to implement give our current setup.

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

    * Attempt at fixing the issues raised by @XrXr

    * fix allowlist

    * returns 0 instead of nil when not found

    * remove comment about encoding exception

    * Fix up c changes

    * Update assert

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

    * get rid of unneeded code and fix the flags

    * Apply suggestions from code review

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

    * rename and fix typo

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 913979bede2a1b79109fa2072352882560d55fe0
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-10-04 02:52:40 +0900
  Commit:     Aaron Patterson <tenderlove@ruby-lang.org>
  CommitDate: 2022-10-12 00:40:56 +0900

    Make inline cache reads / writes atomic with object shapes

    Prior to this commit, we were reading and writing ivar index and
    shape ID in inline caches in two separate instructions when
    getting and setting ivars. This meant there was a race condition
    with ractors and these caches where one ractor could change
    a value in the cache while another was still reading from it.

    This commit instead reads and writes shape ID and ivar index to
    inline caches atomically so there is no longer a race condition.

    Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org>
    Co-Authored-By: John Hawthorn <john@hawthorn.email>

commit ad63b668e22e21c352b852f3119ae98a7acf99f1
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-10-04 00:14:32 +0900
  Commit:     Aaron Patterson <tenderlove@ruby-lang.org>
  CommitDate: 2022-10-12 00:40:56 +0900

    Revert "Revert "This commit implements the Object Shapes technique in CRuby.""

    This reverts commit 9a6803c90b817f70389cae10d60b50ad752da48f.

commit 1a66d42fca86b1d47f91cf9de1443c72785fe222
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-11 16:25:09 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-11 16:25:09 +0900

    [DOC] use the local rdoc reference than the external URI

commit 1dd774f53ac0043692bf0673df866ef419d8a987
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-11 09:32:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-11 10:44:42 +0900

    [ruby/open-uri] Remove unused files from the packages

    https://github.com/ruby/open-uri/commit/b2d9efbaf8

commit 1bafa4a59b296e6ca80e32755fc84b76c3c575e5
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-11 06:18:20 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-11 06:18:20 +0900

    Ignore failure to set nonblock mode. (#6524)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 1a7e7bb2d1dd507a6fdf883548633bdd14bf6854
  Author:     Jean Boussier <byroot@ruby-lang.org>
  AuthorDate: 2022-10-07 21:44:13 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-10-10 18:35:16 +0900

    object.c: rb_eql returns int not VALUE

    It works, but assumes `Qfalse == 0`, which is true today
    but might not be forever.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6508

commit f1c89c81478d3520fec6b34ec2d411a1e85b7769
  Author:     S.H <gamelinks007@gmail.com>
  AuthorDate: 2022-10-10 13:52:25 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-10 13:52:25 +0900

    Reuse `with_warning_string_from` macro

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6471

    Merged-By: nobu <nobu@ruby-lang.org>

commit 6c5a8c20439ea8932863627e477f18a7e77cf47e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-10 11:43:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-10 13:41:46 +0900

    Ignore excessive precisions

    On filesystems where have precisions more than microseconds, even when
    the whole fractional part is not zero, the microsecond can be zero in
    about 1/1,000,000 probabilities.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6522

commit 0a98dd1cffe09c2c17e60e1a1c75bad7e4337002
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-10 13:21:57 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-10 13:21:57 +0900

    Should use dedecated function `Check_Type`

commit 4954c9fc0f9d06aa4e3e8deb33b41f3fae294adc
  Author:     Vladimir Dementyev <dementiev.vm@gmail.com>
  AuthorDate: 2022-08-06 09:13:09 +0900
  Commit:     Kazuki Tsujimoto <kazuki@callcc.net>
  CommitDate: 2022-10-10 12:41:13 +0900

    Add MatchData#deconstruct/deconstruct_keys

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6216

commit 546566d34b37fb5a028bcbe6bafa8248877f06ca
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-09 17:43:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-09 19:07:21 +0900

    Do not set `$!` to `SyntaxError` when error tolerant

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6517

commit d9e2ef6000a7a7621e110a7092f09e273eb81fcb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-09 18:01:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-09 19:05:31 +0900

    Extract `assert_error_tolerant`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6519

commit f178ff39334ac2fb33de0d6c3e6ec8fb7714e8da
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-09 16:08:09 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-09 16:27:34 +0900

    Allow abbreviated dump options with additional options

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6518

commit 43f692248e93a3a43f07f9f1e9b5c4659d65c88a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-09 16:23:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-09 16:26:18 +0900

    Set AST prettyprint width to 80 explicitly

    `PrettyPrint` results depend on the `COLUMNS` environment variable by
    default.

commit 561b6c4fa00bc4645aa083eb42356aa1289eed70
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-10-09 11:01:04 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-10-09 14:00:52 +0900

    Remove unused macro

    NEW_PREEXE has not been used since 52a5f76e8b1ab02ee6e259a7cff9e8c5475744e8

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6516

commit b22a2803a86d6adabc24dd00ef5ae90762a2ae46
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-10-09 04:04:18 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-10-09 04:06:30 +0900

    Fix flaky test test_thrashing_for_young_objects

    The test could be flaky when a heap has below GC_HEAP_INIT_SLOTS number
    of free slots because it would trigger a major GC and allocate more
    pages.

commit 8483737bbfff506996777991f8dca7f45ce422d5
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-10-08 21:04:23 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-10-08 23:29:36 +0900

    Fix typos

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6515

commit 50f5223236704c75c827d0a745fc934ad9c86277
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-10-08 18:53:41 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-10-08 22:30:50 +0900

    Fix SEGV of dump parsetree

    Assign internal_id to semantic value so that dump parsetree option
    can render the tree for these codes without SEGV.

    * `def m(&); end`
    * `def m(*); end`
    * `def m(**); end`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6514

commit 0f231f2babf314593bcd233f4f5b8de8dc936145
  Author:     Maciek Rząsa <maciejrzasa@gmail.com>
  AuthorDate: 2022-10-08 19:30:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-08 19:30:34 +0900

    [ruby/optparse] Don't treat empty string as an option description

    https://github.com/ruby/optparse/commit/078638ee6d

commit 3531086095aed9d2898de686bc67ab3a6c2192de
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-10-01 17:53:39 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-10-08 17:59:11 +0900

    "expr_value" can be error

    So that "IF" node is kept in the case below

    ```
    def m
      if
    end
    ```

    [Feature #19013]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6512

commit 4bfdf6d06ddbcf21345461038f2a9e3012f77268
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-10-01 17:44:28 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-10-08 17:59:11 +0900

    Move `error` from top_stmts and top_stmt to stmt

    By this change, syntax error is recovered smaller units.
    In the case below, "DEFN :bar" is same level with "CLASS :Foo"
    now.

    ```
    module Z
      class Foo
        foo.
      end

      def bar
      end
    end
    ```

    [Feature #19013]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6512

commit 4f24f3ea94e43d1021fdd8548480f130f5112b99
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-10-01 17:19:34 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-10-08 17:59:11 +0900

    Treat "end" as reserved word with consideration of indent

    "end" after "." or "::" is treated as local variable or method,
    see `EXPR_DOT_bit` for detail.
    However this "changes" where `bar` method is defined. In the example
    below it is not module Z but class Foo.

    ```
    module Z
      class Foo
        foo.
      end

      def bar
      end
    end
    ```

    [Feature #19013]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6512

commit 342d4c16d963408905fd08118d1908fe197f2364
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-09-25 18:09:34 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-10-08 17:59:11 +0900

    Generates "end" tokens if parser hits end of input

    but "end" tokens are needed for correct language.

    [Feature #19013]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6512

commit 52eaffde8604b64279208242444894dd69780c24
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-09-25 21:23:17 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-10-08 17:59:11 +0900

    Support "+error-tolerant" as ruby option

    [Feature #19013]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6512

commit fbbdbdd8911ffb24d98bb71c7c33d24609ce7dfe
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-09-25 17:53:44 +0900
  Commit:     yui-knk <spiketeika@gmail.com>
  CommitDate: 2022-10-08 17:59:11 +0900

    Add error_tolerant option to RubyVM::AST

    If this option is enabled, SyntaxError is not raised and Node is
    returned even if passed script is broken.

    [Feature #19013]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6512

commit 7775d14356c375536c915ea4bd0fae019acaaeb1
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-10-08 16:05:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-08 16:05:42 +0900

    Update bundled gems list at 2022-10-08

commit 844a9dff887f0af075c0c50020f98a45a1528d14
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-08 10:02:34 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-08 10:02:34 +0900

    Try `nil` as default for 'default timeout'. (#6509)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 5b3079a8a5f66859c8d80ad55b5424c7c1877443
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-06 20:37:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-08 03:17:42 +0900

    [ruby/irb] Sort constant completion's candidates

    https://github.com/ruby/irb/commit/ee9b33c817

commit 7cafe09aec76924eafe3ca46b0265de44930a67e
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-06 19:54:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-08 03:17:42 +0900

    [ruby/irb] Lazily evaluate candidates locals

    https://github.com/ruby/irb/commit/19a2fcbd87

commit 7be5e9b9712d5ba11911e1ca618c6c487ad8eea6
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-06 20:30:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-08 03:17:41 +0900

    [ruby/irb] Correct assert_equal's usage in completion tests

    https://test-unit.github.io/test-unit/en/Test/Unit/Assertions.html#assert_equal-instance_method

    https://github.com/ruby/irb/commit/00f90d40ad

commit afc1f4fba4c2e97b3d6afc0c863cf1246320aae3
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-06 20:27:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-08 03:17:40 +0900

    [ruby/irb] Add constant completion test

    https://github.com/ruby/irb/commit/39f8fcb058

commit 3e18bb916fe77aa7834aa11bfcb31f86626c6b76
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-06 19:59:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-08 03:17:39 +0900

    [ruby/irb] Regroup completion tests

    https://github.com/ruby/irb/commit/71631287c8

commit 83a9b91522469d5d58e280391138f43afba110af
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-06 19:49:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-08 03:17:38 +0900

    [ruby/irb] Add tests for primitive types' method completion

    https://github.com/ruby/irb/commit/2e12fac38e

commit d76854f1668fc6ee1cd8af15213d6e225269a9e4
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-10-07 00:37:16 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-10-08 01:38:43 +0900

    Update NEWS about [Feature #18589]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6501

commit ad0def7f259f793ce02400a8d6144f86b3615ddd
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-10-07 22:39:07 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-10-07 22:39:07 +0900

    Add more debugging output to test_thrashing_for_young_objects

commit 24f3e397e957a6747a2067edd831bc7920e204ec
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-07 20:33:40 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-07 20:33:40 +0900

    Add spec for `Coverage.supported?` and `start(eval: true)`. (#6499)

    * Don't emit coverage for eval when eval coverage is disabled.

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 1e6cdc76e4b11084f85b2b4718090787a500fd69
  Author:     lijunwei <ljw532344863@sina.com>
  AuthorDate: 2022-08-21 00:12:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-07 19:37:27 +0900

    [ruby/logger] Fix the Logger::Formatter documentation

    https://github.com/ruby/logger/commit/db554fbda7

commit a081fe76de5de0307651d99324a0e454fd8b8a8b
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-07 18:51:27 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-07 18:51:27 +0900

    Simplify default argument specification. (#6507)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit e4f91bbdbaa6ab3125f24967414ac5300bb244f5
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-07 17:48:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-07 17:48:38 +0900

    Add IO#timeout attribute and use it for blocking IO operations. (#5653)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit c3a87e16d8edea1496eebc60d7514fa8005449c7
  Author:     Soutaro Matsumoto <matsumoto@soutaro.com>
  AuthorDate: 2022-10-07 16:02:45 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-07 16:02:45 +0900

    Bundle RBS 2.7.0 (#6506)

  Notes:
    Merged-By: soutaro <matsumoto@soutaro.com>

commit 4f78560cf12ad4979a5953bbf38d05e2bf264d21
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-07 15:18:00 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:20:11 +0900

    Add --with-libffi-source-dir feature and removed --enable-bundled-libffi option. (#113)

    https://bugs.ruby-lang.org/issues/18571

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
    Co-authored-by: Sutou Kouhei <kou@clear-code.com>

commit 92f0c53934f01bb217ec1517d7eeef2e86b3773f
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-09-16 05:54:47 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:18:54 +0900

    [ruby/fiddle] test: don't use assert_true/assert_false

    GitHub: GH-102

    They aren't available in ruby/ruby.

    https://github.com/ruby/fiddle/commit/ced671e43b

commit ada9f8a9f78b3ccd8a5187775d06f45eb9f636f5
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-09-15 08:51:42 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:18:54 +0900

    [ruby/fiddle] closure: follow variable name change

    GitHub: GH-102

    https://github.com/ruby/fiddle/commit/2530496602

commit a4ad6bd9aac564e93219284c912b26a72f9e82fc
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-09-15 07:08:20 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:18:53 +0900

    [ruby/fiddle] closure: free resources when an exception is raised in Closure.new

    GitHub: GH-102

    https://github.com/ruby/fiddle/commit/81a8a56239

commit 9f62768e51a1afb479b0100e9c44645d6c1ece38
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-09-15 07:07:59 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:18:53 +0900

    [ruby/fiddle] test: ensure freeing closure

    GitHub: GH-102

    https://github.com/ruby/fiddle/commit/b2fef1770d

commit 824c474c95969f8255f293dc927ea081907aa0c2
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-09-15 06:44:07 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:18:53 +0900

    [ruby/fiddle] test: ensure freeing closure

    GitHub: GH-102

    This also improves freed closures assertions.

    https://github.com/ruby/fiddle/commit/0495624caf

commit dfca6a879935b5999a56c2a220d4f2595c16d4d4
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-09-15 06:40:31 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:18:52 +0900

    [ruby/fiddle] test: don't use power-assert

    It seems that we can't use it in ruby/ruby.

    https://github.com/ruby/fiddle/commit/e1221297fb

commit 7c3314129368fdfcf104e489f16538b531ed6d3d
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-09-15 06:38:52 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:18:52 +0900

    [ruby/fiddle] test: ensure freeing closure

    GitHub: GH-102

    This also improves freed closures assertions.

    https://github.com/ruby/fiddle/commit/f6431f3cf8

commit 255e617bc38f714c943c932e7df2b709313fd6bf
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-09-14 12:59:13 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:18:51 +0900

    [ruby/fiddle] Add Fiddle::Closure.create and Fiddle::Closure.free

    GitHub: fix GH-102

    It's for freeing a closure explicitly.

    We can't use Fiddle::Closure before we fork the process. If we do it,
    the process may be crashed with SELinux.

    See https://github.com/ruby/fiddle/issues/102#issuecomment-1241763091
    for details.

    Reported by Vít Ondruch. Thanks!!!

    https://github.com/ruby/fiddle/commit/a0ccc6bb1b

commit 191b91f47a1557b7178072e2a607105d5449e2ef
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-09-14 12:51:40 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:18:51 +0900

    [ruby/fiddle] test: suppress a warning

        test/fiddle/test_import.rb:138: warning:
        ambiguous first argument; put parentheses or a space even after `-' operator

    https://github.com/ruby/fiddle/commit/060eef76ad

commit 0097c7f3887ad8dd5493cb3696ac6368dc4a1014
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-09-14 00:27:59 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:18:51 +0900

    [ruby/fiddle] Add `sym_defined?` methods to test if a symbol is defined (https://github.com/ruby/fiddle/pull/108)

    I would like to check if a symbol is defined before trying to access it.
    Some symbols aren't available on all platforms, so instead of raising an
    exception, I want to check if it's defined first.

    Today we have to do:

    ```ruby
    begin
      addr = Fiddle::Handle.sym("something")
      # do something
    rescue Fiddle::DLError
    end
    ```

    I want to write this:

    ```ruby
    if Fiddle::Handle.sym_defined?("something")
      addr = Fiddle::Handle.sym("something")
      # do something
    end
    ```

    https://github.com/ruby/fiddle/commit/9d3371de13

    Co-authored-by: Sutou Kouhei <kou@clear-code.com>

commit 755d99e8789b84a7d73d5a30f6b5d582e06f7f45
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-09-14 00:26:47 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:18:50 +0900

    [ruby/fiddle] Move "type" constants to `Fiddle::Types` (https://github.com/ruby/fiddle/pull/112)

    This helps to reduce repetition in code. Instead of doing "TYPE_*"
    everywhere, you can do `include Fiddle::Types`, and write the type name
    directly.

    This PR is to help reduce repetition when writing Fiddle code. Right now
    we have to type `TYPE_` everywhere, and you also have to include all of
    `Fiddle` to access `TYPE_*` constants. With this change, you can just
    include `Fiddle::Types` and it will shorten your code and also you only
    have to include those constants.

    Here is an example before:

    ```ruby
    require "fiddle"

    module MMAP
      # All Fiddle constants included
      include Fiddle

      def self.make_function name, args, ret
        ptr = Handle::DEFAULT[name]
        func = Function.new ptr, args, ret, name: name
        define_singleton_method name, &func.to_proc
      end

      make_function "munmap", [TYPE_VOIDP, # addr
                               TYPE_SIZE_T], # len
                               TYPE_INT

      make_function "mmap", [TYPE_VOIDP,
                             TYPE_SIZE_T,
                             TYPE_INT,
                             TYPE_INT,
                             TYPE_INT,
                             TYPE_INT], TYPE_VOIDP

      make_function "mprotect", [TYPE_VOIDP, TYPE_SIZE_T, TYPE_INT], TYPE_INT
    end
    ```

    After:

    ```ruby
    require "fiddle"

    module MMAP
      # Only type names included
      include Fiddle::Types

      def self.make_function name, args, ret
        ptr = Fiddle::Handle::DEFAULT[name]
        func = Fiddle::Function.new ptr, args, ret, name: name
        define_singleton_method name, &func.to_proc
      end

      make_function "munmap", [VOIDP, # addr
                               SIZE_T], # len
                               INT

      make_function "mmap", [VOIDP, SIZE_T, INT, INT, INT, INT], VOIDP

      make_function "mprotect", [VOIDP, SIZE_T, INT], INT
    end
    ```

    We only need to import the type names, and you don't have to type
    `TYPE_` over and over. I think this makes Fiddle code easier to read.

    https://github.com/ruby/fiddle/commit/49fa7233e5

    Co-authored-by: Sutou Kouhei <kou@clear-code.com>

commit 48a64984063532f4dedf62e8ac4958a3cf3b556d
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-09-13 01:53:19 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:18:49 +0900

    [ruby/fiddle] Add constants for unsigned values (https://github.com/ruby/fiddle/pull/111)

    This commit adds constants for unsigned values. Currently we can use `-`
    to mean "unsigned", but I think having a specific name makes Fiddle more
    user friendly. This commit continues to support `-`, but introduces
    negative constants with "unsigned" names

    I think this will help to eliminate [this
    code](https://github.com/ruby/ruby/blob/3a56bf0bcc66e14ffe5ec89efc32ecfceed180f4/lib/mjit/c_type.rb#L31-L38)

    https://github.com/ruby/fiddle/commit/2bef0f1082

    Co-authored-by: Sutou Kouhei <kou@clear-code.com>

commit 6d01b66764b6dd3fc61c297bd1ec973f8ea686aa
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-09-09 23:59:41 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-07 15:18:49 +0900

    [ruby/fiddle] test: ensure GC-ing closures

    GitHub: fix GH-102

    We can't use Fiddle::Closure before we fork the process. If we do it,
    the process may be crashed with SELinux.

    See https://github.com/ruby/fiddle/issues/102#issuecomment-1241763091
    for details.

    Reported by Vít Ondruch. Thanks!!!

    https://github.com/ruby/fiddle/commit/1343ac7a95

commit 1b7c5c394f14e1a7aebbaf14b7d681733d1d97c2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-07 14:12:30 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-07 14:41:31 +0900

    [ruby/date] Fix misplaced time zone offset checks

    https://github.com/ruby/date/commit/d21c69450a

commit fc218e597709e14634535c5836349f7f89a75dc2
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-07 12:46:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-07 12:55:31 +0900

    [ruby/psych] Removed the related condition of --enable-bundled-libyaml

    https://github.com/ruby/psych/commit/7c211a43c1

commit 94d4bea7c9952ac5abe0d8cd473a73e025b468ab
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-07 12:45:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-07 12:55:30 +0900

    [ruby/psych] --enable-bundled-libyaml config has been removed

    https://github.com/ruby/psych/commit/447d372dcd

commit a87de5e3c111a1af92fbfd877d0ad8050444f3fa
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-07 11:38:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-07 12:12:10 +0900

    [ruby/rdoc] Special characters are prohibited as filename on Windows

    https://github.com/ruby/rdoc/commit/13b9da5932

commit 39909d8c18ede7bb94bbcd0ad00d41b2f545528b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-09-07 23:52:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-07 12:12:09 +0900

    [ruby/rdoc] Escape search results

    https://hackerone.com/reports/1321358

    https://github.com/ruby/rdoc/commit/2ebf8fd510

commit a3cb09c7d17f2626ebd6eae774f0425d602ed95b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-08-28 17:41:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-07 12:12:08 +0900

    [ruby/rdoc] Escape file names

    https://hackerone.com/reports/1321358

    https://github.com/ruby/rdoc/commit/8c07cc4657

commit 8d0b2162a09183eb3d58a5a1d824b4daf16bf3c8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-13 22:02:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-07 12:09:23 +0900

    [ruby/rdoc] Escape main title

    https://hackerone.com/reports/1187156

    https://github.com/ruby/rdoc/commit/5dedb5741d

commit 586e18b94645b2d3181720d311fcd72b4bb2ca88
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-13 16:14:28 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-07 12:09:22 +0900

    [ruby/rdoc] Escape HYPERLINKs

    https://github.com/ruby/rdoc/commit/ac35485be6

commit 9e3ab9da7fe6d4910a48d808e582e825d7b7467d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-13 16:14:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-07 12:09:21 +0900

    [ruby/rdoc] Escape RDOCLINKs

    https://hackerone.com/reports/1187156

    https://github.com/ruby/rdoc/commit/7cecf1efae

commit deaa65660822e070294d6c2a7dfec286cbbdff56
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-28 18:36:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-07 12:09:20 +0900

    [ruby/rdoc] Escape TIDYLINKs

    https://hackerone.com/reports/1187156

    https://github.com/ruby/rdoc/commit/1ad2dd3ca2

commit 0472effc41918f85c17e11885595ff810955e626
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-10-07 07:42:26 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-07 07:42:26 +0900

    YJIT: add an assert for branch_stub_hit() (#6505)

    We set the PC in branch_stub_hit(), which only makes sense if we're
    running with the intended iseq for the stub. We ran into an issue caught
    by this while tweaking code layout.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 43e87c7e8ab5cbf253c8f11daf9c8ad4bc3d7b3e
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-10-07 07:41:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-07 07:41:38 +0900

    YJIT: fix ARM64 bitmask encoding for 32 bit registers (#6503)

    For logical instructions such as AND, there is a constraint that the N
    part of the bitmask immediate must be 0. We weren't respecting this
    condition previously and were silently emitting undefined instructions.

    Check for this condition in the assembler and tweak the backend to
    correctly detect whether a number could be encoded as an immediate in a
    32 bit logical instruction. Due to the nature of the immediate encoding,
    the same numeric value encodes differently depending on the size of
    the register the instruction works on.

    We currently don't have cases where we use 32 bit immediates but we ran
    into this encoding issue during development.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit fa2e1b67e548cb5653b66909a2bc3d6b9eae98e3
  Author:     Janko Marohnić <janko.marohnic@gmail.com>
  AuthorDate: 2022-10-07 03:09:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-07 06:58:37 +0900

    [ruby/open-uri] Support 308 status redirect

    https://github.com/ruby/open-uri/commit/d8899ae4ac

commit 7837dccb0ea9f84f033635e77bc9dfb6ea023bcd
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-07 05:02:37 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-07 05:02:37 +0900

    Adapt doc guide to new GFM features (#6504)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 43650f606e221f0c8029c0795458e39c740b2c30
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-07 03:58:50 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-10-07 03:58:50 +0900

    Notify CI failures of Miscellaneous checks

commit 1f2c84de83cef26e7e0bb6537992d3ad922533a8
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-10-07 03:56:04 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-10-07 03:56:05 +0900

    [ruby/rdoc] Remove trailing spaces to fix CI

    https://github.com/ruby/ruby/actions/runs/3199301563/jobs/5224898228

    https://github.com/ruby/rdoc/commit/369e4fa32d60bc00982801a6848efe5338603ac5

commit 3df904d1a8dc614589295dfdf30a781114b3a7fc
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-10-07 02:46:31 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-10-07 02:46:31 +0900

    Add debug output to test_thrashing_for_young_objects

    The test is failing only on trunk-repeat50@phosphorus-docker. This
    commit adds some debugging output to debug the failure.

commit 13e87e5049dd418e764f30a9cc45f787d239d466
  Author:     Yuri Smirnov <tycooon@yandex.ru>
  AuthorDate: 2022-10-07 02:13:17 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-07 02:13:17 +0900

    fix Data docs (#6497)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit bbbdb574c56b5ba8b91f671404645569dc6f156b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-06 23:30:12 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-06 23:30:12 +0900

    [DOC] Integrate io_streams.rdoc into io.c (#6491)

    Integrate io_streams.rdoc into io.c

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit cf3056be69b3c07ffed423246df0dee2adda5ac1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-06 17:39:10 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-06 23:22:02 +0900

    [ruby/rdoc] Add center align

    https://github.com/ruby/rdoc/commit/512cc55a0e

commit 28e24ce35596b5faaf57f3ad4925656e22b23d1c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-06 17:20:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-06 23:21:16 +0900

    [ruby/rdoc] Allow spaces around pipes

    https://github.com/ruby/rdoc/commit/3b3a583580

commit 7c03c82444220a4d1425cf801fa6a5d3d253b835
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-06 17:26:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-06 23:17:49 +0900

    [ruby/rdoc] Allow escaped pipes in cells

    https://github.com/ruby/rdoc/commit/333952a62d

commit f6c916c7ef546b5ed59ac5ca5f5a0a547accdf3c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-06 17:12:09 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-06 23:16:54 +0900

    [ruby/rdoc] Allow leading pipes to be ommitted

    https://github.com/ruby/rdoc/commit/d263a2c9c4

commit a19bf47d03b51b339688c865c35bff0c0d2be6c1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-06 13:10:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-06 23:14:29 +0900

    [ruby/rdoc] Allow trailing pipes to be ommitted

    https://github.com/ruby/rdoc/commit/1318048877

commit 76bae60d9b967415c5930c2c5906e14c8362a6dd
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-10-06 04:19:43 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-10-06 22:01:12 +0900

    [Bug #19038] Fix corruption of generic_iv_tbl when compacting

    When the generic_iv_tbl is resized up, rebuild_table performs
    allocations that can trigger GC. If autocompaction is enabled, then
    moved objects are removed from and inserted into the generic_iv_tbl.
    This may cause another call to rebuild_table to resize the
    generic_iv_tbl. When returning back to the original rebuild_table, some
    of the data may be stale, causing the generic_iv_tbl to be corrupted.

    This commit changes rebuild_table to only read data from the st_table
    after the allocations have completed.

    Co-Authored-By: Matt Valentine-House <matt@eightbitraptor.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6494

commit e696ec67ac7bd14ff8436f9ee7724c17c5bf6689
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-10-06 19:00:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-06 19:00:49 +0900

    Introduce `Fiber.blocking{}` for bypassing the fiber scheduler. (#6498)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 75a53f6be0bdd02fcf70a352892e085a02995cf9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-06 12:05:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-06 18:24:44 +0900

    [ruby/rdoc] Allow RDoc markups in table cells

    https://github.com/ruby/rdoc/commit/b16d3f1727

commit e929b0aac530f4fe4d905ff147fe94fe2a3e856c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-06 11:51:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-06 18:24:43 +0900

    [ruby/rdoc] Add `RDoc::Markup::ToHtml#accept_table` test

    https://github.com/ruby/rdoc/commit/0cb3df713b

commit 43e925090b6cf33b889904f8b795f4583b20a59b
  Author:     Nishant Patel <91441876+nishantactivepipe@users.noreply.github.com>
  AuthorDate: 2022-02-16 14:59:28 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-06 18:00:58 +0900

    [ruby/open-uri] fix: added test case that validates that bad TLS version is silently ignored

    https://github.com/ruby/open-uri/commit/4b91b11730

commit cdbaac3f4b6349907fe744f5eafab982b45e53e2
  Author:     Nishant Patel <91441876+nishantactivepipe@users.noreply.github.com>
  AuthorDate: 2022-02-05 12:29:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-06 18:00:57 +0900

    [ruby/open-uri] feat: allow option to pass version of SSL / TLS to use during communication. Allow versions are OpenSSL::SSL::SSLContext::METHODS

    https://github.com/ruby/open-uri/commit/8729858517

commit 7f80ec47c3e6a1ac4f8c3e626d51ef6598d65b1c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-06 17:12:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-06 17:15:27 +0900

    [ruby/open-uri] Use omit instead of skip for test-unit

    https://github.com/ruby/open-uri/commit/63f466d6ed

commit cc5313ceab756887e5dcddcb3b293a842a01fbac
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-06 17:08:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-06 17:15:26 +0900

    [ruby/open-uri] Run global constant count test only under Ruby 3.2

    https://github.com/ruby/open-uri/commit/a8f1605ae9

commit d15b38d944c27cb627741206d8adf285153a4df2
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-02-18 17:45:13 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-06 16:55:44 +0900

    [ruby/open-uri] Avoid busting the global constant cache

    `Object#extend(mod)` bump the global constant cache if the module
    has constants of its own.

    So by moving these constants outside of `Meta` we avoid bumping
    the cache.

    https://github.com/ruby/open-uri/commit/363c399bac

commit 3e84290213a86eff5e50ddf92a9b136a5034ac05
  Author:     Daniel Colson <danieljamescolson@gmail.com>
  AuthorDate: 2022-10-06 09:51:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-06 10:04:41 +0900

    [ruby/rdoc] Remove unused abbrev require

    This library originally used `abbrev` to expand abbreviations into
    fully-qualified classes, but that was replaced in
    https://github.com/ruby/rdoc/commit/f9ffe6684e2afeac65c62bf1a5a2fce729f21001

    `abbrev` is no longer used anywhere, so this commit removes the require.

    https://github.com/ruby/rdoc/commit/b76775f27d

commit 358fe26b31c25033cc1857a4b44634f51d0ee354
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-10-03 19:10:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-06 05:13:39 +0900

    [rubygems/rubygems] Fix little UI issue when bundler shows duplicated gems in a list

    https://github.com/rubygems/rubygems/commit/3f71d882e9

commit 83a6213f31016e16bf43613beb4d058339ca9350
  Author:     Imir Kiyamov <makketagg@gmail.com>
  AuthorDate: 2022-07-19 01:45:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-05 19:22:13 +0900

    [ruby/irb] Fixed sort of variables in completion

    https://github.com/ruby/irb/commit/5842888255

commit 107acbd9a475f74be89e63fbb12c11593692b59f
  Author:     Kouhei Yanagita <yanagi@shakenbu.org>
  AuthorDate: 2022-05-18 11:21:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-05 19:20:22 +0900

    [ruby/irb] Add description of IRB_LANG, IRBRC, and XDG_CONFIG_HOME to man

    https://github.com/ruby/irb/commit/564bd91387

commit d88032224338f9c3358b73ef26d6c046eb24247e
  Author:     Kaíque Kandy Koga <kaiquekandykoga@gmail.com>
  AuthorDate: 2022-02-02 01:28:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-05 19:15:28 +0900

    [ruby/irb] Update remark of self.install_extend_commands.

    Create line

    https://github.com/ruby/irb/commit/64d6a461d5

commit 2f6a26378754adf3658bc237fa51574d3ac64638
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-05 18:56:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-05 18:59:31 +0900

    [ruby/irb] Use USE_REIDLINE for backword compatibility

    https://github.com/ruby/irb/commit/e58a3c1b39

commit b84140f607526018b604f1b4f3e7917ff5112c17
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-05 18:26:17 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-05 18:26:17 +0900

    Mentioned removing libffi sources from fiddle

commit 0b4352b91d067f0c31f749cc77025a856fc6b835
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-05 17:35:09 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-05 18:22:06 +0900

    Removed the related files for downloading with extlibs

commit 19e4a4c624c0872796e3fcde4923b670011e0b59
  Author:     Gannon McGibbon <gannon.mcgibbon@gmail.com>
  AuthorDate: 2022-10-05 05:28:45 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-10-05 17:14:19 +0900

    [ruby/irb] Rename IDB::ReidlineInputMethod to IRB::RelineInputMethod

    Deprecates IDB::ReidlineInputMethod and USE_REIDLINE in favor of
    IRB::RelineInputMethod and USE_RELINE. The Input method uses Reline to
    read input from the console, so it can be named directly after the
    Reline library like other inputs methods are (Readline, Stdio, etc.).

    https://github.com/ruby/irb/commit/5bcade7130

commit 203b8310655ac8a67de2c5b2bd7afa52631d0bbb
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-04 06:34:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-05 15:25:02 +0900

    [ruby/irb] Bump version to 1.4.2

    https://github.com/ruby/irb/commit/f9960dbd37

commit f081bba875d609bdde8f7e5d1e24654653e7c7e3
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-10-05 15:15:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-05 15:15:33 +0900

    [ruby/irb] Added aycabta to authors

    https://github.com/ruby/irb/commit/a6bfa7b2e6

commit 7293bfe1bf8a696bd218a52582e9026e5e638458
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-10-05 11:48:05 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-05 11:48:05 +0900

    YJIT: add support for calling bmethods (#6489)

    * YJIT: fix a parameter name

    * YJIT: add support for calling bmethods

    This commit adds support for the VM_METHOD_TYPE_BMETHOD method type in
    YJIT. You can get these type of methods from facilities like
    Kernel#define_singleton_method and Module#define_method.

    Even though the body of these methods are blocks, the parameter setup
    for them is exactly the same as VM_METHOD_TYPE_ISEQ, so we can reuse
    the same logic in gen_send_iseq(). You can see this from how
    vm_call_bmethod() eventually calls setup_parameters_complex() with
    arg_setup_method.

    Bmethods do need their frame environment to be setup differently. We
    handle this by allowing callers of gen_send_iseq() to control the iseq,
    the frame flag, and the prev_ep. The `prev_ep` goes into the same
    location as the block handler would go into in an iseq method frame.

    Co-authored-by: John Hawthorn <john@hawthorn.email>

    Co-authored-by: John Hawthorn <john@hawthorn.email>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 5fc68e1101d38c9ced4d07ef1526467618109de3
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-05 03:50:33 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-05 03:50:33 +0900

    [DOC] Adding remarks about HTML and tables (#6485)

    * Adding remarks about HTML and tables

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 40ceceb1a5b63029a4d1434d2d20dfa09cdb295f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-04 10:54:28 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-04 21:53:59 +0900

    [Bug #19028] Suppress GCC 12 `-Wuse-after-free` false warning

    GCC 12 introduced a new warning flag `-Wuse-after-free`, however it
    has a false positive at `realloc` when optimization is disabled, since
    the memory requested for reallocation is guaranteed to not be touched.
    This workaround is very unclear why the false warning is suppressed by
    a statement-expression GCC extension.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6487

commit 6378825df5c7abc7ef45f257057ffd21dc9e63b5
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-10-04 16:09:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-04 16:09:33 +0900

    Update bundled gems list at 2022-10-04

commit 7726f6bfff755f2b43d9138756da8b140ed08da1
  Author:     Vaevictusnet <github.com@vaevictus.net>
  AuthorDate: 2022-09-30 03:03:14 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-04 10:07:01 +0900

    Correcting example for swapcase! method

    Example, line 3, swapcase! was incorrect. implied that the swapcase! did /not/ change the starting string.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6474

commit b2668248b67b0ac7386d6e153a7cf980306dd4db
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-16 20:40:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-04 06:22:50 +0900

    [rubygems/rubygems] Make sure RSpec diffs don't omit the different part

    We sometimes check assertions on lockfile contents, which involves
    comparing a reasonably long string. Sometimes RSpec is not able to show
    the part of the string that's actually different, making it hard to
    figure out the issue.

    Configuring this setting should fix the issue in most cases.

    https://github.com/rubygems/rubygems/commit/5ad8ee499e

commit efc77662440bd7d31381f7e62fbd813c38d6c64c
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-10-04 05:57:27 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-04 05:57:27 +0900

    Split cmp operations that aren't 32/64 bit for arm (#6484)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit cbd82f52502630e5298c8b82e8d52c59ee5454e1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-03 23:28:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-03 23:28:01 +0900

    Cannot `define` from defined `Data` class again

commit 8218cb73ba0b4c07d977fbf6e9fd02e1928288b7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-03 22:59:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-03 23:18:34 +0900

    [Bug #19034] No runtime check for `utimensat` if unavailable

commit bc6c1e0e25a9dc80382e2ffb8559bbe171e0400e
  Author:     Victor Gama <hey@vito.io>
  AuthorDate: 2022-09-22 03:09:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-03 20:41:45 +0900

    [rubygems/rubygems] Copy template contents instead of file and perms

    This allows the file to be created without copying permissions
    from Bundler's installation source. The previous behaviour was
    noticed after installing Ruby through brew, and using bundle
    init, which yielded a read-only Gemfile.

    https://github.com/rubygems/rubygems/commit/839a06851d

commit b7a61cb485a9bfaa52107f57782e53365f4bf59a
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-10-03 18:21:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-03 19:54:24 +0900

    [rubygems/rubygems] Revert "Cleaup unnecessary code"

    Unclear why, but https://github.com/rubygems/rubygems/commit/2e05dadbc5de created some
    warnings in ruby-core CI, so let's revert it.

    https://github.com/rubygems/rubygems/commit/729ce3a6e1

commit b91f685a2615ef957210f5e3a50c0e8299c20c55
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-10-03 19:03:46 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-10-03 19:03:46 +0900

    Mark struct METHOD->owner for the GC

    * Fixes https://github.com/ruby/ruby/commit/6b7d32a5e5
    * See [Bug #18729]

commit 10e830c25b61f4c54d5980de4a10c591f91c5f44
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-02 18:25:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-03 07:00:54 +0900

    [ruby/irb] Remove unused error

    https://github.com/ruby/irb/commit/f09a1874b6

commit b97e909ef476a6facbaec665a205fee486371044
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-02 18:20:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-03 07:00:53 +0900

    [ruby/irb] Remove unnecessary Thread presence check

    They were introduced around 20 years ago, when Thread is not yet
    stabilized. So we don't need them anymore.

    https://github.com/ruby/irb/commit/4c75e03b2b

commit 7b88ffb34fc995d7499fd9ed384cf7f5ba12994e
  Author:     osyo-manga <manga.osyo@gmail.com>
  AuthorDate: 2022-10-03 06:55:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-03 06:55:53 +0900

    [ruby/irb] Change to explicit method call in completion (https://github.com/ruby/irb/pull/369)

    Ensure that methods are called even when local variables are defined.
    see: https://github.com/ruby/irb/issues/368

    https://github.com/ruby/irb/commit/c34d54b8bb

commit 5cab9d0ee2b728fe7c76ba303335d3b60bcb00b6
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-01 07:18:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-03 04:59:51 +0900

    [ruby/irb] Remove patches for Ruby 2.4

    They were added in https://github.com/ruby/irb/commit/b34f26a0dd3b589e6fc321a6248d173682c9202f

    https://github.com/ruby/irb/commit/0e760d2674

commit 42fcbcc2150c7eaa2057a159ede35a3ac046ea31
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-01 07:14:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-03 04:59:50 +0900

    [ruby/irb] Remove unnecessary condition

    https://github.com/ruby/irb/commit/daffb8bfe5

commit 55e2116f2c47db6c4e3323b7b89f0088efbb46ad
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-10-01 07:08:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-03 04:59:49 +0900

    [ruby/irb] Refactor ripper_lex_without_warning

    https://github.com/ruby/irb/commit/0db0a8ddc5

commit ded895baa96cb9622fcd44d308fb48341565605b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-10-02 22:24:08 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-02 22:24:08 +0900

    [DOC] RDoc changes for IO (#6458)

        Moves Expect library doc into io.c.
        Changes certain links to local sections, now pointing to sections in doc/io_streams.rdoc.
        Removes local sections now superseded by sections in doc/io_streams.rdoc.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 85fc822307ee95f351be79934e78c3b9d4102f8a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-02 18:36:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-02 18:36:45 +0900

    CodeQL slowness on syntax_suggest fixed at 2.10.5

    This reverts commit d152ac677cffdbc136530dd56a56c42518d29ea4, "Make
    CodeQL ignore syntax_suggest because of the performance problem".
    Probably all instances seem to already have updated to 2.10.5 now.

commit f3a3ab110e60db0fb61b278f32fdb17dcc0b8128
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-11 19:10:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-02 16:08:38 +0900

    [Bug #16909] Honor the tool prefix against pkg-config

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6482

commit de9c612d6342ae2ea5ae1e46b27abecf17c439b5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-11 16:40:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-02 15:19:14 +0900

    Also the tests should use the configured pkg-config

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6482

commit 7f1ca666424849134990d022266bcd4d6636465f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-11 16:06:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-02 15:19:14 +0900

    Fallback PKG_CONFIG to the configured pkg-config always

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6482

commit 88c12a29372e3f908190c6af0aa1b2ac6b78fbd1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-01 18:18:58 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-01 18:53:41 +0900

    Indent folded bootstraptest dots

commit 56f2fd3bc9bbc69abe75def25f89dac41eb19773
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-01 16:18:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-01 16:24:36 +0900

    Use the dedicated function to check arity

commit 15d3b7fe6dd421cc4ff77d106d17b0e9fd1ead45
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-01 16:14:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-01 16:20:22 +0900

    Fix an out of bound access

commit 27adf5321eabb588ecf20a0c3879e931a7345151
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-01 15:58:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-01 15:58:47 +0900

    Add macros for assertions

commit c767618d4c3319c60155ee2c56450ed7e933b596
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-10-01 15:36:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-10-01 15:36:01 +0900

    Do not define the method only for RDoc

    `Data.members` fails an assertion.

commit 70538beaa9a16afa4e2d54ba36fcedffa93f8fbf
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-10-01 09:08:44 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-10-01 09:26:27 +0900

    Fix YJIT args for rb_vm_set_ivar_idx

    This was broken accidentally with the revert of shapes (it conflicted
    with some unrelated cleanup).

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6479

commit 1143fe340a99b5d07d0897ea8709bb4cc55b8c02
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-10-01 08:29:10 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-10-01 08:29:10 +0900

    Fix YJIT build after shapes-revert

    An variable had been renamed in between the merge and revert, so the
    build was broken. This restores it.

commit 9a6803c90b817f70389cae10d60b50ad752da48f
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-10-01 08:01:50 +0900
  Commit:     Aaron Patterson <tenderlove@ruby-lang.org>
  CommitDate: 2022-10-01 08:01:50 +0900

    Revert "This commit implements the Object Shapes technique in CRuby."

    This reverts commit 68bc9e2e97d12f80df0d113e284864e225f771c2.

commit 0ab0229c1162308509b36cafbf6eaafd7ae054d7
  Author:     eileencodes <eileencodes@gmail.com>
  AuthorDate: 2022-10-01 04:37:18 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-01 05:57:59 +0900

    Fix frozen object inspect

    In the rails/rails CI build for Ruby master we found that some tests
    were failing due to inspect on a frozen object being incorrect.

    An object's instance variable count was incorrect when frozen causing
    the object's inspect to not splat out the object.

    This fixes the issue and adds a test for inspecting frozen objects.

    Co-Authored-By: Jemma Issroff <jemmaissroff@gmail.com>
    Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6478

commit a44040c9e47a9cb41807b0ec5d665d656d60db84
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-30 04:47:53 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-01 05:46:41 +0900

    [rubygems/rubygems] Add notes to make sure we don't forget to backport changes to Bundler

    https://github.com/rubygems/rubygems/commit/1ac5b14c78

    Co-authored-by: André Arko <andre@arko.net>

commit f04d249e8309aaf22f667fd2d505c9b2ead2d30b
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-30 03:31:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-01 05:46:40 +0900

    [rubygems/rubygems] Fix matching of eabihf platforms

    https://github.com/rubygems/rubygems/commit/a03d30cd58

commit 8252ea214061e1e8601ecfe178d010ed92ee8600
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-28 19:12:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-01 05:46:40 +0900

    [rubygems/rubygems] Fix matching of linux platforms with eabi modifiers

    https://github.com/rubygems/rubygems/commit/89362c18ef

    Co-authored-by: Mike Dalessio <mike.dalessio@gmail.com>

commit 4d58ee3de0ecf8a3b3201359f3c593142cf92d7b
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-28 17:57:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-01 05:46:39 +0900

    [rubygems/rubygems] Refactor platform matching on Linux

    I think this highlights better how musl is special.

    https://github.com/rubygems/rubygems/commit/4075771697

commit 850cfb021e2ee679bc62d3edc2246e5196630059
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-10-01 03:04:08 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-10-01 04:41:12 +0900

    Only assert ractor_shareable is consistent on ivar_set for T_OBJECT

    Before d594a5a8bd0756f65c078fcf5ce0098250cba141, we were only
    asserting that the value on an ivar_get was ractor_sharable if the
    object was a T_OBJECT and also ractor shareable. We should still
    be doing this check only if the object is a T_OBJECT and ractor
    shareable

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6477

commit 641310ce371bd220a5ddd5e54a86979f4055608b
  Author:     tompng <tomoyapenguin@gmail.com>
  AuthorDate: 2022-09-27 13:14:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-10-01 04:17:15 +0900

    [ruby/irb] Fix ripper_lex_without_warning duplicated heredoc token

    https://github.com/ruby/irb/commit/45b539af39

commit 31461c7e0eab4963ccc8649ea8ebf27979132c0c
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-10-01 00:14:55 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-10-01 00:14:55 +0900

    A bunch of clippy auto fixes for yjit (#6476)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit ad651925e365ca18645f05b5e9b2eca9cd5721bc
  Author:     Victor Shepelev <zverok.offline@gmail.com>
  AuthorDate: 2022-09-30 18:23:19 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-30 18:23:19 +0900

    [Feature #16122] Data class

    Add Data class implementation: Simple immutable value object

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6353

    Merged-By: nobu <nobu@ruby-lang.org>

commit e294e6f417acc27d85c6e6a0e67ebf7a07c83485
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-30 17:26:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-30 17:29:23 +0900

    Split `with_warning_string_from` for the last named parameter

commit 962f9932afd3e545bccc24f7bbc8e9eb85d9ae41
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-09-30 10:53:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-30 15:50:46 +0900

    [rubygems/rubygems] Prevent a "warning: assigned but unused variable - data"

    https://github.com/rubygems/rubygems/commit/ec3fd55d40

commit ab31d2e69fc8602514b19c90d3f6cc3d6893eb58
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-29 20:08:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-30 10:39:43 +0900

    Add `--zone` option to `VCS`

    Which controls the timezone offset for `RUBY_RELEASE_DATE`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6473

commit 5a5644dadcd5e00b571d0029af4d96849e254cd4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-29 20:03:51 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-30 10:39:42 +0900

    Introduce `VCS::Null` for fallback

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6473

commit f70ba9cf805dc58d993e60fe2bb06d6c5e2f08cb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-30 10:17:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-30 10:39:42 +0900

    Check for the availability of the command when detecting

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6473

commit 58b3a535cc899760aa69055fa54f4fcb85570dcd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-29 17:31:39 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-30 09:21:02 +0900

    Pull up `VCS.short_revision` from `VCS::SVN`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6473

commit aa490f9442c32cd0e1e449ac817f410bd5924c8b
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-09-29 19:09:01 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-09-29 22:48:35 +0900

    Reduce diff to proc.c @ b0b9f7201acab05c2a3ad92c3043a1f01df3e17f

    * So it's easy to review https://github.com/ruby/ruby/pull/6242 +
      https://github.com/ruby/ruby/pull/6467 and there are less changes
      overall.

commit c6319026caa6c8f0f569f80011e8502349a04b14
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-09-29 20:56:03 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-09-29 22:48:35 +0900

    Extend tests for a zsuper method of which the method it resolved to has been removed

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6467

commit 6b7d32a5e54088b6b4014529bbf2b4b8c1a96029
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-09-29 02:49:13 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-09-29 22:48:35 +0900

    Resolve zsuper method during lookup but preserve owner separately

    * See https://bugs.ruby-lang.org/issues/18729#note-34
    * See [Bug #18729]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6467

commit aa53d69aa21c4dfa2a78a1cec5cb34e9697b3d30
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-09-29 02:04:06 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-09-29 22:48:35 +0900

    Add specs for {Method,UnboundMethod}#owner of a zsuper method

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6467

commit 94cea3e4d0a60326bd95be762819eed8ccd59ca6
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-09-29 01:54:05 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-09-29 22:48:35 +0900

    Fix {Method,UnboundMethod}#super_method for zsuper methods

    * We need to resolve the zsuper method first, and then look the super
      method of that.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6467

commit 892f350a7db4d2cc99c5061d2e74498dfc4809ca
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-09-28 22:45:43 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-09-29 22:22:14 +0900

    [Bug #19029] Don't start GC during compaction

    RARRAY_PTR when called with a transient array detransients the array
    before returning its pointer which allocates in the heap.

    Because RARRAY_PTR was being used during compaction (when re-embedding
    arrays that have moved between size pools) this introduces the
    possibility that we can hit a malloc threshold, triggering GC, while in
    the middle of compaction.

    We should avoid this by using safer functions to get hold of the
    pointer. Since we know that the array is not embedded here, we can use
    ARY_HEAP_PTR and ARY_EMBED_PTR directly

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6466

commit 866cfb248e269f64951c852170732243c3e32d9d
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-09-29 21:03:57 +0900
  Commit:     Shugo Maeda <shugo@ruby-lang.org>
  CommitDate: 2022-09-29 21:03:57 +0900

    Update bundled_gems

commit 28840d74c26189f4e730b906c2383e32ea6165fe
  Author:     Jenny Shen <jenny.shen@shopify.com>
  AuthorDate: 2022-09-19 22:43:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 17:56:36 +0900

    [rubygems/rubygems] Refine error message to check the push URL instead of just the host

    https://github.com/rubygems/rubygems/commit/46990f3292

commit 0522e31d57d2e777ce01eb12bc44f19c09b8f259
  Author:     Jenny Shen <jenny.shen@shopify.com>
  AuthorDate: 2022-09-17 11:51:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 17:56:36 +0900

    [rubygems/rubygems] Refactor tests to use Net::HTTPResponse instances for fetcher.data[:path]

    https://github.com/rubygems/rubygems/commit/4d91cacb1f

    Co-authored-by: Jacques Chester <jacques.chester@shopify.com>

commit 17b783ad9e62070e8636800fe3aa9c5570a65bda
  Author:     Jenny Shen <jenny.shen@shopify.com>
  AuthorDate: 2022-09-17 00:37:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 17:56:35 +0900

    [rubygems/rubygems] Surface entire redirect uri in permanent redirections

    https://github.com/rubygems/rubygems/commit/da7837630b

commit 1cbf0fd86356ccbac5556ab0f63ea8a4b08fd24d
  Author:     Jenny Shen <jenny.shen@shopify.com>
  AuthorDate: 2022-09-16 21:48:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 17:56:34 +0900

    [rubygems/rubygems] Add error message when api response is a permanent redirect

    https://github.com/rubygems/rubygems/commit/ccca30c77a

    Co-authored-by: Nick Schwaderer <nick.schwaderer@shopify.com>

commit 9948b8bfec08d18c2803dd1fced82a6c28967441
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-29 15:08:16 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-29 15:47:08 +0900

    Skip unpack_sockaddr_in with http at Solaris platform

      http://rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20220929T050003Z.fail.html.gz

commit cb16dcb1849b3b971b34ef2405949a57e65b8a8a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-29 14:15:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 14:56:39 +0900

    [ruby/date] The shrunk words to be copied is limited

    Th buffer size is small enough and no need to allocate dynamically.

    https://github.com/ruby/date/commit/f62bf0a01d

commit 942066713b736c2554f25513ae7986f04e929820
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-29 11:46:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-29 14:09:25 +0900

    bootstraptest/runner: run in parallel if in parallel build

commit 5a8aaedaff48fbf715eed67f29282f9464f118f0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-23 00:24:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 14:06:36 +0900

    [ruby/date] Narrow ALLOCV region for shrunk words

    https://github.com/ruby/date/commit/f51b038074

commit 8c4e52fbe8a07da76c4038e4c5dc518b37258dc3
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-29 10:27:29 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-29 10:27:29 +0900

    Update bundled_gems

commit e7ddb6b182c35a1caf6f95fb6f4d9d53426d52f4
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-09-29 05:43:07 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-09-29 05:44:14 +0900

    Update NEWS.md with updated coverage interfaces.

commit bd2fbd35888413217337dd327ad90015c0322d12
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-09-28 20:08:03 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-09-29 05:44:14 +0900

    Add `Coverage.supported?` to detect what modes are supported.

commit 9dd902b83186ad6f9d0a553da2ca114bac6ab7b5
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-09-28 19:35:42 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-09-29 05:44:14 +0900

    Add `eval: true/false` flag to `Coverage.setup`.

commit ac56e5c1ab6eb133102c395f63101060bad6725d
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-04 21:44:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 03:41:53 +0900

    [rubygems/rubygems] Put bundler gemspec stub at the right place

    So that it's found when needed, rather than dynamically modifying
    loaded stubs and thus messing with RubyGems internals.

    https://github.com/rubygems/rubygems/commit/cd3e7cb9e5

commit 668e78f01b99085dad4840bbde15a538abb4df90
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-04 21:15:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 03:41:52 +0900

    [rubygems/rubygems] Only activate bundler when needed

    Loading Bundler beforehand was actually replacing ENV with a backup of
    the pre-Bundler environment through `Bundler::EnvironmentPreserver`. I
    think that was making a bug in `ENV.replace` not bite our tests, because
    Bundler includes proper patches to workaround that issue. So this commit
    also includes these patches in RubyGems tests.

    https://github.com/rubygems/rubygems/commit/8e079149b9

commit 20eff52087cba5c6ea54a2d67869f1e4eb024c8e
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-12 00:58:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 03:41:52 +0900

    [rubygems/rubygems] Test a pure RubyGems method

    `Gem::Specification#load_paths` is actually a Bundler thing.

    https://github.com/rubygems/rubygems/commit/d20b4d1950

commit 00a040dda3bd2955aa6f470578d639b3c4fc3220
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-04 22:00:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 03:41:51 +0900

    [rubygems/rubygems] Little refactor to keep things consistent

    https://github.com/rubygems/rubygems/commit/3934deb4e4

commit 874a2bf17c8136bf4a9a9abee6ba2b3ab0f82add
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-04 21:54:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 03:41:51 +0900

    [rubygems/rubygems] Remove unnecessary `ensure`

    https://github.com/rubygems/rubygems/commit/6c0c02c533

commit c7232a2a0a8f754ac566480363cc551d88993792
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-04 20:57:00 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 03:41:50 +0900

    [rubygems/rubygems] Require bundler consistently

    The `$LOAD_PATH` should be properly setup so that the local version is
    used.

    https://github.com/rubygems/rubygems/commit/03c0ab4082

commit b9c426eaea71628f6d9f57985f16997a2540fa94
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-04 20:54:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 03:41:50 +0900

    [rubygems/rubygems] Remove unnecessary constant

    https://github.com/rubygems/rubygems/commit/4bd77488ad

commit 1e5597532ac72ae324550c7cf58f94017f0c8072
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-04 20:49:00 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 03:41:49 +0900

    [rubygems/rubygems] Cleaup unnecessary code

    https://github.com/rubygems/rubygems/commit/2e05dadbc5

commit 5222a89ab6c71ead00afc7c75684212328457414
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-04 22:38:30 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-29 03:41:49 +0900

    [rubygems/rubygems] Unskip stuff that now works on JRuby

    https://github.com/rubygems/rubygems/commit/d86a5ae2eb

commit 31cf1bb5256314b69eae92673d3dd5815158ee91
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-09-29 01:37:17 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-09-29 01:37:17 +0900

    Update to ruby/spec@1d9d5c6

commit 5a1ab740fc287df8bf4038f19bd28bbb73e181b6
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-09-29 01:37:16 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-09-29 01:37:16 +0900

    Update to ruby/mspec@b60306d

commit 3e7c42a239d944ba6025e40bcceef249db93b852
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-09-29 01:24:02 +0900
  Commit:     Aaron Patterson <tenderlove@ruby-lang.org>
  CommitDate: 2022-09-29 01:24:35 +0900

    Shapes wrappers shouldn't mark the shape

    We don't allocate shapes out of the GC anymore, so we shouldn't mark
    those pointers.

commit d594a5a8bd0756f65c078fcf5ce0098250cba141
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-09-24 02:54:42 +0900
  Commit:     Aaron Patterson <tenderlove@ruby-lang.org>
  CommitDate: 2022-09-29 00:26:21 +0900

    This commit implements the Object Shapes technique in CRuby.

    Object Shapes is used for accessing instance variables and representing the
    "frozenness" of objects.  Object instances have a "shape" and the shape
    represents some attributes of the object (currently which instance variables are
    set and the "frozenness").  Shapes form a tree data structure, and when a new
    instance variable is set on an object, that object "transitions" to a new shape
    in the shape tree.  Each shape has an ID that is used for caching. The shape
    structure is independent of class, so objects of different types can have the
    same shape.

    For example:

    ```ruby
    class Foo
      def initialize
        # Starts with shape id 0
        @a = 1 # transitions to shape id 1
        @b = 1 # transitions to shape id 2
      end
    end

    class Bar
      def initialize
        # Starts with shape id 0
        @a = 1 # transitions to shape id 1
        @b = 1 # transitions to shape id 2
      end
    end

    foo = Foo.new # `foo` has shape id 2
    bar = Bar.new # `bar` has shape id 2
    ```

    Both `foo` and `bar` instances have the same shape because they both set
    instance variables of the same name in the same order.

    This technique can help to improve inline cache hits as well as generate more
    efficient machine code in JIT compilers.

    This commit also adds some methods for debugging shapes on objects.  See
    `RubyVM::Shape` for more details.

    For more context on Object Shapes, see [Feature: #18776]

    Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org>
    Co-Authored-By: Eileen M. Uchitelle <eileencodes@gmail.com>
    Co-Authored-By: John Hawthorn <john@hawthorn.email>

commit a05b2614645594df896aaf44a2e5701ee7fb5fec
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-28 22:07:50 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-28 23:51:38 +0900

    Always use the longer version of `TRY_WITH_GC`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6464

commit 09bce061afa3f5710e8d6aafebf865096f11b957
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-28 21:58:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-28 23:18:55 +0900

    bootstraptest/runner: manage sub processes with the job server

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6463

commit fc54dbe8b40d131c72e9216b5ec2b50ae7fb5107
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-28 21:39:25 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-28 23:18:55 +0900

    bootstraptest/runner: fold dots by window size

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6463

commit 3c3bd03a7c4d2213367c65a9aa92f255e1d6cbc9
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-19 03:32:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-28 23:01:20 +0900

    [rubygems/rubygems] Force "master" to be used regardless of `init.defaultBranch` config

    Otherwise, if you have `init.defaultBranch main` configured, like I do,
    a bunch of tests fail with things like:

    ```
    ============================================================================================================================================================================================================
    Error: test_checkout_submodules(TestGemSourceGit): Gem::Exception: unable to find reference master in /Users/deivid/Code/rubygems/rubygems/tmp/test_rubygems_20220928-13878-xog1je/git/a
    /Users/deivid/Code/rubygems/rubygems/lib/rubygems/source/git.rb:188:in `rev_parse'
    /Users/deivid/Code/rubygems/rubygems/lib/rubygems/source/git.rb:143:in `dir_shortref'
    /Users/deivid/Code/rubygems/rubygems/lib/rubygems/source/git.rb:158:in `install_dir'
    /Users/deivid/Code/rubygems/rubygems/lib/rubygems/source/git.rb:94:in `checkout'
    /Users/deivid/Code/rubygems/rubygems/test/rubygems/test_gem_source_git.rb:78:in `test_checkout_submodules'
         75:       system @git, "commit", "--quiet", "-m", "add submodule b"
         76:     end
         77:
      => 78:     source.checkout
         79:
         80:     assert_path_exist File.join source.install_dir, "a.gemspec"
         81:     assert_path_exist File.join source.install_dir, "b/b.gemspec"
    ============================================================================================================================================================================================================
    fatal: ambiguous argument 'master': unknown revision or path not in the working tree.
    Use '--' to separate paths from revisions, like this:
    'git <command> [<revision>...] -- [<file>...]'
    fatal: ambiguous argument 'master': unknown revision or path not in the working tree.
    Use '--' to separate paths from revisions, like this:
    'git <command> [<revision>...] -- [<file>...]'
    E
    ```

    In the future, I'd like to change things to use `main`, but the
    straighforward fix now is to keep "master" and make the running
    environment's git configuration not get in the middle.

    https://github.com/rubygems/rubygems/commit/b09b1416f1

commit 28a572f8bffe54226a7ad3fae814c1c92b5036e6
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-09-28 03:54:09 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-09-28 22:05:23 +0900

    Fix bug when slicing a string with broken encoding

    Commit aa2a428 introduced a bug where non-embedded string slices copied
    the encoding of the original string. If the original string had a broken
    encoding but the slice has valid encoding, then the slice would be
    incorrectly marked as broken encoding.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6456

commit 6f8d17e43c7b9b3b8bf42df0ef1ca085080b65f0
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-09-28 03:50:40 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-09-28 22:05:23 +0900

    Make string slices views rather than copies

    Just like commit 1c16645 for arrays, this commit changes string slices
    to be a view rather than a copy even if it can be allocated through VWA.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6456

commit d12fce7af3af27096b336f43700fffd51158e928
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-27 22:46:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-28 21:07:00 +0900

    [ruby/date] Check time zone offset elements

    Too big parts of fractional hour time zone offset can cause assertion
    failures.

    https://github.com/ruby/date/commit/06bcfb2729

commit cd77e71bbac9616a906f6823a8eba4922821e9ad
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-08-25 03:38:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-28 17:26:03 +0900

    [ruby/net-http] Remove ENVIRONMENT_VARIABLE_IS_MULTIUSER_SAFE

    This list is out of date.  At least OpenBSD since 2013 does not
    allow one user to read the environment variables of a process
    run by another user.

    While we could try to keep the list updated, I think it's a bad
    idea to not use the user/password from the environment, even if
    another user on the system could read it.  If http_proxy exists
    in the environment, and other users can read it, it doesn't
    make it more secure for Ruby to ignore it.  You could argue that
    it encourages poor security practices, but net/http should provide
    mechanism, not policy.

    Fixes [Bug #18908]

    https://github.com/ruby/net-http/commit/1e4585153d

commit b58710e006e71359650240d9de467bd4212435c6
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-28 17:06:12 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-28 17:06:12 +0900

    dbm and gdbm have been extracted gems.

commit b8e804e410b9088fc7921fcf8b6a92a4fbb3006a
  Author:     Maciej Rzasa <maciejrzasa@gmail.com>
  AuthorDate: 2022-07-29 18:33:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-28 09:29:49 +0900

    [ruby/bigdecimal] Document precision=0 and ndigits=0 for converting from Float

    https://github.com/ruby/bigdecimal/commit/4f0894c6c0

commit a58cbddd57152a3a4712c6b37b6efa3c108847e7
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-09-28 08:27:39 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-28 08:27:39 +0900

    YJIT: add assertion wrt label names (#6459)

    Add assertion wrt label names

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 8fcbb79742b27619683f0a5f25497a402eeca56f
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-09-28 08:27:19 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-28 08:27:19 +0900

    YJIT: reverse configure.ac changes that disable `--yjit-stats` on Graviton1 (#6457)

    Reverse configure.ac changes that disable YJIT stats on Graviton1

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 28433e9aa0c765c9d20bc6397439a1b12e66bcbd
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-09-28 05:58:01 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-28 05:58:01 +0900

    Change IncrCounter lowering on AArch64 (#6455)

    * Change IncrCounter lowering on AArch64

    Previously we were using LDADDAL which is not available on
    Graviton 1 chips. Instead, we're going to use an exclusive
    load/store group through the LDAXR/STLXR instructions.

    * Update yjit/src/backend/arm64/mod.rs

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 8f7f12ad64c2f01e1fc8a75402337ceeb6607657
  Author:     Mike Dalessio <mike.dalessio@gmail.com>
  AuthorDate: 2022-09-20 04:39:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-28 05:55:28 +0900

    [rubygems/rubygems] fix: Gem::Platform.match handles String argument properly

    Previously 9eead86 introduced non-commutativity of platforms, and
    later commit 1b9f7f50 changed the behavior of `Gem::Platform.match` to
    ensure the callee of `#=~` was the gem platform.

    However, when the platform argument is a String, then the callee and
    argument of `#=~` are flipped (see docs for `String#=~`), which works
    against the fix from 1b9f7f50.

    Closes #5938

    https://github.com/rubygems/rubygems/commit/3b1fb562e8

commit 5d4048e0bc84829ffcd6ff559515c198773476a2
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-09-28 03:58:28 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-28 03:58:28 +0900

    [DOC] More on IO streams (#6454)

    Adds remarks about .new and .open.
    Uses ..open where convenient (not convenient where output would be in a block).
    Fixed examples for #ungetc.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit bcd30fb96192993b629f24a5e551d22067220a78
  Author:     Vít Ondruch <vondruch@redhat.com>
  AuthorDate: 2022-09-16 21:06:54 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-09-28 02:32:46 +0900

    Re-enable TZ test missed due to merge conflict.

    This was disabled by b7577b4d9e, while properly fixed upstream by:

    https://github.com/ruby/spec/pull/939

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6393

commit 9d56d9975d867c94ab2a6d76e4482112ab6c3319
  Author:     Lars Kanis <lars@greiz-reinsdorf.de>
  AuthorDate: 2022-09-25 18:14:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-28 01:59:35 +0900

    [ruby/timeout] Explicit add the timeout thread to default ThreadGroup

    Otherwise the timeout thread would be added to the ThreadGroup of the thread that makes the first call to Timeout.timeout .

    Fixes bug 19020: https://bugs.ruby-lang.org/issues/19020

    Add a test case to make sure the common thread doesn't leak to another ThreadGroup

    https://github.com/ruby/timeout/commit/c4f1385c9a

commit 1a06bc94d96ab4be4386b0ccd802d11380fa4e84
  Author:     Chad Wilson <chadw@thoughtworks.com>
  AuthorDate: 2022-09-27 23:48:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-28 00:11:05 +0900

    [ruby/psych] Bump snakeyaml from 1.31 to 1.33

    https://github.com/ruby/psych/commit/8a761cdfb7

commit c35e924f64f25343127ed209f949762eb0dcb58f
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-09-27 22:50:53 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-27 22:50:53 +0900

    [DOC] More on IO streams (#6445)

    Text is reorganized so that most of the previous text is now in these newly-created sections:
        Basic IO
        Line IO
    New text is added to form new sections:
        Character IO
        Byte IO
        Codepoint IO
    This gives the page a functional orientation, so that a reader can quickly find pertinent sections.
    The page retains its original mission: to provide good link targets for the doc for related classes.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 95d5b33ea0c99aae76ad148350cd353379a827c8
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-27 12:44:30 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-27 12:44:30 +0900

    syntax_suggest moved under the ruby organization from zombocom

commit b39690df3a90a838cdb2de71e70a20651ebafaf4
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-09-27 02:53:45 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-09-27 04:00:40 +0900

    Rename method name in keyword test from y to yo

    Kernel#y is defined by psych/yaml, which causes occasional
    nondeterministic problems with this test when doing parallel testing.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6449

commit aa2a428cfb3f4273f51358eb4e7fab235c7d36c2
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-09-27 00:39:36 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-09-27 03:54:32 +0900

    Refactor str_substr and str_subseq

    This commit extracts common code between str_substr and rb_str_subseq
    into a function called str_subseq.

    This commit also applies optimizations in commit 2e88bca to
    rb_str_subseq.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6447

commit 9ddfd2ca004d1952be79cf1b84c52c79a55978f4
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-09-24 02:54:42 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-09-27 01:21:30 +0900

    This commit implements the Object Shapes technique in CRuby.

    Object Shapes is used for accessing instance variables and representing the
    "frozenness" of objects.  Object instances have a "shape" and the shape
    represents some attributes of the object (currently which instance variables are
    set and the "frozenness").  Shapes form a tree data structure, and when a new
    instance variable is set on an object, that object "transitions" to a new shape
    in the shape tree.  Each shape has an ID that is used for caching. The shape
    structure is independent of class, so objects of different types can have the
    same shape.

    For example:

    ```ruby
    class Foo
      def initialize
        # Starts with shape id 0
        @a = 1 # transitions to shape id 1
        @b = 1 # transitions to shape id 2
      end
    end

    class Bar
      def initialize
        # Starts with shape id 0
        @a = 1 # transitions to shape id 1
        @b = 1 # transitions to shape id 2
      end
    end

    foo = Foo.new # `foo` has shape id 2
    bar = Bar.new # `bar` has shape id 2
    ```

    Both `foo` and `bar` instances have the same shape because they both set
    instance variables of the same name in the same order.

    This technique can help to improve inline cache hits as well as generate more
    efficient machine code in JIT compilers.

    This commit also adds some methods for debugging shapes on objects.  See
    `RubyVM::Shape` for more details.

    For more context on Object Shapes, see [Feature: #18776]

    Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org>
    Co-Authored-By: Eileen M. Uchitelle <eileencodes@gmail.com>
    Co-Authored-By: John Hawthorn <john@hawthorn.email>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6386

commit 2e88bca24ff4cafeb6afe5b062ff7181bc4b3a9b
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-09-26 19:48:24 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-09-26 20:41:17 +0900

    string.c: don't create a frozen copy for str_new_shared

    str_new_shared already has all the necessary logic to do this
    and is also smart enough to skip this step if the source string
    is already a shared string itself.

    This saves a useless String allocation on each call.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6443

commit 5b0396473bbcd70756a09d887fb7436d6cd72dce
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-09-26 16:39:53 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-09-26 16:44:46 +0900

    Fix coderange calculation in String#b

    Leave the new coderange unknown if the original encoding is not
    ASCII-compatible. Non-ASCII-compatible encoding strings with valid or
    broken coderange can end up as ascii-only.

    Fixes 9a8f6e392fbd ("Cheaply derive code range for String#b return
    value", 2022-07-25).

commit 1c14e406d3c4a4c660f66f0d1c642d1ed2aabed2
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-09-26 15:40:23 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-09-26 16:10:15 +0900

    Fix `io/buffer.h` header guard.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6439

commit 411d0eec11f3618066a293ee72810bf48168adc8
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-09-26 15:37:28 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-26 15:37:28 +0900

    Update `IO::Buffer` read/write to use rb_thread_io_blocking_region. (#6438)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit a8ad22d926f2c2bc652ce030ccbe2774b13a4b2f
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-09-26 14:44:54 +0900
  Commit:     Shugo Maeda <shugo@ruby-lang.org>
  CommitDate: 2022-09-26 14:44:54 +0900

    Suppress a warning on clang

    The following warning appears without this fix:

    ```
    parse.y:78:1: warning: unknown warning group '-Wpsabi', ignored
          [-Wunknown-warning-option]
    RBIMPL_WARNING_IGNORED(-Wpsabi)
    ^
    ./include/ruby/internal/warning_push.h:103:39: note: expanded from macro
          'RBIMPL_WARNING_IGNORED'
                                          ^
    ./include/ruby/internal/warning_push.h:99:39: note: expanded from macro
          'RBIMPL_WARNING_PRAGMA2'
                                          ^
    ./include/ruby/internal/warning_push.h:98:39: note: expanded from macro
          'RBIMPL_WARNING_PRAGMA1'
                                          ^
    ./include/ruby/internal/warning_push.h:97:39: note: expanded from macro
          'RBIMPL_WARNING_PRAGMA0'
                                          ^
    <scratch space>:49:27: note: expanded from here
     clang diagnostic ignored "-Wpsabi"
                              ^
    1 warning generated.
    ```

commit 025b8701c09813c40339bd8fa1c75e0e5eaf7120
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-09-26 14:06:12 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-26 14:06:12 +0900

    Add several new methods for getting and setting buffer contents. (#6434)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit ecffc6a203822a828d00afece9c9cd782ff60a66
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-26 10:20:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-26 13:03:23 +0900

    Generate the revision.h before Makefile

    Except for GNU make which updates makefiles automatically, repeating
    configure in the same directory causes `make` to stop whenever pulled
    a new commit.  This is unexpected in CIs.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6436

commit b361bdc20036688f17f1e39a260a70254e7db9cd
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-09-26 11:54:49 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-09-26 12:44:54 +0900

    [Bug #19021] Fix safe call w/ conditional assign

    As of fbaac837cfba23a9d34dc7ee144d7940248222a2, when we were performing
    a safe call (`o&.x=`) with a conditional assign (`||= 1`) and discarding
    the result the stack would end up in a bad state due to a missing pop.

    This commit fixes that by adjusting the target label of the branchnil to
    be before a pop in that case (as was previously done in the
    non-conditional assignment case).

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6437

commit e3cc1a6cae0e6c88c04cd54c3afa3c022bb6772c
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-09-24 03:36:04 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-09-26 12:03:40 +0900

    Initialize Objective-C classes before fork() for macOS 13

    Since macOS 13, CFString family API used in
    `rb_str_append_normalized_ospath` may internally use Objective-C classes
    (`NSTaggedPointerString` and `NSPlaceholderMutableString`) for small strings.

    On the other hand, Objective-C classes should not be used for the first
    time in a `fork()`'ed but not `exec()`'ed process. Violations for this rule
    can result deadlock during class initialization, so Objective-C runtime
    conservatively crashes on such cases by default.

    Therefore, we need to use CFString API to initialize Objective-C classes
    used internally *before* `fork()`.

    For more details, see https://bugs.ruby-lang.org/issues/18912

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6426

commit d89f8a046753e2f166ee252510aadf1579dbcd63
  Author:     yui-knk <spiketeika@gmail.com>
  AuthorDate: 2022-09-26 09:38:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-26 09:38:40 +0900

    [ruby/rdoc] Fix ruby script in "test_parse_method_bracket" (https://github.com/ruby/rdoc/pull/927)

    Because it's syntax error.

    https://github.com/ruby/rdoc/commit/993f2532ff

commit 1481e6828ccbd42efe8c1a92620b2942fc089790
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-26 09:21:05 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-26 09:21:05 +0900

    Avoid type limits (#6435)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit dc7d929e542a3372113f7864b26384ceab596197
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-25 22:40:05 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-25 22:40:05 +0900

    Extract `RUBY_RELEASE_DATE` from also revision.h

    This make variable is very useful for daily build.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6433

    Merged-By: nobu <nobu@ruby-lang.org>

commit 85cc0ce5c8b6a369d439093453f7b87f1a154efb
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-09-25 17:49:45 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-09-25 20:41:16 +0900

    Use `int first_lineno` for binary format.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6430

commit 22af2e9084d869b0d1eb24e4c11bc1fd62b7c50d
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-09-25 17:07:18 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-09-25 20:41:16 +0900

    Rework vm_core to use `int first_lineno` struct member.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6430

commit 75cf29f60d87b298edfd75611bfe272a92289cee
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-09-25 16:45:28 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-09-25 20:41:16 +0900

    Rework `first_lineno` to be `int`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6430

commit a95b741a973438a3ea666b8997efa8194e1fd5e7
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-09-25 19:34:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-25 19:34:27 +0900

    [ruby/bigdecimal] Remove trailing whitespace.

    https://github.com/ruby/bigdecimal/commit/223d193f01

commit 8e2c42518355f3e29f5693de9034fb66a2abbdaf
  Author:     Maciek Rząsa <maciejrzasa@gmail.com>
  AuthorDate: 2022-07-28 21:30:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-25 16:51:17 +0900

    [ruby/bigdecimal] Improve documentation of BigDecimal#sign

    Fixes https://github.com/ruby/bigdecimal/issues/78 by describing behaviour for positive and negative zero in the docs.

    https://github.com/ruby/bigdecimal/commit/5415b120ab

commit 81b919ce5c85a82d68de9ccaebd5036adef8c7fb
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-09-23 19:58:01 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-09-25 16:35:47 +0900

    Add news for eval coverage.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6425

commit 09ea4f3a9fc13214198fa2cf223ec601640d3eac
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-09-23 19:54:39 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-09-25 16:35:47 +0900

    Extract common code for coverage setup.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6425

commit 205c252ec7364ea30ab39cc3c316fdada781eb1b
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-09-24 22:35:10 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-09-25 07:11:06 +0900

    Reuse rb_method_call_kw function

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6429

commit 08476c45799deeba0e76be54e160e87330e8cf9e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-24 15:13:43 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-24 15:13:43 +0900

    Remove unneeded semicolons

commit b0e3ee454d48748b4aadf1aaedd52670370d503b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-24 15:06:27 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-24 15:07:30 +0900

    Suppress -Wtype-limits warnings on mjit_c.rb

commit 82ac4a2399516a3ffda750b815c244aad6d38277
  Author:     Chris Salzberg <chris@dejimata.com>
  AuthorDate: 2022-08-09 22:22:23 +0900
  Commit:     Shugo Maeda <shugo.maeda@gmail.com>
  CommitDate: 2022-09-24 09:41:15 +0900

    Support using at toplevel in wrapped script

    Allow refinements to be used at the toplevel within a script that is
    loaded under a module.

    Fixes [Bug #18960]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6226

commit a74f4cded2ba4183b680c14f5c9aa7151afaad58
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-09-24 06:29:25 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-09-24 07:57:02 +0900

    Remove reference to __classid__

    This used to be used for module names but its uses were removed in
    b00f280d4b9569e7153365d7e1c522b3d6b3c6cf.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6427

commit 912ea8257a533299d47d71aac8f1b363853493fe
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-24 05:17:54 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-24 05:17:54 +0900

    YJIT: Support Rust 1.58.1 for --yjit-stats on Arm (#6410)

    * YJIT: Test Rust 1.58.1 as well on Cirrus

    * YJIT: Avoid using a Rust 1.60.0 feature

    * YJIT: Use autoconf to detect support

    * YJIT: We actually need to run it

    for checking it properly

    * YJIT: Try cfg!(target_feature = "lse")

    * Revert "YJIT: Try cfg!(target_feature = "lse")"

    This reverts commit 4e2a9ca9a9c83052c23b5e205c91bdf79e88342e.

    * YJIT: Add --features stats only when it works

    * Update configure.ac

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 7588f21851ae7fd93103130e565b97c8249f904f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-24 00:02:19 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-24 00:02:21 +0900

    Allow changing conversion macro in MJIT bindgen

    This is necessary for object shapes.

commit 3ddab3a84e1fb44fb851c0edfee204e761cfc4d8
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-09-23 23:41:21 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-23 23:41:21 +0900

    [DOC] Housekeeping in iostreams doc (#6420)

    Write some method names in linkable form; make some capitalization consistent.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit a78c733cc32cc3da3796cbf65da21cdd40c63230
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-09-23 16:40:59 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-09-23 16:40:59 +0900

    Revert "Revert "error.c: Let Exception#inspect inspect its message""

    This reverts commit b9f030954a8a1572032f3548b39c5b8ac35792ce.

    [Bug #18170]

commit 4e40fdbcee51767de888c81ce4ad2baae639e35f
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-09-23 06:47:54 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-23 06:47:54 +0900

    YJIT: add chain guards in `guard_two_fixnums` (#6422)

    * Add chain guards in guard_two_fixnums, opt_eq with symbols

    * Remove symbol comparison in gen_equality_specialized

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 4b97f1e5256336e259e898c52c30817e0639a42e
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-09-23 06:47:26 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-23 06:47:26 +0900

    YJIT: Refactor into gen_push_frame (#6412)

    This refactors the "push frame" operation common to both gen_send_iseq
    and gen_send_cfunc into its own method. This allows that logic to live
    in one place.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 0c9dc01a2a9a082843b287d30a18c6c67d79de51
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-22 22:32:49 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    Skip struct fields whose output differs

    across different environments

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit dfc311c0b3b7d81afa7b153a473990959d46c7ad
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-22 22:25:33 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    Swap the positions of offsetof and type

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit dc5b536468f8def4ab808da57462aee6a99a6fe0
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-22 21:39:54 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    Bindgen offsetof struct and union with builtin

    except for bit fields.

    I made a risky assumption on leading bit fields and just gave up
    non-leading bit fields for now. I'll change it to let C code access bit
    fields later.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit 2ce1460c6504bfefab85814c175de684b3e40381
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-21 22:32:28 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    Bindgen sizeof struct and union with builtin

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit 4c6e1556b109367f598e276f72feacefc72805fc
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-20 23:23:50 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    Bindgen immediate types with builtin

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit 280ff1707e1e0e5f06d9819dc5f8d8deb38b3f6c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-19 09:25:04 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    Drop c_64 and c_32

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit 5cda5938f899ca9ac72f1e44c216f63826516422
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 23:43:24 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    Bindgen enum with builtin

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit 2f5b37533e6129646ddfacffc3da34be02bc9e87
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 23:32:59 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    Builtin needs to be baseruby-compatible

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit 591c3c7a1aae41bb2702dc40609a9bcae0e40ea5
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 23:25:20 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    Automatically setup bundler of bindgen.rb

    to easily use it with `tool/mjit/bindgen.rb BUILDDIR` instead of using
    `make mjit-bindgen`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit 4e0db2f75348fd28ae8ffd242044a020e41afef5
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 23:20:44 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    mjit_c.rb doesn't need to be an erb

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit 334b8bd4596cd2fff737f4ced2f2bdf1d7f82679
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 23:17:22 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    Mix manual and auto-generated C APIs

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit 00c441ce7ac76dedd272acf9a9daec59d9d5d908
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 22:44:29 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    Bindgen macro with builtin

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit e81a612413500caa6763a765d12255ea7f150f68
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 22:32:21 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    Auto-generate mjit_c.rb.erb

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit f2bea691cd12150a526ddc4be95c5396f07920ba
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 21:45:58 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-23 06:44:28 +0900

    Builtin RubyVM::MJIT::C

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6418

commit 88bf8ad6e99fa36c7b4a0b5cbb6fc99777360855
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-09-23 01:35:51 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-09-23 05:51:34 +0900

    Allow --enable-yjit on OpenBSD

    yjit uses _Unwind_* functions from libunwind.  These functions
    are available in libc++abi (which requires libpthread), so
    add those to LDFLAGS if enabling yjit on OpenBSD.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6421

commit b5c459d57af182173ff888b362a38d721c780aa9
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-09-23 01:20:45 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-09-23 02:29:43 +0900

    Adds a benchmark to measure freezing objects

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6419

commit fbaac837cfba23a9d34dc7ee144d7940248222a2
  Author:     HParker <HParker@github.com>
  AuthorDate: 2022-09-22 06:12:45 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-09-23 01:47:13 +0900

    avoid extra dup and pop in compile_op_asgn2

    Co-authored-by: John Hawthorn <jhawthorn@github.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6414

commit aafbc9068f96e5e1f7f5c2c1fa6cba01ec8422db
  Author:     HParker <HParker@github.com>
  AuthorDate: 2022-09-22 05:53:10 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-09-23 01:47:13 +0900

    avoid extra dup and pop in compile_op_log

    Co-authored-by: John Hawthorn <jhawthorn@github.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6414

commit 4bdd8f2ddfce293136fb69257a25e29677612819
  Author:     Otávio Schwanck dos Santos <otavioschwanck@gmail.com>
  AuthorDate: 2022-09-21 23:39:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-22 22:28:39 +0900

    [ruby/reline] use assert_nothing_raised

    https://github.com/ruby/reline/commit/f08be5da09

commit 696e8914b74cd10047917ce677b1872ae1f04660
  Author:     Otávio Schwanck dos Santos <otavioschwanck@gmail.com>
  AuthorDate: 2022-09-20 22:40:48 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-22 22:28:38 +0900

    [ruby/reline] PR changes

    https://github.com/ruby/reline/commit/e8e8d81f47

commit 9d19d910c077d40a1d60d36baa4458926df857d4
  Author:     Otávio Schwanck dos Santos <otavioschwanck@gmail.com>
  AuthorDate: 2022-09-20 22:11:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-22 22:28:37 +0900

    [ruby/reline] Revert "update version"

    This reverts commit https://github.com/ruby/reline/commit/ce1ac86179e6.

    https://github.com/ruby/reline/commit/86602cd244

commit 224a3ea718f32daad2a9c874104c33b072dc361a
  Author:     Otávio Schwanck dos Santos <otavioschwanck@gmail.com>
  AuthorDate: 2022-09-15 21:19:44 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-22 22:28:37 +0900

    [ruby/reline] update version

    https://github.com/ruby/reline/commit/ce1ac86179

commit 9fb18e631497fd308b2d1fdd9ad0bef1471de54b
  Author:     Otávio Schwanck dos Santos <otavioschwanck@gmail.com>
  AuthorDate: 2022-09-15 21:19:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-22 22:28:36 +0900

    [ruby/reline] fix vi-operator-arg

    https://github.com/ruby/reline/commit/d42cdb8f91

commit 69130e1614b8b0cae8494c249a04d8086448e864
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-22 21:07:00 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-22 21:07:22 +0900

    Expand paths used for dumper.rb

    This seems to be needed on Samuel's environment

commit 9434a7333c2a23c680a977331a60ca7c502c1ac0
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-09-17 17:19:57 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-09-22 19:19:12 +0900

    Enable coverage for eval.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6396

commit 928aeef3301d4dc0de3b80ee80c8effa094958c4
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-22 17:28:28 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-22 17:29:55 +0900

    [ruby/cgi] Bump up 0.3.3

    https://github.com/ruby/cgi/commit/c1ffa3a428

commit f07e651a90b3dd95b68a12a484275a27f068b117
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-22 14:37:40 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-22 14:37:56 +0900

    Mentioned new constants for Process and Socket classes on NEWS.md

commit ec93d09c94401af94bcbf5100a9853540d620f16
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-09-22 04:27:59 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-09-22 14:20:35 +0900

    add rb_execution_context

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6417

commit 083b4bb65500376e6c5b9fdf9b7901d5ce4e421a
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-09-22 00:58:19 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-09-22 14:20:35 +0900

    add rb_control_frame_t

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6417

commit 9058ba218c382744a737d47e2f9c8c0055386dc8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-22 12:54:23 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-22 12:54:23 +0900

    Binstubs test with relative path seems passing now

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6416

    Merged-By: nobu <nobu@ruby-lang.org>

commit 830b2e217b6298f696cc20df25e6a547a642f0f2
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-09-20 16:22:44 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-22 11:42:57 +0900

    [rubygems/rubygems] Update GitLab CI template with new one

    GitLab CI now needs the default keyword on specification of image
    and before_script.

    https://docs.gitlab.com/ee/ci/yaml/#default

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/b79e78e733

commit 6b0b326ef26478e96d176ed2013530e368e32440
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-22 09:39:20 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-22 11:35:28 +0900

    Followed up 796069b2882d8a67ecc36bda7c72affcbad09dae

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6415

commit 56d773dc6f8a1a9ded3f20cdabf263800e5bf75d
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-09-22 06:34:55 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-22 06:34:55 +0900

    New page IO Streams (#6383)

    This page provides an overview of IO streams. It's meant to be linked to from many other doc spots. In particular it will be linked to from many places in ARGF, File, IO, and StringIO.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 369f1668cd9dd4f361d9082bb729aa510835126b
  Author:     tompng <tomoyapenguin@gmail.com>
  AuthorDate: 2022-09-19 14:14:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-22 00:37:40 +0900

    [ruby/irb] Rewrite on_scan proc to be more readable.

    https://github.com/ruby/irb/commit/da54e7f081

commit 78cb6380027f67c631de93b91f7da88976189e0f
  Author:     tompng <tomoyapenguin@gmail.com>
  AuthorDate: 2022-08-11 06:15:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-22 00:37:39 +0900

    [ruby/irb] Update expected colorize result that were uncolored before

    https://github.com/ruby/irb/commit/52446eb77f

commit 9f686878794291b088d07866c00f8056a0c7dec7
  Author:     tompng <tomoyapenguin@gmail.com>
  AuthorDate: 2022-08-07 20:58:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-22 00:37:38 +0900

    [ruby/irb] Scan every single characters in IRB::Color.scan

    https://github.com/ruby/irb/commit/d14e56a65d

commit 2c6fdc4d65af035769e969dbe5d5718e859973d3
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-22 00:22:21 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-22 00:22:21 +0900

    Improve Ubuntu GitHub Actions (#6413)

    Make the job names more understandable and avoid testing too many
    duplicated things.

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit c21f820b496351d0f5a8df68192a510973369ac7
  Author:     Stan Lo <stan.lo@shopify.com>
  AuthorDate: 2022-09-21 22:53:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-21 22:59:45 +0900

    [ruby/irb] Fix completion tests

    https://github.com/ruby/irb/commit/eb1691f636

commit 6325fc885474937e1250d6605fd594cf70f0794c
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-09-20 00:14:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-21 22:24:27 +0900

    [ruby/irb] Handle non-String $LOAD_PATH values more carefully

    In addition to String values, $LOAD_PATH can also take objects that
    respond_to the `to_path` method, like Pathname objects. So `irb` should
    be able to handle those objects too.

    And if $LOAD_PATH contains objects that can't be converted into String,
    `irb` should simply ignore it.

    https://github.com/ruby/irb/commit/b2f562176b

commit 1a2ee4cfabba31d367da854f2e834d4f47cbc4b1
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-21 22:01:16 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-21 22:01:20 +0900

    Try reordering test-all and test-spec for mswin CI

    Visual Studio 2019 GitHub Actions has been super unstable. Somehow nmake
    test-spec triggers rebuilding the interpreter and fails.

    usa suggested a possibility of test-all leaving something impacting
    test-spec. I'd like to try this patch and see what happens.

commit 796069b2882d8a67ecc36bda7c72affcbad09dae
  Author:     David Carlier <devnexen@gmail.com>
  AuthorDate: 2021-04-10 20:47:16 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-21 18:07:59 +0900

    getrlimit adding RLIMIT_NPTS constant.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4377

commit d35bc88b37a9cfc491f3bc2aa35ec317febd8289
  Author:     David Carlier <devnexen@gmail.com>
  AuthorDate: 2021-12-12 20:08:19 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-21 17:15:54 +0900

    sockopt adding Linux constants, SO_INCOMING_CPU/SO_INCOMING_NAPI_ID.

commit 8cbbc061c40d0868491e0dc2c42f5cc5eb8d482d
  Author:     David Carlier <devnexen@gmail.com>
  AuthorDate: 2021-07-08 05:40:15 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-21 17:10:36 +0900

    openbsd sockets add SO_RTABLE constant

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4635

commit ec2d13567e396e2e1537d05321785c3d772d1e5b
  Author:     David Carlier <devnexen@gmail.com>
  AuthorDate: 2021-02-21 22:16:57 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-21 15:48:34 +0900

    Introduces FreeBSD's SO_USER_COOKIE among socketopt's options.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4206

commit 3f387e60ef87d61d5503132f02b96bba8caa32bd
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-02-18 02:31:40 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-21 15:26:34 +0900

    Rescue File.expand_path in MSpecScript#try_load if HOME is unavailable

    mspec tries to load ~/.mspecrc, but some platforms (e.g. WASI) doesn't
    have HOME concept, so `~` cannot be expanded and `File.expand_path` can
    fail.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5566

commit 8a9dfb676b0df74644ddd1db6cfefdd2c9283e8a
  Author:     David CARLIER <devnexen@gmail.com>
  AuthorDate: 2022-05-02 19:33:57 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-21 15:23:50 +0900

    sockets add `TCP_CONNECTION_INFO` and `TCP_KEEPALIVE` constants.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5871

commit 017573c3b373290e52f6e9a8fca217039980247d
  Author:     David CARLIER <devnexen@gmail.com>
  AuthorDate: 2022-05-19 05:30:47 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-21 15:22:47 +0900

    socket add FreeBSD's SO_SETFIB constant.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5917

commit e3b178066b6ec6c2f4f6e038c303cc50db35cf3d
  Author:     Koichi ITO <koic.ito@gmail.com>
  AuthorDate: 2022-05-23 16:40:15 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-21 15:21:27 +0900

    [DOC] Tweak the doc for `Process.kill` signature

    Replacing `...` with `*pids` seems to clarify the expected variadic arguments.

    Note that the expected arguments are two or more with a signal and pids.
    That is, the method must have at least one pid, which cannot be omitted:

    ```console
    % ruby -e 'Process.kill(0)'
    -e:1:in `kill': wrong number of arguments (given 1, expected 2+) (ArgumentError)
            from -e:1:in `<main>'
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5928

commit 76b4305a595c4d35241cc55f6382a86bb0c2af23
  Author:     Mau Magnaguagno <maumagnaguagno@gmail.com>
  AuthorDate: 2022-08-30 06:47:32 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-21 15:17:12 +0900

    [DOC] Improve NEWS.md

    Fix missing dot and replace error with ArgumentError.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6302

commit c287deecb6431110df9613181bc12b7ae6d77c2c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-21 10:53:06 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-21 14:25:42 +0900

    backup IRBRC environmental variable. It's used by test methods when it's defined.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6411

commit d6e84d97fee0eed62d0df20a144b11ec3c8240d4
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-21 10:46:35 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-21 14:25:42 +0900

    Fix the missing locale error

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6411

commit 1ad1f07306abc1ade6d8865fea0695771e676af3
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-21 13:38:42 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-21 13:38:46 +0900

    Fix a broken Slack notification

    The matrix doesn't have `os`.

commit 7060b23ffa25fb53884e99e4ab1fa8919f666beb
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-09-21 10:14:00 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-09-21 11:44:09 +0900

    proper function prototypes for openssl

    Just to reroute compiler warnings.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6358

commit 437800d3b0bdacf30b82fff15dd5532fbf65c3ab
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-09-21 10:03:30 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-09-21 11:44:09 +0900

    getenv: is in stdlib.h

    getenv is a very basic function that has been in stdlib.h since
    ISO/IEC 9899:1990.  There is absolutely zero need for us to redeclare.

    pty.c already includes stdlib.h out of the box so we need nothing.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6358

commit 45741918e1963fce3416b253712cfd4745368e7f
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-09-16 15:14:05 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-09-21 11:44:09 +0900

    reserved_word: just use gperf 3.1 declaration

    The reason why this was commented out was because of gperf 3.0 vs 3.1
    differences (see [Feature #13883]).  Five years passed, I am pretty
    confident that we can drop support of old versions here.

    Ditto for uniname2ctype_p(), onig_jis_property(), and zonetab().

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6358

commit 77c61ae3ab51746c986ff853c85b5e05bc6a942b
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-09-14 14:47:26 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-09-21 11:44:09 +0900

    cc_new: vm_ci_new's 4th argument is a pointer

    Don't pass boolean.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6358

commit ec5798d28bca2c214da886e27d8e870c55301563
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-09-14 14:43:31 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-09-21 11:44:09 +0900

    type pun rb_f_notimplement

    Other functions are already type-punned elsewhere.  rb_f_notimplement is
    the only exceptional function that appear literally.  We have to take
    care of it by hand.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6358

commit 4e64edb6cd8d1b444c591bfd50ec3d357e794f6e
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-09-14 14:35:47 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-09-21 11:44:09 +0900

    vm_method_cfunc_is: get rid of ANYARGS

    ANYARGS-ed function prototypes are basically prohibited in C23.
    Use __attribute__((__transparent_union__)) instead.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6358

commit 8a577cbc63e164a0771581ea7234578f5beab100
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-09-14 14:17:56 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-09-21 11:44:09 +0900

    cref_replace_with_duplicated_cref_each_frame: returns a pointer

    Why use FALSE here?

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6358

commit 2f8012c9491e7cf10f4080f6eecdb67d3aa83556
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-09-14 14:12:17 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-09-21 11:44:09 +0900

    rb_define_method: dedicated overload for rb_f_notimplement

    rb_f_notimplement was type-compatible with VALUE(*)(ANYARGS), but not
    any longer in C23.  Provide a dedicated path for it.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6358

commit 0cd86ffb2e4b270084510a0ed056329ddc949e5d
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-09-14 11:32:24 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-09-21 11:44:09 +0900

    avoid ANYARGS

    Use macro instead of a static functon.  This isn't very amusing but
    doing this wihtout a macro (is possibe but) seems just too much.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6358

commit 06cb0305161eaae0f006ffb3a7f341a5771f239f
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-09-13 16:26:33 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-09-21 11:44:09 +0900

    vm_insnhelper.c: add casts

    Why they have not been at the first place?  Siblings have proper casts.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6358

commit 406ebb25a017dba5b066a42a1c325e57fa644e95
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-09-13 15:18:46 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-09-21 11:44:09 +0900

    obj_refer_only_sharables_p_i: need derefernce

    Clang says "warning: variable 'pcnt' set but not used" here.  In fact it
    doesn't. The intention is clear that we want to increment cnt, not pcnt.
    Adding a * mark solves everything.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6358

commit 104069e75a385d9b04c86cd31f2aa60547ad6a55
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-09-13 15:08:50 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-09-21 11:44:09 +0900

    syserr_initialize: delete redundant strerror() declaration

    This line issues a warning on clang.  strerror is of course a part of
    ISO C since its dawn.  We practically have never needed it.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6358

commit 45482fea3c874c4441e1846fb30cac1a92ffbd51
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-09-12 14:41:23 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-09-21 11:44:09 +0900

    LLVM 15 released

    See https://discourse.llvm.org/t/llvm-15-0-0-release/65099

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6358

commit d3733c2ba5207d29ef5b52a93672873ae369b52c
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-09-21 08:30:10 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-21 08:30:10 +0900

    Guard `--yjit-stats` behind `#[cfg(feature = "stats")]` (#6409)

    * Guard --yjit-stats behind #[cfg(feature = "stats")]

    * Only ask for --yjit-stats with dev builds on cirrus CI

    * Revert "Only ask for --yjit-stats with dev builds on cirrus CI"

    This reverts commit cfb5ddfa4b9394ca240447eee02637788435b02a.

    * Make it so the --yjit-stats option works for non-release builds

    * Revert accidental changes

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit a8dc49b4d57e0a2d07691176f43e4b7f71874fa7
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-09-20 21:36:06 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-09-21 03:17:27 +0900

    YJIT: Support MAKE=bmake for release build

    This add support for bmake, which should allow building with
    `configure --enable-yjit` for the BSDs. Tested on FreeBSD 13 and
    on macOS with `configure MAKE=bmake` on a case-sensitive file system.

    It works by including a fragment into the Makefile through the configure
    script, similar to common.mk. It uses the always rebuild approach to
    keep build system changes minimal.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6408

commit b3d8dddee7a9ea0bc9c278a5c9faa4df81afd57e
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-09-20 17:07:42 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-09-20 22:25:05 +0900

    Try to ignore a noisy ASAN warning for continuation

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6405

commit e40fa6c480b58a8d1699b24193cf67945eaec202
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-09-20 16:09:42 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-20 16:09:42 +0900

    [DOC] socket: fix wrong sample addresses (#6372)

    IPv6 link local address is fe80::/10 not ff80::/10:

    https://www.rfc-editor.org/rfc/rfc4291.html

        Link-Local unicast   1111111010           FE80::/10       2.5.6

    IPv6 (deprecated) site local address is fec0::/10 not ffc0::/10:

    https://www.rfc-editor.org/rfc/rfc3513.html

        Site-local unicast   1111111011           FEC0::/10       2.5.6

  Notes:
    Merged-By: kou <kou@clear-code.com>

commit 9de11fe796e8caca2d87650278028eb95c1e09a0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-20 12:54:08 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-20 12:54:08 +0900

    Quiet if the target is already linked the same source

commit 55e540f7ab6adb3ea0de16912dfde8e0bf94cc6e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-20 11:12:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-20 11:12:11 +0900

    Ignore EPERM which means already being process-leader

commit 76a0e81f409baf810411677e115bce4f4b05ba5e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-20 07:38:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-20 07:38:58 +0900

    Support trailing commas in builtin

    `foo(Primitive.cexpr!('Qnil'),)` causes SEGV without this change.

commit f8dad616c2ee2d83b3162da8d86865b0f2a782de
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-20 06:07:28 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-20 06:07:28 +0900

    YJIT: Show --yjit-stats of railsbench on CI (#6403)

    * YJIT: Show --yjit-stats of railsbench on CI

    * YJIT: Use --enable-yjit=dev to see ratio_in_yjit

    * YJIT: Show master GitHub URL for quick comparison

    * YJIT: Avoid making CI red by a yjit-bench failure

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 26135312f61014967ef223dd16ad6577ebd9c5d8
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-09-16 09:48:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-20 00:44:30 +0900

    [ruby/psych] Convert some of Parser#parse to Ruby

    This commit just converts some of the parse method to Ruby

    https://github.com/ruby/psych/commit/bca7d2c549

commit 12889fad4100569c212c9813243db5ec5380b5fb
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-09-19 23:23:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-19 23:40:49 +0900

    [ruby/bigdecimal] Remove symbol defs in missing.h for old Rubies

    Commit 2885514 added these to support Ruby 2.1. The rb_sym2str function
    is defined since Ruby 2.2.

    https://github.com/ruby/bigdecimal/commit/be366c9cf2

commit a44f48cadc8a319e233bc5a8c6ab9d52aaf52bae
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-09-19 23:15:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-19 23:40:48 +0900

    [ruby/bigdecimal] Remove array defs in missing.h for old Rubies

    Commit 02b6053 added these to support Ruby 2.0.0. The rb_array_const_ptr
    function is defined since Ruby 2.3.

    https://github.com/ruby/bigdecimal/commit/678699ca1b

commit 5883bc7c0791de2ce5e8b22175aef07705f0c618
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-19 16:34:03 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-19 16:34:03 +0900

    YJIT: Check if the processor supports --yjit-stats (#6401)

    * YJIT: Add asm comment for incr_counter

    * YJIT: Check if the processor supports --yjit-stats

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit ae07336529ee0955bb08b12eb69a90aa9ab4b9f9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-19 00:46:52 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-19 15:34:16 +0900

    Reduce fork calls in daemon

    The forked child process is a grandchild process from the viewpoint of
    the process which invoked the caller process.  That means the child is
    detached at that point, and it does not need to fork twice.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6402

commit 1c9381283e68b9021df2509fb64d663998d8cb5a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-19 00:26:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-19 15:34:16 +0900

    Add another test for `Process.daemon`

    Check for that the daemon process is detached, that means it is not a
    child and not waitable.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6402

commit e75d96368577276cbebadb56a0fb286f66afdf3f
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-09-19 15:09:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-19 15:09:38 +0900

    Only exit if ruby2_keywords and splat together (#6395)

    Before this change railsbench spent less time in yjit than before splat. This brings it back to parity.

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit ea22403653878e1c8c7e307b0d15c7d5881bad66
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-17 22:52:07 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-19 01:09:47 +0900

    Extract UNICODE_DOWNLOADER

commit cc533cb607d9d96356c12b880d0871a3b24f35e9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-17 22:51:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-19 01:09:47 +0900

    Downloader: Define long option aliases

commit a0b0991eed5b202b61323496560d8a803fddab02
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-17 22:48:40 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-19 01:09:47 +0900

    Downloader: Define per-class command line options

    Move `Downloader::Unicode` specific options, and parse options after
    the downloader specificier.

commit e2e1058e668f875bfc882e94d470b01044303da1
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 21:19:37 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-18 21:21:37 +0900

    Include lib/mjit/instruction.rb in a snapshot

    baseruby shouldn't be necessary once a snapshot is built.

commit 45ecc30a6342e1322f07e68280a5107db8075da0
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 20:49:46 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-18 21:16:15 +0900

    Move mjit/instruction.rb rule to common.mk

    as suggested by nobu. We don't really need to generate this for Windows,
    but using common.mk whenever possible would probably make maintenance
    easier.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6398

commit 0ca037b35cdf14bc6b3910560c786936585cf6fc
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 20:42:57 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-18 20:42:57 +0900

    Update bindgen crate (#6397)

    to get rid of deprecated indirect dependency, ansi_term

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit a988fe0b3e4cd5a3955706affdc1f498ff9b5d77
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 14:22:35 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-18 14:39:53 +0900

    Introduce --basedir to insns2vm.rb

    and leverage that to preserve the directory structure under tool/ruby_vm/views

commit 12023c833fb2ba3b50a34ab7f6b53f5f77d78658
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 14:21:23 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-18 14:21:40 +0900

    Revert "Preserve the directory structure under tool/ruby_vm/views"

    This reverts commit 62ec621f8c7457374d1f08aec97138ac1b7bdf2a.

    will revisit this once fixing non-MJIT targets

commit 62ec621f8c7457374d1f08aec97138ac1b7bdf2a
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 14:16:08 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-18 14:19:22 +0900

    Preserve the directory structure under tool/ruby_vm/views

    for nested target directories

commit 0e816e6d3022892da438940b09c4d4b49ceb670f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 14:02:09 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-18 14:04:20 +0900

    Demote mjit_instruction.rb from builtin to stdlib

commit 67417e795a3e5af8e64d3b3c3440ff5e7306707d
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-18 00:09:41 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-18 00:10:30 +0900

    Replace revision.tmp with the HAVE_BASERUBY trick

    but without relying on replacement.

    This seems to work on OpenBSD as well.

commit 39f91bc24baa37db3c3d1485902056f43b013b54
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-17 23:16:55 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-17 23:44:14 +0900

    Always generate non-empty revision.h

    Non-GNU make seems to generate empty revision.h, but it doesn't make
    sense since https://github.com/ruby/ruby/pull/6382.

    Also the $(HAVE_BASERUBY:yes=tmp) hack doesn't seem to be working on
    OpenBSD. I'll remove it to focus on fixing RubyCI first, and then deal
    with baseruby-missing environments. At least a snapshot should have
    revision.h and it might work fine though.

commit 922e61fcc22abfc86a9805ccf52ba9f8edeca17c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-17 23:05:06 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-17 23:05:10 +0900

    Remove git command existence check again

    With 33c6dd2cc89c27bbf406508ec39038a181fb99bc, it's no longer necessary.

    This is what I got on openbsd-current:

    ```
    -bash-5.1$ git -v
    unknown option: -v
    usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
               [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
               [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
               [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
               [--super-prefix=<path>] [--config-env=<name>=<envvar>]
               <command> [<args>]
    -bash-5.1$ git version
    git version 2.35.1
    ```

commit 33c6dd2cc89c27bbf406508ec39038a181fb99bc
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-17 22:24:09 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-17 22:24:10 +0900

    Fallback to VCS.release_date on VCS::NotFoundError

    when -q is given.

    One of the RubyCI servers, freebsd12, had a broken git environment:

    ```
    $ git show
    fatal: detected dubious ownership in repository at '/usr/home/chkbuild/chkbuild/tmp/build/20220917T123002Z/ruby'
    To add an exception for this directory, call:

            git config --global --add safe.directory /usr/home/chkbuild/chkbuild/tmp/build/20220917T123002Z/ruby
    ```

    tool/lib/vcs.rb doesn't work normally for that server.
    Even for such cases, we'd like to generate a usable revision.h.

    So this patch lets revision.h fallback to default VCS.release_date
    when VCS::NotFoundError is raised.

commit 1825d3673f2a5504b65ba31a9fb6c2e52edf1fc3
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-17 22:06:53 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-17 22:08:36 +0900

    Skip test_wait on MinGW CI

    This test has been unstable, and it seems like we're not interested in
    fixing that for MinGW.
    https://github.com/ruby/ruby/actions/runs/3073317191/jobs/4965373284

commit 38a7a13ac6ed6bba2584def7d7121257eb85e051
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-17 21:16:06 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-17 21:16:06 +0900

    Auto-generate the release date on version.h from git CommitDate (#6382)

    * Auto-generate the release date on version.h

    from git CommitDate

    * Generate revision.h on mswin

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit ca4cbe59eda77a3855094c843486759868794e85
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-14 19:15:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-17 12:37:48 +0900

    Move case-folding.rb to tooldir with enc-prefix

commit e9982fd679cb7cb80fbf65fa0090fd01f94884c7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-14 19:00:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-17 12:37:48 +0900

    Derive UNICODE_EMOJI_VERSION from UNICODE_VERSION

commit 03ce48dac74099dd725c7ab8dce5ca8b20df65f5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-14 18:56:51 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-17 12:37:48 +0900

    Emoji files header changed at 15.0 again

commit 76c00565052368f693bc4e18e8e40b614f744d74
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-14 18:03:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-17 12:37:48 +0900

    Follow emoji data files header change

    The header of emoji data files in UCD, which were moved at 13.0.0, has
    been changed since 14.0.0.  It seems to be the same as other files in
    UCD.

commit 6898984f1cd1b0375c3da44d7832724489e0e470
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-17 12:09:34 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-17 12:09:34 +0900

    [Bug #19005] dynamic_lookup linker option in external libraries

    The warning against `-undefined dynamic_lookup` is just a warning yet,
    and many gems seem to pay no attention to warnings.  Until it fails
    actually, keep it as a migration path, except for standard extension
    libraries and bundled extension gems.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6394

    Merged-By: nobu <nobu@ruby-lang.org>

commit b07db967441161a84386bcbbb41d990a2f3ad31c
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-09-17 02:25:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-17 02:25:26 +0900

    [ruby/irb] Support --noscript option to not use first non-option argument as script

    Also add --script option to turn the option back on.

    Previously there wasn't a way to get an interactive IRB session
    and access arguments provided on the command line.

    Additionally, handle `-` as script as stdin. In Unix-like tools, `-`
    means to take standard input instead of a file.  This doesn't
    result in exactly the same output for:

    ```
    echo 'p ARGV' > args.rb; irb args.rb a b c
    ```

    and

    ```
    echo 'p ARGV' | irb - a b c
    ```

    Due to how irb handles whether stdin is a tty.

    However, this change allows use of `-` as a argument, instead of
    giving an unrecognized switch error. This required some small
    changes to context.rb (to handle `-` as standard input) and
    input-method.rb (to have FileInputMethod accept IO arguments in
    addition to strings).

    Implements [Feature #15371]

    https://github.com/ruby/irb/commit/4192683ba2

commit 5b735d0bebe0d6187780d1c2ddea0b0861b15df4
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-16 20:44:58 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-16 20:44:58 +0900

    Invalidate i-cache after link_labels (#6388)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit a28e7871e54d7a87afbfd686291c500d71edb7cb
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-09-16 18:12:46 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-09-16 18:54:33 +0900

    Update bundled_gems

    Try latest patch to avoid some race on Mac OS X.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6390

commit 6ad69944572adddaf608aa33e4fdef80100bee08
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-16 17:03:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-16 17:05:59 +0900

    Omit a DRb test on MinGW

    This test seems to leak a thread and let TestIOWait fail:
    https://github.com/ruby/ruby/actions/runs/3065426880/jobs/4949517274

    DRb almost never seemed to stably work on MinGW. I don't think we intend
    to fix it either. We should just omit DRb tests when they fail on MinGW.

commit c8d94d2797f798e2666a057bb1940e1ffe41b717
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-16 14:46:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-16 14:46:21 +0900

    Now test-bundler needs fake.rb

commit 2387fbfb34f58ea05b4aceaab6d54febe9eab4c1
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-09-16 13:37:15 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-16 13:37:15 +0900

    Fix splat args (#6385)

    * Fix splat args

    Cfuncs were not working properly so I disabled them right now.

    There were some checks above that were also actually preventing splat args from being called.

    Finally I did some basic code cleanup after realizing I didn't need to mutate argc so much

    * Add can't compile for direct cfunc splat call

    * Fix typo

    * Update yjit/src/codegen.rs

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit cc7f6fe73454743da87d73ddb26626503fae248f
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-09-15 23:14:27 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-15 23:14:27 +0900

    YJIT should die if we compile on Aarch64 with no instruction cache clear available (#6380)

    YJIT should die if we compile on ARM64 with no icache clear available

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 64a020324dc7453c5678f44b898eb5da47b9abcc
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-09-15 23:12:27 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-15 23:12:27 +0900

    Add asm comments to make disasm more readable (#6377)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 68a5b0f086c9d54f271cdff231a1a2c2a40b0aa6
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-09-07 01:33:23 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-15 14:49:20 +0900

    [rubygems/rubygems] Mask the file mode when extracting files

    When extracting files from the tarball, a mode is retrieved from
    the header. Occasionally you'll encounter a gem that was packaged
    on a system whose permission bits result in a value that is larger
    than the value that File.chmod will allow (anything >= 2^16). In
    that case the extraction fails with a RangeError, which is pretty
    esoteric.

    If you extract the tarball with the tar and gunzip utilities, the
    file permissions end up being just the bottom 16 bits masked off
    from the original value. I've mirrored that behavior here. Per the
    tar spec:

    > Modes which are not supported by the operating system restoring
    > files from the archive will be ignored.

    I think that basically means what I've done here.

    ---

    This commit also changes the behavior very slightly with regard to
    when the chmod is called. Previously it was called while the file
    descriptor was still open, but after the write call.

    When write flushes, the file permissions are changed to the mode
    value from the File.open call, undoing the changes made by
    FileUtils.chmod. CRuby appears to flush the buffer after the
    chmod call, whereas TruffleRuby flushes before the chmod call.
    So the file permissions can change depending on implementation.
    Both implementations end up getting the correct file permissions
    for the bottom 9 bits (user, group, world), but differ with
    regard to the sticky bit in the next 3.

    To get consistent behavior, this commit changes it to close the
    file descriptor before attempting to chmod anything, which makes
    it consistent because the write flushes in both cases.

    https://github.com/rubygems/rubygems/commit/22ce076e99

commit bf72afa76603d1ebd9e9d6e99c6dbc4d765344e6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-15 09:59:05 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-15 14:48:47 +0900

    Remove warning for old TLS version connection

    RubyGems.org already has refused connection requests using older than
    TLS 1.2.

commit 6b2b9e0019de4e08c9164d83c81418db6584f243
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-15 11:23:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-15 12:50:48 +0900

    [rubygems/rubygems] Also added x86_64-darwin-21

    https://github.com/rubygems/rubygems/commit/c03e7e1564

commit ec0d9a6a6f5da97a6727629ee8bd6c282c519697
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-15 11:22:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-15 12:50:48 +0900

    [rubygems/rubygems] Added arm64-darwin-22 to lockfiles for testing

    https://github.com/rubygems/rubygems/commit/d7956e9ce5

commit d152ac677cffdbc136530dd56a56c42518d29ea4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-15 09:25:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-15 10:25:11 +0900

    Make CodeQL ignore syntax_suggest because of the performance problem

    https://github.com/github/codeql/discussions/10120#discussioncomment-3485880

commit aecb57ceb0c690b05ad29a91c418e075342ea84a
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-09-15 09:39:39 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-15 09:39:39 +0900

    Fix style on vm_ivar benchmarks (#6379)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 752ae81ed168444380d265ebefcb3101ef68d890
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-15 01:33:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-15 08:25:53 +0900

    [ruby/irb] Refine assertion for failures

    https://github.com/ruby/irb/commit/fd047512b3

commit ae2e8d364f685d4034f04900e0e3ad53cecc0e05
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-15 01:31:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-15 08:25:52 +0900

    [ruby/irb] `Dir.mktmpdir` creates a directory including the process ID

    https://github.com/ruby/irb/commit/a15f68ffdb

commit 513a11b477bb334413452b6004bc7d2d0a3eed4f
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-09-15 05:48:40 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-09-15 05:50:47 +0900

    Add vm_ivar get, get_unitialized, and lazy_set benchmarks

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6376

commit f98d6d3f389e8e46775c5895ddc1a3eec4544533
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-09-15 05:15:55 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-15 05:15:55 +0900

    YJIT: Implement specialized respond_to? (#6363)

    * Add rb_callable_method_entry_or_negative

    * YJIT: Implement specialized respond_to?

    This implements a specialized respond_to? in YJIT.

    * Update yjit/src/codegen.rs

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit d5cdc2edd02eb6990d045c932aaedb60213143e1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-15 00:58:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-15 01:38:43 +0900

    [TravisCI] The source of YAML is no longer bundled

commit fb2e9053b3697b856785c0478762291e43e0fc55
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-15 00:47:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-15 01:38:42 +0900

    [TravisCI] Make gems/src directory writable

commit b6a9e683917745df2822a611fce64df9ae8090a7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-14 23:08:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-15 00:31:35 +0900

    Add noarch-fake.rb target

    `yes-fake` depends on it when `arch=noarch` is given, but the rule to
    generate it from fake.rb.in is ignored now.

commit 758a1d730230ad0f4adfd7681c1fe4c8ac398bde
  Author:     Jimmy Miller <jimmy.miller@shopify.com>
  AuthorDate: 2022-09-14 23:32:22 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-14 23:32:22 +0900

    Initial support for VM_CALL_ARGS_SPLAT (#6341)

    * Initial support for VM_CALL_ARGS_SPLAT

    This implements support for calls with splat (*) for some methods. In
    benchmarks this made very little difference for most benchmarks, but a
    large difference for binarytrees. Looking at side exits, many
    benchmarks now don't exit for splat, but exit for some other
    reason. Binarytrees however had a number of calls that used splat args
    that are now much faster. In my non-scientific benchmarking this made
    splat args performance on par with not using splat args at all.

    * Fix wording and whitespace

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

    * Get rid of side_effect reassignment

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 8f37e9c91814357f79911e208ef4d0d56dfa9433
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-14 23:27:52 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-14 23:27:52 +0900

    YJIT: Add Opnd#with_num_bits to use only 8 bits (#6359)

    * YJIT: Add Opnd#sub_opnd to use only 8 bits

    * Add with_num_bits and let arm64_split use it

    * Add another assertion to with_num_bits

    * Use only with_num_bits

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 2e25b85a7e4268676fcdf17b5975c2fd60066ce1
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-09-14 21:20:32 +0900
  Commit:     Kenta Murata <mrkn@mrkn.jp>
  CommitDate: 2022-09-14 23:14:36 +0900

    configure.ac: Apply suggestions from code review in #6366

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

commit 960db13c472773926dc8c3dec8ba62d60aaa77f9
  Author:     S.H <gamelinks007@gmail.com>
  AuthorDate: 2022-09-14 23:10:21 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-14 23:10:21 +0900

    Reuse `opt_arg_append` function

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6373

    Merged-By: nobu <nobu@ruby-lang.org>

commit f512df73986c74e2f4bd65ca642879a0618da213
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-09-14 22:17:39 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-14 22:17:39 +0900

    configure.ac: Add --with-gmp-dir (#6366)

    Add the `--with-gmp-dir` to specify the prefix directory of GMP.
    The`--without-gmp` option is preserved for convenience.  It can
    be used to force to reject using GMP even if the `--with-gmp-dir`
    option is specified.

  Notes:
    Merged-By: mrkn <mrkn@ruby-lang.org>

commit 075df960c93cb2d3ebe308f67871f39565b4426e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-14 15:23:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-14 21:24:40 +0900

    Add comments to touch libyjit

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6371

commit e1a9d8849403afea04ca2e11f97245590dcc1597
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-14 13:46:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-14 21:24:40 +0900

    Touch libyjit.a which may be still old due to the cache

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6371

commit f2429f0af57536a354159f08aac729d6e4cdef38
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-19 15:22:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-14 21:24:40 +0900

    Expand dependency for `$(YJIT_LIBS)`

    Currently, miniruby is rebuild **always** when yjit is enabled, even
    if nothing is changed.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6371

commit d66b29ccfbedb8d669ebfed19888f9ba22a48b75
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2022-09-14 17:27:38 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2022-09-14 17:30:10 +0900

    Add link to how to build Ruby

commit 2e324b645e16e67c14de80ea34b1d61165045f22
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-14 00:58:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-14 11:27:05 +0900

    Manage paths for bundler tests

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6370

commit 035978d7be9bc3819f42f964fe6193d983cce63f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-14 00:06:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-14 11:27:05 +0900

    Pass job-server FDs to bundler tests

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6370

commit c428fc0e1f00ad1176f42157ea9df8d3d19dbd1c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-13 23:56:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-14 11:27:05 +0900

    -undefined dynamic_lookup is obsolete

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6370

commit f863bc505cf1a976aecd0ed3cb21a3a82956953e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-14 11:05:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-14 11:14:08 +0900

    [ruby/irb] Fix the error when LC_MESSAGES config value is nil

    https://github.com/ruby/irb/commit/6bbde84369

commit e2b47b832f53b2fd0626774a573a22c15a933c64
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-14 10:42:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-14 10:42:38 +0900

    configure.ac: Manage OPT_DIR better (#6367)

    * Check rpath flag earlier

    * Manage OPT_DIR at once

  Notes:
    Merged-By: mrkn <mrkn@ruby-lang.org>

commit 9299db49f567025e28082be698e1f624b3e3f3ed
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-09-14 10:15:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-14 10:15:45 +0900

    [ruby/irb] Fix history file saving with concurrent irb sessions when history file doesn't exist

    If history file didn't exist when irb was started, @loaded_history_mtime
    would be nil.  However, if the history file didn't exist before, but it
    exists when saving history, that means the history file was modified,
    and we should handle it the same way as we handle the other case where
    the history file was modified.

    Fixes https://github.com/ruby/irb/pull/388

    https://github.com/ruby/irb/commit/8d277aafcb

commit 6a78ae2fe27d31eca233fb0aba5457d954ea7b02
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-14 07:21:19 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-14 07:21:19 +0900

    Remove CODEOWNERS to switch to auto-request-review (#6365)

    * Remove CODEOWNERS to switch to auto-request-review

    * Random change to test reviews

    * Revert "Random change to test reviews"

    This reverts commit 814b10d062d82d953019ea4afadc3f8fcf638379.

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 316b44df09d3bf9dcabb8e2ce9528c72304c1bd4
  Author:     U.Nakamura <usa@ruby-lang.org>
  AuthorDate: 2022-09-13 15:43:05 +0900
  Commit:     U.Nakamura <usa@ruby-lang.org>
  CommitDate: 2022-09-13 15:44:29 +0900

    Add GMP support for mswin

commit 391eebfe6979f72ddff1d086dceb8e415aac0433
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-13 10:48:31 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-13 10:48:32 +0900

    Increase the timeout for make all on MinGW

    https://github.com/ruby/ruby/actions/runs/3041702828/jobs/4899106526#step:14:1219

commit 2e21fef6a4d10a12ef3f99b1fb9c0741a174b3cd
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-13 10:38:10 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-13 10:38:11 +0900

    Drop synchronized event

    because it doesn't seem to be working. It's a bit annoying that
    synchronized doesn't work, but in many cases, opened and
    ready_for_review should be enough. As a last resort, you could
    close/reopen it.

    Also, the token scope needs to be public_repo instead of repo:status.

commit 64cd097009f10e09e7e96abe3dce4c06bac43c29
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-13 10:24:35 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-13 10:24:35 +0900

    Tweak the glob for auto_request_review

commit 9179f666fbabfe244801060d76bb95de3831c217
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-13 10:17:17 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-13 10:18:17 +0900

    Configure auto_request_review for YJIT team

    We need to use pull_request_target instead of pull_request to use secrets.
    pull_request_target seems to be executed from the default branch, so
    pushing this to master to test this.

commit fcf861a138c39dbbf83091e5dd018cbf847a327b
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-09-13 02:36:44 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-09-13 09:25:06 +0900

    Try latest debug.gem

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6362

commit 2aa8edaec701ca2d76e7be7a9b792b69574ac869
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-09 07:05:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-12 22:13:32 +0900

    [rubygems/rubygems] Deduplicate results just once

    Instead of checking for uniqueness for every spec.

    https://github.com/rubygems/rubygems/commit/97d28c9665

commit 75d90cc8e55ec662782526094b31ada1853a161b
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-24 17:57:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-12 22:13:31 +0900

    [rubygems/rubygems] Use a single hash to keep track of prereleases

    https://github.com/rubygems/rubygems/commit/9d7bd177b0

commit 03d1962703a5c5eb137d25bf382861157605e6e1
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-24 17:32:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-12 22:13:30 +0900

    [rubygems/rubygems] Remove unnecessary sorting

    Already done by the gem version promoter.

    https://github.com/rubygems/rubygems/commit/aae2cc9fe0

commit dce73c8616eb2e91cb0330c9b32f3edf8e771a67
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-24 17:17:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-12 22:13:30 +0900

    [rubygems/rubygems] Simplify instantiating the gem version promoter

    https://github.com/rubygems/rubygems/commit/c4e2737f2c

commit 6a21d196ba774f219956ede5d4cf276b1af433c4
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-24 17:05:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-12 22:13:29 +0900

    [rubygems/rubygems] Let specs be sorted just once by the gem version promoter

    https://github.com/rubygems/rubygems/commit/3cea25a39d

commit 8d2bcc88ffe603290099d626cab40afcc834a12f
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-24 15:51:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-12 22:13:29 +0900

    [rubygems/rubygems] This sorting seems unnecessary too

    https://github.com/rubygems/rubygems/commit/823cb1fef9

commit a4860e043e073e9caa2494284df4af10ca6550da
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-24 15:39:00 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-12 22:13:28 +0900

    [rubygems/rubygems] Remove unnecessary spec sorting

    Specs in a SpecSet with the same name are only sorted by platform
    priority when they are read. No need to sort everything eagerly.

    https://github.com/rubygems/rubygems/commit/aeafff52df

commit acc61cbf4a6520904f8253c2ecf6b6665fe20e89
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-09-12 21:59:45 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-09-12 21:59:45 +0900

    Add NEWS entry for the previous commit

commit 6525b6f760ccd9612c9546b0313ab1c7e4af5e66
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-09-11 02:15:49 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-09-12 21:02:34 +0900

    Remove get_actual_encoding() and the dynamic endian detection for dummy UTF-16/UTF-32

    * And simplify callers of get_actual_encoding().
    * See [Feature #18949].
    * See https://github.com/ruby/ruby/pull/6322#issuecomment-1242758474

commit ed029e9bd42d7749fe22007e33c0f61d1dd3d792
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-12 19:53:10 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-12 19:53:10 +0900

    Autoconf 2.70 or AC_PROG_CC_C99 for earlier is checking for C99

    It is no longer necessary to add it to `CFLAGS`/`CPPFLAGS` later.

    Furthermore, as `CPPFLAGS` is used also with C++ compiler, the option
    particular to C such as `-std=gnu99` results in an error.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6361

    Merged-By: nobu <nobu@ruby-lang.org>

commit 9205b8c8010f474b2d301ccc22335c9a2c4a6cae
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-12 01:23:52 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-12 07:47:45 +0900

    Revert "defs/gmake.mk: no _FORTIFY_SOURCE unless optimization"

    This reverts commit b8c376cb9d91854fd40f6e06f07773404899b54f, as it
    seems no longer needed probably.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6356

commit 684353fc03afd6e7c887b65bd18f0b3aeb98101c
  Author:     Jeremy Bopp <jeremy@bopp.net>
  AuthorDate: 2022-09-11 23:08:14 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-11 23:08:14 +0900

    [Win32] Negative length `IO#sysread`

    Raise `ArgumentError` in `IO#sysread` on Windows when given a negative
    length.

    Fixes [Bug #18880]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6354

    Merged-By: nobu <nobu@ruby-lang.org>

commit 472e7b8518fbde98be3f0a06192a6695697bf879
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-11 15:39:32 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-11 15:39:40 +0900

    MJIT: Use the built-in PACK_MAP

    106744107b made this possible.

commit 106744107b485a371ed788fe590c6ce778de16df
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-05 16:06:43 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-11 15:30:49 +0900

    [ruby/fiddle] Fix PACK_MAP for unsigned types (https://github.com/ruby/fiddle/pull/110)

    https://github.com/ruby/fiddle/commit/4a71246645ccff001292c9d80b855b2ef5bf06c1

commit 7232f264df41ae58b126a2915eacfd85882ef6a4
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-11 10:14:56 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-11 10:14:56 +0900

    Remove -j from MinGW test-all

    MinGW CI has been crashing too often. Now that we don't have slow test_mjit in MinGW, I'd like to see if not using parallel test workers fixes the problem.

commit aa8a3b2358fbdc176c6bcfbcfd3ed1646d287d62
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-11 08:59:27 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-11 09:09:05 +0900

    MJIT: Do not hang after forking with threads

    First, rb_mjit_fork should call rb_thread_atfork to stop threads after
    fork in the child process. Unfortunately, we cannot use rb_fork_ruby to
    prevent this kind of mistakes because MJIT needs special handling of
    waiting_pid and mjit_pause/resume.

    Second, mjit_waitpid_finished should be checked regardless of
    trap_interrupt. It doesn't seem like the flag is not set when SIGCHLD is
    handled for an MJIT child process.

commit 14bcf69c9c36875c7956d0ec8c04bfeaec514dd1
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-09-03 19:46:57 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-09-11 02:02:15 +0900

    Deprecate Encoding#replicate

    * See [Feature #18949].

commit c7225971036afbf552673efbe25bc76d77ea6fe2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-10 17:19:14 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-10 20:50:37 +0900

    [MSWin] Get rid of single quotes in sed command lines

    GnuWin32 sed strips only double quotes, but not single quotes, and
    dies:

    ```
    sed: -e expression #1, char 1: unknown command: `''
    ```

commit 92b907d12d6de6f74f1efa6d8cd4fed8fa50763e
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-09-03 22:47:49 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-09-10 20:14:18 +0900

    Enable deprecation warnings for test-all

    * So deprecated methods/constants/functions are dealt with early,
      instead of many tests breaking suddenly when removing a deprecated
      method/constant/function.
    * Follows https://bugs.ruby-lang.org/issues/17591

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6321

commit 5e39b3b844d5601541deb7cb0648d88cc6fdc080
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-09-09 13:51:39 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-09-10 12:29:40 +0900

    YJIT: Branch directly when nil? is known from types

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6350

commit d3191843909208477ada3b82db00fb6204696479
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-09-06 07:20:08 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-09-10 12:29:40 +0900

    YJIT: Branch directly when truthyness is known

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6350

commit 79f50b9d02b228aba2d8887422f00767046051a6
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-09-10 02:00:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-10 09:32:51 +0900

    Using is_broken_string function

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6346

commit 518301883edee12218657c77ba977e2bde1b17d0
  Author:     Lars Kanis <lars@greiz-reinsdorf.de>
  AuthorDate: 2022-09-10 02:32:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-10 09:32:27 +0900

    Fix parallel build on MINGW

    When the build is running with a base ruby then generating `x64-ucrt-ruby320.rc`
    could fail due to a missing dependency to `x64-mingw-ucrt-fake.rb`.
    This commit adds this dependency.

    A failing build looks like so:
    ```
    generating x64-mingw-ucrt-fake.rb
    generating x64-ucrt-ruby320.rc
    ../snapshot-master/win32/resource.rb:in `require': cannot load such file -- ./x64-mingw-ucrt-fake (LoadError)
    make: *** [GNUmakefile:57: x64-ucrt-ruby320.rc] Error 1
    make: *** Waiting for unfinished jobs....
    linking miniruby.exe
    x64-mingw-ucrt-fake.rb updated
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6347

commit 5b5c627d37c1773dd280e0f14d9510f8fa8db04f
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-09-10 07:41:19 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-10 07:41:19 +0900

    YJIT: eliminate redundant mov in csel/cmov on x86 (#6348)

    * Eliminate redundant mov in csel/cmov. Translate mov reg,0 into xor

    * Fix x86 asm test

    * Remove dbg!()

    * xor optimization unsound because it resets flags

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 848037cadd63091d5c39d06cd5d49aeee2258b4e
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-09-10 00:37:41 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-10 00:37:41 +0900

    Better offsets (#6315)

    * Introduce InstructionOffset for AArch64

    There are a lot of instructions on AArch64 where we take an offset
    from PC in terms of the number of instructions. This is for loading
    a value relative to the PC or for jumping.

    We were usually accepting an A64Opnd or an i32. It can get
    confusing and inconsistent though because sometimes you would
    divide by 4 to get the number of instructions or multiply by 4 to
    get the number of bytes.

    This commit adds a struct that wraps an i32 in order to keep all of
    that logic in one place. It makes it much easier to read and reason
    about how these offsets are getting used.

    * Use b instruction when the offset fits on AArch64

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit b350053ae47dc4653ecb85f64360cf6eafba6323
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-08 06:01:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-09 19:38:52 +0900

    [rubygems/rubygems] Fix resolution on non-musl platforms

    Gems without specific platform were being preferred over matching
    platform specific gems.

    https://github.com/rubygems/rubygems/commit/37b95b9159

commit cfe10e482e0657195cadf01f0be72e11b7fb62b4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-09 18:58:07 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-09 18:58:07 +0900

    [DOC] Update `Struct#new` behavior with `keyword_init: true`

commit aff6534e32b5e46036808ed0579d31a8dbad8190
  Author:     Kazuki Yamaguchi <k@rhe.jp>
  AuthorDate: 2022-09-08 22:12:02 +0900
  Commit:     Kazuki Yamaguchi <k@rhe.jp>
  CommitDate: 2022-09-09 16:03:20 +0900

    Avoid unnecessary copying when removing the leading part of a string

    Remove the superfluous str_modify_keep_cr() call from rb_str_update().
    It ends up calling either rb_str_drop_bytes() or rb_str_splice_0(),
    which already does checks if necessary.

    The extra call makes the string "independent". This is not always
    wanted, in other words, it can keep the same shared root when merely
    removing the leading part of a shared string.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6336

commit 9faa9ced9640d23fc5dc1efd635f6b8ebc1a3ceb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-09 14:13:42 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-09 15:47:24 +0900

    Support sub-library in builtin-loader

    Previously, it was supported in prelude.c, but has not followed up the
    builtin-loader system.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6344

commit 56e5210cdeda685b5948148b7ea5c72eac0b5e06
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-09-09 15:19:23 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-09 15:19:23 +0900

    More robust macro parser (#6343)

    I want to use more complicated macros with MJIT.  For example:

    ```
      # define SHAPE_MASK (((unsigned int)1 << SHAPE_BITS) - 1)
    ```

    This commit adds a simple recursive descent parser that produces an AST
    and a small visitor that converts the AST to Ruby.

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit be560332484c8893bec004f1250e48edcd4720e0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-09 11:52:57 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-09 14:23:39 +0900

    Move RDoc `--`/`++` directives to comments

commit 2dcaeb75ff0e0a2fbafc4df0df9d7be119235415
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-09 11:51:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-09 14:20:47 +0900

    Built-in function table sentinels do not need names

commit db0e0dad1171456253ebd899e7e878823923d3d8
  Author:     Kazuki Tsujimoto <kazuki@callcc.net>
  AuthorDate: 2022-09-09 14:00:27 +0900
  Commit:     Kazuki Tsujimoto <kazuki@callcc.net>
  CommitDate: 2022-09-09 14:00:27 +0900

    Fix unexpected "duplicated key name" error in paren-less one line pattern matching

    [Bug #18990]

commit 59eadf3d25b0f53e7570f98f1801737af642f328
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-09 11:35:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-09 11:36:15 +0900

    Ignore EACCES on Windows

commit 35cfc9a3bb0078c297eb70520216ad228f2083e1
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-09-09 06:09:50 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-09 06:09:50 +0900

    Remove as many unnecessary moves as possible (#6342)

    This commit does a bunch of stuff to try to eliminate as many
    unnecessary mov instructions as possible.

    First, it introduces the Insn::LoadInto instruction. Previously
    when we needed a value to go into a specific register (like in
    Insn::CCall when we're putting values into the argument registers
    or in Insn::CRet when we're putting a value into the return
    register) we would first load the value and then mov it into the
    correct register. This resulted in a lot of duplicated work with
    short live ranges since they basically immediately we unnecessary.
    The new instruction accepts a destination and does not interact
    with the register allocator at all, making it much more efficient.

    We then use the new instruction when we're loading values into
    argument registers for AArch64 or X86_64, and when we're returning
    a value from AArch64. Notably we don't do it when we're returning
    a value from X86_64 because everything can be accomplished with a
    single mov anyway.

    A couple of unnecessary movs were also present because when we
    called the split_load_opnd function in a lot of split passes we
    were loading all registers and instruction outputs. We no longer do
    that.

    This commit also makes it so that UImm(0) passes through the
    Insn::Store split without attempting to be loaded, which allows it
    can take advantage of the zero register. So now instead of mov-ing
    0 into a register and then calling store, it just stores XZR.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit e4f5296f065110fa83eb450d3a861253e76e534f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-31 09:39:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-09 01:33:53 +0900

    No longer bundle external library sources

commit 28030f7b543299b3f5af41a3c9cf445d23820d26
  Author:     YO4 <ysno@ac.auone-net.jp>
  AuthorDate: 2022-09-07 22:45:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-09 00:45:56 +0900

    eliminate magic number

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6328

commit 81e7573a64b0544da7172966b88e797033b1eae6
  Author:     YO4 <ysno@ac.auone-net.jp>
  AuthorDate: 2022-09-03 01:03:10 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-09 00:45:56 +0900

    win32.c additional fix: is_readable_console

    classic console(conhost.exe) reports an input with ALT+NUMPAD as VK_MENU, KeyUp, and uChar!=0.
    additional fix for #5634

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6328

commit 7a849e1903f3943351773190a1e39e0445b55204
  Author:     YO4 <ysno@ac.auone-net.jp>
  AuthorDate: 2022-09-03 00:53:09 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-09 00:45:56 +0900

    win32.c fix: is_readable_console

    UnicodeChar with lower byte == 0 has dropped accidentaly
    this is additional fix for #5634

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6328

commit e2ccb316b437104cd1734c378970d34f5305966d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-05 20:23:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-08 23:01:07 +0900

    [Bug #5317] Use `rb_off_t` instead of `off_t`

    Get rid of the conflict with system-provided small `off_t`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6329

commit 55fef084dac843caf155f03077773704b36e139e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-05 20:17:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-08 23:01:07 +0900

    [Win32] Remove dead code using `chsize`

    Already using `rb_w32_truncate` and `rb_w32_ftruncate`, and
    `HAVE_FTRUNCATE` has been added 14 years ago.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6329

commit b7fa78b0f3c42d698aff7d6003d839febcbb4740
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-09-08 21:07:43 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-09-08 22:02:21 +0900

    vm_objtostring: skip method lookup for T_STRING receivers

    We don't need it, and in string interpolation context
    that's the common case.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6334

commit cd1724bddeac5dd4c01ab0a2d527110fff9cf5f9
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-09-08 19:43:03 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-09-08 22:02:21 +0900

    rb_str_concat_literals: use rb_str_buf_append

    That's about 1.30x faster.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6334

commit e0cd466ae71cd483b73d28128df1a02dd52fcb92
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-08 19:10:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-08 20:44:35 +0900

    [rubygems/rubygems] Fix unused variable warning

    https://github.com/rubygems/rubygems/commit/ca8d47e53a

commit bcf82b7c26a88a2521715a38990f0ab081001190
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-08 15:36:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-08 18:22:47 +0900

    Process token IDs from id.def without id.h

    Fixes id.h error during updating ripper.c by `make after-update`.

    While it used to update id.h in the build directory, but was trying to
    update ripper.c in the source directory.  In principle, files in the
    source directory can or should not depend on files in the build
    directory.

commit a977c663123f7256f51201ed8390dc84adf63cf6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-08 15:25:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-08 18:18:56 +0900

    Generate token ID indexes in id.def

    Separate the logic accross the tables from the template view for
    id.h.

commit 7400628cb054a9a9651d69411a100fc9d518099f
  Author:     Xin Li <delphij@users.noreply.github.com>
  AuthorDate: 2022-09-08 17:37:37 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-08 17:37:37 +0900

    [Bug #18997] Don't define ruby_qsort when POSIX qsort_r is available

    The current code would define ruby_qsort as a wrapper of qsort_s
    when it is available. When both qsort_s and POSIX (GNU) qsort_r
    are available, we should call qsort_r directly instead, and
    the qsort_s wrapper is redundant.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6332

    Merged-By: nobu <nobu@ruby-lang.org>

commit 78af05ba0f29d1fc290dc24a6a5fb645386e7d62
  Author:     rm155 <rohitmenon@verizon.net>
  AuthorDate: 2021-07-28 01:47:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-08 14:31:42 +0900

    [ruby/forwardable] Freeze VERSION and FORWARDABLE_VERSION to improve Ractor-compliance

    https://github.com/ruby/forwardable/commit/c91f41f4fa

commit 70e6be2b055d78d3c475368d744c423564597f6e
  Author:     rm155 <rohitmenon@verizon.net>
  AuthorDate: 2021-07-20 10:48:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-08 14:09:06 +0900

    [ruby/ipaddr] Improve Ractor-compliance

    https://github.com/ruby/ipaddr/commit/73461724e5

commit e76a550876356093a0e48bd540ae80daafedcba0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-06 20:22:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-08 13:41:02 +0900

    [MSWin] Fix for non-Windows (cygwin/msys) BASERUBY

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6331

commit 26c4230404b62475813c50561751487735d6bbdd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-06 18:57:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-08 13:41:02 +0900

    [MSWin] Disable rubygems of BASERUBY

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6331

commit 332d29df5342996ce153e65c3096f1b9027afe01
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-08 11:49:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-08 11:52:16 +0900

    [DOC] non-positive `base` in `Kernel#Integer` and `String#to_i`

commit 24fd2f73d0835eea534225a6381551d591764002
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-07 14:13:04 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-08 11:25:03 +0900

    Resync Bundler & RubyGems

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6330

commit 2d57447ae80e0b0895d6d22d606391b48516ba93
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-07 19:07:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-07 19:07:24 +0900

    Fix missing replacement in 1f91dcdab3b

commit 1f91dcdab3b530dde93fa29fba8bf60683cd8056
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-06 15:15:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-07 14:33:25 +0900

    Define BOOTSTRAPRUBY from HAVE_BASERUBY

commit cac0dcfbffe630a0c763392358ca745007ae854d
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-07 14:26:29 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-07 14:26:58 +0900

    Fix typo

    I meant the other one. Otherwise this option doesn't make sense.

commit 496bdf01e25cb13f0b676d0f23f47bb04907b1f6
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-07 10:46:49 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-07 14:14:01 +0900

    Adjust pch_status for --mjit=pause

    to let mjit_add_iseq_to_process work

commit f0661bf3a04a3edfe157462f87e2c588dca955ad
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-07 10:40:22 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-07 10:40:23 +0900

    Skip early mjit_add_iseq_to_process on --mjit=pause

commit e6b47f2fb077d1a3bcef9100846b633989a93cfe
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-07 10:27:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-07 10:37:01 +0900

    Now Psych uses the proleptic Gregorian calendar

commit f24c65ea7e68d97e92e5ccdb0e1a95c017dc5ebf
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-07 10:25:16 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-07 10:25:46 +0900

    Skip calling check_unit_queue with mjit_opts.custom

    fixing the behavior of b726c06e7eeafff52e368179dbe79a11b1aff975

commit 6a43245e6cda89eddd105f5a6e0182a7229657af
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-06 15:13:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-07 10:08:24 +0900

    Use BOOTSTRAPRUBY_COMMAND instead of fake.rb directly

commit 3a575d13d55751c6b5f34d26a8d87a4c449ddaeb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-06 13:45:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-07 10:08:23 +0900

    Ensure BASERUBY when cross-compiling

commit 1b034d66f529d662b0ae61cba1fb8622dac3169c
  Author:     Chad Wilson <chadw@thoughtworks.com>
  AuthorDate: 2022-09-04 01:18:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-07 09:51:57 +0900

    [ruby/psych] Bump snakeyaml from 1.28 to 1.31

    Resolves CVE-2022-25857, among other fixes.

    https://github.com/ruby/psych/commit/918cd25d37

commit cbdde8e0c574f19e170c3de05dd0bbd276acb741
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-09 09:22:53 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-07 09:44:14 +0900

    [ruby/psych] Dump Date/DateTime as proleptic Gregorian date as well as Time

    Fix ruby/psych#572

    https://github.com/ruby/psych/commit/92304269bc

commit bfa6d0f6d75f375e4055fb7f5af8194aa1de5947
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-07 09:41:28 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-07 09:41:28 +0900

    fixup 8cd6f2a0872e74c6cc089d2a4f8140483080c67a

      we should handle ensure block when omit this test

commit d5752f73d2288f5ccce0ff6015d929227b914588
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-07 06:21:00 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-07 06:21:13 +0900

    Add another method for debugging

commit 4c1f6750f2c333be2adf7ceab644598b230606d2
  Author:     Antonio Paulino <tonnyarauujo@gmail.com>
  AuthorDate: 2022-08-30 04:00:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-07 06:18:58 +0900

    [rubygems/rubygems] Fix: Gem info bug with version flag

    https://github.com/rubygems/rubygems/commit/e4cee1f975

commit 87ef90909b7656aaf8bb968376b879f9aa207a0b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-07 05:54:37 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-07 05:55:55 +0900

    Drop an unused method for debugging

    and add another useful one instead.

commit 51022b8e06ae81daa8a84a1122f329119ed95d31
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-07 00:04:28 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-07 00:04:28 +0900

    Exit status macros need sys/wait.h on FreeBSD

commit 1f77cc3894d42b6c063ce640b27ae5bb24bc8b55
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-06 13:46:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-06 17:11:47 +0900

    [rubygems/rubygems] Fix `set` not being found when running specs on dev rubies

    https://github.com/rubygems/rubygems/commit/c5b2960388

commit c664264c0713861e55c82b2dced9cc37977392ad
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-05 14:05:44 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-06 17:11:47 +0900

    [rubygems/rubygems] Add `syntax_suggest` to exemption list in setup specs

    https://github.com/rubygems/rubygems/commit/f9a51e4380

commit 29bc3e0daf7fcf49a7a37afc0a2eeb62f567800a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-06 16:24:55 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-06 16:27:12 +0900

    omit random failure in bootstraptest with freebsd

      http://rubyci.s3.amazonaws.com/freebsd13/ruby-master/log/20220902T063002Z.fail.html.gz

commit 8cd6f2a0872e74c6cc089d2a4f8140483080c67a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-06 16:02:06 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-06 16:27:12 +0900

    omit random failure tests with FreeBSD

      http://rubyci.s3.amazonaws.com/freebsd13/ruby-master/log/20220906T043002Z.fail.html.gz
      http://rubyci.s3.amazonaws.com/freebsd13/ruby-master/log/20220905T103002Z.fail.html.gz

commit 03ae415d500ba6fa0d990971485bab52d5e2f5a7
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-06 16:22:43 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-06 16:22:43 +0900

    Fix typo

commit 3f9125aaba7432ab96926f98619297991a40f3bf
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-06 16:09:29 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-06 16:09:29 +0900

    Update c_32.rb

commit 4214023309ec68f49b30d8a1ee691b05ce75e287
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-06 15:59:05 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-06 15:59:08 +0900

    Run mjit-bindgen again

    I'm thinking about Ruby builtin code instead of doing this.
    It'll be hopefully more portable and easier because the same C code could
    handle both 32bit and 64bit.

commit b726c06e7eeafff52e368179dbe79a11b1aff975
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-06 13:31:07 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-06 15:52:02 +0900

    Allow hooking a different method after --mjit=pause

    The interface is similar to RubyVM::ISeq.translate; it's used if defined.
    Same as --mjit=pause, this is an undocumented feature for MJIT experiments.

commit 341b40bd0c2228a7759852b82af1fb11c15751e6
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-06 12:57:24 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-06 15:50:14 +0900

    Cache RubyVM::MJIT constants

    for performance

commit 5b3bd91fcba7224e9ece54c862dc96461cf4bf79
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-06 12:33:51 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-06 15:45:10 +0900

    Add an option to lazily boot MJIT for experiments

    You may use `RUBYOPT=--mjit=pause irb` to play with RubyVM::MJIT::C,
    control the boot timing of MJIT, or customize the implementation while
    paused. It's an undocumented feature for such experiments.

commit f6925fab853ffc1872038f33d93e4e5c5379b4db
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-06 11:43:46 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-06 15:42:02 +0900

    Do not fork the process on --mjit-wait

    fork is for parallel compilation, but --mjit-wait cancels it.
    It's more useful to not fork it for binding.irb, debugging, etc.

commit f4dbfa0f04448386a662611682adf6b2219089a4
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-06 15:40:12 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-06 15:40:13 +0900

    Skip test_redefinition_mismatch on trunk-mjit for now

    Investigating:
    http://ci.rvm.jp/logfiles/brlog.trunk-mjit.20220906-025646
    which is not immediately reproducible on my laptop.

commit 2657d8efb9d38761c1e09f54fadea41fcc08d090
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-06 10:40:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-06 10:41:20 +0900

    [ruby/set] Bump version to 1.0.3

    https://github.com/ruby/set/commit/e2419f2d30

commit 63ed61e322178eebb425b7a9ad7f84dc52ef6c6f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-06 00:37:07 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-06 00:39:37 +0900

    Deal with MJIT_FORCE_ENABLE miniruby

    http://ci.rvm.jp/results/trunk-mjit@phosphorus-docker/4225469

commit 27eb7158ee2f51902f4585a20cfbc9705c6b332d
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-06 00:23:53 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-06 00:26:34 +0900

    Workaround unused variable warning by builtin

    ```
    <internal:mjit_compiler>:43: warning: assigned but unused variable - iseq_addr
    <internal:mjit_compiler>:48: warning: assigned but unused variable - ci_addr
    <internal:mjit_compiler>:53: warning: assigned but unused variable - ci_addr
    <internal:mjit_compiler>:58: warning: assigned but unused variable - ci_addr
    <internal:mjit_compiler>:63: warning: assigned but unused variable - ci_addr
    <internal:mjit_compiler>:64: warning: assigned but unused variable - cc_addr
    <internal:mjit_compiler>:65: warning: assigned but unused variable - iseq_addr
    <internal:mjit_compiler>:75: warning: assigned but unused variable - operands_addr
    <internal:mjit_compiler>:80: warning: assigned but unused variable - compiled_body_addr
    <internal:mjit_compiler>:81: warning: assigned but unused variable - captured_body_addr
    <internal:mjit_compiler>:87: warning: assigned but unused variable - body_addr
    <internal:mjit_compiler>:88: warning: assigned but unused variable - is_entries_addr
    <internal:mjit_compiler>:100: warning: assigned but unused variable - opes_addr
    <internal:mjit_compiler>:110: warning: assigned but unused variable - cc_entries_addr
    ```

    It's clearly a false positive. Until we fix builtin itself, I'd like to
    suppress this.

commit 6bc6c8d03184e29cc72df42d6487e39817d2ed1b
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-09-05 15:54:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-05 21:21:15 +0900

    [rubygems/rubygems] Remove no longer needed `fiddle` hacks

    RubyInstaller has released patch versions backporting their changes to
    not load `fiddle` on boot, so all these are no longer necessary.

    https://github.com/rubygems/rubygems/commit/05a307deb2

commit a8a7c9d05d2f9a4f49b43a42d8430faa37c4a4c6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-05 18:21:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-05 19:36:21 +0900

    [DOC] [Bug #17120] Fix match-reset `\K`

commit 113581d288496f8f3e60851b76b751c081c87213
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-05 19:05:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-05 19:05:45 +0900

    [ruby/set] Set version to 1.0.3.dev for fixing rubygems/bundler tests

    https://github.com/ruby/set/commit/40dda15d7f

commit 915cbdb226ebc618f78df05527e82de392aa4152
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-05 18:02:13 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-05 18:02:17 +0900

    Stop testing MJIT on s390x

    It didn't work either.
    http://rubyci.s3.amazonaws.com/s390x/ruby-master/log/20220905T080003Z.fail.html.gz

commit cb26917d1cfa6a02d5e1e951ebec4e9c886902cf
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-05 17:17:12 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-05 17:25:00 +0900

    Drop Solaris support for MJIT

    I tried to debug:
    http://rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20220905T070005Z.fail.html.gz
    but I don't have sudo privilege to install dependencies such as xz on
    that machine. Thus I can't extract a prebuilt libclang binary.

    Anyway, if we find out ABI is different from x86_64 / aarch64, we'd like
    to have sparc CI associated to GitHub to run `make mjit-bindgen`, but we
    can't. Supporting this could be too hard, so I'm leaving it for now.

commit 06eb9af8c0d6f415f96a81d4af5c7f8fe3c14ebc
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-05 17:06:37 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-05 17:06:37 +0900

    Add mjit-bindgen workflow (#6327)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit c2986f7d28539ed81085272f17c2ce53435a06d1
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-05 16:26:24 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-05 16:27:49 +0900

    Fix warnings from private_constant

    `private_constant *constants` seems to be warned for some reason

commit d77c037a16e524acf3804f484b6d2c231e3c3880
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-05 15:25:26 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-05 15:25:35 +0900

    Automatically detect 64bit platforms

commit 967fe334bb7f503788816df475970b8b0c3ffb3e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-05 15:22:51 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-05 15:23:03 +0900

    s390x seems like a 64bit architecture

commit 3eca1e438db6fabaa7cd5e5a7120da147ac0ec26
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-05 09:15:30 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-05 14:37:12 +0900

    Merge https://github.com/rubygems/rubygems/commit/16c3535413afebcdbab7582c6017c27b5da8a8dc

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6326

commit 3767c6a90d8970f9b39e9ed116a7b9bbac3f9f26
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-05 13:53:46 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-05 13:53:46 +0900

    Ruby MJIT (#6028)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 277498e2a2b62b564e3d39ca54aa15b6e8a2c41a
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-05 13:44:52 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-05 13:45:13 +0900

    Attempt to fix test-bundler

    f7cf641469161c3770b58f79e08e312512212aa8 broke spec/bundler/install/gems/resolving_spec.rb:356.
    This line seems to impact that test, so I slightly modified the
    implementation for that spec's case.

commit 45fe7f757522ed7d1d3ec754da59d41d45dd6bab
  Author:     Mike Dalessio <mike.dalessio@gmail.com>
  AuthorDate: 2022-09-04 02:30:07 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-05 11:43:14 +0900

    [rubygems/rubygems] Feature: `bundle add` supports `--path` option

    https://github.com/rubygems/rubygems/commit/32bee01fbe

commit f7cf641469161c3770b58f79e08e312512212aa8
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-09 17:40:23 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-05 11:43:14 +0900

    [rubygems/rubygems] Fix resolution hanging on musl platforms

    After recent musl support was added, Bundler started hanging in musl
    platforms. I identified the issue where valid candidates were being
    filtered out because their platform was specified as a string, and thus
    `Gem::Platform.match_spec?` which under the hood ends up calling
    `Gem::Platform#===` would return `nil`, because it does not support
    comparing platforms to strings.

    In particular, `Bundler::EndpointSpecification`'s platform coming from
    the API was not instantiated as a `Gem::Platform`, hence the issue.

    Also, this spec surfaced another issue where a bug corrected in
    `Gem::Platform#match_platforms` had not been yet backported to Bundler.
    So this commit also backports that to get the spec green across RubyGems
    versions.

    Finally, the fix in `Bundler::EndpointSpecification` made a realworld
    spec start failing. This spec was faking out `rails-4.2.7.1` requirement
    on Bundler in the `Gemfile.lock` file to be `>= 1.17, < 3` when the real
    requirement is `>= 1.17, < 2`. Due to the bug in
    `Bundler::EndpointSpecification`, the real requirement provided by the
    compact index API (recorded with VCR) was being ignored, and the
    `Gemfile.lock` fake requirement was being used, which made the spec
    pass. This is all expected, and to fix the issue I changed the spec to
    be really realworld and don't fake any Bundler requirements.

    https://github.com/rubygems/rubygems/commit/faf4ef46bc

commit 1420333455ba335f46887ee7a06c4ee95faa37ad
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-05 11:25:42 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-05 11:25:42 +0900

    Fix fake.rb expansion from preprocessed version.h

commit 85a483169f8381bec08ff2c9a9fc66167fc8a84a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-05 11:09:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-05 11:16:20 +0900

    Use cross compiling settings as fake.rb for snapshots

commit 68a092a4691efc8aba9a8ae7b27c2ad51c840bf9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-05 11:00:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-05 11:16:20 +0900

    Set fake.rb variables by command line arguments

    Then fallbacks to preprocessed version.h.

commit f6d569b7c0ae7cb5e08534330cdf94572a12e869
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-05 10:21:56 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-05 10:22:25 +0900

    Call appropriate hooks on MJIT's fork

    This takes care of signal_self_pipe and other things.

commit 76664905a589416739a13241e7b8535d78984723
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-04 23:49:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-04 23:59:55 +0900

    Ignore fake.rb for snapshot

commit bbe5ec78463f8d6ef2e1a3571f17357a3d9ec8e4
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-09-04 16:44:59 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-09-04 18:16:11 +0900

    rb_int_range_last: properly handle non-exclusive range

    [Bug #18994]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6324

commit cfa40e225adb30b777ef50d9d8dc15a51e3d2797
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-04 12:01:50 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-04 12:01:51 +0900

    Prefer stdbool for MJIT options

    same motivation as d6f21b308bcff03e82f8b3dbf11a852ce111b3b3

commit 45004bba6b4fa22429b1c45f13444a894874c41e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-03 22:24:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-04 02:07:11 +0900

    fake.rb needs id.h

commit 0111dc5b79a8cfe81f467cfcf589dd4042e0384c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-03 23:47:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-03 23:47:46 +0900

    [DOC] Escape backqoute method not to be converted to smart quotes

commit baf050100d44ffb10afb345543db4a6b20f1b285
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-03 23:26:07 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-03 23:26:07 +0900

    [DOC] Remove extra page-dir prefix to fix broken link

commit fe865c5262bb2daea64f488b9247780e5fae7ac7
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-09-03 22:36:44 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-03 22:36:44 +0900

    [DOC] Enhanced RDoc for Time (#6320)

    Treats:
        #yday
        #dst?
        #zone
        #to_a
        #strftime

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 2767cb282531be10c6393d3d7c48fcdd2935ca4d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-03 21:57:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-03 21:57:17 +0900

    Now fake.rb is needed to prepare sources

commit a01271c1c46079cb6f7f32051f1253cf3d9bca6b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-03 21:37:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-03 21:37:24 +0900

    BOOTSTRAPRUBY needs fake.rb when cross-compiling

commit 7c67d0fd79a3cffe857587fa3cf576b611023840
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-02 23:41:41 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-03 19:25:29 +0900

    Make sources by BASERUBY if available instead of miniruby

commit 8f13d75a8c959abab6964a47c99e333fdce3201c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-03 03:31:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-03 19:20:03 +0900

    Generate the prelude sources by common-srcs

commit 6f5305e0d2b4711b186ece8160716c7f9439ea8d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-03 01:08:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-03 19:20:03 +0900

    Exclude LIBPATHENV wrapper from PREP

commit 21a5da3c4c803987c48bc9ca588948c50715631a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-03 03:21:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-03 19:20:03 +0900

    Check if MSys shell can run a command with a drive letter

commit d8f81ffdff668b457339885c15d7cee785ad38be
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-03 14:45:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-03 19:20:03 +0900

    builtin.c includes mini_builtin.c when cross-compiling

commit 652a624891eae34c3ba7b60eeb5419f0434f8e5e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-03 15:10:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-03 19:19:55 +0900

    miniruby may not be built when cross-compiling

commit c4f2f2ef2b1ad430deeaca9fd23bf433bc63160b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-03 16:20:58 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-03 18:42:42 +0900

    Reuse macros defined in Makefile.in

commit bc5b9be1ee44817614bc8311e671fc79ca730625
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-02 22:41:07 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-03 15:01:05 +0900

    Move duplicate dependencies

commit c8c90e459e37632fee74718d77c63c22814268f7
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-09-03 04:11:53 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-03 04:11:53 +0900

    Enhanced RDoc for Time [DOC]  (#6319)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 5044832fec85514b69c0fcb3524efd2e3e435087
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-02 22:11:12 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-02 22:11:12 +0900

    `w_bigfixnum` is used only for large FIXNUM

commit 0d2422cf63ff330e372613894995e762d122e6b7
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-02 14:26:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-02 16:09:51 +0900

    [ruby/reline] Workaround for padding width with Alacritty on macOS

    https://github.com/ruby/reline/commit/fb4136c8a7

commit 7ff50ee35c01dbd8d21e395261290890a669de82
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-02 14:25:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-02 16:09:50 +0900

    [ruby/reline] Added some of abstruct methods for cursor

    https://github.com/ruby/reline/commit/f5fa30d595

commit 740d530bb007f48ed53aa71f341f201745327c39
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-02 15:30:46 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-02 15:30:46 +0900

    Added doc about `test-syntax-suggest`

commit e7a8e3e91f817171176c8b8294f33e5acd3354e2
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-02 15:25:46 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-02 15:25:54 +0900

    Added entries about test-bundler-parallel and BUNDLER_SPECS

commit b5cf3564471af6e11760bf381251f918cdcd7398
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-31 13:20:40 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-02 14:33:23 +0900

    Consider Complex from Complex cases

    The assertions that "an argument of a Complex constructor must not be
    a Complex" may not hold for some Numeric objects.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6317

commit 9212d963070612e669c40e5fde7954f19d648002
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-31 11:01:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-02 14:33:23 +0900

    [Bug #18937] Coerce non-real non-Numeric into Complex at comparisons

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6317

commit a9b59e24f49f669f6ad2f3238c4c518027a7f72d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-31 10:59:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-02 14:33:23 +0900

    Turn `f_zero_p` to `bool`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6317

commit e896b338605914df70c1c34274f5147dff6f71a3
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-02 12:05:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-02 12:05:49 +0900

    Test --enable-yjit on aarch64 as well (#6313)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit fb5fa84f83529c8769df3fff00a59180d6485bc3
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-02 12:05:13 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-02 12:05:13 +0900

    Remove workarounds for slow compilation on Cirrus (#6310)

    Remove workarounds for slow compilation

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 9b48edd9322e7e0f6453303a62a83caad40a9fed
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-09-02 11:14:23 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-02 11:14:23 +0900

    Allow comparing against 64-bit immediates on x86 (#6314)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit fc2d9fedc2cc21f25608034518d75a8337301e9a
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-08-26 07:01:27 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-09-02 09:36:20 +0900

    Use getblockparamproxy with branch

    A common pattern when the block is an explicit parameter is to branch
    based on the block parameter instead of using `block_given?`, for
    example `block.call if block`.

    This commit checks in the peephole optimizer for that case and uses the
    getblockparamproxy optimization, which avoids allocating a proc for
    simple cases, whenever a getblockparam instruction is followed
    immediately by branchif or branchunless.

        ./miniruby --dump=insns -e 'def foo(&block); 123 if block; end'

        == disasm: #<ISeq:foo@-e:1 (1,0)-(1,34)> (catch: FALSE)
        local table (size: 1, argc: 0 [opts: 0, rest: -1, post: 0, block: 0, kw: -1@-1, kwrest: -1])
        [ 1] block@0<Block>
        0000 getblockparamproxy                     block@0, 0                (   1)[LiCa]
        0003 branchunless                           8
        0005 putobject                              123
        0007 leave                                  [Re]
        0008 putnil
        0009 leave                                  [Re]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6286

commit 1cc97412cd8168d897b1b361c8fa2cf792a51729
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-07-27 10:19:44 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-09-02 07:20:49 +0900

    Remove rb_iseq_each

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6187

commit 679ef34586e7a43151865cb7f33a3253d815f7cf
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-08-11 02:35:48 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-09-02 07:20:49 +0900

    New constant caching insn: opt_getconstant_path

    Previously YARV bytecode implemented constant caching by having a pair
    of instructions, opt_getinlinecache and opt_setinlinecache, wrapping a
    series of getconstant calls (with putobject providing supporting
    arguments).

    This commit replaces that pattern with a new instruction,
    opt_getconstant_path, handling both getting/setting the inline cache and
    fetching the constant on a cache miss.

    This is implemented by storing the full constant path as a
    null-terminated array of IDs inside of the IC structure. idNULL is used
    to signal an absolute constant reference.

        $ ./miniruby --dump=insns -e '::Foo::Bar::Baz'
        == disasm: #<ISeq:<main>@-e:1 (1,0)-(1,13)> (catch: FALSE)
        0000 opt_getconstant_path                   <ic:0 ::Foo::Bar::Baz>      (   1)[Li]
        0002 leave

    The motivation for this is that we had increasingly found the need to
    disassemble the instructions between the opt_getinlinecache and
    opt_setinlinecache in order to determine the constant we are fetching,
    or otherwise store metadata.

    This disassembly was done:
    * In opt_setinlinecache, to register the IC against the constant names
      it is using for granular invalidation.
    * In rb_iseq_free, to unregister the IC from the invalidation table.
    * In YJIT to find the position of a opt_getinlinecache instruction to
      invalidate it when the cache is populated
    * In YJIT to register the constant names being used for invalidation.

    With this change we no longe need disassemly for these (in fact
    rb_iseq_each is now unused), as the list of constant names being
    referenced is held in the IC. This should also make it possible to make
    more optimizations in the future.

    This may also reduce the size of iseqs, as previously each segment
    required 32 bytes (on 64-bit platforms) for each constant segment. This
    implementation only stores one ID per-segment.

    There should be no significant performance change between this and the
    previous implementation. Previously opt_getinlinecache was a "leaf"
    instruction, but it included a jump (almost always to a separate cache
    line). Now opt_getconstant_path is a non-leaf (it may
    raise/autoload/call const_missing) but it does not jump. These seem to
    even out.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6187

commit 7064d259bc20050d467874e5622082c29529a2d3
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-02 06:12:24 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-02 06:12:24 +0900

    Update NEWS.md for YJIT

commit 064944c9029fae0552f120ea586f4f83ce206ec6
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-02 05:38:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-02 05:38:38 +0900

    Stop using a callee-saved register for scratch0 on aarch64 (#6312)

    [Bug #18985]

    * Callee-save x22 for aarch64

    * Just use a caller-saved register

    * Update yjit/src/backend/arm64/mod.rs

    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>
    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 4144abee42f4ebd73c98d772e3b2530598e584c8
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-02 03:55:39 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-02 03:55:39 +0900

    Let --yjit-dump-disasm=all dump ocb code as well (#6309)

    * Let --yjit-dump-disasm=all dump ocb code as well

    * Use an enum instead

    * Add a None Option to DumpDisasm (#444)

    * Add a None Option to DumpDisasm

    * Update yjit/src/asm/mod.rs

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

    * Fix a build failure

    * Use only a single name

    * Only None will be a disabled case

    * Fix cargo test

    * Fix --yjit-dump-disasm=all to print outlined cb

    Co-authored-by: Jimmy Miller <jimmyhmiller@gmail.com>
    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 462a8be5112f8c4e621d106304ac617ebcf39eb0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-01 19:54:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-01 20:57:30 +0900

    VCS#revision_header: Make arguments optional

commit f67ab7f30c837ce4b9c2ae39d7c189413fac6dff
  Author:     Imir Kiyamov <makketagg@gmail.com>
  AuthorDate: 2022-05-20 22:32:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-01 19:47:39 +0900

    [ruby/did_you_mean] Fixed correction duplicates in VariableNameChecker

    https://github.com/ruby/did_you_mean/commit/c3fc412f6f

commit 55b1600987413949fe39507f703d2f51dab56eb6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-31 19:56:57 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-01 18:45:09 +0900

    Update revision.h in packages using `VCS#revision_header`

commit ee09f75a6ba2c485260f07eb7d9382850def56bf
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-31 19:51:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-01 18:01:40 +0900

    Extract `VCS#revision_header`

commit 762fca9b12b9cfb0159404c95ee4275100169c17
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-31 21:53:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-09-01 18:01:40 +0900

    Prefer `File` class methods to write a string

commit f3becd73e30b4049abfe29cba1bfe57ec8e78f65
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-01 17:02:52 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-01 17:02:55 +0900

    Ignore test libraries like assert_ractor from did_you_mean

commit 59e8569cf938e0e449fd649b564da995ffb67470
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-09-01 14:14:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-01 16:36:16 +0900

    [ruby/reline] Support dumb terminal

    The "dumb" terminal is considered only on MSys tty now.  However, the
    `TERM` feature has been used on many Unix-like systems for decades,
    not MSys specific.

    https://github.com/ruby/reline/commit/53fd51ab62

commit f229b36087f1b387d77af8f3fa50f9bffd2fd44e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-09-01 16:15:51 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-09-01 16:15:51 +0900

    Fix test fail with assert_ractor outside of ruby/ruby repo

      Revert 806583c093ecc2d67830f0a8f0d94decf0ed71e5

commit aa5c1a048385f31307165bd88e2eced89c8298a1
  Author:     なつき <i@ntk.me>
  AuthorDate: 2022-09-01 02:33:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-01 15:01:40 +0900

    [rubygems/rubygems] Support non gnu libc arm-linux-eabi platforms

    https://github.com/rubygems/rubygems/commit/fcf62799f2

commit aded6971ad37a75e4eb0493159c19c94971e80e4
  Author:     なつき <i@ntk.me>
  AuthorDate: 2022-08-31 14:08:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-01 15:01:40 +0900

    [rubygems/rubygems] Support non gnu libc arm-linux-eabi platforms

    https://github.com/rubygems/rubygems/commit/394d7a6fc9

commit 941e9be0d9c44db5932386152b42f0fd44079420
  Author:     Mau Magnaguagno <maumagnaguagno@gmail.com>
  AuthorDate: 2022-02-22 20:47:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-09-01 14:01:37 +0900

    [ruby/reline] Remove loose operation in Dialog#render_each_dialog

    https://github.com/ruby/reline/commit/a6d1c917ce

commit a0d2320f30109bbfcb36d3ece1c67cad2f08541c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-09-01 09:16:29 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-01 09:16:29 +0900

    Add a document about YJIT's Rust version

commit 811ca75f3bdea4fb6d8271d848f3b79f20432880
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-31 18:37:07 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-09-01 07:09:22 +0900

    Remove -j option

    Close https://github.com/ruby/ruby/pull/6307

    Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>

commit d41be1ac37a91f901a0030bfd10979240621db4e
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-09-01 06:36:22 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-01 06:36:22 +0900

    [DOC] Enhanced RDoc for Time (#6308)

    More on timezones.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit be55b77cc75fe36b484a3feb6ad4178630d73242
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-09-01 04:44:26 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-09-01 04:44:26 +0900

    Better b.cond usage on AArch64 (#6305)

    * Better b.cond usage on AArch64

    When we're lowering a conditional jump, we previously had a bit of
    a complicated setup where we could emit a conditional jump to skip
    over a jump that was the next instruction, and then write out the
    destination and use a branch register.

    Now instead we use the b.cond instruction if our offset fits (not
    common, but not unused either) and if it doesn't we write out an
    inverse condition to jump past loading the destination and
    branching directly.

    * Added an inverse fn for Condition (#443)

    Prevents the need to pass two params and potentially reduces errors.

    Co-authored-by: Jimmy Miller <jimmyhmiller@jimmys-mbp.lan>

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
    Co-authored-by: Jimmy Miller <jimmyhmiller@jimmys-mbp.lan>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 32a059151507876de804adbfbf4926937333e091
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2017-08-30 23:23:38 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-31 18:00:45 +0900

    Move macros from version.h to version.c

    Moved the contents of `ruby_description` and `ruby_copyright` which
    are never used in the other places.

commit 2b967cd4b73425681877c247e5731353e171a3ef
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2017-08-30 22:49:53 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-31 17:56:31 +0900

    Let fake.rb allow newlines in expanded strings

commit 576bdec03f0d58847690a0607c788ada433ce60f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-30 18:12:08 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-31 17:27:59 +0900

    [Bug #18973] Promote US-ASCII to ASCII-8BIT when adding 8-bit char

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6306

commit 9dc60653db186b1ae9400ed75b413a07728ce6ff
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-30 14:16:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-31 17:27:59 +0900

    Extract `update_coderange` macro

    Which restarts scanning the code range in unscanned part.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6306

commit dc66f7246abd06e2e5d6e9b8c02403b05885283e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-31 15:24:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-31 15:31:48 +0900

    Scripts under libexec may not be considered to be placed in bin

commit 08c3d08a18b29c46156ca3370c682c03696448a7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-31 15:23:50 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-31 15:31:47 +0900

    `ruby_init_setproctitle` declaration has moved to internal/missing.h

commit 739380c97d2c6440da0d5ae07f9291b1e8cde1b2
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-08-20 18:25:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-31 12:37:49 +0900

    [ruby/net-protocol] Improve BufferedIO performance

    `BufferedIO` is a bit inefficient for reading large responses because
    it use the classic `buffer.slice!` technique which cause a lot of
    unnecessary string copying.

    This is particularly visible on line based protocol when reading
    line by line.

    Instead of repeatedly shifting the string, we can keep track of
    which offset we're at, to know how many bytes are left in the buffer.

    This change also open the door to further optimization by increasing
    the buffer size, as previously `slice!` would get slower the larger
    the buffer is.

    Benchmark results:

    ```
    === 1k ===
    Warming up --------------------------------------
                      1k     1.234k i/100ms
                  1k opt     1.283k i/100ms
    Calculating -------------------------------------
                      1k     12.615k (± 0.9%) i/s -     64.168k in   5.086995s
                  1k opt     12.856k (± 0.9%) i/s -     65.433k in   5.090051s

    Comparison:
                      1k:    12615.2 i/s
                  1k opt:    12856.0 i/s - 1.02x  (± 0.00) faster

    === 10k ===
    Warming up --------------------------------------
                     10k     1.165k i/100ms
                 10k opt     1.269k i/100ms
    Calculating -------------------------------------
                     10k     11.550k (± 2.4%) i/s -     58.250k in   5.046378s
                 10k opt     12.736k (± 1.0%) i/s -     64.719k in   5.081969s

    Comparison:
                     10k:    11550.3 i/s
                 10k opt:    12736.3 i/s - 1.10x  (± 0.00) faster

    === 100k ===
    Warming up --------------------------------------
                    100k   809.000  i/100ms
                100k opt   926.000  i/100ms
    Calculating -------------------------------------
                    100k      8.054k (± 3.0%) i/s -     40.450k in   5.028299s
                100k opt      9.286k (± 2.2%) i/s -     47.226k in   5.088841s

    Comparison:
                    100k:     8053.6 i/s
                100k opt:     9285.5 i/s - 1.15x  (± 0.00) faster

    === 1M ===
    Warming up --------------------------------------
                      1M   249.000  i/100ms
                  1M opt   315.000  i/100ms
    Calculating -------------------------------------
                      1M      2.448k (± 2.5%) i/s -     12.450k in   5.089744s
                  1M opt      3.119k (± 2.6%) i/s -     15.750k in   5.053772s

    Comparison:
                      1M:     2447.8 i/s
                  1M opt:     3118.8 i/s - 1.27x  (± 0.00) faster
    ```

    Profiling before (1MB responses):

    ```
    ==================================
      Mode: wall(1000)
      Samples: 5276 (0.00% miss rate)
      GC: 394 (7.47%)
    ==================================
         TOTAL    (pct)     SAMPLES    (pct)     FRAME
          1622  (30.7%)        1622  (30.7%)     IO#wait_readable
           777  (14.7%)         777  (14.7%)     IO#read_nonblock
           365   (6.9%)         365   (6.9%)     (sweeping)
          2705  (51.3%)         364   (6.9%)     Net::BufferedIO#rbuf_fill
           264   (5.0%)         264   (5.0%)     String#index
           223   (4.2%)         223   (4.2%)     String#sub
           221   (4.2%)         221   (4.2%)     String#slice!
           185   (3.5%)         185   (3.5%)     String#split
           108   (2.0%)         108   (2.0%)     IO#write_nonblock
           101   (1.9%)         101   (1.9%)     String#downcase
            66   (1.3%)          66   (1.3%)     Net::BufferedIO#LOG
            57   (1.1%)          57   (1.1%)     String#count
            51   (1.0%)          51   (1.0%)     String#to_s
           391   (7.4%)          50   (0.9%)     Net::HTTPGenericRequest#write_header
            50   (0.9%)          50   (0.9%)     String#capitalize
            49   (0.9%)          49   (0.9%)     Array#join
            47   (0.9%)          47   (0.9%)     String#b
           106   (2.0%)          36   (0.7%)     Net::HTTPHeader#set_field
            34   (0.6%)          34   (0.6%)     Module#===
            33   (0.6%)          33   (0.6%)     String#[]
           140   (2.7%)          29   (0.5%)     Net::BufferedIO#write0
            29   (0.5%)          29   (0.5%)     (marking)
           281   (5.3%)          27   (0.5%)     Net::BufferedIO#rbuf_consume
          1195  (22.6%)          25   (0.5%)     Net::HTTPResponse#read_body
          1024  (19.4%)          25   (0.5%)     Net::HTTPResponse.each_response_header
            86   (1.6%)          24   (0.5%)     Net::HTTPHeader#set_field
            23   (0.4%)          23   (0.4%)     Net::HTTP#proxy_uri
            51   (1.0%)          23   (0.4%)     Net::HTTPHeader#initialize_http_header
          2225  (42.2%)          22   (0.4%)     Net::BufferedIO#readuntil
            20   (0.4%)          20   (0.4%)     Regexp#===
    ```

    Profiling after (1MB responses):

    ```
    ==================================
      Mode: wall(1000)
      Samples: 15180 (0.00% miss rate)
      GC: 1688 (11.12%)
    ==================================
         TOTAL    (pct)     SAMPLES    (pct)     FRAME
          4534  (29.9%)        4534  (29.9%)     IO#read_nonblock
         10650  (70.2%)        3944  (26.0%)     Net::HTTPOpt::BufferedIOOpt#rbuf_fill
          2101  (13.8%)        2101  (13.8%)     IO#wait_readable
          1442   (9.5%)        1442   (9.5%)     (sweeping)
           360   (2.4%)         360   (2.4%)     String#sub
           312   (2.1%)         312   (2.1%)     String#split
           265   (1.7%)         265   (1.7%)     String#bytesize
           246   (1.6%)         246   (1.6%)     (marking)
           151   (1.0%)         151   (1.0%)     IO#write_nonblock
           125   (0.8%)         125   (0.8%)     String#downcase
           116   (0.8%)         116   (0.8%)     String#index
           113   (0.7%)         113   (0.7%)     Module#===
           162   (1.1%)          89   (0.6%)     Net::HTTPOpt::BufferedIOOpt#rbuf_consume_all_shareable!
           158   (1.0%)          65   (0.4%)     Net::HTTPHeader#set_field
            63   (0.4%)          63   (0.4%)     String#capitalize
            63   (0.4%)          63   (0.4%)     BasicObject#equal?
            58   (0.4%)          58   (0.4%)     Regexp#match
            58   (0.4%)          58   (0.4%)     String#[]
           449   (3.0%)          56   (0.4%)     Net::HTTPGenericRequest#write_header
            53   (0.3%)          53   (0.3%)     String#to_s
            52   (0.3%)          52   (0.3%)     Net::HTTPOpt::BufferedIOOpt#LOG
            52   (0.3%)          52   (0.3%)     String#count
            44   (0.3%)          44   (0.3%)     String#byteslice
            44   (0.3%)          44   (0.3%)     Array#join
          1096   (7.2%)          42   (0.3%)     Net::HTTPResponse.each_response_header
          2617  (17.2%)          40   (0.3%)     Net::HTTPOpt::BufferedIOOpt#readuntil
           132   (0.9%)          30   (0.2%)     Net::HTTPOpt::BufferedIOOpt#rbuf_consume
            28   (0.2%)          28   (0.2%)     Regexp#===
            27   (0.2%)          27   (0.2%)     Net::HTTP#proxy_uri
          8862  (58.4%)          27   (0.2%)     Net::HTTPResponse#read_body
    ````

    Benchmark code:

    ```ruby

    require "fileutils"
    DIR = "/tmp/www"
    FileUtils.mkdir_p(DIR)
    HOST = "127.0.0.1"
    PORT = 8080
    CONF = <<~EOS
    daemon            off;
    worker_processes  2;

    events {
        worker_connections  128;
    }

    http {
        server_tokens off;
        charset       utf-8;

        server {
            server_name   localhost;
            listen        #{HOST}:#{PORT};

            keepalive_requests 10000000;
            keepalive_timeout 3600s;

            error_page    500 502 503 504  /50x.html;

            location      / {
                root      #{DIR};
            }

        }

    }
    EOS

    File.write(File.join(DIR, "1k.txt"), 'a' * 1024)
    File.write(File.join(DIR, "10k.txt"), 'a' * 1024 * 10)
    File.write(File.join(DIR, "100k.txt"), 'a' * 1024 * 100)
    File.write(File.join(DIR, "1M.txt"), 'a' * 1024 * 1024)

    File.write(File.join(DIR, "nginx.conf"), CONF)

    require "benchmark/ips"
    require "net/http"

    nginx_pid = Process.spawn('nginx', '-c', File.join(DIR, "nginx.conf"))

    module Net
      class HTTPOpt < HTTP

        class BufferedIOOpt < ::Net::BufferedIO  #:nodoc: internal use only
          def initialize(io, read_timeout: 60, write_timeout: 60, continue_timeout: nil, debug_output: nil)
            @io = io
            @read_timeout = read_timeout
            @write_timeout = write_timeout
            @continue_timeout = continue_timeout
            @debug_output = debug_output
            @rbuf = ''.b
            @rbuf_offset = 0
          end

          attr_reader :io
          attr_accessor :read_timeout
          attr_accessor :write_timeout
          attr_accessor :continue_timeout
          attr_accessor :debug_output

          def inspect
            "#<#{self.class} io=#{@io}>"
          end

          def eof?
            @io.eof?
          end

          def closed?
            @io.closed?
          end

          def close
            @io.close
          end

          #
          # Read
          #

          public

          def read(len, dest = ''.b, ignore_eof = false)
            LOG "reading #{len} bytes..."
            read_bytes = 0
            begin
              while read_bytes + rbuf_size < len
                if s = rbuf_consume_all_shareable!
                  read_bytes += s.bytesize
                  dest << s
                end
                rbuf_fill
              end
              s = rbuf_consume(len - read_bytes)
              read_bytes += s.bytesize
              dest << s
            rescue EOFError
              raise unless ignore_eof
            end
            LOG "read #{read_bytes} bytes"
            dest
          end

          def read_all(dest = ''.b)
            LOG 'reading all...'
            read_bytes = 0
            begin
              while true
                if s = rbuf_consume_all_shareable!
                  read_bytes += s.bytesize
                  dest << s
                end
                rbuf_fill
              end
            rescue EOFError
              ;
            end
            LOG "read #{read_bytes} bytes"
            dest
          end

          def readuntil(terminator, ignore_eof = false)
            offset = @rbuf_offset
            begin
              until idx = @rbuf.index(terminator, offset)
                offset = @rbuf.bytesize
                rbuf_fill
              end
              return rbuf_consume(idx + terminator.bytesize - @rbuf_offset)
            rescue EOFError
              raise unless ignore_eof
              return rbuf_consume
            end
          end

          def readline
            readuntil("\n").chop
          end

          private

          BUFSIZE = 1024 * 16

          def rbuf_fill
            tmp = @rbuf_empty ? @rbuf : nil
            case rv = @io.read_nonblock(BUFSIZE, tmp, exception: false)
            when String
              @rbuf_empty = false
              if rv.equal?(tmp)
                @rbuf_offset = 0
              else
                @rbuf << rv
                rv.clear
              end
              return
            when :wait_readable
              (io = @io.to_io).wait_readable(@read_timeout) or raise Net::ReadTimeout.new(io)
              # continue looping
            when :wait_writable
              # OpenSSL::Buffering#read_nonblock may fail with IO::WaitWritable.
              # http://www.openssl.org/support/faq.html#PROG10
              (io = @io.to_io).wait_writable(@read_timeout) or raise Net::ReadTimeout.new(io)
              # continue looping
            when nil
              raise EOFError, 'end of file reached'
            end while true
          end

          def rbuf_flush
            if @rbuf_empty
              @rbuf.clear
              @rbuf_offset = 0
            end
            nil
          end

          def rbuf_size
            @rbuf.bytesize - @rbuf_offset
          end

          # Warning: this method may share the buffer to avoid
          # copying. The caller must no longer use the returned
          # string once rbuf_fill has been called again
          def rbuf_consume_all_shareable!
            @rbuf_empty = true
            buf = if @rbuf_offset == 0
              @rbuf
            else
              @rbuf.byteslice(@rbuf_offset..-1)
            end
            @rbuf_offset = @rbuf.bytesize
            buf
          end

          def rbuf_consume(len = nil)
            if @rbuf_offset == 0 && (len.nil? || len == @rbuf.bytesize)
              s = @rbuf
              @rbuf = ''.b
              @rbuf_offset = 0
              @rbuf_empty = true
            elsif len.nil?
              s = @rbuf.byteslice(@rbuf_offset..-1)
              @rbuf = ''.b
              @rbuf_offset = 0
              @rbuf_empty = true
            else
              s = @rbuf.byteslice(@rbuf_offset, len)
              @rbuf_offset += len
              @rbuf_empty = @rbuf_offset == @rbuf.bytesize
              rbuf_flush
            end

            @debug_output << %Q[-> #{s.dump}\n] if @debug_output
            s
          end

          #
          # Write
          #

          public

          def write(*strs)
            writing {
              write0(*strs)
            }
          end

          alias << write

          def writeline(str)
            writing {
              write0 str + "\r\n"
            }
          end

          private

          def writing
            @written_bytes = 0
            @debug_output << '<- ' if @debug_output
            yield
            @debug_output << "\n" if @debug_output
            bytes = @written_bytes
            @written_bytes = nil
            bytes
          end

          def write0(*strs)
            @debug_output << strs.map(&:dump).join if @debug_output
            orig_written_bytes = @written_bytes
            strs.each_with_index do |str, i|
              need_retry = true
              case len = @io.write_nonblock(str, exception: false)
              when Integer
                @written_bytes += len
                len -= str.bytesize
                if len == 0
                  if strs.size == i+1
                    return @written_bytes - orig_written_bytes
                  else
                    need_retry = false
                    # next string
                  end
                elsif len < 0
                  str = str.byteslice(len, -len)
                else # len > 0
                  need_retry = false
                  # next string
                end
                # continue looping
              when :wait_writable
                (io = @io.to_io).wait_writable(@write_timeout) or raise Net::WriteTimeout.new(io)
                # continue looping
              end while need_retry
            end
          end

          #
          # Logging
          #

          private

          def LOG_off
            @save_debug_out = @debug_output
            @debug_output = nil
          end

          def LOG_on
            @debug_output = @save_debug_out
          end

          def LOG(msg)
            return unless @debug_output
            @debug_output << msg + "\n"
          end
        end
        BufferedIO = BufferedIOOpt

        # Unchanged from ruby 3.1.1, only allow to lookup the mofidied BufferedIO
        def connect
          if use_ssl?
            # reference early to load OpenSSL before connecting,
            # as OpenSSL may take time to load.
            @ssl_context = OpenSSL::SSL::SSLContext.new
          end

          if proxy? then
            conn_addr = proxy_address
            conn_port = proxy_port
          else
            conn_addr = conn_address
            conn_port = port
          end

          D "opening connection to #{conn_addr}:#{conn_port}..."
          begin
            s = Socket.tcp conn_addr, conn_port, @local_host, @local_port, connect_timeout: @open_timeout
          rescue => e
            e = Net::OpenTimeout.new(e) if e.is_a?(Errno::ETIMEDOUT) #for compatibility with previous versions
            raise e, "Failed to open TCP connection to " +
              "#{conn_addr}:#{conn_port} (#{e.message})"
          end
          s.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1)
          D "opened"
          if use_ssl?
            if proxy?
              plain_sock = BufferedIO.new(s, read_timeout: @read_timeout,
                                          write_timeout: @write_timeout,
                                          continue_timeout: @continue_timeout,
                                          debug_output: @debug_output)
              buf = "CONNECT #{conn_address}:#{@port} HTTP/#{HTTPVersion}\r\n"
              buf << "Host: #{@address}:#{@port}\r\n"
              if proxy_user
                credential = ["#{proxy_user}:#{proxy_pass}"].pack('m0')
                buf << "Proxy-Authorization: Basic #{credential}\r\n"
              end
              buf << "\r\n"
              plain_sock.write(buf)
              HTTPResponse.read_new(plain_sock).value
              # assuming nothing left in buffers after successful CONNECT response
            end

            ssl_parameters = Hash.new
            iv_list = instance_variables
            SSL_IVNAMES.each_with_index do |ivname, i|
              if iv_list.include?(ivname)
                value = instance_variable_get(ivname)
                unless value.nil?
                  ssl_parameters[SSL_ATTRIBUTES[i]] = value
                end
              end
            end
            @ssl_context.set_params(ssl_parameters)
            @ssl_context.session_cache_mode =
              OpenSSL::SSL::SSLContext::SESSION_CACHE_CLIENT |
              OpenSSL::SSL::SSLContext::SESSION_CACHE_NO_INTERNAL_STORE
            @ssl_context.session_new_cb = proc {|sock, sess| @ssl_session = sess }
            D "starting SSL for #{conn_addr}:#{conn_port}..."
            s = OpenSSL::SSL::SSLSocket.new(s, @ssl_context)
            s.sync_close = true
            # Server Name Indication (SNI) RFC 3546
            s.hostname = @address if s.respond_to? :hostname=
            if @ssl_session and
               Process.clock_gettime(Process::CLOCK_REALTIME) < @ssl_session.time.to_f + @ssl_session.timeout
              s.session = @ssl_session
            end
            ssl_socket_connect(s, @open_timeout)
            if (@ssl_context.verify_mode != OpenSSL::SSL::VERIFY_NONE) && @ssl_context.verify_hostname
              s.post_connection_check(@address)
            end
            D "SSL established, protocol: #{s.ssl_version}, cipher: #{s.cipher[0]}"
          end
          @socket = BufferedIO.new(s, read_timeout: @read_timeout,
                                   write_timeout: @write_timeout,
                                   continue_timeout: @continue_timeout,
                                   debug_output: @debug_output)
          @last_communicated = nil
          on_connect
        rescue => exception
          if s
            D "Conn close because of connect error #{exception}"
            s.close
          end
          raise
        end
        private :connect
      end
    end

    begin
      sleep 0.2

      connection = Net::HTTP.start(HOST, PORT)
      connection.keep_alive_timeout = 3600
      connection_opt = Net::HTTPOpt.start(HOST, PORT)
      connection_opt.keep_alive_timeout = 3600

      unless connection.request_get("/100k.txt").body == connection_opt.request_get("/100k.txt").body
        abort("bug?")
      end

      if ARGV.first == "profile"
        require 'stackprof'
        require 'json'

        StackProf.run(mode: :wall, out: "/tmp/stackprof-net-http.dump", raw: true) do
          40_000.times do
            connection.request_get("/1M.txt").body
          end
        end
        File.write("/tmp/stackprof-net-http.json", JSON.dump(Marshal.load(File.binread("/tmp/stackprof-net-http.dump"))))
        system("stackprof", "/tmp/stackprof-net-http.rb")

        StackProf.run(mode: :wall, out: "/tmp/stackprof-net-http-opt.dump", raw: true) do
          40_000.times do
            connection_opt.request_get("/1M.txt").body
          end
        end
        File.write("/tmp/stackprof-net-http-opt.json", JSON.dump(Marshal.load(File.binread("/tmp/stackprof-net-http-opt.dump"))))
        system("stackprof", "/tmp/stackprof-net-http-opt.dump")

      else
        %w(1k 10k 100k 1M).each do |size|
          puts "=== #{size} ==="
          Benchmark.ips do |x|
            path = "/#{size}.txt"
            x.report("#{size}") { connection.request_get(path).body }
            x.report("#{size} opt") { connection_opt.request_get(path).body }
            x.compare!(order: :baseline)
          end
          puts
        end
      end
    ensure
      Process.kill('TERM', nginx_pid)
      Process.wait(nginx_pid)
    end

    ```

    https://github.com/ruby/net-protocol/commit/781e400389

commit 4a4daf00afbd5f6041d2b832df10c5c389781f1a
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-08-31 05:04:02 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-31 06:21:43 +0900

    Update .cirrus.yml

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6304

commit 5dbc725f4d6b07d9d1214ae896fd3feeae8aa23b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-31 05:02:26 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-31 06:21:43 +0900

    Skip linking rb_yjit_icache_invalidate on cargo test

    Co-authored-by: Kevin Newton <kddnewton@gmail.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6304

commit 918a658556d96aeb7bc0c8425e9095f0a22b04a1
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-31 04:44:55 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-31 06:21:43 +0900

    Run cargo test on Cirrus

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6304

commit 497b5ee1803e67efe641671276a05831ad788898
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-31 04:44:08 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-31 06:21:43 +0900

    Normalize the YJIT Cirrus workflow a little

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6304

commit b98653f766613dbbaed02522af26f80078361502
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-30 17:05:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-30 18:46:06 +0900

    [rubygems/rubygems] Let `Dir.tmpdir` use the standard path

    We're not fully in control of this folder, even when running our own
    tests, because MJIT creates some temp folders there when invoking GC.

    This bite tests running in ruby-core when making the behavior of
    `FileUtils.rm_rf` more strict, because these extra files could not be
    removed.

    Since this was originally added due to some failures on systems with non
    standard permissions on tmp folders, but I can no longer reproduce
    those, I'll remove it.

    https://github.com/rubygems/rubygems/commit/d2f21596ee

commit d6acaa4d423200a1dcd8ea62fc65fc60944f2e84
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-30 11:21:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-30 11:23:16 +0900

    Undefine `ruby_debug_log` macro before the function definition

    Fix up 27173e3735ff.

commit ddca3482ef53911ce732c91e715d0439d3b47514
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-30 10:05:06 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-30 10:05:06 +0900

    Check only symbol flag bits (#6301)

    * Check only symbol flag bits

    * Check all 4 bits

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 737402e9383332d028c1c2f26a3f1a2cd78fab0d
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-30 01:55:53 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:55:57 +0900

    Skip a couple of chroot spec faillures

    I don't come up with a way to fix it right away. We'd need some
    experiments on a pull request.

commit 1315c5aad9d31a91e494657d98f61c9d6f65d8b1
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-08-30 01:18:23 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-08-30 01:18:23 +0900

    Update to ruby/spec@b8a8240

commit b5358a98e632200fdca6ac6f8bd36e448d3795aa
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-08-30 01:18:20 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-08-30 01:18:20 +0900

    Update to ruby/mspec@37151a0

commit d694f320e40e77ab432f4d21575251ac0ab4ab76
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-27 08:21:45 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Fixed width immediates (https://github.com/Shopify/ruby/pull/437)

    There are a lot of times when encoding AArch64 instructions that we
    need to represent an integer value with a custom fixed width. For
    example, the offset for a B instruction is 26 bits, so we store an
    i32 on the instruction struct and then mask it when we encode.

    We've been doing this masking everywhere, which has worked, but
    it's getting a bit copy-pasty all over the place. This commit
    centralizes that logic to make sure we stay consistent.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 46007b88af82d6ff22fc01edb7c74922dfa5c68a
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-08-27 03:02:51 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    A64: Only clear icache when writing out new code (https://github.com/Shopify/ruby/pull/442)

    Previously we cleared the cache for all the code in the system when we
    flip memory protection, which was prohibitively expensive since the
    operation is not constant time. Instead, only clear the cache for the
    memory region of newly written code when we write out new code.

    This brings the runtime for the 30k_if_else test down to about 6 seconds
    from the previous 45 seconds on my laptop.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 29e0713a1272cb63f1e3cebfab85dec2424ead0f
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-26 10:19:56 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    TBZ and TBNZ for AArch64 (https://github.com/Shopify/ruby/pull/434)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit c2e9253893461f931ea1a59b5996db06394c009f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-26 10:19:40 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Stop saying it's temp checks (https://github.com/Shopify/ruby/pull/441)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 44c6bcff1d068a2a5d191f602efc99a28e94dbc1
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-26 10:19:26 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    LDRH and STRH for AArch64 (https://github.com/Shopify/ruby/pull/438)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 929a6a75eb3e3404eb8f6246a40b2cd73d0d3fed
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-08-26 10:06:22 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Remove ir_ssa.rs as we aren't using it and it's now outdated

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 4b7d3884dff2cd44d51d5b51f9254c4e0980a45e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-26 06:05:25 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Avoid randomizing the order of test-all on arm64 (https://github.com/Shopify/ruby/pull/440)

    for now

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 232e43fd52e53f667c2c290cffb4afa524889f0f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-26 01:18:34 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Respect RUBY_TESTOPTS on test-all (https://github.com/Shopify/ruby/pull/435)

    * Respect RUBY_TESTOPTS on test-all

    * Increase the Cirrus timeout

    * Increase the CSV test timeout

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 5ef048e5b1c3dd61adf782ace570bb0a1f9bb12f
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-08-25 04:13:08 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Update yjit.md

    Add VMIL paper, update supported CPUs.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit def3ade8a809a230648cdffbf4ab066b07fe7bf1
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-24 05:46:43 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Add --yjit-dump-disasm to dump every compiled code (https://github.com/Shopify/ruby/pull/430)

    * Add --yjit-dump-disasm to dump every compiled code

    * Just use get_option

    * Carve out disasm_from_addr

    * Avoid push_str with format!

    * Share the logic through asm.compile

    * This seems to negatively impact the compilation speed

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 54c7bc67a2d54311b77aca9233b23a9e7a1ca581
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-24 02:41:22 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Various AArch64 optimizations (https://github.com/Shopify/ruby/pull/433)

    * When we're storing an immediate 0 value at a memory address, we
      can use STUR XZR, Xd instead of loading 0 into a register and
      then storing that register.
    * When we're moving 0 into an argument register, we can use
      MOV Xd, XZR instead of loading the value into a register first.
    * In the newarray instruction, we can skip looking at the stack at
      all if the number of values we're using is 0.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit d433eb957bf3826e7aea97c12f0cdc9fcb9a1b43
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-20 06:00:28 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Run tests with --yjit-call-threshold=1 on arm64 (https://github.com/Shopify/ruby/pull/426)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 93c5a5f02373d9ebad3a158fd783886bc3f7bf7d
  Author:     Noah Gibbs <the.codefolio.guy@gmail.com>
  AuthorDate: 2022-08-19 23:31:14 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Fix and re-enable String to_s, << and unary plus (https://github.com/Shopify/ruby/pull/429)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 29bda0ff8124ccfe660bfde43b59acd825f2d014
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-08-19 04:41:41 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Use shorter syntax for the same pattern (https://github.com/Shopify/ruby/pull/425)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 932885244ecb62b22904b9d9842fb7f2be5b7d00
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-19 04:40:15 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Better variable name, no must_use on ccall (https://github.com/Shopify/ruby/pull/424)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit d5fe9e1d9aabacb7bafe97dbbc63b0272be84dee
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-19 05:00:54 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Run test-all with RUBY_YJIT_ENABLE=1 on CI (https://github.com/Shopify/ruby/pull/418)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit f883aabc13d334771da926e632dca5758bb506c8
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-19 04:39:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Instruction enum (https://github.com/Shopify/ruby/pull/423)

    * Remove references to explicit instruction parts

    Previously we would reference individual instruction fields
    manually. We can't do that with instructions that are enums, so
    this commit removes those references. As a side effect, we can
    remove the push_insn_parts() function from the assembler because we
    now explicitly push instruction structs every time.

    * Switch instructions to enum

    Instructions are now no longer a large struct with a bunch of
    optional fields. Instead they are an enum with individual shapes
    for the variants.

    In terms of size, the instruction struct was 120 bytes while the
    new instruction enum is 106 bytes. The bigger win however is that
    we're not allocating any vectors for instruction operands (except
    for CCall), which should help cut down on memory usage.

    Adding new instructions will be a little more complicated going
    forward, but every mission-critical function that needs to be
    touched will have an exhaustive match, so the compiler should guide
    any additions.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit ea9ee31744a905d7bafdd064ed97f68b5b1f21fa
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-08-19 02:10:37 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    A64 Linux reports aarach64 in RUBY_PLATFORM

    This should fix a version string test

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 1c67e90bdecf9aec97eb3185b237d879207db465
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-19 02:04:11 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    More work toward instruction enum (https://github.com/Shopify/ruby/pull/421)

    * Operand iterators

    There are a couple of times when we're dealing with instructions
    that we need to iterate through their operands. At the moment this
    is relatively easy because there's an opnds field and we can work
    with it directly. When the instructions become enums, however, the
    shape of each variant will be different so we'll need an iterator
    to make sense of the shape.

    This commit introduces two new iterators that are created from an
    instruction. One iterates over references to each operand (for
    instances where they don't need to be mutable like updating live
    ranges) and one iterates over mutable references to each operand
    (for instances where you need to mutate them like loading values in
    arm64).

    Note that because iterators can't have generic items (i.e., be
    associated with lifetimes) the mutable iterator forces you to use
    the `while let Some` syntax as opposed to the for-loop like we did
    with instructions.

    This commit eliminates the last reference to insn.opnds, which is
    going to make it much easier to transition to an enum.

    * Consolidate output operand fetching

    Currently we always look at the .out field on instructions whenever
    we want to access the output operand. When the instructions become
    an enum, this is not going to be possible since the shape of the
    variants will be different. Instead, this commit introduces two
    functions on Insn: out_opnd() and out_opnd_mut(). These return an
    Option containing a reference to the output operand and a mutable
    reference to the output operand, respectively.

    This commit then uses those functions to replace all instances of
    accessing the output operand. For the most part this was
    straightforward; when we previously checked if it was Opnd::None
    we now check that it's None, when we assumed there was an output
    operand we now unwrap.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 342459576d4dc57a4c2e92c95c5ff225bf9df763
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-08-19 00:00:58 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Use VALUE for callinfos that are on the heap (https://github.com/Shopify/ruby/pull/420)

    Yet another case of `jit_mov_gc_ptr()` being yanked out during the
    transition to the new backend, causing a crash after object movement.
    The intresting wrinkle with this one is that not all callinfos are GC'ed
    objects, so the old code had an implicit assumption.

    https://github.com/ruby/ruby/blob/b0b9f7201acab05c2a3ad92c3043a1f01df3e17f/yjit/src/codegen.rs#L4087-L4095

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit 5114ddce3f3475aba8bead85f5fe9db774a4cc14
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-18 23:49:27 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Avoid marking op_type on gen_defined (https://github.com/Shopify/ruby/pull/419)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit a78bbef12feac4d4f5eca98718cf7418c1b8e584
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-18 08:23:21 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Use VALUE for block_iseq (https://github.com/Shopify/ruby/pull/417)

    Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit e0e63b1a0142968e99c8a973907092b10f0d9b4b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-18 05:43:00 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Fix a bus error on regenerate_branch (https://github.com/Shopify/ruby/pull/408)

    * Fix a bus error on regenerate_branch

    * Fix pad_size

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit b00606eb644e4ffb42b9267f7d81b352845a29ae
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-18 05:08:41 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Even more prep for instruction enum (https://github.com/Shopify/ruby/pull/413)

    * Mutate in place for register allocation

    Currently we allocate a new instruction every time when we're
    doing register allocation by first splitting up the instruction
    into its component parts, mapping the operands and the output, and
    then pushing all of its parts onto the new assembler.

    Since we don't need the old instruction, we can mutate the existing
    one in place. While it's not that big of a win in and of itself, it
    matches much more closely to what we're going to have to do when we
    switch the instruction from being a struct to being an enum,
    because it's much easier for the instruction to modify itself since
    it knows its own shape than it is to push a new instruction that
    very closely matches.

    * Mutate in place for arm64 split

    When we're splitting instructions for the arm64 backend, we map all
    of the operands for a given instruction when it has an Opnd::Value.
    We can do this in place with the existing operand instead of
    allocating a new vector each time. This enables us to pattern match
    against the entire instruction instead of just the opcode, which is
    much closer to matching against an enum.

    * Match against entire instruction in arm64_emit

    Instead of matching against the opcode and then accessing all of
    the various fields on the instruction when emitting bytecode for
    arm64, we should instead match against the entire instruction.
    This makes it much closer to what's going to happen when we switch
    it over to being an enum.

    * Match against entire instruction in x86_64 backend

    When we're splitting or emitting code for x86_64, we should match
    against the entire instruction instead of matching against just the
    opcode. This gets us closer to matching against an enum instead of
    a struct.

    * Reuse instructions for arm64_split

    When we're splitting, the default behavior was previously to split
    up the instruction into its component parts and then reassemble
    them in a new instruction. Instead, we can reuse the existing
    instruction.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit c70d1471c1723f26ca54699f056887fe200c973e
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-08-18 04:42:39 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 01:09:41 +0900

    Only check lowest bit for _Bool type (https://github.com/Shopify/ruby/pull/412)

    * Only check lowest bit for _Bool type

    The `test AL, AL` got lost during porting and we were
    generating `test RAX, RAX` instead. The upper bits of a `_Bool` return
    type is unspecified and we were failing
    `TestClass#test_singleton_class_should_has_own_namespace`
    due to interpreterting the return value incorrectly.

    * Enable test_class for test-all on x86_64

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6289

commit d57a9f61a065418ef99fcbbb65eca4f34f33f1c8
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-18 01:59:08 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:11 +0900

    Build output operands explicitly (https://github.com/Shopify/ruby/pull/411)

    When we're pushing instructions onto the assembler, we previously
    would iterate through the instruction's operands and then assign
    the output operand to it through the push_insn function. This is
    easy when all instructions have a vector of operands, but is much
    more difficult when the shape differs in an enum.

    This commit changes it so that we explicitly define the output
    operand for each instruction before it gets pushed onto the
    assembler. This has the added benefit of changing the definition
    of push_insn to no longer require a mutable instruction.

    This paves the way to make the out field on the instructions an
    Option<Opnd> instead which is going to more accurately reflect
    the behavior we're going to have once we switch the instructions
    over to an enum instead of a struct.

commit b735eb5ef39e73e2a0ea6bbdb6ff7ce41a998d63
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-18 01:56:23 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:11 +0900

    Instruction builders for backend IR (https://github.com/Shopify/ruby/pull/410)

    Currently we use macros to define the shape of each of the
    instruction building methods. This works while all of the
    instructions share the same fields, but is really hard to get
    working when they're an enum with different shapes. This is an
    incremental step toward a bigger refactor of changing the Insn
    from a struct to an enum.

commit 1cf9f56c55b1a771217678843c9546e368db0af3
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-08-18 01:23:59 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:11 +0900

    Fix issue with expandarray, add missing jl, enable tests (https://github.com/Shopify/ruby/pull/409)

commit c38e9111478773a20656bfe5329cdab78dfb075b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-17 04:51:16 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:11 +0900

    Allow aarch64 to build YJIT

commit 95dce1ccacb5e893bbd2bfb100c0778c5be83d47
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-08-17 01:00:35 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:11 +0900

    Temporarily disable rb_str_concat, add CI tests (https://github.com/Shopify/ruby/pull/407)

    Make sure we can load the test-all runner and run test_yjit.rb

commit 09c12111d42573a19e7077bd8fa7e7cb709179de
  Author:     Noah Gibbs (and/or Benchmark CI) <noah.gibbs@shopify.com>
  AuthorDate: 2022-08-12 19:35:52 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:11 +0900

    Port jit_rb_str_concat to new backend, re-enable cfunc lookup (https://github.com/Shopify/ruby/pull/402)

commit 5a76a15a0f93100c7ff6361a34b06af936cc36c6
  Author:     Maple Ong <maple.develops@gmail.com>
  AuthorDate: 2022-08-16 01:54:26 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:11 +0900

    YJIT: Implement concatarray in yjit (https://github.com/Shopify/ruby/pull/405)

    * Create code generation func

    * Make rb_vm_concat_array available to use in Rust

    * Map opcode to code gen func

    * Implement code gen for concatarray

    * Add test for concatarray

    * Use new asm backend

    * Add comment to C func wrapper

commit 2f9df466546263028ece7757cb6f813800d2d6b5
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-08-16 00:25:49 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:11 +0900

    Use bindgen for old manual extern declarations (https://github.com/Shopify/ruby/pull/404)

    We have a large extern block in cruby.rs leftover from the port. We can
    use bindgen for it now and reserve the manual declaration for just a
    handful of vm_insnhelper.c functions.

    Fixup a few minor discrepencies bindgen found between the C declaration
    and the manual declaration. Mostly missing `const` on the C side.

commit ff3f1d15d2244dcafe5d7a748922e7c8b6b0f3bd
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-13 00:59:53 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:11 +0900

    Optimize bitmask immediates (https://github.com/Shopify/ruby/pull/403)

commit be730cdae5ac54a5ffd167983c3dffe50a055901
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-12 04:46:13 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:10 +0900

    AArch64 Ruby immediates (https://github.com/Shopify/ruby/pull/400)

commit c022a605401ccbc591640720a28c616cbaa19931
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-08-12 02:26:30 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:10 +0900

    Fix bugs in gen_opt_getinlinecache

commit cb15886e612e17685e606f8b4f04301026f18b46
  Author:     Zack Deveau <zack.ref@gmail.com>
  AuthorDate: 2022-08-12 01:49:35 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:10 +0900

    Port opt_getinlinecache to the new backend (https://github.com/Shopify/ruby/pull/399)

commit dca5e74aa17bd315ff83cffbdbba3f7c641174ac
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-12 01:12:44 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:10 +0900

    Fix test_rubyoptions.rb for arm64 (https://github.com/Shopify/ruby/pull/396)

commit 471de2ab78ef75c7f22f80c77460e16e2356e190
  Author:     Noah Gibbs <the.codefolio.guy@gmail.com>
  AuthorDate: 2022-08-12 01:11:23 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:10 +0900

    Enable skipdata on Capstone to allow embedded data without early stop to disasm (https://github.com/Shopify/ruby/pull/398)

commit 7f4ab24f2b99c87874a5540a55026ea5a3d43d3e
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-11 21:32:06 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:10 +0900

    Op::Xor for backend IR (https://github.com/Shopify/ruby/pull/397)

commit 4d811d7a2b92d110e3e70cb77e5f499acfa7112a
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-08-11 06:22:55 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:10 +0900

    Fix code invalidation while OOM and OOM simulation (https://github.com/Shopify/ruby/pull/395)

    `YJIT.simulate_oom!` used to leave one byte of space in the code block,
    so our test didn't expose a problem with asserting that the write
    position is in bounds in `CodeBlock::set_pos`. We do the following when
    patching code:
      1. save current write position
      2. seek to middle of the code block and patch
      3. restore old write position
    The bounds check fails on (3) when the code block is already filled up.

    Leaving one byte of space also meant that when we write that byte, we
    need to fill the entire code region with trapping instruction in
    `VirtualMem`, which made the OOM tests unnecessarily slow.

    Remove the incorrect bounds check and stop leaving space in the code
    block when simulating OOM.

commit ee1697ee0727c29fc61c88ccb6036aa763d2d2b6
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-11 06:01:21 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:10 +0900

    Port opt_aref and opt_aset to the new backend IR (https://github.com/Shopify/ruby/pull/387)

    * Port opt_aref and opt_aset to the new backend IR

    * Recompute memory operands

commit b54643d13ac4194f05151a366e9980350efec829
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-08-11 05:38:42 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:10 +0900

    Handle out of memory tests (https://github.com/Shopify/ruby/pull/393)

commit df84832c758e3dcb360f18335c2c93dcc90344aa
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-11 05:29:01 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:10 +0900

    Port getblockparamproxy and getblockparam (https://github.com/Shopify/ruby/pull/394)

commit e5969f8587dd80367347356e11ddcf3976439d1c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-11 05:09:23 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:10 +0900

    Port invokesuper to the new backend IR (https://github.com/Shopify/ruby/pull/391)

commit ca2afba4a7162ca9bbaa12891da5d55f81752d23
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-11 05:05:59 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:09 +0900

    Port the remaining method types in opt_send_without_block (https://github.com/Shopify/ruby/pull/390)

commit 8c45b8a989fea4c74d68c464a55aa54e9144994a
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-08-11 02:37:49 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:09 +0900

    Update asm comments for gen_send_iseq

commit 6b9cec78a18ae1788c8c939c705b85bd0a6efc3a
  Author:     Noah Gibbs <the.codefolio.guy@gmail.com>
  AuthorDate: 2022-08-11 00:13:22 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:09 +0900

    Port cfunc lookup, plus simpler cfunc generators. (https://github.com/Shopify/ruby/pull/388)

    This port does *not* create invalidation regions to
    ensure minimum invalidatable block sizes, and so it
    does not port the to_s generator.

commit cad35fb25c4300a53ad33d833d4595c2bdd30e00
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-08-10 05:03:39 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:09 +0900

    Try to run make -j in CI backend tests (https://github.com/Shopify/ruby/pull/386)

commit 1cafb1a7a67c776018656a5461965cf15d22b220
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-10 03:48:23 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:09 +0900

    Prefer asm.store over asm.mov (https://github.com/Shopify/ruby/pull/385)

    * Prefer asm.store over asm.mov

    * Reverse a couple of unsure changes

    * Revert changes that don't work

commit 3f42028e3e7df7d476e71cc995608e26208e3ae0
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-05 04:29:31 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:09 +0900

    Iterator (https://github.com/Shopify/ruby/pull/372)

    * Iterator

    * Use the new iterator for the X86 backend split

    * Use iterator for reg alloc, remove forward pass

    * Fix up iterator usage on AArch64

    * Update yjit/src/backend/ir.rs

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

    * Various PR feedback for iterators for IR

    * Use a local mutable reference for a64_split

    * Move tests from ir.rs to tests.rs in backend

    * Fix x86 shift instructions live range calculation

    * Iterator

    * Use the new iterator for the X86 backend split

    * Fix up x86 iterator usage

    * Fix ARM iterator usage

    * Remove unintentionally duplicated tests

commit 49c9f893f863108f741b6b6535dc53126733ded0
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-10 02:01:20 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:09 +0900

    Port expandarray to the new backend IR (https://github.com/Shopify/ruby/pull/376)

    * Port expandarray to the new backend IR

    * More use of into()

    * Break out live ranges

    * Refactor the code further

    * Reuse registers more

commit 668b99b43b26868e3cddc41de2025841522acc3b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-10 01:16:27 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:09 +0900

    Port gen_send_iseq to the new backend IR (https://github.com/Shopify/ruby/pull/381)

    * Port gen_send_iseq to the new backend IR

    * Replace occurrences of 8 by SIZEOF_VALUE

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
    Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>

commit 32d9eef5626118b5848cdbe9fe8f17da043d781c
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-08-09 23:32:24 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:09 +0900

    Enable test_literal.rb and test_ractor.rb on arm

commit cd7506593ad6bd92dd330ba969e76ff8a1f5ee31
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-09 23:28:19 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:09 +0900

    Fix tests on yjit_backend_ir for AArch64 backend (https://github.com/Shopify/ruby/pull/383)

commit b8846dd2f8042fc13a0f5ae17e2e2a6f400074dd
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-09 23:27:21 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:08 +0900

    Load mem displacement when necessary on AArch64 (https://github.com/Shopify/ruby/pull/382)

    * LDR instruction for AArch64

    * Split loads in arm64_split when memory address displacements do not fit

commit 85d6d76e41b0c2cec64e3726d8218467954f5ee6
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-08-09 07:42:42 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:08 +0900

    Enable test_insns.rb on arm

commit a5ea577cc6fc43c5bd5beaef3f6175832a55268a
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-09 06:37:03 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:08 +0900

    Update flags for data processing on ARM (https://github.com/Shopify/ruby/pull/380)

    * Update flags for data processing on ARM

    * Update yjit/src/backend/arm64/mod.rs

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

commit a3757842752e78a5f53b5dfcdcf9601c037f8c76
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-08-09 03:49:46 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:08 +0900

    Use new assembler to support global invalidation on A64

    Previously, we patched in an x64 JMP even on A64, which resulted in
    invalid machine code. Use the new assembler to generate a jump instead.

    Add an assert to make sure patches don't step on each other since it's
    less clear cut on A64, where the size of the jump varies depending on
    its placement relative to the target.

    Fixes a lot of tests that use `set_trace_func` in `test_insns.rb`.

    PR: https://github.com/Shopify/ruby/pull/379

commit 726a4519550fd9191833e482122e3c7bf9a468be
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-09 00:27:54 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:08 +0900

    Port invokebuiltin* insns to the new backend IR (https://github.com/Shopify/ruby/pull/375)

    * Port invokebuiltin* insns to the new backend IR

    * Fix the C_ARG_OPNDS check boundary

commit 46822ee13f4fb8d590c3bd6c66aab71566d68dfe
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-08-06 06:09:22 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:08 +0900

    Enable btests now passing on arm (https://github.com/Shopify/ruby/pull/378)

commit 8278d722907dc134e9a3436d5542d7dc168d8925
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-06 05:52:23 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:08 +0900

    Left and right shift for IR (https://github.com/Shopify/ruby/pull/374)

    * Left and right shift for IR

    * Update yjit/src/backend/x86_64/mod.rs

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>
    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

commit 8fffff536db7d603c6caef80d11c0926d59b1001
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-08-06 03:41:55 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:08 +0900

    More concise csel with Into

commit 2429635bc724c953bd653a9202c5e1768f61d254
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-06 03:37:51 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:08 +0900

    Port send to the new backend and test it (https://github.com/Shopify/ruby/pull/373)

commit ffdd09e22af4966f3d8f8ada7f9ee829ba9b9212
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-06 03:13:01 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:08 +0900

    Port opt_eq and opt_neq to the new backend (https://github.com/Shopify/ruby/pull/371)

    * Port opt_eq and opt_neq to the new backend

    * Just use into() outside

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

    * Use C_RET_OPND to share the register

    * Revert "Use C_RET_OPND to share the register"

    This reverts commit 99381765d0008ff0f03ea97c6c8db608a2298e2b.

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

commit 2b85295d2845ee7ebefe04bcdda48970694ff0ad
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-06 02:47:35 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:07 +0900

    Port objtostring to the new backend (https://github.com/Shopify/ruby/pull/369)

commit e06c86fada92cf81cdc8e5cf4f0792ae701eb2e0
  Author:     Zack Deveau <zack.ref@gmail.com>
  AuthorDate: 2022-08-06 02:32:16 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:07 +0900

    Port  opt_str_uminus to new backend IR (https://github.com/Shopify/ruby/pull/370)

commit db22a560a49b4ad82430b6bec7feaf2a4a3bfe19
  Author:     Zack Deveau <zack.ref@gmail.com>
  AuthorDate: 2022-08-05 22:18:34 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:07 +0900

    Port gen_opt_str_freeze to new backend IR (https://github.com/Shopify/ruby/pull/366)

commit 0a680912e960c66b9894cd8b04ecdc819a531727
  Author:     Noah Gibbs <the.codefolio.guy@gmail.com>
  AuthorDate: 2022-08-06 01:03:06 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:07 +0900

    x86 TEST should do a load for mem opnds first (https://github.com/Shopify/ruby/pull/368)

commit 7908eabf6f639cf7ec84714418b6b1aa28825af7
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-06 00:58:08 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:07 +0900

    Port setivar to the new backend IR (https://github.com/Shopify/ruby/pull/362)

    * Port setivar to the new backend IR

    * Add a few more setivar test cases

    * Prefer const_ptr

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

commit a55a3f8ad1104870d7a92f6d296325a415ed6910
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-06 00:47:09 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:07 +0900

    Port opt_minus, opt_or, and opt_and to the new IR (https://github.com/Shopify/ruby/pull/364)

    * Port opt_minus, opt_or, and opt_and to the new IR

    * Fix the Op::Or issue with push_insn

    * Prefer asm.store for clarity

commit dcb6fc16e54b83f9653bbab68ec1770b301952a0
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-06 00:21:52 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:07 +0900

    Port opt_mod to the new backend IR (https://github.com/Shopify/ruby/pull/363)

commit e24037267f5912814dff463bccc618deacefd529
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-08-06 00:05:20 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:07 +0900

    Add Opnd::None error message to x86 backend as well

commit d131b410259bef45757e4bec02c9c62c88033fc8
  Author:     Noah Gibbs <the.codefolio.guy@gmail.com>
  AuthorDate: 2022-08-05 23:26:07 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:07 +0900

    Fix to float guard in jit_guard_known_klass to use the correct output operand. (https://github.com/Shopify/ruby/pull/365)

commit 74527a764d42ebf9e7f780915dc9d73e760ed168
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-05 05:58:07 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:07 +0900

    Port send-only insns and write tests (https://github.com/Shopify/ruby/pull/360)

commit b024b18f56df7e18bc744905f6d2e3888fc3900f
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-08-05 05:46:36 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:06 +0900

    Fix block invalidation with new backend. Enable more btests on x86 (https://github.com/Shopify/ruby/pull/359)

commit d63b3e43bd0a2dac5447855e3fae2c3de3499e53
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-08-05 05:47:35 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:06 +0900

    Enable test_thread.rb on arm, now working

commit ddee4d3af8859d30e3714ac544828d5b76027093
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-08-04 07:25:01 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:06 +0900

    Opnd::Value fixes (https://github.com/Shopify/ruby/pull/354)

    * Fix asm.load(VALUE)

    - `<VALUE as impl Into<Opnd>>` didn't track that the value is a value
    - `Iterator::map` doesn't evaluate the closure you give it until you
      call `collect`. Use a for loop instead so we put the gc offsets
      into the compiled block properly.

    * x64: Mov(mem, VALUE) should load the value first

    Tripped in codegen for putobject now that we are actually feeding
    `Opnd::Value` into the backend.

    * x64 split: Canonicallize VALUE loads

    * Update yjit/src/backend/x86_64/mod.rs

commit 4539c21367cf63e34afe4f14656779d33883647b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-05 03:47:53 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:06 +0900

    Port gen_send_cfunc to the new backend (https://github.com/Shopify/ruby/pull/357)

    * Port gen_send_cfunc to the new backend

    * Remove an obsoleted test

    * Add more cfunc tests

    * Use csel_e instead and more into()

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

    * Add a missing lea for build_kwargs

    * Split cfunc test cases

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

commit c91a44cba49c8164982f241c00dc7c6418a4757b
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-08-05 03:29:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:06 +0900

    Fix forward_pass usage in arm backend following John's PR

commit 24ddc07d6ee02620b8be7b4defd903897bb97845
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-08-05 02:12:25 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:06 +0900

    Fix live_ranges idx calculation (https://github.com/Shopify/ruby/pull/353)

    forward_pass adjusts the indexes of our opnds to reflect the new
    instructions as they are generated in the forward pass. However, we were
    using the old live_ranges array, for which the new indexes are
    incorrect.

    This caused us to previously generate an IR which contained unnecessary
    trivial load instructions (ex. mov rax, rax), because it was looking at
    the wrong lifespans. Presumably this could also cause bugs because the
    lifespan of the incorrectly considered operand idx could be short.

    We've added an assert which would have failed on the previous trivial
    case (but not necessarily all cases).

    Co-authored-by: Matthew Draper <matthew@trebex.net>

commit fe172aac0465160ec5a02c687ab1dc6ade2c090a
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-05 01:02:09 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:06 +0900

    Convert  getinstancevariable to new backend IR (https://github.com/Shopify/ruby/pull/352)

    * Convert getinstancevariable to new backend IR

    * Support mem-based mem

    * Use more into()

    * Add tests for getivar

    * Just load obj_opnd to a register

    * Apply another into()

    * Flip the nil-out condition

    * Fix duplicated counts of side_exit

commit a95422a69167baba0e4d086b234ad5316d3c39fe
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-04 23:31:16 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:06 +0900

    Binary OR instruction for the IR (https://github.com/Shopify/ruby/pull/355)

commit 9db2ca723cac60c2d65865a4851c13cac58ff6a3
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-08-03 04:36:27 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:06 +0900

    Add 1 more allocatable reg on arm

commit ca68ccdaddb6930f2d6dc9172a8653bcfb340afd
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-08-03 04:12:04 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:06 +0900

    Fix C call reg alloc bug reported by Noah & Kokubun

commit 0823260546f5fd749c3e1e9afadc29f4c6072ef1
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-08-03 02:44:17 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:05 +0900

    Implement iterators and double-linked list for IR SSA

commit a75a6f7d7a1a2f876c76d1c0f3f56781221c3f68
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-08-03 03:27:50 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:05 +0900

    Remove empty lines

commit dea42385440c7abc332d8fda04dbec0f33364baa
  Author:     Zack Deveau <zack.ref@gmail.com>
  AuthorDate: 2022-08-03 02:09:51 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:05 +0900

    Port gen_concatstring to new backend IR (https://github.com/Shopify/ruby/pull/350)

    * Port gen_concatstring to new backend IR

    * Update yjit/src/codegen.rs

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

commit 330c9e98506d421778c8f2581a23ba44e4663e06
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-02 12:39:31 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:05 +0900

    Port anytostring, intern, and toregexp (https://github.com/Shopify/ruby/pull/348)

    * Port anytostring, intern, and toregexp

    * Port getspecial to the new backend (#349)

    PR: https://github.com/Shopify/ruby/pull/349

commit 16307adf8f0cde3a9383e6c7e39fc718ebc89b42
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-02 12:06:53 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:05 +0900

    Port only ATTRSET of opt_send_without_block (https://github.com/Shopify/ruby/pull/351)

commit 45da6974500070872a2b20fafe2b50bc1dce1052
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-08-02 05:12:51 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:05 +0900

    Push first pass at SSA IR sketch

commit a674b8d8a13c9dbffb92dbcab7ff297a8b99591b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-02 02:34:15 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:05 +0900

    Port class variable instructions (https://github.com/Shopify/ruby/pull/346)

commit 1446e22aeba09c55227c56b9c2f6cb90facc9512
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-02 02:16:01 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:05 +0900

    Port setglobal to the new backend (https://github.com/Shopify/ruby/pull/347)

commit 869b0ba6e00168d739830af766c3abb0dec01f12
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-07-29 00:08:30 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:05 +0900

    Minor cleanups (https://github.com/Shopify/ruby/pull/345)

    * Move allocation into Assembler::pos_marker

    We wanted to do this to begin with but didn't because we were confused
    about the lifetime parameter. It's actually talking about the lifetime
    of the references that the closure captures. Since all of our usages
    capture no references (they use `move`), it's fine to put a `+ 'static`
    here.

    * Use optional token syntax for calling convention macro

    * Explicitly request C ABI on ARM

    It looks like the Rust calling convention for functions are the same as
    the C ABI for now and it's unlikely to change, but it's easy for us to
    be explicit here. I also tried saying `extern "aapcs"` but that
    unfortunately doesn't work.

commit 6ab71a8598c6eece25975ca262eb880462e47b06
  Author:     Zack Deveau <zack.ref@gmail.com>
  AuthorDate: 2022-07-28 03:31:41 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:05 +0900

    Port gen_checktype to the new IR assembler backend (https://github.com/Shopify/ruby/pull/343)

commit 4b1ab009c4ceea2232d1c71a1af7bf1a04af2165
  Author:     Noah Gibbs <the.codefolio.guy@gmail.com>
  AuthorDate: 2022-07-28 01:42:52 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:05 +0900

    Port the YJIT defined opcode; fix C_ARG_REGS (https://github.com/Shopify/ruby/pull/342)

commit b2d255ad3cb34262494df3c55352215dcbd4d881
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-07-27 02:14:06 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:04 +0900

    A64: Fix off by one in offset encoding for BL (https://github.com/Shopify/ruby/pull/344)

    * A64: Fix off by one in offset encoding for BL

    It's relative to the address of the instruction not the end of it.

    * A64: Fix off by one when encoding B

    It's relative to the start of the instruction not the end.

    * A64: Add some tests for boundary offsets

commit 2d9b98f9bc918b1161d308c5d202fcb3be01de07
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-26 04:22:25 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:04 +0900

    Fix a bug in the x86 backend wrt large integer values, enable more tests

commit c9a947e5d81088907f774ddfbcd274a88ba7d8ff
  Author:     Noah Gibbs <the.codefolio.guy@gmail.com>
  AuthorDate: 2022-07-25 23:38:09 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:04 +0900

    Port and test checkkeyword (https://github.com/Shopify/ruby/pull/339)

commit 8617bac950fbee712e621f79bf96ca30fa9aa2ec
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-07-23 07:02:24 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:04 +0900

    Fix IncrCounter on ARM

    The order of operands to LDADDAL were flipped and the destination
    pointer was dereferenced instead of passed as an address.

commit e131b217cfa9f29a0677e65cf573494279eda8a5
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-23 05:25:37 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:04 +0900

    Test --yjit-stats in our CI workflows

commit 813df1f27aa52a3050d90dab23bc72093da00e6c
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-07-23 05:24:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:04 +0900

    Add LiveReg IR instruction to fix stats leave exit code (https://github.com/Shopify/ruby/pull/341)

    It allows for reserving a specific register and prevents the register
    allocator from clobbering it. Without this
    `./miniruby --yjit-stats --yjit-callthreshold=1 -e0` was crashing because
    the counter incrementing code was clobbering RAX incorrectly.

commit 133ad38777db991e20a1feba1acbfe5d97cc2fa0
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-23 05:13:29 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:04 +0900

    Fix CI workflows

commit 13e5b56a5d8f36815fb9aa3834d82a54b69e087a
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-23 05:06:37 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:04 +0900

    Fixes (https://github.com/Shopify/ruby/pull/340)

    * Fix conditional jumps to label

    * Bitmask immediates cannot be u64::MAX

commit f593b2c6db622de6f973e4e847e959855c341a25
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-23 03:01:21 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:04 +0900

    Fixes for AArch64 (https://github.com/Shopify/ruby/pull/338)

    * Better splitting for Op::Add, Op::Sub, and Op::Cmp

    * Split stores if the displacement is too large

    * Use a shifted immediate argument

    * Split all places where shifted immediates are used

    * Add more tests to the cirrus workflow

commit 96303342e417cb2e5980d3e3f0909d32bf004431
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-23 01:26:59 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:04 +0900

    Enable more btests

commit 4024553d131012c313d08b4939f3596b6044c077
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-23 01:21:19 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:03 +0900

    Add ifdef to clear cache

commit 7e22ec7439211d43aea850a4e849f37e631ed131
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-23 01:18:21 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:03 +0900

    Clear the icache on arm

commit b1ed4d9b947e650dda7bfb9578652d4edb2608b4
  Author:     Noah Gibbs <the.codefolio.guy@gmail.com>
  AuthorDate: 2022-07-23 01:08:35 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:03 +0900

    Port and test duparray and splatarray (https://github.com/Shopify/ruby/pull/337)

    * Port duparray opcode

    * Port and test splatarray

commit e9f9b8f43b2afdc437ab1b8ab883bab0525a3f43
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-23 01:01:24 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:03 +0900

    Fix bug with opt_lt, csel on x86

commit 477c2df3fad22271958b92bdfafbae7155fbebb4
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-22 06:06:01 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:03 +0900

    Work on opt_lt, fix x86 backend bug in cmp()

commit 70e117d512636465d8dc2094b22dd6535602050a
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-22 05:25:21 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:03 +0900

    Fixes (https://github.com/Shopify/ruby/pull/336)

    * Fix bitmask encoding to u32

    * Fix splitting for Op::And to account for bitmask immediate

commit e9a2effd74a3c1a40bd82e75ac24e8570ba57364
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-07-22 03:53:33 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:03 +0900

    Enable more btests in the CI workflows (https://github.com/Shopify/ruby/pull/334)

    * Enable more btests in the CI workflows

    * Update workflows

commit 76b05ba9e8f72ce98057d3817f6f353c9e62a892
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-22 03:48:44 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:03 +0900

    Better splitting for Op::Test on AArch64 (https://github.com/Shopify/ruby/pull/335)

commit b1dbc5f1a683e4727f463c0a5a3e0195e5c2cc7f
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-22 01:43:54 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:03 +0900

    Fix crash in newhash ccall

commit 8605efdd942d2a6b139abe66503427683e5dcad3
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-22 01:31:31 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:03 +0900

    Fix corrupted X29 causing segfault, thanks Alan!

commit 85872eecddf0e5a13ba2218bb2068e99d5ce1313
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-21 05:43:19 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:03 +0900

    Port over newrange

commit 8d2560f1f533c078ed23d71084129ce13ba33abf
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-21 05:35:14 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:02 +0900

    Port over setlocal and getglobal

commit 8259813bc30497986974633202f3052353295f95
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-21 04:58:31 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:02 +0900

    Temporarily simplify code for emit_conditional_jump to fix a bug

commit f833d75bee13ecb485db1591898cb871b24a2991
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-07-21 03:50:00 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:02 +0900

    Refactor YJIT branches to use PosMarker (https://github.com/Shopify/ruby/pull/333)

    * Refactor defer_compilation to use PosMarker

    * Port gen_direct_jump() to use PosMarker

    * Port gen_branch, branchunless

    * Port over gen_jump()

    * Port over branchif and branchnil

    * Fix use od record_boundary_patch_point in jump_to_next_insn

commit f5f58d82834cf84fe15dd1b28754923404a9fc75
  Author:     Noah Gibbs <the.codefolio.guy@gmail.com>
  AuthorDate: 2022-07-20 23:56:13 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:02 +0900

    Update disasm to work on ARM (https://github.com/Shopify/ruby/pull/331)

commit cbf7a7cd23e03c47274ed2755ef5ba1ca099bd50
  Author:     Noah Gibbs <the.codefolio.guy@gmail.com>
  AuthorDate: 2022-07-20 23:54:39 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:02 +0900

    Fix dupn (https://github.com/Shopify/ruby/pull/330)

    * get_dupn was allocating and throwing away an Assembler object instead of using the one passed in

    * Uncomment remaining tests in codegen.rs, which seem to work now

commit 90137f519459764a78ae8eb777e3f396f7cffd98
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-07-20 23:43:14 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:02 +0900

    Implement PosMarker instruction (https://github.com/Shopify/ruby/pull/328)

    * Implement PosMarker instruction

    * Implement PosMarker in the arm backend

    * Make bindgen run only for clang image

    * Fix if-else in cirrus CI file

    * Add missing semicolon

    * Try removing trailing semicolon

    * Try to fix shell/YAML syntax

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

commit 4ae2c744ac6b5b84f2bfebb9046c0c364863d7a4
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-20 06:44:39 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:02 +0900

    A lot of fixes coming from our pairing session (https://github.com/Shopify/ruby/pull/329)

    * Move to/from SP on AArch64

    * Consolidate loads and stores

    * Implement LDR post-index and LDR pre-index for AArch64

    * Implement STR post-index and STR pre-index for AArch64

    * Module entrypoints for LDR pre/post -index and STR pre/post -index

    * Use STR (pre-index) and LDR (post-index) to implement push/pop

    * Go back to using MOV for to/from SP

commit c9484fe0c1f2897521d08780a66fab89e5e2f5b1
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-20 04:26:06 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:02 +0900

    Fix push/pop and frame setup/teardown with Kevin & Alan

commit b3cd7a9cd3ab5f66f70bd530761358d1710377aa
  Author:     Noah Gibbs <the.codefolio.guy@gmail.com>
  AuthorDate: 2022-07-20 02:23:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:02 +0900

    Fix some of the codegen.rs tests (https://github.com/Shopify/ruby/pull/327)

commit f09fd032d86a4e73f9434919a4d0814129b40539
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-20 01:14:26 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:02 +0900

    Assert not the same register in AArch64

commit db84d2921fc2ae1397c75cbf5d6752dd10f94219
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-20 01:10:23 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:01 +0900

    BLR instruction for AArch64 (https://github.com/Shopify/ruby/pull/325)

commit fd97f8ebc7f22df7e3a7bf05c5d9328946cb539e
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-20 00:45:46 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:01 +0900

    Use frame_setup() and frame_teardown()

commit 10d50031e66cc19ebe7e10ce80c1d8bd8b745399
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-20 00:37:03 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:01 +0900

    AArch64 frames (https://github.com/Shopify/ruby/pull/324)

commit e907aaa3fe87a4aacb808d10042425703c059825
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-19 04:50:17 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:01 +0900

    ADR fixes for LeaLabel and calls

commit f9e24ca8dd5e498cd768eaf65bc07acdb268f175
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-16 05:24:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:01 +0900

    Conditionals (https://github.com/Shopify/ruby/pull/323)

    * CSEL on AArch64

    * Implement various Op::CSel* instructions

commit 0da253e72cc80c1dbf8517f5217b59a64ec0f44e
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-16 05:14:55 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:01 +0900

    Port print_int to the new backend (https://github.com/Shopify/ruby/pull/321)

    * Port print_int to the new backend

    * Tests for print_int and print_str

commit bf7277b518d5ab634ee708f54fbb8735a8eafdbc
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-16 05:21:35 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:01 +0900

    Update cirrus workflow

commit c83198911a82c8dc6196fcfca073eb78822982f4
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-16 05:06:53 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:01 +0900

    Fix jumps (https://github.com/Shopify/ruby/pull/322)

commit 7787ef29fedb6d638893434c323db6ea85d85640
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-16 03:32:57 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:01 +0900

    Add --yjit-dump-insns test to Cirrus Arm workflow

commit 95e5c5227c0492ed33fa41f31a698bf320d2b437
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-16 02:49:38 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:01 +0900

    Fix bug with LeaLabel on x86, add CI test

commit 34ec89252bf4bf1c841a82be4183a3dc40046355
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-16 02:25:49 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:00 +0900

    Fix comment typo

commit 160e29b9e5c9419e3275d4bd6de09c9c4f242602
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-16 02:25:26 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:00 +0900

    Port print_str to new backend (https://github.com/Shopify/ruby/pull/318)

    * ADR and ADRP for AArch64

    * Implement Op::Jbe on X86

    * Lera instruction

    * Op::BakeString

    * LeaPC -> LeaLabel

    * Port print_str to the new backend

    * Port print_value to the new backend

    * Port print_ptr to the new backend

    * Write null-terminators in Op::BakeString

    * Fix up rebase issues on print-str port

    * Add back in panic for X86 backend for unsupported instructions being lowered

    * Fix target architecture

commit 6c5008959925d2768e9495a5601b5245784bc87f
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-15 05:51:01 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:00 +0900

    Port newhash, add tests for newhash, duphash

commit a1ea018fd67c38bf24c0ebfdc75e994953c29644
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-15 04:57:58 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:00 +0900

    Add extra assertion in new_label for Kevin

commit 5e834195fd71652939c54b15952e269a6f172853
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-07-15 03:52:57 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:00 +0900

    Exclude X0 (C_RET_REG) from allocatable registers on arm (https://github.com/Shopify/ruby/pull/319)

    * Exclude X0 (C_RET_REG) from allocatable registers on arm

    * Add another small test snippett

commit 159566fef91b010d8e236151bdbc77993f77c15f
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-15 00:10:58 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:00 +0900

    Op::CPushAll and Op::CPopAll (https://github.com/Shopify/ruby/pull/317)

    Instructions for pushing all caller-save registers and the flags so that
    we can implement dump_insns.

commit ac77d151d6ef2848a709ff832424fca9cbb66ac6
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-14 23:35:09 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:00 +0900

    Assert that the # of bytes matches for label refs (https://github.com/Shopify/ruby/pull/316)

commit 15c6aacd399b2bc7fb5ee2d6422451c4eb47941f
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-14 05:48:55 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:00 +0900

    Encode MRS and MSR for AArch64 (https://github.com/Shopify/ruby/pull/315)

commit 8d743e965e6bf95ea1649839fc1fe2429564c2d9
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-07-13 06:04:09 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:00 +0900

    Fix compile errors on arm on the CI (https://github.com/Shopify/ruby/pull/313)

    * Fix compile errors on arm on the CI

    * Fix typo

commit 6e5382780f4c6cdb7eef945898448639071969fc
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-13 04:28:54 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:00 +0900

    Port over putstring

commit 86606e01ee984cd9aebdcc68c0b5025604fb5184
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-21 04:00:42 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:47:00 +0900

    Port over setlocal_wc0

commit b45b29fdbf43ea6043c1df041372842a07f5b3a8
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-13 03:59:31 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:59 +0900

    Port gen_getlocal()

commit 38c2fb8a90172bcaabc153016f0a43b92a921d9c
  Author:     Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
  AuthorDate: 2022-07-13 02:40:59 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:59 +0900

    Port YJIT New Backend Temp Checks to Cirrus (https://github.com/Shopify/ruby/pull/312)

    Co-authored-by: Jean Boussier <jean.boussier@gmail.com>

commit 8864691bde2560ef440c4a8dac16b2c661faa228
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-12 06:51:58 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:59 +0900

    Better label refs (https://github.com/Shopify/ruby/pull/310)

    Previously we were using a `Box<dyn FnOnce>` to support patching the
    code when jumping to labels. We needed to do this because some of the
    closures that were being used to patch needed to capture local variables
    (on both X86 and ARM it was the type of condition for the conditional
    jumps).

    To get around that, we can instead use const generics since the
    condition codes are always known at compile-time. This means that the
    closures go from polymorphic to monomorphic, which means they can be
    represented as an `fn` instead of a `Box<dyn FnOnce>`, which means they
    can fall back to a plain function pointer. This simplifies the storage
    of the `LabelRef` structs and should hopefully be a better default
    going forward.

commit e1f3f038e93d5b36ed6e6a15feac478bf3cfe1fa
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-09 05:35:51 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:59 +0900

    Fix jumps (https://github.com/Shopify/ruby/pull/309)

    * Jumps for A64 should be in # of instructions

    * More splitting for Arm64

    https://github.com/Shopify/ruby/pull/309

commit 6773832ab9cad3c7bcb3b93ef85a4bcfc9b3a4e3
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-09 02:01:21 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:59 +0900

    More Arm64 lowering/backend work (https://github.com/Shopify/ruby/pull/307)

    * More Arm64 lowering/backend work

    * We now have encoding support for the LDR instruction for loading a PC-relative memory location
    * You can now call add/adds/sub/subs with signed immediates, which switches appropriately based on sign
    * We can now load immediates into registers appropriately, attempting to keep the minimal number of instructions:
      * If it fits into 16 bytes, we use just a single movz.
      * Else if it can be encoded into a bitmask immediate, we use a single mov.
      * Otherwise we use a movz, a movk, and then optionally another one or two movks.
    * Fixed a bunch of code to do with the Op::Load opcode.
    * We now handle GC-offsets properly for Op::Load by skipping around them with a jump instruction. (This will be made better by constant pools in the future.)
    * Op::Lea is doing what it's supposed to do now.
    * Fixed a bug in the backend tests to do with not using the result of an Op::Add.

    * Fix the remaining tests for Arm64

    * Move split loads logic into each backend

commit 0551115912fd6682187dd501275096fdb7570084
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-08 05:39:39 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:59 +0900

    Add #[must_use] annotations to asm instructions

commit ab2fa6ebddc13679452ad9f0fc3a7b630a1cbe3a
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-08 05:28:17 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:59 +0900

    Add a backend test with a load of a GC'd VALUE

commit 580f26959eb31d523ac21d640e21ddbe70779512
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-08 01:35:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:59 +0900

    Get started on branchunless port

commit 65019ed60c635b34337ea35978e931d09ab0181b
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-07 23:49:59 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:59 +0900

    Get codegen for deferred compilation working

commit aab53e2868f7b1a28915f181e0875b990c07b8c9
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-07 04:09:08 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:59 +0900

    Add test for direct jump to a code pointer

commit 7a9b581e0896d4aa7a037da90c837b830213c8e8
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-07-06 05:04:19 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:58 +0900

    Arm64 progress (https://github.com/Shopify/ruby/pull/304)

    * Get initial wiring up

    * Split IncrCounter instruction

    * Breakpoints in Arm64

    * Support for ORR

    * MOV instruction encodings

    * Implement JmpOpnd and CRet

    * Add ORN

    * Add MVN

    * PUSH, POP, CCALL for Arm64

    * Some formatting and implement Op::Not for Arm64

    * Consistent constants when working with the Arm64 SP

    * Allow OR-ing values into the memory buffer

    * Test lowering Arm64 ADD

    * Emit unconditional jumps consistently in Arm64

    * Begin emitting conditional jumps for A64

    * Back out some labelref changes

    * Remove label API that no longer exists

    * Use a trait for the label encoders

    * Encode nop

    * Add in nops so jumps are the same width no matter what on Arm64

    * Op::Jbe for CodePtr

    * Pass src_addr and dst_addr instead of calculated offset to label refs

    * Even more jump work for Arm64

    * Fix up jumps to use consistent assertions

    * Handle splitting Add, Sub, and Not insns for Arm64

    * More Arm64 splits and various fixes

    * PR feedback for Arm64 support

    * Split up jumps and conditional jump logic

commit b272c57f27628ab114206c777d5b274713d31079
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-06-23 01:27:59 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:58 +0900

    LSL, LSR, B.cond (https://github.com/Shopify/ruby/pull/303)

    * LSL and LSR

    * B.cond

    * Move A64 files around to make more sense

    * offset -> byte_offset for bcond

commit d9163280782086b57119abc9478580a6b3efd2c3
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-06-22 08:41:06 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:58 +0900

    Conscise IR disassembly (https://github.com/Shopify/ruby/pull/302)

    The output from `dbg!` was too verbose. For `test_jo` the output went
    from 37 lines to 5 lines. The added index helps parsing InsnOut
    indicies.

    Samples:

    ```
    test backend::tests::test_jo ... [src/backend/ir.rs:589] &self = Assembler
        000 Load(Mem64[Reg(3) + 8]) -> Out64(0)
        001 Sub(Out64(0), 1_i64) -> Out64(1)
        002 Load(Out64(1)) -> Out64(2)
        003 Add(Out64(2), Mem64[Reg(3)]) -> Out64(3)
        004 Jo() target=CodePtr(CodePtr(0x5)) -> Out64(4)
        005 Mov(Mem64[Reg(3)], Out64(3)) -> Out64(5)

    test backend::tests::test_reuse_reg ... [src/backend/ir.rs:589] &self = Assembler
        000 Load(Mem64[Reg(3)]) -> Out64(0)
        001 Add(Out64(0), 1_u64) -> Out64(1)
        002 Load(Mem64[Reg(3) + 8]) -> Out64(2)
        003 Add(Out64(2), 1_u64) -> Out64(3)
        004 Add(Out64(1), 1_u64) -> Out64(4)
        005 Add(Out64(1), Out64(4)) -> Out64(5)
        006 Store(Mem64[Reg(3)], Out64(4)) -> Out64(6)
        007 Store(Mem64[Reg(3) + 8], Out64(5)) -> Out64(7)
    ```

commit 0a96a3918970f1852e1bd691c826c904bccd60b8
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-06-22 07:15:10 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:58 +0900

    Delete dbg!() calls

commit f1b188143b0255cef498ce4fb7a331daca64e063
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-22 06:01:26 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:58 +0900

    Fix backend transform bug, add test

commit 4c0a440b1828fd1cc1dba24ae1d0a384e98859aa
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-22 00:30:08 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:58 +0900

    Port over duphash and newarray

commit 2eba6aef724f20162bd650d535be876aa4a19964
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-22 00:05:20 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:58 +0900

    Port over get_branch_target()

commit 4254174ca76d8e64db29fbcbcfc99a81e2d50211
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-21 05:06:39 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:58 +0900

    Port over setn

commit 24db233fc70799642aad09be9170da61332ff010
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-21 04:50:42 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:58 +0900

    Add jo insn and test for jo

commit 8bb7421d8e222fdae6b51049993efc46cf494f15
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-21 04:34:14 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:58 +0900

    Port topn, adjuststack, most of opt_plus

commit d0204e51e270a1dacdfa3ae775892840b0e7b192
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-21 04:12:22 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:58 +0900

    Port guard_two_fixnums

commit 00ad14f8c92c7b3e305c015b9d4352f1b0c30d5a
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-21 03:55:16 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:57 +0900

    Port gen_full_cfunc_return

commit b89d878ea61d2883838fdd466c6f432134ae1860
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-21 03:50:29 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:57 +0900

    Port getlocal_WC0

commit 4c7d7080d2fdd07d84de63231618a090fa5addad
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-21 02:13:46 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:57 +0900

    Port over gen_putspecialobject

commit c5ae52630f9a362579608f27cfbd7a1f08c4d77f
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-21 02:02:20 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:57 +0900

    Port gen_putself, log what can't be compiled in --yjit-dump-insns

commit 27dd43bbc52eb2040d46370fb0170d4d420223e1
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-06-18 06:26:13 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:57 +0900

    TST, CMP, AND/ANDS with registers (https://github.com/Shopify/ruby/pull/301)

    * Add TST instruction and AND/ANDS entrypoints for immediates

    * TST/AND/ANDS for registers

    * CMP instruction

commit 57e64f70c0af7a19b4cf68462ea2467286f4e9cb
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-21 00:50:10 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:57 +0900

    Make sure allocated reg size in bits matches insn out size

commit eb4c7b4ea55c5a4c593bea4bba9aa1e9093b3447
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-06-17 03:28:51 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:57 +0900

    AND/ANDS for A64 (https://github.com/Shopify/ruby/pull/300)

commit 67de662c4419d4d115f40f8d3ed0c295b581dcf0
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-17 04:34:17 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:57 +0900

    Add Opnd.rm_num_bits() method

commit 084d4bb19228eed3e89663a2d24ab3accaa1a4ee
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-17 04:25:27 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:57 +0900

    Implement X86Reg::sub_reg() method

commit 4932a6ef755ae4cc473666c8757f7c51ac8c2902
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-17 00:20:54 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:57 +0900

    Fix small bug in x86_split

commit b8fc9909bfa18677d5ad2cb2535ca1f0537216e5
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-16 05:30:40 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:56 +0900

    Get rid of temporary context methods

commit 40ac79ada89953f5ed9e36bdb5b3d0d3ae8d8f3e
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-16 05:17:15 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:56 +0900

    Add bitwise and to x86 backend

commit abea8c8983aef411f7e6a2afbfbc25e31b2f5486
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-16 05:16:33 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:56 +0900

    Add stores to one of the tests

commit 1923842b3dd97cf00d1511b7962a509dd650f06b
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-16 05:07:38 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:56 +0900

    Move backend tests to their own file

commit 59b818ec8757348e3f7fa463ace36489c5ec75ac
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-16 03:13:04 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:56 +0900

    Add support for using InsnOut as memory operand base

commit 401521ca14da1b740be9004cc4a344925dbf5fff
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-16 02:24:21 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:56 +0900

    Rename transform_insns to forward_pass

commit ae9bcfec8c237266e324fc1ae6a7a28390045b7e
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-16 02:03:20 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:56 +0900

    Add assert

commit e743e3bf20a38d44888383393823b8776c2d1e90
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-15 05:32:54 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:56 +0900

    Remove unused code, add backend asm test

commit 4dbc1e1d825b4a50e3847de788da0ab6a8d860ae
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-15 05:02:43 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:56 +0900

    Port bitwise not, gen_check_ints()

commit 9d18e6c300eacfdf11e166326156677e56fc6392
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-15 04:50:48 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:56 +0900

    Port gen_code_for_exit_from_stub()

commit e72dab304e423ad8c98656c146d52f6a8fa4a2c2
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-15 04:45:41 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:55 +0900

    Add atomic counter increment instruction

commit 27fcab995e6dde19deb91dc6e291bdb72100af68
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-15 02:41:53 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:55 +0900

    Get side exits working, get miniruby to boot with threshold=1

commit c10e018e1c2dd3351af1f40f9b20ea23cfeace36
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-06-14 06:16:33 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:55 +0900

    LDADDAL, STUR, BL (https://github.com/Shopify/ruby/pull/299)

    * LDADDAL instruction

    * STUR

    * BL instruction

    * Remove num_bits from imm and uimm

    * Tests for imm_fits_bits and uimm_fits_bits

    * Reorder arguments to LDADDAL

commit 1daa5942b83ede3e504f9952a1f705b763e59893
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-06-09 04:19:53 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:55 +0900

    MOVK, MOVZ, BR (https://github.com/Shopify/ruby/pull/296)

    * MOVK instruction

    * More tests for the A64 entrypoints

    * Finish testing entrypoints

    * MOVZ

    * BR instruction

commit 0000984fed1be885ad51845477f4e475d1b07fab
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-10 05:29:55 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:55 +0900

    Port over putnil, putobject, and gen_leave()

    * Remove x86-64 dependency from codegen.rs

    * Port over putnil and putobject

    * Port over gen_leave()

    * Complete port of gen_leave()

    * Fix bug in x86 instruction splitting

commit d75c346c1cb5d67fd4c6582274a3ff4f1450af15
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-10 04:40:27 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:55 +0900

    Port gen_leave_exit(), add support for labels to backend

commit ea9abe547da383f30bd0afe73c6693ed1ff68765
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-09 05:09:16 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:55 +0900

    Add cpush and cpop IR instructions

commit 77383b3958a90c3e6c257e3c4431fed54a9de10b
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-09 04:01:13 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:55 +0900

    Add conditional jumps

commit b63f8bb45619c891ce45466031012c0a48defefe
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-06-08 03:20:43 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:55 +0900

    LDUR (https://github.com/Shopify/ruby/pull/295)

    * LDUR

    * Fix up immediate masking

    * Consume operands directly

    * Consistency and cleanup

    * More consistency and entrypoints

    * Cleaner syntax for masks

    * Cleaner shifting for encodings

commit 71770ceee5c515d97dad1a0088008561106d141d
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-08 23:30:10 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:55 +0900

    Map comments in backend

commit c2fdec93a9d533e9e9eaabd96b6bf5210b211abf
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-08 05:57:16 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:55 +0900

    First pass at porting gen_entry_prologue()

commit 03ed50310d772e555f819a4b321e4d6593161233
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-08 05:27:10 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:54 +0900

    Have Assembler::compile() return a list of GC offsets

commit 26ba0a454c1d08df0afacca2786330198a1daee0
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-06-08 02:37:49 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:54 +0900

    RET A64 instructions (https://github.com/Shopify/ruby/pull/294)

commit e22134277b81124ba2ce4cf3e08ad0983c0432c9
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-08 04:22:06 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:54 +0900

    Remove x86_64 dependency in core.rs

commit 3133540be79a511c79c3876df40ad25c912ecc79
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-08 02:38:47 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:54 +0900

    Progress on codegen.rs port

commit a1b8c947380716a5ffca2b1888a6310e8132b00c
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-16 02:10:13 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:54 +0900

    * Arm64 Beginnings (https://github.com/Shopify/ruby/pull/291)

    * Initial setup for aarch64

    * ADDS and SUBS

    * ADD and SUB for immediates

    * Revert moved code

    * Documentation

    * Rename Arm64* to A64*

    * Comments on shift types

    * Share sig_imm_size and unsig_imm_size

commit 39dd8b2dfbb50aab7731466b57c39eaf96e66996
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-07 06:57:07 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:54 +0900

    Add test for lea and ret. Fix codegen for lea and ret.

commit 04e2ccede4e992a6e0d18ed506d76625ee7da8a3
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-06-07 04:54:22 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:54 +0900

    Change codegen.rs to use backend Assembler directly

commit 7c83a904a49a8ba3a1b78474a6d51a7a32178a4a
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-26 04:05:54 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:54 +0900

    Implement gc offset logic

commit efb45acb2932dd8ebd60853584370ca75653cdf8
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-25 05:30:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:54 +0900

    Load GC Value operands into registers

commit a88fc48b3a61b63aa1c2f4b05981e0d8726e2b9e
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-25 04:44:46 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:54 +0900

    Add CCall IR insn, implement gen_swap()

commit 0032b02045af081df30f35b508b6b790e44fcdc2
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-25 01:03:21 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:53 +0900

    Add gen_dupn

commit 872940e215dd571c45e9c30d96fa7b9f61dc0442
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-20 05:51:47 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:53 +0900

    Add test with register reuse

commit 151cc55baa8d73969a57228d3a18458e5fe663ed
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-20 05:17:09 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:53 +0900

    Fix issue with load, gen_dup

commit 1b2ee62149d5fa8d8cbe2097f9fd7a3af31989c2
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-20 04:01:20 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:53 +0900

    Implement target-specific insn splitting with Kevin. Add tests.

commit 564f9503603ae261561193f69f1fbdef6a140aa1
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-20 02:32:56 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:53 +0900

    Make assembler methods public, sketch gen_dup with new backend

commit 99cfbdca6b7c2dd167137e7256cc861961969ffd
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-20 01:26:20 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:53 +0900

    Fix bug with asm.comment()

commit 75c995b0d10515568ccfe8f67be1bd3bbcbb4b69
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-19 05:00:45 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:53 +0900

    Bias register allocator to reuse first operand

commit 369911d31de0446dbee805a5e4ddd5691518e6ff
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-19 03:41:43 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:53 +0900

    Add dbg!() for Assembler. Fix regalloc issue.

commit a2aa289594352db98b893aae716cebae0556a20e
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-19 00:36:55 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:53 +0900

    Function to map from Opnd => X86Opnd

commit e9cc17dcc9a365d59330b8c37baeafed5d75a519
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-18 06:31:36 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:46:53 +0900

    Start work on platform-specific codegen

commit a3d8e20ceaa934b56383c368f8c3838384f71a73
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-05-17 03:48:28 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:37:49 +0900

    Split insns (https://github.com/Shopify/ruby/pull/290)

    * Split instructions if necessary

    * Add a reusable transform_insns function

    * Split out comments labels from transform_insns

    * Refactor alloc_regs to use transform_insns

commit 2b7d4f277d120229fca4cc9665b44ef1e5cbf7e7
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-05-14 03:55:01 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:37:49 +0900

    IR register allocation

    PR: https://github.com/Shopify/ruby/pull/289

commit 7753b6b8b6a011d048a6b3aaf912d1dad7995b7b
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-14 04:58:36 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:37:49 +0900

    Removed String opnd so that we can derive Copy for Opnd

commit 5021f26b4ba270b2fc36a6fce7b4d54bb65b7062
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-13 03:31:17 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:37:49 +0900

    Complete sketch for guard_object_is_heap

commit 884cbaabd9c15cdc85809cf713c1be755ea70cf7
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-13 03:16:09 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:37:49 +0900

    Change push insn macros

commit 92e9d1e66186d41a01f6116d1993fbfd66fdf1a6
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-13 03:05:48 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:37:48 +0900

    Switch IR to use Option<Target>

commit 96e5f9def0121a7ee4f1557b25dade7bdb558df8
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-13 02:55:49 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:37:48 +0900

    Add macro to define ops

commit 909d214708d87e1dab618a04b4780dd926c721ca
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-12 05:45:15 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:37:48 +0900

    Progress on IR sketch

commit 2ffaa377c212279e4a8bf1da8ac65a00dcdadd53
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-12 04:17:44 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-30 00:37:48 +0900

    WIP backend IR sketch

commit 4ee1a687768338a1928014fc6042c320a1a1af3e
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-08-29 22:36:29 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-08-29 22:36:29 +0900

    Update to ruby/spec@d01709f

commit a319d3cfdc1afef8497321fee7f690052b16739c
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-08-29 22:32:48 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-08-29 22:32:48 +0900

    Run specs with CHECK_LEAKS=true

    * To ensure these issues are noticed early.

commit 4bc782ed87d05d251d1656ca08e176f8bb56a448
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-08-29 20:23:51 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-08-29 20:23:51 +0900

    Revert "Chect what remains in TMPDIR"

    This reverts commit 7bdb999d0f28c7bb9d7a35ca775e405674527e5f.

    I think I confirmed the mechanism. GCC (invoked by MJIT) creates a
    temporary file in TMPDIR, which prevents rm_rf from removing the
    directory.

commit 78748a5de2146d00696698340d745bba3ec66496
  Author:     S.H <gamelinks007@gmail.com>
  AuthorDate: 2022-08-29 14:42:19 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-29 14:42:19 +0900

    Introduce `usage_analysis_clear`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6274

    Merged-By: nobu <nobu@ruby-lang.org>

commit 7bdb999d0f28c7bb9d7a35ca775e405674527e5f
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-08-29 12:50:47 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-08-29 12:50:47 +0900

    Check what remains in TMPDIR

    I guess it has a shared library file created by MJIT, but I want to make
    sure the fact.

commit 41a275c89ac8064f18d995251b9fb3349a24273b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-29 09:52:09 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-29 09:52:09 +0900

    Support main branch for syntax_suggest

commit 055fc7b14dc375089b454cc7eaebeb78f9f3efaa
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-08-29 06:57:36 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-29 06:57:36 +0900

    Fix comment in timev.rb

commit aecc3b12528e1b02d24bcd5df746e93aa04ba211
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-29 06:49:51 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-29 06:49:51 +0900

    [DOC] Enhanced RDoc for Time (#6294)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 8799c912052f8bb957a65edd103e0064cac94598
  Author:     shields <shields@tablecheck.com>
  AuthorDate: 2022-08-28 22:40:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-29 00:33:15 +0900

    [rubygems/rubygems] Add platform :windows as a shortcut for all Windows platforms

    https://github.com/rubygems/rubygems/commit/f3c49ad3f7

commit ace2eee544378eb03ea95b95c89434508325e8c8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-28 09:29:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-28 09:29:24 +0900

    [Bug #18963] Separate string contents by here document terminator

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6292

commit 111b69e8a009f469356a723183b651626dbaa8c4
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-28 07:47:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-28 07:47:18 +0900

    Pass wait: false to avoid a timeout

commit a797ded8e2637de91dd4dd5b54bed515f6cda08a
  Author:     spaette <lindblad@gmx.us>
  AuthorDate: 2022-08-28 06:09:55 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-28 06:42:55 +0900

    typos

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6290

commit 95d2d7920c97d0502ebed4ba439177325ad05e57
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-28 04:05:41 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-28 04:05:45 +0900

    Try to prevent the failure of FileUtils.rm_rf

commit 458d49a04ab7ce8a61be11fbaf341ee252b8253a
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-28 02:21:23 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-28 02:22:30 +0900

    Ignore rm -rf failure

    http://ci.rvm.jp/results/trunk-mjit@phosphorus-docker/4213386

    It's failing with:
    rm: cannot remove '/tmp/ruby/v3/build/trunk-mjit/tmp/test_rubygems_20220827-13666-ii8lcp': Directory not empty
    rm: cannot remove '/tmp/ruby/v3/build/trunk-mjit/tmp/test_rubygems_20220827-13666-fy77y1': Directory not empty

    I'd like to make sure the following `ENV.replace` is called and see if
    there's any other issues.

commit 381d8e43ce33378345a834b3e554e977f157351a
  Author:     Aleksandr Varnin <10187586+cmrd-senya@users.noreply.github.com>
  AuthorDate: 2022-08-25 01:09:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-28 02:04:14 +0900

    [rubygems/rubygems] Bundler: make to_lock  consistent between Gem::Dependency and Bundler::Dependency

    https://github.com/rubygems/rubygems/commit/971d57cf5a

commit 13d2225c460cfc3daa679acb89433289527a844f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-27 15:32:01 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-27 15:35:45 +0900

    Try rm -rf instead of FileUtils.rm_rf

    FileUtils.rm_rf started to randomly fail on http://ci.rvm.jp/results/trunk-mjit@phosphorus-docker
    since around https://github.com/ruby/fileutils/pull/99.

commit d6f21b308bcff03e82f8b3dbf11a852ce111b3b3
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-26 15:00:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-26 15:00:19 +0900

    Convert catch_except_t to stdbool

    catch_excep_t is a field that exists for MJIT. In the process of
    rewriting MJIT in Ruby, I added API to convert 1/0 of _Bool to
    true/false, and it seemed confusing and hard to maintain if you
    don't use _Bool for *_p fields.

commit 098a3cfaa7afe40e023e589c92124bac18e207c3
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-26 11:25:10 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-26 12:15:47 +0900

    Fixed typo

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6287

commit 1cbee173bef4ce8dfb779e367b75a05f9777cea6
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-26 11:18:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-26 12:15:47 +0900

    Sync examples and cli from syntax_suggest

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6287

commit 3a2bc849541a38fe0050bd6b522adf6fedbc29f5
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-26 11:15:01 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-26 12:15:47 +0900

    Added test-syntax-suggest to CI

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6287

commit 5e4d1f9908fc09d0d9a451fd7e385af5ef0d7007
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-26 11:13:26 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-26 12:15:47 +0900

    Skip examples to need installed ruby exe

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6287

commit 8dfc077f7016715f33b4818ad3e6770d557356a1
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-26 11:10:15 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-26 12:15:47 +0900

    Added syntax_suggest cli and resolve failing exapmle with it

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6287

commit bd1b1eeb0e528da983e76216d459a1d61aa026cb
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-26 10:49:11 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-26 12:15:47 +0900

    ruby-prof is now optional

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6287

commit 9c2af0a171cb362ba3b1eb116b6fdb060cb62d2c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-26 10:42:44 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-26 12:15:47 +0900

    added test-syntax-suggest and prepare tasks

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6287

commit 0d9f4ea0d45f6577a4a13f898e981958a1f039c6
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-19 15:37:45 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-26 12:15:47 +0900

    Import spec examples from ruby/syntax_suggest

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6287

commit 3504be1bc13235407e01f55d3df6fe0b4cb5ba9e
  Author:     Jun Aruga <jaruga@redhat.com>
  AuthorDate: 2022-08-26 03:11:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-26 09:57:02 +0900

    [ruby/irb] Require RDoc in `input-method.rb` again in a limited scope.

    RDoc is implemented as soft dependency in IRB. See how the rdoc is required in
    the files. I reverted the commit below.

    ```
    $ grep -ril rdoc lib/
    lib/irb/cmd/help.rb
    lib/irb/completion.rb
    lib/irb/easter-egg.rb
    lib/irb/input-method.rb
    ```

    ---

    Revert "Remove `require` in signal handler to avoid ThreadError"

    This reverts commit https://github.com/ruby/irb/commit/5f749c613c89.

    https://github.com/ruby/irb/commit/b24852058f

commit 21cac42385e1a116d287e155e461453b830640d2
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-05-27 02:37:01 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-26 05:36:17 +0900

    Raise ArgumentError for IO.foreach with limit of 0

    Makes behavior consistent with IO.readlines.

    Fixes [Bug #18767]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5954

commit 881bc2a1765e7c19ab389c53841adc5ac329f1aa
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-26 03:36:04 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-26 03:37:39 +0900

    Skip running a DRb test on MinGW

    It hangs even after a retry
    https://github.com/ruby/ruby/runs/7966439530?check_suite_focus=true

    We contacted GitHub Suppport about this before, and we concluded that
    the problem is on our end. Unfortunately we don't have a bandwidth to
    fix this MinGW problem, so until we get to work on it, this should be
    just skipped to avoid a sporadic CI timeout.

commit af9fa16c96284f61b595a8f994926533fd51fd3b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-26 03:31:16 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-26 03:31:16 +0900

    Make sure super is called and fix teardown

commit 52560a92631e7b327365383e7ce83c80fcfafc05
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-26 03:07:23 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-26 03:11:16 +0900

    Skip flaky mkmf tests on AppVeyor

    It seems like TestMkmfTryConstant started to randomly fail, maybe
    related to 96562a517d3373466ec306b5f821a41f4758d2a6 or 073f3b7e0ad94657c04573983affb9d66e6bff2c.

    Some of them seem to have failed even after retries, so it feels like
    there's a bug in the implementation, which leaves an unrecoverable situation.
    https://ci.appveyor.com/project/ruby/ruby/builds/44559958/job/7uub5bmkvy4pwwl8
    https://ci.appveyor.com/project/ruby/ruby/builds/44579924/job/n81xmb2mqs6no7dm
    https://ci.appveyor.com/project/ruby/ruby/builds/44558471/job/s4qwymmlxmfjjd35

    Until we figure out what it is, I'd like to stabilize the CI by not
    running it.

commit 8706b74b902db70c5c00c8008a0f0b045381eb7e
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-26 03:02:18 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-26 03:02:18 +0900

    [DOC] Enhanced RDoc for Time (#6277)

    Deletes the :include: files in doc/time, which became no longer workable when @nobu pointed out that some (but not all) creator methods accept string values as well as integer-like values.
    Changes to methods:

        Time.utc
        Time.local
        Time.at
        Time.new

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit b2d0f788694c680d2abf695358e42d819b11b2ec
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-08-25 16:28:07 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-08-26 00:49:50 +0900

    Fix private methods reported as protected when called via Symbol#to_proc

    Ref: bfa6a8ddc84fffe0aef5a0f91b417167e124dbbf
    Ref: [Bug #18826]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6284

commit c069f50401583ca0d021869b104e2eb9df2cfa6a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-25 23:50:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-26 00:07:19 +0900

    [DOC] Tell RDoc aliases of singleton class

    Since RDoc C parser cannot capture aliases which are using an
    expression other than a single variable as the class, use an
    intermediate variable for the singleton class.

commit ad8774f8e537a3ad73ce56bd12e75c85271f93a3
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-25 05:54:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-25 23:39:02 +0900

    [rubygems/rubygems] Fix another regression for sorbet

    Recently a changed was introduced to update the resolver platforms after
    it has been created, in order to remove the "ruby" platform from it if
    it's to be removed from the lockfile. However, it did not update the
    `@resolving_only_for_ruby` instance variable in that case, so the
    resolver was not properly doing the right thing anymore.

    To fix this, I tweaked the code to restore not changing resolver
    platforms after the resolver has been instantiated.

    https://github.com/rubygems/rubygems/commit/8fbc30a1d0

commit f5f81bb777bb1dbf8da3f976136733e65b026fef
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-08-25 06:15:41 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-25 06:15:41 +0900

    Update Module#instance_methods documentation for visibility changes/aliases

    Requested by matz in comment on #18435.

commit 28a3434634a0116a6f2b9e2df0bcbbfb0cfbd28b
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-08-24 05:23:40 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-08-25 02:54:27 +0900

    Disable Ractor check on 32bit architectures

    Ractor verification requires storing the ractor id in the top 32 bits of
    the object header.  Unfortunately 32 bit machines only have 32 bits in
    the object header.  The verification code has a 32 bit left shift which
    doesn't work on i686 and will clobber existing flags.

    This commit disables the verification code on i686 since i686 will crash
    if it's enabled.

    Co-Authored-By: John Hawthorn <john@hawthorn.email>
    Co-Authored-By: Jemma Issroff <jemmaissroff@gmail.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6279

commit b4be3c00c5737649166db676278fd28f768a5e3c
  Author:     Noah Gibbs <the.codefolio.guy@gmail.com>
  AuthorDate: 2022-07-29 00:45:08 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-25 02:42:45 +0900

    add --yjit-dump-iseqs param (https://github.com/Shopify/ruby/pull/332)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6278

commit 0ad9cc16966c2e56f0fe7e5992edf76033d3a83f
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-04 20:03:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-24 17:59:15 +0900

    [rubygems/rubygems] Backport non-gnu libc on linux platform matching to Bundler

    https://github.com/rubygems/rubygems/commit/703373b41f

    Co-authored-by: Loic Nageleisen <loic.nageleisen@gmail.com>

commit 314b76a567e84f3ef245e84e844bdd4aaaad4f2a
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-08-24 10:36:17 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-08-24 10:36:17 +0900

    test/-ext-/eval/test_eval.rb: Prevent "assigned but unused variable"

commit 60c900f452327b9b5c82b1e2a8d1d9f88ce8a9b7
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-08-23 02:42:38 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-24 06:27:49 +0900

    Add @k0kubun to CODEOWNERS for YJIT

commit 46c3a93982d0b81668668a65c10bc3670a488d8a
  Author:     Vít Ondruch <vondruch@redhat.com>
  AuthorDate: 2022-08-23 17:41:28 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-23 18:01:35 +0900

    [ruby/irb] Drop hard dependency on RDoc.

    This has been introduced in https://github.com/ruby/irb/commit/026700499dfd,
    but it seems that this is just be mistake, otherwise the later handling
    of `LoadError` would not be needed.

    https://github.com/ruby/irb/commit/54c8df06ff

commit 983115cf3c8f75b1afbe3274f02c1529e1ce3a81
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-07-26 21:31:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-23 16:52:41 +0900

    [ruby/fileutils] FileUtils.rm* methods swallows only Errno::ENOENT when force is true

    ... instead of any StandardError.

    To behave like the standard `rm` command, it should only ignore
    exceptions about not existing files, not every exception. This should
    make debugging some errors easier, because the expectation is that `rm
    -rf` will succeed if and only if, all given files (previously existent
    or not) are removed. However, due to this exception swallowing, this is
    not always the case.

    From the `rm` man page

    > COMPATIBILITY
    >
    > The rm utility differs from historical implementations in that the -f
    > option only masks attempts to remove non-existent files instead of
    > masking a large variety of errors.

    https://github.com/ruby/fileutils/commit/fa65d676ec

    Co-Authored-By: David Rodríguez <deivid.rodriguez@riseup.net>

commit 96562a517d3373466ec306b5f821a41f4758d2a6
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-07-26 21:23:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-23 16:52:40 +0900

    [ruby/fileutils] Narrow the scope of ensure

    The ensure in postorder_traverse was added for [Bug #6756].
    The intention was to try to delete the parent directory if it failed to
    get the children. (It may be possible to delete the directory if it is
    empty.)

    However, the ensure region rescue'ed not only "failure to get children"
    but also "failure to delete each child". Thus, the following raised
    Errno::ENOTEMPTY, but we expect it to raise Errno::EACCES.

    ```
    $ mkdir foo
    $ touch foo/bar
    $ chmod 555 foo
    $ ruby -rfileutils -e 'FileUtils.rm_rf("foo")'
    ```

    This changeset narrows the ensure region so that it rescues only
    "failure to get children".

    https://github.com/ruby/fileutils/commit/ec5d3b84ea

commit 073f3b7e0ad94657c04573983affb9d66e6bff2c
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-07-26 21:17:30 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-23 16:52:39 +0900

    [ruby/fileutils] Fix the test permission of "test_rm_rf"

    The test was added for [Bug #6756]. The ticket insisted
    `FileUtils.rm_rf` should delete an empty directory even if its
    permission is 000. However, the test tried to delete a directory with
    permission 700.

    https://github.com/ruby/fileutils/commit/d6c2ab2c01

commit 7c784f0a6775c09960ee4ec1b9a680aae30aced7
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-08-23 13:11:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-23 15:33:34 +0900

    [rubygems/rubygems] Bundler: avoid use of "can not" in spec literals

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/73b5cf9bd1

commit 22a416a3bbdcd868ad20f51ac690bef9f85303e7
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-08-23 12:26:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-23 14:28:47 +0900

    [rubygems/rubygems] Bundler: update the link suggested on error with the new one

    Also typo is fixed.

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/9c1ea52ddf

commit 9f6fcfcd7f74d5537f7631837e425fd4b61c0400
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-23 14:04:09 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-23 14:04:15 +0900

    Ubuntu 18.04 in GHA is deprecated from Aug 8,2022

      https://github.com/actions/runner-images/issues/6002

commit 892fe9bbbaa8b1c286d8d5404eb707ad4288a274
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-23 12:49:46 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-23 12:49:46 +0900

    omit all assertions at TestIO_Console#test_intr when running with FreeBSD

commit 545c2b0047309e3a94745cea95d36d44f2223276
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-23 11:28:57 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-23 11:28:58 +0900

    Fix an inconsistent include guard macro

    I was thinking about making it internal/mjit.h, but didn't.

commit c1ecc498e4b879c85ee9ea7bfb3cf496777b6fcc
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-23 09:34:32 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-23 10:45:57 +0900

    Use rbs HEAD for https://github.com/ruby/rbs/pull/1090

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6268

commit f69244cee8c01d82e94d38032c82be684f37808a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-22 11:52:51 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-23 10:45:57 +0900

    Merge rubygems/bundler HEAD

      Pick from https://github.com/rubygems/rubygems/commit/6b3a5a9ab0453463381a8164efb6298ea9eb776f

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6268

commit 4790d0accdb745f9d8e605fd42eab712e4ebf834
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-19 06:28:26 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-23 10:45:57 +0900

    [rubygems/rubygems] Fix conservative update downgrading top level gems

    When `--conservative` is passed, explicit unlocks are set for top level
    gems via `@unlock[:gems]`, so that only those particular gems are
    allowed to be updated.

    When we compute the "base resolve" from the lockfile (the set of gems
    whose versions should be kept pinned by the resolver), we always exclude
    gems explicitly unlocked through `@unlock[:gems]` from it. This is done
    by the `converge_specs` method.

    However, the `converge_specs` method is also used for figuring out
    additional lower bound requirements from the lockfile. But in this case,
    even if gems are explicitly unlock in `@unlock[:gems]`, we still want to
    add the additional requirement, so that gems are not downgraded by the
    resolver.

    So the solution is to move the line filtering out gems in
    `@unlock[:gems]` from the `converged_specs` method out of that method,
    so that it only applies for computing the "base resolve", but not the
    addtional lower bound requirements.

    https://github.com/rubygems/rubygems/commit/405119bd7b

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6268

commit c21c9a29eead43364e6347c0ce2f468d26391b1b
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-09 18:39:03 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-23 10:45:57 +0900

    [rubygems/rubygems] Refactor building metadata dependencies

    https://github.com/rubygems/rubygems/commit/fa60f1fe43

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6268

commit a9509068db84d6a86a718b5ae931b8d65fc15272
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-09 06:48:02 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-23 10:45:57 +0900

    [rubygems/rubygems] Make `compact_index_api_missing` server more strict

    The compact index should not request any marshaled gemspecs whatsoever.

    https://github.com/rubygems/rubygems/commit/6dbd44d0c0

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6268

commit 29c443fedc0d3692cb52241318abb0de619ae178
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-09 05:03:55 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-23 10:45:57 +0900

    [rubygems/rubygems] Remove unnecessary mixin inclusion

    It's already included by the parent.

    https://github.com/rubygems/rubygems/commit/3ffe389c44

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6268

commit b30fc03e924235207edb009be2108226e4c8efc6
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-09 04:39:49 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-23 10:45:57 +0900

    [rubygems/rubygems] Centralize loading `Bundler::MatchPlatform` mixin

    It's explicitly loaded when monkeypatching RubyGems, which we do very
    early. So neither autoloading it, nor explicitly loading it anywhere
    else is necessary.

    https://github.com/rubygems/rubygems/commit/fbc7a57161

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6268

commit 6465a5331a2e5a0361e566b9c55f5314271a4df9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-23 09:04:57 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-23 09:04:57 +0900

    [DOC] Remove extra page-dir prefix

commit 59f27445eaf1f28b4c9769bbfd13e3a4bffa17da
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-05 23:16:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-23 05:50:23 +0900

    [rubygems/rubygems] Implement extra rules for libc versioning

    https://github.com/rubygems/rubygems/commit/7e976d790a

commit 492e70c7b4303ffea8f8c07797e1696b90ce1d01
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-05 20:24:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-23 05:50:22 +0900

    [rubygems/rubygems] Fix `gem install` still choosing musl incorrectly

    https://github.com/rubygems/rubygems/commit/1b9f7f50a5

commit 06ae78f8fb7156e0f0c732fb797343b0c6921a5c
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-05 20:24:14 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-23 05:50:22 +0900

    [rubygems/rubygems] Remove unnecessary variables

    https://github.com/rubygems/rubygems/commit/b5e0c683d9

commit 9819283044b6955f4e3b464e6a99196e84ed107a
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-04 20:02:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-23 05:50:21 +0900

    [rubygems/rubygems] Handle non-gnu libc on linux platforms in RubyGems

    Attempting to install a gem published as both *-linux and *-linux-musl
    results in the incorrect gem being picked up, causing build failures due
    to binary incompatibility. This is caused by the `nil` wildcard
    swallowing the libc information upon version comparison.

    Handle the linux case by performing only non-wildcard equality on the
    version and asserting 'gnu' and nil equivalence, while preserving the
    current behaviour for other OSes.

    https://github.com/rubygems/rubygems/commit/9eead86abc

    Co-authored-by: Loic Nageleisen <loic.nageleisen@gmail.com>

commit f254b673f89c12c42538d84b431116cf5ed0cde7
  Author:     Loic Nageleisen <loic.nageleisen@gmail.com>
  AuthorDate: 2020-11-24 21:55:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-23 05:50:20 +0900

    [rubygems/rubygems] Test platform parsing stability

    On past versions there were observed cases of inconsistencies when some
    platforms were re-parsed.

    Ensure that a platform's string representation parses again in a
    platform object equal to the original.

    https://github.com/rubygems/rubygems/commit/6da35ee93c

commit 615f79be3cef210c26b967f06979ed464bf9e178
  Author:     Loic Nageleisen <loic.nageleisen@gmail.com>
  AuthorDate: 2020-11-24 21:52:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-23 05:50:20 +0900

    [rubygems/rubygems] Test platform's version-ness consistently

    The symmetry with the "for command line" case is made more apparent.

    https://github.com/rubygems/rubygems/commit/ab85d3558f

commit aeac8b6c3a48279ffe138f3be6ae62208f43f5b3
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-23 03:17:05 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-23 03:17:05 +0900

    [DOC] Addition to section 'Related Methods' (#6271)

    Addition to section 'Related Methods':  suggests adding differentiators to the names of related methods.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit b8d142e733b5fc8810f53a45a7107414e6ae567c
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-23 01:21:36 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-23 01:21:36 +0900

    [DOC] Enhanced RDoc for Time (#6267)

    Treats:
        #utc
        #getlocal
        #getutc
        #ctime
        #to_s
        #inspect

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit f99904341e0c376450113f0c37cb1b65d5b62bf3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-22 23:14:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-22 23:15:30 +0900

    [DOC] Remove extra page-dir prefix

commit 13d31331c87f6fc0a8d43135be67090cd4c810c3
  Author:     S.H <gamelinks007@gmail.com>
  AuthorDate: 2022-08-22 18:52:36 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-22 18:52:36 +0900

    Reuse `nonlocal_var` patterns

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6263

    Merged-By: nobu <nobu@ruby-lang.org>

commit d5f50463c2b5c5263aa45c58f3f4ec73de8868d5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-22 12:21:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-22 12:26:43 +0900

    [Bug #18937] Coerce non-Numeric into Complex at comparisons

commit d0b17a4d203b0838e2290bcc52a647e045596b59
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-22 12:06:23 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-22 12:23:38 +0900

    Adjust space-width for help message

commit 6afb4f0a28cbb798b709a8215fe0ac99221333f2
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-22 12:05:46 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-22 12:23:38 +0900

    Added help entry for test-bundler-parallel

commit 3d6baad7fac8c73cef8c82fe946757cf289c704c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-22 11:40:38 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-22 11:40:38 +0900

    Added syntax_suggest entry to NEWS

commit 70f69f85395f5735429cd45136d7de2742f08b72
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-02 03:35:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-22 10:12:25 +0900

    [ruby/fileutils] Fix mkdir_p hanging on Windows when trying to create a file on a offline drive

    https://github.com/ruby/fileutils/commit/9cc6a082d7

commit 9f3140a42e3542dce565a27135dceeb135a4e691
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-22 03:34:20 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-22 03:35:40 +0900

    Remove mjit_exec benchmarks

    Now that mjit_exec doesn't exist, those files feel old. I'll probably
    change how I benchmark it when I add benchmarks for it again.

commit a60507f616a7f5beb4aef99aa56f6b964c16880d
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-22 03:30:32 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-22 03:33:06 +0900

    Rename mjit_compile.c to mjit_compiler.c

    I'm planning to introduce mjit_compiler.rb, and I want to make this
    consistent with it. Consistency with compile.c doesn't seem important
    for MJIT anyway.

commit 936327a51915d6a39086f65ea1b8e5c5c4ade78f
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-22 01:36:36 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-22 01:36:36 +0900

    [DOC] Enhanced RDoc for Time (#6255)

    Treats:
        #utc
        #hash
        #localtime

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit b043dd9c5dd7b5c46580e49ad38b49d5cb5beaf1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-21 20:06:39 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-21 20:06:39 +0900

    Check the room including the space to fill

commit 0cc989696e9a7d0386773d23aa64de8fc04ea9fe
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-07-01 06:38:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-21 20:01:27 +0900

    Add invalid hexadecimal float tests

commit 560941e711bed8e8cdd0183b76d9e2057cce6806
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-19 21:03:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-21 17:54:11 +0900

    [rubygems/rubygems] Fix edge case where `bundler/inline` unintentionally skips install

    If the application has the `no_install` setting set for `bundle
    package`, then `bundler/inline` would silently skip installing any gems.

    https://github.com/rubygems/rubygems/commit/7864f49b27

commit b87ddd7538220e9782274281356fd55bfd29078b
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-20 03:35:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-21 17:53:40 +0900

    [rubygems/rubygems] Fix `bundle platform` crash when there's a lockfile with no Ruby locked

    https://github.com/rubygems/rubygems/commit/49fc54e87d

commit f6d4d73abd986fbd89918fa8bbbb82746ee08371
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-21 14:04:52 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-21 14:04:52 +0900

    Use `rb_fork` to suppress deprecated-declarations warnings

commit ddf96b7693639e354e95b4d0c6021586968a5a5f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-21 10:35:36 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-21 10:35:36 +0900

    Drop mswin support of MJIT (#6265)

    The current MJIT relies on SIGCHLD and fork(2) to be performant, and
    it's something mswin can't offer. You could run Linux MJIT on WSL
    instead.

    [Misc #18968]

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit dc8d70e4615cdf12378322fbcd4396486270ddbe
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-21 08:33:03 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-21 08:33:03 +0900

    Execute MJIT in a forked Ruby process (#6264)

    [Misc #18968]

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 209631a45f9682dedf718f4b4a140efe7d21a6fc
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-08-15 23:01:33 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-08-20 20:44:00 +0900

    Consider resolved-through-zsuper methods equal for compatibility

    * Fixes https://bugs.ruby-lang.org/issues/18751

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6242

commit 8212aab81a77a2a91fb7c1681b4968171193b48f
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-12-28 02:39:15 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-08-20 20:44:00 +0900

    Make Object#method and Module#instance_method not skip ZSUPER methods

    Based on https://github.com/jeremyevans/ruby/commit/c95e7e5329140f640b6497905485761f3336d967

    Among other things, this fixes calling visibility methods (public?,
    protected?, and private?) on them.  It also fixes #owner to show the
    class the zsuper method entry is defined in, instead of the original
    class it references.

    For some backwards compatibility, adjust #parameters and #source_location,
    to show the parameters and source location of the method originally
    defined. Also have the parameters and source location still be shown
    by #inspect.

    Clarify documentation of {Method,UnboundMethod}#owner.

    Add tests based on the description of https://bugs.ruby-lang.org/issues/18435
    and based on https://github.com/ruby/ruby/pull/5356#issuecomment-1005298809

    Fixes [Bug #18435] [Bug #18729]

    Co-authored-by: Benoit Daloze <eregontp@gmail.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6242

commit b32a3f1275a8c7748f2134492ce3c532f277d261
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-20 16:25:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-20 16:25:30 +0900

    [Bug #18964] Add test for `rb_econv_append`

commit 485019c2bd02794b484500c78919b0d1230e4a84
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-20 15:57:17 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-20 15:57:17 +0900

    Rename mjit_exec to jit_exec (#6262)

    * Rename mjit_exec to jit_exec

    * Rename mjit_exec_slowpath to mjit_check_iseq

    * Remove mjit_exec references from comments

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit fc5382d46524bdf901efc8d15ef9faf14bea3ad1
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-08-15 19:40:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-20 12:25:01 +0900

    Reuse rb_class_new_instance_kw function

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6241

commit 01e8d393bc06d8658ce04a042766cc8c0b5c108b
  Author:     nick evans <nicholas.evans@gmail.com>
  AuthorDate: 2022-04-03 22:54:18 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-20 12:24:37 +0900

    Fix gdb incompatibilies in rp_class, rb_ps_vm

    Other changes are needed to bring .gdbinit up-to-date with current ruby.
    It looks like lldb is the preferred approach now, and that config *is*
    being kept up-to-date.  Still, this might be helpful to someone?

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6246

commit 6f3857f6a7b3cd6bd7e62e4efdbb1b841544e053
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-06-19 08:05:15 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-20 12:23:36 +0900

    Support Encoding::Converter newline: :lf and :lf_newline options

    Previously, newline: :lf was accepted but ignored.  Where it
    should have been used was commented out code that didn't work,
    but unlike all other invalid values, using newline: :lf did
    not raise an error.

    This adds support for newline: :lf and :lf_newline, for consistency
    with newline: :cr and :cr_newline.  This is basically the same as
    universal_newline, except that it only affects writing and not
    reading due to RUBY_ECONV_NEWLINE_DECORATOR_WRITE_MASK.

    Add tests for the File.open :newline option while here.

    Fixes [Bug #12436]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4590

commit 1a2f99275be28fb0e8ff4cfc0165966e99898d70
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-19 23:53:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-20 10:06:40 +0900

    [Bug #18958] format string must be ASCII compatible

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6260

commit 43e8d9a0509e1961c406fedb2c168a6ec2359fdc
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-19 23:39:52 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-20 10:06:40 +0900

    Check if encoding capable object before check if ASCII compatible

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6260

commit d2483393cbcb4dcfa0000fa8166bb7fa7ed9f7b4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-20 01:43:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-20 10:06:16 +0900

    [Bug #18956] Negative codepoints are invalid characters

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6259

commit 8f4a53d0517a99e57060211a3efe2d7a9d5d06b2
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-20 06:45:51 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-20 06:45:51 +0900

    Ignore fc4acf8cae on git blame

commit 1ef49de83483e6f78bfe9c795a473ccfb29db150
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-20 01:04:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-20 03:57:13 +0900

    [Bug #18955] format single character for `%c`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6258

commit ce384ef5a95b809f248e089c1608e60753dabe45
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-20 00:16:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-20 03:57:13 +0900

    [Bug #18955] Check length of argument for `%c` in proper encoding

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6258

commit 4177f60eedd71b846d9a86889fd46071ecdb0158
  Author:     Kaíque Kandy Koga <kaiquekandykoga@gmail.com>
  AuthorDate: 2022-08-19 02:54:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-19 22:18:36 +0900

    Write interface instead of interfact

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6254

commit 6bcb473d9cf00c113587a9fbb7605a2fe110862c
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-08-19 18:33:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-19 18:34:15 +0900

    [ruby/error_highlight] Apply ErrorHighlight::CoreExt to TypeError and ArgumentError

    https://github.com/ruby/error_highlight/commit/defcaf1beb

commit 17d0e5bee7f15ad4e32266afc194cf6c65976236
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-19 13:20:17 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-19 13:20:20 +0900

    syntax_suggest moved to under the ruby organization.

commit bd0fe26b81a62f7ee79c3b125c118d54ee81728a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-19 10:20:13 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-19 10:20:52 +0900

    [DOC] Fix "military timezone"

    Not only `J` is called military timezone.

commit 490af8dbdb66263f29d0b4e43752fbb298b94862
  Author:     schneems <richard.schneeman+foo@gmail.com>
  AuthorDate: 2022-07-27 05:21:09 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-19 10:02:24 +0900

    Sync SyntaxSuggest

    ```
    $ tool/sync_default_gems.rb syntax_suggest
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5859

commit a50df1ab0eb312e5cdcf010d2c1b362ec41f3c59
  Author:     schneems <richard.schneeman+foo@gmail.com>
  AuthorDate: 2022-07-27 05:16:21 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-19 10:02:24 +0900

    Setup SyntaxSuggest as default gem

    Adds the `syntax_suggest` syntax error display tool to Ruby through the same mechanism as `error_highlight` and `did_you_mean`. Reference ticket: https://bugs.ruby-lang.org/issues/18159

    close #4845

    ## What is syntax_suggest?

    When a syntax error is raised by requiring a file, dead_end will use a combination of indentation and lexing to identify the problem.

    > Note: Previously this tool was named `dead_end`.

    ## Known issues

    - SyntaxSearch's approach of showing syntax errors only works through integration with `require`, `load`, `autoload`, and `require_relative` (since it monkeypatches them to detect syntax errors). It does not work with direct Ruby file invocations https://github.com/zombocom/dead_end/issues/31.
      - This causes failure in the test suite (test_expected_backtrace_location_when_inheriting_from_basic_object_and_including_kernel) and confusion when inspecting backtraces if there's a different error when trying to require a file such as measuring memory (https://github.com/zombocom/syntax_suggest/issues/124#issuecomment-1006705016).
      - Discussed fix. We previously talked about opening up `SyntaxError` to be monkeypatched in the same way that other gems hook into `NoMethodError`. This is currently not possible and requires development work. When we last talked about it at RubyKaigi Nobu expressed an ability to make such a change.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5859

commit 3541f32951fecdfea76ef6de028d50ba58cb07b9
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-06-06 23:13:55 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-19 09:51:06 +0900

    Reuse opt_nl rule

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5977

commit f09536175853d883130c2e54a1d418b497890462
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-06-29 21:59:39 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-19 09:47:43 +0900

    Repalce to NIL_P macro

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6073

commit 35c794b26d406c39f90e188e3884003fe6aca532
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-18 18:31:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-19 03:05:53 +0900

    Fixed by [Bug #18964]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6253

commit 99116da7f05633697177c09cf4de5080028d77f8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-17 16:10:51 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-19 03:05:53 +0900

    Scan the code range of the last added portion

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6253

commit f34280ec6b684eeb21ef3336c7002e1a83dcfd2c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-17 17:41:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-19 03:05:53 +0900

    Scan the code range of the formatted portion

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6253

commit b26aec9daa03a4f3da225e9e4f7a43e916928712
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-07-14 02:14:44 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-08-19 02:25:32 +0900

    [ci-skip][Feature #18910][lldb] New directory structure

    Push the newly refactored lldb files into a sub-directory so that we're
    not cluttering up the misc directory

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6129

commit a4ef2f16728b4b1eb49cc3aded26219cabdfa7e7
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-07-13 21:19:41 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-08-19 02:25:32 +0900

    [ci-skip][Feature #18910][lldb] Port rclass_ext to new LLDB Framework

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6129

commit 281bcc8e64accac2d3ab465abde4962de725857d
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-07-13 21:18:45 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-08-19 02:25:32 +0900

    [ci-skip][Feature #18910][lldb] Port heap_page command to new LLDB framework

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6129

commit f1ccfa0c2c200c9443fbfc3f1ac3acbdd3e35559
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-07-13 21:18:03 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-08-19 02:25:32 +0900

    [ci-skip][Feature #18910][lldb] Provide class framework for lldb commands

    `lldb_cruby.py` manages lldb custom commands using functions. The file
    is a large list of Python functions, and an init handler to map some of
    the Python functions into the debugger, to enable execution of custom
    logic during a debugging session.

    Since LLDB 3.7 (September 2015) there has also been support for using
    python classes rather than bare functions, as long as those classes
    implement a specific interface.

    This PR Introduces some more defined structure to the LLDB helper
    functions by switching from the function based implementation to the
    class based one, and providing an auto-loading mechanism by which new
    functions can be loaded.

    The intention behind this change is to make working with the LLDB
    helpers easier, by reducing code duplication, providing a consistent
    structure and a clearer API for developers.

    The current function based approach has some advantages and
    disadvantages

    Advantages:

    - Adding new code is easy.
    - All the code is self contained and searchable.

    Disadvantages:
    - No visible organisation of the file contents. This means
      - Hard to tell which functions are utility functions and which are
        available to you in a debugging session
      - Lots of code duplication within lldb functions
    - Large files quickly become intimidating to work with - for example,
      `lldb_disasm.py` was implemented as a seperate Python module because
      it was easier to start with a clean slate than add significant amounts
      of code to `lldb_cruby.py`

    This PR attempts, to fix the disadvantages of the current approach and
    maintain, or enhance, the benefits. The new structure of a command looks
    like this;

     ```
     class TestCommand(RbBaseCommand):
        # program is the keyword the user will type in lldb to execute this command
        program = "test"

        # help_string will be displayed in lldb when the user uses the help functions
        help_string = "This is a test command to show how to implement lldb commands"

        # call is where our command logic will be implemented
        def call(self, debugger, command, exe_ctx, result):
            pass
      ```

    If the command fulfils the following criteria it will then be
    auto-loaded when an lldb session is started:

    - The package file must exist inside the `commands` directory and the
      filename must end in `_command.py`
    - The package must implement a class whose name ends in `Command`
    - The class inherits from `RbBaseCommand` or at minimum a class that
      shares the same interface as `RbBaseCommand`  (at minimum this means
      defining `__init__` and `__call__`, and using `__call__` to call
      `call` which is defined in the subclasses).
    - The class must have a class variable `package` that is a String. This
      is the name of the command you'll call in the `lldb` debugger.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6129

commit d903e7672637d5a834847820a4e18b00ee30f380
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-18 23:42:53 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-19 01:28:31 +0900

    Allow strings in assert_pattern_list

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6252

commit 2652b0da6bc1463fc7968d71a6f8897459370514
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-19 00:16:44 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-19 00:16:44 +0900

    Harden SizedQueue#push timeout test

commit 7c1ed470976f3488dd655e092ec1015d6b2f8310
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-18 23:33:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-18 23:38:56 +0900

    Add tests for assert_pattern_list

commit c53667691a52bcaea4314974201c53dfc282cd95
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-18 23:25:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-18 23:25:05 +0900

    [DOC] `offset` argument of Regexp#match

commit b0b9f7201acab05c2a3ad92c3043a1f01df3e17f
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-25 17:21:38 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-08-18 17:09:08 +0900

    rb_str_resize: Only clear coderange on truncation

    If we are expanding the string or only stripping extra capacity
    then coderange won't change, so clearing it is wasteful.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6178

commit fe61cad7490da8a879597f851f4a89856d44838e
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-27 00:40:00 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-08-18 17:07:37 +0900

    Implement SizedQueue#push(timeout: sec)

    [Feature #18944]

    If both `non_block=true` and `timeout:` are supplied, ArgumentError
    is raised.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6207

commit b3718edee28d5155ebc383d17ab58867e20f4aa2
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-08-18 16:04:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-18 16:04:23 +0900

    Update bundled gems list at 2022-08-18

commit 725626d8905fe1ac4a2cf1c3e2db6412bf8f381f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-18 11:37:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-18 14:57:08 +0900

    [Bug #18964] Update the code range of appended portion

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6250

commit 2a55c61ee77df55e8715809958ea0439f3918cf2
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-08-18 11:35:17 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-08-18 12:46:24 +0900

    ext/pty/extconf.rb: Try libutil only on OpenBSD

    icc now seems to provide libutil.so that is not related to pty.
    This extconf.rb wrongly finds it and adds `-lutil`, but `ruby -rpty`
    fails because it cannot find libutil.so on the runtime.

    http://rubyci.s3.amazonaws.com/icc-x64/ruby-master/log/20220815T210005Z.fail.html.gz
    ```
    Exception raised:
    <#<LoadError: libutil.so: cannot open shared object file: No such file or directory - /home/chkbuild/chkbuild/tmp/build/20220815T210005Z/ruby/.ext/x86_64-linux/pty.so>>
    ```

    This change makes extconf.rb check libutil only on OpenBSD.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6249

commit b4539dba7ae85de192b6d0114e3edf70a4cf6ae6
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-08-18 02:24:50 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-08-18 02:26:28 +0900

    Added vm setivar benchmark from yjit-bench

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6247

commit b4daf6e28e4e0291e8c4c90d4ec7c0a00f715965
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-08-17 22:38:11 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-08-17 23:54:28 +0900

    Fix flaky test for GC thrashing

    GC could be in an intermediate state after creating the objects, so we
    should finish GC by running a minor GC.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6245

commit ddb81b9307f7114fcb37f6fcc37b7692b1a40cb4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-17 17:39:40 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-17 17:40:59 +0900

    Extract common code from `rb_enc_vsprintf` and `rb_str_vcatf`

commit 72adee6e36249b39460913ce54ca9296bea80225
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-14 15:33:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-17 15:23:01 +0900

    Update dependencies

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6239

commit b880576e595adab0e5ed0a25369ec7035c2cbfc1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-14 00:13:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-17 15:23:01 +0900

    yjit.h is not necessary for all sources using mjit.h

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6239

commit 81fbc8d5531be5e61f639c2ee4509017b5e010a0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-13 23:50:00 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-17 15:23:01 +0900

    Move `mjit_exec` to vm.c

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6239

commit ac890ec0624e3d8a44d85d67127bc94322caa34e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-17 00:52:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-17 00:58:56 +0900

    Make date in installed gemspec files stable

    Set `date` member to `RUBY_RELEASE_DATE` instead of the date at the
    build time, to make installed files reproducible.

commit cc443f6cde287944e00ab5d9b6ad868b3d9fc9db
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-17 00:48:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-17 00:58:56 +0900

    Refactor `RbInstall::Specs::FileCollector`

    - Split into `Ext` and `Lib` classes.
    - `Ext#files` should not include built extension libraries.
    - `Ext#files` should include scripts under its own `lib`.
    - `Lib#files` should be prefixed with `lib/`.

commit b7577b4d9e0fd92522fc30e10fe712e245adee8c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-17 00:45:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-17 00:45:27 +0900

    The tzdata 2022c removed Amsterdam Mean Time

commit 3850113e20b8c031529fc79de7202f61604425dd
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-06-09 19:07:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-16 19:12:03 +0900

    [ruby/cgi] Implement `CGI.url_encode` and `CGI.url_decode`

    [Feature #18822]

    Ruby is somewhat missing an RFC 3986 compliant escape method.

    https://github.com/ruby/cgi/commit/c2729c7f33

commit 0608a9a08693286a7d84845a216927ff2e3c9951
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-08-16 08:14:12 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-16 08:14:12 +0900

    Optimize Marshal dump/load for large (> 31-bit) FIXNUM (#6229)

    * Optimize Marshal dump of large fixnum

    Marshal's FIXNUM type only supports 31-bit fixnums, so on 64-bit
    platforms the 63-bit fixnums need to be represented in Marshal's
    BIGNUM.

    Previously this was done by converting to a bugnum and serializing the
    bignum object.

    This commit avoids allocating the intermediate bignum object, instead
    outputting the T_FIXNUM directly to a Marshal bignum. This maintains the
    same representation as the previous implementation, including not using
    LINKs for these large fixnums (an artifact of the previous
    implementation always allocating a new BIGNUM).

    This commit also avoids unnecessary st_lookups on immediate values,
    which we know will not be in that table.

    * Fastpath for loading FIXNUM from Marshal bignum

    * Run update-deps

  Notes:
    Merged-By: jhawthorn <john@hawthorn.email>

commit e49db0f760722bf44ed2c5b31f67d929e9156dbe
  Author:     Penelope Phippen <penelope@hey.com>
  AuthorDate: 2022-08-16 04:45:51 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-08-16 07:41:35 +0900

    Do not clone method entries when bind_call is used

    I noticed that this site unconditionally clones the method entry, which
    means that `bind_call` always allocates a `T_IMEMO`. While this clone
    is necessary for `bind`, it is not necessary for `bind_call`.

    I work at Stripe, and the sorbet_runtime gem uses bind call as part
    of it's [call validation](https://github.com/sorbet/sorbet/blob/master/gems/sorbet-runtime/lib/types/private/methods/call_validation.rb#L157)
    so this can save us a lot of allocations.

    This patch adds a `clone` parameter to `convert_umethod_to_method_components`,
    which then controls whether or not we do this cloning. This patch passed
    Stripe CI and works in our QA environment. I reviewed it with @tenderlove
    to talk about correctness also.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6244

commit 4e66b3f47b2ad0d6cca1f2227dd38fdf117c0d3c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-08-15 22:35:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-16 02:48:04 +0900

    [ruby/rdoc] [DOC] Remove duplicated line in RDoc::MarkupReference

    https://github.com/ruby/rdoc/commit/488f89aee4

commit ee864beb7c6730083da656b55f4a9eeaed78bfa8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-16 02:05:12 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-16 02:05:12 +0900

    Simplify around `USE_YJIT` macro (#6240)

    * Simplify around `USE_YJIT` macro

    - Use `USE_YJIT` macro only instead of `YJIT_BUILD`.
    - An intermediate macro `YJIT_SUPPORTED_P` is no longer used.

    * Bail out if YJIT is enabled on unsupported platforms

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 0264424d58e0eb3ff6fc42b7b4164b6e3b8ea8ca
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-08-15 22:14:35 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-08-15 23:00:03 +0900

    Add test for GC thrashing of young object creation

    This test will prevent performance regressions like [Bug #18929].

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6243

commit 8d40ede2e005439cbc84abfd50c98932a33448f4
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-15 22:16:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-15 22:16:23 +0900

    [ruby/date] [DOC] Enhanced intro for Date (https://github.com/ruby/date/pull/72)

    https://github.com/ruby/date/commit/59a6673221

commit e77c8397c21d77901891bd7e65dfba6478b9b6c7
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-12 03:32:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-15 17:42:16 +0900

    [rubygems/rubygems] Fix Ruby platform incorrectly removed on `bundle update`

    https://github.com/rubygems/rubygems/commit/0d321c9e3a

commit 89aa09afaf77920fd748aefaba99fe4b0f19e684
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-08-07 07:36:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-15 14:11:52 +0900

    [ruby/rinda] Handle situations where IPv4 multicast is not available

    Fixes [Bug #13864]

    https://github.com/ruby/rinda/commit/3cd620f38c

commit cb12d7c71bb5b5ef4ebfc7a2008f66dd8410ccd2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-14 19:25:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-14 19:45:55 +0900

    Update dependencies

commit a58a429f8b85d9a68a9439ba58c76996750946da
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-14 01:02:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-14 14:42:10 +0900

    Silent configure does not output cached configurations

commit 0617cba197cdff626ee9c74cece480df31d384ef
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-13 11:23:47 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-13 11:23:47 +0900

    [DOC] Add the link to [Feature #18809]

commit fa65800ee54961e04acf65c54a84abb9c0f6210b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-13 09:00:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-13 09:00:18 +0900

    [ruby/rdoc] [DOC] Enhances text about escapes (https://github.com/ruby/rdoc/pull/917)

    https://github.com/ruby/rdoc/commit/c40bac829c

commit e44445596fb8ba70a2a9fc602458bfe10d493146
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-12 23:51:55 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-12 23:51:55 +0900

    Preserve each column positions in gems/bundled_gems

commit b1799267bf39bbca58a160c00c1581a694ca6ad9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-12 22:07:32 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-12 22:07:32 +0900

    Bundle unreleased debug

commit 77fdb3a47d420eb66761d50db2244a10b1d7272a
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-08-09 13:22:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-12 16:59:30 +0900

    Introduce with_warn_vsprintf macro

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6225

commit b2205cd45c64c8aaaa19d71836522d8aaac324d5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-14 17:39:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-12 16:57:56 +0900

    Short-circuit `Process._fork`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6139

commit 844a0edbae6e74293e3d0cb1ceeeb66a4371d06d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-11 22:24:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-12 15:58:18 +0900

    [Bug #18962] Do not read again once reached EOF

    `Ripper::Lexer#parse` re-parses the source code with syntax errors
    when `raise_errors: false`.

    Co-Authored-By: tompng <tomoyapenguin@gmail.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6233

commit 803a07263001e5466bba0f53fcc85784f4b5c686
  Author:     Kouhei Yanagita <yanagi@shakenbu.org>
  AuthorDate: 2022-07-22 12:05:16 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-08-12 15:57:52 +0900

    Improve performance of Integer#ceildiv

    This patch is suggested by nobu.

    Benchmark result:

    ```
    require 'benchmark'

    n = 10 ** 7

    Benchmark.bm do |x|
      x.report("Fixnum/Fixnum") { a, b = 5, 2; n.times { a.ceildiv(b) } }
      x.report("Bignum/Bignum") { a, b = 10**100, 10**99 - 1; n.times { a.ceildiv(b) } }
      x.report("Bignum/Fixnum") { a, b = 10**100, 3; n.times { a.ceildiv(b) } }
    end
    ```

    Original:

    ```
           user     system      total        real
    Fixnum/Fixnum  3.340009   0.043029   3.383038 (  3.384022)
    Bignum/Bignum  8.229500   0.118543   8.348043 (  8.349574)
    Bignum/Fixnum  8.328971   0.097842   8.426813 (  8.426952)
    ```

    Improved:

    ```
           user     system      total        real
    Fixnum/Fixnum  0.699140   0.000961   0.700101 (  0.700199)
    Bignum/Bignum  5.076165   0.083160   5.159325 (  5.159360)
    Bignum/Fixnum  5.548684   0.115372   5.664056 (  5.666735)
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5965

commit 24e33b84b5adb29d1d2f541acfba65e225b91b55
  Author:     Kouhei Yanagita <yanagi@shakenbu.org>
  AuthorDate: 2022-07-21 18:57:13 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-08-12 15:57:52 +0900

    Remove Numeric#ceildiv

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5965

commit 4165fd0e763439421296fbc95d754ad53e6ae84f
  Author:     Kouhei Yanagita <yanagi@shakenbu.org>
  AuthorDate: 2022-05-27 15:46:46 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-08-12 15:57:52 +0900

    Add Numeric#ceildiv and Integer#ceildiv

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5965

commit cd1a0b3caaa5446e9258c192cf483b6dfe8d7819
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-12 16:44:57 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-12 15:57:25 +0900

    Stop defining `RUBY_ABI_VERSION` if released versions

    As commented in include/ruby/internal/abi.h, since teeny versions of
    Ruby should guarantee ABI compatibility, `RUBY_ABI_VERSION` has no role
    in released versions of Ruby.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6231

commit a201cfd0cdb9f613f687dc6fee1908ec54e63c72
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-12 13:36:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-12 15:56:30 +0900

    Add missing `rb_enc_iscntrl`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6235

commit 9a11d50dc7542cda4fc21352807df9f86b0d1093
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-12 10:18:38 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-12 15:56:30 +0900

    [DOC] Use `true`/`false` for `@retval`s which are `bool`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6235

commit a3a6d2d9a390697dfd0ae9f808cb301680a6f24a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-12 13:40:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-12 15:55:40 +0900

    No bundled gems to be installed from gem now

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6234

commit 04815ea968ebef616cfdb316840158f6c87a7277
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-12 13:38:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-12 15:55:40 +0900

    All extensions in bundled gems are built by build-ext now

    `RbInstall::GemInstaller#build_extensions` has nothing to do.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6234

commit d9f1b8baa3a21b2a65af7fcab6a45c30b3f9efee
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-08-12 14:04:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-12 14:04:41 +0900

    [ruby/error_highlight] Add a note about the current limitation of ErrorHighlight.spot

    https://github.com/ruby/error_highlight/commit/489ce80a62

commit 5e3e4bc9840160f2a6f85cba2e05279d7668b014
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-12 05:08:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-12 05:09:02 +0900

    [ruby/rdoc] Mods to section Text Markup (https://github.com/ruby/rdoc/pull/916)

    https://github.com/ruby/rdoc/commit/5506d4d67e

commit 8a3f401b24e1b5f3e3a0f44c568a3e66ed595d42
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-12 01:43:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-12 01:43:43 +0900

    [ruby/rdoc] Improvements to Text Markup examples (https://github.com/ruby/rdoc/pull/915)

    https://github.com/ruby/rdoc/commit/d00ddfe57c

commit 49517b3bb436456407e0ee099c7442f3ab5ac53d
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-02-27 05:14:48 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-12 00:47:29 +0900

    Fix inspect for unicode codepoint 0x85

    This is an inelegant hack, by manually checking for this specific
    code point in rb_str_inspect.  Some testing indicates that this is
    the only code point affected.

    It's possible a better fix would be inside of lower-level encoding
    code, such that rb_enc_isprint would return false and not true for
    codepoint 0x85.

    Fixes [Bug #16842]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4229

commit c361cf44c03275405989022054d7c20efcc2a2ce
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-11 22:51:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-11 22:51:09 +0900

    [ruby/rdoc] [DOC] Make example formats explicit and consistent (https://github.com/ruby/rdoc/pull/913)

    https://github.com/ruby/rdoc/commit/7e6ef6c855

commit cfb9624460a295e4e1723301486d89058c228e07
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-08-11 19:16:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-11 19:16:49 +0900

    Fix Array#[] with ArithmeticSequence with negative steps (#5739)

    * Fix Array#[] with ArithmeticSequence with negative steps

    Previously, Array#[] when called with an ArithmeticSequence
    with a negative step did not handle all cases correctly,
    especially cases involving infinite ranges, inverted ranges,
    and/or exclusive ends.

    Fixes [Bug #18247]

    * Add Array#slice tests for ArithmeticSequence with negative step to test_array

    Add tests of rb_arithmetic_sequence_beg_len_step C-API function.

    * Fix ext/-test-/arith_seq/beg_len_step/depend

    * Rename local variables

    * Fix a variable name

    Co-authored-by: Kenta Murata <3959+mrkn@users.noreply.github.com>

  Notes:
    Merged-By: mrkn <mrkn@ruby-lang.org>

commit 32d1ce96e09773e809d575c17b916012d88d6ffc
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-11 17:42:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-11 17:45:57 +0900

    Fix race conditions when cleaning extensions

    Clean built directories by `make distclean`, and then clean leftover
    makefiles for skipped extensions.

commit 0c9803b0fdfd17981bd9f59767adab0207c3a74d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-11 17:09:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-11 17:45:39 +0900

    The "gems" build directory was rename as ".bundle"

commit 26054c74619d36b2781e872fad15a1a0bfab1be1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-11 15:21:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-11 17:43:46 +0900

    Fix paths of exts.mk to clean

    exts.mk files are one level under the top of extension directories.

commit 74d95744bdb9cf47b8fa07b9a9938c323658d9b9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-11 11:02:28 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-11 11:34:52 +0900

    Add `--enable-devel` configure option

    Since `RUBY_DEVEL` in cppflags has no effect in the configure script
    and makefiles.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6230

commit 9fc401b689e64dde5fc7cc56c734d5cddd6aa6e1
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-11 06:18:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-11 06:18:39 +0900

    [ruby/rdoc] Treat text markup (italic, bold, monofont) as blocks (https://github.com/ruby/rdoc/pull/911)

    https://github.com/ruby/rdoc/commit/dc88f1b425

commit ff42e2359bdbf37e1721a82b4cfd95b31f494f3f
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-06-04 10:15:56 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-11 05:02:52 +0900

    Revert "Add {Method,UnboundMethod}#{public?,private?,protected?}"

    This reverts commit 27278150685e738f84105d09843d3ba371146c7a and
    58dc8bf8f15df9a33d191074e8a5d4946a3d59d5.

    Visibility is an attribute of the method entry in a class, not an
    attribute of the Method object.

    Fixes [#18729]
    Fixes [#18751]
    Fixes [#18435]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5974

commit bfa6a8ddc84fffe0aef5a0f91b417167e124dbbf
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-08-11 05:02:19 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-11 05:02:19 +0900

    Only allow procs created by Symbol#to_proc to call public methods

    Fixes [Bug #18826]

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6018

    Merged-By: jeremyevans <code@jeremyevans.net>

commit 26bed71959f74a5aa7fea5608d09cc3a708b4068
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-11 03:40:50 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-11 03:40:50 +0900

    [DOC] Adding a few standards-based formats (#6227)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit a661aac9a76cbe93f445507c90dcbab5f3f3196d
  Author:     Soutaro Matsumoto <matsumoto@soutaro.com>
  AuthorDate: 2022-08-10 23:01:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-10 23:01:49 +0900

    Bundle unreleased RBS (#6228)

  Notes:
    Merged-By: soutaro <matsumoto@soutaro.com>

commit 1b32a4c7bb2e1ceb456b191ca88289d3c3d73dd7
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-08-10 21:50:48 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-10 21:51:51 +0900

    [ruby/error_highlight] Bump version

    https://github.com/ruby/error_highlight/commit/6edf0a0a5d

commit 3a58009066049f9af09ea3171cecab88ba0d9f1c
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-08-10 21:17:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-10 21:19:10 +0900

    [ruby/error_highlight] Make backtrace_location keyword work

    We had to keep backtrace_location before opts is overwritten.

    https://github.com/ruby/error_highlight/commit/2735e4681a

commit 99e7fa5b3718d61d61427c67d244ec50b9eb8578
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-08-10 18:36:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-10 18:37:13 +0900

    [ruby/error_highlight] Make ErrorHighlight.spot accept Exception (https://github.com/ruby/error_highlight/pull/25)

    ... and move things from core_ext.rb to base.rb.
    This will confine CRuby-dependent things to ErrorHighlight.spot.

    https://github.com/ruby/error_highlight/commit/22d1dd7824

commit 1139bc8c20d243b17f159d6c6518df17fcf887fe
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-08-10 16:05:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-10 16:05:11 +0900

    Update bundled gems list at 2022-08-10

commit b7e492fa9e0444ceb9e56eda3d30fe7a13f0c6b1
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-07-21 10:24:06 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-10 14:19:46 +0900

    Regen YJIT bindings

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6158

commit 9363b0423a0269272eff2e243d4b55bc8d135430
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-07-21 07:09:20 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-10 14:19:46 +0900

    Optimize duparray/expandarray -> putobject/expandarray

    There's no point in making a copy of an array just to expand it. Saves
    an unnecessary array allocation in the multiple assignment case, with
    a 35-84% improvement in affected cases in benchmark/masgn.yml.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6158

commit fc4b4f2e8db3d68b80b9c7580c40a0165736006c
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-07-21 06:06:28 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-10 14:19:46 +0900

    Expand newarray/expandarray optimization for unequal operands

    This optimizes unbalanced multiple assignment cases such as:

    ```ruby
    a.b, c.d = e, f, g
    a.b, c.d, e.f = g, h
    ```

    Previously, this would use:

    ```
    newarray(3)
    expandarray(2, 0)

    newarray(2)
    expandarray(3, 0)
    ```

    These would both allocate arrays.  This switches to opt_reverse
    with either pop or putnil:

    ```
    pop
    opt_reverse(2)

    putnil
    opt_reverse(3)
    ```

    This avoids an unnecessary array allocation, and results in a 35-76%
    performance increase in these types of unbalanced cases (tested with
    benchmark/masgn.yml).

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6158

commit 7922fd65e30fb9f011b939dead38cda94a7e2721
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-07-21 05:13:47 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-10 14:19:46 +0900

    Update multiple assignment benchmarks to include non-literal array cases

    This allows them to show the effect of the previous newarray/expandarray
    to swap/opt_reverse optimization.  This shows an 35-83% performance
    improvement in the four multiple assignment benchmarks that use this
    optimization.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6158

commit 5089b6acc7b57605823704d28c82e286f49661e6
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-07-21 04:28:48 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-10 14:19:46 +0900

    Add peephole optimizer for newarray(X)/expandarray(X, 0) -> opt_reverse(X)

    This renames the reverse instruction to opt_reverse, since now it
    is only added by the optimizer.  Then it uses as a more general
    form of swap.  This optimizes multiple assignment in the popped
    case with more than two elements.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6158

commit d9167491db220756df159048348f006619df28c1
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-07-21 04:24:50 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-10 14:19:46 +0900

    Revert "Remove reverse VM instruction"

    This reverts commit 5512353d97250e85c13bf10b9b32e750478cf474.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6158

commit 9f8abd28babf1ab84093fe0cc97f8d42cf62286c
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-07-21 04:16:24 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-10 14:19:46 +0900

    Add peephole optimizer for newarray(2)/expandarray(2, 0) -> swap

    An optimization for multiple assignment in the popped case to avoid
    array allocation was lost in my fix to make multiple assignment follow
    left-to-right evaluation (50c54d40a81bb2a4794a6be5f1861152900b4fed).

    Before, in the two element case, swap was used.  Afterward, newarray(2)
    and expandarray(2, 0) were used, which is the same as swap, with the
    addition of an unnecessary allocation.

    Because this issue is not specific to multiple assignment, and the
    multiple assignment code is complex enough as it is, this updates
    the peephole optimizer to do the newarray(2)/expandarray(2, 0) -> swap
    conversion.

    A more general optimization pass for
    newarray(X)/expandarray(X, 0) -> reverse(X) will follow, but that
    requires readding the reverse instruction.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6158

commit 357352af5ee37bf31ba4468ee242ea5a10158461
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-10-20 04:59:39 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-08-10 14:13:17 +0900

    Do not enable RUBY_DEVEL by RUBY_PATCHLEVEL

    This makes RUBY_DEVEL not enabled automatically.  It still can be
    enabled manually.

    Test manually using RUBY_DEVEL in CI.

    Implements [Feature #17468]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4993

commit ff07e5c264c82f73b0368dd0bc2ae39f78678519
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-09 02:15:10 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-09 20:11:48 +0900

    Skip poisoned regions

    Poisoned regions cannot be accessed without unpoisoning outside gc.c.
    Specifically, debug.gem is terminated by AddressSanitizer.

    ```
    SUMMARY: AddressSanitizer: use-after-poison iseq_collector.c:39 in iseq_i
    ```

commit 44264b4fee1e208e759710c39271186ff9856b40
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-09 11:16:07 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-09 12:05:19 +0900

    Merge rubygems/bundler HEAD.

      Pick from https://github.com/rubygems/rubygems/commit/dfbb5a38114640e0d8d616861607f3de73ee0199

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6224

commit f8936b3341376948112e31f9e9b0cb3ad6e91e7c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-08-09 11:02:28 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-08-09 11:02:30 +0900

    Remove documentation about dev

    dev is Shopify's internal tool that doesn't work if you use Intel
    Homebrew on M1 (or rbenv, btw). Now that we maintain this outside
    Shopify's repository, we should stop talking about it here.

commit 79fdf9712dea4943a15c4ef34348b1a159b62f4a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-09 03:07:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-09 03:09:33 +0900

    Tentatively exclude the test that triggers ruby/psych#572

commit 9c13a6ce5ff1f83489d9df65a5c7745efe16c8a4
  Author:     Alexander Momchilov <alexander.momchilov@shopify.com>
  AuthorDate: 2022-07-23 05:16:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-09 01:33:34 +0900

    [ruby/psych] Raise specific error when an anchor isn't defined

    https://github.com/ruby/psych/commit/98fbd5247a

commit 4b9cdf4e1cbb87c4f81edef472c586cd321e924e
  Author:     Alexander Momchilov <alexander.momchilov@shopify.com>
  AuthorDate: 2022-07-23 05:09:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-09 01:33:33 +0900

    [ruby/psych] Update to squiggly heredocs in the file

    https://github.com/ruby/psych/commit/42b43de997

commit 38ea6b30dc409b43e4ac0758eeb352eecfb0d1da
  Author:     Alexander Momchilov <alexander.momchilov@shopify.com>
  AuthorDate: 2022-07-23 05:09:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-09 01:33:32 +0900

    [ruby/psych] Add test for missing anchor

    https://github.com/ruby/psych/commit/5f08137ae6

commit ea1efdf32faf2cf35f6db1ec426c277bfa8f0461
  Author:     Alexander Momchilov <alexander.momchilov@shopify.com>
  AuthorDate: 2022-07-23 05:09:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-09 01:33:31 +0900

    [ruby/psych] Add test for anchor reuse

    The spec calls this a "reuse" of an anchor
    https://yaml.org/spec/1.2.2/#71-alias-nodes

    https://github.com/ruby/psych/commit/57e3b70a56

commit 54219ae8c46bc431782caf01142883ce7e8b970b
  Author:     Alexander Momchilov <alexander.momchilov@shopify.com>
  AuthorDate: 2022-07-22 04:07:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-09 01:32:47 +0900

    [ruby/psych] Raise specific error when aliases are not enabled

    https://github.com/ruby/psych/commit/0c11ddcf46

commit 71f89c287459d5ca313d0b1a16b7a743e0d71b8b
  Author:     Alexander Momchilov <alexander.momchilov@shopify.com>
  AuthorDate: 2022-07-27 23:19:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-09 01:31:24 +0900

    [ruby/psych] Don't hardcode expected alias names

    https://github.com/ruby/psych/commit/b9ab19094f

commit 0b7cfdca09651f2eae5cd0e8ae4efed5033493f2
  Author:     Alexander Momchilov <alexander.momchilov@shopify.com>
  AuthorDate: 2022-07-23 05:45:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-09 01:31:23 +0900

    [ruby/psych] Test that recursive refs dump as aliases

    https://github.com/ruby/psych/commit/d9f7289190

commit c851bced390204d6624e58c47941f34d0858b352
  Author:     Alexander Momchilov <alexander.momchilov@shopify.com>
  AuthorDate: 2022-07-23 04:49:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-09 01:31:22 +0900

    [ruby/psych] Clarify tests about parsing aliases

    https://github.com/ruby/psych/commit/0bc30cb4cb

commit 5c9ce5475736756891238a3e3fe58190b0f84f0c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-08 23:58:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-08 23:59:12 +0900

    [ruby/date] bump up to 3.2.3

    https://github.com/ruby/date/commit/dff37b3dd1

commit e07d450deae500422b7693a30c75c5b1567601a2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-08 22:43:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-08 23:50:17 +0900

    [ruby/date] Fix Time#to_datetime before calendar reform

    Time is always in the proleptic Gregorian calendar.
    Also DateTime#to_time should convert to the Gregorian calendar first,
    before extracting its components.

    https://bugs.ruby-lang.org/issues/18946#change-98527

    https://github.com/ruby/date/commit/b2aee75248

commit 43239b23b48a6c3fde6bdc4b9cc568bedac161b2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-08 23:26:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-08 23:48:13 +0900

    [Bug #18946] New tests for fixed Time/DateTime conversions

commit e0dfa5967e7063da8b65dc3c062ef4652e246e34
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-08 23:08:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-08 23:48:09 +0900

    [Bug #18946] Use Gregorian dates to test

commit a24c607e30b5a74ef53e9a2c1e630dea46151a84
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-08-08 22:26:07 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-08-08 22:26:07 +0900

    [DOC] Fix formatting issue in Enumerable

commit 1cb77f23046dbfd14703241e82bed2bcd69bf6a1
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-08-08 18:14:05 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-08-08 22:15:33 +0900

    Update IO::Buffer#get_value benchmark

    - The method was renamed from `get` to `get_value`
    - Comparing to `String#unpack` isn't quite equivalent, `unpack1` is closer.
    - Use frozen_string_literal to avoid allocating a format string every time.
    - Use `N` format which is equivalent to `:U32` (`uint_32_t` big-endian).
    - Disable experimental warnings to not mess up the output.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6221

commit 289d219758336e1e1d8afe36255fe06079d8daeb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-08 21:13:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-08 21:14:10 +0900

    [ruby/date] [DOC] Fix about calendars difference

    https://github.com/ruby/date/commit/0ae93e26aa

commit 1607c6d2814cc4f71aa65bc273d745f28514e735
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-06 03:06:03 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-08-08 09:42:31 +0900

    [DOC] New doc about Julian/Gregorian (#70)

commit 5beb75ce8dac1964f88dc82f4216892bf4256aed
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-08 00:32:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-08 01:12:49 +0900

    [ruby/rdoc] Allow multiple footnotes without in-between blank lines

    https://github.com/ruby/ruby/commit/e4e054e3ce40 used four footnotes
    without blank lines.  And the ChangeLog generated from that commit
    resulted in ``undefined method `parts' for nil`` error.

    For now, let a footnote terminated by the next footnote mark.

    Also refined the error message when undefined footnote is used.

    https://github.com/ruby/rdoc/commit/a7f290130b

commit 23a84d53c682e8db1d9d5b9b33fc20dc475179c2
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-07 21:07:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-07 21:07:23 +0900

    [ruby/rdoc] [DOC] Removes remaining old Markup Reference (https://github.com/ruby/rdoc/pull/910)

    https://github.com/ruby/rdoc/commit/4e44c9c6cf

commit e5e6b87e265b95620821f7abac56b5ab90d4c1fd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-06 20:56:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-07 18:25:10 +0900

    Create temporary file exclusively and clean

commit 03f86565a69687b335d16d873e2b1f35cb356bec
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-07 17:57:52 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-07 17:57:52 +0900

    Silent backtrace from cve_2019_8325_spec.rb

    Since the change at f310ac1cb2964f635f582862763b2155aacf2c12 to show
    the backtraces by default, this test started to show the backtraces.
    As the backtraces are not the subject of this test, silence them by
    using Gem::SilentUI.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6220

    Merged-By: nobu <nobu@ruby-lang.org>

commit 0bb5525eb2966b5821eb714c898b1c9c33221660
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-07 17:01:22 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-07 17:01:22 +0900

    Fix files for gemspec files direct-under lib

    Collected `files` lacked `lib` prefix.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6219

    Merged-By: nobu <nobu@ruby-lang.org>

commit f2423be49d6f1b6ae42f542c43b8b02d5115dc0c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-07 14:46:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-07 14:46:59 +0900

    Duplicate libruby self path

    When LOAD_RELATIVE, as `sopath` is truncated to the prefix path, make
    the duplicate before it.  Also make `rb_libruby_selfpath` frozen and
    hidden.

commit 591ee9d068de174460f0e6fe81b36e7625b90f6c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-07 13:09:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-07 13:09:46 +0900

    [DOC] Add return values of rb_enc_mbcput

commit e545cfad20eccf72f0b7d02660ceb56ec0f1dcf7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-07 00:02:38 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-07 00:02:38 +0900

    Stop using casted `rb_syswait` as `proc_syswait`

    The argument of `rb_syswait` is now `rb_pid_t` which may differ from
    `int`.  Also it is an undefined behavior to take the result of casted
    void function (in `rb_protect`).

commit f245b425af2e560a85edac85ad4426a04b01e4de
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-06 23:53:13 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-06 23:56:44 +0900

    Fix the sizes comparison

    `proc_syswait` will be called with a `VALUE` argument.

commit 466a760e1807e629d0ec9f9ebf160d3c3f649d04
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-04 02:03:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-06 15:41:46 +0900

    [rubygems/rubygems] Fix yanked gems being unintentionally update when other gems are unlocked

    This is a regression from a change intended to raise errors when user
    puts a gem under an incorrect source in the Gemfile by mistake. To fix
    the issue, we revert the change that caused it and implement it in a
    different way that restores the resolver independency from real
    specifications. Now it deals only with names and versions and does not
    try to materialize anything into real specifications before resolving.

    https://github.com/rubygems/rubygems/commit/d2bf1b86eb

commit 8dd63b89d97a0ab149288f2e46d814fb60cb3ba5
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-18 07:01:01 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-06 15:41:46 +0900

    [rubygems/rubygems] Move comment where the actual replacement happens

    https://github.com/rubygems/rubygems/commit/d60acdf80d

commit 4ea521f6c7a288d985775ab0a380620db865fac4
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-18 06:34:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-06 15:41:45 +0900

    [rubygems/rubygems] Remove unclear comment

    https://github.com/rubygems/rubygems/commit/3a843c1ac7

commit af40af45b28a9576d5ae6a46d9678c0e3d6be005
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-18 05:47:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-06 15:41:45 +0900

    [rubygems/rubygems] Extract `SourceList#get_with_fallback`

    https://github.com/rubygems/rubygems/commit/9dbc4757a8

commit 27173e3735ff509dc8d9cc9b410baff84adf57dc
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-28 16:50:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-06 10:52:00 +0900

    Allow `RUBY_DEBUG_LOG` format to be empty

    GCC warns of empty format strings, perhaps because they have no
    effects in printf() and there are better ways than sprintf().
    However, ruby_debug_log() adds informations other than the format,
    this warning is not the case.

commit c433d36b5bd0b6a649a0c4112a9868bd5190cbc6
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-08-04 00:12:18 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-08-06 03:34:08 +0900

    Test that File.read defaults to text mode

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6212

commit ca8daf70fa7045aa1e505514497d1ac4720a6b16
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-08-03 23:48:43 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-08-06 03:34:08 +0900

    [DOC] Mention Windows text mode EOF marker interpretation

    I don't think this is super well known so it's worth mentioning as it
    can be a pitfall.

    See: https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/fopen-wfopen?view=msvc-170

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6212

commit f1057393da7a98e447ee7679db69aeec8f4d1650
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-08-03 23:47:12 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-08-06 03:34:08 +0900

    [DOC] Clarify that `IO.read` uses text mode

    See: https://bugs.ruby-lang.org/issues/18882#note-13

    [Bug #18882]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6212

commit 412da2c2213ccf52254467b8c1816b34f1179493
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-06 03:05:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-06 03:05:38 +0900

    Sync new doc in Date (#6215)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 2f0d9e74c82c12d253ac808b636385ba27a4b115
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-05 17:21:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-05 20:46:53 +0900

    Get rid of `-C` option for very old `git`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6214

commit 74817f3d37bb7153385f682f75e37713c4c8009d
  Author:     Ivo Anjo <ivo.anjo@datadoghq.com>
  AuthorDate: 2022-08-05 18:40:48 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-05 18:40:48 +0900

    [DOC] Process._fork does not get called by Process.daemon

    As discussed in [Bug #18911], I'm adding some documentation to
    `Process._fork` to clarify that it is not expected to cover
    calls to `Process.daemon`.

    [Bug #18911]: https://bugs.ruby-lang.org/issues/18911

    Co-authored-by: Yusuke Endoh <mame@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6170

    Merged-By: nobu <nobu@ruby-lang.org>

commit f310ac1cb2964f635f582862763b2155aacf2c12
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-03 17:47:40 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-05 16:37:03 +0900

    [rubygems/rubygems] Include backtrace with crashes by default

    https://github.com/rubygems/rubygems/commit/3cc3bfd371

commit 5a9db23734e76c2915f1ccb8f87e992bc831598b
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-03 00:45:28 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-05 16:36:42 +0900

    [rubygems/rubygems] Automatically remove "ruby" from lockfile if incomplete

    https://github.com/rubygems/rubygems/commit/69d0b4e10b

commit 73f0573cb3be4e1c7e315ee61833f3c9c3252be9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-05 09:55:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-05 09:55:49 +0900

    Ignore revision to test unless HAVE_GIT

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6203

commit 8fae120912b01a95b90d1c4e2fb9e7b41ba0f511
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-05 01:03:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-05 09:53:18 +0900

    Clone upstream gem repositories for test

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6203

commit 57911712011e285d76cf8132dd080b5727f43bf3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-04 17:30:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-05 09:52:20 +0900

    Load gemspec file at that directory

    Gemspec files generated by old bundler run `git` without changing the
    working directory.
    Or some gemspec files expect an owned file at the top exists ath the
    current working directory.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6203

commit 661536ab168ab99e1dae31d661ff4807e7734ae4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-04 17:03:15 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-05 09:52:12 +0900

    Copy from cloned gem sources in parallel

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6203

commit 44a0a66559ee4a03a84c27feca05e9b1b0f59df8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-31 00:04:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-05 09:44:18 +0900

    Move to tool/lib/bundled_gem.rb

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6203

commit 41516b35418d6108c75d9f2190a846ded6a47108
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-30 21:12:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-05 09:44:18 +0900

    Extract bundled gems by BASERUBY

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6203

commit 6a8f1a9e5cd1c9c2b3c6925d8d3fa76a29dabf73
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-30 21:08:00 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-05 09:44:18 +0900

    Copy from bundled gem source for test

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6203

commit 87d8d25796df3865b5a0c9069c604e475a28027f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-08-05 02:40:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-05 09:39:47 +0900

    Use configured GIT

commit 70b60d24b9c3859a859853ddb2e17c603bd3485b
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-07-29 08:41:46 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-08-05 06:48:47 +0900

    Fix inconsistency with opt_aref_with

    opt_aref_with is an optimized instruction for accessing a Hash using a
    non-frozen string key (ie. from a file without frozen_string_literal).
    It attempts to avoid allocating the string, and instead silently using a
    frozen string (hash string keys are always fstrings).

    Because this is just an optimization, it should be invisible to the
    user. However, previously this optimization was could be seen via hashes
    with default procs.

    For example, previously:

        h = Hash.new { |h, k| k.frozen? }
        str = "foo"
        h[str]   # false
        h["foo"] # true when optimizations enabled

    This commit checks that the Hash doesn't have a default proc when using
    opt_aref_with.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6196

commit 1e7a2415a4c69aa64c9c2a561197bf9cfc5a91f8
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-08-05 01:19:14 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-05 01:19:14 +0900

    YJIT: Allow str-concat arg to be any string subtype, not just rb_cString (#6205)

    Allow str-concat arg to be any string subtype, not just rb_cString

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 7f5f9d19c54d3d5e0c2b2947785d8821b752641d
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-08-05 00:18:24 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-08-05 00:18:24 +0900

    YJIT: Add known_* helpers for Type (#6208)

    * YJIT: Add known_* helpers for Type

    This adds a few helpers to Type which all return Options representing
    what is known, from a Ruby perspective, about the type.

    This includes:
    * known_class_of: If known, the class represented by this type
    * known_value_type: If known, the T_ value type
    * known_exact_value: If known, the exact VALUE represented by this type
      (currently this is only available for true/false/nil)
    * known_truthy: If known, whether or not this value evaluates as true
      (not false or nil)

    The goal of this is to abstract away the specifics of the mappings
    between types wherever possible from the codegen. For example previously
    by introducing Type::CString as a more specific version of
    Type::TString, uses of Type::TString in codegen needed to be updated to
    check either case. Now by using known_value_type, at least in theory we
    can introduce new types with minimal (if any) codegen changes.

    I think rust's Option type allows us to represent this uncertainty
    fairly well, and should help avoid mistakes, and the matching using this
    turned out pretty cleanly.

    * YJIT: Use known_value_type for checktype

    * YJIT: Use known_value_type for T_STRING check

    * YJIT: Use known_class_of in guard_known_klass

    * YJIT: Use known truthyness in jit_rb_obj_not

    * YJIT: Rename known_class_of => known_class

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit c84d0538be3b5f6739c6968f3bb1b8e4abe8eadf
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-04 17:57:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-05 00:09:18 +0900

    [rubygems/rubygems] Fix unused variable warning

    ```
    /Users/deivid/Code/rubygems/rubygems/test/rubygems/test_gem_resolver_installer_set.rb:55: warning: assigned but unused variable - a_1_local
    ```

    https://github.com/rubygems/rubygems/commit/9ea4534800

commit 6b2fc33ae231594eb69f93c493e2c314931b0990
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-08-04 17:37:46 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-08-04 18:48:31 +0900

    thread_sync.c: pass proper argument to queue_sleep in rb_szqueue_push

    When I removed the SizeQueue#push timeout from my PR, I forgot to
    update the `queue_sleep` parameters to be a `queue_sleep_arg`.

    Somehow this worked on most archs, but on Solaris/Sparc it would
    legitimately crash when trying to access the `timeout` and `end`
    members of the struct.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6213

commit 00f411c58ac6105f135ff4501ea5bd1d691fcc32
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-07-30 20:26:57 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-08-04 16:29:22 +0900

    Add `-bundle_loader` to mjit compilation args on macOS

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6193

commit 184fd94d7e8023d7720be985089bae00c4bdfa2b
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-07-30 18:32:38 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-08-04 16:29:22 +0900

    Resolve abi symbols from libruby.dylib when available

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6193

commit 6d8b9a9d619821b722273d93cdc4645ae2e23ede
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-07-30 17:25:12 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-08-04 16:29:22 +0900

    Resolve abi symbol references from miniruby to avoid circular deps

    Adding `ruby` to `PREP` causes the following circular dependencies
    because `PREP` is used as a prerequisite by some targets required to
    build `ruby` target itself.
    ```
    make: Circular .rbconfig.time <- ruby dependency dropped.
    make: Circular builtin_binary.inc <- ruby dependency dropped.
    make: Circular ext/extinit.c <- ruby dependency dropped.
    make: Circular ruby <- ruby dependency dropped.
    ```

    Adding a new Make variable like `EXTPREP` only for exts may be also
    reasonable, but it would introduce another complexity into our build
    system. `-bundle_loader` doesn't care that link-time and run-time
    loader executables are different as long as bound symbols are provided,
    so it's ok to resolve from miniruby to simplify our build.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6193

commit e5a3f232563139fdf15660d54aeaec112ffc2349
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-07-30 02:54:27 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-08-04 16:29:22 +0900

    Use $(bindir) for path to executable in mkmf

    For the macOS -bundle_loader linker option, we need a path to the
    Ruby exectuable. $(RUBY) is not necessarily a path since it could
    be a command line invocation. That happens during build with
    runruby.rb and can happen post installation if the user passes
    the --ruby option to a extconf.rb. Use $(bindir) to locate
    the executable instead.

    Before installation, $(bindir) doesn't exist, so we need to be
    able to override $(BUILTRUBY) in such situations so test-spec
    and bundled extensions could build. Use a new mkmf global,
    $builtruby, to do this; set it in fake.rb and in extmk.rb.

    Our build system is quite complex...

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6193

commit c69582a5401ac7b6e59b87a8bcc8636c27eb923e
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-07-30 03:18:26 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-08-04 16:29:22 +0900

    Quote $(BUILTRUBY) so paths with spaces work

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6193

commit 50d81bfbc19d9b2e3d4be511c26c3dff317e2f8e
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-07-28 17:19:28 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-08-04 16:29:22 +0900

    Link ext bundles with bundle loader option for newer ld64

    ld64 shipped with Xcode 14 emits a warning when using `-undefined
    dynamic_lookup`.

    ```
    ld: warning: -undefined dynamic_lookup may not work with chained fixups
    ```

    Actually, `-undefined dynamic_lookup` doesn't work when:

    1. Link a *shared library* with the option
    2. Link it with a program that uses the chained-fixup introduced from
       macOS 12 and iOS 15
    because `-undefined dynamic_lookup` uses lazy-bindings and they won't be
    bound while dyld fixes-up by traversing chained-fixup info.

    However, we build exts as *bundles* and they are loaded only through
    `dlopen`, so it's safe to use `-undefined dynamic_lookup` in theory.
    So the warning produced by ld64 is false-positive, and it results
    failure of option checking in configuration. Therefore, it would be an
    option to ignore the warning during our configuration.

    On the other hand, `-undefined dynamic_lookup` is already deprecated on
    all darwin platforms except for macOS, so it's good time to get rid of
    the option. ld64 also provides `-bundle_loader <executable>` option,
    which allows to resolve symbols defined in the executable symtab while
    linking. It behaves almost the same with `-undefined dynamic_lookup`,
    but it makes the following changes:

    1. Require that unresolved symbols among input objects must be defined
       in the executable.
    2. Lazy symbol binding will lookup only the symtab of the bundle loader
       executable. (`-undefined dynamic_lookup` lookups all symtab as flat
       namespace)

    This patch adds `-bundle_loader $(RUBY)` when non-EXTSTATIC
    configuration by assuming ruby executable can be linked before building
    exts.

    See "New Features" subsection under "Linking" section for chained fixup
    https://developer.apple.com/documentation/xcode-release-notes/xcode-13-release-notes

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6193

commit 542040fb8375ffd74096ae0615a33bbc90524cb3
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-02 17:27:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-04 13:36:45 +0900

    [rubygems/rubygems] Warn dangling symlinks

    https://github.com/rubygems/rubygems/commit/425b78637f

commit 0591780a74f9893038d5d794a958621189953e8a
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-02 18:25:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-04 13:36:44 +0900

    [rubygems/rubygems] Extract entry.full_name to a variable

    https://github.com/rubygems/rubygems/commit/3973773005

commit b54f26b7048fc8dd103e7da5cf8f8dd73feb10d0
  Author:     tompng <tomoyapenguin@gmail.com>
  AuthorDate: 2022-08-02 04:10:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-04 08:37:03 +0900

    [ruby/irb] shortcut colorize_code to speedup pretty_print

    https://github.com/ruby/irb/commit/8a074a6904

commit 4406cb1bf10e34757d9877b3b12d4b0c294c22fb
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-08-03 16:46:21 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-08-03 17:59:13 +0900

    Harden Queue#pop timeout tests

    They occasionaly fail with;

    ```
      FLeaked thread: TestThreadQueue#test_queue_pop_timeout: #<Thread:0x0000000108e38e48 /Users/runner/work/ruby/ruby/src/test/ruby/test_thread_queue.rb:123 sleep>
      .Finished thread: TestThreadQueue#test_deny_pushers: #<Thread:0x0000000108e38e48 /Users/runner/work/ruby/ruby/src/test/ruby/test_thread_queue.rb:123 dead>
      ...
      Retrying...

        1) Failure:
      TestThreadQueue#test_sized_queue_pop_timeout [/Users/runner/work/ruby/ruby/src/test/ruby/test_thread_queue.rb:157]:
      <#<Thread:0x00000001084bc7e8 /Users/runner/work/ruby/ruby/src/test/ruby/test_thread_queue.rb:156 sleep>> expected but was
      <nil>.

        2) Failure:
      TestThreadQueue#test_queue_pop_timeout [/Users/runner/work/ruby/ruby/src/test/ruby/test_thread_queue.rb:124]:
      <#<Thread:0x00000001083ff058 /Users/runner/work/ruby/ruby/src/test/ruby/test_thread_queue.rb:123 sleep>> expected but was
      <nil>.
    ```

    I'm hoping joining for longer should help avoid this.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6210

commit 851b3aa7dde489502f517cc1ad9d31d9a3056197
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-02 00:11:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-03 16:33:53 +0900

    [rubygems/rubygems] Fix `bundle outdated --strict`

    It should be an alias of `--filter-strict`.

    `--update-strict` is essentially a dummy option with no special behavior
    associated and should be deprecated.

    https://github.com/rubygems/rubygems/commit/ec1e5d83c8

commit 35c65e7ba6b4aa8bc80aaca8429a48c4eb923b89
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-01 23:41:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-03 16:33:52 +0900

    [rubygems/rubygems] Fix conservative updates regardless of `--strict`

    https://github.com/rubygems/rubygems/commit/c9a1d69a8d

commit 71794a75db5d3da810146da106baf7eb5e86f745
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-08-03 12:24:38 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-03 13:14:10 +0900

    Merge rubygems/bundler HEAD

      Pick from https://github.com/rubygems/rubygems/commit/8331e63263081a6aa690d8025d2957f30c4e814a

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6209

commit 8a1be433e8cac6ca5ded095f6fefbdc1009102b9
  Author:     Thomas Winsnes <TWinsnes@users.noreply.github.com>
  AuthorDate: 2022-08-02 09:23:34 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-03 11:04:31 +0900

    [ruby/bigdecimal] Updated to use the correct spec for muilti license

    https://github.com/ruby/bigdecimal/commit/13165b29b8

commit f33b2ae918aff36518540244ac57e7f9c4de4af9
  Author:     Thomas Winsnes <TWinsnes@users.noreply.github.com>
  AuthorDate: 2022-08-02 09:22:22 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-08-03 11:04:20 +0900

    Updated to use multiple licenses

    Co-authored-by: Hiroshi SHIBATA <hsbt@ruby-lang.org>

commit 4f00ee8d470f4ad5040c0df4cac2cf802b3cbdaf
  Author:     Ilya Dyakonov <ilushkadyakonov@gmail.com>
  AuthorDate: 2022-08-01 17:54:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-03 06:56:36 +0900

    [rubygems/rubygems] fix platform matching for index specs

    https://github.com/rubygems/rubygems/commit/f087f1b590

commit 20936eb3a95f3564e565f59228a35453ae94eee3
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-01 16:56:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-03 06:56:18 +0900

    [rubygems/rubygems] Warn (rather than crash) when setting `nil` specification versions

    https://github.com/rubygems/rubygems/commit/a4ba1a4d97

commit eaf6189fe59ac4839d3a04bf7f9552fc22f09471
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-03 05:17:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-03 05:17:55 +0900

    [ruby/date] Enhanced RDoc (https://github.com/ruby/date/pull/69)

    Treats:
        ::_strptime
        ::strptime
    Adds 'Related' entry to some methods' doc.

    https://github.com/ruby/date/commit/a6c2129273

commit d8ea3a20fa7db0a670cde9c90d62fc5187217a23
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-08-03 02:28:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-03 02:28:12 +0900

    [ruby/date] [DOC] Enhanced RDoc for parser methods (https://github.com/ruby/date/pull/68)

    Treats:
        ::_httpdate
        ::_iso8601
        ::_jisx0301
        ::_parse
        ::_rfc2822
        ::_rfc3339
        ::_xmlschema
        ::httpdate
        ::iso8601
        ::jisx0301
        ::parse
        ::rfc2822
        ::rfc3339
        ::xmlschema

    https://github.com/ruby/date/commit/24bdab600a

commit e4e054e3ce409f1c1d04bf7cd75aa9238e205d52
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-08-02 06:24:12 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-08-03 01:04:04 +0900

    Speed up setting the backref match object

    This patch speeds up setting the backref match object by avoiding some
    memcopies.  Take the following code for example:

    ```ruby
    "hello world" =~ /hello/
    p $~
    ```

    When the RE matches the string, we have to set the Match object in the
    backref global.  So we would allocate a match object[^1] and use
    `rb_reg_region_copy`[^2] to make a deep copy of the stack allocated
    `re_registers` struct[^3] in to the newly created Ruby object.  This
    could possibly trigger GC[^4], and would allocate new memory.

    This patch makes a shallow copy of the `re_registers` struct on to the
    Match object allowing the match object to manage the `re_registers`
    pointer and also avoiding some calls to `xmalloc` and some manual
    memcopy.

    Benchmark looks like this:

    ```ruby

    require "benchmark/ips"

    def test_re thing
      thing =~ /hello/
    end

    Benchmark.ips do |x|
      x.report("re hit") do
        test_re "hello world"
      end

      x.report("re miss") do
        test_re "world"
      end
    end
    ```

    Before this patch:

    ```
    $ ruby -v test.rb
    ruby 3.2.0dev (2022-07-27T22:29:00Z master 4ad69899b7) [arm64-darwin21]
    Ignoring bcrypt-3.1.16 because its extensions are not built. Try: gem pristine bcrypt --version 3.1.16
    Warming up --------------------------------------
                  re hit   345.401k i/100ms
                 re miss   673.584k i/100ms
    Calculating -------------------------------------
                  re hit      3.452M (± 0.5%) i/s -     17.270M in   5.002535s
                 re miss      6.736M (± 0.4%) i/s -     34.353M in   5.099593s
    ```

    After this patch:

    ```
    $ ./ruby -v test.rb
    ruby 3.2.0dev (2022-08-01T21:24:12Z less-memcpy 0ff2a56606) [arm64-darwin21]
    Warming up --------------------------------------
                  re hit   419.578k i/100ms
                 re miss   673.251k i/100ms
    Calculating -------------------------------------
                  re hit      4.201M (± 0.7%) i/s -     21.398M in   5.093593s
                 re miss      6.716M (± 0.4%) i/s -     33.663M in   5.012756s
    ```

    Matches get faster and misses maintain the same speed

    [^1]: https://github.com/ruby/ruby/blob/24204d54ab730791bfbd0cd66b8e12f0bd62ca5d/re.c#L1737
    [^2]: https://github.com/ruby/ruby/blob/24204d54ab730791bfbd0cd66b8e12f0bd62ca5d/re.c#L1738
    [^3]: https://github.com/ruby/ruby/blob/24204d54ab730791bfbd0cd66b8e12f0bd62ca5d/re.c#L1686
    [^4]: https://github.com/ruby/ruby/blob/24204d54ab730791bfbd0cd66b8e12f0bd62ca5d/re.c#L981

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6206

commit da00243dfe745cba3b176112fe8245c23e6f1635
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-08-01 06:03:19 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-08-02 22:40:53 +0900

    [DOC] Specify ways to run bootstrap tests

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6194

commit f70b26af47f4f4e851e1a16d2c13951485272325
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-02 20:23:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 21:57:52 +0900

    [rubygems/rubygems] Array is already uniq, no need to deduplicate it

    https://github.com/rubygems/rubygems/commit/3212ae14b7

commit b81858cf6f22b1a3c9a56e8e867c3a9efc189408
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-08-02 14:24:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 18:35:38 +0900

    [rubygems/rubygems] Fix arguments for bundle-config(1) docs

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/3e62ca776d

commit e3aabe93aae87a60ba7b8f1a0fd590534647e352
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-27 00:40:00 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-08-02 18:04:28 +0900

    Implement Queue#pop(timeout: sec)

    [Feature #18774]

    As well as `SizedQueue#pop(timeout: sec)`

    If both `non_block=true` and `timeout:` are supplied, ArgumentError
    is raised.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6185

commit ec3f59309e3f08339c4c76a6881901580801d6cd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-20 19:19:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-08-02 16:40:12 +0900

    [Bug #17767] Now `ENV.clone` raises `TypeError` as well as `ENV.dup`

    One year ago, the former method has been deprecated while the latter
    has become an error.  Then the 3.1 released, it is enough time to make
    also the former an error.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6155

commit 3e4fedca4e0b068908137d44bcf5a567cb8445d0
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-30 17:07:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 16:10:19 +0900

    [rubygems/rubygems] Preserve the previous behavior of raising an error when in frozen mode

    https://github.com/rubygems/rubygems/commit/6e35a6edfe

commit bc90090672450a4ba3ba1025fbbad8991ee84b0e
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-31 04:41:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 16:10:18 +0900

    [rubygems/rubygems] Check for errors in error stream

    https://github.com/rubygems/rubygems/commit/7b0f7804f2

commit f4f681463f71c2fc63e1a07f36f2665f2b9db002
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-23 15:44:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 16:10:18 +0900

    [rubygems/rubygems] Don't discard candidates matching ruby metadata

    Do dependency filtering and materialization in one step. Before,
    dependency filtering would not consider ruby metadata so it would
    discard variants that end up not being materializable in the end.

    https://github.com/rubygems/rubygems/commit/0c0d40d417

    Co-authored-by: Ian Ker-Seymer <ian.kerseymer@shopify.com>

commit 9189c2d5efa94131050df4994c801fb187d7b43d
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-30 05:09:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 16:10:17 +0900

    [rubygems/rubygems] Materializing for resolution already filters platforms

    https://github.com/rubygems/rubygems/commit/9f4ba9ebb0

commit 8c98f7be577389f01a90c7a39d693173d432e9e2
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-30 05:39:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 16:10:17 +0900

    [rubygems/rubygems] Remove unnecessary local variable

    https://github.com/rubygems/rubygems/commit/a997210473

commit 5487e76374c5ee247b0f5a2867a6dc1319d98e0e
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-30 04:17:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 16:10:16 +0900

    [rubygems/rubygems] Prefer reverse+find to select+last

    https://github.com/rubygems/rubygems/commit/ffb161bb69

commit bc0de1e16250ecb4e8278ec64de86fbc049c5e63
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-23 20:47:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 16:10:16 +0900

    [rubygems/rubygems] Only need to filter platforms when materialization is not strict

    https://github.com/rubygems/rubygems/commit/9d878cbda0

commit 91b9bd62347dbb0971904593a11320d64076a1ac
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-25 18:14:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 16:10:15 +0900

    [rubygems/rubygems] This should go through the standard source search logic

    https://github.com/rubygems/rubygems/commit/087e3e4e3b

commit 35e508d13e6d936af7725ccf9ac15deb69e35257
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-24 03:56:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 16:10:14 +0900

    [rubygems/rubygems] Refactor materialization conditions

    https://github.com/rubygems/rubygems/commit/08e1554fb6

commit ed9bbfd7594f655702461067e3dc8106eec52385
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-23 18:58:53 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 16:10:14 +0900

    [rubygems/rubygems] Fix incorrect force_ruby_platform propagation

    It was just working by chance.

    (cherry picked from commit https://github.com/rubygems/rubygems/commit/16b2d6bfe893)

    https://github.com/rubygems/rubygems/commit/8f922d980f

commit 7cc5a657eed1a537b33b7b2ec71fdb5ad9323950
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-23 16:19:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 16:10:13 +0900

    [rubygems/rubygems] Remove unnecessary special case for Bundler

    https://github.com/rubygems/rubygems/commit/2777e79b8e

commit 6ec8f684aa1ff6182b4be3fc67b2fa5bad3f0bec
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-15 05:22:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-02 16:10:13 +0900

    [rubygems/rubygems] Move some logic to `LazySpecification#__materialize__`

    https://github.com/rubygems/rubygems/commit/5e100df7c9

commit 13305bf0c9a03f24b5ab667784ff1dc1f10b3d9f
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-01 18:47:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-01 23:14:23 +0900

    [rubygems/rubygems] Fix crash when running `bundle outdated` in debug mode

    Previously it would crash like this:

    ````
    $ /Users/deivid/.asdf/installs/ruby/3.1.2/bin/ruby -I/Users/deivid/Code/rubygems/rubygems/bundler/spec -r/Users/deivid/Code/rubygems/rubygems/bundler/spec/support/artifice/fail.rb -r/Users/deivid/Code/rubygems/rubygems/bundler/spec/support/hax.rb /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/bin/bundle outdated --patch --strict --filter-patch
    Running `bundle outdated --filter-patch --patch --strict` with bundler 2.4.0.dev
    Found changes from the lockfile, re-resolving dependencies because bundler is unlocking Using a local server, bundler won't use the CompactIndex API
    Fetching source index from file:///Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/remote4/
    Resolving dependencies...
    --- ERROR REPORT TEMPLATE -------------------------------------------------------

    ```
    RuntimeError: LazySpecification has not been materialized yet (calling :loaded_from [])
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/lazy_specification.rb:147:in `method_missing'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli/outdated.rb:214:in `gem_column_for'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli/outdated.rb:174:in `block in print_gems_table'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli/outdated.rb:173:in `map'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli/outdated.rb:173:in `print_gems_table'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli/outdated.rb:123:in `run'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli.rb:420:in `outdated'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli.rb:31:in `dispatch'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli.rb:25:in `start'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/exe/bundle:48:in `block in <top (required)>'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/friendly_errors.rb:120:in `with_friendly_errors'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/exe/bundle:36:in `<top (required)>'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/bin/bundle:25:in `load'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/1/gems/system/bin/bundle:25:in `<main>'
    ```
    ````

    https://github.com/rubygems/rubygems/commit/23c46f3b57

commit 5c13adb746ad7d0f829809ee833e4fdde1238e68
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-08-01 18:46:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-01 23:14:22 +0900

    [rubygems/rubygems] Fix comment incorrectly copied from another spec

    https://github.com/rubygems/rubygems/commit/9be5eae9cf

commit 5bbba76489628f4509495ebf4ba0a7aad4c0b560
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-07-29 16:02:10 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-08-01 17:48:05 +0900

    respect current frame of `rb_eval_string`

    `self` is nearest Ruby method's `self`.
    If there is no ruby frame, use toplevel `self` (`main`).

    https://bugs.ruby-lang.org/issues/18780

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6199

commit c69ad738dc7c713df547a51607917ca78df6b793
  Author:     Wolf <wolf@wolfsden.cz>
  AuthorDate: 2022-07-30 03:12:39 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-08-01 10:36:36 +0900

    Initialize node_id

    In some causes node_id might have been left uninitialized leading to
    undefined behavior on access. So always set it to -1, so we have *some*
    valid value in there.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6202

commit b0e6d07ce49da4ffc84f3a1f1717b2e096e8b513
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-07-31 20:11:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-08-01 01:31:24 +0900

    [rubygems/rubygems] Update bundle-platform(1) man

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/1c3736f5af

commit 4efbeb11905534289a6b4a4bc4779859a9c6c6a6
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-31 03:18:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-31 03:18:45 +0900

    [ruby/date] Enhanced RDoc (https://github.com/ruby/date/pull/67)

    Treats:
        ::httpdate
        #to_date
        #to_time
        #to_datetime
    In behalf of ::httpdate, I've introduced section "Argument limit" that can be pointed to by various Date methods (similar to existing section "Argument start"). This will involve 8 already-enhanced methods plus 8 more not yet done.

    https://github.com/ruby/date/commit/00326ff99c

commit d050f162a7fa04ccb699fa25ef22cd18be4d7c42
  Author:     Akinori MUSHA <knu@idaemons.org>
  AuthorDate: 2022-07-29 14:00:29 +0900
  Commit:     Akinori MUSHA <knu@idaemons.org>
  CommitDate: 2022-07-30 20:05:14 +0900

    Mention Enumerator.product/Enumerator::Product in the NEWS.md

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6197

commit 1a73a6cdd2068b815430b775fe25186dab693faa
  Author:     Akinori MUSHA <knu@idaemons.org>
  AuthorDate: 2022-07-29 13:56:54 +0900
  Commit:     Akinori MUSHA <knu@idaemons.org>
  CommitDate: 2022-07-30 20:05:14 +0900

    Implement Enumerator::Product and Enumerator.product [Feature #18685]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6197

commit af265d73fb2726fcd405d86d37d28bbf03de3b04
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-30 01:18:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-30 11:04:11 +0900

    [ruby/rdoc] Fix blockquote with word in verbatim

    https://github.com/ruby/rdoc/commit/75eee668a5

commit 0e85586ecc983ebb4541cd046949428d1ef5d635
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-07-30 07:07:06 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-07-30 08:32:14 +0900

    Add --enable-yjit=dev_nodebug configure option

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6105

commit fbd24793cb7be2429edafcf11d7dd4a7d11f5c95
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-07-07 14:14:25 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-07-30 08:32:14 +0900

    Add --enable-yjit=stats configure option

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6105

commit 53175643ef826775d0a51fc48fdd79a4cf01dc70
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-30 04:50:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-30 04:51:10 +0900

    [ruby/date] [DOC] Enhanced RDoc (https://github.com/ruby/date/pull/66)

    Treats:
        #===
        #to_s
        #inspect
        #strftme
        #asctime
        #iso3601
        #rfc3339
        #rfc2822
        #httpdate
        #jisx0301

    https://github.com/ruby/date/commit/aed66fedf6

commit 030050cdfa9ae65cbbcd0f708aa2459e0ef17c3a
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-25 05:32:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-30 04:24:25 +0900

    [rubygems/rubygems] Make `--standalone` play nice with `--local`

    I'm not sure if using relative paths in the generated script is best for
    this case, since it makes the script not movable, but that can be
    improved later.

    https://github.com/rubygems/rubygems/commit/7f5bdbb842

commit b515fdcc32a6a7d484c73f090fa2a58a8662e6ca
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-25 04:58:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-30 04:24:24 +0900

    [rubygems/rubygems] No need to set anything at all unless standalone is given

    https://github.com/rubygems/rubygems/commit/d695c8da3e

commit f78e46d404f156cc05066c4d895fd6bdef4aec7c
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-29 23:40:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-29 23:40:26 +0900

    [ruby/rdoc] Add block quotes (https://github.com/ruby/rdoc/pull/907)

    Also adjusts which blocks may be nested.

    https://github.com/ruby/rdoc/commit/dde1860441

commit 62849b337988268b4209c58b6de02d0002c78988
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-29 17:07:36 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-29 19:10:10 +0900

    Keep gitignore for libyaml source with psych

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6200

commit 4e886d2adeaa3ae8a408fa549f19f203b82d9550
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-29 17:06:18 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-29 19:10:10 +0900

    Update parser-text.rb with https://github.com/ruby/racc/commit/4ecc13c9cbd4663268c34b0a5c99cf5307de7c60

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6200

commit b2cc74a50dd492e95bd76252046c25495f06a586
  Author:     Ethan <ethan@unth.net>
  AuthorDate: 2021-10-21 05:53:18 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-29 19:10:10 +0900

    [flori/json] test parsing of unicode, mixing literal characters with escaped

    https://github.com/flori/json/commit/82fe866da2

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6200

commit 66b52f046f3e4c5d24781a142f9633e07c42d6d9
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2021-05-20 19:40:04 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-29 19:10:10 +0900

    [flori/json] Stop including the parser source __LINE__ in exceptions

    It makes testing for JSON errors very tedious. You either have
    to use a Regexp or to regularly update all your assertions
    when JSON is upgraded.

    https://github.com/flori/json/commit/de9eb1d28e

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6200

commit 4bf97a8ec45e63f4d60a4146b8f99bd629c1f629
  Author:     Luka Dornhecker <luka.dornhecker@hey.com>
  AuthorDate: 2022-05-23 00:47:26 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-29 19:10:10 +0900

    fix typo in Time#xmlschema documentation

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6200

commit 419ad1e13e6287d0b7a6ba1dfeb485d2f889bf9e
  Author:     konsolebox <konsolebox@gmail.com>
  AuthorDate: 2022-06-09 20:43:24 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-29 19:10:10 +0900

    [ruby/optparse] Also accept '-' as an optional argument (https://github.com/ruby/optparse/pull/35)

    https://github.com/ruby/optparse/commit/f2b8318631

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6200

commit 3725454161b55681e5b4ec3b7ca23a4126e23736
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-29 15:47:02 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-29 19:10:10 +0900

    Merge ruby/fileutils from https://github.com/ruby/fileutils/commit/332025bc0299254f97a06d64e580f60fea4e7125

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6200

commit d1e726cce727fab7083993eb75237472a462cd72
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-07-28 10:30:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-29 19:06:49 +0900

    [rubygems/rubygems] Fix dead links to deprecated bundle-package(1) with bundler-cache(1)

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/9c2e80a10f

commit def1d44aa193fb7640a78d864810734bba786e6d
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-07-28 17:39:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-29 16:31:06 +0900

    [rubygems/rubygems] Add package/pack aliases to man pages for cache

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/1685e3a9dc

commit bfd09b1116bcc747bab922b23c7322e4ec66c2c2
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-29 14:59:56 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-29 15:46:15 +0900

    Merge rubygems master from https://github.com/rubygems/rubygems/commit/446cc57a7ccdf1924deb291be9571219e7ba8523

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6198

commit f29f1d22c3d62b72b8943eefb384cd7a52251ea1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-29 09:10:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-29 09:21:33 +0900

    [ruby/rdoc] Fix formatting blockquote in verbatim

    Reported at https://github.com/ruby/rdoc/pull/907#discussion_r932505816

    https://github.com/ruby/rdoc/commit/86384ac7f9

commit 0d68286be93b2c7e588e42849ead0526ff55126c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-07-29 08:12:46 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-07-29 08:12:46 +0900

    Revert "Try reproducing the MinGW hang on time command (#6168)"

    This reverts commit bee5089d6789401f265f87b2f23f1bd7ec63cec8.

    Looking at https://github.com/ruby/ruby/runs/7564065637?check_suite_focus=true,
    we concluded that the ruby process for test-all is stuck before exit
    when this issue reproduces.

    However, because of our limited bandwidth to support MinGW, we're not
    investigating this, and therefore we need to keep skipping tests that
    hang on this environment.

commit c348f5a91c6c5b4a90082d1e64312b4fb0dc7abc
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-29 06:36:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-29 06:37:10 +0900

    [ruby/date] [DOC] Enhanced RDoc for <=> (https://github.com/ruby/date/pull/65)

    https://github.com/ruby/date/commit/0cdbaa92e9

commit c56e957decab0dd1f6aa2f4daba5d3d082c7782b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-29 01:06:30 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-29 01:06:34 +0900

    [ruby/rdoc] Link from RDoc::Markup to RDoc::MarkupReference (https://github.com/ruby/rdoc/pull/906)

    Recently new RDoc::MarkupReference replaces Markup Reference in RDoc::Markup (which was always the goal).

    https://github.com/ruby/rdoc/commit/825be7eaf4

commit ab08a43ec5ab7a8d82c980dc1eefc9e5d71e926d
  Author:     Matthew Draper <matthew@trebex.net>
  AuthorDate: 2022-07-29 00:38:07 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-29 00:38:07 +0900

    YJIT: Teach getblockparamproxy to handle the no-block case without exiting (#6191)

    Teach getblockparamproxy to handle the no-block case without exiting

    Co-authored-by: John Hawthorn <john@hawthorn.email>

    Co-authored-by: John Hawthorn <john@hawthorn.email>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 18b1e5e6dbef9bb0c265e57e1267840d7c13cd88
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-28 23:50:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-28 23:50:49 +0900

    [ruby/rdoc] [DOC] Add some links in intro; delimit rendered HTML output. (https://github.com/ruby/rdoc/pull/904)

    https://github.com/ruby/rdoc/commit/c02645364f

commit 90cf767d158db06312a82c468a2bbf37f63bcb7a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-28 09:10:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-28 23:46:07 +0900

    Fix format-pedantic warnings

commit 94c3d528e7d1dc86ecafc6b992f16d062a17f015
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-28 00:31:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-28 23:46:07 +0900

    Fix conversion of `rb_ractor_id()`

commit c38ad2aeb55aadd4a697f9541efac1fe30fd6891
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-28 00:25:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-28 23:46:06 +0900

    Fix format specifier for `rb_ractor_id()`

commit 229cf263df8ae5020b959724b26ac7ecc5e7e122
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-28 03:05:31 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-28 23:02:12 +0900

    Lock the VM for rb_gc_writebarrier_unprotect

    When using Ractors, rb_gc_writebarrier_unprotect requries a VM lock
    since it modifies the bitmaps.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6192

commit 1c16645216b6db04ccb1144e6f7e085e1e0a6132
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-28 00:26:31 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-28 23:02:12 +0900

    Make array slices views rather than copies

    Before this commit, if the slice fits in VWA, it would make a copy
    rather than a view. This is slower as it requires a memcpy of the
    contents.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6192

commit 2375afb8d6fd218cd9083749d87a7a59946d8938
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-28 00:18:29 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-28 23:02:12 +0900

    Refactor gc_ref_update_array

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6192

commit 3eade599194dac960bc5b81c3f1bcff4a460b959
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-28 19:45:15 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-28 19:45:15 +0900

    Skip randomly failing tests with FreeBSD 12

commit d448ecc7b11274e2e5d924a42693788141fad753
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-28 19:25:52 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-28 19:25:52 +0900

    Fix the missing brackets

commit 202ce7de01e051fca01c683833e4294d79ef87bb
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-28 19:14:01 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-28 19:14:01 +0900

    test_io_console.rbL399 is also randomly failing same as bfc697f1e26f1406c45ec7309ca0d4c0b5ecedd6

commit 98e01c991433a6785fac3d750114b5b3cb70710d
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-28 19:10:24 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-28 19:10:24 +0900

    Also skip the failing test similar with a343952d195a324dd4563318d8f88b167316ce5d

commit 2b9374768f9f93129e5c4b7aaedfa785d041cbb1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-28 09:17:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-28 16:05:48 +0900

    `RUBY_DEBUG_LOG2` should filter against the given `file`

commit bee5089d6789401f265f87b2f23f1bd7ec63cec8
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-07-28 13:29:14 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-28 13:29:14 +0900

    Try reproducing the MinGW hang on time command (#6168)

    to see if it really exits correctly.

    GitHub Support asked me to confirm the command is exiting correctly.

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 5d5c1d0fbdf18b1fc4d5b74499ddba532adb6bc6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-28 01:42:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-28 09:06:42 +0900

    Suppress use-after-free warning by gcc-12

commit 431fdc9200ce28fcd10efb96fda869bb874fb2d0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-28 09:02:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-28 09:02:23 +0900

    [DOC] Cross references for `ARGF`

commit 4ad69899b7db1e384665dec090d5cdc0c3b3c9b2
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-07-28 07:29:00 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-07-28 07:29:00 +0900

    Fix documentation for ARGF.inplace_mode{,=}

    The value affects the name of the backup file created, not the
    name of the file modified (as the file is modified in place).

    Fixes [Bug #18920]

commit 6582df26dcdef5dab01242b4d97d9b242e959860
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-07-28 00:18:25 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-07-28 00:18:25 +0900

    Update to ruby/spec@cbfaf51

commit 44f42413e6c3c2b487a03b53bf6cacbb83ac285b
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-07-28 00:18:23 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-07-28 00:18:23 +0900

    Update to ruby/mspec@290e36a

commit 70a9328b791f46a16e0f2d85db28b893a6ceed5b
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-07-27 21:18:25 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-27 22:16:04 +0900

    [ci-skip]Document how to run an individual bootstrap test

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6190

commit 64c8291c7e7b6c5e1357c48ab4edb0f434ef1739
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-27 14:11:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-27 21:05:10 +0900

    [ruby/pathname] Fix `autoload` of `FileUtils`

    Should not be `Pathname::FileUtils`.

    https://github.com/ruby/pathname/commit/d1eb366e73

commit 464f73a5f0c1042bfefdd367b330cbdcafffca95
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-27 17:36:45 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-27 17:36:45 +0900

    Do not load library files from repository only for test

    What we want to test should be the bundled and to be installed files,
    but not the upstream.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6188

    Merged-By: nobu <nobu@ruby-lang.org>

commit 8154b176dee18284772d58c817851bd988e58742
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-27 14:17:19 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-27 14:17:19 +0900

    Manually sync with https://github.com/ruby/date/pull/64

commit c3d9849df9759caf298e4d0edca1e59f16e153d1
  Author:     moe <moe@busyloop.net>
  AuthorDate: 2022-07-25 20:40:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-27 05:39:40 +0900

    [rubygems/rubygems] Add ignore_funding_requests config flag

    https://github.com/rubygems/rubygems/commit/ab302f72c9

commit 64f9f7d855a0367c4518e9a2a4cd26e0d0344856
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-27 05:06:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-27 05:06:56 +0900

    [ruby/rdoc] [DOC] Clarifications for directives (https://github.com/ruby/rdoc/pull/903)

    -  Former section "Directives in Trailing Comments" is reworked. The important thing about a directive is what it does, not whether it's trailing or stand-alone. Therefore I've worked the directives in the former section into the appropriate sections, based on function.
    - Each directive is now explicitly marked as trailing or stand-alone.
    - C-code directives are mentioned only for those directives that actually appear in our ruby/ruby C files, which are :startdoc:, :stopdoc:, :enddoc:, :include:, and :call-seq:. What effect, if any, other directives have in C, I'm not sure about.

    https://github.com/ruby/rdoc/commit/b00978bfa5

commit b4ae144e19ea5d784dfd0ed7d486c7f533d58f01
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-23 17:25:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-27 04:56:34 +0900

    [rubygems/rubygems] Don't use Pathname for creating extension dir

    Not sure why, but I run into the following flaky test failure

    ````
    (...)

    Invoking `/Users/deivid/.asdf/installs/ruby/3.1.2/bin/ruby -I/Users/deivid/Code/rubygems/rubygems/bundler/spec -r/Users/deivid/Code/rubygems/rubygems/bundler/spec/support/artifice/fail.rb -r/Users/deivid/Code/rubygems/rubygems/bundler/spec/support/hax.rb /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/bin/bundle install` failed with output:
    ----------------------------------------------------------------------
    --- ERROR REPORT TEMPLATE -------------------------------------------------------

    ```
    NameError: constant Pathname::FileUtils not defined

        FileUtils.mkpath(@path, mode: mode)
        ^^^^^^^^^
      /Users/deivid/.asdf/installs/ruby/3.1.2/lib/ruby/3.1.0/pathname.rb:585:in `mkpath'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/gems/bundler-2.4.0.dev/lib/bundler/shared_helpers.rb:103:in `filesystem_access'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/gems/bundler-2.4.0.dev/lib/bundler/rubygems_gem_installer.rb:78:in `build_extensions'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/gems/bundler-2.4.0.dev/lib/bundler/rubygems_gem_installer.rb:28:in `install'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/gems/bundler-2.4.0.dev/lib/bundler/source/rubygems.rb:207:in `install'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/gems/bundler-2.4.0.dev/lib/bundler/installer/gem_installer.rb:54:in `install'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/gems/bundler-2.4.0.dev/lib/bundler/installer/gem_installer.rb:16:in `install_from_spec'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/gems/bundler-2.4.0.dev/lib/bundler/installer/parallel_installer.rb:186:in `do_install'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/gems/bundler-2.4.0.dev/lib/bundler/installer/parallel_installer.rb:177:in `block in worker_pool'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/gems/bundler-2.4.0.dev/lib/bundler/worker.rb:62:in `apply_func'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/gems/bundler-2.4.0.dev/lib/bundler/worker.rb:57:in `block in process_queue'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/gems/bundler-2.4.0.dev/lib/bundler/worker.rb:54:in `loop'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/gems/bundler-2.4.0.dev/lib/bundler/worker.rb:54:in `process_queue'
      /Users/deivid/Code/rubygems/rubygems/bundler/tmp/4/gems/system/gems/bundler-2.4.0.dev/lib/bundler/worker.rb:91:in `block (2 levels) in create_threads'

    (...)
    ```

    Whatever it was, this small change should fix it.

    https://github.com/rubygems/rubygems/commit/71d7503ce4

commit 6a69807576b911dd9d5a81befe08a7c3bb870b85
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-11-18 00:45:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-27 03:08:36 +0900

    [rubygems/rubygems] Completely drop base parameter from index

    This parameter was coupling the concept of lockfile with the index. I
    don't think it's necessary.

    Also I believe it's causing some flaky test failures, which might leak
    into realworld issues. They are like this:

    ````
    Invoking `/opt/hostedtoolcache/Ruby/3.0.4/x64/bin/ruby -I/home/runner/work/rubygems/rubygems/bundler/spec -r/home/runner/work/rubygems/rubygems/bundler/spec/support/artifice/fail.rb -r/home/runner/work/rubygems/rubygems/bundler/spec/support/hax.rb /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/bin/bundle lock` failed with output:
    ----------------------------------------------------------------------
    --- ERROR REPORT TEMPLATE -------------------------------------------------------

    ```
    NoMethodError: undefined method `identifier' for #<Gem::Specification:0x00005639ad0db0a0 @extension_dir=nil, @full_gem_path=nil, @gem_dir=nil, @ignored=nil, @bin_dir=nil, @cache_dir=nil, @cache_file=nil, @doc_dir=nil, @ri_dir=nil, @spec_dir=nil, @spec_file=nil, @gems_dir=nil, @base_dir=nil, @loaded=false, @activated=false, @loaded_from=nil, @original_platform="ruby", @installed_by_version=nil, @autorequire=nil, @date=2022-07-25 00:00:00 UTC, @description="This is a completely fake gem, for testing purposes.", @email="foo@bar.baz", @homepage="http://example.com", @name="win32-process", @post_install_message=nil, @signing_key=nil, @summary="This is just a fake gem for testing", @version=#<Gem::Version "0.8.3">, @authors=["no one"], @bindir="bin", @cert_chain=[], @dependencies=[<Gem::Dependency type=:runtime name="ffi" requirements=">= 1.0.0">], @executables=[], @extensions=[], @extra_rdoc_files=[], @files=[], @licenses=[], @metadata={}, @platform="ruby", @rdoc_options=[], @require_paths=["lib"], @required_ruby_version=#<Gem::Requirement:0x00005639ad0dbc80 @requirements=[[">=", #<Gem::Version "0">]]>, @required_rubygems_version=#<Gem::Requirement:0x00005639ad0dba50 @requirements=[[">=", #<Gem::Version "0">]]>, @requirements=[], @rubygems_version="3.2.33", @specification_version=4, @test_files=[], @new_platform="ruby", @full_name="win32-process-0.8.3", @has_rdoc=true, @license=["MIT"] win32-process-0.8.3>
      /home/runner/work/rubygems/rubygems/bundler/tmp/rubygems/lib/rubygems/specification.rb:2116:in `method_missing'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/remote_specification.rb:115:in `method_missing'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/lazy_specification.rb:34:in `eql?'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/index.rb:189:in `eql?'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/index.rb:189:in `search_by_dependency'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/index.rb:96:in `local_search'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/index.rb:64:in `unsorted_search'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/index.rb:60:in `search'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/resolver.rb:179:in `results_for'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/resolver.rb:113:in `search_for'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/resolver.rb:216:in `block in sort_dependencies'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/resolver.rb:207:in `each'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/resolver.rb:207:in `sort_by'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/resolver.rb:207:in `sort_dependencies'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb:60:in `block in sort_dependencies'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb:77:in `with_no_such_dependency_error_handling'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb:59:in `sort_dependencies'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:754:in `push_state_for_requirements'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:744:in `require_nested_dependencies_for'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:727:in `activate_new_spec'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:684:in `attempt_to_activate'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:254:in `process_topmost_state'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:182:in `resolve'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/molinillo/lib/molinillo/resolver.rb:43:in `resolve'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/resolver.rb:50:in `start'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/resolver.rb:24:in `resolve'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/definition.rb:480:in `reresolve'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/definition.rb:283:in `resolve'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/definition.rb:181:in `resolve_remotely!'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli/lock.rb:53:in `run'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli.rb:674:in `lock'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli.rb:31:in `dispatch'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/cli.rb:25:in `start'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/exe/bundle:48:in `block in <top (required)>'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/lib/bundler/friendly_errors.rb:120:in `with_friendly_errors'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/gems/bundler-2.4.0.dev/exe/bundle:36:in `<top (required)>'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/bin/bundle:23:in `load'
      /home/runner/work/rubygems/rubygems/bundler/tmp/1/gems/system/bin/bundle:23:in `<main>'
    ```
    ````

    I think the issue is that now we eagerly materialize some base
    specifications before resolving in order to give better errors if user
    specified an incorrect source in the Gemfile.

    This means that the key for the index hash will have heterogeneous
    specification objects (some LazySpecification, some real Specification),
    and `LazySpecification#eql?` is incompatible with that.

    By dropping the base parameter from the index, we should no longer have
    these heterogenous objects as hash keys.

    https://github.com/rubygems/rubygems/commit/dc179d41c3

commit 36d0c71acef5e80384c13f9b43419318d2127306
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-05-25 23:17:04 +0900
  Commit:     Aaron Patterson <tenderlove@ruby-lang.org>
  CommitDate: 2022-07-27 01:39:31 +0900

    Refactored poisoning and unpoisoning freelist to simpler API

commit 33f9e8f4ea451d33d789d9345599657347d92e96
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-27 01:31:47 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-27 01:31:47 +0900

    Add doc/rdoc directory to .document

    Adding the doc/rdoc directory to .document will allow files in that
    directory to be included in the documentation.

commit 163e3f075f71342fa5897beedf771e3e878876de
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-26 01:22:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-27 01:04:11 +0900

    [rubygems/rubygems] Use main as default branch for Bundler specs

    https://github.com/rubygems/rubygems/commit/482077d185

commit 4325e90205aa4cd0ea031df1b5e6334bfd9c7e51
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-25 23:47:49 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-26 22:12:09 +0900

    Use rb_ary_hidden_new for rb_ary_hidden_new_fill

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6180

commit efb91ff19b739b759f40af2673f942e80d212857
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-25 23:40:45 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-26 22:12:09 +0900

    Rename rb_ary_tmp_new to rb_ary_hidden_new

    rb_ary_tmp_new suggests that the array is temporary in some way, but
    that's not true, it just creates an array that's hidden and not on the
    transient heap. This commit renames it to rb_ary_hidden_new.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6180

commit 3f70aa6504d4c63a3cc928c52d6cf88dafffb40d
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-25 23:29:10 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-26 22:12:09 +0900

    Remove ary_discard

    ary_discard should not be used as it should be handled by the GC. The
    only user of ary_discard is rb_ary_product, which doesn't neeed to use
    ary_discard.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6180

commit 456e1d1eaa9bb11adaed1acde488d7da3c88704b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-26 19:42:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-26 21:12:58 +0900

    Try the tag without "v" prefix to checkout upstream repositories

commit 9a8f6e392fbd9c145566ae18fa2128ef96369430
  Author:     Kevin Menard <kevin@nirvdrum.com>
  AuthorDate: 2022-07-26 10:04:03 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-26 16:03:44 +0900

    Cheaply derive code range for String#b return value

    The result of String#b is a string with an ASCII_8BIT/BINARY encoding. That encoding is ASCII-compatible and has no byte sequences that are invalid for the encoding. If we know the receiver's code range, we can derive the resulting string's code range without needing to perform a full code range scan.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6183

commit 9e6d07f3462d29f340114650da9f13a36b866d5f
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-26 13:43:48 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-26 14:38:17 +0900

    Merge rubygems/bundler HEAD

      Merge from https://github.com/rubygems/rubygems/commit/2af2520b4a7ab1c6eb1fdc3d2ef4d8c062d96ad7

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6184

commit b404a5f106d13e25708c163c91e117b2e106b70c
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-26 13:41:51 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-26 13:42:37 +0900

    8fa66467de is broken with rubygems/rubygems and flori/json.

    Revert "Fix sync_default_gems.rb to use absolute path"

    This reverts commit 8fa66467de82f787ead9dd901ad06694c79d88dc.

commit 649bfbe00d8032fa2c0536e596a284f69926e87f
  Author:     Ivo Anjo <ivo.anjo@datadoghq.com>
  AuthorDate: 2022-07-11 22:51:44 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-07-26 10:43:44 +0900

    Fix `rb_profile_frames` output includes dummy main thread frame

    The `rb_profile_frames` API did not skip the two dummy frames that
    each thread has at its beginning. This was unlike `backtrace_each` and
    `rb_ec_parcial_backtrace_object`, which do skip them.

    This does not seem to be a problem for non-main thread frames,
    because both `VM_FRAME_RUBYFRAME_P(cfp)` and
    `rb_vm_frame_method_entry(cfp)` are NULL for them.

    BUT, on the main thread `VM_FRAME_RUBYFRAME_P(cfp)` was true
    and thus the dummy thread was still included in the output of
    `rb_profile_frames`.

    I've now made `rb_profile_frames` skip this extra frame (like
    `backtrace_each` and friends), as well as add a test that asserts
    the size and contents of `rb_profile_frames`.

    Fixes [Bug #18907] (<https://bugs.ruby-lang.org/issues/18907>)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6114

commit cc29b43c7a8079c0c9e308f049390dfaab5acbd9
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-26 06:31:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-26 06:31:36 +0900

    [ruby/rdoc] Move section Directives into section Blocks (https://github.com/ruby/rdoc/pull/901)

    https://github.com/ruby/rdoc/commit/e48e07ef53

commit ba098fa151bd842215d4840107b57fc0253c7ecf
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-26 04:51:08 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-26 05:29:14 +0900

    Sync RDoc

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6182

commit 8fa66467de82f787ead9dd901ad06694c79d88dc
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-26 04:49:11 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-26 05:29:14 +0900

    Fix sync_default_gems.rb to use absolute path

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6182

commit 43c11f6c4973e5e79043c90faee1ffc2019becc2
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-26 04:58:41 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-26 04:58:41 +0900

    For rdoc, copy doc/rdoc to doc/ (#6181)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 63330ae4ac4b153f2ef370a5d25e93231e15f064
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-05-27 04:39:07 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-07-26 04:08:58 +0900

    Change ROBJECT_TRANSIENT_FLAG to use FL_USER2

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5956

commit 979368b47c20293a0e8311d23832d6e8db0d6b3c
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-07-25 19:58:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-25 21:37:13 +0900

    [rubygems/rubygems] Bundler: add deprecation notice of viz to man

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/0e1cbfa598

commit 31a5586d1e007d04cfa10548d9bfb42b2787a7a0
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-22 00:08:51 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-25 21:18:52 +0900

    rb_str_buf_append: add a fast path for ENC_CODERANGE_VALID

    If the RHS has valid encoding, and both strings have the same
    encoding, we can use the fast path.

    However we need to update the LHS coderange.

    ```
    compare-ruby: ruby 3.2.0dev (2022-07-21T14:46:32Z master cdbb9b8555) [arm64-darwin21]
    built-ruby: ruby 3.2.0dev (2022-07-25T07:25:41Z string-concat-vali.. 11a2772bdd) [arm64-darwin21]
    warming up...

    |                    |compare-ruby|built-ruby|
    |:-------------------|-----------:|---------:|
    |binary_concat_7bit  |    554.816k|  556.460k|
    |                    |           -|     1.00x|
    |utf8_concat_7bit    |    556.367k|  555.101k|
    |                    |       1.00x|         -|
    |utf8_concat_UTF8    |    412.555k|  556.824k|
    |                    |           -|     1.35x|
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6163

commit f61dd38e5c85abc8c403851b1cbc3d3b04b67dbb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-25 18:43:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-25 18:50:08 +0900

    Wait the test thread to sleep

    Revert "Synchronize the test thread sleep"

    This reverts commit 307835fe314fea6e946a8c9b25bb3912680ed7d1.

commit 307835fe314fea6e946a8c9b25bb3912680ed7d1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-25 12:01:09 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-25 12:01:09 +0900

    Synchronize the test thread sleep

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6176

commit b30b727c243ad009a7f8435b559b466418874140
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-25 00:01:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-25 09:18:36 +0900

    Fix format specifier

    `uintptr_t` is not always `unsigned long`, but can be casted to void
    pointer safely.

commit 91c05b34cd9ca9120c4a5e5e9fe772f2f0d1f6a3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-17 08:56:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-25 08:50:07 +0900

    Bundled gems test needs `prepare-gems`

    `prepare-gems` downloads and extracts the bundled gems, and these gems
    are built by `build-exts` now.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6175

commit b291c972fa36e05107d13eea25cc445db4b4bec3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-16 02:08:06 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-25 08:50:07 +0900

    Use built bundled gems in test-bundled-gems

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6175

commit 6af7212004c0b98f09350b53a032f94f3a1e666c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-24 22:19:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-24 22:32:07 +0900

    Make extensions under `Gem.extension_api_version` directory

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6174

commit e0a7e5e13141a06103673b9d4ff21ca864ec38f9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-24 16:35:38 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-24 16:36:33 +0900

    Kill bundled gem tests when interrupted

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6173

commit 1cd487d785a415c68be30498f5fbff33b9e5b7e6
  Author:     Kaíque Kandy Koga <kaiquekandykoga@gmail.com>
  AuthorDate: 2022-07-24 08:47:40 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-07-24 08:57:09 +0900

    [DOC] IO#eof

    Use IO#eof? instead of I#eof?

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6172

commit 721d154e2f81c65bd7f1bfd9eff6759b015b123e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-23 21:42:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-23 21:42:05 +0900

    Remove duplicate code for internal arrays

    Internal arrays are now created hidden from the start.

commit 98a8a496bab077b22290dd25d7f8453d1e73a1ac
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-23 04:44:32 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-23 04:44:32 +0900

    Use rb_ary_tmp_new only for internal arrays

    rb_ary_tmp_new sets the klass to 0, so it should only be used for
    internal arrays.

commit 244bda7efd507657ada6f18e800d852d1a1569f4
  Author:     Ashley Ellis Pierce <anellis12@gmail.com>
  AuthorDate: 2022-07-23 02:11:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-23 03:42:59 +0900

    [rubygems/rubygems] Display mfa warnings on gem signin

    https://github.com/rubygems/rubygems/commit/4dc77b7099

    Co-authored-by: Jenny Shen <jenny.shen@shopify.com>

commit e199ae3edcead0271c6da3410eb02acd927739b7
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-23 00:04:43 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-23 02:29:21 +0900

    Remove reference counting for all frozen arrays

    The RARRAY_LITERAL_FLAG was added in commit
    5871ecf956711fcacad7c03f2aef95115ed25bc4 to improve CoW performance for
    array literals by not keeping track of reference counts.

    This commit reverts that commit and has an alternate implementation that
    is more generic for all frozen arrays. Since frozen arrays cannot be
    modified, we don't need to set the RARRAY_SHARED_ROOT_FLAG and we don't
    need to do reference counting.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6171

commit d77633a6952dc081b4901daf903b064fb8e26c24
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-07-22 20:18:00 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-23 00:24:37 +0900

    [rubygems/rubygems] Bundler: update command example in bundle-exec(1)

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/28bf5c8b33

commit b3be03074066f0c8ff87942a8dd68578f480f27b
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-07-21 19:15:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-22 23:34:49 +0900

    [ruby/reline] Rename dialog_pointer_* to dialog_highlight_*

    "Pointer" is not what we usually use to describe a selected item.

    "Highlight" is a more common word for the scenario so we should use it instead.

    https://github.com/ruby/reline/commit/b4279d1557

commit 8f7e18882269ef3747312a390b06f02f7e2c98eb
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-07-22 16:57:25 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-07-22 23:10:24 +0900

    Add "rb_" prefixes to toplevel enum definitions

    ... as per ko1's request.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6169

commit e763b1118ba1fada81d37da558f9d8e4da99f144
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-07-22 16:49:08 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-07-22 23:10:24 +0900

    Move enum definitions out of struct definition

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6169

commit c6734edc345c04d887e9183672f32f1d953c41d2
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-07-22 16:58:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-22 21:01:45 +0900

    [rubygems/rubygems] Remove bundle show from obsolete commands

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/6c07c9427b

commit a4e890b93e826b923175f4eb9b05823e82fb1fb1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-22 12:27:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-22 21:01:31 +0900

    [rubygems/rubygems] Use `SystemExit#status` as `exit_code`

    No reasons to manage separately.

    https://github.com/rubygems/rubygems/commit/8ede5c886e

commit 55c771c302f94f1d1d95bf41b42459b4d2d1c337
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-22 14:40:48 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-22 16:24:29 +0900

    [rubygems/rubygems] rubygems.rb is required by gem_runner.rb

    https://github.com/rubygems/rubygems/commit/503f763865

commit fe770716978e0f53ebfbd4ce18834ba512da6914
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-22 14:36:00 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-22 16:24:29 +0900

    [rubygems/rubygems] Removed needless value assignment

    https://github.com/rubygems/rubygems/commit/5825c4c2e8

commit 5904895cf5923559186859ff2183dfb386577058
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-07-21 06:49:20 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-22 12:09:04 +0900

    Add .git-blame-ignore-revs

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

commit 388c4e1076ac5a58d5008abc8e0a8d017698875a
  Author:     Akinori MUSHA <knu@idaemons.org>
  AuthorDate: 2020-10-22 03:46:18 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-22 12:06:05 +0900

    Make Gem::SystemExitException properly exit with a given code

    The cause was in how Gem::SystemExitException initializes itself.  It
    didn't pass an exit code to the super method.  See the document of
    SystemExit.new() for details.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6167

commit 6b749968103e2e91f4d8d2957900ac9ac06cf2ee
  Author:     Kenyon Ralph <kenyon@kenyonralph.com>
  AuthorDate: 2019-01-18 17:24:30 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-22 12:06:05 +0900

    bin/gem: remove initial empty line

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6167

commit b4876c8e5f3753c15eb43ee2872b7c0a914456ff
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2019-01-04 14:26:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-22 12:06:05 +0900

    Removed needless condition for old versions of Ruby.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6167

commit 1ed7ab29b3149f7f6b85ce89aa91d95cd12345b6
  Author:     bronzdoc <lsagastume1990@gmail.com>
  AuthorDate: 2018-11-20 02:55:22 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-22 12:06:05 +0900

    Enable Style/MultilineIfThen in Rubocop

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6167

commit 3b67c161cd6b5f7f4fac134c51f414599da9e7e0
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2018-11-14 07:17:34 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-22 12:06:05 +0900

    Remove trailing blank lines

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6167

commit 030c41bf557870cfdff9c818e8684451cac78163
  Author:     John Labovitz <johnl@johnlabovitz.com>
  AuthorDate: 2016-11-03 23:21:57 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-22 12:06:05 +0900

    Improve user-facing messages by consistent casing of Ruby/RubyGems
    (when it referred to the general concept and not a path), single-spacing
    between sentences, and a few other small issues.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6167

commit c6aa65430fbb94651f4d15e2a976f59b5475ca19
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-22 10:41:44 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-22 10:41:44 +0900

    Get rid of magic numbers

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6166

commit cf7d07570f50ef9c16007019afcff11ba6500d70
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-22 09:54:57 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-22 09:56:48 +0900

    Dump non-ASCII char as unsigned

    Non-ASCII code may be negative on platforms plain char is signed.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6166

commit 7223c0da152114c84e1c4261a282faaea21646fb
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-05-27 04:22:42 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-07-22 04:55:24 +0900

    Do not chomp trailing line separator IO#each with nil separator and chomp

    nil separator means no sepator, so chomp should not remove a line
    separator.

    Partially Fixes [Bug #18770]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6164

commit 3a5ea7c688b5c029ee8f69d84f49bc10b817714e
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-22 04:49:26 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-22 04:49:26 +0900

    Remove unused variable in array.c

    array.c:460:14: warning: unused variable 'len' [-Wunused-variable]
            long len  = ARY_HEAP_LEN(ary);

commit 9d862011e82b04bf21b26ebe4b472e8ef801dfef
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-22 04:16:06 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-22 04:17:59 +0900

    Remove check for shared root arrays

    All shared root arrays should not be on the transient heap.
    ary_make_shared evacuates arrays from the transient heap when creating
    shared roots.

commit f0ae583a3d64d3a9d94a193cb999d87b32c8b87b
  Author:     Jean byroot Boussier <jean.boussier+github@shopify.com>
  AuthorDate: 2022-07-22 02:55:02 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-22 02:56:08 +0900

    Revert "objspace_dump.c: skip dumping method name if not pure ASCII"

    This reverts commit 79406e3600862bbb6dcdd7c5ef8de1978e6f916c.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6165

commit 79406e3600862bbb6dcdd7c5ef8de1978e6f916c
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-21 21:50:44 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-22 01:43:45 +0900

    objspace_dump.c: skip dumping method name if not pure ASCII

    Sidekiq has a method named `❨╯°□°❩╯︵┻━┻`which corrupts
    heap dumps.

    Normally we could just dump is as is since it's valid UTF-8 and need
    no escaping. But our code to escape control characters isn't UTF-8
    aware so it's more complicated than it seems.

    Ultimately since the overwhelming majority of method names are
    pure ASCII, it's not a big loss to just skip it.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6161

commit 3ff53c8e04ecc91e0190de6d5950ecce2a2ea188
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-21 23:53:28 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-22 00:49:24 +0900

    Remove macOS 10.15 from CI

    macOS 10.15 is deprecated on GitHub Actions and will have periodic
    brownouts. See actions/virtual-environments#5583.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6162

commit 203f179ce7d1bde0befb8d12148aa392ad45ac56
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-07-22 00:29:50 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-07-22 00:29:50 +0900

    Revert "Do not chomp trailing line separator IO#each with nil separator and chomp"

    This reverts commit 04f86ad0b5d2fe4711ff300d855228a6aed55f33.

    This is causing CI issues, reverting for now.

commit 12ac8971a394118a57640299f654e46e763093fa
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-06-21 07:51:05 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-07-22 00:28:05 +0900

    Do not have class/module keywords look up ancestors of Object

    Fixes case where Object includes a module that defines a constant,
    then using class/module keyword to define the same constant on
    Object itself.

    Implements [Feature #18832]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6048

commit 04f86ad0b5d2fe4711ff300d855228a6aed55f33
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-05-27 04:22:42 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-07-22 00:13:40 +0900

    Do not chomp trailing line separator IO#each with nil separator and chomp

    nil separator means no sepator, so chomp should not remove a line
    separator.

    Partially Fixes [Bug #18770]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5959

commit 423b41cba77719b4f62aa530593ad36a990f7c74
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-05-27 05:25:22 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-07-22 00:02:32 +0900

    Make String#each_line work correctly with paragraph separator and chomp

    Previously, it was including one newline when chomp was used,
    which is inconsistent with IO#each_line behavior. This makes
    behavior consistent with IO#each_line, chomping all paragraph
    separators (multiple consecutive newlines), but not single
    newlines.

    Partially Fixes [Bug #18768]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5960

commit cdbb9b8555b4ddcc4c557f25ad785cae6209478d
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-21 02:29:34 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-21 23:46:32 +0900

    [Bug #18929] Fix heap creation thrashing in GC

    Before this commit, if we don't have enough slots after sweeping but
    had pages on the tomb heap, then the GC would frequently allocate and
    deallocate pages. This is because after sweeping it would set
    allocatable pages (since there were not enough slots) but free the
    pages on the tomb heap.

    This commit reuses pages on the tomb heap if there's not enough slots
    after sweeping.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6156

commit 804b073573eb180f12e77a0e3840f04d6eac86aa
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-21 19:52:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-21 22:32:33 +0900

    Update common sources including id.h after update

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6159

commit f954c5dae4c144207bd366cbc832d08930882b23
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-21 20:16:16 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-21 22:06:50 +0900

    string.c: use str_enc_fastpath in TERM_LEN

    Not having to fetch the rb_encoding save a significant
    amount of time.

    Additionally, even when we have to fetch it, we can do
    it faster using `ENCODING_GET` rather than `rb_enc_get`.

    ```
    compare-ruby: ruby 3.2.0dev (2022-07-19T08:41:40Z master cb9fd920a3) [arm64-darwin21]
    built-ruby: ruby 3.2.0dev (2022-07-21T11:16:16Z faster-buffer-conc.. 4f001f0748) [arm64-darwin21]
    warming up...

    |                      |compare-ruby|built-ruby|
    |:---------------------|-----------:|---------:|
    |binary_concat_utf8    |    510.580k|  565.600k|
    |                      |           -|     1.11x|
    |binary_concat_binary  |    512.653k|  571.483k|
    |                      |           -|     1.11x|
    |utf8_concat_utf8      |    511.396k|  566.879k|
    |                      |           -|     1.11x|
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6160

commit 80672b2d0e0f8e3c43446f5833b1a3491460e215
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-21 04:47:49 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-21 22:02:45 +0900

    Add comment in array.c about flags

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6157

commit d67fcdcc9fec1b842f0f221d4bada32bdbb7220a
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-21 04:34:42 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-21 22:02:45 +0900

    Add RARRAY_SHARED_FLAG

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6157

commit 1c9acb6bb1822f9d914b40dcea0b3ead849165cd
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-21 04:30:19 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-21 22:02:45 +0900

    Refactor macros of array.c

    Move some macros in array.c to internal/array.h so that other files
    can also access these macros.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6157

commit 4798a4fec213ce8a73a2d0d1c4ba879fb216ca3a
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-21 03:49:16 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-21 22:02:45 +0900

    Remove unused internal macros in rarray.h

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6157

commit 86b29ef8773c7ff5eaf398e16ffb3ddcb8e37074
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-21 11:45:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-21 11:45:48 +0900

    [ruby/digest] Ignore test_ractor.rb on non-Ractor ruby

    https://github.com/ruby/digest/commit/352b8c1636

commit 4a7ecc1bd9135916fd4ca246a47926c32ce72508
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-21 09:57:53 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-21 09:58:46 +0900

    [ruby/digest] Find an available digest algorithm to test

    https://github.com/ruby/digest/commit/8844716793

commit 1341dea7711ae80aa4c232503fbb5a1be48b648b
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-07-13 08:42:14 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-07-21 05:45:55 +0900

    Prevent the stack from being marked twice

    This commit prevents the stack from being marked twice: once via the
    Fiber, and once via the Thread.  It introduces an assertion to assert
    that the ec on the thread is the same as the ec on the Fiber being
    marked via the thread.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6123

commit 32e406d6d3c3ded9160298c4475c1aa188360b07
  Author:     Daniel Colson <danieljamescolson@gmail.com>
  AuthorDate: 2022-07-03 09:28:39 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-07-21 02:38:44 +0900

    Ensure _id2ref finds symbols with the correct type

    Prior to this commit it was possible to call `ObjectSpace._id2ref` with
    an offset static symbol object_id and get back a new, incorrectly tagged
    symbol:

    ```
    > sensible_sym = ObjectSpace._id2ref(:a.object_id)
    => :a
    > nonsense_sym = ObjectSpace._id2ref(:a.object_id + 40)
    => :a
    > sensible_sym == nonsense_sym
    => false
    ```

    `nonsense_sym` ends up tagged with `RUBY_ID_INSTANCE` instead of
    `RB_ID_LOCAL`. That means we can do silly things like:

    ```
    > foo = Object.new
    > foo.instance_variable_set(:a, 123)
    (irb):2:in `instance_variable_set': `a' is not allowed as an instance variable name (NameError)
    > foo.instance_variable_set(ObjectSpace._id2ref(:a.object_id + 40), 123)
    => 123
    > foo.instance_variables
    => [:a]
    ```

    This was happening because `get_id_entry` ignores the tag bits when
    looking up the symbol. So `rb_id2str(symid)` would return a value and
    then we'd continue on with the nonsense `symid`.

    This commit prevents the situation by checking that the `symid` actually
    matches what we get back from `get_id_entry`. Now we get a `RangeError`
    for the nonsense id:

    ```
    > ObjectSpace._id2ref(:a.object_id)
    => :a
    > ObjectSpace._id2ref(:a.object_id + 40)
    (irb):1:in `_id2ref': 0x000000000013f408 is not symbol id value (RangeError)
    ```

    Co-authored-by: John Hawthorn <jhawthorn@github.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6147

commit 5871ecf956711fcacad7c03f2aef95115ed25bc4
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-20 00:15:05 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-21 02:13:56 +0900

    Add RARRAY_LITERAL_FLAG for array literals

    Array created as literals during iseq compilation don't need a
    reference count since they can never be modified. The previous
    implementation would mutate the hidden array's reference count,
    causing copy-on-write invalidation.

    This commit adds a RARRAY_LITERAL_FLAG for arrays created through
    rb_ary_literal_new. Arrays created with this flag do not have reference
    count stored and just assume they have infinite number of references.

    Co-authored-by: Jean Boussier <jean.boussier@gmail.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6151

commit 660b1e973c8d9ea09667a853a2777a1b8b5a2a58
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-07-21 01:31:40 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-21 01:31:40 +0900

    YJIT: Skip setlocal WB check for immediate values (#6122)

    Write barriers may be required when VM_ENV_FLAG_WB_REQUIRED is set,
    however write barriers only affect heap objects being written. If we
    know an immediate value is being written we can skip this check.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 6140edb5df29bc9362ded379d6e2e72e4584d07a
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-07-20 23:48:58 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-20 23:48:58 +0900

    Match +YJIT in Ruby desc when testing segv (#6141)

    In test_bug_reporter and test_rubyoptions we intentionally
    test child processes that cause SEGV. We run them with YJIT
    if the parent uses YJIT so that the text description
    matches the parent RUBY_DESCRIPTION.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 86d061294d3cc1656e18d0e1fd4b4f290da16944
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-20 04:51:39 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-20 21:40:31 +0900

    [Bug #18928] Fix crash in WeakMap

    In wmap_live_p, if is_pointer_to_heap returns false, then the page is
    either in the tomb or has already been freed, so the object is dead. In
    this case, wmap_live_p should return false.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6152

commit fa5724cca97a22006c64bb382c3894e608c63c9e
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-16 20:17:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-20 19:55:34 +0900

    [rubygems/rubygems] Fix `ruby setup.rb --destdir /foo` modifying global specs

    Running a command like that is actually removing any previous default
    bundler specs in the default RubyGems installation (outside of destdir).
    It should instead only modify destdir.

    https://github.com/rubygems/rubygems/commit/5ed275383c

commit fae0d60120e8ab58b0130cbb30acf28aab733552
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-18 20:39:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-20 19:55:34 +0900

    [rubygems/rubygems] Refactor destdir checks

    https://github.com/rubygems/rubygems/commit/ca956c0de2

commit fcfb3ce371f9050ba857d9cfb8af6c14a8570f70
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-16 20:38:14 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-20 19:55:33 +0900

    [rubygems/rubygems] More cleanup

    https://github.com/rubygems/rubygems/commit/6012800a20

commit bdef3c73fe3792de59ecf681d2dcfcc8f62422b1
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-16 20:31:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-20 19:55:33 +0900

    [rubygems/rubygems] Unify common logic

    https://github.com/rubygems/rubygems/commit/e5434be14c

commit cbaf58d45564c17135595b549d4a0369f0e5a008
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-07-17 22:07:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-20 19:45:08 +0900

    [rubygems/rubygems] Bundler: update primary source in man 5 gemfile

    Specifying multiple primary sources in top-level was deprecated in
    Bundler 1.13.
    As Bundler CLI uses primary source instead of global, "global source"
    is replaced with "primary source".

    Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/1dd1753f6e

commit 472740de4184c214dfaaf6189fe3bb1b17a15ecc
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-20 17:39:54 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-20 17:39:54 +0900

    Fix free objects count condition

    Free objects have `T_NONE` as the builtin type.  A pointer to a valid
    array element will never be `NULL`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6153

    Merged-By: nobu <nobu@ruby-lang.org>

commit c0aa8ee947c06f063d98761c53ea539eb726edb4
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-20 01:45:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-20 03:03:33 +0900

    [rubygems/rubygems] Fix casing typo when resetting `RbConfig::CONFIG["ENABLE_SHARED"]`

    https://github.com/rubygems/rubygems/commit/3d1ae0050b

commit 8f1759143533d2b772efd5184ba02738f66fe1fc
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-19 20:24:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-20 00:23:38 +0900

    [Bug #18905] Check symbol name types more strictly

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6149

commit 631b34ef95cdcc6cb21eaae339176bd2b63a9bca
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-07-19 21:44:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-19 23:51:47 +0900

    [rubygems/rubygems] Bundler: change error/warning message for multiple global sources

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/316564b8fc

commit cb9fd920a31c8090fae0b1183be9483e17dc3e96
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-19 16:13:19 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-19 17:41:40 +0900

    str_buf_cat: preserve coderange when going through fastpath

    rb_str_modify clear the coderange, which in this case isn't
    necessary.

    ```
    compare-ruby: ruby 3.2.0dev (2022-07-12T15:01:11Z master 71aec68566) [arm64-darwin21]
    built-ruby: ruby 3.2.0dev (2022-07-19T07:17:01Z faster-buffer-conc.. 3cad62aab4) [arm64-darwin21]
    warming up...

    |                      |compare-ruby|built-ruby|
    |:---------------------|-----------:|---------:|
    |binary_concat_utf8    |    360.617k|  605.091k|
    |                      |           -|     1.68x|
    |binary_concat_binary  |    446.650k|  605.053k|
    |                      |           -|     1.35x|
    |utf8_concat_utf8      |    454.166k|  597.311k|
    |                      |           -|     1.32x|
    ```

    ```
    |            |compare-ruby|built-ruby|
    |:-----------|-----------:|---------:|
    |erb_render  |      1.790M|    2.045M|
    |            |           -|     1.14x|
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6120

commit 0ae8dbbee0631721e820e29d0a613485cdcb3507
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-06-29 17:35:41 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-19 17:41:40 +0900

    rb_str_buf_append: fastpath to str_buf_cat

    If the LHS is ASCII compatible and the RHS is 7BIT
    we can directly concat without being concerned about
    anything else.

    Benchmark:
    ```
    compare-ruby: ruby 3.2.0dev (2022-07-12T15:01:11Z master 71aec68566) [arm64-darwin21]
    built-ruby: ruby 3.2.0dev (2022-07-13T10:13:53Z faster-buffer-conc.. a04c10476d) [arm64-darwin21]
    warming up...

    |                      |compare-ruby|built-ruby|
    |:---------------------|-----------:|---------:|
    |binary_append_utf8    |    385.315k|  573.663k|
    |                      |           -|     1.49x|
    |binary_append_binary  |    446.579k|  574.898k|
    |                      |           -|     1.29x|
    |utf8_append_utf8      |    430.936k|  573.394k|
    |                      |           -|     1.33x|
    ```

    Note that in the benchmark, the RHS always have a precomputed
    coderange. So the benchmark never enter the slowpath of having to
    scan the RHS. However it's extremly likely that we'll end
    up scanning it anyway in rb_enc_cr_str_buf_cat

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6120

commit ee1d2b276abbf6b03d862952a949302672a470a9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-19 16:50:00 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-19 17:33:44 +0900

    [ruby/fileutils] Add an octal prefix to clarify to be octal

    https://github.com/ruby/fileutils/commit/332025bc02

    Co-Authored-By: David Rodríguez <deivid.rodriguez@riseup.net>

commit d084585f01b57727a5778f2f6723b89c6d98a9d4
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-13 18:54:08 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-19 15:48:56 +0900

    Rename ENCINDEX_ASCII to ENCINDEX_ASCII_8BIT

    Otherwise it's way too easy to confuse it with US_ASCII.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6127

commit 85ea46730deff70172a9f50172f0011a7401f371
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-07-19 04:38:12 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-07-19 06:06:30 +0900

    Separate TS_IVC and TS_ICVARC in is_entries buffers

    This allows us to treat cvar caches differently than ivar caches.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6148

commit ecff3349953e17491630ef7b68c5ac6b095d39bf
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-06-06 23:48:42 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-07-19 04:44:01 +0900

    Extract vm_ic_entry API to mimic vm_cc behavior

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5978

commit a1c0aa7701cdf0fa58ef7ba215507aa221dc4062
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-18 23:49:28 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-18 23:49:28 +0900

    Remove unused variable in array.c

    vshared is no longer used.

commit fd0902bfcd3cd564434aadfd40657f2a916d47a2
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-18 21:34:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-18 23:24:38 +0900

    [rubygems/rubygems] Move fileutils require to be even more lazy

    If directories are already created (the common case), fileutils won't be
    required at all.

    https://github.com/rubygems/rubygems/commit/63a9b94fc9

commit dd362a786af7f5131844652fa85a07539b4da9b8
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-16 06:39:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-18 22:36:57 +0900

    [ruby/rdoc] Fix call-seq for aliased method with similar names

    deduplicate_call_seq has a bug that skips call-seq for methods where the
    alias is a prefix of the method name. For example, if the alias name is
    "each" and the current method name is "each_line", then
    deduplicate_call_seq will skip all call-seq for "each_line" since it
    will believe that it is for the alias.

    https://github.com/ruby/rdoc/commit/1148988ccc

commit a74634de106df63fb39a7077561657bb61a0bc97
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-16 19:09:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-18 19:07:55 +0900

    [rubygems/rubygems] Fix upgrading RubyGems with a customized `Gem.default_dir`

    https://github.com/rubygems/rubygems/commit/16d01f9486

commit 01560e1c53ce2e1fcf3cdc2480c6f75ca7c6f0a6
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-11-19 21:13:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-18 19:07:47 +0900

    [rubygems/rubygems] Improve error message when gems cannot be found

    Include the source of each gem.

    https://github.com/rubygems/rubygems/commit/a0bed2fb79

commit 68903df6f6fc548f3bf68fb09ee8b2495dcd28f0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-18 00:59:27 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-18 00:59:27 +0900

    [Bug #18922] Normalize time at 24:00:00 UTC

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6146

    Merged-By: nobu <nobu@ruby-lang.org>

commit 64cff780051adf95a0f1799baddec98ae23e8add
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-17 16:05:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-17 19:57:48 +0900

    `Gem.unpack` extracts gems so able to execute

    Creates simple bin stubs to load the extracted executable files.
    After only extracted under `gems` directory, the gems are considered
    installed but the executable scripts are not found.
    Also the second argument is now the parent of the previous second and
    third arguments.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6145

commit fab8f3bde6e4d1ac78aa63e4768452b3da0f955e
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-07-17 03:21:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-17 19:44:51 +0900

    [rubygems/rubygems] Stop using `/dev/null` for silent ui for WASI platform

    WASI doesn't guarantee that `/dev/null` is present.
    So without this patch, we needed to mount host's `/dev` directory to WASI
    guest process to avoid `ENOTCAPABLE` error while `require "bundler/setup"`

    https://github.com/rubygems/rubygems/commit/e9187ab61f

commit 5081d0dd5c366ebaee084fd67289bebe23ddb152
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-07-17 16:48:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-17 18:27:00 +0900

    [rubygems/rubygems] bundler: fix typo in inline RuboCop config

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/e11f5a143b

commit ef2d673052ebc0c1d450c15286bc8fdee5381383
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-16 03:18:40 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-17 17:47:23 +0900

    [rubygems/rubygems] Show a proper error if extension dir is not writable

    Instead of showing the bug report template.

    https://github.com/rubygems/rubygems/commit/0c8b6f7dd5

commit 3cfc3fcf96a414fc1a966eacc57a282aa2580547
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-16 04:34:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-17 17:47:22 +0900

    [rubygems/rubygems] Unify some common code

    https://github.com/rubygems/rubygems/commit/972e8ff965

commit 14f52cfce53711fda7f144b70c2d3d8b04b709e2
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-16 04:32:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-17 17:47:22 +0900

    [rubygems/rubygems] Don't call `#build_extensions` at all if there are no extensions

    https://github.com/rubygems/rubygems/commit/5ecc0e0b31

commit d20886dd225e07fe14347398c2c0913f3e11d22a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-17 10:30:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-17 10:30:56 +0900

    Create build-only gemspec files only if having an extension

commit d010eba2f42f6a1ddae77d4822e5681523d561db
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-17 10:18:08 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-17 10:18:08 +0900

    Fix tests for ABI incompatible binary error messags

commit 50cfecd0155236a3120c5f78b779b058867cb46d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-17 08:59:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-17 09:01:33 +0900

    Show ABI incompatible binary path

commit 5ae83151b16858083e6443fadc76e7fde0ff1199
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-11 23:04:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-16 19:33:16 +0900

    [rubygems/rubygems] Drop support for old `Gem::Specification` versions

    `specification_version` method was added before RubyGems 1.0, and
    `add_runtime_dependency` method was before 1.2.  These seem aged
    enough to remove.

    https://github.com/rubygems/rubygems/commit/92770c5cd9

commit 6c1d7dab52b9bd26cbb624634b4acb86ba37aa7f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-16 17:58:52 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-16 17:58:52 +0900

    Fix conversion from absolute path to relative path

commit c093e7d64545640c8f2e7bb3eb24e3f9e24fb1c5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-16 16:37:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-16 16:38:03 +0900

    Avoid to symlink under symlink

commit 5101671cbc008230cae7b5c2190b2f6938a19f74
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-16 15:28:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-16 15:28:05 +0900

    Disable parallel built in test-bundled-gems

commit b536ac2cd085a7f14b91959c1a8e8d7db43f1c4a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-16 11:22:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-16 11:26:15 +0900

    test-bundled-gems.rb needs `+` with GNU make

    This script runs `make` internally, and sub-`make`s need the
    environment variable for the job server when compiling in parallel.

commit 78d2be69b500e4552e0e75fdefd26606a0506009
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-14 11:59:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-16 10:11:42 +0900

    Move copying/linking extra files to Makefile so removed by `clean`

commit f375280d5a9d2a1da0a0432a9e9fe7ffed910d50
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-07-16 04:18:30 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-07-16 05:39:02 +0900

    Add benchmarks for setting / getting ivars on generics

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6144

commit aed1539ec59ab8048b2fb64a7364d106acbaf30a
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-07-16 02:52:47 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-16 02:52:47 +0900

    YJIT: Add send unit tests (#6143)

    Add send unit tests for YJIT

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 36ca0e58b600f3338ad4880d77c8c7fbc8f51460
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-06-28 22:39:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-16 02:30:23 +0900

    [ruby/reline] Use color name instead of code (integer) in dialog color APIs

    As pointed out in the
    [comment](https://github.com/ruby/reline/pull/413#issuecomment-1168033973),
    the code is actually a control sequence and not only for colors.

    To make the dialog color APIs safer to use, we should restrict its
    usages and extract away the bg/fg concept from the input.

    So in this commit, I made these changes:

    1. The dialog_*_bg/fg_color APIs only takes and returns color names (symbol):
      - :black
      - :red
      - :green
      - :yellow
      - :blue
      - :magenta
      - :cyan
      - :white
    2. Add additional dialog_*_bg/fg_color_sequence APIs to access the raw code.

    https://github.com/ruby/reline/commit/b32a977766

commit 280b805d040fa537d5a459b40d4bfa6d49700905
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-15 05:45:03 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-15 23:30:50 +0900

    [DOC] Fix documentation for ARGF#readlines

    [Bug #18909]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6137

commit c53439294e390595c88c6f3094021ffc7c0147e1
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-07-15 23:12:51 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-15 23:29:42 +0900

    Fixes ivar benchmarks to not depend on object allocation

    Prior to this change, we were measuring object allocation as well
    as setting instance variables within ivar benchmarks. With this
    change, we now only measure setting instance variables within
    ivar benchmarks.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6142

commit 7424ea184f9d67c1c7f3ee97494ed3bd1aa60833
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-11 23:09:39 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-15 22:21:07 +0900

    Implement Objects on VWA

    This commit implements Objects on Variable Width Allocation. This allows
    Objects with more ivars to be embedded (i.e. contents directly follow the
    object header) which improves performance through better cache locality.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6117

commit 7fda741f6e67b809b08423f0d4e903c078da2eed
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-07-15 10:26:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-15 18:45:38 +0900

    [rubygems/rubygems] Use https protocol for URLs for config mirror

    example.org is used mirror URL as an example, not to make access to
    a (potential) third-party domain.

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/31230f850c

commit 8e451d1083cb07ad974365f99b4f01742e4759c8
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-07-15 10:49:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-15 17:32:05 +0900

    [rubygems/rubygems] Fix wrong information about default RubyGems source

    Also fix regression from rubygems/rubygems PR 3056

    https://my.diffend.io/gems/rubygems-update/1.3.5/1.3.6/page/4#d2h-514986
    https://my.diffend.io/gems/rubygems-update/2.0.0/2.0.2/page/2#d2h-514986

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/06b1e9ebc5

commit 6c2cad835a0d7d73a00a5048babb113c4afa388b
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-07-15 13:53:41 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-07-15 14:54:20 +0900

    MJIT: Share rb_mjit_unit through mjit_unit.h

    mjit_compile.c should be able to access this more easily.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6140

commit ed8c21bbd5071b52d0d0612eadbdad8fe192e974
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-07-15 02:32:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-15 13:14:31 +0900

    Ensure symlinks to bundled gem with exts have parent dir

    When configuring with `--disable-rpath` and `--static-linked-ext` (e.g.
    building for WASI), `extmk.rb` doesn't build exts under bundled gems,
    and `.bundle/gems/#{gemname}-#{ver}` are not created due to no call of
    `extmake`.
    b2491783986084770f6f97552f27b868622730cf starts creating symlink at
    `.bundle/gems/#{gemname}-#{ver}/lib`, but the parent dir is not created,
    so configuration aginst debug and rbs gems were failed.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6136

commit 439d31bc777a6f9c9354dbe9a82495a9b4fa04ae
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-07-15 12:34:46 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-15 12:34:46 +0900

    MJIT: Merge mjit_worker.c back to mjit.c (#6138)

    Since #6006, we no longer avoid executing GC on mjit_worker.c and thus
    there's no need to carefully change how we write code whether you're in
    mjit.c or mjit_worker.c anymore.

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 3f962a20b9295f8b3e8a1a8cfba31ffdec8f8887
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-07-15 06:12:31 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-07-15 06:12:33 +0900

    Avoid SEGV on capture_cc_entries

commit c8748942f1f94cd1e06ed778f2ac7e2b0ab7728c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-15 05:37:47 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-15 05:37:47 +0900

    [DOC] Fix typo in documentation for IO#readlines

commit 4813443837d76e27eb293f1928bda7a47b9e8f3f
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-07-15 05:28:58 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-07-15 05:28:58 +0900

    Fix language describing protected methods

    Fixes [Bug #18887]

commit 509d0a92994e9b1ef497dbf84ed9e5faa1c8680d
  Author:     Karl Anderson <Karl.Anderson@safelinkhub.com>
  AuthorDate: 2021-10-28 16:53:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-15 01:39:42 +0900

    [ruby/psych] Fix infinite loop bug after YAML_MEMORY_ERROR (psych issue #440)

    https://github.com/ruby/psych/commit/6c56700fb2

commit 1df9b6c39040f21a26aa8879a6966c92a298b40d
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-07-14 07:12:53 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-07-15 00:25:37 +0900

    Get the insns_address_table from the vm_exec_core module table...

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6134

commit 673759328ca2ff46cc37989dd81c59fe3518e426
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-14 15:17:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-14 21:02:02 +0900

    [ruby/bigdecimal] Remove checks for `struct RRational` and `struct RComplex`

    These are used to see only if `RRATIONAL` and `RCOMPLEX` are
    available, however, these two are macros and can be checked with
    `#ifdef` directly.

    https://github.com/ruby/bigdecimal/commit/175bbacd43

commit 8b64e8f2ed5833570bd1f46683d2b96c7c98413a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-08 22:29:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-14 17:13:52 +0900

    [ruby/set] Get rid of use of `Gem::Version`

    When retrying in ruby's test, it seems possible that `Gem` is not
    loaded.

    ```
      1) Error:
    TC_Set_Builtin#test_to_set:
    NameError: uninitialized constant TC_Set_Builtin::Gem
        /export/home/chkbuild/chkbuild-gcc/tmp/build/20220708T070011Z/ruby/test/test_set.rb:844:in `should_omit?'
        /export/home/chkbuild/chkbuild-gcc/tmp/build/20220708T070011Z/ruby/test/test_set.rb:869:in `test_to_set'

      2) Error:
    TC_Set_Builtin#test_Set:
    NameError: uninitialized constant TC_Set_Builtin::Gem
        /export/home/chkbuild/chkbuild-gcc/tmp/build/20220708T070011Z/ruby/test/test_set.rb:844:in `should_omit?'
        /export/home/chkbuild/chkbuild-gcc/tmp/build/20220708T070011Z/ruby/test/test_set.rb:849:in
        `test_Set'
    ```

    This is by `Gem::Version` only, just compare as array of integers
    instead.

    https://github.com/ruby/set/commit/cde0a4bbc7

commit 025677560a477c5d54f6a199447b4c92f367cd39
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-14 09:52:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-14 16:26:47 +0900

    [ruby/un] Support `FileUtils.cp_lr`

    https://github.com/ruby/un/commit/e976ad8a7c

commit 7c58c55c11e60822b04413ae08856427b0cc1f6c
  Author:     Olle Jonsson <olle.jonsson@gmail.com>
  AuthorDate: 2022-07-13 20:52:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-14 16:21:25 +0900

    [ruby/timeout] gemspec: Drop unused directives "executables"

    This gem exposes no executables.

    https://github.com/ruby/timeout/commit/70be2bd48a

commit 76de7a92b90e216c6645e93a3a034bc2f4257b03
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-12 19:33:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-14 15:06:09 +0900

    [rubygems/rubygems] Fix misleading error if compact index cannot be copied

    Previously if `~/.bundle/cache/compact_index/rubygems.org.*/version`
    were owned by root with read-only access, `bundle install` would fail
    with a misleading error message. For example:

    ```
    There was an error while trying to write to `/tmp/bundler-compact-index-20220711-1823-npllre/versions`. It is
    likely that you need to grant write permissions for that path.
    ```

    This happened because the EACCESS error was caught by
    `SharedHelpers.filesystem_access`, which makes it look like the target
    directory is at fault instead of the source.

    We can't simply drop this guard because that causes the opposite
    problem: the permission error appears to come from the source instead of
    the target, since `CompactIndexClient::Cache#lines` also wraps read
    access errors.

    Instead, bring a minimal implementation of `FileUtils.cp` and nest calls
    to `SharedHelpers.filesystem_access` properly.

    https://github.com/rubygems/rubygems/commit/320822c070

    Co-authored-by: Stan Hu <stanhu@gmail.com>

commit 9d900620cafc379f527ee04a338f3a7f5daf6962
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-13 23:50:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-14 09:00:13 +0900

    Set `GEM_PATH` environment variable in runruby.rb

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6130

commit 416cba90c1610f54dafd91234de9ec74d73ae22c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-13 22:17:18 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-14 09:00:13 +0900

    Try to install also gemspec files under gem directories

    Gemspec files having extension libraries are placed under each gem
    directories now.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6130

commit b2491783986084770f6f97552f27b868622730cf
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-13 20:15:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-14 09:00:13 +0900

    Install gems `lib` directory to build path

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6130

commit a2c66f52f402cb58372e271226f3341065561e53
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-13 18:58:32 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-14 09:00:13 +0900

    Make dependency-free gemspec files

    The default gems have not been installed yet in the build directory,
    bundled gems depending on them can not work.  As those dependencies
    should be usable there even without rubygems, make temporary gemspec
    files without the dependencies, and use them in the build directory.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6130

commit e1a4e44f14482814a0540ae0a4b31d858ff56f53
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-13 17:47:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-14 09:00:13 +0900

    Extract gemspec files to each gem directories

    Since extension libraries can not be built in the source directory,
    rubygems warns gems have extension libraries as the extensions are not
    built.  To order to suppress this warnings, extract such gemspec files
    under each gem directories instead of the common `specifications`
    directory.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6130

commit 8c74eaa08d25355560550787e38da079f1929abf
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-14 02:10:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-14 04:47:58 +0900

    [rubygems/rubygems] Fix `gem update --system` crash while regenerating binstubs

    Since a few commits ago, we no longer call `Gem::Specification.reset`
    after each invocation of `Gem::Installer#install`. This means we don't
    call it when the default Bundler is installed during `gem update
    --system`. This causes no issues until the end of the upgrade process
    when:

    * The previous default Bundler spec is removed from disk.
    * All specification stubs are turned into real specifications by loading
      them from disk. But the one for Bundler no longer exists so
      materializes to `nil` and regenerating binstubs crashes like this:

      ```
      Bundler 2.4.0.dev installed
      RubyGems 3.4.0.dev installed
      Regenerating binstubs
      ERROR:  While executing gem ... (NoMethodError)
          undefined method `platform' for nil:NilClass
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `block in execute'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/specification.rb:981:in `block in each'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/specification.rb:980:in `each'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/specification.rb:980:in `each'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `map'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `each'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `select'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `execute'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command.rb:323:in `invoke_with_build_args'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command.rb:301:in `invoke'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/setup_command.rb:604:in `regenerate_binstubs'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/setup_command.rb:183:in `execute'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command.rb:323:in `invoke_with_build_args'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command_manager.rb:185:in `process_args'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command_manager.rb:149:in `run'
        /Users/deivid/Code/rubygems/rubygems/lib/rubygems/gem_runner.rb:51:in `run'
      setup.rb:33:in `<main>'
      ```

    We fix it by more carefully managing the removal of the previous default
    Bundler gem.

    https://github.com/rubygems/rubygems/commit/9989f6d5af

commit 664c23db79dd0d500a834ef0ec8da443d95ddfd6
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-14 01:49:27 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-14 02:39:31 +0900

    GVL Instrumentation: remove the EXITED count assertion

    It's very flaky for some unknown reason. Something we have
    an extra EXITED event. I suspect some other test is causing this.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6133

commit 081bd061a8c0109fac91210b0f3689384df6fc61
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-14 00:44:22 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-14 00:44:22 +0900

    [DOC] Correct call-seq directive in string.c (#6131)

    Correct call-seq directive in string.c

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit d5c5fcb80a432e2078139c460230dc7952216c35
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-11 19:26:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-13 22:14:30 +0900

    Bundled gem extensions are out of scope of update-deps

commit 8290d76647f8db9df6d18c654d723b14cf0b3507
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-13 20:48:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-13 21:16:15 +0900

    [ruby/timeout] Give a name to the background thread

    https://github.com/ruby/timeout/commit/5594ae2f4d

commit 268269687c8747eb0bb67b09025b7ff7f495eba6
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-13 20:13:33 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-13 21:13:41 +0900

    thread/test_instrumentation_api: cleanup all existing threads in setup

    We saw the following failure:
    ```
    TestThreadInstrumentation#test_thread_instrumentation [/tmp/ruby/v3/src/trunk-random3/test/-ext-/thread/test_instrumentation_api.rb:25]:
    Expected 0..3 to include 4.
    ```

    Which shouldn't happen unless somehow there was a leaked thread.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6128

commit c4e2973733c03525ca42f0aecca6f2d834b88a70
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-07-13 02:17:23 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-07-13 16:09:11 +0900

    Fix a typo (thanks @Maumagnaguagno !)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6119

commit 1fe6c926036b3e6956865b56fba52ed242488e42
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-07-12 13:50:04 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-07-13 16:09:11 +0900

    Specify usable escape sequences in Exception#detailed_message

    An error message is primarily rendered in a terminal emulator, but is
    also shown in a browser by converting it to a HTML fragment.
    However, the conversion would be unreasonably difficult if the message
    includes any escape sequence (such as cursor move or screen clear).

    This change adds a guideline about escape sequences in
    `Exception#detailed_message`:

    * Use widely-supported escape sequences: bold, underline, and basic
      eight foreground colors (except white and black).
    * Make the message readable if all escape sequences are ignored.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6119

commit 156da55c164e5463edf15bae05021b7d1477e4de
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-07-13 14:51:05 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-07-13 15:46:19 +0900

    debug.gem 1.6.1

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6126

commit 437a5ae9d6d60bd1972641167a98204007bd1c0b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-07-13 12:56:36 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-07-13 14:11:55 +0900

    Merge RubyGems and Bundler master

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6124

commit e3a988a29c2cfa4a7e2e045d82989a7342955be8
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-13 10:49:24 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-13 10:49:24 +0900

    [DOC] Revisions for call-seq in doc guidelines (#6121)

        Splits certain guidelines for singleton and instance method.
        Calls for instance method to not prefix anything (like RDoc itself for a Ruby-coded instance method); e.g.:
            count -> integer, not array.count,.
            <=> other -> integer or nil, not hash <=> other -> integer or nil.
        Groups previous guidelines into Arguments, Block, Return types, Aliases.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit de51bbcb544651fb499dd4cc757a2bf6f3b439cf
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-07-12 04:40:34 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-07-13 08:07:41 +0900

    Use VM Lock when mutating waiting threads list

    `rb_thread_wait_for_single_fd` needs to mutate the `waiting_fds` list
    that is stored on the VM.  We need to delete the FD from the list before
    returning, and deleting from the list requires a VM lock (because the
    list is a global).

    [Bug #18816] [ruby-core:108771]

    Co-Authored-By: Alan Wu <alanwu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6116

commit 59c6b7b7abefdf8bc93d7117a3893d581f3a6c90
  Author:     Eileen M. Uchitelle <eileencodes@users.noreply.github.com>
  AuthorDate: 2022-07-13 05:40:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-13 05:40:49 +0900

    Speed up --yjit-trace-exits code (#6106)

    In a small script the speed of this feature isn't really noticeable but
    on Rails it's very noticeable how slow this can be. This PR aims to
    speed up two parts of the functionality.

    1) The Rust exit recording code

    Instead of adding all samples as we see them to the yjit_raw_samples and
    yjit_line_samples, we can increment the counter on the ones we've seen
    before. This will be faster on traces where we are hitting the same
    stack often. In a crude measurement of booting just the active record
    base test (`test/cases/base_test.rb`) we found that this improved the
    speed by 1 second.

    This also results in a smaller marshal dump file which sped up the test
    boot time by 4 seconds with trace exits on.

    2) The Ruby parsing code

    Previously we were allocating new arrays using `shift` and
    `each_with_index`. This change avoids allocating new arrays by using an
    index. This change saves us the most amount of time, gaining 11 seconds.

    Before this change the test boot time took 62 seconds, after it took 47
    seconds. This is still too long but it's a step closer to faster
    functionality. Next we're going to tackle allowing you to collect trace
    exits for a specific instruction. There is also some potential slowness
    in the GC code that I'd like to take a second look at.

    Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>

    Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 8c1808151f4c1b44e8b0fe935c571f05b2641b8b
  Author:     Kevin Backhouse <kevinbackhouse@github.com>
  AuthorDate: 2022-07-13 03:48:10 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-13 03:48:10 +0900

    Fix some UBSAN false positives (#6115)

    * Fix some UBSAN false positives.
    * ruby tool/update-deps --fix

  Notes:
    Merged-By: jhawthorn <john@hawthorn.email>

commit 8309b1366c3307ab8d9cda5b61b91540cf6cc8aa
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-13 03:21:32 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-13 03:21:32 +0900

    [DOC] Enhanced RDoc for Time (#6118)

    Treats:
        ::utc
        ::local
        #to_i
        #to_f
        #to_r
        #usec
        #nsec
        #subsec
        #<=>
        #eql?

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit dcbb94d5b9b4a7d0bfde5ba9a5da1ada643a31b7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-12 23:59:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-13 00:00:46 +0900

    Move timestamps directory for bundled gems

commit 3aee94fb91b9511d142fe79e07606f23576fcaba
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-12 22:57:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-12 22:57:25 +0900

    [ruby/date] [DOC] Enhanced RDoc (https://github.com/ruby/date/pull/63)

    Treats:
        #next
        #<<
        #>>
        #next_month
        #prev_month
        #next_year
        #prev_year
        #step
        #upto
        #downto

    https://github.com/ruby/date/commit/4246441a35

commit 067a5f1a0024ebd270f363cd440147da9dc176b5
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-07-07 22:17:39 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-12 21:50:33 +0900

    [Feature #18901] Don't run size pool move tests without VWA

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6099

commit 214ed4cbc6f33675230602dd09268b436da96f7d
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-06-09 23:59:08 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-12 21:50:33 +0900

    [Feature #18901] Support size pool movement for Arrays

    This commit enables Arrays to move between size pools during compaction.
    This can occur if the array is mutated such that it would fit in a
    different size pool when embedded.

    The move is carried out in two stages:

    1. The RVALUE is moved to a destination heap during object movement
       phase of compaction
    2. The array data is re-embedded and the original buffer free'd if
       required. This happens during the update references step

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6099

commit 0f8a0c5f371b0886e8e31e35a9095bc9843de27c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-10 13:01:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-12 19:43:11 +0900

    Refactor tests for ThreadInstrumentation counters

    * Extracted some assertions.
    * Assert counter values should be positive.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6111

commit a6e2f3fd8d98e511e4e2011bc1a45ba1bd9144a1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-10 13:01:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-12 19:43:11 +0900

    Use `IO.popen` to fork and exit the child process without cleanup

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6111

commit 8b98b9e274ea0a749044e044ee03ee1095aa75d0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-12 16:30:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-12 17:13:57 +0900

    Check only whether `RUBY_DEVEL` is defined

commit ba8f3d2c6c5b2386a9fe36b12089ad4e4120859a
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-07-12 16:07:13 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-07-12 16:07:38 +0900

    MJIT: Add assertions for mjit_capture_cc_entries

    to investigate SEGVs in it

commit e99e1f0f3fdb497ef1a82c55f59f30d46ca4728a
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-07-12 16:03:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-12 16:03:23 +0900

    Update bundled gems list at 2022-07-12

commit cbcc92f7888a7e2425edf57ee82d992c6cbb4f78
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-07-12 15:49:11 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-07-12 15:49:13 +0900

    MJIT: s/assert/VM_ASSERT/

    include/ruby/assert.h sets NDEBUG by default.
    As MJIT CI uses -DVM_CHECK_MODE, using only VM_ASSERT might be more
    helpful.

commit 66dfcbed376489193ad5afeb5da384ddc1f9c849
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-12 00:04:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-12 00:05:15 +0900

    [ruby/irb] [DOC] Include updated help message (https://github.com/ruby/irb/pull/377)

    * Include updated help message

    https://github.com/ruby/irb/commit/ff129f3794

commit 702d4d773f7352629725c5c5d6d34d16889773bb
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-12 00:02:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-12 00:02:41 +0900

    [ruby/date] [DOC] Enhanced RDoc (https://github.com/ruby/date/pull/62)

    Minor edits to 11 methods' documentation.

    https://github.com/ruby/date/commit/00bb7f6648

commit a871fc4d86e857b4c580604d2654877135484896
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-07-11 14:53:12 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-07-11 23:38:37 +0900

    Fix a regression of b2e58b02aec73f9c350bf109c021c180fc699ccc

    At that commit, I fixed a wrong conditional expression that was always
    true.  However, that seemed to have caused a regression. [Bug #18906]

    This change removes the condition to make the code always enabled.
    It had been enabled until that commit, albeit unintentionally, and even
    if it is enabled it only consumes a tiny bit of memory, so I believe it
    is harmless. [Bug #18906]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6112

commit 2733c049674298cbc2130689a0a40013f3458755
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-06-28 22:08:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-11 22:19:44 +0900

    [ruby/reline] Add tests for top-level dialog color APIs

    https://github.com/ruby/reline/commit/347a468c59

commit 6423d32e3be76df346ea2051e1cbba220f36c9c0
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-07-08 06:32:35 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-11 22:00:03 +0900

    Replace use of double_heap in tests with expand_heap

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6107

commit a6dd859affc42b667279e513bb94fb75cfb133c1
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-07-08 05:52:05 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-11 22:00:03 +0900

    Add expand_heap option to GC.verify_compaction_references

    In order to reliably test compaction we need to be able to move objects
    between size pools.

    In order for this to happen there must be pages in a size pool into
    which we can allocate.

    The existing implementation of `double_heap` only doubled the existing
    number of pages in the heap, so if a size pool had a low number of pages
    (or 0) it's not guaranteed that enough space will be created to move
    objects into that size pool.

    This commit deprecates the `double_heap` option and replaces it with
    `expand_heap` instead.

    expand heap will expand each heap by enough pages to hold a number of
    slots defined by `GC_HEAP_INIT_SLOTS` or by `heap->total_pags` whichever
    is larger.

    If both `double_heap` and `expand_heap` are present, a deprecation
    warning will be shown for `double_heap` and the `expand_heap` behaviour
    will take precedence

    Given that this is an API intended for debugging and testing GC
    compaction I'm not concerned about the extra memory usage or time taken
    to create the pages. However, for completeness:

    Running the following `test.rb` and using `time` on my Macbook Pro shows
    the following memory usage and time impact:

    pp "RSS (kb): #{`ps -o rss #{Process.pid}`.lines.last.to_i}"
    GC.verify_compaction_references(double_heap: true, toward: :empty)
    pp "RSS (kb): #{`ps -o rss #{Process.pid}`.lines.last.to_i}"

    ❯ time make run
    ./miniruby -I./lib -I. -I.ext/common  -r./arm64-darwin21-fake  ./test.rb
    "RSS (kb): 24000"
    <internal:gc>:251: warning: double_heap is deprecated and will be removed
    "RSS (kb): 25232"

    ________________________________________________________
    Executed in  124.37 millis    fish           external
       usr time   82.22 millis    0.09 millis   82.12 millis
       sys time   28.76 millis    2.61 millis   26.15 millis

    ❯ time make run
    ./miniruby -I./lib -I. -I.ext/common  -r./arm64-darwin21-fake  ./test.rb
    "RSS (kb): 24000"
    "RSS (kb): 49040"

    ________________________________________________________
    Executed in  150.13 millis    fish           external
       usr time  103.32 millis    0.10 millis  103.22 millis
       sys time   35.73 millis    2.59 millis   33.14 millis

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6107

commit fae568edbe61f816237aab230ced2ecc07135c45
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-07-11 15:58:18 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-07-11 15:58:19 +0900

    Use NO_JIT_DESCRIPTION only when needed

    Apparently 203801566a186b7b1cbe899a06d0832923a1bdf9 broke YJIT's CI.

commit 203801566a186b7b1cbe899a06d0832923a1bdf9
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-07-11 15:01:09 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-07-11 15:10:36 +0900

    Fix #5872 for MJIT GitHub Actions

    If you run tests with RUN_OPTS=--mjit, the test fixes in
    https://github.com/ruby/ruby/pull/5872 don't work.

commit da21a2c388852205e325b71b6400b7dd351146bb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-11 13:38:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-11 13:43:15 +0900

    [ruby/rdoc] `RubyVM` is implementation dependent

    https://github.com/ruby/rdoc/commit/aaeb5ce1ce

commit b564ef3698a76cabeb41b3085fab1258ac07c8cb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-11 13:34:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-11 13:43:14 +0900

    [ruby/rdoc] Fix the known classes more

    https://github.com/ruby/rdoc/commit/9f47234e0e

commit 86df6f4bb3b380ad536b102675d7fa452b01549f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-11 13:04:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-11 13:14:06 +0900

    [ruby/rdoc] Fix an exception class name

    https://github.com/ruby/rdoc/commit/87301da71b

commit 5137af633eddd2f5b71f73be0f07cf7899930da9
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-10 23:51:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-10 23:51:41 +0900

    [ruby/date] Enhanced RDoc (https://github.com/ruby/date/pull/61)

    Omit private aliases from Rdoc.

    https://github.com/ruby/date/commit/48f9180663

commit ec09ba58d11f9679dade7df1973b60b1f6ebcaf3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-10 17:56:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-10 17:56:36 +0900

    Extract `atomic_inc_wraparound` function

commit b1b8172328e384008bd17431335f512536c297f8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-06 09:39:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-10 13:11:07 +0900

    Add `asan_unpoisoning_object` to execute the block with unpoisoning

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6092

commit ec303e49afeee9f6070d06f55650bbd373c33dd6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-06 00:23:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-10 13:11:07 +0900

    Split `rb_raw_obj_info`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6092

commit 233054a609a36cc441d26f9064bc3d16ff83b686
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-07 00:28:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-10 13:11:06 +0900

    Cycle `obj_info_buffers_index` atomically

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6092

commit a006dcb73f105085eb2237c294a1618bd80c26a5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-06 00:59:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-10 13:07:40 +0900

    `APPEND_S` for no conversion formats

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6092

commit 2bf0313561304506cf3cceba6ef4c66a6f2c09b0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-05 22:55:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-10 13:03:22 +0900

    Rewrite `APPENDF` using variadic arguments

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6092

commit 51025a901309eefa8ae81ff386bd078f14707b70
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-05 22:39:08 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-10 13:03:22 +0900

    Use `size_t` for `rb_raw_obj_info`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6092

commit fbe3651466c2b552e19fe8fae73dfc18278433d9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-05 22:22:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-10 13:03:22 +0900

    Use `asan_unpoison_object_temporary`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6092

commit b16f44ad4f61e7827878d9f164d1a53414e80ea4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-06 00:57:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-10 13:03:21 +0900

    Get rid of static buffer in `obj_info`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6092

commit 1150a54afe98171657869bd2eafd82fda59893b1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-06 21:54:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-09 19:00:56 +0900

    Use `File::PATH_SEPARATOR` for the portability

commit 949c3afb48d2afd02c2bfa569e29f6a3a48c1607
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-09 14:29:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-09 15:26:32 +0900

    [ruby/openssl] Skip a new test when old OpenSSL

    It does not raise an error when setting an invalid value to SSLContext
    ciphers on Ubuntu 18.04.

    https://github.com/ruby/openssl/commit/8c96a69b0d

commit 2725c5dbe0b8c9da3d8fb69d552c7af2dfa4a5b5
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-07-09 04:52:40 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-07-09 13:08:19 +0900

    Fix invalid mkdir detection on OpenBSD

    This was broken by 67e54ce4081abaa16774b93ccd33ccbd1d6c6531, which
    resulted in " -d" being used as the mkdir_p program. I think this
    is because $ac_install_sh has been set to '' at the point it is
    used.

    There's probably a better way to fix this, but this should allow
    the OpenBSD CI to continue to work until a better fix is in place.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6110

commit e9ec6893d2186588b590540020660fdd76cc13ad
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-09 01:05:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-09 01:06:08 +0900

    [ruby/date] [DOC] Enhanced RDoc (https://github.com/ruby/date/pull/59)

    Minor changes (mostly doc-guide compliance) to 18 or so of simpler methods (getters).

    https://github.com/ruby/date/commit/00e37ba2b4

commit 86768f1d4c102ff82321fdae2e2f2e278d57f3c7
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-04-14 03:55:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 23:18:24 +0900

    [ruby/openssl] Fix formatting in docs

    The + tag can only be used for single words. For multiple words the <tt>
    tag has to be used.

    https://github.com/ruby/openssl/commit/cf2f019c3e

commit 4d6a29320dcd758c21944983da28b54037c200da
  Author:     Jarek Prokop <jprokop@redhat.com>
  AuthorDate: 2022-04-12 16:44:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 23:18:22 +0900

    [ruby/openssl] Let OpenSSL choose the digest if digest for Openssl::OCSP::BasicResponse#sign is nil.

    https://github.com/ruby/openssl/commit/27efcd7e1c

commit 7a5a90e05351262593ca6e4c1c6b8e797d8ab9c9
  Author:     Jarek Prokop <jprokop@redhat.com>
  AuthorDate: 2022-04-12 16:44:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 23:18:20 +0900

    [ruby/openssl] Let OpenSSL choose the digest if digest for Openssl::OCSP::Request#sign is nil.

    https://github.com/ruby/openssl/commit/a1f6cbc261

commit def445303a93c69dd16a9b849b9171d4e89c6dc5
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-26 05:50:10 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 23:18:18 +0900

    [ruby/openssl] Fix test of cipher name to pass in LibreSSL 3.4

    LibreSSL 3.5 switched the cipher naming to match OpenSSL.

    https://github.com/ruby/openssl/commit/bf198278bd

commit b5efef37942aa4c2b5e2ec2ab0b231ccd38cbe7a
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-26 05:39:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 23:18:16 +0900

    [ruby/openssl] Fix operator precedence in OSSL_OPENSSL_PREREQ and OSSL_LIBRESSL_PREREQ

    https://github.com/ruby/openssl/commit/b02815271f

commit aee36dd7880316a647ac2b3da98c2c1a14bf41c6
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-26 05:11:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 23:18:14 +0900

    [ruby/openssl] Fix build with LibreSSL 3.5

    https://github.com/ruby/openssl/commit/e25fb0d0d8

commit 09daf78fb59a8b280887ad1120a57776b5d82e17
  Author:     twkmd12 <95775763+twkmd12@users.noreply.github.com>
  AuthorDate: 2022-02-01 18:12:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 23:18:11 +0900

    [ruby/openssl] Add 'ciphersuites=' method to allow setting of TLSv1.3 cipher suites along with some unit tests (https://github.com/ruby/openssl/pull/493)

    Add OpenSSL::SSL::SSLContext#ciphersuites= method along with unit tests.

    https://github.com/ruby/openssl/commit/12250c7cef

commit 0bf2dfa6ac52b8c98116b2dba1225f9da12eb42f
  Author:     Stefan Kaes <stefan.kaes@xing.com>
  AuthorDate: 2022-01-04 21:28:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 23:18:09 +0900

    [ruby/openssl] ignore pkgconfig when any openssl option is specified

    https://github.com/ruby/openssl/commit/b23fa75aa3

commit 01025a0055bb5fe1a9a161e86cbd58c8fa2350ae
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-01-05 04:32:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 23:18:07 +0900

    [ruby/openssl] Skip optional wildcard SAN tests on LibreSSL 3.5.0+

    RFC 6066 states how some wildcard SAN entries MAY be handled, but
    it does not say they MUST be handled.  LibreSSL 3.5.0 only handles
    suffix wildcard SANs, not prefix wildcard SANs, or interior
    wildcard SANs, so return early from the wildcard SAN tests on
    LibreSSL 3.5.0.

    Fixes https://github.com/ruby/openssl/pull/471

    https://github.com/ruby/openssl/commit/717d7009d6

commit 58e7205c82ad07b949302589e89aad388519c01d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-08 19:04:57 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 19:10:18 +0900

    See the environment variable and then check if JIT options conflict

commit 7bab7883093df12048c4535b59b04e73f3b3b4ad
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-08 15:59:25 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 15:59:25 +0900

    Simplify BLSR code

    And suppress unary minus operator to unsigned type warnings by VC.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6108

commit 9958ed61bc0f0156f5ed9fd8f058d964d84cac19
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-08 12:11:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 12:11:56 +0900

    Use `roomof` macro

    The masking is not only unnecessary but works only when the masking
    value is a power of 2.  Also suppress unary minus operator to unsigned
    type warnings.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6108

commit 4a2662ae8b9f64346af82551fdd6756e7497e2f1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-08 11:20:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 11:31:51 +0900

    [Bug #18890] Suppress warnings and fix the message

    ```
    test/ruby/test_parse.rb:1384: warning: assigned but unused variable - obj
    test/ruby/test_pattern_matching.rb:1162: warning: unused literal ignored
    test/ruby/test_pattern_matching.rb:1165: warning: unused literal ignored
    test/ruby/test_pattern_matching.rb:1161: warning: assigned but unused variable - a
    test/ruby/test_pattern_matching.rb:1164: warning: assigned but unused variable - b
    ```

    And a newline should be significant here.

commit f1c15f3e941192b2230035ce2aab29c3d6970fca
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-08 10:41:53 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 10:55:44 +0900

    Relax assertion condition for thread local counters

    Recently `TestThreadInstrumentation#test_join_counters` often fails as

    ```
    <[1, 1, 1]> expected but was
    <[2, 2, 2]>.
    ```

    Probably it seems that the thread is suspended more than once.
    There may be no guarantee that the subject thread never be suspended
    more than once.

commit cf991337fbfb197bee9c5b2d081e3a8615b39486
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-08 10:41:19 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 10:55:44 +0900

    Make a local symbol static

commit 3cf2c2e4a111f621c3c23029a55edebf00bbe1b0
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-07-01 02:38:48 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-07-08 03:56:25 +0900

    Remove ISEQ_MARKABLE_ISEQ flag

    We don't need this flag anymore.  We have all the info we need via the
    bitmap and the is_entries list.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6084

commit 621e5c568af8881c58eb3c271e01fba5fe76a6a3
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-08 03:47:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-08 03:48:09 +0900

    [ruby/date] Enhanced RDoc (https://github.com/ruby/date/pull/58)

        Brings a dozen call-seq schemas into compliance with the doc guide.
        Adds links to section "Argument start" where needed.
        Revises (minorly) ::today.
        Otherwise, does not disturb existing text.

    https://github.com/ruby/date/commit/9aec11df50

commit 55c5bf27f5afd4bc107456d740ab5e13850ffa1e
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-08 03:15:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-08 03:15:47 +0900

    [ruby/irb] Additions/revisions to help-message (https://github.com/ruby/irb/pull/370)

    Changed:

        Added text to options that said just 'same as ruby -whatever'.
        Added defaults.
        Removed an errant tab.

    https://github.com/ruby/irb/commit/dfe454cc33

commit 65ae2bb2e045aa8b668d3c30515f5a6cb3eb68ad
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-07 23:28:43 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-08 02:49:25 +0900

    Thread#value: handle threads killed by a fork

    [Bug #18902]

    When a thread is killed because we forked, the `value` if left
    to `Qundef`. Returning it woudl crash the VM.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6103

commit 7dd0a2258880e433b98267ffd95dd4271c7bbf05
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-07-07 16:57:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-08 02:22:35 +0900

    [rubygems/rubygems] Fix `simulate_windows` helper

    It should also set the proper class variable so that `Gem.win_platform?`
    returns true.

    https://github.com/rubygems/rubygems/commit/0fbf6904d1

commit c8b3bd45cc3cae93ae701333202416838ee6a00c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-07 22:32:43 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-08 02:14:41 +0900

    Fix extconf.rb for OpenSSL 3 without $warnflags

    On Windows with OpenSSL 3, the gem fails to compile with the following
    error message:

      ruby/src/ext/openssl/extconf.rb:188: undefined method \`sub!' for nil:NilClass

    This is because $warnflags is nil.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6102

commit 4d8f12ba3806c735692429f1920a757024a935cc
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-07-07 23:48:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-08 01:07:19 +0900

    Fix macro redefinition warning for MacOS

    Introduced by 7f64989e5c913ef7624e084badd1a43ce65b3ccc

    ./internal.h:110:9: warning: 'memcpy' macro redefined [-Wmacro-redefined]
            ^
    /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h:62:9: note: previous definition is here
            ^
    1 warning generated.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6104

commit 587d2d199b3f783d03266d42d066949f8a4824d3
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-07 22:20:35 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-08 00:49:00 +0900

    thread_pthread.c: call SUSPENDED event when entering native_sleep

    [Bug #18900]

    Thread#join and a few other codepaths are using native sleep as
    a way to suspend the current thread. So we should call the relevant
    hook when this happen, otherwise some thread may transition
    directly from `RESUMED` to `READY`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6101

commit 61c7ae4d27d44b19b39fa240cf7edda2eeefc92d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-15 11:25:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-07 22:39:59 +0900

    Gather heap page size conditions combination

    When similar combination of conditions are separated in two places, it
    is harder to make sure the conditional blocks match each other.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6100

commit f36859869f31a4cf10805cc620ee6338b66558d1
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-07 06:30:36 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-07 22:39:28 +0900

    Improve error message for segv in read_barrier_handler

    If the page_body is a null pointer, then read_barrier_handler will
    crash with an unrelated message. This commit improves the error message.

    Before:

    test.rb:1: [BUG] Couldn't unprotect page 0x0000000000000000, errno: Cannot allocate memory

    After:

    test.rb:1: [BUG] read_barrier_handler: segmentation fault at 0x14

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6096

commit d6c98626da706fe5399a2a13f4a934c27c8f4c7b
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-07 06:04:22 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-07 22:39:28 +0900

    Fix crash in compaction due to unlocked page

    The page of src could be partially compacted, so it may contain
    T_MOVED. Sweeping a page may read objects on this page, so we
    need to lock the page.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6096

commit d7c5a6d49ba7fe62f7d2bf538be813234db20783
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-07-07 06:00:13 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-07-07 22:39:28 +0900

    Fix typo in gc_compact_move

    The page we're sweeping is on the destination heap `dheap`, not the
    source heap `heap`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6096

commit 7f64989e5c913ef7624e084badd1a43ce65b3ccc
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-07-06 09:18:28 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-07-07 22:10:53 +0900

    do not define our own version of memcpy

    The (sole) use of memcpy in our public header is now replaced to
    directly call ruby_nonempty_memcpy, and the previous definition of
    memcpy is now internal-only.  [Bug#18893]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6098

commit 8794cc62899c6447fa4451489b9e308e2a890595
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-29 19:41:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-07 15:06:10 +0900

    Tentatively put macOS CIs back with adding macOS 12

commit 67e54ce4081abaa16774b93ccd33ccbd1d6c6531
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-07 13:20:10 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-07 15:06:10 +0900

    Fallback `mkdir_p` to `as_mkdir_p`

    Assume `mkdir -p` to be race-free on recent systems.
    And we do not provide install-sh anyway.

commit cd948429223223f5e299626a4695ab30e43de2ea
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-02 20:58:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-07 11:33:07 +0900

    [Bug #18892] Reset `ARGF.lineno` after reading shebang

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6097

commit 7ba5c0633c228b75581c102796a484b6bf515022
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-07 07:04:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-07 07:05:01 +0900

    [ruby/pstore] Emphasize keys instead of roots, values instead of objects (https://github.com/ruby/pstore/pull/7)

    Modifies RDoc to Emphasize keys instead of roots, values instead of objects.

    Code:

        Renames method #root? to #key? and method #roots to #keys.
        Aliases method #key as #root and method #keys as #roots.
        Adds testing for all four methods.

    https://github.com/ruby/pstore/commit/4436ea0891

commit 4ccaf6285f36713cbbca800a55ea0a38a5df1ccd
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-07-07 05:20:53 +0900
  Commit:     Aaron Patterson <tenderlove@ruby-lang.org>
  CommitDate: 2022-07-07 05:21:37 +0900

    fix lldb scripts on older lldb python

commit dbb23f29cb721e11f9d07e1edefb4c65ef212d37
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-07 03:57:48 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-07 03:58:02 +0900

    [ruby/date] [DOC] Enhanced RDoc (https://github.com/ruby/date/pull/57)

    All things commercial.

    https://github.com/ruby/date/commit/9d3bc61728

commit c6b38e43b030782fcb95ed57333d69fe75863503
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-06-30 22:54:26 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-07 02:57:27 +0900

    thread_pthread.c: Remove useless call to pthread_rwlock_init

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6083

commit a2e0815e27e7eb35d57a5bd4c09630797e1869fc
  Author:     Noah Gibbs (and/or Benchmark CI) <noah.gibbs@shopify.com>
  AuthorDate: 2022-07-06 20:47:34 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-07 00:25:58 +0900

    Switch YJIT to using rb_str_buf_append rather than rb_str_append when encodings don't match, as discussed with byroot

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6095

commit 906f7cb3e7e6de2b75dc4a4a3c09f98d8bf28388
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-07-06 19:31:54 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-07 00:25:58 +0900

    vm_opt_ltlt: call rb_str_buf_append directly if RHS is a String

    `rb_str_concat` does a lot of type checking we can easily bypass.

    ```

    |               |compare-ruby|built-ruby|
    |:--------------|-----------:|---------:|
    |string_concat  |    362.007k|  398.965k|
    |               |           -|     1.10x|
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6095

commit 3c61e1e77f9e501dd5ef19d6c661ceba6b84cac8
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-07-07 00:13:22 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-07 00:13:22 +0900

    YJIT: add a counter for gc object refs in the machine code (#6089)

    Add a counter for gc object refs in the machine code

    This is to gather data for the eventual implementation of
    a constant pool.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 5ef3c7ea2d1968c87f361b6615699b92cc6e5a9a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-06 18:08:31 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-06 18:08:31 +0900

    [Bug #18898] Fallback invalid external encoding to the default

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6093

    Merged-By: nobu <nobu@ruby-lang.org>

commit 53afacd0365b9bc6cd40f83149c5e4fea76a9932
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-07-06 16:03:41 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-06 16:03:41 +0900

    Update bundled gems list at 2022-07-06

commit 76619bbb1198082e94716874777f282c59d2cc70
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-07-06 11:14:07 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-07-06 11:59:38 +0900

    [wasm] get rid of workaround use of older binaryen and update to latest

    We no longer need to use older version of binaryen since the blocker
    issue has been resolved https://github.com/WebAssembly/binaryen/issues/4401

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6091

commit eaeb130b11fefe91aaf61f294ea32af76dada74f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-03 14:45:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-06 08:32:36 +0900

    [Bug #18890] newline should be insignificant after pattern label

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6087

commit 902d1a5c513ed6e49e7f577ffe7146d30798b3e9
  Author:     Brian Le <brian.le@shopify.com>
  AuthorDate: 2022-07-01 08:20:53 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-06 02:59:14 +0900

    [rubygems/rubygems] add message when gems are requested to be updated but they are not installed

    https://github.com/rubygems/rubygems/commit/27953ffe9a

commit 6eab8095fa13ba6137f3807ed04188a53d587875
  Author:     Brian Le <brian.le@shopify.com>
  AuthorDate: 2022-07-01 08:20:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-06 02:59:13 +0900

    [rubygems/rubygems] output gems already up-to-date regardless if any gems were updated

    https://github.com/rubygems/rubygems/commit/4ec608a573

commit 5921bfc7ce91aa8079dd8ac4faf873ec911ce320
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-05 09:37:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-05 14:40:19 +0900

    Add `--stdout-on-failure`, the reverse of `--stderr-on-failure`

commit 1b34bd07c18068228188a72f94662cceac50f30e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-05 09:31:32 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-05 14:40:19 +0900

    Separate failed output option

    It is unrelated to `GlobOption` at all.

commit babdb158d14a626b570db6d42599f1ac2decbed3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-05 13:50:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-05 13:50:45 +0900

    Synchronize the test thread not to die before assertions

commit 3a9ff9457a5cee72ff5b8dff844f4453fc284bed
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-05 11:35:14 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-05 11:35:14 +0900

    CI: skip the failing test only

commit b5f871888eea0c4436cfe40eb44a1502661bd148
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-04 12:21:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-05 11:33:47 +0900

    CI: skip objspace test on MinGW for now

commit a070d4ccebd677a92af5e8350d89079a47fef5ee
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-05 09:30:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-05 09:30:05 +0900

    Local functions should be `static`

commit f64bb67d75ae30fe9502b2adbe723eb2566ba552
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-05 01:59:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-05 04:12:50 +0900

    [ruby/date] Update ext/date/date_core.c

    https://github.com/ruby/date/commit/8eb1c780fb

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

commit 5fe86666a58c9d73570815a0860372c2ce335234
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-04 22:53:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-05 04:12:49 +0900

    [ruby/date] Enhanced RDoc

    https://github.com/ruby/date/commit/e36690f70e

commit e323d8e6a20755342d008b86283511c98da04b3d
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-04 21:44:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-05 04:12:48 +0900

    [ruby/date] Enhanced RDoc

    https://github.com/ruby/date/commit/dcc0742623

commit 6317cf7de8d58f719fe232d50c0a89dbde1b5927
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-04 05:24:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-05 04:12:48 +0900

    [ruby/date] Enhanced RDoc

    https://github.com/ruby/date/commit/91c632f156

commit 7212163e7ca4a49137aa31fcb86c4c1c4cdb3846
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-04 05:18:44 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-05 04:12:47 +0900

    [ruby/date] Enhanced RDoc

    https://github.com/ruby/date/commit/5c18ec031e

commit 4ec14b63239ba00102bff64153b360dae1544c29
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-04 05:17:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-05 04:12:46 +0900

    [ruby/date] Enhanced RDoc

    https://github.com/ruby/date/commit/fd3ae275c3

commit 24c80aea0eb0d621861725428319b32236a050f8
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-04 05:08:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-05 04:12:45 +0900

    [ruby/date] Enhanced RDoc

    https://github.com/ruby/date/commit/ac25182c66

commit c90110d146fce051a56a5f4555a02c195e07df0a
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-03 22:45:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-05 04:12:44 +0900

    [ruby/date] Enhanced RDoc

    https://github.com/ruby/date/commit/f9ecaad2ee

commit 6324aaf3d003d96be6b779a9cd92efd6fad70457
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-03 22:38:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-05 04:12:43 +0900

    [ruby/date] Enhanced RDoc

    https://github.com/ruby/date/commit/e80fee4f30

commit 890df5f81271e031ae86775b8b8b8e4e4d4640d8
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-06-29 22:21:11 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-07-05 03:04:59 +0900

    ObjectSpace.dump: Include string coderange

    I suspect that some shared pages are invalidated because
    some static string don't have their coderange set eagerly.

    So the first time they are scanned, the entire memory page is
    invalidated.

    Being able to see the coderange in `ObjectSpace` would help debug
    this.

    And in addition `dump` currently call `is_broken_string()`  and `is_ascii_string()`
    which both end up scanning the string and assigning coderange. I think it's
    undesirable as `dump` should be read only.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6076

commit b92fb7869624cb58475516361505f65f4f8a24d0
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-07-04 16:03:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-04 16:03:51 +0900

    Update bundled gems list at 2022-07-04

commit fe6245b4309c855e6aca5b786ad50a72d53d278a
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-07-04 01:42:44 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-07-04 01:42:44 +0900

    Fix rb_fix_mul_fix on OpenBSD/mips64

    This fixes invalid and inconsistent results for the Fixnum*Fixnum case
    where the result of the multiplication does not fit in 64-bit
    on OpenBSD/mips64.  For example:

      $  for x in 1 23; do ruby31 -e 'p(54306000000000*86400)'; done
      14409380628474329524
      11410664325873689790

    Cases where an argument was Bignum, as well as cases where the result
    of the multiplication fits in 64-bit are fine:

      $ for x in 1 23; do ruby31 -e 'p(54306000*86400)'; done
      4692038400000
      4692038400000

      $ for x in 1 23; do ruby31 -e 'p(5430600000000000000000*86400)'; done
      469203840000000000000000000
      469203840000000000000000000

    This was originally discovered by running the tests for the openssl gem
    on OpenBSD/mips64 and having one test fail for a date far in the future.
    I eventually traced this to the generic multiplication issue.

    The underlying cause is using the int128_t type. This avoids use of the
    int128_t type in this case, falling back to the slower conversion code,
    which in the overflow case, turns the Fixnums into Bignums, then
    performs the multiplication.

commit 62084e19305c7047b5b979d6f7f33eab1f0f267d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-02 23:56:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-03 00:05:53 +0900

    Fix leaked global symbols for debug counter

commit c617495f8e8e3ef70076fc412172b202e8808981
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-02 23:52:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-03 00:05:53 +0900

    Fix empty call cache check for debug counter

commit d8be7d463d0c0764a9fcd25bdf1c2a0a4cb215a4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-02 22:41:19 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-03 00:05:53 +0900

    Suppress -Wstring-concatenation

    This concatenation of string literals is to not empty the array
    initialization even if no counter is declared, but warned by clang as
    suspicious.

commit 8c6a2cc24e6fcc49615d24e865f628a9b3606df5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-02 23:24:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-03 00:05:52 +0900

    Add check for USE_DEBUG_COUNTER

commit 558a9244e9ac49532da99215bef6ec60c376183f
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-01 06:16:25 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-02 21:49:13 +0900

    [ruby/pstore] Enhanced RDoc

    https://github.com/ruby/pstore/commit/cb2b9dc9a9

commit 7e8fd40c063298da6bc94ef80f4e0feae808d205
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-01 05:50:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-02 21:49:13 +0900

    [ruby/pstore] Enhanced RDoc

    https://github.com/ruby/pstore/commit/7e56730689

commit d7419354acaaad6631ed4b6f82eb90a6a37f6d96
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-01 05:10:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-02 21:49:12 +0900

    [ruby/pstore] Enhanced RDoc

    https://github.com/ruby/pstore/commit/23a7f5468f

commit 6f26a6cdef9f710613cc4f9f6ba3061b01c484ac
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-01 04:00:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-02 21:49:11 +0900

    [ruby/pstore] Enhanced RDoc

    https://github.com/ruby/pstore/commit/c12560e59a

commit ce5aa6d4af8ea6dd4e670ea822aec57bd32f39ea
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-01 01:49:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-02 21:49:10 +0900

    [ruby/pstore] Enhanced RDoc

    https://github.com/ruby/pstore/commit/117177c226

commit 2dafa0470b29abd91a2f057819c8baa4a7601de2
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-30 01:07:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-02 21:49:09 +0900

    [ruby/pstore] Enhanced RDoc

    https://github.com/ruby/pstore/commit/8f9843ef19

commit 902563a82725e6980158f35e87415ce575c591fc
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-30 00:08:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-02 21:49:09 +0900

    [ruby/pstore] Enhanced RDoc

    https://github.com/ruby/pstore/commit/8de41c1eed

commit 6eeb774ab145e6e04a9a33349bf01ed736421d79
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-29 06:25:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-02 21:49:08 +0900

    [ruby/pstore] Enhanced RDoc

    https://github.com/ruby/pstore/commit/c59d4a063e

commit 8715ecd04b8bb4976b89913be4e790e5d15c4b74
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-28 03:16:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-02 21:49:07 +0900

    [ruby/pstore] Enhanced RDoc

    https://github.com/ruby/pstore/commit/81a266d88c

commit 7b78aba53aa0b34800bfd96e9e278258d2a890c8
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-30 18:55:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-02 19:41:02 +0900

    [rubygems/rubygems] Account for default gems not having remote when caching

    https://github.com/rubygems/rubygems/commit/b93d4de2ff

commit 9101269e948d838c916ea8342b8e6edce2e0957c
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-30 18:54:53 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-02 19:41:02 +0900

    [rubygems/rubygems] Move rubygems source specific logic to rubygems source

    https://github.com/rubygems/rubygems/commit/6aa4c422a7

commit 0f06b8fa3eb4387882adb949c311203d78628833
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-02 11:11:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-02 14:46:38 +0900

    Relax `not_before` limit

    Use the value as similar as other tests below.
    Trying to fix sporadic “not yet valid” failures on some CIs.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6085

commit 829d7266049745e822c7344b36a8788688552d9b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-30 01:09:51 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-02 09:15:20 +0900

    Fallback to the default JIT only when no JIT is enabled

    Usually, command line options are given precedence first, environment
    variables next, and fall back to configuration options at last.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6080

commit 06f4ca503d7106d357eb6af9da4fdd368fbff25a
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-24 04:45:08 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-02 07:58:20 +0900

    [ruby/bigdecimal] Correct indentation in Kernel#BigDecimal

    https://github.com/ruby/bigdecimal/commit/3ede8860a6

commit 8f5ad74e406feb9097eb0704efe30ea5af2ea65b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-07-02 05:25:05 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-02 05:25:05 +0900

    [DOC] New page for strftime formats (#6074)

    This new page would be linked from method strftime in Time, Date, and DateTime, replacing the text there.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 3cf001811950608908b5d092c673572c5357fbbd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-01 18:15:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-01 20:55:29 +0900

    CI: Add conditions for `test_task` on MinGW

commit e0c6e288f0fe4c285dd4e16283835fffaf72e18a
  Author:     Masataka Pocke Kuwabara <kuwabara@pocke.me>
  AuthorDate: 2022-07-01 15:53:04 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-07-01 15:53:04 +0900

    Specify RBS commit hash to fix test failure on test-bundled-gems (#6082)

    Update RBS to v2.6.0 and specify RBS commit hash to fix test failure on test-bundled-gems

  Notes:
    Merged-By: pocke <p.ck.t22@gmail.com>

commit c684b1aa26c51d9163eec06890e990b430dc34c5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-01 09:08:25 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-07-01 09:08:25 +0900

    Fix TODO in stringio/truncate_spec.rb

commit 5df20a5da57bfce736a6fd7de26c1110e3154b44
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-07-01 01:45:39 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-07-01 01:45:39 +0900

    stop CI failures.

    302f353fd9223d020e48495eaa7a03ce5d539409 seems break the rubyspec.

    @nobu please check it.

commit 302f353fd9223d020e48495eaa7a03ce5d539409
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-07-01 00:49:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-07-01 00:52:29 +0900

    [ruby/stringio] Fix the result of `StringIO#truncate` so compatible with `File`

    https://github.com/ruby/stringio/commit/16847fea32

commit b6f6fc6e870d00e5151647f3f14eaa16b8fe145b
  Author:     Dave Schwantes <dorkrawk@github.com>
  AuthorDate: 2022-06-30 23:26:46 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-30 23:26:46 +0900

    YJIT: Refactor gen_opt_mod (#6078)

    Refactor gen_opt_mod in YJIT

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 2366e14976cd875e0b98321eb339d23016268b72
  Author:     Dave Schwantes <dorkrawk@github.com>
  AuthorDate: 2022-06-30 23:24:34 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-30 23:24:34 +0900

    YJIT: Handle 0 total_exits YJIT Status Display (#6079)

    handle case in YJIT stats where 0 exits causes NaN in the display

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit b0c639f249165d759596f9579fa985cb30533de6
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-30 16:53:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-30 18:55:44 +0900

    [rubygems/rubygems] Fix unintended double spaces in DSL documentation

    https://github.com/rubygems/rubygems/commit/b1826876d0

commit 8eb5198ccc7e32a2963325e4f8131f23a495635b
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-06-30 17:19:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-30 18:53:20 +0900

    [rubygems/rubygems] Prevent a warning: `*' interpreted as argument prefix

    http://rubyci.s3.amazonaws.com/ubuntu2004-arm/ruby-master/log/20220630T063003Z.log.html.gz
    ```
    [19606/21662] TestAst#test_not_cared:test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb(none):18: warning: `*' interpreted as argument prefix
    (none):19: warning: `*' interpreted as argument prefix
     = 0.00 s
    ```

    https://github.com/rubygems/rubygems/commit/c98f9326e8

commit 7dfaa617a44d28e8b04eafb7d1af2a8da26f5b26
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-30 17:04:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-30 17:56:04 +0900

    Use `matrix.arch` separated from `matrix.configure`

    Statically determined value should be set statically.

commit f4d70e1cd80d6c70753a34f69c650f2ba70d67f8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-30 16:04:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-30 16:51:39 +0900

    Make `FEATURE_SET_P` macro to include `FEATURE_BIT`

commit 982cda9a3e908c7ab49632c46f4b1e3c0219f9f2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-26 18:39:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-30 16:31:51 +0900

    [Bug #18877] Let `lex_ctxt` not to eat escaped whitespace

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6065

commit 4b1f337ef20ad31bc79c36c6e97e97817a013962
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-06-30 15:36:34 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-06-30 15:36:34 +0900

    Add more check to debug failures

commit a5420b6fc13ede3ed96cd3196265e7919f1146d1
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-06-30 11:45:13 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-06-30 13:50:13 +0900

    use latest debug.gem

    If `XDG_RUNTIME_DIR` is available, test-bundled-gems fails with
    old debug.gem tests.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6081

commit cfc8d7eaec9cd56bcbae0389a1739495bdc58098
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-06-25 08:37:53 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-30 09:07:42 +0900

    Use iseq bitmap when updating references

    This allows us to delete the disassembly code path for reference
    updating.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6062

commit 8d157bc80614be1b222ca2158d211399c40d151c
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-06-28 08:30:32 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-30 08:21:48 +0900

    Move function to `static inline` so we don't have leaked globals

    This function shouldn't leak and is only needed during instruction
    assembly

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6069

commit e3ab525f699b5191db70ef095b3d110890441940
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-06-28 06:31:15 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-30 08:21:48 +0900

    Fix ISeq dump / load in array cases

    We need to dump relative offsets for inline storage entries so that
    loading iseqs as an array works as well.  This commit also has some
    minor refactoring to make computing relative ISE information easier.

    This should fix the iseq dump / load as array tests we're seeing fail in
    CI.

    Co-Authored-By: John Hawthorn <john@hawthorn.email>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6069

commit 66eb58d6bd50dd3ad8691fcc8eb72ad4d45bc04c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-06-30 03:04:04 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-06-30 04:11:53 +0900

    Refactor tests for moving strings with compaction

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6077

commit 95bfea664841a707bfa1db35bb78474693f6228c
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-30 01:05:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-30 04:11:17 +0900

    [rubygems/rubygems] Use modern style hashes in Gemfile DSL docs

    https://github.com/rubygems/rubygems/commit/3f83236c02

commit 118e3edc32c9d1768cd4f33ca18f2c40ce9ae333
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-06-30 01:49:46 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-30 01:49:46 +0900

    Add a check-yjit-bindgen-unused target. Add to CI. (#6066)

    This fails if there are any unused rust-bindgen "allow" entries. For
    that target we turn on Rust warnings (there are a lot) and grep for the
    ones that correspond to unused allow entries.

    I've added check-yjit-bindgen-unused as a dependency of
    check-yjit-bindings, so unused allow entries will now fail CI.

    This change also removes our single unused allow entry (VM_CALL.*) which
    was known to be bad.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit bd8ed1f904969f853e747aaa1b942657908a3b00
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-29 20:10:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-29 20:10:29 +0900

    Do not call `exit()` directly

commit 685efac05983dee44ce2d96c24f2fcb96a0aebe2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-29 14:13:15 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-29 14:13:15 +0900

    [Bug #18884] `class` cannot be just followed by modifiers

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6064

    Merged-By: nobu <nobu@ruby-lang.org>

commit 3051d4bc2a3aa5f0df93503f6a137c47a9114717
  Author:     Ian Ker-Seymer <i.kerseymer@gmail.com>
  AuthorDate: 2022-06-29 08:17:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-29 09:53:14 +0900

    [rubygems/rubygems] Support ruby 2.3 and 2.4

    https://github.com/rubygems/rubygems/commit/3a9205df36

commit 50e576292b26010470f55e6cc89a0cec680f92d1
  Author:     Ian Ker-Seymer <i.kerseymer@gmail.com>
  AuthorDate: 2022-06-29 06:33:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-29 09:53:14 +0900

    [rubygems/rubygems] Upgrade rb-sys to 0.9.14

    https://github.com/rubygems/rubygems/commit/c9adf3ef1c

commit a16de43f23c0ca160ee3bf3c8655a6ebb586e8fe
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-22 21:24:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-29 03:25:46 +0900

    [rubygems/rubygems] Add `gem env user_gemhome` and `gem env user_gemdir`

    https://github.com/rubygems/rubygems/commit/14d3f80df6

commit f0fab24241d69d1a89ab764b34cfe74807b1b2d3
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-22 21:15:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-29 03:25:46 +0900

    [rubygems/rubygems] Add missing test for user installation directory

    https://github.com/rubygems/rubygems/commit/5ab8aa2a45

commit 1098fdf890d66d624560c4150fb403eff2e2e464
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-22 21:11:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-29 03:25:45 +0900

    [rubygems/rubygems] Also document `gem env` argument aliases

    https://github.com/rubygems/rubygems/commit/6d841ccbd4

commit 7a33d3df6a2c0a9929722ccefad1f3b3a9d88263
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-22 21:10:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-29 03:25:45 +0900

    [rubygems/rubygems] Document better names for `gem env` arguments

    I think `gem env home` and `gem env path` read very nice.

    https://github.com/rubygems/rubygems/commit/b89da79456

commit 59273ff6e2648ff9aefe894820b355083345ba4e
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-29 00:39:44 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-29 00:39:59 +0900

    [ruby/fileutils] [DOC] Changes to examples (https://github.com/ruby/fileutils/pull/96)

    * Changes to examples

    https://github.com/ruby/fileutils/commit/346a71b2cb

commit a415a3de05e0b61fbed44d5ecba4497d8f096351
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-06-29 00:17:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-29 00:23:18 +0900

    [ruby/irb] Properly reset USE_COLORIZE after changing it in tests

    Some context tests assigns USE_COLORIZE to false and never change it
    back. This can potentially affect other tests' result as the default
    should be nil (activated) instead.

    https://github.com/ruby/irb/commit/986eb16ece

commit 69337a65b2bd3e5bc0260f76221620e94248c8af
  Author:     Tomas Volf <tomas.volf@showmax.com>
  AuthorDate: 2022-06-24 17:31:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-28 23:31:33 +0900

    [rubygems/rubygems] Fix test_install_location_extra_slash on alpine

    Under POSIX behavior of leading // is implementation defined. Musl does
    preserve it in realpath, glibc does not. That means the test was failing
    when executed on alpine linux. Original issue #508 was about // in the
    path, not about leading ones. When executed in such environment, the
    test will still test what it should when the explicit mangling of the
    path is not done.

    Fixes https://github.com/rubygems/rubygems/pull/5652

    https://github.com/rubygems/rubygems/commit/0fa7373bf6

commit 7d211c93af2253c5f5a4eb988a362f3220965980
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-06-28 22:47:28 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-28 22:57:17 +0900

    [ruby/irb] Color.colorable? needs to consider the condition when irb is not loaded

    ruby/debug uses `irb/color` selectively:
    https://github.com/ruby/debug/blob/0ac22406bb8f65bc76f9f5576a00c729cac693af/lib/debug/color.rb#L4

    And in that case, `IRB.conf` won't be defined. So Color.colorable? needs
    to consider that.

    This also fixes the Ruby trunk CI.

    https://github.com/ruby/irb/commit/b2cd07e795

commit 44c1316293f80abaa0e76b3818322544b9372a97
  Author:     Stan Lo <stan001212@gmail.com>
  AuthorDate: 2022-06-28 22:30:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-28 22:30:42 +0900

    [ruby/irb] Centralize coloring control (https://github.com/ruby/irb/pull/374)

    * Use colorable: argument as the only coloring control

    * Centalize color controling logic at Color.colorable?

    There are 2 requirements for coloring output:

    1. It's supported on the platform
    2. The user wants it: `IRB.conf[:USE_COLORIZE] == true`

    Right now we check 1 and 2 separately whenever we colorize things.
    But it's error-prone because while 1 is the default of `colorable`
    parameter, 2 always need to manually checked. When 2 is overlooked, it
    causes issues like https://github.com/ruby/irb/pull/362

    And there's 0 case where we may want to colorize even when the user
    disables it. So I think we should merge 2 into `Color.colorable?` so it
    can be automatically picked up.

    * Add tests for all inspect modes

    * Simplify inspectors' coloring logic

    * Replace use_colorize? with Color.colorable?

    * Remove Context#use_colorize cause it's redundant

    https://github.com/ruby/irb/commit/1c53023ac4

commit 5ccdcd81685cfedd31344690fdb0fd9fc001e3ca
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-28 20:18:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-28 21:24:59 +0900

    [ruby/rdoc] Remove dead code

    https://github.com/ruby/rdoc/commit/f727854bd5

commit 5e66525e4156c27c625a529f1803d08d15e20fb7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-28 20:15:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-28 20:19:05 +0900

    [DOC] Document `Process::Tms`

commit 131422ceea4e1970e68907c337976b898a797d8a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-28 19:40:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-28 20:17:30 +0900

    [ruby/rdoc] Support attributes defined by `rb_struct_define`

    https://github.com/ruby/rdoc/commit/854b370763

commit 98bf8c83fa4d5d36544a3d7a335a759de6529ab6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-28 15:40:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-28 15:49:05 +0900

    [ruby/rdoc] Refinement is added since ruby 3.1

    https://github.com/ruby/rdoc/commit/c051eb90d1

commit 51be2cf6d23466e173ad66eac9a4b3ae32097cc4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-28 14:29:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-28 14:51:49 +0900

    [ruby/rdoc] Parse also InitVM-prefixed functions

    Initialization depending on VM is separated.

    https://github.com/ruby/rdoc/commit/030d10fccd

commit 5da31b62b0c193c5d574ddba79f321b6802c0753
  Author:     Noah Gibbs (and/or Benchmark CI) <noah.gibbs@shopify.com>
  AuthorDate: 2022-06-13 22:53:09 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-28 01:26:18 +0900

    Make sure string-operation assertions happen inside a method to be sure YJIT will JIT them.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6014

commit 0fab06f3c33999d7366036440dbc7ce6d16ac792
  Author:     Noah Gibbs (and/or Benchmark CI) <noah.gibbs@shopify.com>
  AuthorDate: 2022-06-14 00:17:06 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-28 01:25:57 +0900

    Separate Type::String into Type::CString and Type::TString.

    Also slightly broaden the cases where << on two strings will generate
    specialised code rather than a plain method call.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6022

commit f9f85a513b9b6580dcff03872391cf387d0105b5
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-26 04:40:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-27 23:35:45 +0900

    [rubygems/rubygems] Print error messages just once in verbose mode

    When running a command with the `--verbose` flag that ends up raising a
    `BundlerError`, Bundler will unnecessarily print the error twice.

    This commit fixes the issue by removing the duplicate logging.

    https://github.com/rubygems/rubygems/commit/689004a164

commit 8c6c3e30f3a86ba0b697a0d99efe8ff4585c4a42
  Author:     pocari <caffelattenonsugar@gmail.com>
  AuthorDate: 2022-06-27 22:28:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-27 22:28:49 +0900

    [ruby/reline] Enable to change the background color of dialogs. (https://github.com/ruby/reline/pull/413)

    https://github.com/ruby/reline/commit/bd49537964

commit b6b9a6190def53aa53ac816a51034fa1c96ed70b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-27 13:17:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-27 17:52:13 +0900

    Check availability of `utimensat` on macOS

commit 6ba52647c3d2b3a0060e0b0edc95f46c77a11944
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-27 17:30:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-27 17:38:07 +0900

    mac: Remove debug option from MJIT_DEBUGFLAGS

    Not to generate .dSYM directories by MJIT runs, which are left in
    large numbers after each test.

commit f83c5de6d54c5c6384effde51c02b34d798e5056
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-27 02:08:25 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-27 17:03:24 +0900

    [rubygems/rubygems] Improve error message when `operating_system.rb` fails to load

    Show an absolute path instead of an unhelpful relative path.

    https://github.com/rubygems/rubygems/commit/f1eed36e2f

commit 232e2f598103c8eda37d08913665b72b6f787e3f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-27 13:00:03 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-27 13:00:04 +0900

    Skip TupleSpaceProxyTest on MINGW64 too

    It wasn't specific to UCRT64

    https://github.com/ruby/ruby/runs/7062992464

commit c3eb0437f2454ef59aa605366bbd3901892f0071
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-06-27 04:39:16 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-06-27 04:39:16 +0900

    Fix Process.clock_gettime specs on OpenBSD

commit fc8020c68eb9f640185a1bce322eba6605bde151
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-27 00:20:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-27 01:08:46 +0900

    [Bug #18879] Fix macOS version detections

    macOS's AvailabilityMacros.h does not contain macros for future
    versions.  If a version macro is not defined, consider only earlier
    versions to be targeted.

commit 49d59215506a30c8a11766627f7af0cdfe0de9d4
  Author:     Alan Wu <alanwu@ruby-lang.org>
  AuthorDate: 2022-06-26 22:24:22 +0900
  Commit:     Alan Wu <alanwu@ruby-lang.org>
  CommitDate: 2022-06-26 22:24:22 +0900

    Fix Rinda test teardown for omitted tests

    New test failures on MINGW appeared after
    c2e37c8ff7da395f33fae546d9ae9e2408fc9236.

          1) Error:
        Rinda::TupleSpaceProxyTest#test_00_template:
        NoMethodError: undefined method `stop_service' for nil:NilClass
            D:/a/ruby/ruby/src/test/rinda/test_rinda.rb:516:in `teardown'

          2) Error:
        Rinda::TupleSpaceProxyTest#test_ruby_talk_264062:
        NoMethodError: undefined method `stop_service' for nil:NilClass
            D:/a/ruby/ruby/src/test/rinda/test_rinda.rb:516:in `teardown'

    Teardown happens even when the test is omitted.

    See: https://github.com/ruby/ruby/runs/7058984522

commit d3d5ef0cca160fca538c7f556c5a6e08df5847e6
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-06-26 21:50:14 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-06-26 21:50:14 +0900

    Update to ruby/spec@ab32a1a

commit f616e816372d14e605879d2e43c7fbdda29ef837
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-06-26 21:50:13 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-06-26 21:50:13 +0900

    Update to ruby/mspec@78b5d86

commit 2085201176775c1c0b6fd0c4791dbdad6d68c37f
  Author:     Alan Wu <alanwu@ruby-lang.org>
  AuthorDate: 2022-06-26 21:22:44 +0900
  Commit:     Alan Wu <alanwu@ruby-lang.org>
  CommitDate: 2022-06-26 21:36:10 +0900

    YJIT: Undef YJIT_SUPPORTED_P for hygiene

    YJIT_BUILD is more relevant outside of YJIT.

commit c2e37c8ff7da395f33fae546d9ae9e2408fc9236
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-26 15:36:11 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-26 15:36:14 +0900

    Try skipping TupleSpaceProxyTest on MinGW UCRT64

    As you all know, MinGW UCRT64 CI has randomly got stuck despite its
    "Finished tests" output.

    Looking at the logs closely, it seems like all of the recent such
    reproductions end with the following output:

    ```
      Retrying hung up testcases...
      [ 1/14] Rinda::TupleSpaceProxyTest#test_ruby_talk_264062 = 0.21 s
      [ 2/14] Rinda::TupleSpaceProxyTest#test_00_template = 0.01 s
      [ 3/14] Rinda::TupleSpaceProxyTest#test_inp_rdp = 0.00 s
      [ 4/14] Rinda::TupleSpaceProxyTest#test_core_03_notify = 0.01 s
      [ 5/14] Rinda::TupleSpaceProxyTest#test_00_renewer = 0.01 s
      [ 6/14] Rinda::TupleSpaceProxyTest#test_cancel_02 = 0.11 s
      [ 7/14] Rinda::TupleSpaceProxyTest#test_00_DRbObject = 0.00 s
      [ 8/14] Rinda::TupleSpaceProxyTest#test_core_02 = 0.11 s
      [ 9/14] Rinda::TupleSpaceProxyTest#test_core_01 = 0.11 s
      [10/14] Rinda::TupleSpaceProxyTest#test_remote_array_and_hash = 0.01 s
      [11/14] Rinda::TupleSpaceProxyTest#test_00_tuple = 0.00 s
      [12/14] Rinda::TupleSpaceProxyTest#test_take_bug_8215 = 0.41 s
      [13/14] Rinda::TupleSpaceProxyTest#test_cancel_01 = 0.11 s
      [14/14] Rinda::TupleSpaceProxyTest#test_symbol_tuple = 0.01 s
      Finished tests in 719.252845s, 29.4292 tests/s, 3838.7154 assertions/s.
      21167 tests, 2761007 assertions, 0 failures, 0 errors, 708 skips
    ```

    https://github.com/ruby/ruby/runs/7057789554

    While it seems to be retried successfully, given that it hungs up once
    and this appears all the time, this test class seems a bit suspicious.
    To check if it's related, let me try disabling this for now.

commit 0e5f9afff6051d209d032abac23ec961d5d52d48
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-26 15:21:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-26 15:23:33 +0900

    [ruby/irb] Set prompt mode explictly

    Fix https://github.com/ruby/irb/pull/353

    https://github.com/ruby/irb/commit/7db93f9326

commit a2b3f2014cf15daa4b608b82a8432b46a13c0e54
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-26 15:09:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-26 15:23:32 +0900

    [ruby/irb] Require stringio to use StringIO

    https://github.com/ruby/irb/commit/e024ab716b

commit e0bfdb23af3f182d7605a6ac3c93b07001d9045c
  Author:     Peter Jones <pjones@devalot.com>
  AuthorDate: 2022-03-25 05:48:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-26 14:40:48 +0900

    [ruby/irb] Ensure stdout is a TTY before calling winsize

    When outputting a (possibly truncated) value, IRB will query the
    window size.  However, if IRB was piped to another process, stdout
    will no longer be a TTY and will not support the `winsize` method.

    This fix ensure that stdout is a TTY.

    https://github.com/ruby/irb/commit/125de5eeea

commit a782d76fbecd5d7cac0574eb6b994be5a4f9f8fd
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-22 03:21:14 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-26 11:16:11 +0900

    [rubygems/rubygems] Fix pending Bundler specs

    When testing under the ruby/ruby setup, mkmf.rb needs to the `$extout`
    global variable set properly.

    This is because, in this particular case, the `ruby.h` header needed to
    compile extensions is constructed from
    `$(extout)/include($arch)/ruby/config.h` but `$extout` is not set by
    default.

    I tried to fix this in mkmf.rb itself but I couldn't figure it. But
    setting it externally to workaround the issue fixes the specs, so I'll
    start with that. Also setting it externally causes issues when running
    specs upstream against Ruby 2.3 (I guess because of some difference with
    Ruby 2.3 mkmf.rb implementation). So I'm avoiding doing it on Ruby 2.3 to
    woraround that.

    https://github.com/rubygems/rubygems/commit/d782984585

commit 56809537a46417d4c0f93de9ea9fc9a623ea83f1
  Author:     Tomas Volf <tomas.volf@showmax.com>
  AuthorDate: 2022-06-24 16:21:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-26 11:15:43 +0900

    [rubygems/rubygems] Clean up temporary directory after generate_index --update

    While generate_index did clean up temporary directory, when running with
    --update flag, that did not happen and the temporary directory was left
    behind.

    This commit fixes that and modifies tests in order to make sure this is
    not reintroduced later on.

    Fixes https://github.com/rubygems/rubygems/pull/5635.

    https://github.com/rubygems/rubygems/commit/9fa34dc329

commit f159bbd17da88a7f456e0ec7fbf7890135d456a3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-25 19:05:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-25 19:09:06 +0900

    Prevent accidental use of assert_raises

commit d2166c09b08fc144123e5a7eef69b8921bfced35
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-06-18 15:03:51 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-06-25 18:17:13 +0900

    Copy `IO#wait*` methods from `io-wait` gem to `io.c`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6036

commit 50e13870bffa3561be13faa31c3fcba6b6d1aceb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-25 18:10:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-25 18:10:46 +0900

    [ruby/io-wait] Bump up

    https://github.com/ruby/io-wait/commit/0fa6e3f7ba

commit d281347abbbe7f3b588646977a21b8f929aaa5bb
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-06-25 17:12:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-25 17:12:26 +0900

    [ruby/io-wait] Fix usage of `assert_raises` -> `assert_raise`. (https://github.com/ruby/io-wait/pull/20)

    https://github.com/ruby/io-wait/commit/c5c6abbb5c

commit f9c8d8088378981385f6acd18d2fe9fedcd7ab85
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-06-25 16:21:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-25 16:21:54 +0900

    [ruby/io-wait] Don't add `IO#wait*` methods when `RUBY_IO_WAIT_METHODS` is defined by Ruby. (https://github.com/ruby/io-wait/pull/19)

    * Fix return value compatibility with Ruby 2.x.

    * Don't add `IO#wait*` methods in Ruby 3.2+.

    https://github.com/ruby/io-wait/commit/54c504d089

commit 2b4a1ad58429c69483160ca86eaaeb544218818e
  Author:     Shannon Skipper <shannonskipper@gmail.com>
  AuthorDate: 2022-06-25 04:12:22 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-06-25 08:29:08 +0900

    Fix a variable name typo in the docs

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6060

commit d7cc380666058dab967a8b4f96782967ce3efc0d
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-06-24 18:30:59 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-06-25 07:05:00 +0900

    iseq.c: Use ntz_intptr for faster bitmap scan

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6059

commit 87e2e3f383fde65a034d3fe5a1cf9c5e2de6950b
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-06-25 06:08:36 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-25 07:04:00 +0900

    Dump inline storage partition information to binary format

    ISeqs loaded from binary were breaking because the storage partition
    calculation had bugs in it.  Specifically it couldn't take in to account
    the case when inline storage was overallocated (for example when we
    allocate inline storage for an instruction but peephole optimization
    eliminates that instruction).

    `RUBY_ISEQ_DUMP_DEBUG=to_binary make test-all` would break, and this
    patch fixes it

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6061

commit 12a5fa408bd318f8fb242e86beb225f2dcae8df9
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-23 18:22:36 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-06-24 10:52:02 +0900

    Sync RubyGems & Bundler with upstream repo

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6054

commit 333754ace8ae9bc5d2dfb4aee160fcfa0f38350d
  Author:     Alan Wu <alanwu@ruby-lang.org>
  AuthorDate: 2022-06-24 09:27:02 +0900
  Commit:     Alan Wu <alanwu@ruby-lang.org>
  CommitDate: 2022-06-24 09:27:02 +0900

    YJIT: Add regression test for local type tracking

    The test in [1] was removed because it stopped working when we limited
    the power of Kernel#binding in [2]. However, the underlying issue could
    still be reproduced using blocks. Add back a regression test.

    I tested the test by commenting out the fix from [1].

    [1]: 54c91042ed61a869d4a66fc089b21f56d165265f
    [2]: 343ea9967e4a6b279eed6bd8e81ad0bdc747f254

commit 0b58059f15d8ec7bd9dbe1638a77b4a531b0df25
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-06-24 08:02:42 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-24 08:52:00 +0900

    Free bitmap buffer if it's not used

    If the iseqs don't have any objects in them that need marking, then
    immediately free the bitmap buffer

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6058

commit 8d63a0470392f3b5810941bdf36f23d2122df16a
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-06-24 07:46:53 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-24 08:52:00 +0900

    Flatten bitmap when there is only one element

    We can avoid allocating a bitmap when the number of elements in the iseq
    is fewer than the size of an iseq_bits_t

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6058

commit eb1a84a9c328acf3f77249617115208eacf396cd
  Author:     Alan Wu <alanwu@ruby-lang.org>
  AuthorDate: 2022-06-24 07:12:25 +0900
  Commit:     Alan Wu <alanwu@ruby-lang.org>
  CommitDate: 2022-06-24 07:12:25 +0900

    When YJIT is not built, hide options and use MJIT for --jit

    YJIT is now a build-time opt-in so on platforms that YJIT could support
    it could still be unavailable due to user discretion. Use MJIT for --jit
    and don't display YJIT related command line options in --help when YJIT
    is not included in the build.

commit 1ccdb1a25103ee8ea23ff92ebc3d03990f098f17
  Author:     Aaron Patterson <aaron.patterson@gmail.com>
  AuthorDate: 2022-06-23 08:27:58 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-24 06:01:46 +0900

    Update vm_core.h

    Co-authored-by: Tomás Coêlho <36938811+tomascco@users.noreply.github.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6053

commit e23540e5666664e23f2adecdc2cc591f3ff6fe2f
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-06-18 07:28:14 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-24 06:01:46 +0900

    Speed up ISeq by marking via bitmaps and IC rearranging

    This commit adds a bitfield to the iseq body that stores offsets inside
    the iseq buffer that contain values we need to mark.  We can use this
    bitfield to mark objects instead of disassembling the instructions.

    This commit also groups inline storage entries and adds a counter for
    each entry.  This allows us to iterate and mark each entry without
    disassembling instructions

    Since we have a bitfield and grouped inline caches, we can mark all
    VALUE objects associated with instructions without actually
    disassembling the instructions at mark time.

    [Feature #18875] [ruby-core:109042]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6053

commit b180ffa62270dc32bb69167822b4c698def5c8f7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-23 22:51:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-23 22:52:45 +0900

    Fix warnings by old gcc

    * Use PRIxSIZE instead of "z"
    * Fix sign-compare warning
    * Suppress unused-but-set-variable warning

commit 41cdf9b11457992f49f1252db83de4280456679e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-23 20:30:57 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-23 22:52:45 +0900

    Show flags instead of `-s` option in `GNUMAKEFLAGS`

commit 961543945ff9ba0a4744ec4038349318cae78c9e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-22 20:20:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-23 22:52:45 +0900

    Suppress notes for old gcc

commit 2f7c0f656ea42f9ad2ca3c1fbfabcff98ce59ee3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-22 19:38:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-23 22:52:45 +0900

    Pass LDFLAGS via environment variable

commit 6f229da2c07aec3441078248d7fd2fe844e8bc92
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-22 01:45:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-23 18:17:37 +0900

    [rubygems/rubygems] Fix standalone script generation for statically linked dev ruby

    https://github.com/rubygems/rubygems/commit/4d0d7b3c97

commit 4f5eb48dead5c82b966c1fdebc890cf9d3010d86
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-22 03:02:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-23 18:17:08 +0900

    [rubygems/rubygems] Fix `bundle package --no-install` no longer skipping install

    This is a regression from https://github.com/rubygems/rubygems/commit/cf749f8ffabd. The
    funny thing is that we have a spec for this feature, so it was unclear
    how we regressed here. It turns out there was a bug in one of our
    negative matchers checking that gems ARE NOT included in a bundle.

    This commit fixes the bug in the negative matcher and reverts
    https://github.com/rubygems/rubygems/commit/cf749f8ffabd (with a slightly simpler diff).

    https://github.com/rubygems/rubygems/commit/3f9a4ff32a

commit c25c1d4e54c51594cbc6a6d51ae79885bea7a7b3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-23 16:45:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-23 16:45:05 +0900

    Non-void functions must return value

commit 2361a1a53e93ededcf99289650124cf7a2b064d4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-23 16:02:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-23 16:42:57 +0900

    Get rid of a nasal demon

    On platforms not having `typeof`, `ccan_container_off_var()` macro
    subtracts the pointer variable from the member address pointed by that
    variable.

commit 744d17ff6c33b09334508e8110007ea2a82252f5
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2021-07-09 07:23:39 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-06-22 21:30:39 +0900

    Fix infinite loop when b_return TracePoint throws

    Previously, we didn't pop the frame that runs the TracePoint hook for
    b_return events for blocks running as methods (bmethods). In case the
    hook raises, that formed an infinite loop during stack unwinding in
    hook_before_rewind().

    [Bug #18060]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4638

commit e6f92cada1cf8026d0dc6dbd11867ba9a994f4d6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-16 01:15:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-22 18:32:22 +0900

    Refactor compilations workflow

    Now some entries need multiple variables for customization, and only
    one environment variable per entry is not enough.
    To solve it, dccfff943c3e has introduced overriding variables by `env`
    key for each entries.
    This commit uses `env` keys for the other environment variables too,
    instead of appending to `$GITHUB_ENV`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6051

commit 812354ace4933a94979cde8e88348e8ab0abac30
  Author:     Takuya Noguchi <takninnovationresearch@gmail.com>
  AuthorDate: 2022-06-22 11:40:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-22 13:40:21 +0900

    [rubygems/rubygems] Bundler: fix man page for bundle-add

    Follows up https://github.com/rubygems/bundler/pull/5610

    Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>

    https://github.com/rubygems/rubygems/commit/0c4df2b8ca

commit 0c1f64396fe351bb47e7ce46354da3eb98d41d40
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-06-16 13:58:16 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-06-22 10:33:51 +0900

    Skip protected ancestry guard for FCALLs in YJIT

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5643

commit 9312f4bf62224cc0a11175cb6f9b7d0dd840a491
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-03-12 04:48:02 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-06-22 10:33:51 +0900

    Allow method caching of protected FCALLs

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5643

commit a580dd77377c87754b437efb1a02cccc1554dafd
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-06-17 05:28:39 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-06-22 10:33:51 +0900

    Don't check protected method ancestry on fcall

    If we are making an FCALL, we know we are calling a method on self. This
    is the same check made for private method visibility, so it should also
    guarantee we can call a protected method.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5643

commit 87a560a0570adf51bd37f9d3da5086db3e3f27a0
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-06-22 05:12:27 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-22 10:16:10 +0900

    Add T_STRUCT to lldb inspect helper

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6052

commit fdd1102550d375be4302ac8d2e081797de00a205
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-22 02:23:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-22 02:23:10 +0900

    [ruby/fileutils] Clarify difference between cp_r and install (https://github.com/ruby/fileutils/pull/95)

    https://github.com/ruby/fileutils/commit/94a599e69f

commit 1f067e775d8629ac3b33f96dd885d5f996e787f3
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-06-22 01:40:28 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-06-22 01:40:28 +0900

    Clarify documentation of Kernel#require_relative

commit 2e81fd764b9046389f432181b5b3a3192621bde7
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-21 23:16:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-21 23:16:24 +0900

    [ruby/fileutils] Correct method references for secure removal (https://github.com/ruby/fileutils/pull/93)

    https://github.com/ruby/fileutils/commit/42c9685826

commit 1002998c6df5a5cc4b9dd42bee371797a131ee44
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-21 22:42:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-21 22:42:39 +0900

    [ruby/fileutils] [DOC] Adding 'Related' (https://github.com/ruby/fileutils/pull/92)

    https://github.com/ruby/fileutils/commit/fc3cc28397

commit 15769832b2375b6ac8dfaa3887e3ac9462f87584
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-06-21 20:43:42 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-06-21 20:43:42 +0900

    Added readline wrapper entries under the doc directory

commit a9db5be0cac1e02806b6634831cda958182eaabe
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-06-21 20:41:05 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-06-21 20:41:12 +0900

    Added error_highlight entries under the doc directory

commit 441cfa966c719c6b1d1c70fcb50d589ea4a25dfd
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-06-21 20:38:42 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-06-21 20:38:42 +0900

    Added reline entry to standard_library doc

commit 641a73290963854308880e98b7037967d668e1ba
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-06-21 16:05:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-21 16:05:34 +0900

    Update bundled gems list at 2022-06-21

commit 7ef67bf9a22ebc1c85530a71a1f61e83aeae1ecd
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-06-21 13:07:46 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-06-21 15:30:54 +0900

    [CI] add gcc-12

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6050

commit a0b24f592614262c08a3a4cb07cf0c847389d0a3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-21 12:08:48 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-21 12:13:47 +0900

    [ruby/io-wait] Remove redundant forward declarations

    These were needed before prototype declarations were used.

    https://github.com/ruby/io-wait/commit/35f016833a

commit f44547c99913093b397e15a0240b7bce3f7c53ca
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-06-13 15:47:19 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-06-21 11:32:02 +0900

    regparse.c: Suppress false-positive warnings of GCC 12.1

    http://rubyci.s3.amazonaws.com/arch/ruby-master/log/20220613T030003Z.log.html.gz
    ```
    regparse.c:264:15: warning: array subscript 56 is outside array bounds of ‘Node[1]’ {aka ‘struct _Node[1]’} [-Warray-bounds]
    ```

    and

    ```
    /usr/include/bits/string_fortified.h:29:10: warning: ‘__builtin_memcpy’ pointer overflow between offset 32 and size [9223372036854775792, 9223372036854775807] [-Warray-bounds]
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6013

commit 596f4b0d3ab8bc2559a52396d3a29ce62e6a3694
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-06-21 07:17:23 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-06-21 07:56:28 +0900

    Document that Regexp#source does not retain lexer escapes

    Related to [Feature #18838]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6047

commit eed24b5ee002449a9fe83e221336142416e0b315
  Author:     Jun Aruga <jaruga@redhat.com>
  AuthorDate: 2022-06-20 22:34:32 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-06-21 06:38:52 +0900

    .github/workflows/compilers.yml: annocheck: Fix gaps and notes test.

    This commit fixes on the annocheck gaps and notes tests on Ubuntu focal on CI.
    Added the gcc `-Wa,--generate-missing-build-notes=yes` flag.

    See the links below.
    * -Wa,option: <https://gcc.gnu.org/onlinedocs/gcc-11.3.0/gcc/Assembler-Options.html#Assembler-Options>.
    * --generate-missing-build-notes=yes: <https://www.man7.org/linux/man-pages/man1/as.1.html>.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6045

commit 31b2cd38c5dcf4a0c51ca56ecdddf7461b8ac86c
  Author:     Chris Seaton <chris.seaton@shopify.com>
  AuthorDate: 2022-06-15 00:08:36 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-06-21 06:18:29 +0900

    Include JIT information in crash reports

    Since enabling YJIT or MJIT drastically changes what could go wrong at
    runtime, it's good to be front and center about whether they are enabled
    when dumping a crash report. Previously, `RUBY_DESCRIPTION` and the
    description printed when crashing can be different when a JIT is on.

    Introduce a new internal data global, `rb_dynamic_description`, and set
    it to be the same as `RUBY_DESCRIPTION` during initialization; use it
    when crashing.

     * version.c: Init_ruby_description(): Initialize and use
           `rb_dynamic_description`.
     * error.c: Change crash reports to use `rb_dynamic_description`.
     * ruby.c: Call `Init_ruby_description()` earlier. Slightly more work
           for when we exit right after printing the description but that
           was deemed acceptable.
     * include/ruby/version.h: Talk about how JIT info is not in
          `ruby_description`.
     * test/-ext-/bug_reporter/test_bug_reporter.rb: Remove handling for
           crash description being different from `RUBY_DESCRIPTION`.
     * test/ruby/test_rubyoptions.rb: ditto

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
    Co-authored-by: Alan Wu <alanwu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5872

commit 5ca2335802b281f9a38b1d9b73b146b94ed0eed3
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-06-20 22:37:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-20 22:42:30 +0900

    [ruby/irb] [DOC] Fix formatting in docs

    https://github.com/ruby/irb/commit/3ddc89e38c

commit 2d4a41df6bef7a67784c680550591d5b883853fe
  Author:     Stan Lo <stan001212@gmail.com>
  AuthorDate: 2022-06-20 22:27:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-20 22:27:30 +0900

    [ruby/irb] Commands should respect `USE_COLORIZE` config (https://github.com/ruby/irb/pull/362)

    https://github.com/ruby/irb/commit/534688dfc4

commit c46824d0945c95172951a904f09c774b99a4deb3
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-06-20 20:03:39 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-06-20 20:03:39 +0900

    test_instrumentation_api.rb: Allow one less exit

    I suspect that sometimes on CI the last thread is prempted before eaching the exit hook
    causing the test to flake. I can't find a good way to force it to run.

commit 4a6facc2d683d1dbb67ded8a9f4d7cd10a9fd8ad
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-20 13:35:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-20 19:35:12 +0900

    [Feature #18788] [DOC] String options to `Regexp.new`

    Co-Authored-By: Janosch Müller <janosch.mueller@betterplace.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6039

commit 883d13dc4127b5fde617b584ebb89714eac19965
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-19 15:43:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-20 19:35:12 +0900

    [Feature #18788] Spec for options as `String` to `Regexp.new`

    Co-Authored-By: Janosch Müller <janosch.mueller@betterplace.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6039

commit 1e9939dae24db232d6f3693630fa37a382e1a6d7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-16 18:53:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-20 19:35:12 +0900

    [Feature #18788] Support options as `String` to `Regexp.new`

    `Regexp.new` now supports passing the regexp flags not only as an
    `Integer`, but also as a `String.  Unknown flags raise errors.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6039

commit 39dc455b511614ee8a1911c0ba6445a0307d5e4f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-19 15:41:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-20 19:35:12 +0900

    Spec update for warnning suspicious flag to `Regexp.new`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6039

commit ab2a43265cfdda288d1baaa29936fd408c2a42bc
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-24 16:51:15 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-20 19:35:12 +0900

    Warn suspicious flag to `Regexp.new`

    Now second argument should be `true`, `false`, `nil` or Integer.
    This flag is confused with third argument some times.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6039

commit a58611dfb1bfc74fb1a51a9cd0ca8ac690c2f1f4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-24 16:48:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-20 19:35:12 +0900

    Allow to just warn as bool expected, without an exception

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6039

commit 15db2e9496703d76b2d785a9e2a1554833706e06
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-06-20 19:25:11 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-06-20 19:25:11 +0900

    Prevent a warning "possibly useless use of a literal in void context"

commit f8b6d4f4d1b0eb0b3220fc83f157bd33ddcc5d4e
  Author:     Jun Aruga <jaruga@redhat.com>
  AuthorDate: 2022-06-20 17:46:24 +0900
  Commit:     Jun Aruga <junaruga@users.noreply.github.com>
  CommitDate: 2022-06-20 19:08:25 +0900

    .github/workflows/compilers.yml: Skip gaps test on annocheck 10.76.

    This commit is to skip a failure with annocheck 10.76 on the annocheck test
    case on the CI. Previously The test worked with annocheck 10.73.

    The issue was reported at <https://bugs.ruby-lang.org/issues/18061#note-24>.
    > Hardened: ruby: MAYB: test: gaps because no notes found
    > Hardened: ruby: info: For more information visit: https://sourceware.org/annobin/annobin.html/Test-gaps.html

    It seems that the annocheck added the gaps test at 10.76. Maybe the upstream commit is below.

    The annocheck is a part of the annobin project: https://sourceware.org/annobin/
    ```
    $ git clone git://sourceware.org/git/annobin.git

    $ git show 61184ae1180a134bfbbd125e9fe339baedd67c18
    commit 61184ae1180a134bfbbd125e9fe339baedd67c18
    Author: Nick Clifton <nickc@redhat.com>
    Date:   Mon Jun 13 16:56:46 2022 +0100

        Annocheck: Add TEST_GAPS.  Add MAYB for TEST_NOTES if DWARF info could not be found
    ...
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6043

commit 7f8a91571561206e880909461b063753e7e01d7e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-20 12:53:41 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-20 18:39:50 +0900

    [DOC] Refine Regexp.new argument descriptions

commit 914c26eab32b4664e981c7c604d1f17a56b10e28
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-20 17:47:44 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-20 17:47:44 +0900

    [DOC] Regexp timeout is float or nil

commit 078db98da42444b3cdbd0f391b680ba8193299fd
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-06-20 17:39:58 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-06-20 17:39:58 +0900

    Prevent a warning "Expected ... to define AutoloadTest but it didn't"

    related: [Bugs #18813] and eca31d24d606a73def3674938112dc3c5b79c445

commit 8d689294d033d59f211a6d2c2da72b34ce53c4e5
  Author:     citrusmoose <citrusmoose@users.noreply.github.com>
  AuthorDate: 2022-06-17 04:13:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-20 16:04:47 +0900

    [rubygems/rubygems] Fix extension paths in generated standalone script

    The paths for extensions of gems would contain the hardcoded ruby
    version on which the extension was built. This will replace it with
    runtime ruby version like the parent version directory. It will make the
    standalone script compatible between different ruby version installations.

    https://github.com/rubygems/rubygems/commit/a9dae93d5d

commit 150bd6e2427a8a6178aa5f8ebc39ce6e59601e1f
  Author:     Soutaro Matsumoto <matsumoto@soutaro.com>
  AuthorDate: 2022-06-20 11:44:47 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-20 11:44:47 +0900

    Bundle RBS 2.5.1 (#6041)

    * Bundle RBS 2.5.1

  Notes:
    Merged-By: soutaro <matsumoto@soutaro.com>

commit cd3a5cd0e33f7b2495c5b3421e7f1d124de8c343
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-20 02:32:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-20 09:26:11 +0900

    [DOC] Fixed omissions in Regexp.new arguments

commit aeab4058784c86df47a455ffdb08714b337d0209
  Author:     Josh Nichols <josh.nichols@gusto.com>
  AuthorDate: 2022-05-14 06:22:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-20 02:34:41 +0900

    [rubygems/rubygems] Improve performance of Bundler::SpecSet#for by using hash lookup of handled deps

    I was looking at (yet another) flamegraph in speedscope, and used the
    'left hand heavy' and was shocked to realize that 0.5s of the 1.7s
    is spent in DepProxy#name. This method _only_ delegates the name to an
    underlying spec, so it's not complex at all.

    It seems to be of how often this line ends up calling it:

         next if handled.any?{|d| d.name == dep.name && (match_current_platform || d.__platform == dep.__platform) } || dep.name == "bundler"

    The `handled` array is built up as dependencies are handled, so this get
    slower as more dependencies are installed.

    This change changes how `handled` is track. Instead of just an array, I've
    tried using a Hash, with the key being a dep's name, and the value being
    a list of deps with that name. This means it's constant time to find
    the dependencies with the same name.

    I saw a drop from 1.7s to 1.0s against master, and from 0.95s to 0.24s
    when used with https://github.com/rubygems/rubygems/pull/5533

    https://github.com/rubygems/rubygems/commit/844dac30d4

commit da362fee59b2bff30eb8d63ee15724f5c3aac957
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-19 23:33:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-19 23:33:26 +0900

    Scale the time to wait native threads to run hook

commit 4aebbf44e9032750bee074092a4386fc664ea866
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-19 23:32:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-19 23:32:47 +0900

    Remove unnecessary `*` before the function name

commit 5f8c73405ec9c5a642b208b23bf1b55b8e8f2045
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-19 10:59:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-19 11:06:43 +0900

    [ruby/etc] [DOC] Markup constant path names

    https://github.com/ruby/etc/commit/6c9a0b4e5d

commit 504728307069d49994541c91769bc90444a4fce5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-19 11:05:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-19 11:05:31 +0900

    Skip CIs if the head commit message contains '[DOC]'

commit ea387583225f924885f9846d93f6112eb0316bd0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-19 10:45:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-19 10:46:50 +0900

    [ruby/etc] [DOC] Markup string literals

    https://github.com/ruby/etc/commit/a8801e07d1

commit cc67a11768f3be7be081a2e52f38ac02374d7ae1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-19 10:43:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-19 10:46:48 +0900

    [ruby/etc] [DOC] Fix reference to different module

    https://github.com/ruby/etc/commit/ea51739974

commit c594370c6e78de1aa001c16ec0327b4575ccd559
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-19 10:26:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-19 10:46:47 +0900

    [ruby/etc] [DOC] Update

    System-dependent feature macros are automatically detected by
    extconf.rb, and are not used by users.

    https://github.com/ruby/etc/commit/e7343b4e69

commit eca31d24d606a73def3674938112dc3c5b79c445
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-06-18 17:29:52 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-06-18 21:49:02 +0900

    [Bug #18813] Warn when autoload has to lookup in parent namespace

    This is a verbose mode only warning.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6038

commit e77d2c296e101a8c2d2d503b082214faa783b5d6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-17 23:33:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-18 13:15:02 +0900

    Disable maybe-uninitialized warning for gcc 4

    It often shows false positive warnings (at least in 4.8).  Newer
    versions work well and we can check correct warnings.

commit cab10a2c505f9fa7296f0a0d780d07827ea02b36
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-18 10:20:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-18 10:20:46 +0900

    Extract `protect_page_body` to fix mismatched braces

commit 4b7c4bb92e6c760c721fa27351f7845b39a18e37
  Author:     Alan Wu <alanwu@ruby-lang.org>
  AuthorDate: 2022-06-18 07:13:19 +0900
  Commit:     Alan Wu <alanwu@ruby-lang.org>
  CommitDate: 2022-06-18 07:13:19 +0900

    tool/extlibs.rb: Use Exception#message for older rubies

    This script runs with BASERUBY, which can be as old as 2.2.x.
    Exception#full_message is new in 2.5.0.

    I saw a NoMethodError on the AppVeyor CI where BASERUBY is 2.4.6:
    https://ci.appveyor.com/project/ruby/ruby/builds/43870654/job/kae4uo2xbhuhqmdw#L121

commit 566c5447aedbb03f55b4dc12381b432b84f9039c
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-06-18 03:26:51 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-06-18 04:17:19 +0900

    YJIT: Use binwrite to write exit locations

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6035

commit 05ffc037ad15560cb2c683682c5bc374156571d7
  Author:     KJ Tsanaktsidis <ktsanaktsidis@zendesk.com>
  AuthorDate: 2022-05-23 08:30:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-18 00:10:16 +0900

    Disable Mach exception handlers when read barriers in place

    The GC compaction mechanism implements a kind of read barrier by marking
    some (OS) pages as unreadable, and installing a SIGBUS/SIGSEGV handler
    to detect when they're accessed and invalidate an attempt to move the
    object.

    Unfortunately, when a debugger is attached to the Ruby interpreter on
    Mac OS, the debugger will trap the EXC_BAD_ACCES mach exception before
    the runtime can transform that into a SIGBUS signal and dispatch it.
    Thus, execution gets stuck; any attempt to continue from the debugger
    re-executes the line that caused the exception and no forward progress
    can be made.

    This makes it impossible to debug either the Ruby interpreter or a C
    extension whilst compaction is in use.

    To fix this, we disable the EXC_BAD_ACCESS handler when installing the
    SIGBUS/SIGSEGV handlers, and re-enable them once the compaction is done.
    The debugger will still trap on the attempt to read the bad page, but it
    will be trapping the SIGBUS signal, rather than the EXC_BAD_ACCESS mach
    exception. It's possible to continue from this in the debugger, which
    invokes the signal handler and allows forward progress to be made.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5991

commit 7f05f7378d3dea53796338346970faa5594aa8ed
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-17 23:27:16 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-17 23:27:16 +0900

    Reuse an interned string

    Repeating to intern the same string is just redundant, as interned
    strings for the same content are always the same object until it gets
    collected.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6034

    Merged-By: nobu <nobu@ruby-lang.org>

commit 2790bddda6e8ad49298de8bc71921f39e7390f26
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-06-17 22:44:17 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-06-17 22:44:17 +0900

    Remove unused function declaration

    iseq_alloc is not used in compile.c. It is also a static function
    declared in iseq.c so it's not accessible in compile.c.

commit 9327b6f2221ef05c496e65ecce86722ea47a7c3b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-17 22:36:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-17 22:36:26 +0900

    [ruby/fileutils] [DOC] Revisions for module-level doc (https://github.com/ruby/fileutils/pull/90)

    * Revisions for module-level doc

    https://github.com/ruby/fileutils/commit/dcbad90a1f

commit c34a5469c8d53029a5f3cdde0ca855e47a92c7d7
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-06-17 17:09:02 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-06-17 22:11:10 +0900

    Debug TestThreadInstrumentation

    It previously failed with:

    ```
        1) Failure:
      TestThreadInstrumentation#test_thread_instrumentation_fork_safe [/home/runner/work/ruby/ruby/src/test/-ext-/thread/test_instrumentation_api.rb:50]:
      <5> expected but was
      <4>.
    ```

    Suggesting one `EXIT` event wasn't fired or processed.

    Adding an assetion on `Thead#status` may help figure out what is wrong.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6032

commit 78425d7e74887b57ee15e6b8933bd3878db6a888
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-16 03:54:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-17 17:05:52 +0900

    [rubygems/rubygems] Unset ENV set by official Ruby docker images

    So that it does not interfere with our specs.

    https://github.com/rubygems/rubygems/commit/1029714e21

commit 1e8bf48fd5e9cdfba5d86a39426458111a433d09
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-15 17:19:14 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-17 17:05:21 +0900

    [rubygems/rubygems] Bring TODO message up to date

    https://github.com/rubygems/rubygems/commit/e07dba0923

commit 5450b409fc917327373adb573bc5df5948f4202c
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-14 23:47:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-17 17:05:20 +0900

    [rubygems/rubygems] Remove part of comment that fell out of date

    https://github.com/rubygems/rubygems/commit/272ac23aa8

commit 8855b68f970b34be4b39006b404391d06163573a
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-14 22:26:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-17 17:05:20 +0900

    [rubygems/rubygems] Don't modify RbConfig at all when building extensions

    Instead, pass sitearchdir and sitelibdir directly to `make`.

    This also removes the need to create and use the siteconf file at all
    when generating makefiles.

    https://github.com/rubygems/rubygems/commit/dea41fa2dc

commit 1aaeff8e36777e4ea0ac0917e3ddc7da573c1c32
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-15 17:14:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-17 17:05:19 +0900

    [rubygems/rubygems] Remove unnecessary condition

    This variable can't be falsy.

    https://github.com/rubygems/rubygems/commit/b838f9a6f0

commit 5a385677f366fa093dc35ad69045bf183603427c
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-14 22:26:08 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-17 17:05:19 +0900

    [rubygems/rubygems] No need to change `RbConfig::CONFIG` at all

    Only `RbConfig::MAKEFILE_CONFIG` is actually used.

    https://github.com/rubygems/rubygems/commit/b767cc0929

commit b6c1e1158d71b533b255ae7a2731598455918071
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-06-15 21:37:41 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-06-17 16:08:26 +0900

    GVL Instrumentation API: add STARTED and EXITED events

    [Feature #18339]

    After experimenting with the initial version of the API I figured there is a need
    for an exit event to cleanup instrumentation data. e.g. if you record data in a
    {thread_id -> data} table, you need to free associated data when a thread goes away.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6029

commit 420f3ced4d25c0e81d06f3186c8cfdc509326268
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-05-01 23:13:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-17 12:02:50 +0900

    Using is_ascii_string to check encoding

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5867

commit 51a3ebf4ec6182ee516992dc761950d19a7b697b
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-06-14 21:49:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-17 11:59:49 +0900

    Using RBOOL in cmp_between func

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6017

commit 1dfe007e1696128ff0d3ec78e54d3406073f7727
  Author:     Jeremiah Gowdy <jgowdy@godaddy.com>
  AuthorDate: 2022-06-17 02:29:28 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-17 11:58:10 +0900

    Update configure.ac

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6025

commit f3b54d5fc236d01c0e34650b797820e4b09e2a41
  Author:     Jeremiah Gowdy <jeremiah@gowdy.me>
  AuthorDate: 2022-06-16 02:31:15 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-17 11:58:10 +0900

    Add branch protection to aarch64 targets

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6025

commit 2c190863239bee3f54cfb74b16bb6ea4cae6ed20
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-16 23:43:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-17 10:47:16 +0900

    Suppress code unused unless GC_CAN_COMPILE_COMPACTION

commit e46292197fd917d0a450c30e8341c1872e6aab19
  Author:     Alan Wu <alanwu@ruby-lang.org>
  AuthorDate: 2022-06-17 05:34:14 +0900
  Commit:     Alan Wu <alanwu@ruby-lang.org>
  CommitDate: 2022-06-17 05:34:14 +0900

    Fix spec version guard

    Follow up for 278fefb96294adf9d27a78f919c714a31b65ef58

commit ae163cae6b3f01e0fb827e0a18d5889f9703617f
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-05-28 05:47:06 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-06-17 05:24:48 +0900

    Allow calling protected methods from refinements

    Previously protected methods on refinements could never be called
    because they were seen as being "defined" on the hidden refinement
    ICLASS.

    This commit updates calling refined protected methods so that they are
    considered to be defined on the original class (the one being refined).

    This ended up using the same behaviour that was used to check whether a
    call to super was allowed, so I extracted that into a method.

    [Bug #18806]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5966

commit cd5cafa4a380e2459862b6e99ff0c381362ef1be
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-14 12:27:25 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-17 01:48:52 +0900

    Respect the encoding of the source [Bug #18827]

    Do not override the input string encoding at the time of preparation,
    the source encoding is not determined from the input yet.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6015

commit 278fefb96294adf9d27a78f919c714a31b65ef58
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-03 23:13:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-17 01:22:24 +0900

    ENV.merge! support multile arguments [Feature #18279]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5207

commit 51835135a0586f439f581beece13df20100123f0
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-06-16 04:18:55 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-17 00:48:08 +0900

    Added tests for setting ivars on frozen objs

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6021

commit c49fde351fb215d8f9fc2f82893a4469692f2e98
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-06-15 23:18:17 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-17 00:48:08 +0900

    Adding more clone tests, and adding dup tests

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6021

commit af425b6d66ba2c2c034b65c7b48dd752c8216267
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-06-17 00:01:22 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-17 00:47:19 +0900

    Added vm_ivar benchmark for initializing an embedded obj

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6030

commit 0ab2bca11c91a15d6538658cb436a686aeb35612
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-16 23:56:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-16 23:56:37 +0900

    [ruby/fileutils] [DOC] Small tweaks (https://github.com/ruby/fileutils/pull/89)

    https://github.com/ruby/fileutils/commit/13ab96439b

commit c310691dd8087eac5153b3c778ea898dcf387b57
  Author:     Shishir Joshi <shishir127@users.noreply.github.com>
  AuthorDate: 2022-06-16 20:16:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-16 23:35:27 +0900

    [ruby/net-http] Make `Net::HTTPHeader#content_range` return nil on non-byte units

    * Returning nil from the `content_range` method instead of raising an
      error when the unit in the content-range header is not "bytes".

    Fix https://bugs.ruby-lang.org/issues/11450

    https://github.com/ruby/net-http/commit/0b5030dd86

    Co-Authored-By: Nobuyoshi Nakada <nobu@ruby-lang.org>

commit 79eaaf2d0b641710613f16525e4b4c439dfe854e
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-06-15 04:54:16 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-06-16 23:18:46 +0900

    Include runtime checks for compaction support

    Commit 0c36ba53192c5a0d245c9b626e4346a32d7d144e changed GC compaction
    methods to not be implemented when not supported. However, that commit
    only does compile time checks (which currently only checks for WASM),
    but there are additional compaction support checks during run time.

    This commit changes it so that GC compaction methods aren't defined
    during run time if the platform does not support GC compaction.

    [Bug #18829]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6019

commit 52d42e702375446746164a0251e1a10bce813b78
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-06-15 03:37:21 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-06-16 23:18:46 +0900

    Rename GC_COMPACTION_SUPPORTED

    Naming this macro GC_COMPACTION_SUPPORTED is misleading because it
    only checks whether compaction is supported at compile time.

    [Bug #18829]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6019

commit 2223eb082afa6d05321b69df783d4133b9aacba6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-16 22:10:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-16 22:10:59 +0900

    Revert "HTTPHeader.content_range throws error on non-byte units"

    This reverts commit 63546bfc1581d4abec2a0d846106a1c0afc0efa9.

commit 1cc64a5514309920c48874bbccc87102b69c2abf
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-16 19:52:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-16 21:43:53 +0900

    [ruby/racc] Fix flag to `Regexp.new`

    Probably intended to pass encoding "none".

    https://github.com/ruby/racc/commit/65cd26efd8

commit 714a4942fdb1e71ce38032a9f4bab10855a4bea8
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-06-16 20:20:20 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-16 20:20:20 +0900

    Remove unused and accidentally public rb_str_shared_root_p()

    This function was added to a public header in [1] probably
    unintentionally since it's not used anywhere, exposes implementation
    details, and isn't related to the goals of that pull request.

    [1]: 56cc3e99b6b9ec004255280337f6b8353f5e5b06

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6023

    Merged-By: XrXr

commit 63546bfc1581d4abec2a0d846106a1c0afc0efa9
  Author:     Shishir Joshi <shishir127@users.noreply.github.com>
  AuthorDate: 2022-06-16 20:16:47 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-16 20:16:47 +0900

    HTTPHeader.content_range throws error on non-byte units

    * Added a nil check in Net::HTTPHeader#initialize_http_header for keys in the header that do not have any value
    * Returning nil from the content_range method instead of raising an error when the unit in the content-range header is not bytes
    * Modified initialize_http_header to match trunk

    fix [Bug #11450]
    fix https://github.com/ruby/ruby/pull/1018

  Notes:
    Merged-By: nurse <naruse@airemix.jp>

commit 8ef312fc5bfa9c585a917dc006eeb7f2cad1b73f
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-16 16:47:16 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-16 16:47:16 +0900

    MJIT: Consider compaction on CC failure

commit 30ca4a826350e169353bd01f1d67bc0fe87247b5
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-16 14:10:54 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-16 14:10:54 +0900

    MJIT: Remove free_compiling_iseqs from mswin

commit b5079794fd8be0552e758d8b0713f7e633610214
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-16 14:09:37 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-16 14:09:38 +0900

    MJIT: Handle compaction units on stop_worker

commit 66f0ce34f12ed710c97aad30b083017c73f399ad
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-16 13:58:00 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-16 13:58:00 +0900

    MJIT: Get rid of obsoleted compiling_iseqs

commit 1ffc6c43f696fc18f1d3b52b09a2ef0dd00ac09c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-16 13:32:29 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-16 13:32:30 +0900

    MJIT: Deal with mjit_free_iseq on mjit_notify_waitpid

commit 332985c1788ea438ae87830386fde49677cc6e14
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-16 09:18:19 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-16 09:18:19 +0900

    MJIT: Fix test_jit_failure for mswin

commit 15a6dd56e08dddea9201c072567986368e1c508e
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-16 08:50:45 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-16 08:50:47 +0900

    MJIT: Handle C compiler failures

commit 17d260a87fd0cb4433d29c21f3a69ea963c64056
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-06-15 15:52:20 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-06-16 08:07:29 +0900

    Restore rb_exec_recursive_outer

    This was a public method, so we should probably keep it.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6027

commit 5310147bb826424059f258b76b37bebdc0abbc63
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-16 07:57:27 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-16 07:57:30 +0900

    MJIT: Handle JIT failure properly

commit 1e8fed2d2a3c42e007c830648a5f6427b99283d0
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-16 05:56:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-16 05:56:39 +0900

    [ruby/fileutils] [DOC] More on paths and lists (https://github.com/ruby/fileutils/pull/88)

    https://github.com/ruby/fileutils/commit/ba3ae2430d

commit a327ce8b07e8778b838a5b82939bea9409cfa9f5
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-16 02:57:37 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-16 02:57:38 +0900

    Remove unused rb_thread_create_mjit_thread

    follow up https://github.com/ruby/ruby/pull/6006

commit 23459e4dbb736b28873a85637d141f77167cacee
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-16 02:19:33 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-16 02:52:37 +0900

    Move RubyVM::MJIT to builtin Ruby

    just less C code to maintain

commit 1162523bae926cfa6128043b635e28c14b732754
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-16 01:40:54 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-16 01:40:54 +0900

    Remove MJIT worker thread (#6006)

    [Misc #18830]

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit d154d5d281c76eb5780ab20709584b782166c855
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-06-15 22:25:07 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-16 01:04:11 +0900

    Add imemo types to global namespace in lldb helpers

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6020

commit bb12aa4d15077071faae5e7b3a4c864699474169
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-15 15:25:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-15 22:17:23 +0900

    Remove unnecessary condition

    `no_blockarg` is called for non-null `node` only.

commit d417c1ddc51c521ccc7b85c6cc9410470949e3f7
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-15 19:42:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-15 21:10:55 +0900

    [rubygems/rubygems] Revert "Support running specs with asdf version manager"

    This reverts commit https://github.com/rubygems/rubygems/commit/4b2d09af5bc7.

    https://github.com/rubygems/rubygems/commit/90ca7a7163

commit e09bdc11ec74272eb9165b777fea43bbb99ae8bf
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-20 22:04:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-15 18:14:21 +0900

    [rubygems/rubygems] Support running specs with asdf version manager

    The `asdf-ruby` plugin sets `RUBYLIB` to require some code to reshim
    after installing gems. This interferes with our specs.

    Reset that, but leave any "internal" entries in places, because the
    ruby-core test setup also uses RUBYLIB.

    https://github.com/rubygems/rubygems/commit/4b2d09af5b

commit daf086c0e13434827a8329e2f5e8b286e267b55e
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-06-15 16:01:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-15 16:01:39 +0900

    Update bundled gems list at 2022-06-15

commit 46706e7808b897703f759d4d96b65fdf4b2bf9d0
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-15 14:40:49 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-15 14:42:09 +0900

    MJIT: Add a test for Process.waitall handling

commit 788a5e14faee9a2a9b32afa9326b7b91a46def33
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-15 05:42:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-15 05:42:26 +0900

    [ruby/fileutils] [DOC] More on cp_r (https://github.com/ruby/fileutils/pull/87)

    * More on cp_r

    https://github.com/ruby/fileutils/commit/82a2b62578

commit 9357e310fb420bab7092a665be7875272820e2a3
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-06-15 01:05:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-15 01:05:51 +0900

    [ruby/psych] Fix libyaml download failure rescue under miniruby

    I tried to build Ruby on a system without libyaml today and realized
    that my attempt from <https://github.com/ruby/psych/pull/557> doesn't
    fix the error in <https://github.com/ruby/psych/issues/552>. I still got
    the same `LoadError` from `digest` which stopped the build.

    Since `LoadError` is not a `StandardError`, a plain `rescue` doesn't catch
    it. Catch `LoadError` explicitly instead and reduce the scope of the
    `begin` block.

    I tested this change in a Ruby build on macOS without libyaml installed
    and confirmed that `make` continues with a warning instead of aborting:

        *** Following extensions are not compiled:
        psych:
                Could not be configured. It will not be installed.
                ...

    This should address <https://bugs.ruby-lang.org/issues/18790>.

    https://github.com/ruby/psych/commit/251289ba83

commit 9f09397bfe6762bf19ef47b2f60988e49b80560d
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-06-14 23:23:13 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-14 23:23:13 +0900

    YJIT: On-demand executable memory allocation; faster boot (#5944)

    This commit makes YJIT allocate memory for generated code gradually as
    needed. Previously, YJIT allocates all the memory it needs on boot in
    one go, leading to higher than necessary resident set size (RSS) and
    time spent on boot initializing the memory with a large memset().

    Users should no longer need to search for a magic number to pass to
    `--yjit-exec-mem` since physical memory consumption should now more
    accurately reflect the requirement of the workload.

    YJIT now reserves a range of addresses on boot. This region start out
    with no access permission at all so buggy attempts to jump to the region
    crashes like before this change. To get this hardening at finer
    granularity than the page size, we fill each page with trapping
    instructions when we first allocate physical memory for the page.

    Most of the time applications don't need 256 MiB of executable code, so
    allocating on-demand ends up doing less total work than before. Case in
    point, a simple `ruby --yjit-call-threshold=1 -eitself` takes about
    half as long after this change. In terms of memory consumption, here is
    a table to give a rough summary of the impact:

        | Peak RSS in MiB | -eitself example | railsbench once |
        | :-------------: | ---------------: | --------------: |
        |     before      |              265 |             377 |
        |      after      |               11 |             143 |
        |     no YJIT     |               10 |             101 |

    A new module is introduced to handle allocation bookkeeping.
    `CodePtr` is moved into the module since it has a close relationship
    with the new `VirtualMemory` struct. This new interface has a slightly
    smaller surface than before in that marking a region as writable is no
    longer a public operation.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 9b9cc8ad34fdecdede439f14c027c5eefef5541e
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-14 22:52:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-14 22:52:22 +0900

    [ruby/fileutils] [DOC] More on paths and lists (https://github.com/ruby/fileutils/pull/86)

    * More on paths and lists

    https://github.com/ruby/fileutils/commit/c3d92d34f4

commit 1a70973f7557af33bfca6e2edc5cd302937425a4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-14 18:28:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-14 20:41:41 +0900

    ripper: Check if anonymous parameters defined [Bug #18828]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6016

commit 048f14221cc8498ea8e5e339b6744288788a0303
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-14 10:21:55 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-14 10:21:55 +0900

    Add placeholder to let braces match

commit 56cc3e99b6b9ec004255280337f6b8353f5e5b06
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-04-06 17:55:23 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-14 02:11:27 +0900

    Move String RVALUES between pools

    And re-embed any strings that can now fit inside the slot they've been
    moved to

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5986

commit f8502a26990c652a2c3c1131614230fec446ab25
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-14 01:28:28 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-14 01:28:28 +0900

    Drop MinGW support of MJIT (#6012)

    [Feature #18824]

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 9a381c240c4a0daa2d00a40cf98eefd035a31c66
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-14 00:39:41 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-14 00:39:44 +0900

    [ruby/fileutils] [DOC] Clarify path arguments (https://github.com/ruby/fileutils/pull/85)

    https://github.com/ruby/fileutils/commit/5f9ef9ddc8

commit 753da6deca34eb7d5d61a26cf66b014ad77ad51d
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-13 21:11:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-13 21:11:45 +0900

    [ruby/fileutils] [DOC] Enhanced Rdoc (https://github.com/ruby/fileutils/pull/84)



    Treats:

        ::chown_R
        ::touch
        ::commands
        ::options
        ::have_option?
        ::options_of
        ::collect_method

    https://github.com/ruby/fileutils/commit/5df0324f52

commit b1397e96dacfed3dec3fb962e3b3ee9032ac137f
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-06-13 17:17:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-13 19:33:15 +0900

    [ruby/reline] Revert "Merge pull request #441 from nevans/workaround-linker-script-so"

    This reverts commit https://github.com/ruby/reline/commit/4ccf128ffa18, reversing
    changes made to https://github.com/ruby/reline/commit/a2651419e9a0.

    https://github.com/ruby/reline/commit/51053138a4

commit a80f5c536598157da83f8de8f328d03207801c43
  Author:     Jun Aruga <jaruga@redhat.com>
  AuthorDate: 2022-05-18 21:24:18 +0900
  Commit:     Jun Aruga <junaruga@users.noreply.github.com>
  CommitDate: 2022-06-13 19:12:18 +0900

    Enable "make annocheck" on platforms other than Linux.

    The annocheck supports ELF format binaries compiled for any OS and for any
    architecture. It can work in not only Linux but also FreeBSD and Solaris.
    It is designed to be independent of the host OS and the architecture.

    Even in Mac, as the binaries are Mach-O foramt, the annocheck fails correctly
    with the message.

    e.g. Test binaries compiled for Mac OSX 10.13.6 (target_os: darwin17) in Fedora 35.

    ```
    $ cat /etc/fedora-release
    Fedora release 35 (Thirty Five)

    $ file ruby
    ruby: Mach-O 64-bit x86_64 executable, flags:<NOUNDEFS|DYLDLINK|TWOLEVEL|WEAK_DEFINES|BINDS_TO_WEAK|PIE>

    $ annocheck ruby
    annocheck: Version 10.66.
    annocheck: Warning: ruby: is not an ELF format file.
    ```

    See <https://sourceware.org/bugzilla/show_bug.cgi?id=29173> for details.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5916

commit b2e58b02aec73f9c350bf109c021c180fc699ccc
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-06-13 12:14:03 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-06-13 15:22:32 +0900

    compile.c (add_adjust_info): Remove `insns_info_index > 0`

    ... because insns_info_index could not be zero here. Also it adds an
    invariant check for that.

    This change will prevent the following warning of GCC 12.1

    http://rubyci.s3.amazonaws.com/arch/ruby-master/log/20220613T000004Z.log.html.gz
    ```
    compile.c:2230:39: warning: array subscript 2147483647 is outside array bounds of ‘struct iseq_insn_info_entry[2147483647]’ [-Warray-bounds]
     2230 |         insns_info[insns_info_index-1].line_no != adjust->line_no) {
          |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6008

commit 5060c9d852be4b99d773ec1d94e0ec08ac4299b7
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-06-13 14:03:57 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-06-13 15:18:28 +0900

    cont.c: prevent a warning of GCC 12.1

    ... by assigning a dummy value to the allocated stack.

    http://rubyci.s3.amazonaws.com/arch/ruby-master/log/20220613T000004Z.log.html.gz
    ```
    cont.c: In function ‘cont_restore_0.constprop’:
    cont.c:1489:28: warning: ‘*sp’ may be used uninitialized [-Wmaybe-uninitialized]
     1489 |                 space[0] = *sp;
          |                            ^~~
    ```

    Also it adds some comments about the hack of dummy stack allocation.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6010

commit 425a46131a029390cd693242e621f6632c76cc42
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-06-13 12:33:54 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-06-13 13:12:18 +0900

    Handle case where write result is zero.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6009

commit d9ccb6b372f830fe4aab89460bb4b6147cfd924f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-05 18:18:48 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-13 12:17:04 +0900

    [ruby/reline] Check the ambiguous char width only on tty

    It sent the char to check even to non-tty, e.g., pipe.
    This causes `unknown command: "\xE2\x96\xBDstart ` warnings on
    ruby's parallel test on Windows, where non-standard FDs cannot be
    passed to child processes.

    https://github.com/ruby/reline/commit/0d373647fb

commit abc828bc67ff42ddb42f5bd034cec185d6b8821d
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-06-13 10:38:32 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-06-13 10:38:51 +0900

    Prevent a "warning: `*' interpreted as argument prefix"

commit 670de7162872bf2bb6076163c0f633e2f5fe3e7d
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-06-13 10:37:26 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-06-13 10:37:26 +0900

    Prevent a warning: assigned but unused variable - out

    http://rubyci.s3.amazonaws.com/ubuntu1804/ruby-master/log/20220613T003003Z.log.html.gz
    ```
    /home/chkbuild/chkbuild/tmp/build/20220613T003003Z/ruby/test/ruby/test_yjit_exit_locations.rb:96: warning: assigned but unused variable - out
    /home/chkbuild/chkbuild/tmp/build/20220613T003003Z/ruby/test/ruby/test_yjit_exit_locations.rb:96: warning: assigned but unused variable - err
    /home/chkbuild/chkbuild/tmp/build/20220613T003003Z/ruby/test/ruby/test_yjit_exit_locations.rb:96: warning: assigned but unused variable - status
    ```

commit d0bf31e6cffa7537ed4b69a86c58b285433143f7
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-27 20:19:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-12 02:02:20 +0900

    [rubygems/rubygems] Don't on gemspecs with invalid `require_paths`, just warn

    These gemspecs already work most of the times. When they are installed
    normally, the require_paths in the gemspec stub line becomes actually
    correct, and the incorrect value in the real gemspec is ignored. It only
    becomes an issue in standalone mode.

    In Ruby 3.2, `Kernel#=~` has been removed, and that means that it
    becomes harder for us to gracefully deal with this error in standalone
    mode, because it now happens earlier due to calling `Array#=~` for this
    invalid gemspec (since require_paths is incorrectly an array of arrays).

    The easiest way to fix this is to actually make this just work instead
    by automatically fixing the issue when reading the packaged gemspec.

    https://github.com/rubygems/rubygems/commit/d3f2fe6d26

commit 7f9eb888a3f86e286b5bc51705716b22ad02854c
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-26 17:34:25 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:28 +0900

    [rubygems/rubygems] Reuse package from the installer for extracting the specification

    Previously we would instantiate two different packages and extract the
    specification from the package twice for each gem installed. We can
    reuse the installer for this so that we just need to do it once.

    https://github.com/rubygems/rubygems/commit/e454f850b1

commit 965c314e34d05b196c8e079f868e79633076ad4c
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-09 18:22:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:27 +0900

    [rubygems/rubygems] Move security exception handling to the only place using it

    https://github.com/rubygems/rubygems/commit/ba975b3b7f

commit bf8dc36e40168737da5009d20ab1902557e58935
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-09 18:06:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:27 +0900

    [rubygems/rubygems] Swapping should not raise any errors

    https://github.com/rubygems/rubygems/commit/600a9ac658

commit 6292b36529c06c730d452c2bf2f18a82b02062bb
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-09 08:04:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:26 +0900

    [rubygems/rubygems] Remove unclear comment

    This is the explanation of why we do the swapping, not of why we
    download the gem.

    https://github.com/rubygems/rubygems/commit/1a25eb7e7b

commit 52cc76d134e963a9943d0379f5bc2991a01f7d1e
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-09 05:29:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:26 +0900

    [rubygems/rubygems] `Gem::Specification.loaded_from` is already set by the installer

    https://github.com/rubygems/rubygems/commit/796eebfdbf

commit 22c97ab8ae2b13b3048d7edee223272640dbda59
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-06 17:32:01 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:25 +0900

    [rubygems/rubygems] Refactor some more duplicated logic

    https://github.com/rubygems/rubygems/commit/9bd389e1b6

commit 95f5194b3c37497ae9ed2a1b2ae5b7729ee063ff
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-26 20:37:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:25 +0900

    [rubygems/rubygems] Move `no_install` setting check to a more sensible place

    It's only related to the `bundle cache` command, so it should be checked
    there.

    https://github.com/rubygems/rubygems/commit/cf749f8ffa

commit 3f69774b76067932015dff40d4fd38e9fdfae9ff
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-26 20:25:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:24 +0900

    [rubygems/rubygems] No need to redownload if package already there

    https://github.com/rubygems/rubygems/commit/285ccbc07e

commit a9077af75be7f71e02150343c1172287a4ad05fd
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-09 08:19:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:24 +0900

    [rubygems/rubygems] No need to overwrite path when there's a remote

    https://github.com/rubygems/rubygems/commit/d86fb2c316

commit 870e5a39d59d574f92676db17555869fed5d9afb
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-26 18:00:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:24 +0900

    [rubygems/rubygems] Remove another unnecessary require

    https://github.com/rubygems/rubygems/commit/04e6a5ae31

commit 692fec4e727e5635ba03cdae4a08ce5f0d3c953b
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-09 05:08:44 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:23 +0900

    [rubygems/rubygems] Simplify `Gem::Security::Exception` handling

    These days all these errors are raised as `Gem::Security::Exception` so
    there's no need to do any matching on the exception message.

    https://github.com/rubygems/rubygems/commit/bd3403da57

commit 572f3240fea870b8848a3e13eb8a8b9f2c45d800
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-26 16:59:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:23 +0900

    [rubygems/rubygems] Remove unnecessary require

    The `security_policies` method already requires it.

    https://github.com/rubygems/rubygems/commit/d19b088f2f

commit 4a758496804b23da24b85dd85ea81b40b5da9ce6
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-26 04:58:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:22 +0900

    [rubygems/rubygems] Remove unnecessary `spec.remote` guard

    It's checked before calling the method already.

    https://github.com/rubygems/rubygems/commit/4eb00e9586

commit d5288c8aad5b3de8ac48305b43b983ea30a0535d
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-26 04:57:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 18:43:22 +0900

    [rubygems/rubygems] Refactor ambiguous gems check

    https://github.com/rubygems/rubygems/commit/a00c79a4da

commit 7e1788e180cdcb370ac85152842e14eaf482dd59
  Author:     Jaeson Lauritzen <80929711+auricbot@users.noreply.github.com>
  AuthorDate: 2022-06-11 14:22:16 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-11 14:22:16 +0900

    fix typo in dir documentation (#6002)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 52da90aceefd9f8de06666796f6a2d484ca18036
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-06-11 01:43:05 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-06-11 06:48:21 +0900

    Make method id explicit in rb_exec_recursive_outer

    Previously, because opt_aref and opt_aset don't push a frame, when they
    would call rb_hash to determine the hash value of the key, the initial
    level of recursion would incorrectly use the method id at the top of the
    stack instead of "hash".

    This commit replaces rb_exec_recursive_outer with
    rb_exec_recursive_outer_mid, which takes an explicit method id, so that
    we can make the hash calculation behave consistently.

    rb_exec_recursive_outer was documented as being internal, so I believe
    this should be okay to change.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6004

commit f4747958e546a5d3f2c0033b19c6ad69ce7278b1
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-06-09 07:21:42 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-06-11 06:48:21 +0900

    Add mid argument to exec_recursive

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6004

commit 44b3daa0d7784319b42a12066f793bfa5fe2b3a1
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-11 06:41:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-11 06:41:27 +0900

    [ruby/fileutils] Enhanced RDoc (https://github.com/ruby/fileutils/pull/83)

    Treats ::chmod_R and ::chown.

    https://github.com/ruby/fileutils/commit/df4ac84bef

commit fc484be5e5a1e9fcdc74871106dbe13ba533b745
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-06-11 04:19:53 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-06-11 05:47:42 +0900

    Add assertion for embedded to embedded ivar copy

  Notes:
    Merged: https://github.com/ruby/ruby/pull/6003

commit 9ed9cc9852a7cf12c71114c3c65b239c7af1518b
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-06-11 02:52:43 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-11 02:52:43 +0900

    Add tests for a variety of string-subclass operations (#5999)

    This way YJIT has to match CRuby for each of them.
    Remove unused string_p() Rust function

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit e777ac9161f6d772ab2930a037ecb07789be4fe5
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-06-11 01:29:26 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-11 01:29:26 +0900

    Don't return a value from jit_guard_known_klass. We never return anything but true at this point and we don't usually check the returned value. (#6000)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 1e528e8cbef3231e1ffd908c9e1fb90b6b14173c
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-06-10 15:40:12 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-06-10 23:56:49 +0900

    small fix on `setup_debug_log()`

    * print `ruby_debug_log_mode` at first.
    * show filters when `ruby_debug_log_mode` is not "disabled".

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5996

commit c54f4264c281b2392a540042f894bb85c240007b
  Author:     Eileen M. Uchitelle <eileencodes@users.noreply.github.com>
  AuthorDate: 2022-06-10 23:12:58 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-10 23:12:58 +0900

    Remove duplicated rb_yjit_get_stats (#5997)

    `rb_yjit_get_stats` is defined twice in yjit.c, it only needs to be
    defined once.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit e75cb61d4645b9833b14a0cc4190cceffc9b6551
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2021-07-15 08:44:26 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-06-10 10:10:27 +0900

    Fix nested bmethod TracePoint and memory leak

    df317151a5b4e0c5a30fcc321a9dc6abad63f7ed removed the code to free
    rb_hook_list_t, so repeated targeting of the same bmethod started
    to leak the hook list. You can observe how the maximum memory use
    scales with input size in the following script with `/usr/bin/time -v`.

    ```ruby
    o = Object.new
    o.define_singleton_method(:foo) {}
    trace = TracePoint.new(:return) {}

    bmethod = o.method(:foo)

    ARGV.first.to_i.times { trace.enable(target:bmethod){} }
    4.times {GC.start}
    ```

    After this change the maximum doesn't grow as quickly.

    To plug the leak, check whether the hook list is already allocated
    when enabling the targeting TracePoint for the bmethod. This fix
    also allows multiple TracePoints to target the same bmethod, similar
    to other valid TracePoint targets.

    Finally, free the rb_hook_list_t struct when freeing the method
    definition it lives on. Freeing in the GC is a good way to avoid
    lifetime problems similar to the one fixed in df31715.

    [Bug #18031]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4651

commit cedc36ec577530b23497a9ace74fc3a8e0c66bdf
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-10 08:17:25 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-10 08:17:26 +0900

    Remove a leftover require

    I thought about using it in 2931957d6ff16b5c095f6e8095384c98130133ad
    once and then ended up not using it.

commit e69e47f8d62456f85f70d52f736a23eab504f8b4
  Author:     Eileen M. Uchitelle <eileencodes@users.noreply.github.com>
  AuthorDate: 2022-06-10 06:59:41 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-10 06:59:41 +0900

    Fix exit locations test (#5995)

    I originally added the check for
    RubyVM::YJIT.trace_exit_locations_enabled? to fix errors when these
    tests run without the stats feature enabled. However I forgot that this
    will never be true when this test is booting, so nothing was running
    when the stats feature is turned on.

    Instead I've decided to make a new hash in the dump file and check if
    exit locations are enabled there. If they aren't enabled we return early
    to avoid checking for keys that won't exit in the dumped exit locations.
    I chose to add this additional enabled check because empty exit
    locations might not indicate that stats isn't enabled, it could mean the
    feature is entirely broken. I do want these tests to fail if stats are
    on and nothing was collected.

    Followup to #5970

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit c2468fd88b977b1c0015fe7f49a822df1d07ea6f
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-10 05:03:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-10 05:03:33 +0900

    [ruby/fileutils] Enhanced RDoc (https://github.com/ruby/fileutils/pull/82)

    Treats ::chmod; adds Pathname usage to ::install.

    https://github.com/ruby/fileutils/commit/9db4cb129c

commit adcfd6969070c3c51b35221d183728bbde8b8539
  Author:     Alexander Ilyin <alexander.ilyin11@gmail.com>
  AuthorDate: 2022-06-10 03:40:21 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-10 03:40:21 +0900

    [DOC] Fix markup for `String` (#5984)

    * Add missing space for `String#start_with?`.
    * Add missing pluses for `String#tr` and
      `Methods for Converting to New String` label.
    * Move quote into the tag for `Whitespace in Strings` label.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 473ee328c5be01ac6bb29659afcbe3361664bf68
  Author:     Eileen M. Uchitelle <eileencodes@users.noreply.github.com>
  AuthorDate: 2022-06-10 01:59:39 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-10 01:59:39 +0900

    Add ability to trace exit locations in yjit (#5970)

    When running with `--yjit-stats` turned on, yjit can inform the user
    what the most common exits are. While this is useful information it
    doesn't tell you the source location of the code that exited or what the
    code that exited looks like. This change intends to fix that.

    To use the feature, run yjit with the `--yjit-trace-exits` option,
    which will record the backtrace for every exit that occurs. This functionality
    requires the stats feature to be turned on. Calling `--yjit-trace-exits`
    will automatically set the `--yjit-stats` option.

    Users must call `RubyVM::YJIT.dump_exit_locations(filename)` which will
    Marshal dump the contents of `RubyVM::YJIT.exit_locations` into a file
    based on the passed filename.

    *Example usage:*

    Given the following script, we write to a file called
    `concat_array.dump` the results of `RubyVM::YJIT.exit_locations`.

    ```ruby
    def concat_array
      ["t", "r", *x = "u", "e"].join
    end

    1000.times do
      concat_array
    end

    RubyVM::YJIT.dump_exit_locations("concat_array.dump")
    ```

    When we run the file with this branch and the appropriate flags the
    stacktrace will be recorded. Note Stackprof needs to be installed or you
    need to point to the library directly.

    ```
    ./ruby --yjit --yjit-call-threshold=1 --yjit-trace-exits -I/Users/eileencodes/open_source/stackprof/lib test.rb
    ```

    We can then read the dump file with Stackprof:

    ```
    ./ruby -I/Users/eileencodes/open_source/stackprof/lib/ /Users/eileencodes/open_source/stackprof/bin/stackprof --text concat_array.dump
    ```

    Results will look similar to the following:

    ```
    ==================================
      Mode: ()
      Samples: 1817 (0.00% miss rate)
      GC: 0 (0.00%)
    ==================================
         TOTAL    (pct)     SAMPLES    (pct)     FRAME
          1001  (55.1%)        1001  (55.1%)     concatarray
           335  (18.4%)         335  (18.4%)     invokeblock
           178   (9.8%)         178   (9.8%)     send
           140   (7.7%)         140   (7.7%)     opt_getinlinecache
           ...etc...
    ```

    Simply inspecting the `concatarray` method will give `SOURCE
    UNAVAILABLE` because the source is insns.def.

    ```
    ./ruby -I/Users/eileencodes/open_source/stackprof/lib/ /Users/eileencodes/open_source/stackprof/bin/stackprof --text concat_array.dump --method concatarray
    ```

    Result:

    ```
    concatarray (nonexistent.def:1)
      samples:  1001 self (55.1%)  /   1001 total (55.1%)
      callers:
        1000  (   99.9%)  Object#concat_array
           1  (    0.1%)  Gem.suffixes
      callees (0 total):
      code:
            SOURCE UNAVAILABLE
    ```

    However if we go deeper to the callee we can see the exact
    source of the `concatarray` exit.

    ```
    ./ruby -I/Users/eileencodes/open_source/stackprof/lib/ /Users/eileencodes/open_source/stackprof/bin/stackprof --text concat_array.dump --method Object#concat_array
    ```

    ```
    Object#concat_array (/Users/eileencodes/open_source/rust_ruby/test.rb:1)
      samples:     0 self (0.0%)  /   1000 total (55.0%)
      callers:
        1000  (  100.0%)  block in <main>
      callees (1000 total):
        1000  (  100.0%)  concatarray
      code:
                                      |     1  | def concat_array
     1000   (55.0%)                   |     2  |   ["t", "r", *x = "u", "e"].join
                                      |     3  | end
    ```

    The `--walk` option is recommended for this feature as it make it
    easier to traverse the tree of exits.

    *Goals of this feature:*

    This feature is meant to give more information when working on YJIT.
    The idea is that if we know what code is exiting we can decide what
    areas to prioritize when fixing exits. In some cases this means adding
    prioritizing avoiding certain exits in yjit. In more complex cases it
    might mean changing the Ruby code to be more performant when run with
    yjit. Ultimately the more information we have about what code is exiting
    AND why, the better we can make yjit.

    *Known limitations:*

    * Due to tracing exits, running this on large codebases like Rails
    can be quite slow.
    * On complex methods it can still be difficult to pinpoint the exact cause of
    an exit.
    * Stackprof is a requirement to to view the backtrace information from
    the dump file.

    Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>

    Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 27eb36596a65d6bca44b4420ca6526175bf1b431
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-05-27 02:45:36 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-06-10 00:22:06 +0900

    Stop ignoring 4th positional argument to IO.#{foreach,readlines}

    Fixes [Bug #18771]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5953

commit 940c8b093de1d903b67b7d80cc33f698a5debf1c
  Author:     xtkoba <69125751+xtkoba@users.noreply.github.com>
  AuthorDate: 2021-04-30 23:03:02 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-06-09 20:43:41 +0900

    Skip `NULL` values from `dladdr(3)`

    Fixes [Bug #17810]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4438

commit 4e21b19a61aadd785df1d731d79265fef16fb7c8
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-06-08 22:44:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-09 18:58:49 +0900

    [ruby/timeout] Keep a private reference to `Process.clock_gettime`

    `timeout 0.3.0` broke our test suite because we have some
    tests that stubs `Process.clock_gettime` making it return
    a value in the past, causing `Timeout` to trigger almost immediately.

    I beleive it wasn't a problem before because it was relying on `Process.sleep`.

    https://github.com/ruby/timeout/commit/e5911a303e

commit bda4d91f0599a8e2d278bc13660a5576d4ced353
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-28 16:56:30 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-06-09 18:21:39 +0900

    doc/case_mapping.rdoc: Fix references for case mapping

    The chart (https://www.unicode.org/charts/case) that is currently
    referred seems to be wrong.

    Also, use the "latest" redirect and add titles of the section and table.
    [Bug #18590]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5607

commit 90b240d1274b8597e02f94cb644da3aa137241b6
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-09 14:38:50 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-09 14:39:18 +0900

    Fix MJIT's ISEQ_BODY macro usage at 5f10bd634fb

commit 2931957d6ff16b5c095f6e8095384c98130133ad
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-09 12:47:40 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-09 13:19:03 +0900

    MJIT: Ignore existence of .bundle.dSYM on macOS

    We could fix it, but removing files in the directory recursively is
    tedious in C and --mjit-debug is not a concern for users. We have
    TestMJITDebug for detecting linker problems that are ignored by -O. It's
    not really for maintaining --mjit-debug itself.

commit 67a9845a7a447ddfe0f21a8ce9ab0a8309c7e2d7
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-06-09 09:30:56 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-06-09 09:35:08 +0900

    Fix compile error

    ```
    compiling ../debug.c
    ../debug.c:452:1: error: conflicting types for 'ruby_debug_log_filter'
    ruby_debug_log_filter(const char *func_name, const char *file_name)
    ^
    ../vm_debug.h:87:6: note: previous declaration is here
    bool ruby_debug_log_filter(const char *func_name);
         ^
    1 error generated.
    make: *** [debug.o] Error 1
    ```

commit 9b7208fca16e6eb1c4c5938dad2417db49c941d0
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-09 05:37:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-09 05:38:09 +0900

    [ruby/fileutils] [DOC] Enhanced RDoc (https://github.com/ruby/fileutils/pull/81)

    https://github.com/ruby/fileutils/commit/b9d5a79e38

commit da883af42a2569cf449a7115148c41f05cd856a8
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-09 02:49:00 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-09 02:49:00 +0900

    MJIT: Directly compile .c to .so (#5987)

    I'm planning to redesign the MJIT worker pipeline, and this allows you to simplify the implementation and let it run efficiently except for MinGW.

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 5a4f997b2e8e819ed40731cd769826112072a9d4
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-06-08 16:14:20 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-06-09 01:51:19 +0900

    func: and file: prefix for `RUBY_DEBUG_LOG_FILTER`

    `RUBY_DEBUG_LOG_FILTER` specified only function names but this
    patch also check file names for each log events.
    If you specify `file:` or `func:` prefix, it's only filter
    file names or func names (otherwize check both).

      foo
      # show log when file or func names are mached with foo

      func:foo
      # show log when func name matches foo

      file:foo
      # show log when file name matches foo

      -file:foo,func:bar
      # show log when file name does not contains foo
      #           and func name matches bar

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5988

commit 8d57336360497e94403a71bd13de8faa76f1dbcb
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-06-09 00:05:53 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-06-09 01:09:19 +0900

    Fix major GC thrashing

    Only growth heaps are allowed to start major GCs. Before this patch,
    growth heaps are defined as size pools that freed more slots than had
    empty slots (i.e. there were more dead objects that empty space).

    But if the size pool is relatively stable and tightly packed with mostly
    old objects and has allocatable pages, then it would be incorrectly
    classified as a growth heap and trigger major GC. But since it's stable,
    it would not use any of the allocatable pages and forever be classified
    as a growth heap, causing major GC thrashing. This commit changes the
    definition of growth heap to require that the size pool to have no
    allocatable pages.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5993

commit d1b6c8a1cc7b7c578ba2461a1cf279f87d76d302
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-06-09 00:25:31 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-06-09 00:25:31 +0900

    Fix compilation error when USE_RVARGC=0

    force_major_gc_count was not defined when USE_RVARGC=0.

commit fafe68185c1c39949d69754cfac5a15c3438ec08
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-06-08 23:03:00 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-06-08 23:03:00 +0900

    Add key force_major_gc_count to GC.stat_heap

    force_major_gc_count is the number of times the size pool forced major
    GC to run.

commit a07acbe417fe0e24e3bdbcfadeb678e1cb9c6f9d
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-08 21:34:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-08 21:35:00 +0900

    [ruby/fileutils] File trees (https://github.com/ruby/fileutils/pull/80)

    Adds a note about file tree examples.

    https://github.com/ruby/fileutils/commit/65ac65067a

commit 6a6531d3e0d39d44f80947672e701d2d7d6dd406
  Author:     Alexander Ilyin <alexander.ilyin11@gmail.com>
  AuthorDate: 2022-06-08 17:04:18 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-06-08 17:49:56 +0900

    Update "Reporting Issues" link in the README

    This link is broken.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5989

commit 790825db446c304cb2887f17e0f2a3abda4351a2
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-06-08 13:30:22 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-06-08 13:30:28 +0900

    Update the help message on /benchmark

    I wanted to point out there's --output=all.

commit ccfbcc730230fddeab6d7f8820c9d232117a07fd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-08 11:55:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-08 11:55:21 +0900

    [DOC] RDoc now accepts other than magic numbers at `rb_attr`

commit bf4684d9992615b84781f0f688624c95e0ecaadb
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-06-08 03:15:59 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-06-08 03:15:59 +0900

    Remove duplicated prototype in header file

    rb_imemo_new is defined again later in the file.

commit 19c6aaca939e1d42030d171bc0e8f2098dc7f535
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-06-08 00:18:50 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-06-08 01:15:55 +0900

    thread_pthread.c: trigger THREAD_EVENT_READY when going through the fast path.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5985

commit 1598c9458a3ac8e0e4c179317a4e5bba506e3367
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-06-08 00:20:57 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-08 00:20:57 +0900

    Add special-case code for the String unary plus operator (#5982)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit deff9e2699c46075c3bb9b9e1bf9f721a12a2ca3
  Author:     Daniel Berger <djberg96@gmail.com>
  AuthorDate: 2022-06-06 14:46:01 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-07 23:18:31 +0900

    [rubygems/rubygems] Remove unnecessary string concatenation

    https://github.com/rubygems/rubygems/commit/81ccb3ab89

commit c4bf24ee4672cc24a9355a08eb9afd3dbb073be5
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-06-07 04:41:59 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-06-07 22:56:20 +0900

    Remove while loop over heap_prepare

    Having a while loop over `heap_prepare` makes the GC logic difficult to
    understand (it is difficult to understand when and why `heap_prepare`
    yields a free page). It is also a source of bugs and can cause an infinite
    loop if `heap_page` never yields a free page.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5907

commit f50432fba850fd163be07a8c7062517eb7ba6e97
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-07 17:46:30 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-07 21:04:53 +0900

    [rubygems/rubygems] Relax performance spec limit

    https://github.com/rubygems/rubygems/commit/eab417d0ce

commit b1e6e58cd1393bf85ae14b82fe2f944192dc336e
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-06-07 17:51:28 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-06-07 20:19:34 +0900

    Refactor TestThreadInstrumentation to investigate CI flakiness

    `test_thread_instrumentation_fork_safe` has been failing occasionaly
    on Ubuntu and Arch. At this stage we're not sure why, all we know is
    that the child exit with status 1.

    I suspect that something entirely unrelated cause the forked children
    to fail on exit, so by using `exit!(0)` and doing assertions in the
    parent I hope to be resilient to that.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5983

commit f075be3dcb4b82b89496d1820002bf3d80f653ef
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-06-07 17:40:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-07 17:40:19 +0900

    [ruby/error_highlight] Use Exception#detailed_message instead of overriding #message (https://github.com/ruby/error_highlight/pull/24)

    See https://bugs.ruby-lang.org/issues/18564.
    Ref: https://github.com/ruby/did_you_mean/pull/177

    https://github.com/ruby/error_highlight/commit/671b7c61b2

commit 11b9dd8ccb26a091b99230640494540ad0cc4e48
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-06-07 15:24:48 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-06-07 15:24:48 +0900

    Manually merged https://github.com/ruby/did_you_mean/pull/177

commit b9f030954a8a1572032f3548b39c5b8ac35792ce
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-06-07 11:50:58 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-06-07 11:52:44 +0900

    Revert "error.c: Let Exception#inspect inspect its message"

    This reverts commit 9d927204e7b86eb00bfd07a060a6383139edf741.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5981

commit 9d927204e7b86eb00bfd07a060a6383139edf741
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2021-11-30 16:27:12 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-06-07 11:07:09 +0900

    error.c: Let Exception#inspect inspect its message

    ... only when the message string has a newline.

    `p StandardError.new("foo\nbar")` now prints `#<StandardError: "foo\nbar">'
    instead of:

        #<StandardError:
        bar>

    [Bug #18170]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4857

commit dbfb3b1917dbe89816ffeea6046d2743c32bf6b6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-07 09:18:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-07 10:42:10 +0900

    [ruby/rdoc] Allow boolean arguments to `rb_attr` and `rb_define_attr`

    Currently only literal `0` and `1` are accepted as `read`/`write`
    flags.
    This patch allows other boolean arguments, C macros (`FALSE`/`TRUE`),
    Ruby `VALUE`s (`Qfalse`/`Qtrue`), and C99 `bool`s (`false`/`true`), as
    well.

    https://github.com/ruby/rdoc/commit/169dc02e3c

commit cfcf33f1270f78c5fb928d7a0927e6be02ec8900
  Author:     Jun Aruga <jaruga@redhat.com>
  AuthorDate: 2022-05-24 23:00:53 +0900
  Commit:     Jun Aruga <junaruga@users.noreply.github.com>
  CommitDate: 2022-06-07 07:25:19 +0900

    .github/workflows/compilers.yml: annocheck: Fix a linker flag to pass MJIT tests.

    Set the linker flag `-Wl,-z,now` properly.

    Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>

    Fixes [Bug #18781]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5938

commit ec3542229b29ec93062e9d90e877ea29d3c19472
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-06-07 05:50:03 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-07 05:50:03 +0900

    Ignore invalid escapes in regexp comments

    Invalid escapes are handled at multiple levels.  The first level
    is in parse.y, so skip invalid unicode escape checks for regexps
    in parse.y.

    Make rb_reg_preprocess and unescape_nonascii accept the regexp
    options.  In unescape_nonascii, if the regexp is an extended
    regexp, when "#" is encountered, ignore all characters until the
    end of line or end of regexp.

    Unfortunately, in extended regexps, you can use "#" as a non-comment
    character inside a character class, so also parse "[" and "]"
    specially for extended regexps, and only skip comments if "#" is
    not inside a character class. Handle nested character classes as well.

    This issue doesn't just affect extended regexps, it also affects
    "(#?" comments inside all regexps.  So for those comments, scan
    until trailing ")" and ignore content inside.

    I'm not sure if there are other corner cases not handled.  A
    better fix would be to redesign the regexp parser so that it
    unescaped during parsing instead of before parsing, so you already
    know the current parsing state.

    Fixes [Bug #18294]

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5721

    Merged-By: jeremyevans <code@jeremyevans.net>

commit c85d1cda86d75ee2c3f7b42f22c543409cb5a186
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-12 14:43:47 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-06-07 03:12:55 +0900

    Fix Module#const_source_location for autoload constants with direct requires

    If an autoload exists for a constant, but the path for the autoload
    was required, const_source_location would return [false, 0] instead
    of the actual file and line. This fixes it by setting the appropriate
    file and line in rb_const_set, and saving the file and line in
    const_tbl_update before they get reset by current_autoload_data.

    Fixes [Bug #18624]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5646

commit 653e517eefaa0c4f2710b30b4dff9a9dad7b9d6a
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-06-07 02:47:24 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-07 02:47:24 +0900

    Use bindgen to import Ruby constants wherever possible. (#5943)

    Constants that can't be imported via bindgen should have
    a comment saying why not.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit c5475f42694eff35465c3332e0182c0611ca5918
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-04-22 11:46:17 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-06-07 01:59:22 +0900

    Fix Range#cover? returning true for beginless ranges of different types

    Previously `(2..).cover?("2"..)` was false, but
    `(..2).cover?(.."2")` was true.  This changes it so both are false,
    treating beginless ranges the same as endless ranges in regards to
    type checks.

    This also adds documentation to #cover? to describe behavior with
    beginless and endless ranges, testing each documentation example,
    which is how this bug was found.

    Fixes [Bug #18155]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5831

commit 7cda7fbbdc14f4262afaa94cdeb5a5987f1eb01a
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-06-07 01:57:32 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-07 01:57:32 +0900

    Add Module#undefined_instance_methods

    Implements [Feature #12655]

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5733

    Merged-By: jeremyevans <code@jeremyevans.net>

commit b737998d25f1379117fbf11a578462e6ba12037e
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-06-07 00:37:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-07 00:37:31 +0900

    [ruby/fileutils] [DOC] Enhanced RDoc for FileUtils (https://github.com/ruby/fileutils/pull/78)

    Treats:
        ::rm
        ::rm_f
        ::rm_r
        ::rm_rf
        ::remove_entry_secure

    https://github.com/ruby/fileutils/commit/ce2a438d75

commit 6fc16e748ee3a95d0134c180c6f33d947163f3d7
  Author:     Alexander Ilyin <alexander.ilyin11@gmail.com>
  AuthorDate: 2022-06-06 23:16:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-07 00:06:56 +0900

    [ruby/open-uri] [DOC] Fix markup for `URI.open`

    * Add missing slash.

    https://github.com/ruby/open-uri/commit/40023e63da

commit 66a9e452bbbb69e5a653d078839b222b92034cb6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-06 21:19:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-06 21:19:45 +0900

    [ruby/rdoc] Use runnable command as DUMMY_PAGER

    https://github.com/ruby/rdoc/commit/fec1ab2e41

commit ba383188279cd30abbb826f45af775fed3266221
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-03 16:49:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-06 18:36:31 +0900

    [rubygems/rubygems] Unify loading `Gem::Requirement`

    It was being explicitly required from `Gem::Specification` but also a
    strange autoload was set for it at `Gem::Version`. The autoload was non
    standard because it should've been done in the `Gem` module, not in
    `Gem::Specification`, since that's where the constant is expected to get
    defined. Doing this might get deprecated in the future, and it was not
    being effective anyways due to the explicit require.

    Unify everything with an `autoload` at the right place.

    https://github.com/rubygems/rubygems/commit/174ea3e24c

commit f4173ff2fada676940d358e97b2c3e55ff183ec7
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-06-06 18:19:15 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-06-06 18:19:15 +0900

    debug is the bundled gems, not default gems

commit 4bc7cef866dc4e4e5c2d94cdd65dd24cc7b7555d
  Author:     Pavel Rosický <pavel.rosicky@easy.cz>
  AuthorDate: 2021-09-24 07:33:36 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-06-06 18:13:01 +0900

    [ruby/cgi] jruby support

    https://github.com/ruby/cgi/commit/93326fb622

commit 5d014bcb61cbc443be6e6bd722573bf9e482a9be
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-06-06 12:52:15 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-06-06 12:52:15 +0900

    Use `sleep 0.5` for tests of GVL instrumentation API

    The tests fail randomly on some platforms.

    http://rubyci.s3.amazonaws.com/ubuntu/ruby-master/log/20220605T213004Z.fail.html.gz
    http://rubyci.s3.amazonaws.com/arch/ruby-master/log/20220605T210003Z.fail.html.gz
    ```
    [15737/21701] TestThreadInstrumentation#test_thread_instrumentation_fork_safe/home/chkbuild/chkbuild/tmp/build/20220605T213004Z/ruby/tool/lib/test/unit/assertions.rb:109:in `assert': Expected 0 to be nonzero?. (Test::Unit::AssertionFailedError)
    ```

    The failures seem to depend on context switches. I suspect `sleep 0.05`
    is too short, so this change tries to extend the wait time.

commit a56a7119ac903bf8db870b43d05952e80302622e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-06 11:16:18 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-06 11:30:26 +0900

    Remove useless assignment always overridden

commit d8790ecd04a31e377967fe9cbdfb815cae16e81a
  Author:     nick evans <nicholas.evans@gmail.com>
  AuthorDate: 2022-06-06 02:33:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-06 11:30:13 +0900

    Export RbConfig::CONFIG["COROUTINE_TYPE"]

    THREAD_MODEL is exported already, so this matches that.  Exporting this
    is simpler than inspecting configure_args and arch and matching that up
    with a specific configure.ac.

    Fix GH-5976

commit ed2dd17294162f996eec15c4c35d2688ed529629
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-05 14:21:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-05 14:21:01 +0900

    Use RBOOL

commit 5460675bbc5b56b422fce686493f87927620b8df
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-04 20:32:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-04 20:32:27 +0900

    [ruby/rdoc] Use command array form of `IO.popen` always

    So that an exception raises by non-existent command, not via shell.

    https://github.com/ruby/rdoc/commit/fd94dce69d

commit 9a7be959b1bf9a43e3436246a29db3a4d0f3f352
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-04 16:14:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-04 16:42:10 +0900

    [ruby/rdoc] Remove `RDoc::RI::Driver#in_path?`

    https://github.com/ruby/rdoc/commit/83051403d6

commit d4c7e4d5bb96a3b04b6e64a0e358be4381531827
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-04 16:13:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-04 16:42:09 +0900

    [ruby/rdoc] Enable pager tests

    https://github.com/ruby/rdoc/commit/ce63794fde

commit 323acd263aff3cc29786a55d4604f240a9cbab46
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-04 14:39:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-04 16:42:08 +0900

    [ruby/rdoc] Stop checking if pager command found

    `IO.popen` does that job.

    https://github.com/ruby/rdoc/commit/3bbbc5ac84

commit 76479de159591a9e1dad256d908368c9dd17dad9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-04 16:21:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-04 16:40:19 +0900

    [ruby/rdoc] Remove never used win32console

    https://github.com/ruby/rdoc/commit/47a1aef447

commit e4fe3473027393aa084f4e6b2a01c29ec8281f99
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-03-30 02:38:55 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-06-04 02:50:32 +0900

    Prevent printing crash report in a loop

    In the event that we are crashing due to a corrupt Ruby stack, we might
    re-enter rb_vm_bugreport() due to failed assertions in
    rb_backtrace_print_as_bugreport() or SDR(). In these cases we were
    printing the bug report ad infinitum with unbounded recusion.

    I seem to run into this every once in a while and the amount of log it
    prints out is pretty distracting. On CI environments it makes the log
    output unnecessarily big. Let's fix this.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5731

commit 9125374726fbf68c05ee7585d4a374ffc5efc5db
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-01-28 01:12:22 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-06-03 22:13:33 +0900

    [Feature #18339] GVL Instrumentation API

    Ref: https://bugs.ruby-lang.org/issues/18339

    Design:

    - This tries to minimize the overhead when no hook is registered.
      It should only incur an extra unsynchronized boolean check.
    - The hook list is protected with a read-write lock as to cause
      contention when some hooks are registered.
    - The hooks MUST be thread safe, and MUST NOT call into Ruby as they
      are executed outside the GVL.
    - It's simply a noop on Windows.

    API:

    ```
    rb_internal_thread_event_hook_t * rb_internal_thread_add_event_hook(rb_internal_thread_event_callback callback, rb_event_flag_t internal_event, void *user_data);
    bool rb_internal_thread_remove_event_hook(rb_internal_thread_event_hook_t * hook);
    ```

    You can subscribe to 3 events:

      - READY: called right before attempting to acquire the GVL
      - RESUMED: called right after successfully acquiring the GVL
      - SUSPENDED: called right after releasing the GVL.

    The hooks MUST be threadsafe, as they are executed outside of the GVL, they also MUST NOT call any Ruby API.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5500

commit d142eff6586de0018c9442129201b03c826f2a1e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-02-06 13:04:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-03 20:25:12 +0900

    [ruby/nkf] Constified invariant tables

    https://github.com/ruby/nkf/commit/b386ddc11c

commit a4721ec6cdd32b9c23a009e7390fefa1d9148ffd
  Author:     Kouhei Yanagita <yanagi@shakenbu.org>
  AuthorDate: 2022-05-28 06:04:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-03 14:35:47 +0900

    [DOC] Fix documentation of Numeric#div: Complex does not have #div

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5964

commit 1b44fcf22205dd9f1c6beb5e83ab3c98374ad1e4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-03 14:10:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-03 14:10:30 +0900

    [DOC] Mention the case to autoload already defined constant

commit 5342fcb67fbefeea28d2c2f6820d89f6ef3caffb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-03 14:09:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-03 14:09:11 +0900

    [DOC] Subjects of `autoload` are not restricted to modules

commit 4eb140b0e4ca53aac704394cfdf3e0da27c2b3c7
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-02 19:12:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-02 22:23:42 +0900

    [rubygems/rubygems] Remove redundant bitwise AND

    https://github.com/rubygems/rubygems/commit/a20bac7924

commit eb5a01970ffd7a84029cf7d541c942418a2d8f44
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-02 19:08:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-02 22:23:42 +0900

    [rubygems/rubygems] Add test cases from SHA1 RFC and improve test failure message

    I found that the current test cases did not cover the bitwise AND
    performed on modified words after each iteration
    (https://github.com/rubygems/rubygems/blob/7e5765a66c9fe5187b167f619f34db5db121f2df/bundler/lib/bundler/digest.rb#L50)

    https://github.com/rubygems/rubygems/commit/c8de819fee

commit 1d924ae410c4183d0c064c4ed13877b49833d038
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-06-02 17:31:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-02 19:30:48 +0900

    [rubygems/rubygems] Remove leftover debugging puts

    https://github.com/rubygems/rubygems/commit/7c6f15040d

commit af90433876556d84809ef5ae82f9161aaf9ce69f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-02 16:03:55 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-02 16:05:35 +0900

    Typedef built-in function types

commit b96a3a6fd2093e1dbea5491c002da515652dd347
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-06-02 15:32:00 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-02 15:32:00 +0900

    Move `GC.verify_compaction_references` [Bug #18779]

    Define `GC.verify_compaction_references` as a built-in ruby method,
    according to GC compaction support via `GC::OPTS`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5972

commit 9108db961dc24615d3fd1093d95521e53f41e61c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-09 17:15:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-02 10:29:53 +0900

    Fix the condition when a new buffer is needed without GMP

commit 689b5ae75277ddfc01e1e7b5a3c5ce393b2d1d19
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-27 11:27:15 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-06-02 10:12:34 +0900

    Split YJIT rules for CODEOWNERS

commit 9d18661e1de053a9fecae7f4ab4ed41300537cec
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-06-01 23:22:08 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-06-01 23:22:08 +0900

    Revert incorrect string-guard optimisation. (#5969)

    Also add jhawthorn's test to for this bug.
    Fix String#to_s invalidation test

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 1177665e6224f8491db82997c8774e9485564e41
  Author:     Ellen Marie Dash <the@smallest.dog>
  AuthorDate: 2022-04-01 08:44:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-01 19:01:18 +0900

    [rubygems/rubygems] Fix `bundle remove` by invalidating cached `Bundle.defintion`.

    Prior to this commit, `bundle add GEM_NAME` updated the lockfile,
    but `bundle remove GEM_NAME` left GEM_NAME in the lockfile.

    By invalidating the cached `Bundle.definition`, the existing code
    handles that without a problem.

    https://github.com/rubygems/rubygems/commit/aa0794d6a9

commit 0a6b9924bd1b45bd8ad29b1eb3c8a65835f5864d
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-31 04:48:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-01 17:07:35 +0900

    [rubygems/rubygems] Fix generated standalone script for default gems

    The installer is actually rewriting the spec's full gem path to be the
    one of the newly installed gem, however the accessor was not properly
    working for `StubSpecification` instances, and default gems are always
    of this type, because they are always present locally.

    Fix the accessor to properly update the underlying full specification.

    https://github.com/rubygems/rubygems/commit/efa41babfa

commit f5b88d93ae58dd8a956782f08a435e452f5eba12
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-31 04:46:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-01 17:07:34 +0900

    [rubygems/rubygems] Remove code that seems unnecessary

    This change was never covered with a spec, and we have recently covered
    the case of partially deleted gems with specs and it works fine
    (installation is "auto-healed").

    https://github.com/rubygems/rubygems/commit/6e66ee4235

commit 8381c568e70519e6902302cbe2b421742759f341
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-22 22:21:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-01 17:06:52 +0900

    [rubygems/rubygems] Restore ability to load old marshalled gemspec that use `YAML::PrivateType`

    This issue was not detected because when all traces of old YAML parser
    and emitter `Syck` were removed, this null-type.gemspec.rz marshalled
    gemspec was updated to no longer load `YAML::Syck::PrivateType` but load
    `Psych::PrivateType` instead.

    However, realworld old marshalled gemspecs still use the
    `YAML::PrivateType` constant, so this commit replaces the gemspec to be
    the real pry-0.4.7 marshalled gemspec, so that it catches this issue.

    https://github.com/rubygems/rubygems/commit/51b330b8d2

commit 89ec3def74cb66e520b027e766e4874a82ddb528
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-22 22:12:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-01 17:06:52 +0900

    [rubygems/rubygems] Improve null private type test

    This test is making sure that RubyGems is able to load old marshalled
    gemspecs that include a field loading `YAML::PrivateType` instances in
    the `rubyforge_project` field instead of `nil` due to a bug in old YAML
    emitters.

    At some point, the `rubyforge_project` field was removed and this test
    was updated to just check another field. However, in the realworld other
    fields do not have this issue and the marshalled gemspec we use for
    testing still has this issue in the field reserved for the
    `rubyforge_project` field. So I think updating the test to check other
    field was not correct.

    Instead, since the `rubyforge_project` field is now ignored, we no
    longer need to worry about any conversion in this field. The only thing
    we care about is that the marshal loading still works (which requires
    that the constant is at least defined).

    So this commit updates the test to make this more clear.

    https://github.com/rubygems/rubygems/commit/cddfacf6d4

commit ebb534801f7032476fa069be11ee1e52f54819f5
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-22 21:52:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-01 17:06:51 +0900

    [rubygems/rubygems] Remove no longer needed `Psych::PrivateType` cleanup

    This old bug used to affect the `rubyforge_project` field in serialized
    gemspecs. However, this field has been removed and it's no longer
    present in marshaled loaded gemspecs.

    So, while the constant is still present in these marshalled gemspecs and
    we still need to make sure it exists, we no longer need to clean it up
    from the loaded data.

    https://github.com/rubygems/rubygems/commit/09df18e522

commit fd83b8887f78b6e7746a3986a2e075663341d17e
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-31 16:49:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-06-01 00:14:31 +0900

    [rubygems/rubygems] Skip duplicated dependency warning for gemspec dev deps

    Generally this warning is skipped for gemspec development dependencies.
    I think because it's common to override them in the Gemfile to change
    the source, for example.

    But the order of conditions was not correct and the warning was still
    being printed in one case.

    https://github.com/rubygems/rubygems/commit/da9d1d6a3f

commit e2b421d679d7ebd2c7d6b44a96c8353b81e447b9
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-29 23:47:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-31 16:13:52 +0900

    [rubygems/rubygems] Give better conflict resolution advice

    This alternative really uses only the Gemfile, and can never end up
    being absurd, because it will never be suggested when there's no
    lockfile, and it suggests deleting the lockfile.

    https://github.com/rubygems/rubygems/commit/5d154dd50e

commit 9241d75a615f652dee45bc999524cc3c6ede8c5d
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-05-31 12:50:39 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-31 12:50:39 +0900

    Add information from doc/hacking.md and doc/make_cheatsheet.md back i… (#5963)

    Add information from doc/hacking.md and doc/make_cheatsheet.md back into contributing docs

  Notes:
    Merged-By: peterzhu2118 <peter@peterzhu.ca>

commit 0cae30e1d3d782d11dd413d6c713bf60c79ddc67
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-31 11:40:38 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-31 11:40:38 +0900

    Skip failing test with freebsd

commit 31bd79dda3d26956976e68ff1c2f8c376c7e9ea5
  Author:     Jakub Kulík <Kulikjak@gmail.com>
  AuthorDate: 2022-05-31 07:30:57 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-31 07:30:57 +0900

    Add yjit.o to DTRACE_DEPENDENT_OBJS

    In principle, we have a DTrace probe in yjit.c, so yjit.o should be
    in DTRACE_DEPENDENT_OBJS for DTRACE_REBUILD=yes builds. This commit
    adds to the list.

    In practice DTRACE_REBUILD=yes implies the system has a Solaris-like
    DTrace and YJIT doesn't support those systems. YJIT_OBJ expands to
    nothing, and yjit.c isn't compiled.

    I tested on OmniOS v11 r151034m with:

        $ ../src/configure --with-out-ext=psych MAKE=gmake AR=ar debugflags=-g
        $ gmake -j

    It builds before and after this change.

    [Bug #18480]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5891

    Merged-By: XrXr

commit a687756284187887835aa345adc89b2718054e4a
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-30 07:54:16 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-05-31 02:54:22 +0900

    Fix use-after-free with interacting TracePoints

    `vm_trace_hook()` runs global hooks before running local hooks.
    Previously, we read the local hook list before running the global hooks
    which led to use-after-free when a global hook frees the local hook
    list. A global hook can do this by disabling a local TracePoint, for
    example.

    Delay local hook list loading until after running the global hooks.

    Issue discovered by Jeremy Evans in GH-5862.

    [Bug #18730]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5865

commit c50c9d40511c52594f4d9db909339a7b036e3478
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-31 02:29:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-31 02:30:07 +0900

    [ruby/fileutils] [DOC] Enhanced RDoc (https://github.com/ruby/fileutils/pull/77)

    Treats:
        ::copy_entry
        ::copy_file
        ::copy_stream
        ::mv

    https://github.com/ruby/fileutils/commit/d6d7e5330d

commit a78f003c30dde0a303eb15fc073bc6c57df1cfc2
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-30 18:40:26 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-30 18:40:31 +0900

    Skip failing test with freebsd

commit d6684f063bc53e3cab025bd39526eca3b480b5e7
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-29 01:37:41 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-30 17:43:12 +0900

    [rubygems/rubygems] Fix crash when commenting out a mirror in configuration

    https://github.com/rubygems/rubygems/commit/2d99277328

commit ea31c5bcd1bc1a019a6aee2b3f3b16813d7ff96d
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-28 03:46:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-30 17:42:39 +0900

    [rubygems/rubygems] Fix crash when installing gems with symlinks

    If BUNDLE_PATH is configured to a symlinked path, installing gems with
    symlinks would crash with an error like this:

    ```
    Gem::Package::SymlinkError: installing symlink 'man/man0/README.markdown' pointing to parent path /usr/home/stevewi/srv/mail/lib/tools/.vendor/ruby/3.1.0/gems/binman-5.1.0/README.markdown of /srv/mail/lib/tools/.vendor/ruby/3.1.0/gems/binman-5.1.0 is not allowed
    ```

    This commit fixes the problem by changing the bundle path to be the
    realpath of the configured value, right after we're sure the path has
    been created.

    https://github.com/rubygems/rubygems/commit/3cd3dd142a

commit 0d7d8f3777b4521b2e83d81c0f830941bfba7b9c
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-28 06:09:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-30 17:42:38 +0900

    [rubygems/rubygems] No need to use `FileUtils` to create symlinks

    https://github.com/rubygems/rubygems/commit/70ff7cee9f

commit 7001e34323e37a4cb07ee077bf1efb30e438bed2
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-28 06:06:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-30 17:42:37 +0900

    [rubygems/rubygems] Fix failing spec on Windows

    https://github.com/rubygems/rubygems/commit/8e68c57457

commit 0a974e4700e123af507257a8252ac5b1f76e8c10
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-28 04:08:14 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-30 17:42:37 +0900

    [rubygems/rubygems] Remove seemingly unnecessary code

    https://github.com/rubygems/rubygems/commit/f5dd5204ca

commit 79761427913e70344ace2d129183ee998bcc22ac
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-30 14:16:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-30 14:48:45 +0900

    [ruby/stringio] Fix extracting encoding names in the fallback code

    https://github.com/ruby/stringio/commit/0fe2e0c1e5

commit d3e986d9ab9a880b58a0b4fc68dadc2b10f4cf12
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-30 13:46:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-30 14:48:44 +0900

    [ruby/stringio] Accept external and internal encodings pair

    Fix https://github.com/ruby/stringio/pull/16

    https://github.com/ruby/stringio/commit/c8a69e80d2

commit 4cc880e994d18fcf4a82974acbdcfa5f7431a306
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-30 14:28:27 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-30 14:28:32 +0900

    Also skip failing test with freebsd 12

commit 12e34a42769780ff9bda98c6a5db1ce621389915
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-05-30 13:25:05 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-05-30 13:25:05 +0900

    Update rubyspec for stringio bug fix

commit 609d73e8925f807786686caf635178bb1de74256
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-05-27 07:01:44 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-30 13:10:46 +0900

    [ruby/stringio] Fix handling of chomp with paragraph separator

    Try to mirror IO behavior, where chomp takes out the entire paragraph
    separators between entries, but does not chomp a single line separator
    at the end of the string.

    Partially Fixes [Bug #18768]

    https://github.com/ruby/stringio/commit/a83ddbb7f0

commit 7e3920f0d9875765fc337daf21a3b47d8c51f8cc
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-05-30 12:56:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-30 13:01:18 +0900

    [ruby/stringio] Update ext/stringio/stringio.c

    https://github.com/ruby/stringio/commit/1edc88587e

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

commit adaaf12857ce41d35b282e3fb5aa330934ce45c6
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-05-27 04:17:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-30 13:01:17 +0900

    [ruby/stringio] Ignore chomp keyword for nil separator

    nil separator means no separator at all, so nothing should be
    chomped.

    Partial fix for Ruby [Bug #18770]

    https://github.com/ruby/stringio/commit/feaa2ec631

commit 1f82269f4e1bf037e3e5504c6071b905f26fec6f
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-05-27 07:22:28 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-30 12:55:47 +0900

    [ruby/stringio] Fix each with multiple character string and chomp

    Previously, this could result in an infinite loop.  Always update
    the e pointer in this case, setting w when chomping so the chomped
    data is not included in the output.

    Fixes [Bug #18769]

    https://github.com/ruby/stringio/commit/4bf64d5130

commit bb6357cddd5af2c244348e96388a10f7cc6f25b4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-11-16 17:39:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-30 12:51:37 +0900

    [ruby/stringio] Fix expanding size at ungetc/ungetbyte

    https://github.com/ruby/stringio/commit/a35268a3ac

commit 11793f897ce40e833d69d5cd76c13e08a611bcd9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-28 15:52:57 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-30 12:03:57 +0900

    Reduce duplicate replacements

    Reduce duplicate replacements so that reflect macros in command lines
    consitently.  So that reflect macros in command lines.  Others than
    `nmake` have no problems with nested expansions.

commit cc6371869402ed1e1ef13d51bf1f9409378111e9
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-30 10:53:45 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-30 10:53:45 +0900

    Skip failing test with freebsd

commit 899c90cf8a5243911987a6d2fa5f21e0cfbbe7dc
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-05-30 02:43:02 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-30 02:43:02 +0900

    YJIT: Relax minimum Rust version requirement to 1.58.1

    We want to make it convenient for people to build YJIT and Rust version 1.58.1
    or above is available on Ubuntu Jammy, Debian testing, and Fedora 36 through
    the usual package manager on those systems. This saves the need to install
    `rustup` for some people.

    Our code is already 1.58.1 compatible so this commit simply tweaks CI to make
    sure that we keep supporting that version. We still test against the latest Rust
    version in `--enable-yjit=dev` builds through the Rust version available in
    GitHub's CI image.

    Rust versions older than 1.58.1 might build YJIT today, but we might make
    incompatible changes in the future.

    Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5951

    Merged-By: XrXr

commit 08b82e6b40b1dbbff20ba609d7d5eb8106a2d346
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-29 22:30:44 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-30 00:27:43 +0900

    [rubygems/rubygems] Ignore `Errno::EROFS` errors when creating `bundler.lock`

    Apparently old versions of MacOS would set `GEM_HOME` to a `/System`
    folder, and trying to create a file there raises `Errno::EROFS`.

    We ignore the error. Any permission issues should be better handled
    further down the line.

    https://github.com/rubygems/rubygems/commit/ef90c071d0

commit 373dabe00a71214e12702ff1ccda88f865b504c4
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-29 20:51:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-29 22:19:35 +0900

    [rubygems/rubygems] Ignore `Errno::EPERM` errors when creating `bundler.lock`

    This kind of error can happen when setting `GEM_HOME` to a path
    under MacOS System Integrity Protection.

    We ignore the error. Any permission issues should be better handled
    further down the line.

    https://github.com/rubygems/rubygems/commit/174cb66863

commit 8038d5e40a079d60dfcf7cab1155528959760c28
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-29 04:20:00 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-29 04:20:00 +0900

    Revert flawed doc for slice_after, slice_when, and chunk_while (#5952)

    Restores doc for the methods that were cited in https://bugs.ruby-lang.org/issues/18765.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 6e3295e554aff8e48ff0a5a7aad587dce6d5bb29
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-26 19:53:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-28 19:22:54 +0900

    [rubygems/rubygems] Make code to find target update version easier to follow

    https://github.com/rubygems/rubygems/commit/a7f81cc7ee

commit e9c4e37f1f5c227aedd3d77b02d7591edc7897d2
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-26 19:44:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-28 19:22:53 +0900

    [rubygems/rubygems] Remove unnecessary name and platform filter

    It's already done before.

    https://github.com/rubygems/rubygems/commit/49d28cfde5

commit e78c1ddb1ed9b55550c13d0a7f1e84f62f987230
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-25 20:33:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-28 19:22:15 +0900

    [rubygems/rubygems] Fix rubygems update when non default `--install-dir` is configured

    https://github.com/rubygems/rubygems/commit/9f3b21192d

commit 6b0131db6f029f3e472d00deb2134d45ad4dde3a
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-28 11:42:02 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-28 12:44:18 +0900

    Make `Kernel#p` completely uninterruptible.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5419

commit 753d30550368e4447b75bb7d1ed3d2703554ee01
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-10 10:22:09 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-28 12:44:18 +0900

    Tidy up usage of write_lock.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5419

commit 1589ac6291d6bf9caa8f237c6d143dd26526b579
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-09 20:44:44 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-28 12:44:18 +0900

    Improve handling of zero length writes.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5419

commit 4efccd28e4b257fb1c8f97781d0b5b1c42c1d9fa
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-09 19:36:33 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-28 12:44:18 +0900

    Improve consistency of `io_binwritev_internal` implementaiton.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5419

commit ac499bb511e88faa1e9a8566c6fd4821abb17457
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-09 19:21:47 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-28 12:44:18 +0900

    Improve error handling in `finish_writeconv`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5419

commit c6cd9e180e01f3c0c3258fae87cd55f5e9a219d4
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-09 19:21:07 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-28 12:44:18 +0900

    Better handling of `error`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5419

commit 585e97142d4df1e27633afaf98ba589512215c58
  Author:     machty <machty@gmail.com>
  AuthorDate: 2022-01-16 23:44:41 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-28 12:44:18 +0900

    Always allocate write_lock

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5419

commit 216593f59b49fc7f59ed991ae3feaa1ad233ce75
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-01-09 15:46:42 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-28 12:44:18 +0900

    Add IO write throughput/locking overhead benchmark.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5419

commit 15ebfe28493560f8368fc9a2fe7d9b5913051b84
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-01-09 07:41:20 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-28 12:44:18 +0900

    Make `io_binwritev` atomic.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5419

commit ce23cfa5182bb53e8b6555fb6a5b2846cd559922
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-01-08 21:47:51 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-28 12:44:18 +0900

    Make `io_binwrite` atomic.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5419

commit 8a13a2e8d1361bdab5d4bc1d75cf07b804a982c0
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-05-27 04:36:41 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-05-28 05:45:47 +0900

    RCLASS uses FLUSER bits 0 through 3

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5955

commit ac405dc214b336a34a763bf12dfc3baa540cb440
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-05-27 04:42:42 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-05-28 05:45:33 +0900

    Add more information to lldb dump_page helper

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5957

commit fc184ca1f789ce6a89e83b9247b6bd172af7c659
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-02-07 06:48:09 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-05-28 05:38:40 +0900

    Only check class ancestors for ivar in memory_view

    rb_class_get_superclass returns the immediate SUPER, including T_ICLASS.
    rb_ivar_lookup isn't implemented for T_ICLASS so it uses the default
    behaviour, which always returns Qnil.

    This commit avoids checking T_ICLASS for ivars.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5663

commit 8b4d2a50148b9944dd2d1d2d6ebe7b09874ddfdd
  Author:     Kouhei Yanagita <yanagi@shakenbu.org>
  AuthorDate: 2022-05-27 20:18:54 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-27 20:18:54 +0900

    [DOC] Fix typo in documentation

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5962

    Merged-By: nobu <nobu@ruby-lang.org>

commit 6778d321a7fa0ec56e3e02b6f3739a035c7ef41a
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-25 18:03:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-27 17:26:22 +0900

    [rubygems/rubygems] Show better error when previous installation fails to be removed

    Instead of guessing on the culprit.

    We actually have a helper, `Bundler.rm_rf`, with exactly the behavior
    that we want:

    * Allow the passed folder to not exist.
    * No exception swallowing other than that.

    https://github.com/rubygems/rubygems/commit/5fa3e6f04a

commit 45177129a75c5bfd03933b82076e8dc49acc500f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-24 20:26:18 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-27 15:08:30 +0900

    Support old Mac OS X SDK and gcc

    Follow up of https://github.com/ruby/ruby/pull/5927

    `pthread_threadid_np()` is not even be declared in outdated SDKs.

    Also, the `__API_AVAILABLE` macro does not work on gcc, which does not
    support the [availability] attribute of clang, so an additional weak
    symbol declaration is required to check for weakly linked symbols.

    [availability]: https://clang.llvm.org/docs/AttributeReference.html#availability

commit a04d8c951393060f613853dc3c44afb090f63e1b
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-05-27 07:40:34 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-27 07:40:34 +0900

    Remove trailing comma from FL_USER3 (#5958)

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 33fdff3c300cbc2e37f1a0819418be313848754d
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-05-24 02:57:40 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-05-27 04:09:04 +0900

    Remove unused RMODULE_INCLUDED_INTO_REFINEMENT flag

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5932

commit adc709adb8c7fbe83a20b7c9b554856c98346a4b
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-05-27 03:54:15 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-27 03:54:15 +0900

    Don't attempt to read ivars on T_ICLASS in struct (#5664)

  Notes:
    Merged-By: jhawthorn <john@hawthorn.email>

commit ba88787087b0d979f806e6b58cfbc3886d942968
  Author:     Noah Gibbs (and/or Benchmark CI) <noah.gibbs@shopify.com>
  AuthorDate: 2022-05-26 01:31:38 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-05-27 02:06:47 +0900

    Use bindgen to import CRuby constants for YARV instruction bytecodes

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5948

commit bd472ef36f22de176a886cbe789480e84990b82b
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-26 21:39:05 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-26 22:04:28 +0900

    Show ASAN_OPTIONS in hacking guide.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5950

commit 46cf3bf33345c0dadb4ac8d79fe9e388cb9602a2
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-05-24 23:19:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-26 19:55:05 +0900

    Using TZMODE_SET_LOCALTIME macro

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5937

commit 2556e15d7520913119175c8166b1f9d17eb33415
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-26 12:06:21 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-26 13:51:53 +0900

    Remove unnecessary ignore warnings.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5947

commit 946e3bbdc293693e667ad056885a27e6955a895f
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-26 09:44:01 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-26 11:20:59 +0900

    Simplify the autoload require logic.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5945

commit 012eb9b70d77bfd93208131e2ae83fc63840e3c3
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-26 07:08:14 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-26 07:08:26 +0900

    [ruby/fileutils] [DOC] Enhanced RDoc for copy_entry (https://github.com/ruby/fileutils/pull/76)

    https://github.com/ruby/fileutils/commit/27a3c376c7

commit d875445e8a8b073298e8b3db177d1a5e78c92893
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-25 20:12:54 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-25 21:17:30 +0900

    Fix GC race condition in autoload.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5941

commit cd6f87eefc35922d21a1889e038c9f50f229004f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-25 19:50:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-25 19:50:47 +0900

    [ruby/timeout] Set the flag surely before return

    https://github.com/ruby/timeout/commit/f3a31abdfb

commit 952ff7fbb3d1d4e9f13a4124016cb805c3a06a51
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-25 16:49:51 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-25 18:50:53 +0900

    Fix out of bounds read.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5940

commit 86602484a28fe345d9d164fe33d765d5e2791c58
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-25 15:13:04 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-25 18:50:53 +0900

    Ensure we retain the main fiber stack bounds.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5940

commit 983f2688db3cb856589b5bab5d09147d0a180be5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-25 18:47:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-25 18:48:01 +0900

    Hack to avoid leak checker

commit e77e233935007c418acdcac13de0e76e3b514fb0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-25 18:47:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-25 18:47:26 +0900

    [ruby/timeout] Hack to avoid leak checker

    https://github.com/ruby/timeout/commit/9a9b03b44c

commit fde4519af8762fccc8488d1972d984a1c44691f4
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-25 17:55:14 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-25 18:08:01 +0900

    [ruby/timeout] Bump version to 0.3.0

    https://github.com/ruby/timeout/commit/f69f954a94

commit 9a8fc4e04cc85b640c9ca569fe680850adc877fc
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-25 07:51:28 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-25 12:24:24 +0900

    Tidy up redundant returns.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5926

commit 42bcc629fba518215c844488223bc279006a4fa2
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-21 21:32:41 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-25 12:24:24 +0900

    Retain reference to blocking fibers.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5926

commit 901525b1079ac02da0122a76d8e4c3546a7f80f6
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-19 20:03:49 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-05-25 12:24:24 +0900

    Add support for address sanitizer for amd64 and arm64.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5926

commit d020334e9ee6d978bbed09ce96a03a6d6d2490a6
  Author:     nicholas a. evans <nicholas.evans@gmail.com>
  AuthorDate: 2022-04-07 07:31:48 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-25 06:34:28 +0900

    [ruby/reline] Workaround libncurses.so as a linker script

    This maybe isn't probably isn't the best approach, but it will allow
    `Fiddle::Terminfo.curses_dl` to work.  I documented more details about
    this in an issue on fiddle: https://github.com/ruby/fiddle/issues/107

    It is probably better to deal with it there.  But this is workaround is
    simpler.

    FYI: `reline` itself seems to be working just fine for me _without_
    loading ncurses.  But I wanted to be able to use `Reline::Terminfo` for
    my own projects. :)

    https://github.com/ruby/reline/commit/fd4bdb35e2

commit 0c36ba53192c5a0d245c9b626e4346a32d7d144e
  Author:     Mike Dalessio <mike.dalessio@gmail.com>
  AuthorDate: 2022-05-24 06:31:14 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-05-25 01:40:03 +0900

    Define unsupported GC compaction methods as rb_f_notimplement

    Fixes [Bug #18779]

    Define the following methods as `rb_f_notimplement` on unsupported
    platforms:

    - GC.compact
    - GC.auto_compact
    - GC.auto_compact=
    - GC.latest_compact_info
    - GC.verify_compaction_references

    This change allows users to call `GC.respond_to?(:compact)` to
    properly test for compaction support. Previously, it was necessary to
    invoke `GC.compact` or `GC.verify_compaction_references` and check if
    those methods raised `NotImplementedError` to determine if compaction
    was supported.

    This follows the precedent set for other platform-specific
    methods. For example, in `process.c` for methods such as
    `Process.fork`, `Process.setpgid`, and `Process.getpriority`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5934

commit 0de1495f358e9b892dfa63d4b74f59b1d2903703
  Author:     Mike Dalessio <mike.dalessio@gmail.com>
  AuthorDate: 2022-05-24 04:40:22 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-05-25 01:40:03 +0900

    Move compaction-related methods into gc.c

    These methods are removed from gc.rb and added to gc.c:

    - GC.compact
    - GC.auto_compact
    - GC.auto_compact=
    - GC.latest_compact_info
    - GC.verify_compaction_references

    This is a prefactor to allow setting these methods to
    `rb_f_notimplement` in a followup commit.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5934

commit 9fdef28687fba5e01d0ee6a2422dba9dd0f7d1b9
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-24 22:23:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-25 01:17:59 +0900

    [rubygems/rubygems] Show exception cause in bug report template

    https://github.com/rubygems/rubygems/commit/84b163e804

commit ae09fffbff4320455f7a2a260814416be4b0999a
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-25 00:38:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-25 00:38:14 +0900

    [ruby/fileutils] [DOC] Enhanced RDoc for ::cp_r (https://github.com/ruby/fileutils/pull/75)

    https://github.com/ruby/fileutils/commit/a4da433443

commit 633608ebd4cbdeea562dc4c608495134965a19a9
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-24 19:18:38 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-24 21:24:57 +0900

    [rubygems/rubygems] Fix crash when printing resolution conflicts on metadata requirements

    https://github.com/rubygems/rubygems/commit/b69e1e9374

commit 08cee2bf804d22dc51002b0df023aea7ec044d8d
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-05-24 16:39:45 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-05-24 17:50:49 +0900

    altstack is native thread's attr

    Move th->altstack to th->nt->altstack.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5936

commit 78785fb99041521fc5da01ffa6ab3f4f3936ce06
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-24 17:23:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-24 17:23:42 +0900

    [ruby/date] Constify gperf-generated table

    https://github.com/ruby/date/commit/6d7ab08ffc

commit 62e08d4b844a3f4f7a6dadc6083cd0585485931b
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-05-24 15:06:30 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-05-24 16:28:07 +0900

    remove `DEBUG_OUT()` macro

    This macro is no longer used ([GH-5933]).

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5935

commit d2033d0f06f6962031c51187c73e6bec8cae6e9b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-24 12:17:19 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-24 12:17:19 +0900

    [WASM] System initialization has no stack rewinding code to Asyncify

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5929

    Merged-By: nobu <nobu@ruby-lang.org>

commit 2d1e7dfc36d048003ec2cb09b30f850032fd9c42
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-05-24 04:06:03 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-05-24 10:06:51 +0900

    remove `-DTHREAD_DEBUG` rule

    (but it was already commented out)

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5933

commit 4111028a5cc229c314c2b93271d205206b207088
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-05-24 03:58:18 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-05-24 10:06:51 +0900

    use `RUBY_DEBUG_LOG` instead of `thread_debug`

    `thread_debug()` was introduced to print debug messages
    on `THREAD_DEBUG > 0` but `RUBY_DEBUG_LOG()` is more controllable.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5933

commit f3235ac09582c764086da28245a86753a100ba58
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-05-24 03:57:06 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-05-24 10:06:51 +0900

    add `rb_th_serial()`

    `rb_th_serial(th)` returns th's serial for debug print purpose.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5933

commit d9984f39d32f4cd692a35f4d803f7754ea262805
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-05-24 02:56:59 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-05-24 10:06:51 +0900

    remove `NON_SCALAR_THREAD_ID` support

    `NON_SCALAR_THREAD_ID` shows `pthread_t` is non-scalar (non-pointer)
    and only s390x is known platform. However, the supporting code is
    very complex and it is only used for deubg print information.

    So this patch removes the support of `NON_SCALAR_THREAD_ID`
    and make the code simple.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5933

commit 741ac503309f32b5c39073f46a205c99a31d4b0e
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-05-24 04:54:26 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-05-24 10:06:51 +0900

    `native_tls_get()`' should not check results

    caller should check the result of `native_tls_get()`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5933

commit 9c9c217045179869faf6caa7271bcb2e7c2e252c
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-24 07:57:48 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-24 07:57:52 +0900

    [ruby/fileutils] [DOC] Enhanced RDoc for ::cp (https://github.com/ruby/fileutils/pull/74)

    https://github.com/ruby/fileutils/commit/956b345ceb

commit 80ad0e751f4c9aa13a581b61b348c34ede7f3956
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-05-06 04:10:36 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-05-24 03:04:34 +0900

    Remove unnecessary module flag, add module assertions to other module flags

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5930

commit 37ccf91bfb73a225cc60413645788ea55e5e852a
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-05-24 01:44:17 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-05-24 02:22:41 +0900

    cleanup by `RUBY_DEBUG_LOG2` and `VM_ASSERT`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5931

commit 08b2f22c27bc83e326e6c28eba5bb19c21f04191
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-24 01:17:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-24 01:17:11 +0900

    [ruby/fileutils] Enhanced RDoc for ::ln_sf and ::link_entry (https://github.com/ruby/fileutils/pull/73)

    https://github.com/ruby/fileutils/commit/ff49055f8a

commit bc7f59957f0c8b4378b8fe29deeb9f641e82db20
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-23 22:32:50 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-23 22:34:10 +0900

    Make internal function `rb_main` static

commit 479884d5962518caa3345fb5c7bf22a26ad56a97
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-23 22:00:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-23 22:00:33 +0900

    [ruby/fileutils] [DOC] Enhanced RDoc for ::ln_s (https://github.com/ruby/fileutils/pull/72)

    https://github.com/ruby/fileutils/commit/db612c5e22

commit 663915ddf414e5a4dcb9f981449c1f9f79f1eada
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-05-23 18:45:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-23 20:51:17 +0900

    [rubygems/rubygems] Support the change of did_you_mean about Exception#detailed_message

    I am asking did_you_mean to use Exception#detailed_message to add
    "Did you mean?" suggestion instead of overriding #message method.

    https://github.com/ruby/did_you_mean/pull/177

    Unfortunately, the change will affect Gem::UnknownCommandError, which
    excepts did_you_mean to override #message method.

    This PR absorbs the change of did_you_mean.
    Gem::CommandManager now calls #detailed_message method to get a message
    string with "Did you mean?" suggestion from an exception.

    https://github.com/rubygems/rubygems/commit/8f104228d3

commit 4cf155e0075849bfd7e3f731b3432e274ab09629
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-21 01:22:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-23 18:23:22 +0900

    [ruby/net-http] [DOC] Get rid of a RDoc bug

    RDoc overrides class name by the assigned name unexpectedly when
    assigned using a qualified class path.

    https://github.com/ruby/net-http/commit/a7bded0407

commit 0293f8ca8e1fbe8e4202c2d211bb11f4e0ffa5fd
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-05-23 17:33:03 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-05-23 17:33:52 +0900

    Prevent a warning: `*' interpreted as argument prefix

commit 9134e761407eed2cc10893d53291f81b8270dee3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-23 11:04:42 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-23 11:04:43 +0900

    Support old Mac OS X

    `pthread_threadid_np` is available since Mac OS X 10.6, use
    `pthread_mach_thread_np` on older systems.

commit 218e8bdcb0f52e83ef295eb1661d9b1494fbbbf4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-22 16:49:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-22 16:49:48 +0900

    Disable usage of TLS unless available

    Thread-local storage is supported since Mac OS X 10.7.  Enable TLS
    only when the target version is enough.

commit e79983a44885db24b82f25e6fc29def347dd1a9f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-22 15:26:42 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-22 15:26:42 +0900

    Check if thread-local storage is supported on macOS

    We need thread-local storage on Clang, since 319afed20fba.

commit 009a51466885422f9d15c728f0e39a51908f58df
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-22 14:18:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-22 14:18:27 +0900

    Revert broken thread_pthread.c in 539459abda3

commit 539459abda3f4e086ca060620dee2586ebfed873
  Author:     Sergey Fedorov <vital.had@gmail.com>
  AuthorDate: 2022-05-22 12:02:03 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-22 12:02:03 +0900

    Ruby31: add support for Darwin ppc/ppc64 (#5927)

    * add coroutines for ppc & ppc64

    * fix universal coroutine to include ppc & ppc64

    * add powerpc*-darwin to configure.ac

    * fix thread_pthread for older systems

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 7e52533104f1b67c06c817384416fe011a25eaaf
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-21 22:58:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-21 22:58:45 +0900

    No fallback to default values

commit 6ba394ce30e88a502ea90dc23b6626f89441ac4b
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-05-21 16:07:14 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-21 16:07:14 +0900

    Update bundled gems list at 2022-05-21

commit 8b2ff2acddd2a39a69f3f61f5fdd5437e762c47c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-05-21 13:34:46 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-05-21 13:34:47 +0900

    Make the test class naming consistent

    forgot to commit this in ead96e7b44b98bef4896d836239345012821f1d2

commit ead96e7b44b98bef4896d836239345012821f1d2
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-05-21 13:31:00 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-05-21 13:32:55 +0900

    Rename test_jit to test_mjit

    to avoid confusion with YJIT

commit aef36bb9333bdafcc5af44dcd77942656f52b802
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-21 08:55:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-21 08:55:57 +0900

    [ruby/fileutils] Enhanced RDoc for #cp_lr (https://github.com/ruby/fileutils/pull/71)

    https://github.com/ruby/fileutils/commit/39772bccca

commit 6c7e2617d169417674859d0fed55acb19bec4a15
  Author:     ydah <13041216+ydah@users.noreply.github.com>
  AuthorDate: 2022-05-21 06:24:41 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-21 08:47:53 +0900

    [ruby/optparse] Fix typo in documentation

    - "hypnen" -> "hyphen"
    - "hadler" -> "handler"

    https://github.com/ruby/optparse/commit/e70e689ded

commit 50bad7159a8e1f9846f37421c941f6fa8f087591
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-05-21 08:39:37 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-21 08:39:37 +0900

    Special-case jit_guard_known_class for strings. This can remove (#5920)

    runtime guard-checks for String#to_s, making some blocks too
    short to invalidate later. Add NOPs in those cases to reserve space.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit a97fbc108bd23e669a27356be83c1a515d469af0
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-05-20 18:00:49 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-05-21 08:35:04 +0900

    extend `RUBY_DEBUG_LOG_FILTER` to reject words

    support reject words with `-word` like
    RUBY_DEBUG_LOG_FILTER=-foo,-bar,baz,boo`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5924

commit 3bceae0fad495312493f8c627da27b0b0701a54d
  Author:     Yudai Takada <13041216+ydah@users.noreply.github.com>
  AuthorDate: 2022-05-21 06:45:46 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-21 06:45:46 +0900

    Fix typo in README (#5925)

    "iteretor" -> "iterator"

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit 65122d09d515c9183e643d5f7f31d24251b149ed
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-02-21 20:17:02 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-05-21 03:31:59 +0900

    [Feature #18595] Alias String#-@ as String#dedup

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5583

commit 8fa9e168beefbb95415321632cff64e717efdc5b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-20 23:02:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-21 00:41:54 +0900

    [ruby/net-http] Make the recommended name formal

    `HTTPServerException` is the name deprecated since years ago.

    https://github.com/ruby/net-http/commit/b3028fef5a

commit 4146fd284b3c3995cf6638b239625c530c6da875
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-20 19:48:21 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 19:48:28 +0900

    Rewrite with assert_ractor for multiple ractor environment

commit a080651f4625207dc847962cff3a6fc6a7da4810
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-09 15:57:09 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-20 19:05:35 +0900

    Disable GMP by -DUSE_GMP=0

commit b6649797ee8cc15330c2c050ba33d09859048996
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-20 18:52:28 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 18:53:16 +0900

    Picked the missing test file from https://github.com/ruby/did_you_mean/commit/8faba54b2d3ec9aa570691775f143801308c5b2f

commit bcc9451bbff6cd4e136339f195a9ef381df4e9a2
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-20 18:45:14 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 18:45:14 +0900

    Merge JRuby implementation for stringio and io-wait

commit c83ec3aba72aeb50df3b3188b6a009e93f11494a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-20 18:36:01 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 18:36:01 +0900

    Merge https://github.com/ruby/pathname/pull/8 for pathname

commit bcdbfe4b6e09c0076571addd1d0dd3421bde146d
  Author:     ima1zumi <mariimaizumi5@gmail.com>
  AuthorDate: 2022-04-12 22:20:49 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 17:49:15 +0900

    [ruby/reline] Require Ruby >= 2.6

    fix https://github.com/ruby/reline/pull/428

    https://github.com/ruby/reline/commit/dae9eca323

commit 1d9f2a450410e57c5d7fbfe078872a95eb3ec82a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2019-10-31 01:09:18 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 17:49:15 +0900

    [ruby/racc] Show diffs

    https://github.com/ruby/racc/commit/0b679e2f69

commit 104fb83ccd23b132e88d259a4f70c46649dad608
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-21 17:46:26 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 17:49:14 +0900

    [ruby/io-nonblock] Remove unnecessary files from the gem

    https://github.com/ruby/io-nonblock/commit/3850a4c7ac

commit 0dfd5d19f3f98b596ad524e4369086fc031065cd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-21 17:03:11 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 17:49:14 +0900

    [ruby/io-nonblock] Rename `io_nonblock_mode` and extract `set_fcntl_flags`

    https://github.com/ruby/io-nonblock/commit/22f08574df

commit 589f1c1d55433cbff3e8c8dab471fa8f88371ae8
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-07 03:07:49 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 17:49:14 +0900

    [ruby/tempfile] Enhanced RDoc for ::new and ::create (https://github.com/ruby/tempfile/pull/10)

    https://github.com/ruby/tempfile/commit/a5e53aa82a

commit 6923dd932bd8115eeeed49e3624e31305a3679ea
  Author:     Olle Jonsson <olle.jonsson@gmail.com>
  AuthorDate: 2022-05-07 00:30:21 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 17:49:14 +0900

    [ruby/tempfile] Drop unused gemspec directives

    This gem exposes no executables.

    https://github.com/ruby/tempfile/commit/07fde5fe14

commit 9245b28d34c373e2b17dfeaf62613d46080bb61d
  Author:     Florian Frank <flori@ping.de>
  AuthorDate: 2022-05-16 21:20:48 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 17:49:13 +0900

    [flori/json] Bump version to 2.6.2

    https://github.com/flori/json/commit/5de358f655

commit a15d0e267a8a429cf2a2a4358080666ee2260526
  Author:     Andrew Bromwich <a.bromwich@gmail.com>
  AuthorDate: 2022-04-20 21:30:35 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 17:49:13 +0900

    [flori/json] Fix parser bug for empty string allocation

    When `HAVE_RB_ENC_INTERNED_STR` is enabled it is possible to
    pass through a null pointer to `rb_enc_interned_str` resulting
    in a segfault

    Fixes https://github.com/flori/json/pull/495

    https://github.com/flori/json/commit/b59368a8c2

commit 767f3904ee2a15575c292d89578de7669f169346
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2021-12-02 16:42:41 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 17:49:13 +0900

    [flori/json] Doc: Improve documentation on JSON#parse and JSON#parse!

    https://github.com/flori/json/commit/75ada77b96

    Co-authored-by: Bruno Gomes da Silva <brunojabs@gmail.com>

commit a37051ef3b455a808b32d72561d50b8610d917ce
  Author:     Charles Oliver Nutter <headius@headius.com>
  AuthorDate: 2021-12-02 00:13:13 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 17:49:13 +0900

    [flori/json] Remove unknown keyword arg from DateTime.parse

    This snuck in while addding tests for the `create_additions`
    feature. Caught by JRuby when we added the `limit` option to the
    Date/DateTime parsing methods, which causes this to be rejected as
    an unknown keyword.

    https://github.com/flori/json/commit/b1007dff66

commit 37ea07d59be53bd447d2d87d9cd56f94d41a40dd
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-05-20 16:04:10 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-05-20 17:37:59 +0900

    setup vm->main_ractor before `Init_native_thread()`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5922

commit eab99b1d4b61fb85d994534826922f96cd14ae58
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-05-20 15:47:20 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-05-20 17:37:46 +0900

    `rb_thread_t::serial` for debug

    `rb_thread_t::serial` is auto-incremented serial number for
    threads and it can overflow, it means the serial is not a ID
    for each thread, it is only for debug print.

    `RUBY_DEBUG_LOG` shows this information.

    Also skip EC related information if EC is NULL. This patch
    enable to use `RUBY_DEBUG_LOG` without setup EC.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5921

commit aeea88174d88264469b406003765c7efdcd53edf
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-20 17:15:15 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 17:32:19 +0900

    Merge RubyGems and Bundler HEAD

      https://github.com/rubygems/rubygems/commit/125415593ead9ab69a9f0bb5392c9d7ec61b1f51

commit bd8df25cdc8e0e94cbc2eacc492a764e6b90833c
  Author:     Jean byroot Boussier <jean.boussier+github@shopify.com>
  AuthorDate: 2022-01-21 19:04:56 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-20 17:32:18 +0900

    [ruby/did_you_mean] Fix `frozen_string_literal is ignored after any tokens` warning. (https://github.com/ruby/did_you_mean/pull/172)

    ```
    did_you_mean/formatters/verbose_formatter.rb:5: warning: `frozen_string_literal' is ignored after any tokens
    ```

    https://github.com/ruby/did_you_mean/commit/531760f323

commit ec7b42eb774222b31f6621413d3b7714f049cfb2
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-20 17:23:45 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-20 17:23:45 +0900

    [DOC] Add a note to clarify binary flags to `IO.new`

    Try to make it more clear that the `File::BINARY` integer flag, and the
    `b` string suffix are not equivalent.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5923

    Merged-By: nobu <nobu@ruby-lang.org>

commit 6850e3c42ec85c49cc359539ca5f37831935ae74
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-10 17:58:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-20 07:05:19 +0900

    [rubygems/rubygems] Fix locale dependent spec failure

    https://github.com/rubygems/rubygems/commit/1fd818743e

commit b8a268e293f89338c9ad5af8cf8e9e350c112c72
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-05-20 00:52:52 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-20 00:52:52 +0900

    YJIT: Add opt_succ (#5919)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 3d6fd162a469f9bfa4afc696ef8b8d8536a38507
  Author:     Daisuke Fujimura (fd0) <booleanlabel@gmail.com>
  AuthorDate: 2022-04-16 12:41:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-19 17:15:30 +0900

    Undefine RUBY_DLN_CHECK_ABI on cygwin

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5810

commit 61a54d51801a3bc1f829c32ea0688dc18bcad81f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-19 17:07:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-19 17:07:56 +0900

    [DOC] Re-markup as Markdown

commit ee3b61a44fe73dc577f84d27a1de5dfca548a04e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-19 15:48:27 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-19 15:48:28 +0900

    Removed subversion section because there is no active branch for svn.

commit 75fcfb14169db9de7842eba0201b86a37e58a074
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-05-15 20:51:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-19 07:19:42 +0900

    [ruby/timeout] Remove redundant done? check

    * It's already checked inside #interrupt.

    https://github.com/ruby/timeout/commit/5f43254f81

commit 240ac9eaa8d3dab8f7dd5f29f67c7ee8d4d05d86
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-05-15 20:49:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-19 07:19:41 +0900

    [ruby/timeout] Synchronize all accesses to @done

    * So it is trivially correct.
    * Performance seems the same overall.

    https://github.com/ruby/timeout/commit/5e0d8e1637

commit 354cd6f210c966327b1adffc0b81990827b77a0d
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-05-15 20:43:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-19 07:19:40 +0900

    [ruby/timeout] Handle Timeout + fork and add test for it

    https://github.com/ruby/timeout/commit/4baee63b9b

commit 89fbec224d8e1fa35e82bf2712c5a5fd3dc06b83
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-05-12 23:20:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-19 07:19:39 +0900

    [ruby/timeout] Reimplement Timeout.timeout with a single thread and a Queue

    https://github.com/ruby/timeout/commit/2bafc458f1

commit 97c12c5f692d176278dd6445a751788568b54e4d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-17 23:55:32 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-18 14:33:00 +0900

    Clean intermediate object files

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5914

commit 9a0f5a8edc9c1a7b3d1f85fb1c02e137520cfe1a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-17 23:47:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-18 14:33:00 +0900

    Verbose mode on libyjit merge

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5914

commit 9b3ed5a23fba68d364f5e2eea654fd75ce0ea0db
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-17 18:41:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-18 14:33:00 +0900

    Extract YJIT_LIBS directly without copying

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5914

commit 3db8db8a329d6bcc46b5aaf41571309a489540c7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-17 12:40:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-18 14:33:00 +0900

    `AR` does not need the absolute path

    Still use `find` to get rid of potential ARGV limit overflow, since
    rustc-genrated object file names are mangled and very long.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5914

commit c478a3c0a9179298b5ae332268e1e94ff9c912bd
  Author:     Kaíque Kandy Koga <kaiquekandykoga@gmail.com>
  AuthorDate: 2022-05-18 11:32:13 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-18 11:32:13 +0900

    [DOC] Use `make gdb-ruby` and `make lldb-ruby` in doc/contributing/building_ruby.md

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5908

    Merged-By: nobu <nobu@ruby-lang.org>

commit 6b6d7df39db2447dd675b2558aab69d351f2ff56
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-16 19:42:54 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-18 10:03:48 +0900

    [ruby/psych] Prepare to develop 5.0.0

    https://github.com/ruby/psych/commit/c3b5183f42

commit 3ec066334ce60d7695051c8c40df73343860ec35
  Author:     MSP-Greg <Greg.mpls@gmail.com>
  AuthorDate: 2022-03-30 00:10:01 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-18 10:03:47 +0900

    [ruby/psych] [CI] Add/update 'rake install', update Psych version for Ruby 3.1 gem install

    https://github.com/ruby/psych/commit/2fa5e190b5

commit e658da94086893034c0bafa050f36751b206a48a
  Author:     Kouhei Yanagita <yanagi@shakenbu.org>
  AuthorDate: 2022-05-17 18:47:41 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-18 07:12:29 +0900

    [ruby/irb] Fix documents for .irbrc path

    https://github.com/ruby/irb/commit/af99c01b0d

commit 11af23ee923858fbcec18f2d1365296fdfe24dc2
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-17 20:44:14 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-17 20:44:14 +0900

    Move feature deletion from GC mark to `autoload_delete`. (#5912)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 60d45b2ee86a80e248c3bff0c90c981ed2168ac3
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-17 16:12:36 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-17 16:12:36 +0900

    Restore implicit relationship between `autoload_const` and `autoload_data` during GC. (#5911)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 2411f0ad8cf608d6aae221ce4d803b5c5271795a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-17 12:11:18 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-17 12:14:32 +0900

    Set `target_os` for a7577dbfd3ea53cccf7aaf94208069784ad17791

commit f2dc97294086c31604a45ee350c4fa5d51762f45
  Author:     Kazuhiro NISHIYAMA <znz@users.noreply.github.com>
  AuthorDate: 2022-05-16 23:40:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-16 23:43:04 +0900

    [ruby/set] Fix a typo

    https://github.com/ruby/set/commit/71a876ae81

commit f626998c4fa62973cac3a027597f97cdacd0d3c5
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-16 21:50:02 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-16 21:50:02 +0900

    Delete autoload data from global features after autoload has completed. (#5910)

    * Update naming of critical section assertions macros.

    * Improved locking for autoload.

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit a7577dbfd3ea53cccf7aaf94208069784ad17791
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-16 17:56:32 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-16 19:27:37 +0900

    `annobin` works only when targeting Fedora

    And hopefully for other Linux.  Since it is not run on the build os,
    `TEST_RUNNABLE` is not suitable for this case.

commit 641c3830df8177b38fcfca33d3a0ece8a2c1e7d2
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-13 22:56:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-16 17:24:14 +0900

    [rubygems/rubygems] Use `Array#concat` in `SpecSet#for` to save memory

    On `rails/rails` repository Gemfile, running the following script

    ```
    # script.rb
    require "bundler/setup"
    ```

    #### Before

    ```
    ➜  rails git:(main) ✗ BUNDLER_VERSION=2.4.0.dev ruby-memory-profiler --pretty --no-detailed --allocated-strings=0 --retained-strings=0 script.rb
    Total allocated: 24.37 MB (207937 objects)
    Total retained:  2.98 MB (34152 objects)
    ```

    #### After

    ```
    ➜  rails git:(main) ✗ BUNDLER_VERSION=2.4.0.dev ruby-memory-profiler --pretty --no-detailed --allocated-strings=0 --retained-strings=0 script.rb
    Total allocated: 22.27 MB (206856 objects)
    Total retained:  2.98 MB (34152 objects)
    ```

    https://github.com/rubygems/rubygems/commit/2ea2523afd

    Co-authored-by: Josh Nichols <josh.nichols@gusto.com>

commit c380aac19d097f1d38d2299fe3f64567b42fb55d
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-13 18:26:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-16 17:24:14 +0900

    [rubygems/rubygems] Improve `bundler/setup` performance again

    On a different patch, it was noticed Ngam Pham that we are calling
    `LazySpecification#hash` many times, and simply memoizing that led to a
    very considerable performance improvement in his app.

    I noticed though that we shouldn't be calling `LazySpecification#hash`
    that many times, and I located the culprit at `SpecSet#for` where we
    were deduplicating the partial aggregated result on every iteration. It
    is enough to do it just once at the end.

    This leads on a 12% speedup on Rails repository Gemfile vs the previous
    8% I was getting from memoizing `LazySpecification#hash`. Also, after
    this patch memoizing `LazySpecification#hash` has no effect in
    performance anymore.

    https://github.com/rubygems/rubygems/commit/68d00a9edd

    Co-authored-by: Ngan Pham <ngan@users.noreply.github.com>

commit dccfff943c3ea9defd91647cfa3fd8714041bb5a
  Author:     Jun Aruga <jaruga@redhat.com>
  AuthorDate: 2022-05-10 23:34:08 +0900
  Commit:     Jun Aruga <junaruga@users.noreply.github.com>
  CommitDate: 2022-05-16 17:10:16 +0900

    Add `make test-annocheck` to detect security issues.

    * Note that as the annocheck binary package is not available on Ubuntu, and it
      is working in progress in Debian, the script uses Fedora container, and
      it requires docker or podman command.
      https://www.debian.org/devel/wnpp/itp.en.html
      https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=926470
    * .github/workflows/compilers.yml: Add "gcc-11 annocheck" case.
      To pass the CI, set `TEST_ANNOCHECK_OPTS: "--skip-pie --skip-notes"` for now.
      See <https://bugs.ruby-lang.org/issues/18061>.
    * Skip MJIT tests in case of annocheck case.
      The MJIT tests fail in the annocheck case.
      See <https://bugs.ruby-lang.org/issues/18781>.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5900

commit 774b9e27ae22ff54daef434827c449050c89c951
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-13 16:01:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-16 12:24:10 +0900

    [ruby/racc] [DOC] Remove stale `Object::ParseError` documentation

    https://github.com/ruby/racc/commit/4ecc13c9cb

commit 32de6097b2b5d8394b3a1399e13d309444697954
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-15 13:07:12 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-15 13:07:12 +0900

    Fix various autoload race conditions. (#5898)

    * Add RUBY_VM_CRITICAL_SECTION for detecting unexpected context switch.

    * Prevent race between GC mark and autoload setup.

    * Protect race on autoload state.

    * Avoid potential race condition when allocating `autoload_featuremap`.

    * Add NEWS entry for autoload fixes.

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 48002ff1877e2fedb5d3893eec4ea633b87ea22f
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-14 22:38:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-14 22:38:22 +0900

    [ruby/fileutils] [DOC] Enhanced RDoc for #ln (https://github.com/ruby/fileutils/pull/69)

    Enhanced RDoc for #ln

    https://github.com/ruby/fileutils/commit/79fc67f03f

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

commit 708e839dee57bc5ef8f5b21fb4fa620e89caeb52
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-05-14 04:24:05 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-05-14 05:26:41 +0900

    Fix compiler warning when USE_RVARGC=0

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5909

commit 9639dc91d936a637db56c19664a46c024059bc40
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-14 05:02:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-14 05:02:18 +0900

    [ruby/logger] [DOC] Enhanced RDoc for Logger (https://github.com/ruby/logger/pull/77)

    Enhanced RDoc for Logger

    https://github.com/ruby/logger/commit/c601ed0370

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

commit 09c72f41ceeb6933e3b1da4eb581c4c22e9f1b89
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-05-13 22:32:18 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-05-13 23:47:50 +0900

    Print function name in backtrace when available

    If we don't have `saddr` but have `sname` we should output `sname`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5906

commit 55ba41440543ed10748a2ed2bdc77b6553bf0b7b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-13 04:42:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-13 22:52:59 +0900

    [ruby/logger] Update lib/logger.rb

    https://github.com/ruby/logger/commit/a5a2f2da4a

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

commit 1f1283b927addb8b55c4133716b291e0f237df38
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-13 03:21:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-13 22:52:58 +0900

    [ruby/logger] Update lib/logger.rb

    https://github.com/ruby/logger/commit/e6f2c64fc6

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

commit 45a92cc4fe2dddff6d628bae6521094542abd338
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-13 03:21:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-13 22:52:57 +0900

    [ruby/logger] Update lib/logger.rb

    https://github.com/ruby/logger/commit/3dc5a8d7a4

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

commit 00635f8d414f60b291d46f8ebd1d93d03c7bab1f
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-13 03:20:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-13 22:52:56 +0900

    [ruby/logger] Update lib/logger.rb

    https://github.com/ruby/logger/commit/98919e09e5

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

commit 2427a11b35fc8682c550dab968e3bc99412d0806
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-12 23:49:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-13 22:52:55 +0900

    [ruby/logger] Update lib/logger.rb

    https://github.com/ruby/logger/commit/073a892ad9

    Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com>

commit b9311e646e8b6aa9d4f576506456ee50c5444029
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-12 23:48:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-13 22:52:55 +0900

    [ruby/logger] Update lib/logger.rb

    https://github.com/ruby/logger/commit/6d91281f7f

    Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com>

commit e36a794f1a274213d1d2ec30690fa9bbcecd78e7
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-12 23:48:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-13 22:52:54 +0900

    [ruby/logger] Update lib/logger.rb

    https://github.com/ruby/logger/commit/34c0ba8baa

    Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com>

commit 90d8b7219e26135cb1003ebfc5884f132ba39867
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-12 21:27:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-13 22:52:53 +0900

    [ruby/logger] Enhanced RDoc for Logger

    https://github.com/ruby/logger/commit/16556d06d1

commit 4c9ddaac0df317e18665f6d07387191d457cc093
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-11 21:17:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-13 15:23:56 +0900

    [rubygems/rubygems] Fix `Gemfile.lock` versions leaking to `bundler/inline` install output

    The lockfile is completely ignored in inline mode, yet the previous
    output would suggest it wasn't.

    https://github.com/rubygems/rubygems/commit/763125a745

commit 4962e5c4178b3f4dcc1444327129dbd0943bdc01
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-11 21:17:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-13 15:23:56 +0900

    [rubygems/rubygems] Normalize parameter name

    The other sources use `options` which reads better.

    https://github.com/rubygems/rubygems/commit/a672f9d602

commit 2d1032075a4654b8b54dde96424f299f7f29f9d6
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-05-13 08:44:17 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-05-13 08:44:17 +0900

    Stop `build_extensions` when DESTDIR set

    Try to fix `make install without root privilege` failures on snapshot CIs.

    example: https://github.com/ruby/actions/actions/runs/2315349280

commit ebaf56c013fa3c24bc680cd7482845b9ed30cda8
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-05-04 07:25:03 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-05-13 06:34:18 +0900

    YJIT: Implement getblockparam

    This implements the getblockparam instruction.

    There are two cases we need to handle depending on whether or not
    VM_FRAME_FLAG_MODIFIED_BLOCK_PARAM is set in the environment flag.

    When the modified flag is unset, we need to call rb_vm_bh_to_procval to
    get a proc from our passed block, save the proc in the environment, and
    set the modified flag.

    In the case that the modified flag is set we are able to just use the
    existing proc in the environment.

    One quirk of this is that we need to call jit_prepare_routine_call early
    and ensure we update PC and SP regardless of the branch taken, so that
    we have a consistent SP offset at the start of the next instruction.

    We considered using a chain guard to generate these two paths
    separately, but decided against it because it's very common to see both
    and the modified case is basically a subset of the instructions in the
    unmodified case.

    This includes tests for both getblockparam and getblockparamproxy which
    was previously missing a test.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5881

commit a6ce73efecfe3ded9d0c642a3309f43ad260939f
  Author:     Stan Lo <stan001212@gmail.com>
  AuthorDate: 2022-05-13 03:22:00 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-05-13 04:19:51 +0900

    Add documentation section to README

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5904

commit f07a0e79a225190e3c51d9306af3f8c515e8e41f
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-05-13 04:08:35 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-13 04:08:35 +0900

    YJIT: Fix getting the EP with registers other than RAX (#5882)

    Before this commit we were accidentally clobbering RAX.  Additionally,
    since this function had RAX hardcoded then the function may not have
    worked with registers other than RAX.

    Co-authored-by: John Hawthorn <john@hawthorn.email>

  Notes:
    Merged-By: jhawthorn <john@hawthorn.email>

commit 75223433512d46f94fba5c0cb6f585fff5e9eee7
  Author:     Jun Aruga <jaruga@redhat.com>
  AuthorDate: 2022-05-10 00:13:13 +0900
  Commit:     Jun Aruga <junaruga@users.noreply.github.com>
  CommitDate: 2022-05-12 19:36:10 +0900

    .github/workflows/compilers.yml: Add configure --enable-mkmf-verbose case.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5879

commit 019cbded90ade76fdb87d02bd4d444724429fc92
  Author:     Jun Aruga <jaruga@redhat.com>
  AuthorDate: 2022-04-22 05:59:59 +0900
  Commit:     Jun Aruga <junaruga@users.noreply.github.com>
  CommitDate: 2022-05-12 19:36:10 +0900

    mkmf: Add a configure option to set verbose mode (V=1 or 0) in mkmf.rb.

    Note this change is only for `configure.ac`, not for Windows using
    `win32/configure.bat`.

    ```
    $ ./configure --help | grep mkmf
      --enable-mkmf-verbose   enable verbose in mkmf
    ```

    Run the following command to enable the mkmf verbose mode.

    ```
    $ ./configure --enable-mkmf-verbose
    $ grep MKMF_VERBOSE config.status
    S["MKMF_VERBOSE"]="1"
    ```

    In this mkmf verbose mode, when compiling a native extension, the
    `rake compile` prints the compiling commands such as
    "gcc -I. <...> path/to/file" instead of "compiling path/to/file".

    ```
    $ git clone https://github.com/deivid-rodriguez/byebug.git
    $ cd byebug
    $ bundle install --standalone
    $ bundle exec rake compile
    ...
    gcc -I. <...> path/to/file
    ...
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5879

commit 40ca208a6db8d3a53cc016caab2aa8301bafdac2
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2021-07-28 19:00:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-12 18:19:17 +0900

    [ruby/uri] Improve URI.register_scheme tests and automatically upcase the given scheme

    * Also add docs and mention current limitations.
    * For reference, https://stackoverflow.com/a/3641782/388803 mentions the
      valid characters in schemes.

    https://github.com/ruby/uri/commit/4346daac75

commit fbebfe1697938a684f460cd28af36cf1f056513c
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-03-05 07:05:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-12 14:54:37 +0900

    [ruby/uri] Add URI::Generic#decoded_#{user,password}

    URI::Generic#{user,password} return the encoded values, which are
    not that useful if you want to do authentication with them.
    Automatic decoding by default would break backwards compatibility.
    Optional automatic decoding via a keyword to URI.parse would
    require threading the option through at least 3 other methods, and
    would make semantics confusing (user= takes encoded or unencoded
    password?) or require more work.  Thus, adding this as a separate
    method seemed the simplest approach.

    Unfortunately, URI lacks a method for correct decoding.  Unlike in
    www form components, + in earlier parts of the URI such as the
    userinfo section is treated verbatim and not as an encoded space.
    Add URI.#{en,de}code_uri_component methods, which are almost the
    same as URI.#{en,de}code_www_form_component, but without the
    special SP => + handling.

    Implements [Feature #9045]

    https://github.com/ruby/uri/commit/16cfc4e92f

commit 054ae999dc5dfcb182f407bffceec5a52ae7ff6c
  Author:     Frank Schmitt <frank@frankschmitt.org>
  AuthorDate: 2022-02-16 08:48:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-12 10:06:57 +0900

    [ruby/uri] Update file.rb

    The module here is called `URI`, so it's probably reasonable to expect a requirement for the path to be RFC3986-compliant, but on the other hand, the class is called `File`, so it might be reasonable to expect that a path produced by e.g. the `File` class would be consumable by its `build` method (this fails if the filename contains e.g. a space).

    https://github.com/ruby/uri/commit/ef79789b83

commit 9f9a0940ddd6dd9cec03a9e13c543cea14f8d38a
  Author:     Alexey Mostovoy <1931904+AMurkin@users.noreply.github.com>
  AuthorDate: 2022-05-12 05:26:10 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-12 07:53:46 +0900

    Quick markup fix

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5902

commit f6cc4b9737a75bf3883bb7f86aa8acffaa1710cf
  Author:     Kaíque Kandy Koga <kaiquekandykoga@gmail.com>
  AuthorDate: 2022-05-12 05:32:33 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-12 07:53:17 +0900

    Write Thread instead of Threade

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5903

commit 019169346ab9c8ec940ebfd41c5b66347fa0f16b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-12 03:33:30 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-12 04:11:51 +0900

    [ruby/fileutils] Update lib/fileutils.rb

    https://github.com/ruby/fileutils/commit/4771925fee

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

commit dbca60c58d3bd34a855b10a40e8f086296efe426
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-05-12 00:48:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-12 04:11:50 +0900

    [ruby/fileutils] Enhanced RDoc for FileUtils

    https://github.com/ruby/fileutils/commit/a0ea474214

commit 4da0f7a7f565c252f7a031472b796410ab8d5ac1
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-05-11 22:14:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-12 02:54:14 +0900

    [ruby/rdoc] Fix dead link in RDoc::Markup

    https://github.com/ruby/rdoc/commit/521c9ebd29

commit e88ada469976e1dad653748bd2c0bedca9e30981
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-05-12 00:20:21 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-12 00:20:21 +0900

    Ruby shovel operator (<<) speedup. (#5896)

    For string concat, see if compile-time encoding of strings matches.
    If so, use simple buffer string concat at runtime. Otherwise, use
    encoding-checking string concat.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit c00feffb46ac646605adc277b5454e6b067e2d8a
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-05-10 00:45:50 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-05-11 23:59:24 +0900

    Improve documentation on contributing to Ruby

    co-authored-by: Peter Zhu <peter@peterzhu.ca>
    co-authored-by: Stan Lo <stan001212@gmail.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5899

commit becafe1efb7bf8bf5a324a6005b24e133c0f69a8
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-05-11 06:13:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-11 23:00:04 +0900

    [ruby/fileutils] Enhanced RDoc for FileUtils

    https://github.com/ruby/fileutils/commit/c38fd02372

commit dde9db64e08916ddc2bcb4c64de8f53a3def9e87
  Author:     BurdetteLamar <burdettelamar@yahoo.com>
  AuthorDate: 2022-05-11 02:48:53 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-11 23:00:03 +0900

    [ruby/fileutils] Enhanced RDoc for FileUtils

    https://github.com/ruby/fileutils/commit/7b60f2d63b

commit 8f1a8e68bae29bed1052d6b518e1fb4a01e53cbd
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-06 16:22:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-11 16:55:49 +0900

    [rubygems/rubygems] Fix error message on metadata mismatches

    Previously we were removing not installable specs. However, if those are
    the only ones, that would result in a bad error message. If we still
    choose them as a last resort, Bundler will later check metadata right
    before installing a give a proper error.

    This is a regression of https://github.com/rubygems/rubygems/commit/565549260be5 and the
    fix is to revert that commit.

    https://github.com/rubygems/rubygems/commit/bc18912257

commit c582d9862a8f9929a2b1e3392bc6c178629f4852
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-11-12 20:11:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-11 16:55:48 +0900

    [rubygems/rubygems] Tweak negative expectations

    The follow a tweak on the yank message.

    https://github.com/rubygems/rubygems/commit/f6817bfe58

commit 54b1548760d3a159051247313256175904c6f36e
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-01 16:23:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-11 16:55:47 +0900

    [rubygems/rubygems] Extract a `next_ruby_minor` helper method for specs

    https://github.com/rubygems/rubygems/commit/66eae0ef1d

commit a85cdb5a6e7d735b03eb5ae80e5ac0c5424eb259
  Author:     Kaíque Kandy Koga <kaiquekandykoga@gmail.com>
  AuthorDate: 2022-05-10 13:07:16 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-10 13:07:16 +0900

    Write have instead of have have [ci skip]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5897

    Merged-By: nobu <nobu@ruby-lang.org>

commit d0983af61c115ba2793df1a840b8a531317c5acf
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-10 10:15:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-10 10:15:27 +0900

    Fix the order of assert_eqaul and remove unused variables

commit c7d2247e35bc095a0e1fb7dcca9af36d71f9408c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-25 18:48:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-10 09:24:28 +0900

    Honor --with-thread option to enable pthread

commit 40be4d4263e77b6ce31144b1f49892c11ff53bbd
  Author:     MSP-Greg <Greg.mpls@gmail.com>
  AuthorDate: 2021-12-26 03:12:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-10 03:20:34 +0900

    [ruby/psych] tr is typically 4 to 5 times faster than gsub

    https://github.com/ruby/psych/commit/8533be8fe7

commit 85479b34f76d5b426c2a8224d8ed6d8c2ad81ca2
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-05-07 02:43:18 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-05-09 21:45:24 +0900

    Don't allocate new page on finish sweeping

    We don't need to allocate a new page in gc_sweep_finish_size_pool.
    It can be allocated when needed.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5885

commit e28e9c63c64fc501751ae726e31c28b83fa08b4d
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-05-06 23:53:48 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-05-09 21:45:24 +0900

    Fix heap_extend_pages when total_slots is 0

    Some size pools may not have any pages/slots, so total_slots is 0. This
    causes a divide-by-zero in the calculation. This commit adds a special
    case to catch the case when total_slots is 0 and returns the number of
    pages for heap_init_slots.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5885

commit f7d480378adcb1452daf767d8cc6960f881f356b
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-05-06 22:41:05 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-05-09 21:45:24 +0900

    Grow size pools with no or few slots

    If the size pool has no or few pages/slots, then min_free_slots will
    be a very small number (or even 0). Then the heap won't be eligible to
    grow, causing GC thrashing or infinite loops.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5885

commit b3f3cb0c383408ea2a6385e6a61f68f371e83497
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-05-06 22:37:21 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-05-09 21:45:24 +0900

    Call gc_sweep_finish_size_pool on size pools with no pages

    Size pools with no pages won't be swept so gc_sweep_finish_size_pool
    will never be called on it, but gc_sweep_finish_size_pool must be called
    to grow the size pool.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5885

commit 033e58cf2c6829e14fa38e0a364911361090aa83
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-05-04 22:50:48 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-05-09 21:45:24 +0900

    Fix gc_page_sweep when last bitmap plane is not used

    Depending on alignment, the last bitmap plane may not used. Then it will
    appear as if all of the objects on that plane is unmarked, which will
    cause a buffer overrun when we try to free the object. This commit
    changes the loop to calculate the number of planes used
    (bitmap_plane_count).

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5885

commit a41fbc2c95cc2f7ba9071aca091d8262a8f2cf60
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-05-04 22:05:22 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-05-09 21:45:24 +0900

    Increase SIZE_POOL_COUNT to 5

    Having more size pools will allow us to allocate larger objects
    through Variable Width Allocation.

    I have attached some benchmark results below.

    Discourse:
      On Discourse, we don't see much change in response times. We do see
      a small reduction in RSS.

      Branch RSS: 377.8 MB
      Master RSS: 396.3 MB

    railsbench:
      On railsbench, we don't see a big change in RPS or p99 performance.
      We see a small increase in RSS.

      Branch RPS: 815.38
      Master RPS: 811.73

      Branch p99: 1.69 ms
      Master p99: 1.68 ms

      Branch RSS: 90.6 MB
      Master RSS: 89.4 MB

    liquid:
      We don't see a significant change in liquid performance.

      Branch parse & render: 29.041 I/s
      Master parse & render: 29.211 I/s

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5885

commit 00e5e827b19e3b385fdad0710de71d4402431318
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-05-09 04:22:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-09 21:25:23 +0900

    [rubygems/rubygems] Cleanup old legacy code

    https://github.com/rubygems/rubygems/commit/531d6b5fee

commit ecf32dbfc03c39a75fdd8a4e4dc3cb987db44516
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-09 18:20:08 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-09 18:20:31 +0900

    [ruby/net-http] Bump version to 0.2.2

    https://github.com/ruby/net-http/commit/992d07cb41

commit a370eb5a6360a789b7c5249d97169f6c80e47850
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-09 18:02:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-09 18:19:06 +0900

    [ruby/io-wait] bump up to 0.2.3

    https://github.com/ruby/io-wait/commit/f59d1d12e0

commit 30632efeaad6f5837102ff4229777e6a7cd392b9
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-05-09 16:47:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-09 16:47:28 +0900

    [ruby/stringio] bump up to 3.0.3

    https://github.com/ruby/stringio/commit/64f225bf00

commit fbbe7ac7e3256e78d01e0b92d74611927e50f867
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-05-09 16:35:40 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-09 16:36:01 +0900

    [ruby/stringio] Bump version

    https://github.com/ruby/stringio/commit/b79152d08f

commit cea34bd8082784051542131ddf8a353f5656ac88
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-09 14:19:01 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-09 14:19:01 +0900

    Add basic binary operators (and, or, xor, not) to `IO::Buffer`. (#5893)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit df0bcb3385746e010e100dfb4e66a25dddc2c8fd
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-05-09 10:20:25 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-05-09 10:20:25 +0900

    test/fiber/test_scheduler.rb: Remove the test file from $LOADED_FEATURES

    to prevent the following failure on `make test-all --repeat-count=2`

    http://ci.rvm.jp/results/trunk-repeat20-asserts@phosphorus-docker/3957774
    ```
      1) Error:
    TestFiberScheduler#test_autoload:
    NameError: uninitialized constant TestFiberSchedulerAutoload
              Object.const_get(:TestFiberSchedulerAutoload)
                    ^^^^^^^^^^
    ```

commit ef525b012a709077ea2797e8642fae0b61234063
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-09 08:03:04 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-09 08:03:04 +0900

    Explicit handling of frozen strings in `IO::Buffer#for`. (#5892)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 563f0d0a484b6c90c20e3722c066b2f053640d0b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-09 07:29:33 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-05-09 07:29:37 +0900

    Ignore rubyspec_temp fot Git

commit e2c143abf4ba5d92f7c0f7b3f425a46bee9f5dea
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-09 07:22:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-09 07:26:29 +0900

    [ruby/getoptlong] Fixup https://github.com/ruby/getoptlong/commit/39faa7b390f0

    https://github.com/ruby/getoptlong/commit/c8b3c0c00d

commit f7539d5758ee5c83e6ec7792b100e830180896fd
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-05-09 07:10:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-09 07:13:55 +0900

    [ruby/getoptlong] ruby/ruby used sample, not examples

    https://github.com/ruby/getoptlong/commit/39faa7b390

commit 25eb63fa7fa7075764cd71920eb89df193c331b0
  Author:     Soutaro Matsumoto <matsumoto@soutaro.com>
  AuthorDate: 2022-05-08 23:04:25 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-08 23:04:25 +0900

    Bundle RBS 2.4.0 (#5894)

  Notes:
    Merged-By: soutaro <matsumoto@soutaro.com>

commit fd6cef79f54bebab1a49256034687dcc01a09eab
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-05-08 07:22:58 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-08 07:22:58 +0900

    Use a proper mutex for autoloading features. (#5788)

    Object#autoload implements a custom per-thread "mutex" for blocking
    threads waiting on autoloading a feature. This causes problems when used
    with the fiber scheduler. We swap the implementation to use a Ruby mutex
    which is fiber aware.

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit d79e0832a509fb24f4ccd41bfdff6638916c46e1
  Author:     Dominik Bauernfeind <bauernfeind.dominik@gmail.com>
  AuthorDate: 2022-05-04 18:16:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-06 18:03:00 +0900

    [rubygems/rubygems] Fix typo in documentation

    https://github.com/rubygems/rubygems/commit/800a973e00

commit 7d6de74abe56715d91be7ff27adc6c6c43ecc7c1
  Author:     nobuyo <longzechangsheng@gmail.com>
  AuthorDate: 2022-05-04 17:48:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-06 18:02:35 +0900

    [rubygems/rubygems] Update man page for `require` option in `bundle add` command

    https://github.com/rubygems/rubygems/commit/08a0a5b7d1

commit cae85c528c7c8ea1dd3ba634db5ccb9e465707f7
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-05-06 05:30:56 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-05-06 06:37:07 +0900

    Mark RCLASS_INCLUDER

    Since 4d8f76286beefbb8f7fba2479f6d0a0b4a47304c, we need to dereference
    the includer field on iclasses, so we need to mark it to make sure
    it's alive.

    Sometimes during compaction we crash because the field is dangling,
    though I have a hard time constructing such a situation. See
    http://ci.rvm.jp/results/trunk@ruby-iga/3947725

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5890

commit 7448afccb32f78115c05af03421984aa2f2aaf58
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-05-06 05:08:24 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-05-06 06:37:07 +0900

    Fix potential GC issue while iterating over weak refs

    While walking over the list of subclasses for `include` and friends, we
    check whether the subclass is a garbage object. After the check, we
    allocate objects which might trigger GC and make the subclass garbage,
    even though before the allocation the subclass was not garbage. This is
    a sort of time-of-check-time-of-use issue.

    Fix this by saving the weak reference to a local variable, upgrading it
    to a strong reference while we do the allocation. It makes the code look
    slightly nicer even if it doesn't fix any runtime issues.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5890

commit ae96ef9cfbc0f259e0910cd013aaff6e351fad7f
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-06 05:02:54 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-06 05:02:54 +0900

    File rdoc (#5888)

    Treats:
        ::pipe?
        ::symlink?
        ::socket?
        ::blockdev?
        ::chardev?

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit ac75c710cccf7adc5b12edc8d18263fef9ab3207
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-05 23:01:12 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-05 23:01:12 +0900

    Link from printf methods to format spec doc (#5886)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 0b625352196d782e476c8c383e61baa47ab8d3c4
  Author:     Akira Matsuda <ronnie@dio.jp>
  AuthorDate: 2022-05-05 18:01:08 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-05 19:09:49 +0900

    [ruby/logger] Prefer String#[0, 1] over [0..0]

    [0..0] internally creates an extra Array object, and so is slower and much more memory consuming

    https://github.com/ruby/logger/commit/20616ad34a

commit 197f9e9d42559cd3219d1376414536fc471a572b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-05 05:04:36 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-05 05:04:36 +0900

    [DOC] More on format specs (#5877)

    * Update doc/format_specifications.rdoc

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit d7df8c6964fd4ed959997e2ec7b80ddd2063c8ae
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-05-05 03:33:05 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-05-05 04:49:15 +0900

    Unpoison freelist when iterating over it in gc_sweep_page

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5884

commit 3a31b80bea97826ae113d9ace825c6ee27c2ae31
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-05-05 03:27:35 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-05-05 04:48:49 +0900

    Update lldb helper for iseq disassembly to use correct var name

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5883

commit bff31b3208071d40f9e193ef0cb95fb7aa2db62c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-05-04 22:24:03 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-05-04 22:24:03 +0900

    Remove unneeded cast

    `start` is of type uintptr_t so it does not need to be casted to VALUE.

commit 9d61c4519c73d0294d2a41cc087ef3841e305c4c
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-28 17:20:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-04 06:45:16 +0900

    [rubygems/rubygems] Also speed up the case when nothing changed

    https://github.com/rubygems/rubygems/commit/fa0ac74883

commit 42538ad710da28a8b89b92dd0a2939fad795c87f
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-28 17:20:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-04 06:45:16 +0900

    [rubygems/rubygems] Fix missing space in spec

    https://github.com/rubygems/rubygems/commit/fabc357e70

commit 2cf4318645f81fb13f6b264369bcfe6fbd4e91b9
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-28 17:28:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-04 06:45:15 +0900

    [rubygems/rubygems] Make looping more concise with `select`

    https://github.com/rubygems/rubygems/commit/c43d5f979a

commit ba4ec45cf156932a5a63cd9597aa210760f4390f
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-28 07:05:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-04 06:45:15 +0900

    [rubygems/rubygems] Don't converge specs in frozen mode

    https://github.com/rubygems/rubygems/commit/ea09bc4680

commit 379f5a6e8ef4e6c131abbb3c635e6136e031279b
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-05-03 07:36:43 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-05-04 05:48:46 +0900

    Update reference for RCLASS_INCLUDER during compaction

    We didn't update the includer field during compaction so it could become
    a dangling pointer after compaction. It's only recently that we started
    to dereference the field, and we were only comparing the pointer before
    then, so the omission only recently started to cause crashes.

    By instrumenting object.c:833 with `rp(includer);`, you can see the
    includer field become `T_NONE` with the following script:

    ```ruby
    mod = Module.new do
      protected def foo = 1
    end

    klass = Class.new do
      include Module.new
      def run
        foo
      end
    end

    klass.include(mod)

    GC.verify_compaction_references(double_heap: true, toward: :empty)

    klass.new.run
    ```

    I found a crash in a private application that this patch fixes, but
    wasn't able to develop a small reproducer. Hence the above demo that
    requires instrumentation.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5880

commit cf71e5f62a28eda22d67e3b4bad30fdff766fedc
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-04 02:44:43 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-04 02:44:43 +0900

    Add a regression test for opt_plus with unknown type (#5878)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 529c98ab900e88679a21c891600b42a076486661
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-04 01:22:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-04 01:23:26 +0900

    [DOC] mention macros for public headers

commit fe7c02c7444495679ff88f957c327b2d46c8e143
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-05-03 03:45:52 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-05-03 22:07:39 +0900

    Remove _with_gc functions in darray

    darray was used in YJIT which required the functions to not trigger GC.
    YJIT has now moved to Rust and does not use darray anymore, so we can
    remove the functions that don't trigger GC and only keep the ones that
    trigger GC.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5874

commit 35e111fd3e38ee6f44cd67b255815ef301ac5211
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-05-03 05:30:05 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-03 05:30:05 +0900

    Fix bug identified by @noahgibbs. (#5876)

    Turned out to be a one-character fix :)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 5f20f4deeea29641096f9863e8cdce13cca478da
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-05-03 01:51:40 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-05-03 03:03:56 +0900

    YJIT: Reject USE_FLONUM=0 builds at build time

    YJIT can't support these builds so it's better to reject with a message
    than to crash at runtime.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5873

commit b793245dacca942ca6842692aa9bbc06cde217fd
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-05-03 03:00:35 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-03 03:00:35 +0900

    [DOC] Some YJIT dependencies are no longer required

    The `capstone` crate on crates.io does not need `libcapstone` on the system
    because it builds from [source].
    `gdbm` is now a separate gem (thanks for extracting it!).

    [source]: https://github.com/capstone-rust/capstone-rs/blob/c31409905a9fc4581133de248fcd0a66b2c37e36/capstone-sys/build.rs#L143

commit 049303eff39d654f198b441e8e5f0f5b75a25e74
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-05-03 02:37:52 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-05-03 02:37:52 +0900

    [DOC] Fix links to doc pages

commit 51ac3c9e80562a63bbab4b67be916a9f37b6e842
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-03 01:03:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-05-03 01:09:33 +0900

    [ruby/getoptlong] Enhanced RDoc for GetoptLong (https://github.com/ruby/getoptlong/pull/4)

    Detailed introductory material.

    https://github.com/ruby/getoptlong/commit/1544f2fb7b

commit 8587bacc252e95e533d319cc58b58ec11e5561ff
  Author:     Koichi ITO <koic.ito@gmail.com>
  AuthorDate: 2022-05-02 23:05:01 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-02 23:05:01 +0900

    YJIT: Remove redundant `extern crate` (#5869)

    Follow up https://github.com/ruby/ruby/commit/0514d81

    Rust YJIT requires Rust 1.60.0 or later. So, `extern crate` looks unnecessary
    because it can use the following Rust 2018 edition feature:
    https://doc.rust-lang.org/stable/edition-guide/rust-2018/path-changes.html#no-more-extern-crate

    It passes the following tests.

    ```console
    % cd yjit
    % cargo test --features asm_comments,disasm
    (snip)

    test result: ok. 56 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
    ```

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit fef79dfa251b167480ef9ba8d17698c469c22542
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-05-02 02:26:42 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-05-02 02:26:42 +0900

    Repair internal links (#5866)

    * Repair internal links

    * Minor changes to format spec

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 3a8d60f50388016a677f250eb4d7c8bbe9d75d7d
  Author:     Chris Seaton <chris@chrisseaton.com>
  AuthorDate: 2022-04-30 19:57:51 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-30 19:57:51 +0900

    Document best-practices for writing hash methods (#5805)

    * Discussion is as per https://bugs.ruby-lang.org/issues/18611.

    Co-authored-by: Sam Bostock <sam.bostock@shopify.com>

  Notes:
    Merged-By: eregon <eregontp@gmail.com>

commit 5c843a1a6e24aeabb3497065a362caf7b3e2d3b1
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-30 07:20:23 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-30 07:20:23 +0900

    YJIT: Enable default rustc lints (warnings) (#5864)

    `rustc` performs in depth dead code analysis and issues warning
    even for things like unused struct fields and unconstructed enum
    variants. This was annoying for us during the port but hopefully
    they are less of an issue now.

    This patch enables all the unused warnings we disabled and address
    all the warnings we previously ignored. Generally, the approach I've
    taken is to use `cfg!` instead of using the `cfg` attribute and
    to delete code where it makes sense. I've put `#[allow(unused)]`
    on things we intentionally keep around for printf style debugging
    and on items that are too annoying to keep warning-free in all
    build configs.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 7c039e423cb59c9e5d76df9f1dc1bf8b1a1b9a6b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-30 07:04:05 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-30 07:04:05 +0900

    [DOC] Format specs (#5857)

    This new document would eventually replace the format spec discussion at Kernel#sprintf.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit fead7107abc494ef051fd26357c21a546b49c7d9
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-28 03:08:52 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-30 04:03:45 +0900

    YJIT: Adopt Clippy suggestions we like

    This adopts most suggestions that rust-clippy is confident enough to
    auto apply. The manual changes mostly fix manual if-lets and take
    opportunities to use the `Default` trait on standard collections.

    Co-authored-by: Kevin Newton <kddnewton@gmail.com>
    Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5853

commit f8e4488e5e01c07cc8c139e6030a5dfca45b824c
  Author:     Dmitry Dygalo <Stranger6667@users.noreply.github.com>
  AuthorDate: 2022-04-29 23:07:48 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-29 23:07:48 +0900

    YJIT: Do not create `CodeBlock.asm_comments` if the `asm_comments` feature is disabled (#5863)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 5741ae379b2037ad5968b6994309e1d25cda6e1a
  Author:     Matthias Viehweger <viehweger@puzzle.ch>
  AuthorDate: 2022-04-27 15:27:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-29 17:19:19 +0900

    [rubygems/rubygems] Generalize description to account for different push servers

    https://github.com/rubygems/rubygems/commit/cbf13edd3a

commit 3cf107fde2f3556720e9ebabefae42db93c7ef8d
  Author:     Matthias Viehweger <viehweger@puzzle.ch>
  AuthorDate: 2022-04-27 03:48:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-29 17:19:18 +0900

    [rubygems/rubygems] Clarify description of owner-flags

    https://github.com/rubygems/rubygems/commit/28864b1057

commit cf45d30fd7e76359687ee32b6bae55d752b46840
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-04-29 13:14:14 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-04-29 13:14:47 +0900

    Prevent a "warning: `*' interpreted as argument prefix"

commit 99281f513cf7d4873d2f672860f80e063f98b7cb
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-29 06:52:21 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-29 08:02:26 +0900

    YJIT: Handle spaces in build dir path using find(1) `-exec`

    Previously, we relied on shell word splitting, which leads
    to passing the wrong arguments when there are white spaces
    in the path.

    Avoiding command substitution also makes this script more
    likely to work under Solaris 10, where `/bin/sh` is not
    POSIX compliant [1]. (Thanks you, `@znz` for fixing the syntax
    error in 4210ae2158b545beda908fb29e03d23994f262e3 though!)

    The hack from c466f270b891962518763ad299f907beac0ebf62
    doesn't actually work so this commit reverts it. The shell
    still needs to parse through all of the code, maybe because
    make doesn't in fact send newlines to the shell.

    By the way, we also use the `-exec` option in the `ext/distclean` task.

    [1]: https://docs.oracle.com/cd/E26505_01/html/816-5165/sh-1.html

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5860

commit 907b31d7b92fd0eb98507dca6411d07da0fecb46
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-04-28 07:37:58 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-04-29 07:14:45 +0900

    Don't set LDFLAGS by default

    This fixes a bug where Ruby on macOS running on ARM would try to look in
    `/usr/local/lib` for things to link against, but the libraries in that
    directory are from the x86 installation of Homebrew

    [ruby-core:108424]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5855

commit 0eb237d99ccd0e89188446418358b56418ab7835
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-04-29 06:12:24 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-29 06:12:24 +0900

    YJIT: replace BLOCKID_NULL with Option<BlockId>, more idiomatic (#5858)

    * YJIT: replace BLOCKID_NULL with Option<BlockId>, more idiomatic

    * Update yjit/src/core.rs

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

    * Update yjit/src/core.rs

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit c416dbb3c700173d62c2d8381e3680b8aa4482ae
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-28 01:23:52 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-29 00:31:22 +0900

    Add missing write barriers to Array#replace

    Previously it made object references without using write barriers,
    creating GC inconsistencies.

    See: http://ci.rvm.jp/results/trunk-gc-asserts@phosphorus-docker/3925529

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5851

commit 0626e6f959ed740508ff2ec1f2ff4b7188fa821d
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-04-28 17:48:21 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-28 19:08:49 +0900

    Skip test for cargo builder

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5669

commit d77b88c681878b9d9c39d2d186e020186971beb5
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-04-28 17:48:04 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-28 19:08:49 +0900

    Move testing_ruby_repo into test helper

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5669

commit 1056489ea3e1c3f201936666b2725bfc142bb0f2
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-04-28 17:15:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-28 19:08:49 +0900

    Merge https://github.com/rubygems/rubygems/commit/3f7d0352e84b29d4a2d4cd93b31e5ebdb5f79cc6

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5669

commit cd2410f9d8c99fd0fbb232eb5f195188fbfc122f
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-07 02:32:32 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-28 19:08:49 +0900

    [rubygems/rubygems] Original env is already set by common test setup

    https://github.com/rubygems/rubygems/commit/59449557dd

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5669

commit fbb4b8d23505be46da7cd996d0c85039cf43b45a
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-07 02:01:19 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-28 19:08:49 +0900

    [rubygems/rubygems] Fix test errors when `cargo` not present

    Currently our tests try to detect whether `cargo` is installed or not,
    and if not, set tests that need `cargo` as pending.

    However, when this happens that test `setup` method is completely
    skipped, meaning that the `teardown` method will blow up when trying to
    switch back to the original folder, since it was not set.

    This commit fixes that.

    https://github.com/rubygems/rubygems/commit/1e4c1e6492

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5669

commit 678d58c8508ec46aa270e3c5d81fc09cd0fee175
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-04-01 20:36:59 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-28 19:08:49 +0900

    Merge rubygems master 1e4eda741d732ca1bd7031aef0a16c7348adf7a5

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5669

commit 479ba9a44b6beda1dce32842bcbc66b6f46a85a0
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-01 18:39:38 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-28 19:08:49 +0900

    [rubygems/rubygems] All supported rubies have `File.realpath`

    https://github.com/rubygems/rubygems/commit/c60ed4878c

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5669

commit f4009566afed45db82cf1fe73d7a16192a89b810
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-01 17:56:13 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-28 19:08:49 +0900

    [rubygems/rubygems] Add missing `open3` requires

    https://github.com/rubygems/rubygems/commit/06ad654120

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5669

commit 6dc314ac6df69e29ba58dfd61dde90e85a2b47c9
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-16 20:52:46 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-28 19:08:49 +0900

    Merge RubyGems/Bundler master

      https://github.com/rubygems/rubygems/commit/fe96fb6e2ac5a8b6df5e852470d11fa854301eca

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5669

commit 5250210aa9f632a415e90deaac424ff69c37fb3e
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-26 21:53:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-28 15:44:02 +0900

    [rubygems/rubygems] Fix missing required rubygems version when using old APIs

    A while ago, we fixed resolution when using old dependency endpoints to
    also consider metadata dependencies, by requesting the full gemspec from
    the marsahaled index, which includes this information as opposed to
    these old APIs. This has made resolution slower, but correct, but also
    introduced the issue that some old marshaled gemspecs don't include the
    `required_rubygems_version` field because they were created with a
    RubyGems version that predates its addition.

    Use a default value in this case.

    https://github.com/rubygems/rubygems/commit/5dc94afcc0

    Co-authored-by: Ilya Dudarenko <i.dudarenko@tinkoff.ru>

commit 4210ae2158b545beda908fb29e03d23994f262e3
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-04-28 09:44:38 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-04-28 09:44:38 +0900

    Try to fix error on Solaris

    https://rubyci.s3.amazonaws.com/solaris10-sunc/ruby-master/log/20220428T000004Z.fail.html.gz
    ```
    linking static-library libruby-static.a
    /bin/sh: syntax error at line 8: `(' unexpected
    gmake: *** [Makefile:318: libruby-static.a] Error 2
    exit 2
    failed(make)
    ```

commit c466f270b891962518763ad299f907beac0ebf62
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-28 07:12:53 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-28 07:59:10 +0900

    Work around shell syntax error on Solaris

    The shell in Solaris 10 has trouble understanding the syntax I used in
    YJIT's library merging script.

    This commit reduces the code the shell needs to parse before exiting on
    non-YJIT builds to hopefully fix the error on Solaris.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5854

commit cd2613b6a43bac87574dac17b8b9b813bbdc5e42
  Author:     Charles Oliver Nutter <headius@headius.com>
  AuthorDate: 2022-04-28 05:55:28 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-28 05:56:26 +0900

    [ruby/net-http] Bump version to 0.2.1.pre1

    https://github.com/ruby/net-http/commit/0017cc64c0

commit e1536a1e56cd879d296101554ec526a64cb71fd0
  Author:     Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
  AuthorDate: 2022-04-28 02:16:42 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-28 02:16:42 +0900

    Update yjit.md

    Fix configure line in YJIT build instructions

commit 0514d8171590b611e3b560e8dae0adfa57c07b57
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-21 01:06:34 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-28 00:00:22 +0900

    YJIT: Remove unnecessary `extern crate` declaration

    Thanks to suggestion from bjorn3 on GitHub.

    Co-authored-by: bjorn3 <bjorn3@users.noreply.github.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5826

commit 932bfd0beb048efd22983a6de6fdf1a55e41de40
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-21 00:29:05 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-28 00:00:22 +0900

    YJIT: Make add_comment() more concise

    Thanks to suggestions from Stranger6667 on GitHub.

    Co-authored-by: Dmitry Dygalo <dmitry@dygalo.dev>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5826

commit f90549cd38518231a6a74432fe1168c943a7cc18
  Author:     Alan Wu <alanwu@ruby-lang.org>
  AuthorDate: 2022-04-20 03:40:21 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-28 00:00:22 +0900

    Rust YJIT

    In December 2021, we opened an [issue] to solicit feedback regarding the
    porting of the YJIT codebase from C99 to Rust. There were some
    reservations, but this project was given the go ahead by Ruby core
    developers and Matz. Since then, we have successfully completed the port
    of YJIT to Rust.

    The new Rust version of YJIT has reached parity with the C version, in
    that it passes all the CRuby tests, is able to run all of the YJIT
    benchmarks, and performs similarly to the C version (because it works
    the same way and largely generates the same machine code). We've even
    incorporated some design improvements, such as a more fine-grained
    constant invalidation mechanism which we expect will make a big
    difference in Ruby on Rails applications.

    Because we want to be careful, YJIT is guarded behind a configure
    option:

    ```shell
    ./configure --enable-yjit # Build YJIT in release mode
    ./configure --enable-yjit=dev # Build YJIT in dev/debug mode
    ```

    By default, YJIT does not get compiled and cargo/rustc is not required.
    If YJIT is built in dev mode, then `cargo` is used to fetch development
    dependencies, but when building in release, `cargo` is not required,
    only `rustc`. At the moment YJIT requires Rust 1.60.0 or newer.

    The YJIT command-line options remain mostly unchanged, and more details
    about the build process are documented in `doc/yjit/yjit.md`.

    The CI tests have been updated and do not take any more resources than
    before.

    The development history of the Rust port is available at the following
    commit for interested parties:
    https://github.com/Shopify/ruby/commit/1fd9573d8b4b65219f1c2407f30a0a60e537f8be

    Our hope is that Rust YJIT will be compiled and included as a part of
    system packages and compiled binaries of the Ruby 3.2 release. We do not
    anticipate any major problems as Rust is well supported on every
    platform which YJIT supports, but to make sure that this process works
    smoothly, we would like to reach out to those who take care of building
    systems packages before the 3.2 release is shipped and resolve any
    issues that may come up.

    [issue]: https://bugs.ruby-lang.org/issues/18481

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
    Co-authored-by: Noah Gibbs <the.codefolio.guy@gmail.com>
    Co-authored-by: Kevin Newton <kddnewton@gmail.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5826

commit f553180a86b71830a1de49dd04874b3880c5c698
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-27 20:00:22 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-27 20:00:22 +0900

    [DOC] Enhanced RDoc for Kernel (#5847)

    Treats #Integer; fixes an error in #String.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 0bab4c4addef3421f8ff1c45564f4a392b860f15
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-04-27 10:11:53 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-04-27 10:13:23 +0900

    [DOC] Change URLs from git.io

    see https://github.blog/changelog/2022-04-25-git-io-deprecation/

commit 72628c1ccc5e7d85fe297312d740eed929ab78bb
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-27 06:49:28 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-27 06:49:28 +0900

    Enhanced RDoc for File (#5849)

    Treats:

        #path
        ::stat
        ::lstat
        #lstat
        ::directory?

    Also adds section "Example Files" that explains assumptions about example files. I'm using t.txt already, and I'm pretty sure I'll need t.dat (binary data). I don't know whether I'll need t.rus (Russian text).

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit a8541475d1339ce242357822dd49d775645ce76d
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-03-05 16:31:37 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-04-27 06:08:55 +0900

    Faster rb_class_superclass

    This uses the RCLASS_SUPERCLASSES array to quickly find the next
    SUPERCLASS of klass which is a T_CLASS.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5850

commit bdb7345ce96c641796909abc2dbdac0d4400ca41
  Author:     Kaíque Kandy Koga <kaiquekandykoga@gmail.com>
  AuthorDate: 2022-04-26 22:47:52 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-04-27 04:38:51 +0900

    Use compiled instead of complied

    Capitalize creates

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5848

commit 4a2b5102c11978b66d003ecbc8710b2f587b7322
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-04-22 23:08:19 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-04-26 23:12:47 +0900

    Expose `rb_hash_new_capa(long)`

    [Feature #18683]

    This allows parsers and similar libraries to create Hashes of
    a certain capacity in advance. It's useful when the key and values
    are streamed, hence `bulk_insert()` can't be used.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5835

commit 5ce0d2aa354eb996cb3ca9bb944f880ff6acfd57
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-26 05:59:09 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-26 05:59:09 +0900

    [DOC] Enhanced RDoc for Kernel (#5846)

    Treats:
        #Array
        #Hash
        #String

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit f8724987db834c4672b44a55fddb779cec24422b
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-04-26 05:07:35 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-04-26 05:07:35 +0900

    Document beginless, endless ranges in Range class documentation

commit 9e8841e592c40e65bbad410a490c05f07a87052e
  Author:     Colin Hart <colin.hart@stitchfix.com>
  AuthorDate: 2022-04-26 04:32:29 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-26 04:32:29 +0900

    Simplify example code for Enumerable#each_with_object

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5825

    Merged-By: jeremyevans <code@jeremyevans.net>

commit 5c61caa48154e3e43ff29ab865310aa9bdd9e83a
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-26 03:30:54 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-26 03:30:54 +0900

    Fix strict aliasing issue with call to rb_id_table_lookup()

    Previously, GCC 11 with -O2 LTO issues -Wmaybe-uninitialized here.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5844

    Merged-By: XrXr

commit 9c44b5fbc88cde1915a78265e72692e100cec16e
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-26 02:30:00 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-26 03:29:19 +0900

    [CI] Use -O2 on LTO builds as intended

    Previously, since the `optflags` environment variable was set to `-O1`
    and `optflags` comes after the flags appended as `CC`, we were doing LTO
    builds with `-O1`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5845

commit b989c7c6ac23f0edb2348b359af9825c39e90bde
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-26 03:28:39 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-26 03:28:39 +0900

    [DOC] Move :nodoc: so rdoc finds `RbConfig.ruby`

    Rdoc [build] of `master` did not have this method but the reference manual [did].

    [build]: https://docs.ruby-lang.org/en/master/RbConfig.html
    [did]: https://docs.ruby-lang.org/ja/master/class/RbConfig.html#S_RUBY

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5843

    Merged-By: XrXr

commit 69c1145fa8832e9ba23bcd66a2552964bcb6085a
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-26 00:07:21 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-26 00:07:21 +0900

    [DOC] Enhanced RDoc for Math module (#5837)


        Revises intro.
        Adds "What's Here".
        Revises methods doc.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 5701b4084e7bdcd64b6a940c95d41888734f5ca6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-25 23:49:58 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-25 23:50:49 +0900

    [DOC] mention assignment expression values

commit 45cf4f218728a15eb36d14a6c9912086525f5e3f
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-04-25 21:53:54 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-04-25 21:53:54 +0900

    Update to ruby/spec@3affe1e

commit 6ae81d49b52563a6720d666a6118ffa6e484f398
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-04-25 21:53:51 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-04-25 21:53:51 +0900

    Update to ruby/mspec@215497e

commit 4fcc7e2d7c826da8b347ca547a603ccfc7f45ce0
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-04-25 17:20:45 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-04-25 19:39:14 +0900

    Fix ARGF#lineno to return Integer as documented

    [Bug #18753]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5841

commit d41bc9b68ec39b053c4794c693c351e05242ada3
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-25 09:41:26 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-25 09:41:26 +0900

    More details for Rational literals (#5840)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 554befbf2716db56a215b39f619cce76dd624b8e
  Author:     S.H <gamelinks007@gmail.com>
  AuthorDate: 2022-04-25 06:06:45 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-25 06:06:45 +0900

    Reuse `rb_proc_arity`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5823

    Merged-By: jeremyevans <code@jeremyevans.net>

commit 671d90eca3b8c00c73b72c3852a5103b1a17af6b
  Author:     Tanaka Akira <akr@fsij.org>
  AuthorDate: 2022-04-24 23:16:55 +0900
  Commit:     Tanaka Akira <akr@fsij.org>
  CommitDate: 2022-04-24 23:16:55 +0900

    add description for IO.nonblock=.

commit e142bea7997eeb9c8e902089ce0a68138da8abc3
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-04-22 13:41:18 +0900
  Commit:     Kazuhiro NISHIYAMA <znz@users.noreply.github.com>
  CommitDate: 2022-04-23 11:59:20 +0900

    Remove unnecessary sort

    Because `Dir.[]` returns the sorted results since Ruby 3.0.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5832

commit ab3cb29bd9bff9c16cfb9d19cc02026998282c12
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-04-23 05:01:43 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-04-23 07:00:16 +0900

    Avoid defining the same test class in multiple files

    Should fix issues with parallel testing sometimes not running all
    tests.

    This should be viewed skipping whitespace changes.

    Fixes [Bug #18731]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5839

commit c2d38a0d2d78f749fba47073b33106fd2e57767a
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-04-23 06:26:26 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-04-23 06:26:26 +0900

    Fix build if UBF_TIMER == UBF_TIMER_PTHREAD

commit 79fa27acc452c50ae47936880f91424e729fda72
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-23 02:18:11 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-23 05:21:48 +0900

    rbinstall: Also do `Gem.ruby` patching for unpacked bundled gems

    Pointing `Gem.ruby` to the newly installed ruby gives mkmf the right
    inputs to build extensions in bundled gems. Previously, this patching
    was only done for compressed bundled gems.

    This patch also prevents `tool/fake.rb` from propagating to the child
    process running mkmf for the native extension. The way `tool/fake.rb`
    changes mkmf variables using `Kernel#trace_var` created spooky action at
    a distance which made debugging difficult.

    AppVeyor Windows CI started to fail starting with
    8a3663789c52ec5635194656af6b69d3d03120ee because it enabled extension
    building for bundled gems on mswin. This patch should address the CI
    failures.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5838

commit 03d21a4fb099da7c52e6591e17704c297871b7db
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-04-22 21:19:03 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-04-23 03:08:27 +0900

    introduce struct `rb_native_thread`

    `rb_thread_t` contained `native_thread_data_t` to represent
    thread implementation dependent data. This patch separates
    them and rename it `rb_native_thread` and point it from
    `rb_thraed_t`.

    Now, 1 Ruby thread (`rb_thread_t`) has 1 native thread (`rb_native_thread`).

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5836

commit 702dc116c4fd8906cc65c4ac2a991a2e0df54a63
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-04-22 22:58:15 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-04-23 00:50:13 +0900

    refactoring thread inits in vm.c

    * `th_init` accepts vm and ractor.
    * remove `ruby_thread_init` because it is duplicated with `th_init`.
    * add some comments.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5834

commit 4b14b2902abaa0e8f0d1e8282d2322f47431fa3f
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-23 08:36:16 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-04-22 12:48:27 +0900

    Uncomment code to raise LocalJumpError for yield across thread through enum

    Not sure if this is the correct fix.  It does raise LocalJumpError in
    the yielding thread as you would expect, but the value yielded to the calling
    thread is still yielded without an exception.

    Fixes [Bug #18649]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5692

commit 3fa768c5c308b61677342fe2caa9c54fe3a2c3c9
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-04-22 12:11:36 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-22 12:11:36 +0900

    Use https for wss test

commit eab354e17b4bc21d0142564ce71ebadf4ad8486a
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-04-15 03:02:00 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-22 12:00:14 +0900

    [ruby/uri] Include RFC2396_REGEXP module directly

    REGEXP is defined as RFC2396_REGEXP in lib/uri/common.rb. If we include
    REGEXP then a broken URL is generated in rdoc for URI and URI::MailTo.

    https://github.com/ruby/uri/commit/ed6ded9c80

commit c94f964e3f94e9f934a3f4e73fb55f5fd2a21f08
  Author:     OKURA Masafumi <masafumi.o1988@gmail.com>
  AuthorDate: 2022-02-18 00:59:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-22 11:59:54 +0900

    [ruby/uri] Feat: Support WSS

    There was a file for WSS so I added one line of `require_relative`
    to make it work.
    Now `URI.parse('wss://example.com')` returns `URI::WS`.

    https://github.com/ruby/uri/commit/ff8a103564

commit 1c4fc0241d125879e1e5169f267f26637772f3a7
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-04-17 03:40:23 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-04-22 07:54:09 +0900

    rename thread internal naming

    Now GVL is not process *Global* so this patch try to use
    another words.

    * `rb_global_vm_lock_t` -> `struct rb_thread_sched`
      * `gvl->owner` -> `sched->running`
      * `gvl->waitq` -> `sched->readyq`
    * `rb_gvl_init` -> `rb_thread_sched_init`
    * `gvl_destroy` -> `rb_thread_sched_destroy`
    * `gvl_acquire` -> `thread_sched_to_running` # waiting -> ready -> running
    * `gvl_release` -> `thread_sched_to_waiting` # running -> waiting
    * `gvl_yield`   -> `thread_sched_yield`
    * `GVL_UNLOCK_BEGIN` -> `THREAD_BLOCKING_BEGIN`
    * `GVL_UNLOCK_END` -> `THREAD_BLOCKING_END`

    * removed
      * `rb_ractor_gvl`
      * `rb_vm_gvl_destroy` (not used)

    There are GVL functions such as `rb_thread_call_without_gvl()` yet
    but I don't have good name to replace them. Maybe GVL stands for
    "Greate Valuable Lock" or something like that.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5814

commit cb02324c4e5c7aae0add0a5c4e5adbf637d9acb0
  Author:     Akinori MUSHA <knu@idaemons.org>
  AuthorDate: 2022-04-04 02:03:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-21 17:10:19 +0900

    [ruby/pathname] Implement Pathname#lutime

    https://github.com/ruby/pathname/commit/268cb5acff

commit 3ddf6ad4d2f6dae4caa00b8c407768c7062099a0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-21 16:04:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-21 16:04:36 +0900

    Private local variables should shadow outer variables [Bug #18629]

commit ee48c9cda6e918f8da4b23d3ff4fabf7357f4a95
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-21 14:16:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-21 15:14:08 +0900

    [Win32] allow pipe in flock

commit 4a4c1d6920c7d9fbcd2542a3462f19ccd48c02e8
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-04-20 16:05:37 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-20 16:05:37 +0900

    [CI] resort to clang-14 (#5824)

    * [CI] resort to clang-14

    Clang 15 + --std=c2x combination seems actively developed now.
    Might better wait for them to mature

    * also change default compiler

  Notes:
    Merged-By: shyouhei <shyouhei@ruby-lang.org>

commit c506ddac6c88b14daf4a18bddf1c1e57be8d2225
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-04-20 14:13:10 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-20 14:13:10 +0900

    Added assert_true and assert_false same as test-unit gem

commit cf73cf5981802f2bcc30aba07914acf4286cda5a
  Author:     Karol Bucek <kares@users.noreply.github.com>
  AuthorDate: 2022-04-20 13:01:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-20 13:01:08 +0900

    [ruby/net-http] Feature detect to make net/http usable with JRuby

    Handle missing session_new_cb= and do not call
    session_cache_mode=, as JRuby SSL does not support
    these methods.

    https://github.com/ruby/net-http/commit/3237ef4d8c

commit fa2df520bcaaf3957db0489f1237311f091ac08d
  Author:     Jean byroot Boussier <jean.boussier+github@shopify.com>
  AuthorDate: 2022-04-20 11:52:47 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-20 11:52:47 +0900

    Enable C backtraces on Apple silicon (#5770)

    Co-authored-by: Jean Boussier <jean.boussier@gmail.com>

  Notes:
    Merged-By: nurse <naruse@airemix.jp>

commit 90ccc5674affb64036ca86f566c8650f654fc0f6
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-03-02 05:59:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-20 10:22:06 +0900

    [ruby/net-http] Add ignore_eof access to HTTP and HTTPResponse

    The ignore_eof setting on HTTPResponse makes it so an EOFError is
    raised when reading bodies with a defined Content-Length, if the
    body read was truncated due to the socket be closed.

    The ignore_eof setting on HTTP sets the values used in responses
    that are created by the object.

    For backwards compatibility, the default is for both settings is
    true.  However, unless you are specifically tested for and handling
    truncated responses, it's a good idea to set ignore_eof to false so
    that errors are raised for truncated responses, instead of those
    errors silently being ignored.

    Fixes [Bug #14972]

    https://github.com/ruby/net-http/commit/4d47e34995

commit fada4d24f9acd98f1e289913f6eea584d281fb42
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-19 14:01:08 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-19 14:01:08 +0900

    [DOC] adjust indent

commit 810b9c344a40802d7736282d86e51d48e8b336a4
  Author:     Tim Smith <tsmith@mondoo.com>
  AuthorDate: 2022-04-18 13:53:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-19 08:32:37 +0900

    Resolve several markedown warnings

    - Spaces before and after blocks.
    - Single spaces after sentences everywhere

    Signed-off-by: Tim Smith <tsmith@mondoo.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5816

commit 4299375b9b8b49b02b3d131bfbc621cf28752fae
  Author:     Tim Smith <tsmith@mondoo.com>
  AuthorDate: 2022-04-18 14:08:42 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-19 08:31:41 +0900

    Github -> GitHub

    Fix the case of GitHub in various places

    Signed-off-by: Tim Smith <tsmith@mondoo.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5817

commit b41de3a1e8c36a5cc336b6f7cd3cb71126cf1a60
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-19 08:19:10 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-19 08:19:10 +0900

    [DOC] Enhanced RDoc for MatchData (#5822)

    Treats:
        #to_s
        #named_captures
        #string
        #inspect
        #hash
        #==

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 6db3f7c405c995650d7ebf36bcb9a7054ce2ce24
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-19 05:52:07 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-19 05:52:07 +0900

    Enhanced RDoc for MatchData (#5821)

    Treats:
        #[]
        #values_at

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 86e23529ad161643e011aa09e14c83bbdd767c63
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-19 04:34:40 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-19 04:34:40 +0900

    Enhanced RDoc for MatchData (#5820)

    Treats:
        #pre_match
        #post_match
        #to_a
        #captures

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit b074bc3d614cd4e783dc77e3602c424110230495
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-19 03:02:35 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-19 03:02:35 +0900

    [DOC] Enhanced RDoc for MatchData (#5819)

    Treats:
        #begin
        #end
        #match
        #match_length

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 9d1dd7a9ed189475730254fbfee52f890759afaf
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-19 01:31:30 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-19 01:31:30 +0900

    [DOC] Enhanced RDoc for MatchData (#5818)

    Treats:
        #regexp
        #names
        #size
        #offset

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 51ea67698e36f9a0a3a3aa9a4566b6bec4b41bd3
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-19 00:45:29 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-19 00:45:29 +0900

    [DOC] Enhanced RDoc for Regexp (#5815)

    Treats:
        ::new
        ::escape
        ::try_convert
        ::union
        ::last_match

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 08b6aacc1a14440e0f1644a05238559c6c585e38
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-18 18:37:09 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-18 18:37:09 +0900

    Fix the wrong index of the previous component [Bug #18739]

commit b0666d64176457786c854c12c79f7beae392bee0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-18 17:53:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-18 17:53:05 +0900

    [DOC] Use consistent terms [Bug #18680]

commit c69bdcf80c1711dc3bff0037333393c844186a57
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-04-14 02:30:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-18 10:29:25 +0900

    [ruby/bigdecimal] Fix docs

    rdoc parses f[i] as a link, which results in a broken link.

    https://github.com/ruby/bigdecimal/commit/a18522e9ca

commit 92361ad9c68d82fe7de554999b2f9de8be5821bb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-14 00:52:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-18 10:29:23 +0900

    [ruby/bigdecimal] Adjust a local variable type to exponent

    https://github.com/ruby/bigdecimal/commit/70146fb6ad

commit e5a852b91285ca8fca806f4cc4ab0127fbf84d14
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-16 19:01:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-18 09:40:07 +0900

    [ruby/tsort] Small tweaks for easier vendoring

    Bundler vendors this file and we have some tools to automatically
    prepend the `Bundler::` namespace so that the vendored version does not
    collide with the stdlib version.

    However, due to how methods are defined, it's hard for our vendoring
    tool to do the right thing.

    I think this makes the code simpler and things easier for us too.

    https://github.com/ruby/tsort/commit/7088a7c814

commit d6238007bf9f0999c659b9150fe94c0d46aa014b
  Author:     Nick Roma <nikoandpiko@gmail.com>
  AuthorDate: 2022-04-16 01:16:55 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-18 09:18:23 +0900

    Fixes grammar

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5806

commit 50f3e93c809c207f73ee61e6e64c829e06f0b81b
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-04-17 20:57:31 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-04-17 20:57:46 +0900

    Fix a typo

commit be52c728899b44e063e041e4042dc0ebce9d5d68
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-17 18:57:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-17 18:57:26 +0900

    Get rid of doubly caching

commit 2c6876f811a3c08e69816861127458b967900bcd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-17 18:53:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-17 18:53:29 +0900

    Get rid of magic numbers

commit 2b4b513ef046c25c0a8d3d7b10a0566314b27099
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-17 05:20:03 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-17 05:20:03 +0900

    [DOC] Enhanced RDoc for Regexp (#5812)



    Treats:

        #fixed_encoding?
        #hash
        #==
        #=~
        #match
        #match?

    Also, in regexp.rdoc:

        Changes heading from 'Special Global Variables' to 'Regexp Global Variables'.
        Add tiny section 'Regexp Interpolation'.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 7950c4eb2d132fca40d1e9383e8a7240781cc575
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-04-16 07:21:10 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-04-17 03:40:56 +0900

    Fix class ancestry checks for duped classes

    Previously in some when classes were duped (specifically those with a
    prepended module), they would not correctly have their "superclasses"
    array or depth filled in.

    This could cause ancestry checks (like is_a? and Module comparisons) to
    return incorrect results.

    This happened because rb_mod_init_copy builds origin classes in an order
    that doesn't have the super linked list fully connected until it's
    finished. This commit fixes the previous issue by calling
    rb_class_update_superclasses before returning the cloned class. This is
    similar to what's already done in make_metaclass.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5808

commit e70e7f4ad38abb305342dd4d5a392782597d1f98
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-16 20:53:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-16 22:58:34 +0900

    [rubygems/rubygems] Fix test issues surfaced using a stricter behavior of `FileUtils`

    We were trying to remove directories using `FileUtils.rm_f` which is
    unexpected and does not remove anything. Changing to `FileUtils.rm_rf`
    actually removes the directories properly. That itself showed other
    issues:

    * One test was actually removing the gem package it was about to
      install, since it was living in the cache folder. To fix that, avoid
      removing the cache folder, and only make sure the other directories
      are created automatically, which seems enough.

    * Another test was actually removing an incorrect directory. Change it
      to remove the right one (the one that's asserted later to have been
      created).

    https://github.com/rubygems/rubygems/commit/5538e7ff20

commit 9a20bcd5c8b5e5114783febc5168506972b1c234
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-16 20:52:40 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-16 22:58:34 +0900

    [rubygems/rubygems] I don't think this is necessary

    https://github.com/rubygems/rubygems/commit/836f3e5aa5

commit a3ef0746ce07817845bfa9af697de53a28f599f7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-16 17:13:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-16 17:13:24 +0900

    Extract `pipe_readlines` method which reads from the pipeline

commit b09e96341e8157a190b4c4b0ec0784be76887e0d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-16 16:45:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-16 16:45:46 +0900

    Simplify the condition expression to ignore commits

commit 492185e39c0edec8461502fc30f607ea2f035a5e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-16 16:26:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-16 16:45:11 +0900

    Do not import any files under rakelib

commit 723debc9a99a577e2da2f209c094852718a58ffa
  Author:     BurdetteLamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-31 04:10:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-16 15:34:34 +0900

    [ruby/set] Repair format for What's Here

    https://github.com/ruby/set/commit/292baacb60

commit 24d7ebfa7a34b1b406b59648fad6ed068198c982
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-04-16 13:30:20 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-16 13:30:20 +0900

    Revert "[ruby/stringio] Add push task to push built gems"

    This reverts commit 22f79ae3f749ebe31c34c22d5b8699ffd81ab341.

commit 8a3663789c52ec5635194656af6b69d3d03120ee
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-16 09:03:51 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-16 09:03:51 +0900

    Fix bundled gems installation when relative loading

commit ccb0572ff948aa83b7fb35143524fa8cd74864cf
  Author:     Bobby McDonald <bobbymcwho@gmail.com>
  AuthorDate: 2022-04-14 00:42:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-16 08:23:21 +0900

    [rubygems/rubygems] Add modern rubies to the platforms

    https://github.com/rubygems/rubygems/commit/5462322f8f

commit 22f79ae3f749ebe31c34c22d5b8699ffd81ab341
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-04-16 07:08:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-16 07:08:41 +0900

    [ruby/stringio] Add push task to push built gems

    https://github.com/ruby/stringio/commit/4431eefbad

commit 2aca566a104ad42579be03374446fd45031ff9f6
  Author:     Sutou Kouhei <kou@clear-code.com>
  AuthorDate: 2022-04-16 06:33:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-16 06:34:31 +0900

    [ruby/stringio] bump up to 3.0.2.pre1

    https://github.com/ruby/stringio/commit/14ec9bc193

commit e021754db013ca9cd6dbd68b416425b32ee81490
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-16 03:31:15 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-16 03:31:15 +0900

    [DOC] Enhanced RDoc for Regexp (#5807)

    Treats:

        #source
        #inspect
        #to_s
        #casefold?
        #options
        #names
        #named_captures

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 7f81f335478a3ca873f34e3bc0af6927819d3e84
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-15 16:40:25 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-15 17:52:10 +0900

    Return `false` where sticky-bit is not provided [Bug #18734]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5804

commit 9db7d95968a832dd095eccf9cfe29255ac15b2c2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-15 11:17:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-15 17:14:29 +0900

    Compare predicate methods as a boolean value

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5803

commit a0040af6715d85f416f1282588974e151a8164eb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-15 02:33:08 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-15 17:14:29 +0900

    [Win32] Fix mode of character/pipe device stat [Bug #18732]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5803

commit a0eb4b14d68f77b7efa560e0c1b7d261654c586e
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-04-14 03:09:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-15 16:07:11 +0900

    [ruby/nkf] Fix docs

    rdoc parses "Z[0-3]" as a link to "0-3", this commit escapes these so
    that they don't become links.

    https://github.com/ruby/nkf/commit/269c10061b

commit da1695b9260e1c87a66371b4f7f89cdfedb05d44
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-04-15 00:15:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-15 14:21:28 +0900

    [ruby/optparse] Fix broken links in docs

    https://github.com/ruby/optparse/commit/2bea3b38c3

commit 92614111c0b175deaaba95ff3240a42e9b972b03
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-04-15 02:11:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-15 13:24:48 +0900

    [ruby/rdoc] Fix links in docs

    www.ruby-lang.org without the leading https:// will generate an
    incorrect link because it will be treated as a relative link.

    https://github.com/ruby/rdoc/commit/28f32149b6

commit 307cb57ba6d4833cc40d29d218561e98f9a1dcb9
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-15 02:33:36 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-15 04:47:27 +0900

    Fix build errors with development version of Clang

    Maybe not the best idea for CI stability to use development versions of
    Clang, but that does give us a preview of what's coming and gives us a
    chance to make suggestions upstream.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5799

commit 01395d84aba82cf9f9f6ac53aeb3e6f142bd8d83
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-15 04:25:06 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-15 04:25:06 +0900

    More details for regexp literals (#5800)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 8751c5c2672d1391c73d9dec590063d27bed7e4c
  Author:     Akshay Birajdar <akshaybirajdar05@gmail.com>
  AuthorDate: 2022-04-11 15:33:29 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-04-14 21:52:22 +0900

    [DOC] Enhance documentation for `Module#<` & `Module#>`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5784

commit 9b8ce6d34c49a869ee3fcbd87923a6414396738f
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-04-14 16:52:08 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-04-14 21:22:47 +0900

    fix to use `node.gvl` instead of `node.ubf`

    The last parameter of `ccan_list_top()` is to acquire the pointer
    of the top of element, so `node.ubf` is no problem. But this context
    it accesses gvl list, so `node.gvl` is better.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5798

commit 5397dd2e76952c5afc0d838f1d0bd53bcb0c5258
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-14 16:13:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-14 16:37:14 +0900

    [ruby/rdoc] Apply matching word pairs to underscore-methods

    Protected characters with `PROTECT_ATTR` should not have special
    roles.

    https://github.com/ruby/rdoc/commit/c318af0ea2

commit 1a2490b5640606a69e6abac5c50869b6095f0239
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-04-14 05:05:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-14 16:24:09 +0900

    [rubygems/rubygems] Fix formatting in docs

    rdoc uses + for typewriter font rather than backticks.

    https://github.com/rubygems/rubygems/commit/be320f1e0c

commit 295030969c84a4dc375c51902de9c7d614e4e5ba
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-14 14:56:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-14 14:57:39 +0900

    [DOC] Prefer RDOCLINK to the method name

commit 2ff41e97fac1503e66554d7d410994b9d41fe0dc
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-14 12:55:44 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-14 12:55:44 +0900

    [DOC] Now underscore methods can cross-reference

commit e06100d969c7f6a275e121cb1154d3947d1ebe32
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-10 08:13:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-14 12:51:30 +0900

    [ruby/rdoc] Allow cross references to methods including underscores

    As underscores are masked to "protect" from the conversion, consider
    also `PROTECT_ATTR` as a word character.

    https://github.com/ruby/rdoc/commit/db58bb5170

commit 5d45afdbbf058d82ced0b12bf9e4b2978db9f4e0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-14 11:17:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-14 11:17:37 +0900

    [DOC] Move the documentations of moved Symbol methods

commit 3728f83b2d8e9d4705f835a572e6886a74562e8a
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-03-19 14:35:12 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-14 10:16:45 +0900

    [DOC] Fix SymbolVariantsRelNotes link

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5682

commit 59c81274aaa0ca7fd36635360f10b88aa67efa0a
  Author:     Grant Hutchins <git@nertzy.com>
  AuthorDate: 2022-04-14 03:29:14 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-04-14 04:44:36 +0900

    Use correct capitalization of "NaN" in docs

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5797

commit 629bad4abae141cb72a138cde9c98ad74181fbd0
  Author:     Stan Lo <stan001212@gmail.com>
  AuthorDate: 2022-04-11 06:49:59 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-04-14 04:43:28 +0900

    Update PTY.spawn's document

    Passing the optional env hash to PTY.spawn has been supported for years, but it's never documented.
    More info: https://bugs.ruby-lang.org/issues/12312

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5786

commit dbb227d3b6bb2e962e68d8b4991a53705fc041c1
  Author:     Alex Matchneer <machty@gmail.com>
  AuthorDate: 2022-04-14 04:34:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-14 04:34:49 +0900

    [DOC] add missing size params in fiber scheduler.h (#5441)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit dfdc03248fc01a84577e5a6094acbcaa41460144
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-14 03:45:18 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-14 03:45:18 +0900

    [DOC] Enhanced RDoc for Symbol (#5796)

    Treats:
        #[]
        #length
        #empty?
        #upcase
        #downcase
        #capitalize
        #swapcase
        #start_with?
        #end_with?
        #encoding
        ::all_symbols

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 0579486f154e80d17521494003dcd2499ef74688
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-03-02 06:48:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-14 00:11:26 +0900

    [ruby/net-http] Update the content-length heading when decoding bodies

    Previously, the content-encoding header was removed and the body
    was modified, but the content-length header was not modified,
    resulting in the content-length header not matching the body
    length.

    Don't delete content-length before yielding inflate body, as that
    causes a switch to read the entire body instead of reading in
    chunks.

    Fixes [Bug #16672]

    https://github.com/ruby/net-http/commit/58284e9710

    Co-authored-by: st0012 <stan001212@gmail.com>

commit df1594e4b5100cef0ec0b5cf6a065f11634b26b2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-13 18:36:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-13 22:55:20 +0900

    Parenthize macro arguments

commit aaac279de09eb1fe48b32fd95e61453f0d602ac4
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-04-12 04:37:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-13 22:25:33 +0900

    [ruby/rdoc] Only parse valid URLs

    Only valid characters for URLs should be used for generating URLs.

    A list of valid characters can be found in sections 2.2 and 2.3 of IETF
    RFC 3986 (https://www.ietf.org/rfc/rfc3986.txt).

    https://github.com/ruby/rdoc/commit/2bd8fcdd4f

commit 7e97ebb6eb392d90fc6e49a16620e71d398f4bdf
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-13 09:02:32 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-13 18:33:34 +0900

    Enforce literals on the second arguments

commit 7e4ac434b923739b540ce21cba307c4d0515d72e
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-04-13 14:40:24 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-04-13 14:40:24 +0900

    Skip build extensions again on cross compiling too

commit 3112475469e35b522448858d23ee1651532276e7
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-04-13 13:40:57 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-04-13 13:40:57 +0900

    Skip build extensions again on mswin and mingw

commit 4246e102d49eae0bd1bca01fba53286ad8178d2a
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-04-13 11:09:23 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-04-13 11:09:23 +0900

    Enabled to build extensions with the bundled gems again

    https://github.com/ruby/ruby/commit/cbb115213c42f15638ef119eb20c4d3106eb8b1a
    https://github.com/ruby/ruby/commit/5c1b76a3a55afeb07116bbd3492303c6b6cd890d

commit b21026cb1a7b8b95675389aaf7c7a05f9561b426
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-13 07:27:18 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-13 07:27:18 +0900

    Enhanced RDoc for Symbol (#5795)



    Treats:

        #==
        #inspect
        #name
        #to_s
        #to_sym
        #to_proc
        #succ
        #<=>
        #casecmp
        #casecmp?
        #=~
        #match
        #match?

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 381475f02e6b44ae729f9403637b30c445b622e5
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-04-12 22:18:41 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-04-12 22:54:57 +0900

    Use an empty string when building File.expand_path

    Allocating a string of length MAXPATHLEN and then shrinking the string
    is inefficient when the resulting path is short. Preallocating a large
    string is also a problem for Variable Width Allocation since we can't
    easily downsize the capacity.

    I ran the following benchmark:

    ```ruby
    Benchmark.ips do |x|
      {
        "empty" => "",
        "short" => "a/" * 10,
        "medium" => "a/" * 100,
        "long" => "a/" * 500
      }.each do |name, path|
        x.report(name) do |times|
          i = 0
          while i < times
            File.expand_path(path)
            i += 1
          end
        end
      end
    end
    ```

    On this commit:

    ```
     empty     97.486k (± 0.7%) i/s -    492.915k in   5.056507s
     short     96.026k (± 2.4%) i/s -    486.489k in   5.068966s
    medium     86.304k (± 1.3%) i/s -    435.336k in   5.045112s
      long     59.395k (± 1.7%) i/s -    302.175k in   5.089026s
    ```

    On master:

    ```
     empty     94.138k (± 1.4%) i/s -    472.158k in   5.016590s
     short     92.043k (± 1.4%) i/s -    468.180k in   5.087496s
    medium     84.910k (± 2.3%) i/s -    425.750k in   5.017007s
      long     61.503k (± 2.7%) i/s -    309.723k in   5.039429s
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5789

commit d0a822eec524522d81ffc7da2bb1baf906b0318a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-07-01 06:39:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-12 21:30:49 +0900

    Fix dtoa buffer overrun

    https://hackerone.com/reports/1248108

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5794

commit cf2bbcfff2985c116552967c7c4522f4630f2d18
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-06-11 00:06:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-12 20:24:14 +0900

    Just free compiled pattern if no space is used

    https://hackerone.com/reports/1220911

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5793

commit de5aa98f396cfe900b456e78a9c451ac8a2a3e97
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-12 05:23:25 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-12 05:23:25 +0900

    Correct whitespace in array.c (#5791)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 7d709ceb12259b2b863a4a1f484987840d174514
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-12 03:49:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-12 03:49:38 +0900

    Specify which core classes are convertible (#5790)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 5f1f8c244da69a69ff62475be4c022f2c7e850d4
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-12 02:28:07 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-12 02:28:07 +0900

    Fix fake.rb RUBY_DESCRIPTION faking for JITs

    Previously, `make test-spec` was not printing the description with +YJIT
    even when YJIT was indeed enabled. It was confusing on CI. `fake.rb` was
    changing the `RUBY_DESCRIPTION` constant incorrectly.

    I suppose `make test-spec` mostly needs the `mkmf` faking and not the
    faking of `RUBY_.*` constants, so maybe there is an opportunity to simplify
    in the future.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5782

    Merged-By: XrXr

commit ebb4378237e572ce2e888136a613c7c051439f95
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-04-12 00:17:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-12 00:17:34 +0900

    [ruby/net-http] Add HTTP#response_body_encoding for setting response body encoding

    This allows for the ability to opt-in to a method to set the
    encoding of response bodies.  By setting the accessor to a String
    or Encoding instance, it will use the specified encoding.
    Setting the value of true will try to detect the encoding of the
    response body, either using the Content-Type header (assuming it
    specifies charset) or by scanning for a <meta> tag in the document
    that specifies the encoding.  The default is false in which case
    no forcing of encoding will be done (same as before the patch).

    Implements [Feature #2567]
    Implements [Feature #15517]

    https://github.com/ruby/net-http/commit/6233e6b7c1

    Co-authored-by: Yui Naruse <naruse@ruby-lang.org>

commit 44a911a293ca6448f9e029e22492e78a1828a16b
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-04-11 10:05:16 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-04-11 10:05:16 +0900

    test/ruby/test_keyword.rb: Prevent warning: assigned but unused variable

commit c789bdd31118e12446c443b204b3ab47f0ae5154
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-10 22:33:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-10 22:33:49 +0900

    [DOC] Enhanced RDoc for Array intro (#5781)

    This covers the first few sections of the class doc for Array.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 5b467400d220125aed9d000e258c3cc3ca505421
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-04-09 16:53:13 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-09 17:43:46 +0900

    [DOC]Some link prefix replace

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5783

commit 70415071e82964bbd9cbf9391806ce7f396cf2a2
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-09 04:25:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-09 04:25:38 +0900

    Fix some RDoc links (#5778)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit c77a31df5ed17231b2ddd213899716b900181ad2
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-04-08 16:44:03 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-04-08 21:30:32 +0900

    call `const_added` after `autoload`

    When calling `const_added` while process in `autoload`, it can
    cause synchronization issue because of a thread swithcing.

    http://ci.rvm.jp/logfiles/brlog.trunk.20220407-152213#L489

    ```
    1)
    Module#autoload (concurrently) raises a LoadError in each thread if the file does not exist ERROR
    NameError: uninitialized constant ModuleSpecs::Autoload::FileDoesNotExist

                ModuleSpecs::Autoload::FileDoesNotExist
                                     ^^^^^^^^^^^^^^^^^^
    /tmp/ruby/v3/src/trunk/spec/ruby/core/module/autoload_spec.rb:965:in `block (5 levels) in <top (required)>'
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5780

commit 798e21637f28d308bf0d52081fedd1a49cd1f851
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-04-08 12:29:02 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-04-08 13:31:28 +0900

    sync `vm->constant_cache`

    On multi-ractors, `vm->constant_cache` (and so on) can be accessed
    in parallel so we need to synchronize the accesses to them.

    http://rubyci.s3.amazonaws.com/centos7/ruby-master/log/20220407T213003Z.log.html.gz#btest

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5779

commit 9ca3d537b9dffba416bd37dfb25466f2cebc8510
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-08 04:29:04 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-08 04:29:04 +0900

    All-in-one RDoc for class String (#5777)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 16e08d53a0c78c149960b687c6ac735f21d5c405
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-07 06:29:13 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-08 01:49:28 +0900

    Fix strict aliasing issue

    `rb_id_table_lookup()` writes to a `VALUE`, which is definitely a distinct
    type from `st_table *`. With LTO, the compiler is allowed by N1256
    §6.5p7 to remove the output parameter write via type-based alias
    analysis.

    See also: a0a8f2abf53

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5773

commit 697eed63e81eff0e02226ceb6ab3bd2fd99000e3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-07 22:27:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-07 22:38:39 +0900

    [ruby/psych] Update autoconf files bundled with yaml-2.5

    https://github.com/ruby/psych/commit/e28f17ac18

commit 7b1ece9b9490a892861f2336ae41d611a06bdf2b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-07 19:19:13 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-07 19:19:13 +0900

    Get rid of type-punning pointer casts

commit 9e58c3c5195f0745ba7f125a3478046c5eb3acd7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-07 19:07:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-07 19:07:24 +0900

    Get rid of type aliasing

commit 23090cf681cd4f92fdbe4c1bdea50ccf403ea4c6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-07 17:55:51 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-07 18:01:10 +0900

    Suppress an unused function

commit 21f006f5f7c161fd3857f69186e810f1958bd7f0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-07 15:03:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-07 15:03:24 +0900

    Retrieve previously configured macros also other than `extensions`

commit 5af507f527d8d83eb3e68fd8b701f7febe0b2e96
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-07 12:19:18 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-07 12:19:18 +0900

    Update `heap_pages_deferred_final` atomically

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5775

commit 0b091fdac6ceb33b7379ceddc9a49a79d0e158b2
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-04-07 11:14:03 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-07 11:14:03 +0900

    Raise RuntimeError if Kernel#binding is called from a non-Ruby frame

    Check whether the current or previous frame is a Ruby frame in
    call_trace_func and rb_tracearg_binding before attempting to
    create a binding for the frame.

    Fixes [Bug #18487]

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5767

    Merged-By: jeremyevans <code@jeremyevans.net>

commit bff12e1a9a726baef8d5d8876669a1506555ec09
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-04-05 22:36:48 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-07 10:37:52 +0900

    [DOC] Fix comment links

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5765

commit 5c1b76a3a55afeb07116bbd3492303c6b6cd890d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-07 01:44:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-07 09:47:10 +0900

    Install built gem extension binaries

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5774

commit bb0a22a8c05994396aa316c242ff8816d8d0a259
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-06 22:57:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-07 09:47:10 +0900

    Obey spec file locations to rubygems

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5774

commit d7afaf21f2edfac8a606891868a3c4a7025267bd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-06 20:28:00 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-07 09:47:10 +0900

    Move the target directory of bundled gems like as rubygems

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5774

commit 17ce0b9b846a065065008b5fb2e9f8ad13058fa1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-06 20:25:53 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-07 09:47:10 +0900

    Retrieve configured gems info

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5774

commit db3d111c1d1e90b400f1e737ded6a4e4bdf2cec8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-05 23:24:00 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-07 09:47:10 +0900

    Bundled gems are expanded under `.bundle/gems` now

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5774

commit 3607657e1c613b1c1988c0a954bf03547978974f
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-04-06 21:50:01 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-07 09:46:05 +0900

    [DOC] Fix linux kernel commit links

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5768

commit 21c8b9eb99f170ca6a63fd36413dc25ed0cff3d2
  Author:     Alan Wu <alanwu@ruby-lang.org>
  AuthorDate: 2022-04-07 07:39:27 +0900
  Commit:     Alan Wu <alanwu@ruby-lang.org>
  CommitDate: 2022-04-07 07:39:27 +0900

    Copyedit parallel test harness crash message

    Mea culpa.

    Co-authored-by: Kaíque Kandy Koga <kaiquekandykoga@gmail.com>

commit 16e6d7d186bc9d2ccd14bf5c18cca7f53ff9d970
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-04-07 04:51:00 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-07 07:22:55 +0900

    [rubygems/rubygems] Set `@tempdir` as early as possible

    We have seen some errors during test `setup` before `@tempdir` is
    actually set, in particular, when instantiating `Gem::MockUI` which in
    turn requires `stringio`. In this case, the `teardown` method will also
    produce an error because it tries to remove the `@tempdir`, which has
    not been set, so tries to remove a `nil` directory. It results in a
    confusing error like

    ```
    <internal:D:/a/rubygems/rubygems/lib/rubygems/core_ext/kernel_require.rb>:85:in `require': Interrupt
    Error: test_bump_one_level(TestGemVersion): TypeError: no implicit conversion of nil into String
    C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/3.1.0/fileutils.rb:1570:in `path'
            from <internal:D:/a/rubygems/rubygems/lib/rubygems/core_ext/kernel_require.rb>:85:in `require'
    C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/3.1.0/fileutils.rb:1570:in `block in fu_list'
            from D:/a/rubygems/rubygems/lib/rubygems/mock_gem_ui.rb:43:in `initialize'
    C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/3.1.0/fileutils.rb:1570:in `map'
            from D:/a/rubygems/rubygems/test/rubygems/helper.rb:323:in `new'
    C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/3.1.0/fileutils.rb:1570:in `fu_list'
            from D:/a/rubygems/rubygems/test/rubygems/helper.rb:323:in `setup'
    C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/3.1.0/fileutils.rb:616:in `rm_r'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/fixture.rb:284:in `run_fixture_callback'
    C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/3.1.0/fileutils.rb:638:in `rm_rf'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/fixture.rb:272:in `block in create_fixtures_runner'
    D:/a/rubygems/rubygems/test/rubygems/helper.rb:462:in `teardown'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/fixture.rb:276:in `block in create_fixtures_runner'
    ===============================================================================
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/fixture.rb:257:in `run_fixture'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/fixture.rb:292:in `run_setup'
    Finished in 683.0312862 seconds.
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/testcase.rb:564:in `block in run'
    -------------------------------------------------------------------------------
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/testcase.rb:563:in `catch'
    2185 tests, 5929 assertions, 0 failures, 1 errors, 28 pendings, 0 omissions, 0 notifications
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/testcase.rb:563:in `run'
    98.7185% passed
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/testsuite.rb:124:in `run_test'
    -------------------------------------------------------------------------------
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/testsuite.rb:53:in `run'
    3.20 tests/s, 8.68 assertions/sTerminate batch job (Y/N)?
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/testsuite.rb:124:in `run_test'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/testsuite.rb:53:in `run'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/testsuite.rb:124:in `run_test'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/testsuite.rb:53:in `run'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/ui/testrunnermediator.rb:67:in `run_suite'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/ui/testrunnermediator.rb:45:in `block (2 levels) in run'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/ui/testrunnermediator.rb:102:in `with_listener'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/ui/testrunnermediator.rb:41:in `block in run'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/ui/testrunnermediator.rb:39:in `catch'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/ui/testrunnermediator.rb:39:in `run'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/ui/testrunner.rb:40:in `start_mediator'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/ui/testrunner.rb:25:in `start'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/ui/testrunnerutilities.rb:24:in `run'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/autorunner.rb:458:in `block in run'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/autorunner.rb:514:in `change_work_directory'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/autorunner.rb:457:in `run'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit/autorunner.rb:66:in `run'
            from C:/hostedtoolcache/windows/Ruby/3.1.1/x64/lib/ruby/gems/3.1.0/gems/test-unit-3.5.3/lib/test/unit.rb:518:in `block (2 levels) in <top (required)>'
    rake aborted!
    Interrupt:
    ```

    The should make this same error much cleaner if it happens again.

    https://github.com/rubygems/rubygems/commit/fa649d22e8

commit 399ef463f7d28efdec207d34b2357608c66ee7a6
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-07 06:03:39 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-07 07:11:43 +0900

    Copyedit parallel test harness crash message

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5772

commit 717b20ee305e523123bbb18d54fe8e87a78a9cb1
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-07 05:47:22 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-07 05:47:22 +0900

    [DOC] Enhanced RDoc for string slices (#5769)

    Creates file doc/string/slices.rdoc that the string slicing methods can link to.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 8197ae35f90aa1c260b5782c08827d5f52816908
  Author:     Soutaro Matsumoto <matsumoto@soutaro.com>
  AuthorDate: 2022-04-06 23:57:00 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-06 23:57:00 +0900

    Bundle RBS 2.3.2 (#5762)

  Notes:
    Merged-By: soutaro <matsumoto@soutaro.com>

commit c59488a8e3410f93a919c21a9df056f4344aac3e
  Author:     Ashley Ellis Pierce <anellis12@gmail.com>
  AuthorDate: 2022-03-22 23:05:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-06 08:55:00 +0900

    [rubygems/rubygems] Use `ask_yes_no`

    https://github.com/rubygems/rubygems/commit/1d38e167fa

commit 37a19f7f67f2e1836e981084f20ea5692b6a09d5
  Author:     Ashley Ellis Pierce <anellis12@gmail.com>
  AuthorDate: 2022-03-08 22:15:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-06 08:54:59 +0900

    [rubygems/rubygems] Extract default_host method

    https://github.com/rubygems/rubygems/commit/6e10e75574

commit b75b67f1136363ea54e9f79a4d63a9a355312f26
  Author:     Ashley Ellis Pierce <anellis12@gmail.com>
  AuthorDate: 2022-02-25 00:50:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-06 08:54:59 +0900

    [rubygems/rubygems] Use YAML

    https://github.com/rubygems/rubygems/commit/6122e8cac5

commit bb3ecdba6a48e9c82b651e74debcec1a10081126
  Author:     Ashley Ellis Pierce <anellis12@gmail.com>
  AuthorDate: 2022-02-25 00:16:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-06 08:54:58 +0900

    [rubygems/rubygems] Accomodate gem hosts without profile/me endpoint

    https://github.com/rubygems/rubygems/commit/31b6dcf5d3

commit 75083704bfeac2fb2a3e104389cd10ddf752b7d2
  Author:     Ashley Ellis Pierce <anellis12@gmail.com>
  AuthorDate: 2022-02-22 19:26:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-06 08:54:58 +0900

    [rubygems/rubygems] Update endpoint

    https://github.com/rubygems/rubygems/commit/a5a7b3ec96

commit ec09b2dba15ce4f47c98cbd5daf1bdbc1852b5e5
  Author:     Ashley Ellis Pierce <anellis12@gmail.com>
  AuthorDate: 2022-01-25 07:12:48 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-06 08:54:57 +0900

    [rubygems/rubygems] Remove whitespace

    https://github.com/rubygems/rubygems/commit/08c2d88137

commit 925d73b3eec1aa213173c24c3b784bbb7debe79e
  Author:     Ashley Ellis Pierce <anellis12@gmail.com>
  AuthorDate: 2022-01-25 07:09:25 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-06 08:54:56 +0900

    [rubygems/rubygems] Make changes <2.6 compatible

    Multiple params to merge was not introduced until Ruby 2.6, so this
    merges the two additional params together first and then merges that
    with the request body

    https://github.com/rubygems/rubygems/commit/870f7e9a1c

commit 8650811bc04d0f037a634e594501154106e6aec9
  Author:     Ashley Ellis Pierce <anellis12@gmail.com>
  AuthorDate: 2022-01-25 07:04:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-06 08:54:56 +0900

    [rubygems/rubygems] Fix lint

    https://github.com/rubygems/rubygems/commit/a68bfde18e

commit 7bb6449fe5e90a189dd03a47b3862f9a5912705d
  Author:     Ashley Ellis Pierce <anellis12@gmail.com>
  AuthorDate: 2022-01-25 06:19:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-06 08:54:55 +0900

    [rubygems/rubygems] Make mfa the default

    https://github.com/rubygems/rubygems/commit/0b636f6902

commit 4ae3b78c9510d5bd0cf8465bcbf125ae96a9e5bf
  Author:     Ashley Ellis Pierce <anellis12@gmail.com>
  AuthorDate: 2022-01-25 06:13:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-06 08:54:55 +0900

    [rubygems/rubygems] Correct mfa level name

    https://github.com/rubygems/rubygems/commit/a002e351ae

commit b3f1b3ccef6f61b95685690e5a8faaa3f009c25f
  Author:     Ashley Ellis Pierce <anellis12@gmail.com>
  AuthorDate: 2022-01-25 05:25:28 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-06 08:54:54 +0900

    [rubygems/rubygems] Enable mfa on specific keys during gem signin

    https://github.com/rubygems/rubygems/commit/e787f7f655

commit 8ee4a82e8cfe6f39abeb60013447bdd2a3a3c61f
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-04-06 05:37:00 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-06 05:37:00 +0900

    RubyVM.stat constant cache metrics (#5766)

    Before the new constant cache behavior, caches were invalidated by a
    single global variable. You could inspect the value of this variable
    with RubyVM.stat(:global_constant_state). This was mostly useful to
    verify the behavior of the VM or to test constant loading like in Rails.

    With the new constant cache behavior, we introduced
    RubyVM.stat(:constant_cache) which returned a hash with symbol keys and
    integer values that represented the number of live constant caches
    associated with the given symbol. Additionally, we removed the old
    RubyVM.stat(:global_constant_state).

    This was proven to be not very useful, so it doesn't help you diagnose
    constant loading issues. So, instead we added the global constant state
    back into the RubyVM output. However, that number can be misleading as
    now when you invalidate something like `Foo::Bar::Baz` you're actually
    invalidating 3 different lists of inline caches.

    This commit attempts to get the best of both worlds. We remove
    RubyVM.stat(:global_constant_state) like we did originally, as it
    doesn't have the same semantic meaning and it could be confusing going
    forward. Instead we add RubyVM.stat(:constant_cache_invalidations) and
    RubyVM.stat(:constant_cache_misses). These two metrics should provide
    enough information to diagnose any constant loading issues, as well as
    provide a replacement for the old global constant state.

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 2304cfa4c08a347f4df4915f88fb062cb12e4eeb
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-05 04:23:42 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-06 01:57:55 +0900

    Document MakeMakefile#append_cflags

    This method is at least 7 years old and is widely used in the wild.
    Since we need to support it, let's document it to make it discoverable.
    Add docs and move it out of the `# :stopdoc:` zone.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5760

commit 3bb70a6924ddd83f90b508b5bbc4d5629b8a41c6
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-04-05 05:14:45 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-04-05 23:35:25 +0900

    Fix using anonymous block in method accepting explicit keywords

    Record block ID before vtable_pop, so the incorrect one doesn't
    override it.

    Fixes [Bug #18673]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5761

commit 97ce030954dab3f219779e235bee53ba408fbaca
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-01 20:15:00 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-05 22:35:40 +0900

    Load fake.rb at `BTESTRUBY`

    So that `mkmf` checks work from `make run`, and also remove
    duplicate `$(MINIRUBYOPT)` which is used in `$(MINIRUBY)`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5747

commit d9c6f8d45c658121dcabb2e26cddb473e907d724
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-04-05 19:23:38 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-04-05 19:23:38 +0900

    Try to fix NoMethodError on slow environments

    ```
      1) Failure:
    TestParallel::TestParallel#test_hungup [/home/user/ruby/tool/test/testunit/test_parallel.rb:215]:
    Expected /^Retrying hung up testcases\.+$/ to match "Run options: \n" +
    "  --seed=43403\n" +
    "  --ruby\n" +
    "  \"./miniruby -I../lib -I. -I.ext/common ../tool/runruby.rb --extout=.ext -- --disable-gems\"\n" +
    "  -j\n" +
    "  t1\n" +
    "  --worker-timeout=1\n" +
    "\n" +
    "# Running tests:\n" +
    "\n" +
    "/home/user/ruby/tool/lib/test/unit.rb:687:in `block in _run_parallel': undefined method `<' for nil:NilClass (NoMethodError)\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:538:in `block in quit_workers'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:537:in `reject!'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:537:in `quit_workers'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:687:in `_run_parallel'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:810:in `_run_suites'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:849:in `_run_suites'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:1479:in `_run_anything'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:1263:in `_run_anything'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:1654:in `run_tests'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:1641:in `block in _run'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:1640:in `each'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:1640:in `_run'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:1682:in `run'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:1034:in `run'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:882:in `run'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:154:in `run'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:1761:in `run'\n" +
    "\tfrom /home/user/ruby/tool/lib/test/unit.rb:1765:in `run'\n" +
    "\tfrom /home/user/ruby/tool/test/testunit/tests_for_parallel/runner.rb:14:in `<main>'\n".
    ```

commit 573005983af9d3d1cfd3ad7251dad9855f3be552
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-04-05 18:54:57 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-04-05 18:54:57 +0900

    Give some tips on how to find the missing ruby2_keywords

commit d3f659d3f94cc8cf8315e11f5d38b4c62c7f24ae
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-04-05 18:36:32 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-04-05 18:42:02 +0900

    Add NEWS entry for Bug #18625 to help adding ruby2_keywords in the missing places

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5684

commit 4f25207e72885a112c7b806688270241e1a9ff30
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-03-22 01:46:02 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-04-05 18:42:02 +0900

    Use latest RSpec to get rspec-mocks ruby2_keywords fix

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5684

commit 752c3dad989bb66e4be61911a82fed992067bdc3
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-12 06:49:36 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-04-05 18:42:02 +0900

    Unflag a splatted flagged hash if the method doesn't use ruby2_keywords

    For a method such as:

      def foo(*callee_args) end

    If this method is called with a flagged hash (created by a method
    flagged with ruby2_keywords), this previously passed the hash
    through without modification.  With this change, it acts as if the
    last hash was passed as keywords, so a call to:

      foo(*caller_args)

    where the last element of caller_args is a flagged hash, will be
    treated as:

      foo(*caller_args[0...-1], **caller_args[-1])

    As a result, inside foo, callee_args[-1] is an unflagged duplicate
    of caller_args[-1] (all other elements of callee_args match
    caller_args).

    Fixes [Bug #18625]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5684

commit 5e7ebc7e6e626db01766294edbe41019b98b2e84
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-04-05 14:31:54 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-05 14:31:54 +0900

    Ignore yaml source

commit 839577d8337e70e43d0a62d56183038e2276b6fa
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-04-05 14:30:47 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-04-05 14:30:47 +0900

    Removed mswin patch for zlib-1.2.11

commit 1ac839dc3a70fa5dd18e67a37026234514b04b83
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-04-05 14:07:25 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-04-05 14:08:07 +0900

    Apply timescale configuration for tests of Regexp.timeout

commit 18044f4fbbfdef27b1e41c109d63c276026008c5
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-05 03:10:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-05 08:56:21 +0900

    [ruby/psych] Improve libyaml source downloading error messages

    People trying to build CRuby by following the instructions in its
    [README] have been running into [errors] due to missing `libyaml`
    on their system. Let's try to present a better error message when
    it happens.

    [README]: https://github.com/ruby/ruby/tree/fb5aa31e2d20ea8e1425432672f4de4c8ca2c26b#how-to-compile-and-install
    [errors]: https://github.com/ruby/psych/issues/552

    https://github.com/ruby/psych/commit/20a633028e

commit a19b2d59fc85abbb064d3923211161ba158c2fcb
  Author:     Eric Wong <normal@ruby-lang.org>
  AuthorDate: 2022-01-18 05:36:49 +0900
  Commit:     Eric Wong <normal@ruby-lang.org>
  CommitDate: 2022-04-05 06:46:02 +0900

    ruby_gc_set_params: update malloc_limit when env is set

    During VM startup, rb_objspace_alloc sets malloc_limit
    (objspace->malloc_params.limit) before ruby_gc_set_params is called, thus
    nullifying the effect of RUBY_GC_MALLOC_LIMIT before the initial GC run.

    The call sequence is as follows:

      main.c::main()
        ruby_init
          ruby_setup
            Init_BareVM
              rb_objspace_alloc // malloc_limit = gc_params.malloc_limit_min;
        ruby_options
          ruby_process_options
            process_options
              ruby_gc_set_params // RUBY_GC_MALLOC_LIMIT => gc_params.malloc_limit_min

    With ruby_gc_set_params setting malloc_limit, RUBY_GC_MALLOC_LIMIT
    affects the process sooner.

    [ruby-core:107170]

commit 4a4485adbd13a75019ece34490b291da1dde8d91
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-05 04:18:10 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-05 04:18:10 +0900

    Enhanced RDoc for String#index (#5759)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 42000664be43f8c70322557703003b9141cfb28f
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-04-05 01:24:06 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-04-05 03:41:05 +0900

    Bring back RubyVM.stat(:global_constant_state)

    This was removed as part of [Feature #18589]. But some applications were relying on this behavior. So bringing this back to make it better for backward compatibility going forward.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5758

commit ea9c09a92c770e9e3cb0f5ceafd42c8407836f7e
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-04-02 02:31:19 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-04-04 22:27:14 +0900

    Disable mmap on WASM

    WASM does not have proper support for mmap.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5749

commit c482ee402502cee8bbea7fcb107d44de586bfc49
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-04-02 02:26:07 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-04-04 22:27:14 +0900

    Make heap page sizes 64KiB by default

    Commit dde164e968e382d50b07ad4559468885cbff33ef decoupled incremental
    marking from page sizes. This commit changes Ruby heap page sizes to
    64KiB. Doing so will have several benefits:

    1. We can use compaction on systems with 64KiB system page sizes (e.g.
       PowerPC).
    2. Larger page sizes will allow Variable Width Allocation to increase
       slot sizes and embed larger objects.
    3. Since commit 002fa2859962f22de8afdbeece04966ea57b7da9, macOS has 64
       KiB pages. Making page sizes 64 KiB will bring these systems to
       parity.

    I have attached some bechmark results below.

    Discourse:
        On Discourse, we saw much better p99 performance (e.g. for "categories"
        it went from 214ms on master to 134ms on branch, for "home" it went
        from 265ms to 251ms). We don’t see much change in p60, p75, and p90
        performance. We also see a slight decrease in memory usage by 1.04x.

        Branch RSS: 354.9MB
        Master RSS: 368.2MB

    railsbench:
        On rails bench, we don’t see a big change in RPS or p99
        performance. We don’t see a big difference in memory usage.

        Branch RPS: 826.27
        Master RPS: 824.85

        Branch p99: 1.67
        Master p99: 1.72

        Branch RSS: 88.72MB
        Master RSS: 88.48MB

    liquid:
        We don’t see a significant change in liquid performance.

        Branch parse & render: 28.653 I/s
        Master parse & render: 28.563 i/s

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5749

commit f8455a4fafdb6c86df95142d8b1347b0e02ef3ae
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-04-04 16:36:02 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-04-04 18:54:27 +0900

    Make typeprof support RBS 2.3.0

    Since RBS 2.3.0, nil? returns true or false instead of bool

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5756

commit 57377e5d537c78bab4201a730cf3ab04a3085f6a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-01 12:38:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-04 16:06:16 +0900

    [ruby/psych] Propagate `CC` to libyaml

    It is needed for cross-compiling to set properly.  Just
    `--target`/`--host`/`--build` seems insufficient on some
    platforms.

    https://github.com/ruby/psych/commit/2d00c0c203

commit de427c3ce0368ed075b09dac95f8e8a01fce8673
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-04 15:05:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-04 15:05:44 +0900

    [ruby/optparse] Define `inspect` and `pretty_inspect`

    https://github.com/ruby/optparse/commit/a3f0ec21b1

commit 4db75b6fe7453624bcb2286c4b191b49fc657f2e
  Author:     Hartley McGuire <skipkayhil@gmail.com>
  AuthorDate: 2022-04-04 10:56:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-04 14:14:40 +0900

    [rubygems/rubygems] bump actions/checkout to 3 in bundler gem template

    Dependabot bumped the repo's configuration in 0c996fa but it did not
    bump the version in the template for `bundler gem`

    https://github.com/rubygems/rubygems/commit/e14980e169

commit 0b0ae583f4e25e378294df5e19a76f9fd541a6d0
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-04 00:09:34 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-04 00:09:34 +0900

    [DOC] Enhanced RDoc for String (#5753)

    Treats:
        #length
        #bytesize

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit f801386f0c7051085da9d6ca660642f3aa08c81e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-03 13:38:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-03 13:38:31 +0900

    [DOC] Describe append_{c,cpp,ld}flags

commit 7648bae4c86121b0b259587da11d27297c248633
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-04-03 06:50:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-03 06:51:07 +0900

    [ruby/net-http] Revert "Update the content-length heading when decoding bodies"

    This reverts commit https://github.com/ruby/net-http/commit/a7cb30124cf1.

    This is causing errors in Ruby's CI, will revert for now and
    try again after testing a fix with Ruby's CI.

    https://github.com/ruby/net-http/commit/7b852b1feb

commit 7be4d900f0e14e6093c726fbc4416560fd56c931
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-03 04:26:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-03 04:26:49 +0900

    [DOC] Enhanced RDoc for String (#5751)

        Adds to doc for String.new, also making it compliant with documentation_guide.rdoc.
        Fixes some broken links in io.c (that I failed to correct yesterday).

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 44d0caa1ca56b17bf0ed9e3daf446c1eaacae108
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-03-17 20:05:15 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-04-03 01:13:16 +0900

    dir.c: refresh pathtype when emulating `IFTODT` in `glob_helper`

    When using `IFTODT` defined in libc, `dirent.d_type` oriented pathtype
    is compatible with `IFTODT(stat.st_mode)`. However they are not
    compatible when emulating `IFTODT`, so `glob_helper` has to stat instead
    of reusing dirent result by passing unknown pathtype to `glob_helper`.

    This is a follow-up fix of 0c90ca4dd0abbd28d7bb34b9241d93995ab9cfb7

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5680

commit 07acd6006c69370c7af4ca50221f1a8166d78e3f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-02 19:03:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-02 19:34:05 +0900

    [ruby/zlib] Use `z_size_t` version functions

    https://github.com/ruby/zlib/commit/1ce6625fff

commit e73d76027e7a7e0927785c66629c18265de31901
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-04-02 19:29:03 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-04-02 19:29:03 +0900

    Update bundled_gems

commit 4ee71097a0557d01e5689c5edf52e508c6978571
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-02 19:07:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-02 19:23:59 +0900

    [ruby/zlib] Mask checksums to lower 32bits on also IL32 platforms

    https://github.com/ruby/zlib/commit/e1ead85113

commit 1cbdedec895070df1df96d05370cf8da084ab6fa
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-02 16:06:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-02 17:01:33 +0900

    [ruby/zlib] Mask checksums to lower 32bits

    Upper bits affect the result of `crc32` in zlib 1.2.12.

    https://github.com/ruby/zlib/commit/9ab6d04af1

commit 729b9a85439d5cec7b73f8c0c41c4377e6ce304c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-02 15:05:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-04-02 15:06:12 +0900

    [DOC] Fix broken links to encodings.rdoc

    Also prefers class name based references than file name based
    references.

commit 81741690a0cc6a244821cf4c80030afa2bbc2565
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-02 10:41:04 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-02 10:41:04 +0900

    [DOC] Main doc for encodings moved from encoding.c to doc/encodings.rdoc (#5748)

    Main doc for encodings moved from encoding.c to doc/encodings.rdoc

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 6068da8937d7e4358943f95e7450dae7179a7763
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-04-01 00:04:25 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-02 03:48:22 +0900

    Finer-grained constant cache invalidation (take 2)

    This commit reintroduces finer-grained constant cache invalidation.
    After 8008fb7 got merged, it was causing issues on token-threaded
    builds (such as on Windows).

    The issue was that when you're iterating through instruction sequences
    and using the translator functions to get back the instruction structs,
    you're either using `rb_vm_insn_null_translator` or
    `rb_vm_insn_addr2insn2` depending if it's a direct-threading build.
    `rb_vm_insn_addr2insn2` does some normalization to always return to
    you the non-trace version of whatever instruction you're looking at.
    `rb_vm_insn_null_translator` does not do that normalization.

    This means that when you're looping through the instructions if you're
    trying to do an opcode comparison, it can change depending on the type
    of threading that you're using. This can be very confusing. So, this
    commit creates a new translator function
    `rb_vm_insn_normalizing_translator` to always return the non-trace
    version so that opcode comparisons don't have to worry about different
    configurations.

    [Feature #18589]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5716

commit 20c190f95a28dd4e57cb96f939ff314dfb88b1f4
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-03-31 04:21:34 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-04-02 03:48:22 +0900

    Fix up global name references in misc/lldb_disasm.py

    Some of the symbols had changed names and the script was no longer
    finding them.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5716

commit 58adb1636be32fb95173f01e448673dbae4511b0
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-03-02 06:48:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-02 02:49:21 +0900

    [ruby/net-http] Update the content-length heading when decoding bodies

    Previously, the content-encoding header was removed and the body
    was modified, but the content-length header was not modified,
    resulting in the content-length header not matching the body
    length.

    Fixes [Bug #16672]

    https://github.com/ruby/net-http/commit/a7cb30124c

commit 651b832c1b574df1c6095c49d77cccf0f250aa7f
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-04-01 22:59:36 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-04-01 23:52:18 +0900

    extract magic number from gc_sweep_step

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5746

commit fe21b7794af0cdb7ebd502e2c0da38c68fd89839
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-04-01 23:26:54 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-04-01 23:27:18 +0900

    Use mmap for heap page allocation only

    Currently, rb_aligned_malloc uses mmap if Ruby heap pages can be
    allocated through mmap (when system heap page size <= Ruby heap page
    size). If Ruby heap page sizes is increased to 64KiB, then mmap will
    be used on systems with 64KiB system page sizes. However, the transient
    heap also uses rb_aligned_malloc and requires 32KiB alignment. This
    would break in the current implementation since it would allocate sizes
    through mmap that is not a multiple of the system page size.

    This commit adds heap_page_body_allocate which will use mmap when
    possible and changes rb_aligned_malloc to not use mmap (and only
    use posix_memalign).

commit d1d48cb690fdad855da94b2a2d11721428bc06ba
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-04-01 23:22:49 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-04-01 23:22:49 +0900

    Revert "Raise RuntimeError if Kernel#binding is called from a non-Ruby frame"

    This reverts commit 343ea9967e4a6b279eed6bd8e81ad0bdc747f254.

    This causes an assertion failure with -DRUBY_DEBUG=1 -DRGENGC_CHECK_MODE=2

commit d8352ff3ac6960f029e3c9253f527f6e4a845645
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-03-22 05:46:58 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-04-01 21:45:52 +0900

    [Feature #18619] remove FL_FROM_FREELIST

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5637

commit c26a85fc968d19fc40b9aee8fb8451a08e3d26d1
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-04-01 04:39:17 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-04-01 21:45:52 +0900

    [Feature #18619] Remove redundant compaction path

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5637

commit 76572e5a7fc0ffde6501fd9a8c034bb621f11688
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-01-07 07:29:03 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-04-01 21:45:52 +0900

    [Feature #18619] Reverse the order of compaction movement

    This commit changes the way compaction moves objects and sweeps pages in
    order to better facilitate object movement between size pools.

    Previously we would move the scan cursor first until we found an empty
    slot and then we'd decrement the compact cursor until we found something
    to move into that slot. We would sweep the page that contained the scan
    cursor before trying to fill it

    In this algorithm we first move the compact cursor down until we find an
    object to move - We then take a free page from the desired destination
    heap (always the same heap in this current iteration of the code).

    If there is no free page we sweep the page at the sweeping_page cursor,
    add it to the free pages, and advance the cursor to the next page, and
    try again.

    We sweep one page from each size pool in this way, and then repeat that
    process until all the size pools are compacted (all the cursors have
    met), and then we update references and sweep the rest of the heap.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5637

commit b3a05827c716bbb6a54cb6924f5840324806c42c
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-04-01 14:05:00 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-04-01 14:44:08 +0900

    debug.gem v1.5.0

    Note that `mkmf`'s `have_func` doesn't work without installing ruby
    (without `make install`) and `make test-bundled-gems` does not work.
    So the newer test repository is specified.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5738

commit 06f94d1784c6f00ba7d21af57af0d008ad597e70
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-04-01 13:54:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-01 13:56:47 +0900

    [ruby/net-protocol] Bump version to 0.1.3

    https://github.com/ruby/net-protocol/commit/9cf40af499

commit e680e63e7ea79657e06d7c4609720c6ee06442b8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-04-01 00:45:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-01 11:48:50 +0900

    [ruby/psych] Output libyaml configure log

    https://github.com/ruby/psych/commit/c2e3c8579c

commit 222203297966f312109e8eaa2520f2cf2f59c09d
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-04-01 06:26:28 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-01 06:26:28 +0900

    Remove dependency on libcapstone

    We have received reports of build failures due to this configuration
    check modifying compile flags. Since only YJIT devs use this library
    we can remove it to make Ruby easier to build for users.

    See: https://github.com/rbenv/ruby-build/discussions/1933

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5744

    Merged-By: XrXr

commit 056b7a86335f38618c1749674a11e838de7c3c12
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-04-01 05:09:25 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-04-01 05:09:25 +0900

    [DOC] Enhanced RDoc for String (#5742)

    Treats:
        #force_encoding
        #b
        #valid_encoding?
        #ascii_only?
        #scrub
        #scrub!
        #unicode_normalized?
    Plus a couple of minor tweaks.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit bb037f6d8639b7d36ef263ca24d4117d725e71ef
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-03-26 07:04:26 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-04-01 03:39:59 +0900

    Remove hard-coded swept slots threshold

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5720

commit 8a38419b73ec2b698dd2d0462055f3e8f2bc6252
  Author:     Marc-Andre Lafortune <github@marc-andre.ca>
  AuthorDate: 2022-04-01 00:18:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-01 00:18:36 +0900

    [ruby/ostruct] v0.5.5

    https://github.com/ruby/ostruct/commit/ce879e56cf

commit 87517696373cdcf38de2b11d9f2cfbe950e3ef47
  Author:     Charles Oliver Nutter <headius@headius.com>
  AuthorDate: 2022-03-30 04:50:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-04-01 00:16:49 +0900

    [ruby/ostruct] Avoid using block_given in the presence of aliases

    defined?(yield) bypasses the block_given? method (or any aliases
    to it) and always does the right thing.

    https://github.com/ruby/ostruct/commit/4c38fe612e

commit af2ab0dd1c899356d9ec38b052f0df0706efb8f9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-31 19:29:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-31 21:34:48 +0900

    [ruby/psych] Make a static library from PIC object files

    On some platforms, PIC and non-PIC code are incompatible and the
    latter cannot be used for shared objects.

    https://github.com/ruby/psych/commit/5652e32733

commit 834c3b35455ed50c7ad879b3e2f807eaa9b0a328
  Author:     James Hill <james.f.hill@gmail.com>
  AuthorDate: 2022-03-31 09:58:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-31 20:00:10 +0900

    [rubygems/rubygems] Update bundler documentation to reflect bundle config scope changes

    In https://github.com/rubygems/rubygems/pull/4152 `bundle config` was changed
    to default to local scope (instead of global) if the command was executed
    from inside an application directory.

    Updated documentation reflects this change.

    https://github.com/rubygems/rubygems/commit/d92d42cae5

commit d8189ed23f02dd197453279aeee9be1785337d4f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-31 18:01:15 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-31 18:01:15 +0900

    Return only captured range in `MatchData` [Bug #18670]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5740

    Merged-By: nobu <nobu@ruby-lang.org>

commit ddd83e8462db32b7403470ef92ed73ee0daef02b
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-31 12:52:16 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-31 12:52:16 +0900

    test/date/test_date_parse.rb: relax the time limit

    The timeout was very strict for weak CI machines like qemu-riscv.
    Due to the additional overhead for Regexp.timeout=, it started failing
    on such machines.

    http://rubyci.s3.amazonaws.com/debian-riscv64/ruby-master/log/20220330T200018Z.fail.html.gz
    ```
      1) Error:
    TestDateParse#test__parse_too_long_year:
    Timeout::Error: execution expired
    ```

commit 217cea78129174bc964a94e4df547ead0d2f526a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-31 12:11:30 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-31 12:18:28 +0900

    [ruby/psych] Remove `unknown` vendor for cross-compiling tool prefix

    https://github.com/ruby/psych/commit/a4ffa06646

commit 663c297e34a04d0fcf12f317d7c9eb0ffbb5ef7f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-31 10:40:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-31 10:49:56 +0900

    Remove CI configuration files from extracted bundled gems

commit abfd859b139545110e1fcdd8e99575d5e0bfb4e4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-31 09:49:41 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-31 10:49:55 +0900

    Remove github and git related files from extracted bundled gems

commit c499a4c28a62813752aeb894d68d92fcec850ac0
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-31 10:07:09 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-31 10:07:09 +0900

    re.c: stop a wrong warning of "flags ignored" on Regexp.new(//)

    [Bug #18669]

commit 3a70d4cd60d0b0765d44792d226a1f2ffc38c931
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-03-30 12:14:17 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-31 08:35:39 +0900

    [DOC] Fix ghcr link

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5734

commit 9f306618b169143237d8fad0a898f2accf0cdd28
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-31 02:32:51 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-31 07:08:46 +0900

    [Bug #18667] Define RUBY_API_VERSION on Windows

    On other platforms, RUBY_SO_NAME is defined from RUBY_API_VERSION.
    ruby_version contains the ABI version, which is not needed.
    RUBY_API_VERSION is defined as MAJOR.MINOR.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5736

commit 0cb43034b416aaf28bf57ee34bc095fdcb659f33
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-31 04:14:36 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-31 04:14:36 +0900

    Repair format for What's Here in Dir (#5737)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit ffcdbedbfb7fc37564ea046d381954eb53eaf6f9
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-31 03:46:24 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-31 03:46:24 +0900

    Repaired What's Here sections for Range, String, Symbol, Struct (#5735)

    Repaired What's Here sections for Range, String, Symbol, Struct.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 79b59fee16b33527eba348b63c9233d58e396c8c
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-31 03:39:27 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-31 03:39:27 +0900

    Update NEWS for proc autosplat change

commit fbaadd1cfe7fbfd1b904f193f99d7c845a6ed804
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-31 03:03:56 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-31 03:03:56 +0900

    Do not autosplat array in block call just because keywords accepted

    If the block only accepts a single positional argument plus keywords,
    then do not autosplat.  Still autosplat if the block accepts more
    than one positional argument in addition to keywords.

    Autosplatting a single positional argument plus keywords made sense
    in Ruby 2, since a final positional hash could be used as keywords,
    but it does not make sense in Ruby 3.

    Fixes [Bug #18633]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5665

    Merged-By: jeremyevans <code@jeremyevans.net>

commit 75efbb98afe854972a1c832ec5d4d66639c41c74
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-30 22:51:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-30 23:08:13 +0900

    [ruby/psych] Propagate the host configuration to libyaml

    https://github.com/ruby/psych/commit/0e37e19707

commit dde164e968e382d50b07ad4559468885cbff33ef
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-30 02:57:09 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-30 22:33:17 +0900

    Decouple incremental marking step from page sizes

    Currently, the number of incremental marking steps is calculated based
    on the number of pooled pages available. This means that if we make Ruby
    heap pages larger, it would run fewer incremental marking steps (which
    would mean each incremental marking step takes longer).

    This commit changes incremental marking to run after every
    INCREMENTAL_MARK_STEP_ALLOCATIONS number of allocations. This means that
    the behaviour of incremental marking remains the same regardless of the
    Ruby heap page size.

    I've benchmarked against discourse benchmarks and did not get a
    significant change in response times beyond the margin of error. This is
    expected as this new incremental marking algorithm behaves very
    similarly to the previous one.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5732

commit ad808506b300435df24f12ae03338e57a056cdc6
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-30 15:14:48 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-30 16:50:46 +0900

    Update dependencies

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5703

commit 5df2589b64127e86247de26d4db727a62764a869
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-30 14:46:18 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-30 16:50:46 +0900

    internal/ractor.h: Added

    Currently it has only one function prototype.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5703

commit 2ade40276be9f60ed06e7011b41a4c90f03e59b4
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-28 15:03:17 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-30 16:50:46 +0900

    re.c: raise Regexp::TimeoutError instead of RuntimeError

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5703

commit 34b288f8d471e3a3d34f2a63950b483594df282f
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-24 17:01:30 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-30 16:50:46 +0900

    doc/regexp.rdoc: Add explanation about Regexp timeout configuration

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5703

commit ce87bb8bd64869c0d04026d6bca41dc6bd312a73
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-24 17:00:51 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-30 16:50:46 +0900

    re.c: Add `timeout` keyword for Regexp.new and Regexp#timeout

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5703

commit ffc3b37f969a779f93b8f8a5b3591b4ef7de1538
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-24 16:59:11 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-30 16:50:46 +0900

    re.c: Add Regexp.timeout= and Regexp.timeout

    [Feature #17837]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5703

commit 23530d68cb04aed9c2f59a050523b0193ee2d0c1
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-24 14:14:07 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-30 16:50:46 +0900

    ractor.c: Add a helper function to ensure the context is a main ractor

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5703

commit a94002115beaf989aec4c9b2a746ac8d19440e57
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-23 18:41:36 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-30 16:50:46 +0900

    thread.c: Move double2hrtime and hrtime2double to hrtime.h

    ... to make them available in other places than thread.c

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5703

commit 42a0bed351979cb4a59c641fa5f03e49609561fd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-30 16:36:31 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-30 16:36:31 +0900

    Prefix ccan headers (#4568)

    * Prefixed ccan headers

    * Remove unprefixed names in ccan/build_assert

    * Remove unprefixed names in ccan/check_type

    * Remove unprefixed names in ccan/container_of

    * Remove unprefixed names in ccan/list

    Co-authored-by: Samuel Williams <samuel.williams@oriontransfer.co.nz>

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 8d27d00af514153819e44eb8e5f4f8631830ae55
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-30 14:38:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-30 14:38:33 +0900

    Fix locations of the second argument

commit 71aa43c725084ec11827330c8502acc54bf29534
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-19 20:29:17 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-30 11:31:04 +0900

    [ruby/psych] Configure libyaml from the original source

    https://github.com/ruby/psych/commit/54a9ba9d10

commit 0bca029d2f848cc326681d2c324712eec96808e8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-26 21:07:06 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-30 10:54:52 +0900

    [DOC] Use simple references to operator methods

    Method references is not only able to be marked up as code, also
    reflects `--show-hash` option.
    The bug that prevented the old rdoc from correctly parsing these
    methods was fixed last month.

commit 5d43969e921f566ba2080f83ac68b75ebccdf30b
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-30 10:33:16 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-30 10:33:16 +0900

    Update NEWS for TracePoint#enable target_thread default change

commit 3cad54a246e6f292cc58d10ff002525edc6f404a
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-02-09 01:55:49 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-30 10:14:33 +0900

    Fix comment

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5359

commit d8dfabbfe6522c495d280e6a12201c3fa88988b5
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-02-09 01:51:55 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-30 10:14:33 +0900

    Fix spec description

    Co-authored-by: Benoit Daloze <eregontp@gmail.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5359

commit 750e18594b138465506aba9a1225b9897026a06a
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-02-09 01:50:57 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-30 10:14:33 +0900

    Update comment for TracePoint#enable

    Co-authored-by: Benoit Daloze <eregontp@gmail.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5359

commit 3c6a0033e3dc7da2898232a2efc7367ae6fc536a
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-12-28 07:08:59 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-30 10:14:33 +0900

    Avoid trace events in implementation of TracePoint#enable

    This is more backwards compatible, and should fix issues with
    power_assert.

    Unfortunately, it requires using a sentinel value as the default
    value of target_thread, instead of the more natural expression
    used in the original approach.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5359

commit 9c1d32a7ada794ecd0356d56f7be3cdf3982d8ac
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-12-28 05:52:04 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-30 10:14:33 +0900

    Make TracePoint#enable with block target current thread by default

    If TracePoint#enable is passed a block, it previously started
    the trace on all threads.  This changes it to trace only the
    current thread by default.  To limit the scope of the change,
    the current thread is only used by default if target and
    target_line are both nil.  You can pass target_thread: nil
    to enable tracing on all threads, to get the previous
    default behavior.

    Fixes [Bug #16889]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5359

commit 6d3f447aecfb56f7d3edbdf9cc68e748e150d7d8
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-25 03:05:12 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-30 07:29:15 +0900

    Fix multiplex backreferencs near end of string in regexp match

    Idea from Jirka Marsik.

    Fixes [Bug #18631]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5710

commit 173a6b6a802d80b8cf200308fd3653832b700b1c
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-10 07:57:49 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-30 04:10:13 +0900

    Make define_singleton_method always define a public method

    In very unlikely cases, it could previously define a non-public method
    starting in Ruby 2.1.

    Fixes [Bug #18561]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5636

commit 87123c4fc7773a33f228b7ac0aee148fa91a49af
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-03-29 17:37:46 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-03-30 00:21:10 +0900

    Refactor test_dump_all to make assertions about the contents of the dumped hash

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5728

commit b257034ae55da80d9b3f059a7504ee78c4e70980
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-29 23:54:29 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-29 23:54:29 +0900

    [DOC] Enhanced RDoc for String (#5730)

    Treats:

        #start_with?
        #end_with?
        #delete_prefix
        #delete_prefix!
        #delete_suffix
        #delete_suffix!

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit c67088dbae9e61a4c07742ceee7fb46597589d95
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-29 18:42:00 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-29 20:57:58 +0900

    [ruby/psych] Try bundled libyaml source if pre-installed is unavailable

    https://github.com/ruby/psych/commit/f78e1dba89

commit c8e1ae4db770634693129266dea4e1d334d057c2
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-29 20:19:51 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-29 20:19:51 +0900

    [DOC] Repair format of What's Here sections in object.c (#5722)

    * Repair format of What's Here sections in object.c

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 8e2a2ba0f98adb5f8b189b963a82cbc0ecea7410
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-29 17:45:33 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-29 19:07:12 +0900

    Merge psych master

      https://github.com/ruby/psych/commit/c386ecb0c24eeb9693cc4ad3b1f263b2622c4f1e

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5729

commit 51e98eab1f2d43f3d77f6e148b2bd07709379b8f
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-03-29 06:00:45 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-29 06:00:45 +0900

    Fix Ractor.receive_if + rb_vm_barrier() deadlock

    I have this scripts that deadlocks after about
    5 minutes if I repeatedly run it with a shell loop:

    ```ruby
    $VERBOSE = nil
    lamb = ->(main, gc) do
      gc.verify_internal_consistency
      gc.verify_internal_consistency
      main << 1
      gc.verify_internal_consistency
      gc.verify_internal_consistency
      main << 2
      gc.verify_internal_consistency
      gc.verify_internal_consistency
      main << 3
      gc.verify_internal_consistency
      gc.verify_internal_consistency
    end

    lamb[[], GC]
    lamb[[], GC]

    r = Ractor.new Ractor.current, GC, &lamb

    a = []
    a << Ractor.receive_if{|msg| msg == 2}
    a << Ractor.receive_if{|msg| msg == 3}
    a << Ractor.receive_if{|msg| msg == 1}
    ```

    Shell loop:

    ```shell
    while ./miniruby deadlock.rb; do date; done
    ```

    Once it locks up, CTRL-C doesn't interrupt the process which
    led me to infer `receive_if` is looping in `ractor_receive_if()`
    without checking for interrupts. This can be confirmed by
    attaching a debugger to the deadlocked miniruby.

    The deadlock has one thread looping in `receive_if`
    and another waiting in `rb_vm_barrier()`. The barrier relies
    on interrupt checking to finish. Theoretically speaking the
    `rb_vm_barrier()` could come from one thread naturally starting GC.
    We found this while developing YJIT but it dead locks running
    with YJIT disabled. YJIT currently relies on `rb_vm_barrier()`
    to synchronize before changing memory protection.

    This diff adds an interrupt check in the loop in `Ractor#receive_if`
    which seems to fix the deadlock.

    In addition, this commit allows interrupting the following single
    ractor script with CTRL-C.

    ```shell
    ruby -e 'Ractor.current.send(3); Ractor.receive_if { false }'
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5699

    Merged-By: XrXr

commit 5525e47a0b5e6b6c3e13ceec4b44535feba22631
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-29 05:49:18 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-29 05:49:18 +0900

    [DOC] Enhanced RDoc for String (#5726)



    Treats:

        #ljust
        #rjust
        #center
        #partition
        #rpartition

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 8db4f25bf4327f169902afd9ea8f4b03b65656f0
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-03-29 00:47:04 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-03-29 00:47:04 +0900

    Update to ruby/spec@aaf998f

commit ae650f0372e10cea4d695769b1fcdc23a76fdf17
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-28 23:02:45 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-28 23:02:45 +0900

    Remove unneeded function declarations in gc.c

commit 035b75c8f4097a48cde3cebc5db5e2efddc21546
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-28 17:28:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-28 17:28:01 +0900

    Update zlib version to 1.2.12

commit 5568cd5a555f8318817c02e26a892826fe83bb7c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-28 17:02:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-28 17:02:02 +0900

    Fix a missing comma

commit 152bb3c0b4ccfd9d335f0b3d6a349b9566c6da9c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-28 16:56:40 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-28 17:01:28 +0900

    Use m4 comments outside macros in m4 files

commit 2cb3efffcf4e000c35d5b43574bfdecdc8a12e37
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-28 16:56:15 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-28 16:56:15 +0900

    Extract RUBY_REQUIRE_FUNCS

commit 282baa694320bbe385693902dfde0bdf93a532b8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-28 15:03:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-28 15:03:41 +0900

    [DOC] Move the entry for [Feature #18571]

commit c3555e3da4146068b0fede6af26212637ac2cd1d
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-28 10:43:10 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-28 10:43:10 +0900

    Added entry of Psych changes for #18571

commit d52cf1013f974ed00502caac624e8094b777385d
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-28 04:45:14 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-28 04:45:14 +0900

    [DOC] Enhanced RDoc for String (#5724)



    Treats:

        #scan
        #hex
        #oct
        #crypt
        #ord
        #sum

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit ca85f16a7dc50145a61998c5caed2d49ef48b73c
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-25 17:33:30 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-27 19:34:07 +0900

    ext/psych/extconf.rb: Fail when libyaml is unavailable

    When libyaml is not installed, make fails with the following cryptic
    message:

    ```
    gmake[2]: Entering directory '/home/chkbuild/chkbuild-crossruby/tmp/build/20220325T045825Z/ruby/ext/psych'
    gmake[2]: *** No rule to make target 'yaml/yaml.h', needed by 'psych.o'.  Stop.
    gmake[2]: Leaving directory '/home/chkbuild/chkbuild-crossruby/tmp/build/20220325T045825Z/ruby/ext/psych'
    ```

    I think it should give up building psych with a clear message.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5713

commit 1b0f05168d802c92b1b5f870954cf503dad6e3b1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-27 11:24:06 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-27 11:24:06 +0900

    [DOC] Fix references to unary operator

commit e699e2d9bff14e3de1323d8d263cd3d04f4d9128
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-27 02:42:44 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-27 02:42:44 +0900

    Enhanced RDoc for String (#5723)

    Treats:

        #lstrip
        #lstrip!
        #rstrip
        #rstrip!
        #strip
        #strip!

    Adds section Whitespace in Strings.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 300f4677c93fb7ce312bba27e50b0af51ce8ba2e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-26 21:07:06 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-26 21:13:16 +0900

    [DOC] Use simple references to operator methods

    Method references is not only able to be marked up as code, also
    reflects `--show-hash` option.
    The bug that prevented the old rdoc from correctly parsing these
    methods was fixed last month.

commit 4acc757d04234d0b128429c152a1ccd96a817cf3
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-26 07:37:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-26 07:49:52 +0900

    [ruby/psych] Added condition for macOS homebrew

    https://github.com/ruby/psych/commit/a876de5a82

    Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>

commit f79765abe8dc3eb0a58c5a9dd7e91922e4aca1fa
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-26 06:33:24 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-26 06:33:24 +0900

    Update NEWS for {Kernel,TracePoint}#binding change

commit 7f93b7dc88b25328dadbc4637a03d5d7bb3195d1
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-26 05:43:46 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-26 05:43:46 +0900

    [DOC] Fix formatting for What's Here in IO (#5719)

    * Fix formatting for What's Here in IO

    * Repair formatting in What's Heres in numeric.c

    * Fix formatting for What's Here in IO

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 1a002d9ade6e2c78650bbf1894ad7c4138bc808d
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-26 03:48:21 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-26 03:48:21 +0900

    Fix formatting errors in What's Here for Array, Hash, ENV (#5718)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit d0b7df81535a0201a17adc74d6731253cd70689e
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-26 02:16:37 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-26 02:16:37 +0900

    Fix formatting of What's Here for File (#5717)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit f918f6e4e74541a184a15762a8593fb3f1b9614d
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-26 00:52:06 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-26 00:52:06 +0900

    [DOC] Repair format and links in What's Here sections (#5711)

    * Repair format and links in What's Here for Comparable and Array

    * Repair format for What's Here in enum.c

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 69967ee64eac9ce65b83533a566d69d12a6046d0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-25 20:29:09 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-25 20:29:09 +0900

    Revert "Finer-grained inline constant cache invalidation"

    This reverts commits for [Feature #18589]:
    * 8008fb7352abc6fba433b99bf20763cf0d4adb38
      "Update formatting per feedback"
    * 8f6eaca2e19828e92ecdb28b0fe693d606a03f96
      "Delete ID from constant cache table if it becomes empty on ISEQ free"
    * 629908586b4bead1103267652f8b96b1083573a8
      "Finer-grained inline constant cache invalidation"

    MSWin builds on AppVeyor have been crashing since the merger.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5715

    Merged-By: nobu <nobu@ruby-lang.org>

commit 7ee26740e41f99d3da37df36b956237fbf36868e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-25 20:12:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-25 20:27:58 +0900

    [ruby/readline-ext] Removed the duplicated dependencies

    https://github.com/ruby/readline-ext/commit/324d324427

commit 033d979640ba7b2b62739a8f93e9b4eb3a88045a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-24 18:01:25 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-25 09:53:07 +0900

    Disabled cross compile for unknown errors with psych build

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5693

commit 0292a34c9c7741ab1fd4d174a6ff5ff04d42583a
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-24 14:38:10 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-25 09:53:07 +0900

    Removed libyaml object files from depends

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5693

commit bfdceab31305f81579d514ab8c7982229d3ced45
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-23 20:24:57 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-25 09:53:07 +0900

    Try to remove yaml sources from depend

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5693

commit 829754b32959672468d43ec723b8671d7fff5041
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-23 17:21:21 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-25 09:53:07 +0900

    Added libyaml-dev into BASERUBY check

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5693

commit 8e3fbf943236aa3c78c8320f8ab11944e1c861de
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-23 17:06:15 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-25 09:53:07 +0900

    Merge psych master: Removed the bundled libyaml

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5693

commit 465edb96f08e9405b861559c3f7cea3691be5a77
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-25 09:40:58 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-25 09:40:58 +0900

    [DOC] Enhanced RDoc for String (#5707)

    Treated:

        #chomp
        #chomp!
        #chop
        #chop!

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 343ea9967e4a6b279eed6bd8e81ad0bdc747f254
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-02-18 03:24:01 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-25 04:31:07 +0900

    Raise RuntimeError if Kernel#binding is called from a non-Ruby frame

    Check whether the current or previous frame is a Ruby frame in
    call_trace_func before attempting to create a binding for the frame.

    Fixes [Bug #18487]

    Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5567

commit 8008fb7352abc6fba433b99bf20763cf0d4adb38
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-03-18 01:38:43 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-03-25 01:14:38 +0900

    Update formatting per feedback

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5433

commit 8f6eaca2e19828e92ecdb28b0fe693d606a03f96
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-03-10 11:21:21 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-03-25 01:14:38 +0900

    Delete ID from constant cache table if it becomes empty on ISEQ free

    Co-authored-by: John Hawthorn <john@hawthorn.email>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5433

commit 629908586b4bead1103267652f8b96b1083573a8
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2021-11-25 00:31:23 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-03-25 01:14:38 +0900

    Finer-grained inline constant cache invalidation

    Current behavior - caches depend on a global counter. All constant mutations cause caches to be invalidated.

    ```ruby
    class A
      B = 1
    end

    def foo
      A::B # inline cache depends on global counter
    end

    foo # populate inline cache
    foo # hit inline cache

    C = 1 # global counter increments, all caches are invalidated

    foo # misses inline cache due to `C = 1`
    ```

    Proposed behavior - caches depend on name components. Only constant mutations with corresponding names will invalidate the cache.

    ```ruby
    class A
      B = 1
    end

    def foo
      A::B # inline cache depends constants named "A" and "B"
    end

    foo # populate inline cache
    foo # hit inline cache

    C = 1 # caches that depend on the name "C" are invalidated

    foo # hits inline cache because IC only depends on "A" and "B"
    ```

    Examples of breaking the new cache:

    ```ruby
    module C
      # Breaks `foo` cache because "A" constant is set and the cache in foo depends
      # on "A" and "B"
      class A; end
    end

    B = 1
    ```

    We expect the new cache scheme to be invalidated less often because names aren't frequently reused. With the cache being invalidated less, we can rely on its stability more to keep our constant references fast and reduce the need to throw away generated code in YJIT.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5433

commit 5f10bd634fb6ae8f74a4ea730176233b0ca96954
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-24 04:19:48 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-24 23:03:51 +0900

    Add ISEQ_BODY macro

    Use ISEQ_BODY macro to get the rb_iseq_constant_body of the ISeq. Using
    this macro will make it easier for us to change the allocation strategy
    of rb_iseq_constant_body when using Variable Width Allocation.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5698

commit 4c4a1e2035e08a627e71efd41d66549f233840dc
  Author:     Marc-Andre Lafortune <github@marc-andre.ca>
  AuthorDate: 2022-03-24 21:38:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-24 21:38:26 +0900

    [ruby/ostruct] v0.5.4

    https://github.com/ruby/ostruct/commit/fe19de4644

commit ad5754162bddfd0ce2f11bd7fc7fce90ba6bf7ed
  Author:     Marc-Andre Lafortune <github@marc-andre.ca>
  AuthorDate: 2022-01-30 08:13:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-24 21:37:14 +0900

    [ruby/ostruct] Avoid aliasing `block_given?` for JRuby [Fixes https://github.com/ruby/ostruct/pull/40]

    https://github.com/ruby/ostruct/commit/14d04ff694

commit 2ec82dd361dff18b6899ef47d9b9ab4f71f94432
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-24 20:31:57 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-24 20:31:57 +0900

    Added dependabot configuration for actions dependencies

commit 39606a774e2bbafd30dae9c4be1b6baf8b85b9a0
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-23 23:19:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-24 20:22:00 +0900

    [rubygems/rubygems] Maybe this is now fixed

    https://github.com/rubygems/rubygems/commit/d9c442e54c

commit e6c1db1d8a95d3eb52759414660d005a6d109cda
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-24 19:08:18 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-24 19:08:43 +0900

    [DOC] Refine flip-flop

commit 8dc357fa94781a5bb5cd11ba390927704284024c
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-24 12:04:10 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-24 13:23:24 +0900

    Add Yuta Saito (katei) as the platform maintainer of WebAssembly/WASI

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5702

commit 1bb9e42fa5e4ea1b87ae35cb7de2baef5e1b15f1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-19 22:44:28 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-24 13:16:13 +0900

    extlibs.rb: Add fallback `Colorize`

    To get rid of an unnecessary dependency for the case using
    in other repositories.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5701

commit 9ed6875f9310be737ceca9b3034bbb34f1498068
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-19 22:42:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-24 13:16:13 +0900

    extlibs.rb: Enclose `Vars` in `ExtLibs` class

    To get rid of an unnecessary top-level constant for the case using
    as a library.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5701

commit 247f8ecfa441b120ad8cb43fa1f3a96145814cd1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-18 22:11:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-24 13:16:13 +0900

    extlibs.rb: Extract ExtLibs#process

    For the case using this script as a library.
    - `ExtLibs#process` reads and processes an extlibs file.
    - `ExtLibs#process_under` processes all extlibs files under the
      given directory.
    - `Extlibs.run` parses `ARGV` and lets an instance process the
      directories.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5701

commit 9112cf4ae7f7ea8ab33c282aa02eec812421aeab
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-24 01:57:34 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-24 09:47:22 +0900

    regint.h: Reduce the frequency of rb_thread_check_ints

    edc8576a65b7082597d45a694434261ec3ac0d9e checks interrupt at every
    backtrack, which brought significant overhead.

    This change makes the check only once every 128 backtracks.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5697

commit 1357b14750275d2f2d13896688064e1a243007dd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-24 08:59:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-24 08:59:24 +0900

    Now all extension libraries must consider the ABI header

commit cccfd6535065e3b57d84257782f9d3b1ff5bd77c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-24 08:34:57 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-24 08:34:57 +0900

    [DOC] Remove mis-synced bundler directory

commit d9dd88a686ee45f1200756f9e0b01fab9d3acdc5
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-24 04:52:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-24 07:34:29 +0900

    [rubygems/rubygems] Avoid crash in test teardown

    If an exception happens during test `setup` method, the `teardown`
    method will still be run for cleaning up, but if some other errors
    occurs then, it will hide the original error.

    This is happening sometimes in CI where restoring original gem hooks is
    failing because the error in `setup` happened before the variable
    holding the original hooks was initialized.

    This commit moves initialization of `@orig_hooks` to the beginning of
    the `setup` method to avoid this issue.

    https://github.com/rubygems/rubygems/commit/8524d2b74d

commit 13481c1ec93088c45ac448dda6a867f43ad798bd
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-14 20:25:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-24 05:32:06 +0900

    [rubygems/rubygems] Improve RDoc setup

    Completely exclude the full bundler folder. The actual Bundler docs are
    excluded anyways by ruby-core (by bundler/lib/bundler/.document,
    bundler/lib/bundler/man/.document), I guess because bundler docs are not
    in RDoc format?

    Running RDoc in the repo root before these changes takes about 5 minutes
    on my machine, while after these changes takes about 15 seconds.

    https://github.com/rubygems/rubygems/commit/8b1802447a

commit 8f1c69f27ce6b3f5ed1c1cf8d2aa62aa9701d636
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-23 04:45:51 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-23 23:55:49 +0900

    Raise ArgumentError when calling Enumberable#inject without block or arguments

    Previously, this would work as expected if the enumerable contained
    0 or 1 element, and would raise LocalJumpError otherwise. That
    inconsistent behavior is likely to lead to bugs.

    Fixes [Bug #18635]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5690

commit d32fa986c3631fddcb256dbd39d10b358fb40ead
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-22 23:59:08 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-23 23:31:05 +0900

    [rubygems/rubygems] Make `rescue` clause more specific

    This is hiding a real bundler issue as a "network error". It's more
    helpful to get a proper bug report, with stack trace and so on.

    So stop re-raising errors when evaluating unmarshaled  responses  as
    network errors, and only raise Marshal errors when the Marshal format is
    invalid, not whenever marshalled gemspecs can't be loaded because that
    may hide actual client errors, like missing `YAML` constants.

    https://github.com/rubygems/rubygems/commit/05ea907e1c

commit 0140e6c41e4669e157c5a99b9d4b5b0fa153359b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-23 04:51:05 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-23 04:51:05 +0900

    [DOC] Enhanced RDoc for String (#5685)

    Treats:

        #chars
        #codepoints
        #each_char
        #each_codepoint
        #each_grapheme_cluster
        #grapheme_clusters

    Also, corrects a passage in #unicode_normalize that mentioned module UnicodeNormalize, whose doc (:nodoc:, actually) says not to mention it.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 26aff37466fa3226122c65f49f2b7663e6b2551b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-23 00:58:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-23 00:58:46 +0900

    Need to reconfigure and rebuild everything when abi.h changed

commit 1ff174bfd17f80433f2cb9888eafd1c297efd2a5
  Author:     Jun Aruga <jaruga@redhat.com>
  AuthorDate: 2022-03-21 23:36:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-23 00:01:17 +0900

    [rubygems/rubygems] Fix a test for `bin/bundle update --bundler` to pass on ruby/ruby.

    Consider the case that the latest Bundler version on RubyGems is higher than
    the `system_bundler_version` (= `Bundler::VERSION`) in `make test-bundler` on
    ruby/ruby.

    See <https://bugs.ruby-lang.org/issues/18643>.

    https://github.com/rubygems/rubygems/commit/bfa2f72cfa

commit a51f30c6712798fc07e57f692d0d0e5ccc59acf1
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-15 22:34:07 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-22 22:42:39 +0900

    [Feature #18634] Implement Arrays on Variable Width Allocation

    This commit implements arrays on Variable Width Allocation. This allows
    longer arrays to be embedded (i.e. contents directly follow the object
    header) which improves performance through better cache locality.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5660

commit c129b6119dfb8d53521b986465c3a85e08d874fe
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-22 04:58:00 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-22 04:58:00 +0900

    [DOC] Use RDoc inclusions in string.c (#5683)



    As @peterzhu2118 and @duerst have pointed out, putting string method's RDoc into doc/ (which allows non-ASCII in examples) makes the "click to toggle source" feature not work for that method.

    This PR moves the primary method doc back into string.c, then includes RDoc from doc/string/*.rdoc, and also removes doc/string.rdoc.

    The affected methods are:

        ::new
        #bytes
        #each_byte
        #each_line
        #split

    The call-seq is in string.c because it works there; it did not work when the call-seq is in doc/string/*.rdoc.

    This PR also updates the relevant guidance in doc/documentation_guide.rdoc.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 1fd1f7bbfc5603cdcfa98363a9ec9e106705a0a3
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-03-22 01:40:13 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-03-22 01:40:42 +0900

    Fix Markdown syntax in spec/README.md

commit 9f828188335a32906ac1e60bce7ccb6857d48a38
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-22 01:37:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-22 01:37:34 +0900

    [DOC] Move old NEWS files to a separate directory

commit 92ef73a91833aa006d7a99886712f7583af779ec
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-22 01:13:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-22 01:32:13 +0900

    [ruby/rdoc] Expand the enclosing tree of the current file

    https://github.com/ruby/rdoc/commit/f9f90ef2ff

commit dafe5c1323f20c04d8378ff003af2c04adb379c9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-13 21:16:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-22 01:32:12 +0900

    [ruby/rdoc] Fold files in the page directory

    https://github.com/ruby/rdoc/commit/b7b4cdab6c

commit 034c09776de4574482f78cd6b30001afef742964
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-22 01:00:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-22 01:32:11 +0900

    [ruby/rdoc] Add test_generate_page

    https://github.com/ruby/rdoc/commit/c870284163

commit 20ad09e560a4bd124c1884c066dee02c79bb95ae
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-20 15:24:22 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-20 15:38:28 +0900

    [ruby/rdoc] Use the custom style `details summary` only in `nav-section`

    https://github.com/ruby/rdoc/commit/7736d3a89c

commit 6946263a2994257c6240e52a365700dc573c7ed4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-20 14:26:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-20 14:26:20 +0900

    [DOC] make internally used classes/methods nodoc

    Empty class documents are generated even with `:stopdoc:`.

commit fafa40997e83c1215becf00d546177385b7e4bef
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-19 14:33:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-19 14:33:04 +0900

    Make a dedecated assertion to clarify failed assertions

commit d52f41b765b5992ee562cda6bd32fdd8f54b0091
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-19 07:17:00 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-19 07:17:00 +0900

    [DOC] Enhanced RDoc for String (#5675)

    Treats:
        #split
        #each_line
        #lines
        #each_byte
        #bytes

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 97426e15d721119738a548ecfa7232b1d027cd34
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-17 04:46:40 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-18 22:19:11 +0900

    [Bug #18627] Fix crash when including module

    During lazy sweeping, the iclass could be a dead object that has not yet
    been swept. However, the chain of superclasses of the iclass could
    already have been swept (and become a new object), which would cause a
    crash when trying to read the object.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5671

commit 634e0a97eb82ab259c7f7a35d0486baebe77df0f
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-03-18 12:34:13 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-18 12:34:13 +0900

    Encourage arity argument in Proc#curry documentation for procs with variable arguments

    This uses similar language to that used in Method#curry.

commit 1107839a7fed31339fc947995b7b45b8eaf4041b
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-02-22 10:41:56 +0900
  Commit:     Shugo Maeda <shugo@ruby-lang.org>
  CommitDate: 2022-03-18 11:51:03 +0900

    Add String#bytesplice

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5584

commit b8e72bd2e96c1ff9b25bea848abdfd0494c40b19
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-03-18 03:56:00 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-03-18 03:56:49 +0900

    Revert "Faster rb_class_superclass"

    This reverts commit 29b68b89a0c0ea7de46c058fab746550398151f0.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5678

commit b6804d62f822237e136e698e006c913df9990ec2
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2019-08-28 10:38:48 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-18 03:52:02 +0900

    Make Proc#parameters support lambda keyword for returning parameters as if lambda

    This makes it easier to use Proc#parameters to build wrappers.

    Implements [Feature #15357]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5677

commit 29b68b89a0c0ea7de46c058fab746550398151f0
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-03-05 16:31:37 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-03-18 03:48:39 +0900

    Faster rb_class_superclass

    This uses the RCLASS_SUPERCLASSES array to quickly find the next
    SUPERCLASS of klass which is a T_CLASS.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5662

commit f69a969544d5a3af5c9454aabd953517266ad150
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-16 18:41:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-18 00:42:15 +0900

    Fix potential memory leak at fiber pool

    Do not "allocate then wrap".  It leaks the allocated memory if
    failed to create the wrapper.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5668

commit cdf25cad6bae6173eb3d32e5c41f22ccad8f5fa9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-16 18:41:00 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-18 00:42:15 +0900

    Fix compilation error with `RB_EXPERIMENTAL_FIBER_POOL`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5668

commit 4fdb10e65e3e32dad99a8a8efecc04bf7c85f024
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-18 00:35:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-18 00:35:02 +0900

    A positional Hash is not keyword arguments [Bug #18632]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5676

commit e660b934b98943826f888f2b73f773c6411cd199
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-17 18:54:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-17 20:53:41 +0900

    A positional Hash is not keyword arguments [Bug #18632]

commit e9553a8cac633067e0da08d78e2200944d33bfdd
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-02-28 12:03:55 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-03-17 17:44:41 +0900

    spec: skip specs where set TZ environment variable for WASI

    WASI doesn't respect TZ env var for now

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5673

commit 7023b3d394e111be8911e364ac59e03ca1d8e13f
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-02-28 11:57:40 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-03-17 17:33:12 +0900

    spec: disable a part of Kernel.open spec where spawns a process for WASI

    WASI doesn't provide a way to spawn a new process

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5672

commit fadc7a150c90ad44dee90985b19e7961c0c370ee
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-17 17:27:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-17 17:28:33 +0900

    [ruby/logger] bump version to 1.5.1

    https://github.com/ruby/logger/commit/c4a4155ab7

commit acbc2bdd3030bef997919ce56c5b120cc5e91e8f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-17 15:07:18 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-17 15:07:18 +0900

    Update the test for [Feature #18615]

commit 329c89bb42bb44467588afc1d41d9f99172dfeb5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-17 14:29:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-17 14:37:34 +0900

    Make implicit function declaration error [Feature #18615]

    Enable `-Werror=implicit-function-declaration` by default for
    building C extensions for early failures.

commit e499d326899d2e7eb7e53702ffb8f7b7aa38124a
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-02-28 11:55:54 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-03-17 12:26:19 +0900

    spec: disable part of require_relative spec where uses symlink for WASI

    cap-std, an underlying sandbox implementation of WASI in wasmtime, doesn't
    allow to create a symlink to an absolute path to enforce sandbox restriction.

    See also: https://github.com/bytecodealliance/cap-std/commit/257867a1d3a589b2561b00111ffa4db3bab0e8be

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5656

commit d06f787e9fdeb5e3440977250aa8609827e00a52
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-03-17 10:11:38 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-03-17 10:11:38 +0900

    Fix broken links of rdoc

    - `www.ruby-lang.org` links to `./www.ruby-lang.org`
    - `cgi['field_name']` links to `./'field_name'`

commit 59a1a8185fb15a8aa727eae1c55ee7a7b6366daf
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-17 04:45:48 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-17 04:45:48 +0900

    [DOC] Enhanced RDoc for String#split (#5644)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit f38dcc78c4302bc7d5059d540507396bd9ea930e
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-17 04:18:34 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-17 04:19:30 +0900

    Assume that klass of dummy head is NULL

    klass of the dummy head of the subclass entries should always be NULL.

commit 819f4f0e65b78c7a57b79a5e8c527adecc3c84d6
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-17 04:10:11 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-17 04:10:11 +0900

    Always skip dummy head of subclass in rb_prepend_module

    The first node of the subclass linked list of always a dummy head, so it
    should be skipped.

commit 6d8f396f37350b7aa9c85a097929f54a0939448b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-16 18:35:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-16 20:49:00 +0900

    Suppress warnings by OpenSSL 3

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5667

commit b426de9e8e3622da79b4d7b75782d648de735c1a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-16 19:07:09 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-16 19:12:34 +0900

    [DOC] Prefer local rdoc links

    - ensures exact same version
    - avoid generated URLs
    - no external access
    - concise

commit 4d93b6299c99ca503f378d1e6af29f566fe7e8ab
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-16 18:51:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-16 18:51:34 +0900

    Initialize mutex for crypt(3) statically

    Assuming that all platforms, where only `crypt` is available but
    not `crypt_r`, are POSIX-base.

commit f91ea2332420bcabfafbb2540238f4f8422bfb97
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-16 17:50:13 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-16 17:50:13 +0900

    Honor if `_Bool` is available

    `AC_HEADER_STDBOOL` rejects stdbool.h in c2x, which is not
    conforming to C99.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5666

    Merged-By: nobu <nobu@ruby-lang.org>

commit 151208a19b09e29d45a79d92d73b67ec2ff692a6
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-03-16 15:18:30 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-03-16 15:18:30 +0900

    Revert "Fix version check to use Emoji version for emoji-variation-sequences.txt"

    This reverts commit 48f1e8c5d85043e6adb8e93c94532daa201d42e9.

commit e85547ae81e126a89a7bc9436af4a26c24c6f754
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-03-16 15:17:30 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-03-16 15:17:30 +0900

    Revert "Allow `.0` version mismatch to pass the tests"

    This reverts commit fc6e4ce62bfa95b6a0d4d4898e1128c1fce4db8a.

commit 6d603cfde1cadcc44b8b331459832f2675594702
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-03-16 15:15:21 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-03-16 15:15:44 +0900

    add Unicode auxiliary files and Unicode UCD emoji files download for ALWAYS_UPDATE_UNICODE

commit ebcbca96fb93c100da48f411515d9d8802d60b2b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-16 15:05:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-16 15:05:41 +0900

    [ruby/rdoc] Fix full name of known class

    Properly set the name of `File::Constants`, which is the only name
    with a namespace in `RDoc::KNOWN_CLASSES`, and fixes longstanding bug
    that `File::Constants` becomes `File::File::Constants`.

    When it is generated by `rb_file_const` in dir.c, `name` is set to the
    qualified name as same as `full_name`, and generated in the normal way
    in file.c later, already set `full_name` is cleared and `name` will be
    constructed from the enclosing namespace and the `name`.  It will
    results in duplicated namespace, `File::File::Constants`.

    https://github.com/ruby/rdoc/commit/3a8d6df562

commit fc6e4ce62bfa95b6a0d4d4898e1128c1fce4db8a
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-03-16 11:30:37 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-03-16 11:30:37 +0900

    Allow `.0` version mismatch to pass the tests

    With `make update-unicode`, some tests failed with the following error
    due to header mismatch.

    * `RbConfig::CONFIG['UNICODE_EMOJI_VERSION']` => 14.0
    * the header line is `# emoji-variation-sequences-14.0.0.txt`

    So the last `.0` is mismatch.
    This patch allows additional `.0` in the header line.

    Please revert this patch when a correct patach is merged.

    ```
      1) Error:
    TestEmojiBreaks#test_embedded_emoji:
    RuntimeError: File Name Mismatch: line: # emoji-variation-sequences-14.0.0.txt, expected filename: emoji-variation-sequences.txt
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:88:in `block (2 levels) in read_data'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:82:in `foreach'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:82:in `block in read_data'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:79:in `each'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:79:in `read_data'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:111:in `all_tests'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:127:in `test_embedded_emoji'
      2) Error:
    TestEmojiBreaks#test_mixed_emoji:
    RuntimeError: File Name Mismatch: line: # emoji-variation-sequences-14.0.0.txt, expected filename: emoji-variation-sequences.txt
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:88:in `block (2 levels) in read_data'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:82:in `foreach'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:82:in `block in read_data'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:79:in `each'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:79:in `read_data'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:111:in `all_tests'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:139:in `test_mixed_emoji'
      3) Error:
    TestEmojiBreaks#test_single_emoji:
    RuntimeError: File Name Mismatch: line: # emoji-variation-sequences-14.0.0.txt, expected filename: emoji-variation-sequences.txt
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:88:in `block (2 levels) in read_data'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:82:in `foreach'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:82:in `block in read_data'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:79:in `each'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:79:in `read_data'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:111:in `all_tests'
        /tmp/ruby/v3/src/trunk/test/ruby/enc/test_emoji_breaks.rb:117:in `test_single_emoji'
    ```

commit 5d90c6010999ac11d25822f13f0b29d377f81755
  Author:     YO4 <ysno@ac.auone-net.jp>
  AuthorDate: 2022-03-16 10:28:35 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-16 10:28:35 +0900

    Avoid console input behavior in windows 10 [Bug #18588]

    When ANSI versions of PeekConsoleInput read multibyte charactor
    partially, subsequent ReadFile returns wrong data on newer Windows
    10 versions (probably since Windows Terminal introduced).  To
    avoid this, use Unicode version of of PeekConsoleInput/ReadConsole.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5634

    Merged-By: nobu <nobu@ruby-lang.org>

commit 48f1e8c5d85043e6adb8e93c94532daa201d42e9
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-03-15 18:55:16 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-03-16 08:46:04 +0900

    Fix version check to use Emoji version for emoji-variation-sequences.txt

commit 56d9d78f14b73cb9f609558e6b760dde50872fb6
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-03-15 17:17:15 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-03-16 08:30:04 +0900

    Remove Unicode 13.0.0 related files

commit d76ba1c219d9ab2cb74b4b1de2e467e085150c1b
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-03-06 06:03:33 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-03-16 00:49:53 +0900

    Fast rb_class_inherited_p

    This uses the superclass table recently introduced to implement fast
    inheritance checking between classes (ex. Foo < Bar).

    This is almost identical to what we do in class_search_class_ancestor
    (as called by rb_obj_is_kind_of) except that we are checking both
    directions: ie. both whether Foo < Bar and whether Bar < Foo.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5628

commit 7aabdbe837fc58bf95c4633ad9c164440ad93876
  Author:     Kazuhiro NISHIYAMA <znz@users.noreply.github.com>
  AuthorDate: 2022-03-15 09:41:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-15 11:37:43 +0900

    [rubygems/rubygems] Fix a typo

    https://github.com/rubygems/rubygems/commit/3e06a91435

commit 459bbdeb74224168af5c2b288f206485f7866872
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-03-15 10:21:02 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-03-15 10:25:12 +0900

    wasm/README.md: add manual config.guess download and autoconf steps

    Autoconf distributed with Ubuntu 22.04 is very old and doesn't support
    WASI as an OS, so add instructions to download the latest config.guess,
    then run `./autogen.sh`.

    See also: https://github.com/ruby/chkbuild/commit/2297012efd6364f6fde45f54531b6fc0f0838ec9

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5659

commit f27770679fcca8e33e88c350012f94973340d009
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-03-14 23:20:30 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-15 09:23:57 +0900

    [DOC]Fix FreeBSD Bugzilla link

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5658

commit b85457c710d597281c936d0ac062e542563798cd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-15 00:26:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-15 08:40:35 +0900

    [rubygems/rubygems] [DOC] Enable Gem::Package example

    Other code must not be between the doc and class definition.

    https://github.com/rubygems/rubygems/commit/366784aae5

commit 63b1633f869d6866ed70dbf80efc954d26127a04
  Author:     xtkoba <69125751+xtkoba@users.noreply.github.com>
  AuthorDate: 2021-05-09 09:18:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-15 08:33:40 +0900

    [ruby/win32ole] Get rid of potential undefined behavior

    See https://bugs.llvm.org/show_bug.cgi?id=50236

    https://github.com/ruby/win32ole/commit/019ec2b3cb

commit aa347cbe65031ff02a5b2de0f7a36e29d72b8008
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-14 19:07:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-15 08:20:47 +0900

    [ruby/win32ole] Rename toplevel WIN32OLE_* classes

    https://github.com/ruby/win32ole/commit/bc7deb6a6a

commit 6a8bc90278ca39546a76c8a669f732ce3fc8d417
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-15 02:45:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-15 04:44:33 +0900

    [rubygems/rubygems] Report Github Actions CI provider within user agent string

    See
    https://docs.github.com/es/actions/learn-github-actions/environment-variables#default-environment-variables.

    So that we can show stats about it at https://ecosystem.rubytogether.org

    https://github.com/rubygems/rubygems/commit/48d6dc68f8

commit 41d63d3130acae4f1ba139522062479cf4ce5381
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-13 00:51:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-15 01:18:03 +0900

    [rubygems/rubygems] Move `:stopdoc:` directive

    If this is at the top level, it stops the documentation of the
    entire module, but not only the part in this file.

    https://github.com/rubygems/rubygems/commit/34e8c1ee06

commit b1bcad5e3afa6f6f017c0d2378ab20f29c0d013a
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-02-25 17:17:47 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-03-14 23:05:15 +0900

    spec: skip '~' test for wasi due to lack of shell

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5655

commit fe2e5c13f919eb0cdc3e5aa1e87e549d73169cb1
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-02-21 18:09:49 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-03-14 23:04:13 +0900

    spec: skip ruby_exe tests for wasi due to lack of subprocess

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5654

commit 412991268fe6afb84c8044acfcdd76c215af65be
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-14 22:44:50 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-14 22:45:24 +0900

    Assume that refcnt of shared root is non-negative

    The refcnt of a shared root array should always be non-negative.

commit 45786667ec0b0c2af5bf2c2069246edaae2d7c30
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-14 22:39:51 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-14 22:45:18 +0900

    Assume that shared_root exists in rb_ary_decrement_share

    All callers of rb_ary_decrement_share guarantee that
    shared_root is not 0.

commit 7348db866a4120b701bf28918d6fcbd4d6f07121
  Author:     Ivo Anjo <ivo.anjo@datadoghq.com>
  AuthorDate: 2022-03-14 18:42:33 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-03-14 18:50:52 +0900

    [DOC] Remove outdated note from WeakRef#initialize

    The note

    > Raises an ArgumentError if the given +orig+ is immutable, such as Symbol,
    > Integer, or Float.

    has not been true since #2313 (GH-2313, Feature #16035) when
    @casperisfine enabled storing non-finalizable objects in the underlying
    `ObjectSpace::WeakMap`.

    On Ruby 2.7+, `WeakRef.new(1) + 1` works fine and the result is the
    expected 2.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5657

commit e859a218fd9a71c521b62df9447ab3c7104eb71f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-14 15:01:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-14 15:01:20 +0900

    [DOC] hide `UnicodeNormalize` in module index

commit 0bf194fb33bf69a650a4b6c62cc5577c10b5f331
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-13 20:38:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-14 14:48:13 +0900

    [ruby/rdoc] Start with open when only one visible class/module

    https://github.com/ruby/rdoc/commit/6bb93001db

commit 976431d9ed1a144675c24c4e8d510171cfd7c32c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-13 19:44:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-14 14:48:12 +0900

    [ruby/rdoc] Fold class and module index

    https://github.com/ruby/rdoc/commit/4c7c46fcc4

commit a884431624966824b9496daa1cfa0dc5e95fe118
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-14 14:27:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-14 14:44:46 +0900

    [ruby/forwardable] Move `:stopdoc:` directive

    If this is at the top level, it stops the documentation of the
    entire module, but not only the part in this file.

    https://github.com/ruby/forwardable/commit/34cd2ac4a1

commit 8760b270ed63e6fd7a1b40ef7fa1699ab272beef
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-14 14:34:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-14 14:40:28 +0900

    [ruby/irb] Move `:stopdoc:` directive

    If this is at the top level, it stops the documentation of the
    entire module, but not only the part in this file.

    https://github.com/ruby/irb/commit/86c41b06ad

commit 3c59913a05ba73f1eeadc7fbff3f55185fef2713
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-03-14 08:55:45 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-03-14 08:57:06 +0900

    Fix failures

    http://ci.rvm.jp/results/trunk-no-mjit@phosphorus-docker/3870646
    ```
      1) Error:
            TestEmojiBreaks#test_single_emoji:
            RuntimeError: File Name Mismatch: line: # emoji-variation-sequences-14.0.0.txt, expected filename: emoji-variation-sequences.txt
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:84:in `block (2 levels) in read_data'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:82:in `foreach'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:82:in `block in read_data'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:79:in `each'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:79:in `read_data'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:105:in `all_tests'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:111:in `test_single_emoji'
              2) Error:
            TestEmojiBreaks#test_mixed_emoji:
            RuntimeError: File Name Mismatch: line: # emoji-variation-sequences-14.0.0.txt, expected filename: emoji-variation-sequences.txt
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:84:in `block (2 levels) in read_data'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:82:in `foreach'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:82:in `block in read_data'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:79:in `each'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:79:in `read_data'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:105:in `all_tests'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:133:in `test_mixed_emoji'
              3) Error:
            TestEmojiBreaks#test_embedded_emoji:
            RuntimeError: File Name Mismatch: line: # emoji-variation-sequences-14.0.0.txt, expected filename: emoji-variation-sequences.txt
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:84:in `block (2 levels) in read_data'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:82:in `foreach'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:82:in `block in read_data'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:79:in `each'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:79:in `read_data'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:105:in `all_tests'
                /tmp/ruby/v3/src/trunk-no-mjit/test/ruby/enc/test_emoji_breaks.rb:121:in `test_embedded_emoji'
            make: *** [uncommon.mk:823: yes-test-all] Error 3
    ```

commit 840bef0e2ce547ddabaf999911726632e62d1c0b
  Author:     Paul Kuruvilla <rohitpaulk@gmail.com>
  AuthorDate: 2022-03-14 02:25:28 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-14 05:43:17 +0900

    [rubygems/rubygems] Remove extra closing bracket in version warning

    https://github.com/rubygems/rubygems/commit/a3b9f19080

commit 1b571d0abf6070673320b11a30769bbe74d12e39
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-03-13 21:18:56 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-03-13 21:27:47 +0900

    Fix guards for unicode versions specs

commit 416c63c118e61287d0f2c7114dbc404a5e27a650
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-13 21:14:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-13 21:15:08 +0900

    [ruby/rdoc] Refine `pretty_print`

    https://github.com/ruby/rdoc/commit/acb91ea74a

commit 2af8b04eca68a924fd2875e9c5e51240150d02a6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-13 21:10:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-13 21:10:33 +0900

    Fix conversion macro for `size_t`

commit e081f333fe0c0fa7c1b5784e9472d1c81befb720
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-13 21:07:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-13 21:09:17 +0900

    Fix experimental Fiber::Pool definition

    Toplevel `Pool` is too generic, and `struct fiber_pool` does not
    seem compatible with `rb_fiber_t`.

commit 0bcc3bd6abd881cb3985a6cd776e94a8ebd5b6ff
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-13 19:51:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-13 19:56:42 +0900

    [ruby/rdoc] Clean documents for backwards compatibility

    https://github.com/ruby/rdoc/commit/23e61a208e

commit 45187a0fcddecc74dacc1881f2405a5ebe198081
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-03-13 10:52:24 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-03-13 10:52:24 +0900

    comment out failing Unicode/Emoji version checks temporarily

commit 8f59482f5d1f77542fe3c8e8434cb1dbbc764ecf
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-03-12 21:33:51 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-03-13 09:19:52 +0900

    add some tests for Unicode Version 14.0.0

commit 9b545b0caf2ccc89718ba02ff631d2a68b96a831
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-03-11 17:18:42 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-03-13 09:19:52 +0900

    update specs to check for Unicode Version 14.0.0/Emoji Version 14.0

commit 2672502457523317268ac24704cf85df91e2cae6
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-03-11 17:11:32 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-03-13 09:19:52 +0900

    mention Unicode Version 14.0.0

commit 8e1f3a96aecb3defc34556d75e3d2a0867416082
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2022-03-11 16:48:26 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-03-13 09:19:52 +0900

    switch UNICODE_BETA back to NO

commit 45e0711f29f9ce65cd34ad14e3af1546ccc7252e
  Author:     Martin Dürst <duerst@it.aoyama.ac.jp>
  AuthorDate: 2021-12-09 16:41:09 +0900
  Commit:     Martin Dürst <duerst@it.aoyama.ac.jp>
  CommitDate: 2022-03-13 09:19:52 +0900

    update Unicode Version to 14.0.0 and Emoji version to 14.0

commit 06594e713416fad35b6241fed802607682d7cea6
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-13 02:15:04 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-13 02:15:24 +0900

    Fix crash on GC stress and RGENGC_CHECK_MODE=2

    rb_ary_reset could leave the array in a bad state since it frees memory
    but does not unset any flags. This can cause a crash on GC stress. This
    commit changes rb_ary_reset to set the array as an empty embedded array.

commit 83fabfccf5d45312325bab83de2cf62ea54fa020
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-03-11 05:19:40 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-03-12 03:36:19 +0900

    Add test for protected methods on module included

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5642

commit 4d8f76286beefbb8f7fba2479f6d0a0b4a47304c
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-02-19 16:05:23 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-03-12 03:36:19 +0900

    Fast object is iclass checks

    Calling rb_obj_is_kind_of with an ICLASS returns the same result as
    calling it with the ICLASS's original Module.

    Most of the time we encounter an ICLASS here checking the validity of a
    protected method or super call, which we expect to return true (or raise
    a slow exception anyways). We can take advantage of this by performing a
    fast class inheritance check on the ICLASS's "includer" in hopes that it
    returns true.

    If the includer class check returns false we still have to fallback to
    the full inheritance chain scan for the module's inclusion, but this
    should be less common.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5642

commit 9a4bddd76165b2848a6275d2a3bfd3166288e106
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-12 03:16:29 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-12 03:16:29 +0900

    Add rb_ary_reset

    rb_ary_reset will free heap allocated arrays and unshare shared arrays.

commit 09186f381f3ddadd6b9ffcd770255fe3bf175257
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-12 01:46:47 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-12 01:46:47 +0900

    Adding guidance about characters in C-code doc (#5641)

    Showing how to do as @nobu does -- putting doc into doc/*.rdoc instead of in *.c.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 42e5ec941489c11a180ed75c6348419c79aefff1
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-12 01:45:14 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-12 01:45:14 +0900

    Refactor duplicate code in rb_array_replace

    In both cases in the if statement, we free heap allocated arrays and
    unshare shared arrays.

commit 2e4516be26e126ec9e7528d1de0d4a0b7332f6dd
  Author:     Masafumi Koba <473530+ybiquitous@users.noreply.github.com>
  AuthorDate: 2021-09-11 16:33:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-11 17:38:13 +0900

    [ruby/rdoc] Scrollable sidebar

    This change makes the sidebar scrollable via `position: sticky` and `overflow: auto`;
    See also <https://caniuse.com/?search=sticky>

    https://github.com/ruby/rdoc/commit/4d52e24840

commit 49447f828b19319d83ed97260da8a9527fa83ce9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-11 15:08:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-11 15:08:23 +0900

    Move ruby.h in `#ifdef RUBY` block

    Must not depend on ruby specific files in Ruby unrelated cases.

commit 82dea29073d50304b6029b15d07666994533d8d1
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-03-11 04:06:29 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-03-11 04:06:42 +0900

    Revert "Fast object is iclass checks"

    This reverts commit 1b15756d24c11ed6bfddb5ae53402a071a20ea97.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5639

commit edc8576a65b7082597d45a694434261ec3ac0d9e
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-10-13 04:15:15 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-11 04:06:33 +0900

    Allow interrupting regexps that backtrack

    Fixes [Bug #14103]

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4960

commit 1b15756d24c11ed6bfddb5ae53402a071a20ea97
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-02-19 16:05:23 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-03-11 02:34:08 +0900

    Fast object is iclass checks

    Calling rb_obj_is_kind_of with an ICLASS returns the same result as
    calling it with the ICLASS's original Module.

    Most of the time we encounter an ICLASS here checking the validity of a
    protected method or super call, which we expect to return true (or raise
    a slow exception anyways). We can take advantage of this by performing a
    fast class inheritance check on the ICLASS's "includer" in hopes that it
    returns true.

    If the includer class check returns false we still have to fallback to
    the full inheritance chain scan for the module's inclusion, but this
    should be less common.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5619

commit 67faea970857c292ae35dadd103287d4f4449a58
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-03-08 04:08:15 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-03-11 01:44:28 +0900

    Small optimization for the opt_and instruction

    This change eagerly performs a bitwise and on the parameters.  If both
    parameters are fixnums, then the result value should also be a fixnum.
    We can just test the bit on the result and return if it's a fixnum.
    Otherwise return Qundef.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5629

commit 0c6e24d102e894a7211a596e6aa95828b1cf4406
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-02-23 06:43:14 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-11 01:35:26 +0900

    Fix visibility of alias of zsuper methods

    This was broken by 71c746379d5872e250d90ae45c585760afaf9516.

    Fixes [Bug #18600]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5592

commit bd1862330756b177ba189597b9de10f98de925e3
  Author:     Charles Oliver Nutter <headius@headius.com>
  AuthorDate: 2022-03-10 22:57:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-10 22:58:31 +0900

    [ruby/io-wait] Update version to 0.2.2.pre1 for testing

    https://github.com/ruby/io-wait/commit/12e26f574e

commit 0024a76ea0dc4e38935f12fe12804a06957eab1f
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-10 13:35:21 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-10 13:35:21 +0900

    Ignore pre-release for sync target on sync_default_gems

commit 561dda99344536cb281b5a55c48856d3dae717c6
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-10 10:53:51 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-10 10:53:51 +0900

    [DOC] Enhanced RDoc for String (#5635)



    Treats:

        #count
        #delete
        #delete!
        #squeeze
        #squeeze!

    Adds section "Multiple Character Selectors" to doc/character_selectors.rdoc.

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 5f4e78423337662d0fc6cccf63a0fc8835715fae
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-08-11 06:46:17 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-03-10 08:16:00 +0900

    Avoid unnecessary conditional

    All frames should be either iseq frames or cfunc frames.  Use a
    VM assert instead of a conditional to check for a cfunc frame if
    the current frame is not an iseq frame.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4732

commit 72c038a8f5cbddceefe1c4bd9bdc4592b9c095b9
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-09 23:42:12 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-09 23:42:12 +0900

    [DOC] Enhanced RDoc for String (#5633)

    Treats:

        #tr (revised to link to "Character Selectors" document)
        #tr!
        #tr_s
        #tr_s!

    Also renames doc/character_selector.rdoc to match its title.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit f62f91313259539e8f0884a0ca99deb3ab8b87d3
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-09 07:02:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-09 23:38:45 +0900

    [ruby/rdoc] Support crossref of methods with multiple arguments

    For example, consider the following markup:

      C1#m(a, b)

    Before this patch, it generated this HTML:

      <p><a href=\"C1.html#method-i-m\"><code>C1#m</code></a>(a, b)</p>

    Which places the method arguments outside of the link.

    Now it generates this HTML:

      <a href=\"C1.html#method-i-m\"><code>C1#m(a, b)</code></a>

    https://github.com/ruby/rdoc/commit/05a2b2222b

commit 77f3f8a1d4f45d06df6cfea2bac3a67867c19efb
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-03-07 14:44:57 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-03-09 22:43:02 +0900

    exts.mk.tmpl: propagate MINIRUBY to enc.mk even though invoking from exts.mk

    This is another attempt to fix out-of-src build with
    --with-static-linked-ext. The first attempt was
    4f1888bda70981d9f5b1bf55ab692e0ce18e79f4 but reverted because it broke
    out-of-src build from pre-generated sources via `make dist`.
    This patch fixes the second trans C source gen, mentioned in the
    previous commit message, by passing MINIRUBY as well as when invoking
    from common.mk

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5627

commit b068a53dc9f38e98141c8b43249c73289af557bb
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-03-09 15:15:11 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-03-09 15:15:11 +0900

    [DOC] Fix default offset of String#byterindex

commit 1d3563006065ceec14c3531b37bc2040eb6983ca
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-09 07:27:36 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-09 07:27:36 +0900

    [DOC] RDoc for character selectors (#5632)

    This file will be a link target for methods doc that cites character selectors (e.g., String#tr),

    It covers only the character selector; +replacement+ is discussed at String#tr (which will be revised and simplified); multiple selectors will be discussed at String#delete and String#count.

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 1adc7aa630d43e04cf5e75bbbbcf48b72a6e6c45
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-08 21:08:46 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-08 21:08:46 +0900

    Added release option to sync only released version of the default gems

commit bfc697f1e26f1406c45ec7309ca0d4c0b5ecedd6
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-08 17:40:02 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-08 17:40:02 +0900

    test/io/console/test_io_console.rb: parens needed

commit 17e09f033c4d3b786672ba16d2c5d935482a2fad
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-03-08 16:06:37 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-03-08 16:06:37 +0900

    Skip three tests on FreeBSD 13

    Some tests that use signals frequently fail randomly on FreeBSD 13.
    Maybe something around signals has changed in FreeBSD 13.
    This change skips them tentatively.

commit faff37da57ac2e760704945c9e1f946b850bdad8
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-08 03:58:29 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-08 03:58:29 +0900

    [DOC] Enhanced RDoc for String #tr and #tr! (#5626)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 943efa8ca6a5ac43e98265c0606a28d45103b393
  Author:     Alex Gittemeier <me@a.lexg.dev>
  AuthorDate: 2022-02-12 16:04:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-08 03:40:30 +0900

    [rubygems/rubygems] Add newline to validate_platforms! message when platform is missing

    When I run bundle install with BUNDLE_DEPLOYMENT=true in the environment
    on a different platform than I usually do development, I get the
    following output to the console (wrapped exactly as shown):

    Your bundle only supports platforms ["x86_64-darwin-19"] but your local platform
    is x86_64-linux. Add the current platform to the lockfile with `bundle lock
    --add-platform x86_64-linux` and try again.

    Because the way the message wraps, its not as simple as copying the
    suggested command to the clipboard because it contains a newline:

        $ bundle lock
        Writing lockfile to [...]/Gemfile.lock
        $ --add-platform x86_64-linux

    Adding a newline right before the command forces the command in the
    error message to be on the same line, which facilitates copy-pasting the
    command in the message.

    https://github.com/rubygems/rubygems/commit/4cf6989b11

commit c445963575a8572f6b0baf7135093c128adab3b9
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-07 23:35:24 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-07 23:37:49 +0900

    Use rb_ary_unshare for shared array in rb_ary_replace

    rb_ary_unshare will perform FL_UNSET_SHARED and
    rb_ary_decrement_share.

commit 9cbebdcb74b98a012be72c8cc6b64099312eb432
  Author:     Thierry Joyal <thierry.joyal@gmail.com>
  AuthorDate: 2022-03-07 18:37:21 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-03-07 21:02:01 +0900

    [DOC] Fix documentation typo for Process#clock_gettime

    Fixes [Misc #18610]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5625

commit 9c531ca524506f9de7bc4643fd6d89e534abfa9f
  Author:     Olle Jonsson <olle.jonsson@gmail.com>
  AuthorDate: 2022-01-19 08:32:06 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-07 20:08:29 +0900

    [ruby/ostruct] Drop unused directives from gemspec (https://github.com/ruby/ostruct/pull/39)

    This gem exposes no executables.

    https://github.com/ruby/ostruct/commit/a1242f7ebe

commit 0adabdc53d117a244c64de8b78bfcf5e658d386e
  Author:     Marc-Andre Lafortune <github@marc-andre.ca>
  AuthorDate: 2022-01-19 05:31:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-07 20:08:26 +0900

    [ruby/ostruct] v0.5.3

    https://github.com/ruby/ostruct/commit/322efd0e61

commit e1391bf96f03143387c500a168adb6fc9fc242c6
  Author:     Ladislav Gallay <ladislav.gallay@lentil.sk>
  AuthorDate: 2022-01-18 22:54:52 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-03-07 20:08:22 +0900

    [ruby/ostruct] Fix class and method as attribute names

    https://github.com/ruby/ostruct/commit/7258535073

commit 1dd2d2ce48d7ed0e16beb42ac923ccd069701958
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-07 20:04:16 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-07 20:04:16 +0900

    [DOC] Change to guidance on lists in What's Here section (#5618)

    Currently, the guide says a "What's Here" section should have a labeled list for the methods. Such a list can render very differently in different browsers, and are often erratic in their indentation of continuation lines.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 8ae09706f37f64fe32503c2d48e41adb95836254
  Author:     Brad Gessler <bradgessler@gmail.com>
  AuthorDate: 2022-02-09 09:40:41 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-07 07:03:35 +0900

    [rubygems/rubygems] Update README.md.tt

    Reduce the number of steps required to install a gem from two steps to one by using `bundle add`

    https://github.com/rubygems/rubygems/commit/2c968420cd

commit 156079a85d29a137521e6b911a39c25f35a960d2
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-03-01 21:46:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-06 22:17:00 +0900

    [rubygems/rubygems] Make `--strict` flag of `update` and `outdated` commands consistent

    Previously they had slightly different behavior when combined with
    conservative updating flags.

    The correct behavior is the `--update-strict` option, so `--script` now
    does that, The `--update-strict` option is left there for now but I will
    deprecate it later.

    https://github.com/rubygems/rubygems/commit/ab42046229

commit 41a48535d1992a08b5b7e9fdb5ac0dcb488bd724
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-03-04 18:09:12 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-03-04 18:09:34 +0900

    Remove gdbm related code from Travis CI

    The related extensions have been removed.

    Related: https://github.com/ruby/ruby/pull/4619

commit c757c4e054397142ffa1b3e8110e5f799cd7075f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-04 15:56:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-04 15:56:03 +0900

    sitelibdir makes no sense in ruby itself

commit 19f331f58823dc0ff90ba7806c46380dc4064fa3
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-02-27 09:05:06 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-03-04 04:23:27 +0900

    Dedup superclass array in leaf sibling classes

    Previously, we would build a new `superclasses` array for each class,
    even though for all immediate subclasses of a class, the array is
    identical.

    This avoids duplicating the arrays on leaf classes (those without
    subclasses) by calculating and storing a "superclasses including self"
    array on a class when it's first inherited and sharing that among all
    superclasses.

    An additional trick used is that the "superclass array including self"
    is valid as "self"'s superclass array. It just has it's own class at the
    end. We can use this to avoid an extra pointer of storage and can use
    one bit of a flag to track that we've "upgraded" the array.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5604

commit 832252794eb3f9506a224d9368fb3f013558842a
  Author:     Rogerio Bordignon <rogerio.bordignon@rebase.com.br>
  AuthorDate: 2022-03-04 00:18:21 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-03-04 03:18:36 +0900

    Doc: fix documentation typo for Array#min

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5621

commit 3b21818db1fac0c22f16364eab2d8cc0067abd63
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-03-03 22:43:14 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-03-03 22:43:14 +0900

    Update to ruby/spec@82cd3a3

commit 1dc6bed0ca6ca379f1c4b2e9fc0dee72dbf1e205
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-03-03 22:43:11 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-03-03 22:43:11 +0900

    Update to ruby/mspec@bd47c2a

commit 7f7db124ee6a72ec178d40453870620874fbc4f5
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-03-03 17:54:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-03 17:55:45 +0900

    [ruby/cgi] Bump up v0.3.2

    https://github.com/ruby/cgi/commit/734dfdf1b4

commit 7f7f07a60015a4b907fab99b920f19e746fe10f9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-03 13:33:50 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-03 13:39:07 +0900

    [DOC] mark `rb_str_init` as `:nodoc:`

    Otherwise, an empty entry will be generated as `String::new` along
    with the one from doc/string.rb.

commit 5ef9f7a8213c5963cea8b0b0d731884a60d0c166
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-03 13:05:57 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-03 13:37:37 +0900

    [DOC] Rename doc/*.rb as doc/*.rdoc

    With `:markup: ruby` directive so that they are parsed as ruby
    scripts.

commit b3123191c6cc8c235314e2864f5664c4dd6fa0c5
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-03 05:26:20 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-03 05:26:20 +0900

    [DOC] Addition to encoding.rdoc (#5617)



        Adds section "Transcoding a Stream," listing relevant methods in IO.
        Moves an example from section "String Encoding Example" to the new section.
        Removes header "String Encoding Example" for now-empty section.
        Changes items in section "Transcoding a String" from labeled list items to bullet list items. (Labeled list items are sometimes rendered with strange indentations for continued lines, and are always rendered with different indentations for the items.)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 0b6612148401ba56001515d58a686c6aada48851
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-02 23:18:44 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-02 23:18:54 +0900

    [MSWin] Allow gems with VS2022 for VS2019 build ruby [Misc #18362]

    Although not sure if it is really compatible, let’s give it a
    try.

commit f07f47651884ccb30a1493ed69d397e1f43f5267
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-02 18:37:53 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-02 18:37:53 +0900

    Exclude binstubs tests

    When relative loading is enabled, the executable ruby is expected
    installed at the same directory as the binstub.

commit db740b7e5ca0900898fdc93057d4892faad9b3a1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-03-02 18:19:01 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-02 18:19:01 +0900

    Revert "enc/depend: fix out-of-src build with --with-static-linked-ext" (#5616)

    This reverts commit 32ad8df9d1e07e1b2435a8890d070802fcd2989f,
    which broke out-of-src build with the pre-generated transcoder sources.

  Notes:
    Merged-By: nobu <nobu@ruby-lang.org>

commit 2b5097b890161ddcb1ae9619699126f95a783bbd
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-02-25 11:08:45 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-03-02 17:13:40 +0900

    vm_method.c: avoid signature mismatch in rb_f_notimplement call

    `rb_f_notimplement` has a similar signature with arity=-1, but it has an
    extra marker argument to distinguish it from other methods in
    compile-time type check in rb_define_method.
    This trick is introduced to override a given arity to be -1 since
    https://github.com/ruby/ruby/commit/9ef51b0b89a10c8c401cb9f2337e47a25be72cbe

    However, the trailing extra argument introduces a signature mismatch
    between caller and callee expectation.
    This patch adds rb_f_notimplement_internal, which has canonical arity=-1
    signature, and makes rb_define_method family to inserts a method entry
    with rb_f_notimplement_internal instead of rb_f_notimplement.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5612

commit fd2e1d3c4a0e248f710bc8f3abe94f343552026d
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-03-02 13:05:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-03-02 14:01:31 +0900

    [ruby/rdoc] Use `Marshal.load io` instead of `Marshal.load io.read`

    https://github.com/ruby/rdoc/commit/135198a31c

commit 0c90ca4dd0abbd28d7bb34b9241d93995ab9cfb7
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-02-25 20:08:31 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-03-02 12:50:53 +0900

    dir.c: use self-made IFTODT in rb_pathtype_t if available

    dir.c defines IFTODT if the system doesn't have it. The macro is used
    when comparing with rb_pathtype_t's cases. rb_pathtype_t's cases are
    defined by DT_XXX macro if they are available, or defined using IFTODT.
    Most POSIX-compatible platforms have both IFTODT and DT_XXX and most of
    other platforms like MinGW have neither of them. On those platforms,
    DT_XXX-oriented rb_pathtype_t is always compared with values converted
    by system's IFTODT, and emulated-IFTODT-oriented rb_pathtype_t is always
    compared with values converted by emulated-IFTODT.

    However, when IFTODT is *not defined* and DT_XXX is *defined*, like
    on wasi-libc, DT_XXX-oriented rb_pathtype_t was compared with values
    converted by emulated-IFTODT, and they are not guaranteed to be
    compatible.

    This patch fixes such a situation by using emulated-IFTODT to define
    rb_pathtype_t when either IFTODT or DT_XXX is not available.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5614

commit 32ad8df9d1e07e1b2435a8890d070802fcd2989f
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-03-01 14:23:44 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-02 09:40:58 +0900

    enc/depend: fix out-of-src build with --with-static-linked-ext

    When out-of-src build, at the beginning of a build, `make -f enc.mk
    srcs` generates trans C sources under build dir.

    On the other hand, enc/trans/*.o were built from trans C sources
    generated under srcdir due to the following auto-generated rules from
    enc/depend.

    ```
    encsrcdir = ../src/enc
    ...
    enc/trans/big5.$(OBJEXT): $(encsrcdir)/trans/big5.c
    ```

    Therefore, trans C sources are generated twice under srcdir and build
    dir during a build.

    Ideally, trans C sources have always been built before compilation of
    enc/trans/*.o because the source generation is prereq, so making
    enc/trans/*.o doesn't trigger trans C source generation and shouldn't
    require MINIRUBY as a make arg for enc.mk. However, the second trans C
    source gen is unintentionally triggered by enc/trans/*.o, so `make -f
    enc.mk libencs` requires MINIRUBY for now.

    When no `--with-static-linked-ext`, `make -f enc.mk libencs` is
    triggered from common.mk with MINIRUBY, so there is no problem.
    But when `--with-static-linked-ext`, libencs should be statically-linked
    to ruby, so `make -f enc.mk libencs` is triggered from exts.mk, and
    exts.mk invokes it without MINIRUBY.

    Therefore, when out-of-src build and with `--with-static-linked-ext`,
    the second trans C source gen fails due to missing MINIRUBY.
    This issue is deterministically reproducible without -j because
    common.mk's `main` rule also has libencs prerequisite.

    This patch supresses the second trans C source gen.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5611

commit f7491e89b9daacbdbfb716d585e9c325ab6d3f45
  Author:     S.H <gamelinks007@gmail.com>
  AuthorDate: 2022-03-02 09:27:30 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-02 09:27:30 +0900

    Using macros to check iseq element

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5558

    Merged-By: nobu <nobu@ruby-lang.org>

commit 128972189284f4338722e8a910d0b4f6e7a02b31
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-02 03:38:48 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-02 03:38:48 +0900

    Wrap ruby_abi_version in `extern "C"` for C++

    Make ruby_abi_version have C linkage so that the symbol can be found
    in the shared object.

commit 4bdb4a1873bea9768bcf1bff8d7bffd80fdabb44
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-02 03:07:54 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-02 03:07:54 +0900

    Close files in examples in io.c (#5615)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 7a6ba30c24f2d796f93baed5d772b56680d042e6
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-03-02 01:45:18 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-02 01:45:18 +0900

    [DOC] Add encoding external/internal example to encoding.rdoc (#5610)

    * Add encoding external/internal example to encoding.rdoc

    * Add encoding external/internal example to encoding.rdoc

    * Update doc/encoding.rdoc

    I think there may be some more of these that I've recently put into io.c.  Will check tomorrow and create new PR if so.

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

    Co-authored-by: Peter Zhu <peter@peterzhu.ca>

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit fb724a887aa239de2fb1920f769ea097bee37b01
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-28 23:39:16 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-02 00:55:53 +0900

    Show embed status of array when len is 0 in objspace dump

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5609

commit a0e3da9ecc3ff46c27eae34091651929790e28dc
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-03-02 00:49:23 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-03-02 00:49:23 +0900

    Fix race in TestThread#test_thread_status_in_trap

    * If the sleep is not enough to run the rest of the logic the process
      would be exited early, e.g., before the signal handler can run.

commit 25ad9eabc7e49de61b1c0504c14c5af46bf446ed
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-01 23:44:39 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-01 23:44:39 +0900

    Only define RUBY_DLN_CHECK_ABI when supported

commit 210f29a6bfde91beba1773e848843e43554745aa
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-03-01 23:42:32 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-03-01 23:42:32 +0900

    ABI checking is not supported on Windows

commit 33dadb2c8aeaaa03f90e4b0f2613031633aa8751
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-03-01 21:27:41 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-03-01 23:33:48 +0900

    dln.c: suppress unused function 'abi_check_enabled_p' warning for wasi

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5613

commit eebc24218af66befb215f6c713e4f68f9c4db715
  Author:     Lars Kanis <lars@greiz-reinsdorf.de>
  AuthorDate: 2022-02-08 20:18:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-01 10:11:59 +0900

    [DOC] Fix reference in rb_enc_associate() description

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5534

commit 347c3faf8eba55cdb09861c29f8646d78053fa5c
  Author:     Mau Magnaguagno <maumagnaguagno@gmail.com>
  AuthorDate: 2022-03-01 10:05:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-01 10:05:49 +0900

    [DOC] Fix String#getbyte doc

    * String#getbyte returns `nil` if `index` is out of range.

    * Add String#getbyte example with nil output.

    * Modify String#getbyte example to use negative index.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5586

    Merged-By: nobu <nobu@ruby-lang.org>

commit 1a20bb1c986961786a981af95ed964f0625eeed0
  Author:     Lars Kanis <lars@greiz-reinsdorf.de>
  AuthorDate: 2022-02-25 22:22:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-03-01 09:59:12 +0900

    [DOC] Fix function name in example

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5599

commit 11bcc0d9d66de9b749904e82601e6be45c69bda4
  Author:     Vivek Bharath Akupatni <apatniv@gmail.com>
  AuthorDate: 2022-03-01 09:46:22 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-03-01 09:46:22 +0900

    [DOC] Fix documentation for Array#delete

    Never returns self.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5605

    Merged-By: nobu <nobu@ruby-lang.org>

commit eb40ff73bfc8afae1d87e214f31564907763d477
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-02-28 19:21:52 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-28 20:08:58 +0900

    [ruby/securerandom] Bump up v0.2.0

    https://github.com/ruby/securerandom/commit/62ca2828f3

commit bd1507b2f63d894fc3b9a62436ba028615d2f562
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-02-18 02:38:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-28 17:59:33 +0900

    spec: skip ext's extension spec for --with-static-linked-ext

    `resolve_feature_path` doesn't return .so when the given ext is linked
    statically by --with-static-linked-ext

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5582

commit 32f356e84a2079b1a68b056b5b150eb80928b185
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-28 12:53:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-28 13:29:18 +0900

    Fix a typo of macro name

    When the date is 28 Feb in the local timezone and 27 in the UTC,
    the leap second info is wrongly calculated, and the Time for 1 Mar
    created with a timezone resulted in an invalid date, 30 Feb.

commit 1cb67905337100015c6845cdb4be2bc2133014ea
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-28 11:39:55 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-28 11:40:25 +0900

    st.c: Fix a typo in a comment

commit ff3d7b720ec21e4856aac0b3c493bc78cbac83d4
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-02-28 10:32:28 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-28 11:39:20 +0900

    Merge RubyGems and Bundler master

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5606

commit 28ee1ca74831a9265ff40c81d14ff327837af757
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-02-28 06:43:23 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-28 06:43:23 +0900

    [DOC] Enhanced RDoc for encoding (#5603)

    Additions and corrections for external/internal encodings.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 7f4345639b09395f2ab423d1cdac6f2ddf0707de
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-27 20:09:58 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-27 21:58:59 +0900

    fake.rb: Set prefix to `$topdir`

    Not to refer outside the top build directory from rbconfig.

commit 289a4cf6728c6b29cf59cc9e04e6d2d7302f896b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-02-27 21:44:58 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-27 21:44:58 +0900

    [DOC] Extend intro/defn of 'transcoding' (#5602)

    * Extend intro/defn of 'transcoding'

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 3e5d7e31763362ecf98259755694585902d89f80
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2020-08-12 16:03:23 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-26 21:50:46 +0900

    [DOC] Move String.new to allow non US-ASCII characters

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5410

commit 0be2049a89bd4288f94205c9dabacac77d2fcc10
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-26 16:32:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-26 16:34:10 +0900

    [DOC] Fix the pseudo code

commit 62c15833531d85134783ba5e1d6cef8b7a4488da
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-26 16:16:40 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-26 16:23:04 +0900

    [DOC] Place a non-US-ASCII document in a document-specific script

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5601

commit 26ffda2fd217651e73eb71e6da8f89eb17866f9d
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-02-26 04:12:59 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-26 04:12:59 +0900

    [DOC] Enhanced RDoc for some encoding methods (#5598)



    In String, treats:

        #b
        #scrub
        #scrub!
        #unicode_normalize
        #unicode_normalize!
        #encode
        #encode!

    Also adds a note to IO.new (suggested by @jeremyevans).

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit e82f5db7891f45ec45c073d7eddfbd6cdefe97a8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-26 02:42:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-26 02:42:35 +0900

    Deprecate the unintentional ability to parse `Symbol`

commit 8780f15fd740a893095e749ef65f5f957fee37e3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-25 20:34:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-25 20:39:47 +0900

    [ruby/date] Use `assert_deprecated_warn`

    https://github.com/ruby/date/commit/c55004715a

commit 0db5ee519588808bf1942243843551f58e8d3b35
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-25 17:56:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-25 20:01:06 +0900

    [ruby/date] Suppress declaration-after-statement warnings

    https://github.com/ruby/date/commit/60bd16009d

commit bb22bc76b08b8281d888424522790e0227ea09a4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-25 13:39:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-25 19:57:50 +0900

    [ruby/date] Deprecate the unintentional ability to parse `Symbol`

    https://github.com/ruby/date/commit/d57818f3b3

commit d4f32b6b7b6be8c0508cf0e7d50ae7ccd14f555a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-11-24 18:08:42 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-25 19:52:33 +0900

    [ruby/date] Scale timeouts

    https://github.com/ruby/date/commit/2889698e2f

commit 4933d7fe565c5815febabf16603a9148abcf88d6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-11-24 18:05:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-25 19:52:32 +0900

    [ruby/date] Update tests

    https://github.com/ruby/date/commit/5a138afce9

commit b5c2a0840f4dd8b44e0f82cda7a7f225d0a816ef
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-07-09 07:21:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-25 19:52:31 +0900

    [ruby/date] Anchor at beginning of numbers

    https://hackerone.com/reports/1254844

    https://github.com/ruby/date/commit/2f7814cc22

commit 1758eade579c91f9ad000943994fccf30c7bf8a0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-07-09 07:21:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-25 19:52:31 +0900

    [ruby/date] Anchor at beginning of numbers

    https://hackerone.com/reports/1254844

    https://github.com/ruby/date/commit/7ffe25e458

commit d54a3df2e53a964c8bb36b87bc10ba2512830a60
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-07-09 06:41:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-25 19:52:30 +0900

    [ruby/date] Separate era from preceding word

    https://github.com/ruby/date/commit/017149e53e

commit c8cddac45c3786afc737ac9c1075d77d8f752d3d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-07-09 06:35:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-25 19:52:29 +0900

    [ruby/date] Use possessive match

    Reduce backtracks at the same character classes arounding an
    optional pattern.

    https://github.com/ruby/date/commit/1fd15f7c49

commit 9f59a2bd877061594b4af624fe76cc32f9743438
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-07-09 06:19:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-25 19:52:28 +0900

    [ruby/date] Extracted common leading pattern

    https://github.com/ruby/date/commit/ec86dbbdc1

commit c19a631c994e3745e821a87cc7eca3f02c33bda7
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-02-25 05:10:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-25 05:10:49 +0900

    [DOC] Enhancements for encoding.rdoc (#5578)

    Adds sections:

        String Encoding
        Symbol and Regexp Encodings
        Filesystem Encoding
        Locale Encoding
        IO Encodings
            External Encoding
            Internal Encoding
        Script Encoding
        Transcoding
            Transcoding a String

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit fc7e42a4731b274e5e732de83b720424ba65df59
  Author:     Adrien S <adrien@siami.fr>
  AuthorDate: 2022-02-25 04:12:17 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-25 04:12:17 +0900

    Fix yjit readme link pointing to old shopify readme (#5596)

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 8b3b113d84cc9d4c38e2b19f2d54d4d0457b93fd
  Author:     eileencodes <eileencodes@gmail.com>
  AuthorDate: 2022-02-25 02:57:57 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-02-25 03:59:58 +0900

    [DOC] Fix typo in yjit docs

    I noticed this yesterday when pairing with Aaron, there was an extra "e"
    in "callees".

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5597

commit 97001638d96c27a662f6fa8c682c61b0599a9c3c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-25 01:20:40 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-25 03:31:53 +0900

    Add ABI version to ruby_version tag on Windows

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5595

commit 9bd4b2ab14eea3df392f4531887fcc1c59291d02
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-23 06:40:32 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-24 23:18:01 +0900

    Add ABI version to RUBY_LIB_VERSION

    This commit adds the ABI version as build metadata to
    RUBY_LIB_VERSION. This will ensure that gems are installed in a path
    with the ABI version.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5591

commit b13a7c8e36e9b00b5c6668846f31be4e25523111
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-01-26 12:16:57 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-02-24 12:57:42 +0900

    Constant time class to class ancestor lookup

    Previously when checking ancestors, we would walk all the way up the
    ancestry chain checking each parent for a matching class or module.

    I believe this was especially unfriendly to CPU cache since for each
    step we need to check two cache lines (the class and class ext).

    This check is used quite often in:
    * case statements
    * rescue statements
    * Calling protected methods
    * Class#is_a?
    * Module#===
    * Module#<=>

    I believe it's most common to check a class against a parent class, to
    this commit aims to improve that (unfortunately does not help checking
    for an included Module).

    This is done by storing on each class the number and an array of all
    parent classes, in order (BasicObject is at index 0). Using this we can
    check whether a class is a subclass of another in constant time since we
    know the location to expect it in the hierarchy.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5568

commit 764e4fa850de749790e5ed11c8a4ab86a4499ac0
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-01-30 14:27:53 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-02-24 12:57:42 +0900

    Never call kind_of with klass=0

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5568

commit b8f0dc59d52266d9fbfc039e2f4b0f727c62baa0
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-02-24 00:51:28 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-02-24 00:58:48 +0900

    rb_provide_feature: Prevent $LOADED_FEATURES from being copied

    [Bug #18599]

    `vm->loaded_features` and `vm->loaded_features_snapshot` both share the
    same root. When a feature is pushed into `loaded_features`, the sharing
    is broken and `loaded_features` is copied.

    So an application requiring 1000 files, will allocate 1000 arrays of
    increasing size, which is very wasteful.

    To avoid this, we first clear the snapshot, so that `loaded_features`
    can directly be pushed into.

    Co-Authored-By: Peter Zhu <peter.zhu@shopify.com>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5593

commit 651b2e59598427edd0ec3ceb3a0a49b5e106a145
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-23 01:16:25 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-23 23:13:04 +0900

    Use rb_ary_behead for rb_ary_shift

    rb_ary_shift is just a special case of rb_ary_behead where we behead
    only 1 element.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5590

commit 43cc4f66c22b2730b1a561197f05c9dda666a76e
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-02-23 16:00:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-23 16:00:29 +0900

    Update bundled gems list at 2022-02-23

commit 63401b1384d206e3689bea5f5e4f06b7872b9ada
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-02-23 11:23:33 +0900
  Commit:     Shugo Maeda <shugo@ruby-lang.org>
  CommitDate: 2022-02-23 11:23:33 +0900

    Rename the wrong variable name `beg` to `len`

commit 68847794bf8068db2bf8c940e9478b07fb16c839
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-23 06:49:20 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-23 06:49:20 +0900

    Update ext/-test-/dln/empty/depend

    Dependencies was not updated in
    06dab12717a05bf49e4c6dff1d6f5458678d0e00.

commit 06dab12717a05bf49e4c6dff1d6f5458678d0e00
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-23 02:00:15 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-23 02:00:15 +0900

    Include ruby.h in empty.c to have ABI version

    I forgot to include this as part of
    638fd8774bed27b997f3b634ba8be7aa304be3c3.

commit 2ea175eb692dfc250af8f1ea8f60ff25490ccf08
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-23 00:15:21 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-23 00:16:31 +0900

    Fix compiler warning for uninitialized variable

    Fixes this compiler warning:

    warning: 'loc' may be used uninitialized in this function [-Wmaybe-uninitialized]
                                 bt_yield_loc(loc - cfunc_counter, cfunc_counter, btobj);

commit 2d5ecd60a5827d95449b9bd8704a0df2ffb0a60a
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-19 01:06:13 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-22 23:55:21 +0900

    [Feature #18249] Update dependencies

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5474

commit 638fd8774bed27b997f3b634ba8be7aa304be3c3
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-19 01:05:52 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-22 23:55:21 +0900

    [Feature #18249] Include ruby.h in extensions to have ABI version

    All shared libraries must have `include/ruby/internal/abi.h` to include
    the ABI version. Including `ruby.h` will guarantee that.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5474

commit 3df16924b45adfd88c20ef5fe25b10a1acb82dd7
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-19 00:59:45 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-22 23:55:21 +0900

    [Feature #18249] Implement ABI checking

    Header file include/ruby/internal/abi.h contains RUBY_ABI_VERSION which
    is the ABI version. This value should be bumped whenever an ABI
    incompatible change is introduced.

    When loading dynamic libraries, Ruby will compare its own
    `ruby_abi_version` and the `ruby_abi_version` of the loaded library. If
    these two values don't match it will raise a `LoadError`. This feature
    can also be turned off by setting the environment variable
    `RUBY_RUBY_ABI_CHECK=0`.

    This feature will prevent cases where previously installed native gems
    fail in unexpected ways due to incompatibility of changes in header
    files. This will force the developer to recompile their gems to use the
    same header files as the built Ruby.

    In Ruby, the ABI version is exposed through
    `RbConfig::CONFIG["ruby_abi_version"]`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5474

commit 37d5890e4941cedf6918821b29bb4a7e3a092e62
  Author:     Tim Pope <code@tpope.net>
  AuthorDate: 2022-02-19 06:11:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-22 18:52:52 +0900

    [ruby/reline] Fix support for emacs-ctlx and emacs-meta keymaps

    The existing implementation, given the below .inputrc, erroneously
    creates a "C-v" key binding:

            set keymap emacs-ctlx
            "\C-v": "[C-x C-v was pressed]"

    This fixes it to instead create a "C-x C-v" keybinding.

    https://github.com/ruby/reline/commit/719f52d231

commit 50098f4b61179a32f9df92e5d0e58cb911f71c86
  Author:     Mau Magnaguagno <maumagnaguagno@gmail.com>
  AuthorDate: 2022-02-22 17:49:09 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-22 18:01:53 +0900

    [ruby/zlib] [DOC] Fix typo in Zlib.adler32_combine

    https://github.com/ruby/zlib/commit/5e8f0b4164

commit ae8a8b184e6d7400470669ed7557842902019d36
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-20 20:45:53 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-22 17:08:52 +0900

    [ruby/rdoc] Prefer `require 'cgi/util'` instead of `require 'cgi'`

    RDoc is using only CGI.escape, escapeHTML, and unescape.
    We don't have to load the whole source code of cgi gem.

    https://github.com/ruby/rdoc/commit/d096222cc2

commit a49aae2c5e3786e5ac9a879772e53a6a731ec12f
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-02-22 11:58:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-22 13:32:59 +0900

    [rubygems/rubygems] Resolve cleaned-up error with temporary gemhome

    https://github.com/rubygems/rubygems/commit/623162ad2b

commit 25b0577c9266e3e2e3ec4870c9aa8b0733978b38
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-07 16:05:45 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-22 11:55:40 +0900

    Factor a "highlight" symbol out

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5516

commit eda10e81023dfc258eab106f00830c5c1de7ac24
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-02 16:05:18 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-22 11:55:40 +0900

    Remove unneeded newline from detailed_message

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5516

commit 5099f64fa4e929e7200bae37ec05d4cfa0f1211b
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-02 15:49:13 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-22 11:55:40 +0900

    Add a test for Exception#detailed_message

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5516

commit 4db986431a10d7b635a17cd0024278a2ede59948
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-02 15:36:13 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-22 11:55:40 +0900

    Let Exception#full_message pass highlight keywords to #detailed_message

    .. even when the argument is not explicitly passed.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5516

commit 89e446683e19fa77e2e0dec6396d4c4c09f36fab
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-02 15:08:59 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-22 11:55:40 +0900

    test/ruby/test_rubyoptions.rb: Make it pass on Windows

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5516

commit 98ca99cdd090d17b7ec11e0c6f40936a728165a5
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-02 15:08:10 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-22 11:55:40 +0900

    The default highlight arguments of Exception#detailed_message is false

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5516

commit 35ff545bb689f5af93ac603ea1f512705e0dc249
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-01 17:59:31 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-22 11:55:40 +0900

    Exception#detailed_message is added

    Also, the default error printer and Exception#full_message use the
    method instead of `Exception#message` to get the message string.

    `Exception#detailed_message` calls `Exception#message`, decorates and
    returns the result. It adds some escape sequences to highlight, and the
    class name of the exception to the end of the first line of the message.

    [Feature #18370]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5516

commit 3af316fa8c48e33c03159e3b0b3bef329e41dee8
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-01 17:03:58 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-22 11:55:40 +0900

    Refactor out rb_decorate_message from print_errinfo

    rb_decorate_message adds bold escape sequences to message, and the class
    name of exception (like " (RuntimeError)) of "message (RuntimeError)").

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5516

commit f207f7a193dc4e55820e77388edefb5d8fde18d7
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-01 16:32:38 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-22 11:55:40 +0900

    Do not escape error message

    [Feature #18367]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5516

commit 36e31b09cddbadd6acc4becb83a8c4bddfb2af1f
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-01 15:58:39 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-22 11:55:40 +0900

    error.c: Refactoring

    Factor out from rb_error_write the responsibility to check if stderr is
    a tty.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5516

commit c53bdb8ff64ad707ebbb0c05823c1cb0376433dc
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-02-21 17:10:56 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-21 17:10:56 +0900

    Removed dependency of net-protocol. There is no plan to remove from stdlib

commit 79b04790e8c72f7fae3b5e78136b17f309f91cee
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-02-21 16:29:54 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-21 17:10:22 +0900

    Removed dependency of io-wait. There is no plan to remove from stdlib

commit f92f08ff23dbda568ef66fea4fbc2216249f60e1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-21 13:05:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-21 13:08:06 +0900

    [DOC] Set the documentation title and main page

    Copied from https://github.com/ruby/docs.ruby-lang.org/ to be as
    same as docs.ruby-lang.org.

commit ed8776f96034b245b5418d4817d0ebda3db24198
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-12 23:29:19 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-20 20:39:48 +0900

    [MSWin] Tentative measure for a bug of VS2022 [Misc #18362]

    Disable the use of `__assume()`, when combinations of `isnan()`,
    `isinf()` and `__assume()` will be wrongly optimized due to the
    bug of VS2022.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5579

commit 32af1a3b5e8bb7b5ffc3c7f97edb8c0b74f016ae
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-04 19:56:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-20 20:39:48 +0900

    [MSWin] Try VS2022

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5579

commit 71388f9d395cc9864e37a6767c7f59538f947b3d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-05 16:32:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-20 20:39:48 +0900

    [MSWin] Reduce duplicate configurations

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5579

commit 74707800588dc452d5a64e786b5c98d0e7586e74
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-19 21:22:13 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-19 23:32:52 +0900

    Check if `__assume` is supported

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5577

commit 131154f878b7f63277bd97520500414047a814fa
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-19 16:02:29 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-19 23:32:52 +0900

    Define `HAVE___BUILTIN_UNREACHABLE` instead of `UNREACHABLE`

    `UNREACHABLE` in ruby/internal/has/builtin.h is only used as just
    a flag now, and redefined in ruby/backward/2/assume.h then.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5577

commit 6e6ee1e6b3ce70a325043c502918c1eb9529b4a2
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-02-19 21:33:53 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-19 23:18:51 +0900

    Replace and Using METACLASS_OF macro

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5576

commit c8817d6a3ebc9bbc151625bca198b8f327d1d68f
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-02-19 19:10:00 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-19 19:10:00 +0900

    Add String#byteindex, String#byterindex, and MatchData#byteoffset (#5518)

    * Add String#byteindex, String#byterindex, and MatchData#byteoffset [Feature #13110]

    Co-authored-by: NARUSE, Yui <naruse@airemix.jp>

  Notes:
    Merged-By: shugo <shugo@ruby-lang.org>

commit db6b23c76cbc7888cd9a9912790c2068703afdd0
  Author:     Kazuki Tsujimoto <kazuki@callcc.net>
  AuthorDate: 2022-02-19 18:45:49 +0900
  Commit:     Kazuki Tsujimoto <kazuki@callcc.net>
  CommitDate: 2022-02-19 18:45:49 +0900

    Find pattern is no longer experimental [Feature #18585]

commit 3200d97e95e5d84483b3df46dc54448a82820b9d
  Author:     Kazuki Tsujimoto <kazuki@callcc.net>
  AuthorDate: 2022-02-19 18:45:36 +0900
  Commit:     Kazuki Tsujimoto <kazuki@callcc.net>
  CommitDate: 2022-02-19 18:45:36 +0900

    Fix location of NODE_LIT in p_kw

commit 4641abf0a236076aa9e1e712d810ad80bee81e4d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-18 17:59:15 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-19 15:33:15 +0900

    Use symbols for clock IDs if `clockid_t` is not numeric

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5574

commit b3de25dfee5e27cb54a47999bce885b3700d32fb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-19 00:10:50 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-19 15:33:15 +0900

    Set static IDs to same name variables

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5574

commit 2ae35ad76611b0da21cef4c8444d9ff74368e874
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-18 17:58:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-19 15:33:15 +0900

    RUBY_REPLACE_TYPE: check if the target type is a pointer

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5574

commit dfa17f46a899ed6d3bef1bb61642ffa62b5e00ec
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-19 15:14:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-19 15:14:01 +0900

    [DOC] prefer rdoc references over generated URLs

commit bec3a1f15a7608ccf7b4e6eed783bf9c4c9aeb74
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-02-19 07:17:51 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-19 07:17:51 +0900

    Enhanced RDoc for io.c (#5573)

    Links to options doc added/improved; in particular, new links to new section "Encoding Options" in encoding.rdoc.  Minor inconsistencies ironed out.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 883fe55c4ba2a5f7a50c6970558be94b37c1a050
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-02-19 04:33:18 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-19 04:33:18 +0900

    New doc about encoding (#5572)



    This is the beginning of an extended explication of Ruby encoding.

    One of its more important jobs is to provide link targets for encoding documentation in other classes (String, File, IO, etc.). In particular, they can link to the "Encoding Options" section.

    I'll have much to add to this document going forward, along with suitable adjustments in the class documentation.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 82513c7d715c21c8045fd6420f79a3c4e40bd4ab
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-18 23:30:08 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-18 23:30:08 +0900

    Remove unused function declaration in dln.c

    getenv is no longer used in dln.c.

commit cda5aee74e298cca9ffaa42fdc99e8de2e05fb0e
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-02-18 19:47:08 +0900
  Commit:     Shugo Maeda <shugo@ruby-lang.org>
  CommitDate: 2022-02-18 22:13:45 +0900

    LONG2NUM() should be used for rmatch_offset::{beg,end}

    https://github.com/ruby/ruby/pull/5518#discussion_r809645406

commit e9a2b30744a62268c66d6c17730ed96486d9783c
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-02-18 21:46:04 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-18 21:46:04 +0900

    Enhanced RDoc concerning command injection (#5537)

    Clarifies security vulnerabilities for commands.

    Treats:

        Kernel.system
        Kernel.` (backtick)
        IO.popen
        IO.read
        IO.write
        IO.binread
        IO.binwrite
        IO.readlines
        IO.foreach

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 542a38f619bea9fa7aa5a6be1449fc5f9b4d01e9
  Author:     NARUSE, Yui <naruse@airemix.jp>
  AuthorDate: 2022-02-18 21:43:56 +0900
  Commit:     NARUSE, Yui <naruse@airemix.jp>
  CommitDate: 2022-02-18 21:44:22 +0900

    gen-mail.rb: support markdown file path

commit dff70b50d01930213e7799ee52969ff309cc3601
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-27 21:33:39 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-02-18 18:28:18 +0900

    [wasm] vm.c: stop unwinding to main for every vm_exec call by setjmp

    the original rb_wasm_setjmp implementation always unwinds to the root
    call frame to have setjmp compatible interface, and simulate sjlj's
    undefined behavior. Therefore, every vm_exec call unwinds to main, and
    a deep call stack makes setjmp call very expensive. The following
    snippet from optcarrot takes 5s even though it takes less than 0.3s on
    native.

    ```
    [0x0, 0x4, 0x8, 0xc].map do |attr|
      (0..7).map do |j|
        (0...0x10000).map do |i|
          clr = i[15 - j] * 2 + i[7 - j]
          clr != 0 ? attr | clr : 0
        end
      end
    end
    ```

    This patch adds a WASI specialized vm_exec which uses lightweight
    try-catch API without unwinding to the root frame. After this patch, the
    above snippet takes only 0.5s.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5502

commit ac32b7023a7743b1f0cdcfe11156c95c0edb7c54
  Author:     Akinori MUSHA <knu@idaemons.org>
  AuthorDate: 2022-02-17 18:10:16 +0900
  Commit:     Akinori MUSHA <knu@idaemons.org>
  CommitDate: 2022-02-18 11:56:24 +0900

    Mention Set as a new builtin class to NEWS

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5563

commit dd3501bb9580951623a9aa7c2f86f7c98f9d6b9c
  Author:     Akinori MUSHA <knu@idaemons.org>
  AuthorDate: 2022-02-17 18:02:42 +0900
  Commit:     Akinori MUSHA <knu@idaemons.org>
  CommitDate: 2022-02-18 11:56:24 +0900

    Make Set a builtin feature [Feature #16989]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5563

commit 4c366ec9775eb6acb3fcb3b88038d051512c75a2
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-01-15 06:02:46 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-02-18 01:54:07 +0900

    Add Thread.each_caller_location

    This method takes a block and yields Thread::Backtrace::Location
    objects to the block.  It does not take arguments, and always
    starts at the default frame that caller_locations would start at.

    Implements [Feature #16663]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5445

commit 4113862c0068a8a95d752f5fdf14980f92cd41d7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-16 23:00:15 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-17 22:47:02 +0900

    Do not search for commands with double tool prefixes [Bug #18504]

    The `CC` found by `AC_CHECK_TOOL` is prefixed by the host triplet
    when cross compiling.  To search for commands with `AC_CHECK_TOOL`
    based on that `CC` means to search also doubly prefixed names.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5565

commit 992bdfea2d3030c041a33d58221ffdcd91f1a999
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-17 17:49:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-17 20:29:50 +0900

    Refine the load error message

    Show the linked ruby library name when failed to load extension
    built against different ruby library.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5564

commit 5952a1f201cfed38277b4fafa0624c1a048edb6d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-17 17:35:38 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-17 20:29:50 +0900

    Check running macOS version at runtime

commit c8b414b3345564d975445b25d9bcb9e2604f636d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-17 20:12:38 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-17 20:12:38 +0900

    Reuse `-v` option result as `target_platform`

    Backticks method invokes `/bin/sh` when the command contains
    quotes, and `sh` clears some environment variables set in
    runruby.rb to search the built shared library.

commit dfe7faa6b60464c184fede59f227341f6c57cc97
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-02-17 19:01:33 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-02-17 19:04:16 +0900

    exclude name must be Regexp or Symbol

    https://github.com/ruby/ruby/blob/fdf0f8d81487560f5837dc7e3888a96f7c2b4ec9/tool/lib/test/unit.rb#L1273-L1290

commit fdf0f8d81487560f5837dc7e3888a96f7c2b4ec9
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-02-17 18:57:33 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-02-17 18:58:37 +0900

    btest-ruby OPTS=-v should disable quiet

    `make btest-ruby` is run with -q (quiet) option and -v should
    remove -q option.

commit 9f81d9f92d4f10bbdd0b5ac80b9d5cd8921a71be
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-27 09:55:41 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-17 14:36:30 +0900

    Hide patchlevel from release build

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5496

commit 5f01fba001c478834d97d8abf88b0cb6e235d436
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-17 00:36:08 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-17 01:43:59 +0900

    yjit_codegen.c: Prevent a possible out-of-bound access

    The code attempts to read `C_ARG_REGS[leaf_builtin->argc + 1]`, and the
    size of `C_ARG_REGS` is `NUM_C_ARG_REGS`.  So, the guard condition must
    be `leaf_builtin->argc + 1 + 1 <= NUM_C_ARG_REGS`.

    This change fixes the off-by-one error. This issue was found by Coverity
    Scan.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5561

commit 797e8f542e29524cbfce3959da132ef6349a8bbc
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-02-17 00:34:06 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-17 00:34:06 +0900

    Fix -Wsign-compare when -DRUBY_DEBUG=1

    Sizes for darray are size_t now. CC @peterzhu2118

commit 969ad5802dfe60c254f2f30514233b05ece8049c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-15 23:57:33 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-16 23:50:29 +0900

    Change feature_index from fake Array to darray

    Using a fake (malloc) RArray is not friendly for the garbage
    collector. Fake RArray does not have a heap page, so it causes Variable
    Width Allocation to crash when we try to implement it on Arrays.

    This commit changes feature_index from a RArray to a darray.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5546

commit 71afa8164d40f18306fc2ee5a1ccc74f2926379b
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-15 23:55:53 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-16 23:50:29 +0900

    Change darray size to size_t and add functions that use GC malloc

    Changes size and capacity of darray to size_t to support more
    elements.

    Adds functions to darray that use GC allocation functions.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5546

commit f9abb286fb3ddff1caacea6c74d857803df18897
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-16 21:09:17 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-02-16 23:43:54 +0900

    Parenthesize a macro expression

    The modulo in `rb_yjit_code_page_alloc` seems interpreted wrongly.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5560

commit 00c7a0d491504b0b2b1b8723d4b70e5c24ec649c
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-02-16 17:15:00 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-02-16 17:57:04 +0900

    fix parallel test timeout retrying

    On the parallel test, workers can be killed because of timeout
    and the information for the retrying can be inconsistent.
    This patch will skip if the inconsistency is found and report
    as an error.

    http://ci.rvm.jp/results/trunk-asserts@phosphorus-docker/3834082

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5559

commit b9851c7e1b1cbc13b050831b0429e7a4097e11b7
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-16 14:15:11 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-16 16:32:28 +0900

    lib/securerandom.rb: Fix the check of availability of Random.urandom

    Random.urandom raises a RuntimeError if it is unavailable.
    [Bug #13885]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5557

commit 1ae630db2682831cc0f2d381ff46e7b8cd3c2174
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-02-16 11:07:45 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-02-16 13:31:46 +0900

    `wmap#each` should check liveness of keys

    `ObjectSpace::WeakMap#each*` should check key's liveness.
    fix [Bug #18586]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5556

commit 26187a8520b8c6645206a2064c11a7ab86a89845
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-12 05:44:08 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-14 23:35:54 +0900

    Use RARRAY_SHARED_ROOT_FLAG for checking re-enter

    RARRAY_SHARED_ROOT_FLAG is defined as FL_USER5, but we should use
    RARRAY_SHARED_ROOT_FLAG instead of depending on that they're equal.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5547

commit 76e594d5157bd763636adb096d4aa06688ac03ac
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-02-14 16:10:18 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-02-14 17:17:55 +0900

    fix GC event synchronization

    (1) gc_verify_internal_consistency() use barrier locking
        for consistency while `during_gc == true` at the end
        of the sweep on `RGENGC_CHECK_MODE >= 2`.
    (2) `rb_objspace_reachable_objects_from()` is called without
        VM synchronization and it checks `during_gc != true`.

    So (1) and (2) causes BUG because of `during_gc == true`.
    To prevent this error, wait for VM barrier on `during_gc == false`
    and introduce VM locking on `rb_objspace_reachable_objects_from()`.

    http://ci.rvm.jp/results/trunk-asserts@phosphorus-docker/3830088

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5552

commit 8e0899919b1d543399f124092c16780467155f39
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-02-14 14:50:01 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-02-14 14:52:12 +0900

    extend timeout for mjit

    1 seconeds is not enough on a specific (busy) machine w/ mjit.
    http://ci.rvm.jp/results/trunk-mjit@phosphorus-docker/3830178

commit 7a8ea2e49720b68323c5cf9899d31c3a9e24dd80
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-04 20:06:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-13 18:25:59 +0900

    [MSWin] Install OpenSSL with vcpkg

commit 045ab1d056e3babcb02e92f6d7e6426a936f2ca3
  Author:     Koichi ITO <koic.ito@gmail.com>
  AuthorDate: 2022-02-13 12:17:18 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-13 15:48:01 +0900

    [DOC] Fix a typo in `Integer#chr` example

    The current example raises the following error.

    ```ruby
    0..chr # => undefined local variable or method `chr' for main:Object (NameError)
    ```

    This PR updates the example to produce the expected behavior.

    ```ruby
    0.chr # => "\x00"
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5550

commit 844a8355a1ee22d67e91ae0553851d0285595cd0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-12 17:12:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-12 17:13:06 +0900

    [ruby/rdoc] Load YAML library for each test

    https://github.com/ruby/rdoc/commit/a93e1bcd68

commit 3b3fb73d6107f64b4c71472de36c4debaf41cd42
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-09-15 17:26:14 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-12 16:15:08 +0900

    [ruby/rdoc] Dump plain objects as `RDoc::Options`

    So that the generated `.rdoc_options` file is loadable.

    https://github.com/ruby/rdoc/commit/6cf6e1647b

commit 11f3882173e1efbc62a3a5bb667acf69ec7e8161
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-12 15:58:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-12 16:02:17 +0900

    [ruby/rdoc] Fix a test method name

    https://github.com/ruby/rdoc/commit/8166b84cf3

commit e95ad700799b996cf298c3de956f8075253ca57f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-12 15:22:47 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-12 15:22:47 +0900

    [ruby/rdoc] Update generated files

commit 5348a34504a67597e3a3ed98a3020dfd762241ad
  Author:     Ulysse Buonomo <buonomo.ulysse@gmail.com>
  AuthorDate: 2022-02-10 11:31:06 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-12 15:06:06 +0900

    [ruby/rdoc] Relative loading for easier development (https://github.com/ruby/rdoc/pull/821)

    This patch makes sure we only load relative code. Hence when coding or
    testing rdoc, we'll be sure to always be using the correct code.

    Discussion started at https://github.com/ruby/rdoc/pull/817.

    Signed-off-by: Ulysse Buonomo <buonomo.ulysse@gmail.com>

    https://github.com/ruby/rdoc/commit/aa41bd48eb

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

commit 08137c5dd99354225874abc95280188738030794
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2021-12-28 11:49:09 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-12 14:59:26 +0900

    [ruby/rdoc] Optimize RawLine by using a regexp instead of negative look-ahead rule

    This improves the performance in some cases.
    `rdoc .../gems/sinatra-2.1.0/README.md` takes 10.5 sec. before this
    change, and 7.1 sec. after this change.
    `make rdoc` of ruby/ruby takes 19.3 sec. before this change, 18.1 sec.
    after this change.

    https://github.com/ruby/rdoc/commit/7cf8281e3e

commit 6e65e04186edbf2b5be88cd30268d455a9c6fec5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-12 12:37:51 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-12 12:38:37 +0900

    [DOC] Remove unnecessary `rdoc-ref:` schemes

commit 50c972a1ae1b15b292f45e78ff3227644f3cabda
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-11 10:30:28 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-12 12:38:36 +0900

    [DOC] Simplify operator method references

commit e6b537e605381b6f1c9518adbeb6813c5e579df7
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-02-12 00:07:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-12 12:28:07 +0900

    Reuse operation rule for operation2

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5545

commit c0651b4ae1426f8ad9322a320d22035223c77537
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-02-09 21:03:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-12 12:27:49 +0900

    Reuse p_kwnorest rule for f_no_kwarg

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5540

commit 68be9a9ae88ab6e28f7c479564ff5a963a3686ad
  Author:     Steven Nunez <octosteve@github.com>
  AuthorDate: 2022-02-12 07:12:30 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-12 10:43:27 +0900

    Fix Typo

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5548

commit 118769d028c120c86566421096d69f7705315b5e
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-12 00:36:01 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-12 00:36:01 +0900

    test/ruby/test_exception.rb: prevent "assigned but unused variable"

commit e92e87bf903a420e690573de263955256facd93e
  Author:     Ilia Zenkevich <ilia.zenkevich@activeplatform.com>
  AuthorDate: 2022-02-10 01:57:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-11 18:49:57 +0900

    [rubygems/rubygems] Add clarification for bundle-config "with" option

    https://github.com/rubygems/rubygems/commit/666f3cc724

commit 7b676b3ce383c0b43a81694f80fbb424ee753213
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-02-10 01:11:52 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-11 18:20:20 +0900

    [rubygems/rubygems] Fix corrupted lockfile when using `gemspec` and multiple sources

    https://github.com/rubygems/rubygems/commit/9712262d90

commit 36df0c72dc62317714ba460358873feb6b58c69d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-11 11:25:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-11 11:25:05 +0900

    [DOC] Add `.rdoc_options` file

    Set `--page-dir` option so that direct rdoc call is consistent
    with `make html`.

commit 261753249996d46e00c2549fff2527816bf387db
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-09 04:28:18 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-10 23:33:42 +0900

    Free cached mark stack chunks when freeing objspace

    Cached mark stack chunks should also be freed when freeing objspace.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5536

commit f07a2613e3f14ab713bc5ab88541101bc02a8e38
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-02-08 14:32:40 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-10 17:18:05 +0900

    Support directory layout of ruby/ruby repository

commit 52d3e31d274bed09aea6c167efe62e0c2f70eee4
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-02-04 18:00:14 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-10 17:18:05 +0900

    [ruby/ipaddr] Bump version to 1.2.4

    https://github.com/ruby/ipaddr/commit/6edf6ee6c3

commit 9b768012f6bf5b5896d2d34feb69605d4ccc9ca3
  Author:     Espartaco Palma <git@esparta.co>
  AuthorDate: 2021-12-13 18:12:07 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-10 17:18:05 +0900

    [ruby/ipaddr] Fix exception calling `to_range' after `freeze'

    https://github.com/ruby/ipaddr/commit/77fe1fca0a

commit 100253c7f0f4d105ae88340a0314506cde69cfd2
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2021-12-02 18:56:39 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-10 17:18:05 +0900

    [ruby/ipaddr] Ipaddr#native must also coerce `@mask_addr`

    Before it would be left as an IPv6 mask causing `to_range` to fail.

    ```
    >> IPAddr.new("::2").native.to_range
    /opt/rubies/3.0.3/lib/ruby/3.0.0/ipaddr.rb:479:in `set': invalid address (IPAddr::InvalidAddressError)
    ```

    https://github.com/ruby/ipaddr/commit/af485192f3

commit 5221cb4468526a18875c21cff5dee5ac96d9873b
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2021-12-02 18:07:26 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-10 17:18:03 +0900

    [ruby/ipaddr] Expose IPAddr::VERSION

    An almost universal convention for gems is to expose Namespace::VERSION
    which makes it much easier when debugging etc.

    https://github.com/ruby/ipaddr/commit/587ae6996e

commit fd710d7e9995679db80b7adf35bbda2cd4db90c6
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-02-10 02:58:05 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-02-10 12:47:28 +0900

    Fix Range#include? for beginless exclusive string ranges

    Previously, include? would return true for the end of the range,
    when it should return false because the range is exclusive.

    Research and Analysis by Victor Shepelev.

    Fixes [Bug #18577]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5541

commit 05b1944c53205ffd8c11f1ec2ae6fd48485b55b1
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-02-10 05:14:51 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-02-10 10:32:43 +0900

    objspace: Hide identhash containing internal objs

    Inside ObjectSpace.reachable_objects_from we keep an internal identhash
    in order to de-duplicate reachable objects when wrapping them as
    InternalObject. Previously this hash was not hidden, making it possible
    to leak references to those internal objects to Ruby if using
    ObjectSpace.each_object.

    This commit solves this by hiding the hash. To simplify collection of
    values, we instead now just use the hash as a set of visited objects,
    and collect an Array (not hidden) of values to be returned.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5542

commit a271acf82284a8ee665686ab6e95df5622f4b1e2
  Author:     Sven Schwyn <schwyn@bitcetera.com>
  AuthorDate: 2022-02-09 22:15:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-10 08:38:09 +0900

    [rubygems/rubygems] Fix typo in multiple gemfiles warning

    https://github.com/rubygems/rubygems/commit/bc69d19097

commit 2cc890d7d3624a17fe023e1a6d7e2e162fd8f4d6
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-02-09 14:12:29 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-02-10 08:24:18 +0900

    LLVM 15 begun.

    See also https://github.com/llvm/llvm-project/commit/a2601c98873376bbbeff4b6eddf0f4d920535f8b

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5538

commit 496591de96b261b8789332c7f8b2bfbd17658955
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-02-09 18:24:17 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-02-10 00:14:27 +0900

    st.c: Do not clear entries_bound when calling Hash#shift for empty hash

    tab->entries_bound is used to check if the bins are full in
    rebuild_table_if_necessary.

    Hash#shift against an empty hash assigned 0 to tab->entries_bound, but
    didn't clear the bins. Thus, the table is not rebuilt even when the bins
    are full. Attempting to add a new element into full-bin hash gets stuck.

    This change stops clearing tab->entries_bound in Hash#shift.
    [Bug #18578]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5539

commit 8013250136b61e0ae5a8d27a4ec73936cd7647eb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-08 23:54:19 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-09 22:22:46 +0900

    [ruby/rdoc] Simplify attribute exclusiveness conditions

    https://github.com/ruby/rdoc/commit/45e33c4b85

commit ec6d1cf28fc333fa360ab786c3852b95475932b2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-09 00:15:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-09 22:22:45 +0900

    [ruby/rdoc] Get rid of ruby-mode.el confusions

    https://github.com/ruby/rdoc/commit/63fac51198

commit 994b3f1dc61b3eb3021fad82f6a7b934af8d0961
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-09 19:13:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-09 19:41:12 +0900

    [ruby/rdoc] Allow cross references to negation operator method

    https://github.com/ruby/rdoc/commit/69cafb213a

commit 8db06fe2c9c1103fd623e97c80660e41502e6580
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-09 18:56:36 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-09 19:41:11 +0900

    [ruby/rdoc] Allow cross references to logical operator methods

    https://github.com/ruby/rdoc/commit/17c0da304d

commit cbd54cba03d0a0ecae1df590ca78751362fda826
  Author:     Soutaro Matsumoto <matsumoto@soutaro.com>
  AuthorDate: 2022-02-08 21:23:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-09 18:45:05 +0900

    [ruby/rdoc] Skip parentheses on singleton class declaration

    https://github.com/ruby/rdoc/commit/b6c6d4f978

commit 88b1d21dbb64b4a310e589b1ac8b7661ea09500f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-09 14:58:35 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-09 18:44:41 +0900

    [ruby/rdoc] Allow cross references to backtick method

    https://github.com/ruby/rdoc/commit/52c33157f1

commit 202f690a5edef6d0b8f73c6df53edc02a0f16c7e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-07 22:06:53 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-09 18:44:40 +0900

    [ruby/rdoc] Allow cross references to operator methods

    Make operator methods, e.g., `Regexp#=~`, `Integer#<=>`, cross
    reference targets.

    https://github.com/ruby/rdoc/commit/5d332a4128

commit dec96dd89744695d310b70a672b9ea044eeed89f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-08 17:19:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-09 18:43:07 +0900

    [ruby/rdoc] Support all struct definition functions

    Currently only `rb_struct_define_without_accessor` is supported by
    https://github.com/ruby/rdoc/pull/73.  We should support other
    three functions too.

    https://github.com/ruby/rdoc/commit/d42288f06c

commit adca6f24b12d15299bf82fb518502dd27f4add84
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-09 15:31:10 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-09 15:31:10 +0900

    [DOC] Prefer the original file names over generated names

    Should also the label in an explicit `rdoc-ref:` link be converted
    in the future?

commit 85ad8c65ca7f2292dbdfebbf541cce6ac9b82451
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-02-08 23:51:39 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-08 23:51:39 +0900

    [DOC] Adjustments to links in array.c (#5532)

    Mostly suppressing links to itself.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 2a30ddd9f3551f9fa0422b3e215f6fbaa3c12799
  Author:     Paarth Madan <paarth.madan@shopify.com>
  AuthorDate: 2022-02-03 07:26:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-08 10:33:49 +0900

    Remove extraneous "." in String#+@ documentation

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5522

commit 8ca7b0b68aaff46ad88638f95b26429fee02d04a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-08 01:39:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-08 01:39:37 +0900

    [DOC] Fix broken links to operator methods

    Once https://github.com/ruby/rdoc/pull/865 is merged, these hacks
    are no longer needed.

commit 07bf65858d8dd5acc11c6bddb370735466690b47
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-08 01:28:08 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-08 01:28:08 +0900

    [DOC] Fix broken links to case_mapping.rdoc

commit 16fdc1ff46effdfa995b7280e6474ff45fbfbf4e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-08 01:26:39 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-08 01:27:52 +0900

    [DOC] Fix broken links to literals.rdoc

commit bc5662d9d8909363e67e01f3b1a2eecb0793d3ee
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-08 01:18:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-08 01:18:56 +0900

    [DOC] Simplify links to global methods

commit f53f49197f8f785d372847b537d3607a2c71c70d
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-07 23:02:49 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-07 23:52:06 +0900

    [DOC] Replace with IO@Modes

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5530

commit 9b3115ff643e2c3d30f12f7f7a80a07c686e23d2
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-07 00:41:26 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-07 23:52:06 +0900

    [DOC] Remove extra period

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5530

commit a12e2f9aa527b8e0b6d652679f400e120c6324d7
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-07 00:41:15 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-07 23:52:06 +0900

    [DOC] Remove extra closing curly bracket

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5530

commit a32e5e1b970298590200c2a63e5d4bacce4355ac
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-07 00:37:06 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-07 23:52:06 +0900

    [DOC] Use RDoc link style for links in the same class/module

    I used this regex:

    (?<=\[)#(?:class|module)-([A-Za-z]+)-label-([A-Za-z0-9\-\+]+)

    And performed a global find & replace for this:

    rdoc-ref:$1@$2

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5530

commit f9a2802bc58b611a16108bbaf3473cb6195eac0d
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-07 00:30:11 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-07 23:52:06 +0900

    [DOC] Use RDoc link style for links to other classes/modules

    I used this regex:

    ([A-Za-z]+)\.html#(?:class|module)-[A-Za-z]+-label-([A-Za-z0-9\-\+]+)

    And performed a global find & replace for this:

    rdoc-ref:$1@$2

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5530

commit ecd469fad00611a947aecc6e1e914682d1eec65c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-06 04:25:22 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-07 23:52:06 +0900

    [DOC] Fix links in documentation for File and IO

    Fixes some typos and dead links.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5530

commit 981a75db910cd5cfd5ee527a25bdd762918077e3
  Author:     nicholas a. evans <nicholas.evans@gmail.com>
  AuthorDate: 2022-01-22 06:54:40 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-07 23:06:19 +0900

    [rubygems/rubygems] Fix missing rdoc for Gem::Version

    The rdoc for Gem::Version is available here:
    * https://docs.ruby-lang.org/en/3.0/Gem/Version.html

    However it is currently missing from:
    * https://ruby-doc.org/stdlib-3.1.0/libdoc/rubygems/rdoc/Gem/Version.html
    * https://docs.ruby-lang.org/en/3.1/Gem/Version.html
    * https://docs.ruby-lang.org/en/master/Gem/Version.html
    * `ri Gem::Version`
      with `ri --version` => 6.4.0 and `gem --version` => 3.3.5
    * `yard ri Gem::Version` with `yard --version` => 0.9.27

    https://github.com/rubygems/rubygems/commit/c10e5dd884

commit 01693807415a90d39742a3c3391f942287358af8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-07 15:30:07 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-07 15:30:07 +0900

    Appveyor: Link vcpkg DLLs except for readline

commit 8fe2ce83efb53fdef19a43cef520030ad36631a2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-07 01:19:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-07 13:40:48 +0900

    [MSWin] Link all vcpkg DLLs except for readline

commit 65ccae5b2a0b29797522bbe882105eeea00433be
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-07 00:10:00 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-07 13:40:48 +0900

    [MSWin] Install libyaml using vcpkg

commit a07fa198a690054e793faec2d09a87ebabc1c484
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-02-07 00:44:40 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-07 00:44:40 +0900

    Improve links to labels in string.c and struct.c (#5531)

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 402d76485cfc20ce8307878a84967d75ccc13378
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-13 17:44:09 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-06 22:23:55 +0900

    [MSWin] Install libffi using vcpkg

commit b9083c206aa02a824970e809d66607dd2c1a90f1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-05 21:51:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-06 22:22:58 +0900

    [MSWin] Cache installed vcpkg packages

commit 90a540e9f2072679aaccf1b2549fcc2efa564574
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-06 16:52:53 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-06 19:24:36 +0900

    Appveyor: Try readline extension

commit 2cf687fe6c6eb4ef1ef4958fc8aeb094e14bfbb5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-06 16:44:18 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-06 19:23:30 +0900

    Appveyor: DBM extensions have not been bundled already

commit 7ce3a100f2aef897ee1062dcda23b70cd5574866
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-05 17:25:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-06 19:22:44 +0900

    Fold command line items

commit c79d2e54748f52c5023b0a1ee441561df9826c17
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-01-29 23:11:10 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-02-06 11:10:19 +0900

    Fix TAG_THROW through require [Bug #18562]

    Previously this was being incorrectly swapped with TAG_RAISE in the next
    line. This would end up checking the T_IMEMO throw_data to the exception
    handling (which calls Module#===). This happened to not break existing
    tests because Module#=== returned false when klass is NULL.

    This commit handles throw from require correctly by jumping to the tag
    retaining the TAG_THROW state.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5513

commit 3e6c6c74dd40280103e953b321e5804054707053
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-02-06 05:05:27 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-06 05:05:27 +0900

    [DOC] Enhanced RDoc for io.c (#5529)

    Changes parameter name from simple opts to open_opts or enc_opts when appropriate; leaves the name unchanged when more than one kind of option is allowed.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 603ab709615dd35fa8ebe53087c27631f5b07812
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-02-05 03:10:15 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-02-06 03:05:47 +0900

    support concurrent btest execution

    * `-j` option for concurrent test with threads
      * `-jN` uses N threads
      * `-j` uses nproc/2 threads
    * Introduce `BT` struct to manage configurations
    * Introduce `Assertion` to manage all assertions
    * Remove all toplevel instance variables
    * Show elapsed seconds at last

    ```
    $ time make btest
    ...
    real    0m37.319s
    user    0m26.221s
    sys     0m16.534s

    $ time make btest TESTOPTS=-j
    ...
    real    0m11.812s
    user    0m36.667s
    sys     0m21.872s
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5528

commit 2a76440fac62bb0f6e53ccada07caf4b47b78cf9
  Author:     Aaron Patterson <tenderlove@ruby-lang.org>
  AuthorDate: 2022-01-29 03:06:02 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-02-05 07:36:04 +0900

    [Bug #18501] Fire write barrier after hash has been written

    Before this change the write barrier was executed before the key and
    value were actually reachable via the Hash.  This could cause
    inconsistencies in object coloration which would lead to accidental
    collection of dup'd keys.

    Example:

    1. Object O is grey, Object P is white.
    2. Write barrier fires O -> P
    3. Write barrier does nothing
    4. Malloc happens, which starts GC
    5. GC colors O black
    6. P is written in to O (now we have O -> P reference)
    7. P is now accidentally treated as garbage

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5525

commit 06a28ec4d40ca20b145b32cd6fb9ae9dd9b01582
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-02-05 07:26:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-05 07:26:49 +0900

    [DOC] Enhanced RDoc for io.c (#5527)

    Treats:

        IO.binread (abbreviated to be like IO.binwrite).
        IO.write
        IO.binwrite
        IO.copystream
        IO#external_encoding
        IO#internal_encoding
        IO#set_encoding

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 46f6575157d4c2f6bbd5693896e26a65037e5552
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-02-04 21:55:10 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-04 21:55:10 +0900

    [DOC] Enhanced RDoc for io.c (#5511)

    Treats:

        IO.foreach
        IO.readlines
        IO.read
        IO.binread

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 203b1fc7e206764f52c99e44af85c651069cd8b9
  Author:     Max Leopold <max.leopold2111@gmail.com>
  AuthorDate: 2022-02-04 02:22:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-04 08:26:49 +0900

    Add documentation for regexp emoji named character property

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5524

commit 9fab2c1a1a5f5e429eb88eac29d250685dcc4354
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-02-02 06:36:29 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-04 05:07:35 +0900

    Add the size pool slot size to the output of ObjectSpace.dump/dump_all

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5520

commit af321ea7273e43d65ea7f5743f56e10dcd4e98b0
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-04 01:51:20 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-04 05:06:55 +0900

    Move total_freed_pages to size pool

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5523

commit a9221406aa3177f98be507ff5474f2f7d78b481a
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-04 01:45:37 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-04 05:06:55 +0900

    Move total_allocated_pages to size pool

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5523

commit 424374d3302d8d25165007e7afedf14b1a76d23e
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-03 05:32:38 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-03 23:22:24 +0900

    Fix case when gc_marks_continue does not yield slots

    gc_marks_continue will start sweeping when it finishes marking. However,
    if the heap we are trying to allocate into is full, then the sweeping
    may not yield any free slots. If we don't call gc_sweep_continue
    immediate after this, then another GC will be started halfway during
    lazy sweeping. gc_sweep_continue will either grow the heap or finish
    sweeping.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5521

commit 7529c538915cd1765b0a362ca64e8f8ff439d7fc
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-01-05 03:22:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-03 05:10:21 +0900

    [ruby/net-http] Do not set SNI hostname if connecting to IP address

    RFC 6066, section 3, explicitly disallows the use of an IP address
    as an SNI server name.  So check if the connection is being made
    to an IP address using the resolv regexps, and do not set an SNI
    hostname in that case.

    Recent changes to LibreSSL make it more strictly follow RFC 6066,
    resulting an s.hostname= raising an error if passed an IP address.
    When such verions of LibreSSL are used, this change not only fixes
    the net/http tests, it also fixes tests for webrick and open-uri,
    which both make SSL connections to 127.0.0.1 using net/http in
    their tests.

    Avoid warning in the openssl extension by unsetting
    @ssl_context.verify_hostname if connecting to an IP address.
    Make changes so that the post_connection_check still happens
    when connecting to an IP address, which is necessary to keep
    checking that the certificate returned includes the IP address,
    which one of the tests depends on.

    Revert the previous change that modified the regexp used for
    checking the error message.

    https://github.com/ruby/net-http/commit/fa68e64bee

commit 2913a2f5cfceb6d6b411e165d9c723bd2435eacd
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-02-02 23:14:59 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-02-03 02:20:34 +0900

    Treat TS_ICVARC cache as separate from TS_IVC cache

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5519

commit 7b77d46671685c837adc33b39ae0210e04cd8b24
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-02-01 23:25:12 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-02-02 23:52:04 +0900

    Decouple GC slot sizes from RVALUE

    Add a new macro BASE_SLOT_SIZE that determines the slot size.

    For Variable Width Allocation (compiled with USE_RVARGC=1), all slot
    sizes are powers-of-2 multiples of BASE_SLOT_SIZE.

    For USE_RVARGC=0, BASE_SLOT_SIZE is set to sizeof(RVALUE).

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5517

commit af107710457b4bd148c6e5ee7a336ed4961f5423
  Author:     S.H <gamelinks007@gmail.com>
  AuthorDate: 2022-02-02 22:52:55 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-02 22:52:55 +0900

    Add `econv_get_encoding` function

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5509

    Merged-By: nobu <nobu@ruby-lang.org>

commit 94687a68265fa400afb5308d5f7ed9a095fd5200
  Author:     Olle Jonsson <olle.jonsson@gmail.com>
  AuthorDate: 2022-02-02 21:06:23 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-02 21:17:47 +0900

    [ruby/net-protocol] Drop unused gemspec directives

    This gem exposes no executables.

    https://github.com/ruby/net-protocol/commit/3c4def2a64

commit d4a8c04dc7bb1c9aa48eaf50dc6b1869d79d73c8
  Author:     Soutaro Matsumoto <matsumoto@soutaro.com>
  AuthorDate: 2022-02-02 13:25:47 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-02-02 13:25:47 +0900

    Update RBS (#5515)

    * Bundle RBS 2.1.0

  Notes:
    Merged-By: soutaro <matsumoto@soutaro.com>

commit 0b2f6b942b0c38bf4925f4e8ad662f6a14954060
  Author:     Dan Jensen <djensen@addfour.co>
  AuthorDate: 2022-01-27 03:35:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-01 20:07:18 +0900

    [rubygems/rubygems] Skip "seller shipped" notification after delivery

    If a Shipment has been delivered, there is no point in notifying the
    buyer that the seller shipped. Instead, we should simply notify the
    buyer that the shipment was delivered. This is relevant in cases where
    the seller is late to mark a Shipment as shipped, so the first EasyPost
    Tracker update marks it as delivered, or in cases where the seller
    fails to mark as shipped and the buyer marks it as delivered.

    This fixes a Shipment event handler so the buyer notification for
    shipment is no longer invoked if the Shipment is already delivered.

    https://github.com/rubygems/rubygems/commit/09c2cadc86

commit f6894711a48ab422139aff5afc4bbcf202ff7167
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-01 19:01:10 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-01 20:04:15 +0900

    [ruby/io-wait] Exclude rake files from packages

    https://github.com/ruby/io-wait/commit/7be58cd7f4

commit ddb9d60f7df1a7316092c795f97ca2fcae19e2c3
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-01-12 00:14:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-02-01 14:11:16 +0900

    [ruby/io-wait] Make the gem a noop on Rubies older than 2.6

    Ref: https://github.com/mikel/mail/pull/1439

    Some gems depend on io-wait, but still support older rubies,
    so they have to chose between droping support or not listing io-wait.

    But io-wait could act a a noop on older rubies.

    https://github.com/ruby/io-wait/commit/75fcb74c32

commit fc4fbeef28b1d243e45d7fc8d60778156fd364ca
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-02-01 13:21:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-01 13:22:03 +0900

    [ruby/io-wait] bump up to 0.2.2

    https://github.com/ruby/io-wait/commit/e15a2486b2

commit ec906191ab956c94c0497281155af457a380cb17
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-02-01 12:21:53 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-01 12:21:53 +0900

    Restore workaround for test_rubygems.rb, it still fails with chkbuild environment

commit 6623d60ec8eb980282aec0256564726db15f093d
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-02-01 04:05:09 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-01 08:09:23 +0900

    Try make this more readable and consistent with other targets

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5512

commit e53af7d1fbcca4fba6e9099b2bf935dc92267607
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-02-01 01:49:03 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-01 08:09:23 +0900

    Tweaks to freeze bundler CI

    Currently some specs are broken because `rspec-mocks-3.10.3` is used,
    which has some breaking changes, apparently.

    This change makes ruby-core install the same gems installed upstream for
    running bundle specs, so that things never break with 3rd party
    releases.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5512

commit 517d7c3221e3ca0ca76d79cc67cb9efefc01ece3
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-02-01 01:45:12 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-02-01 08:09:23 +0900

    Sync latest Bundler & RubyGems

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5512

commit d5c9710b07824dcf4c299eda02ad989a739398ae
  Author:     Josef Šimánek <josef.simanek@gmail.com>
  AuthorDate: 2022-01-29 22:36:41 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-02-01 05:20:38 +0900

    [rubygems/rubygems] Remove encoding pragma from specification.rb
    - it is not used since it is not at the top of the file
    - it is not useful anymore

    https://github.com/rubygems/rubygems/commit/6aee05d923

commit 605f226142a47c4f9e4cc88717c5d6170bc3d7f1
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-28 23:43:46 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-31 23:42:20 +0900

    Fix heap page iteration in gc_verify_heap_page

    The for loops are not correctly iterating heap pages in
    gc_verify_heap_page.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5503

commit b01657c4707eadd9de9573ce9818d0b5f0fe3047
  Author:     Steven Nunez <octosteve@github.com>
  AuthorDate: 2022-01-31 07:59:10 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-31 07:59:10 +0900

    [DOC] Fix case for new sentence.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5505

    Merged-By: nobu <nobu@ruby-lang.org>

commit f924e05b68f30371434d390a3e97f874a055e5c3
  Author:     Koichi ITO <koic.ito@gmail.com>
  AuthorDate: 2022-01-31 07:38:10 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-31 07:38:10 +0900

    [DOC] Fix a typo in the NEWS.md

    Follow up of https://github.com/ruby/ruby/commit/fbb3cab.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5507

    Merged-By: nobu <nobu@ruby-lang.org>

commit 99a65e80d56c654d60fdd3f30c7cf7450a591b20
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-01-31 07:17:53 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-31 07:17:53 +0900

    [DOC] Enhanced RDoc for io.c (#5460)

    Treats:

        Kernel#readline
        Kernel#readlines
        Kernel#`cmd`
        IO#advise
        IO.select
        IO#ioctl
        IO#fcntl
        Kernel#syscall
        IO.pipe

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit e75bd8df51648a35442649fd3e4b9ac4e223752a
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-01-31 03:27:18 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-01-31 03:47:03 +0900

    pend some tests while using to_binary

    ISeqs from ISeq#to_binary/load do not support `keep_script_lines`
    now so some tests should be pending tests with
    `RUBY_ISEQ_DUMP_DEBUG=to_binary`

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5508

commit 44c44b9b4af14f42a0dc6df9287c45d9689847bb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-29 22:54:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-29 22:59:39 +0900

    Ignore warnings at reading debug info for now

    Something seems changed on FreeBSD 13.

commit 67f4729ff0b0493ad82486b2f797a5c2b3ee20a6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-29 19:07:38 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-29 19:07:38 +0900

    [Bug#18556] Fallback `MAP_ANONYMOUS`

    Define `MAP_ANONYMOUS` to `MAP_ANON` if undefined on old systems.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5506

    Merged-By: nobu <nobu@ruby-lang.org>

commit fbb3cab9564ea7f4de6e048b1d44888c0ecd2d37
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-01-29 17:32:38 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-01-29 17:32:38 +0900

    Add a NEWS entry about [Feature #16806]

commit 7672f6a42390a1a421fb0633e6810a92df7dad7a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-29 15:29:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-29 15:29:46 +0900

    mkmf: unify duplicate code in pkg_config

commit b90e56e6243f4e6567991bfd2375e1f58b1414a0
  Author:     Mike Dalessio <mike.dalessio@gmail.com>
  AuthorDate: 2022-01-18 22:13:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-29 15:22:52 +0900

    mkmf: pkg_config accepts multiple options

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5436

commit 24c7e75ded461446e7c8e83bbceecccf7bcb4d0e
  Author:     Mike Dalessio <mike.dalessio@gmail.com>
  AuthorDate: 2022-01-18 21:58:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-29 15:22:52 +0900

    test: backfill coverage for MakeMakefile.pkg_config

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5436

commit 018036c282ea2ada100b8dbb78c2c7b8609013fc
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-29 03:32:11 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-29 03:33:03 +0900

    Remove assert_equal that will never be run

    `@s1.set_len(3)` will raise so the `assert_equal` will never be ran.

commit e0c5488ff9308b1a16718c64bc9096caca88ed83
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-01-28 22:42:38 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-01-28 22:42:38 +0900

    Update to ruby/spec@902ab83

commit bb5f71088774b14c96fe11718e5e1b7ffb20fff2
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-01-28 22:42:36 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-01-28 22:42:36 +0900

    Update to ruby/mspec@49adc2f

commit d66e7ec77b0067b113e1b9f584e7f5f741d6cd78
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-18 06:20:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-27 20:54:09 +0900

    [ruby/reline] Add a comment for VK_MENU

    https://github.com/ruby/reline/commit/ee307c2b01

commit f4ee60543acf05742360c8d1f029d88672ff1eef
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-18 06:10:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-27 20:54:09 +0900

    [ruby/reline] The AltGr behaves exactly the same as Ctrl+Alt

    On European keyboards.

    https://github.com/ruby/reline/commit/75fe9759a4

commit f511ff3b3af4e70877538b911fde27c57792fc1d
  Author:     Charles Oliver Nutter <headius@headius.com>
  AuthorDate: 2022-01-27 14:29:17 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-27 17:16:05 +0900

    [ruby/yaml] Add JRuby-specific warning when psych fails

    The error here is confusing for users because JRuby does not use
    libyaml and installing it will not help. Instead, JRuby directs
    them to a wiki page that describes an issue when multiple
    conflicting versions of SnakeYAML are installed.

    This change allows us to use the yaml gem and delete our local
    sources.

    https://github.com/ruby/yaml/commit/8122087ffb

commit e89d80702bd98a8276243a7fcaa2a158b3bfb659
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-27 00:28:39 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-27 15:46:08 +0900

    Fix memory leak at the same named alias [Bug #18516]

    When aliasing a method to the same name method, set a separate bit
    flag on that method definition, instead of the reference count
    increment.  Although this kind of alias has no actual effect at
    runtime, is used as the hack to suppress the method re-definition
    warning.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5493

commit 7ff1bf317887c0d7b21e91ad548d07b9f05c540c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-27 00:15:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-27 14:28:29 +0900

    An alias can suppress method redefinition warning

commit 6a6227e0168b059c3ed34c9f0ace2e5dc2364221
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-27 00:53:12 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-27 14:00:33 +0900

    Shifting zero always results in zero [Bug #18517]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5494

commit 99d02caed3fb86a8bbe3ae6daddf2517e2f3f441
  Author:     Jesse Chavez <jesse.chavez.r@gmail.com>
  AuthorDate: 2022-01-27 04:05:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-27 12:33:06 +0900

    [ruby/logger] Fix log rotation inter-process lock failed.

    Issue only occurs in JRuby 9.3.0.0 and Windows and the full
    console output is:

    log rotation inter-process lock failed. D:\log.txt -> D:\log.txt.0: The process cannot access the file because it is being used by another process.
    log writing failed. closed stream
    log writing failed. closed stream
    ...

    https://github.com/ruby/logger/commit/19fc734638

commit d3d888b9867e4fe6baa28d4f5351f72961a3bb1f
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2022-01-27 05:16:33 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-27 05:28:09 +0900

    [lldb] Handle MacOS 64Kb heap pages in the lldb helpers

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5495

commit 1a180b7e18a2d415282df637e27a446c71246ef7
  Author:     Jemma Issroff <jemmaissroff@gmail.com>
  AuthorDate: 2022-01-26 06:04:17 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-01-27 02:02:59 +0900

    Streamline cached attr reader / writer indexes

    This commit removes the need to increment and decrement the indexes
    used by vm_cc_attr_index getters and setters. It also introduces a
    vm_cc_attr_index_p predicate function, and a vm_cc_attr_index_initialize
    function.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5485

commit b6b2e489f10bfc771beae8fa0ee5237613acd18f
  Author:     manga_osyo <manga.osyo@gmail.com>
  AuthorDate: 2021-12-06 08:57:56 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-27 01:28:52 +0900

    [ruby/irb] Changed to call Kernel.print

    If you call `binding.irb` on a class defined `#print`, it will crash, so call `Kernel.print`.

    Fix [Bug #18389] `binding.irb` can fail in some classes that implement `context` and `print` methods.

    https://github.com/ruby/irb/commit/d54b271984

commit e7141630115ef9b0d3042af761fe0afabfcd578c
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-26 23:45:22 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-26 23:45:22 +0900

    Fix typo in assertion in gc.c

commit bffd6cbd97dd61e347a8f7de36266809444fb4c1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-26 18:23:51 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-26 18:23:51 +0900

    Check if `execv` is available for ruby/missing.h

    As MinGW has the declaration, the `dllimport` attribute difference
    is warned when compiling missing/*.c without including ruby/win32.h.

    ```
    ../src/include/ruby/missing.h:316:17: warning: 'execv' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
      316 | RUBY_EXTERN int execv(const char *, char *const []);
          |                 ^~~~~
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5491

    Merged-By: nobu <nobu@ruby-lang.org>

commit 4010cbfe35aa520fe7efc282c7cc16ca67341a91
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-26 15:56:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-26 15:56:22 +0900

    Use the prefixed pkg-config command

commit 16e7585557c338563447861ee50f835514bb7e3c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-26 14:34:25 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-26 14:34:25 +0900

    Unpoison the cached object in the exact size

commit c925d3b6689515f76dcfbb1dc419746dac6f0738
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-24 20:04:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-26 13:09:31 +0900

    [rubygems/rubygems] Fix `force_ruby_platform` ignored when lockfile includes the current specific platform

    https://github.com/rubygems/rubygems/commit/9ca371adf8

commit cc8064ba2e046f384f446889c8525bf976733918
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-01-26 10:05:10 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-01-26 10:05:10 +0900

    Do not need to print to stderr

commit e953d6865724d8b7e79aa30c445d986f28f5e1c9
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-01-26 01:51:16 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-01-26 09:56:27 +0900

    refactoring btest output

    don't duplicate the message, but prepare `out` var to choose
    stdout/err.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5484

commit cac6fe90236c8541059edc74080d50c49be7ea87
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-01-26 01:34:57 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-01-26 09:56:09 +0900

    add `--stderr-on-failure` option to test-all

    Now all failure messages are printed to stdout. This option
    makes all failure messages printed into stderr.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5483

commit 142d5db1122cf28f1a5563c421f169923a9f2e79
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-26 06:16:37 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-26 06:51:16 +0900

    Support ID_TABLE_STOP for replace function

    Iteration should top if the replace function returns ID_TABLE_STOP.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5486

commit 82f0580aa4a1a2da6ab3803dfb4f5e5a58820d3d
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-26 06:15:46 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-26 06:51:16 +0900

    Call rb_id_table_foreach_values instead

    These places never replace the value, so call rb_id_table_foreach_values
    instead of rb_id_table_foreach_values_with_replace.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5486

commit 4d9ad91a35b16afde38fd4ae513a49d22e27b3ea
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-26 06:11:24 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-26 06:51:16 +0900

    Rename rb_id_table_foreach_with_replace

    Renames rb_id_table_foreach_with_replace to
    rb_id_table_foreach_values_with_replace and passes only the value to the
    callback. We can use this in GC compaction when we cannot access the
    global symbol array.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5486

commit 6e901939c67d7c1275c183b0bde4d5d1c78ef081
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-26 05:51:37 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-26 05:57:01 +0900

    Revert "`ID` in `rb_id_table_foreach_with_replace` [Feature #18253]"

    This reverts commit 530e485265dac6e2aea1d587a4a79a314cc772cf.
    `rb_id_table_foreach_with_replace` is used during GC compaction,
    and the global symbols array can have been moved at that time.

commit 42ef3fcaef5e181d80393084b65af5a28a7b1a01
  Author:     Ngan Pham <ngan@users.noreply.github.com>
  AuthorDate: 2022-01-25 14:01:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-26 02:24:30 +0900

    [rubygems/rubygems] Use Gem::Platform.local instead of RUBY_PLATFORM

    In certain places, we want to display the platform name with
    `Gem::Platform.local` instead of `RUBY_PLATFORM`.

    Fixes https://github.com/rubygems/rubygems/issues/5264

    https://github.com/rubygems/rubygems/commit/bdd1848ae8

commit b07879e553a73200ec1d2c3f6b12127e22f965cd
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-25 04:44:58 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-25 23:38:17 +0900

    Remove redundant if statement in try_move

    The if statement is redundant since if `index == 0` then
    `BITS_BITLENGTH * index == 0`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5479

commit e3b5cc8836197dc2940a297b9130ed545bc3f7a7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-25 23:10:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-25 23:10:20 +0900

    NEWS: `Fixnum` and `Bignum` are removed finally [Feature #12005]

commit 342e7a094a70d6f90b96262c88177dae32976c85
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-25 20:48:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-25 22:12:33 +0900

    [rubygems/rubygems] Fix spec to not touch the network

    And not depend on the state of rack's master branch, in particular, on
    their Ruby support range.

    https://github.com/rubygems/rubygems/commit/9ea4baffac

commit cd806e19b7b72ef81762c57090d0a73a42e2382d
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-25 20:47:57 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-25 22:12:33 +0900

    [rubygems/rubygems] Remove unnecessary comment

    https://github.com/rubygems/rubygems/commit/ef4e5c6169

commit a51e1cd682daeb76f201e62eaedcf6d51a18cffe
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-01-25 15:44:38 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-01-25 16:43:57 +0900

    enable `RUBY_ON_BUG` on release build

    [Feature #18483]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5481

commit de678cd51e2e73c2edaced5f824e93c6a91a0f85
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-11-19 05:45:04 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-25 08:50:31 +0900

    [ruby/pathname] Officially drop support for ruby 2.6 or older

    The gem doesn't even install on old rubies, but since the gemspec claims
    it's supported, `gem install pathname` will try to install it and print
    an error.

    This commit doesn't fix the above issue. The only way to fix it would be
    to restore support and release a new version that actually supports old
    rubies. However, such a change has been proposed and ignored for a long
    time.

    So this issue proposes to leave that broken but at least bring the
    gemspec manifest and the CI matrix in sync to hopefully avoid this issue
    from happening again in the future.

    https://github.com/ruby/pathname/commit/3ee010b538

commit 530e485265dac6e2aea1d587a4a79a314cc772cf
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-22 14:29:05 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-01-25 08:40:47 +0900

    `ID` in `rb_id_table_foreach_with_replace` [Feature #18253]

    Pass the `ID` from `rb_id_table_foreach_with_replace` to callback
    functions.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5458

commit 87784fdeb2340574d11887474f6e2d9b0d5d3bc3
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-25 03:38:15 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-25 04:34:12 +0900

    Keep right operand within width when right shifting

    NUM_IN_PAGE could return a value much larger than 64. According to the
    C11 spec 6.5.7 paragraph 3 this is undefined behavior:

    > If the value of the right operand is negative or is greater than or
    > equal to the width of the promoted left operand, the behavior is
    > undefined.

    On most platforms, this is usually not a problem as the architecture
    will mask off all out-of-range bits.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5478

commit 4317a6750dceb917ee9c2be7a8191f6bde103f94
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-23 13:25:12 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-25 01:11:39 +0900

    [rubygems/rubygems] Forbid downgrading past the originally shipped version on Ruby 3.1

    https://github.com/rubygems/rubygems/commit/68bef90339

commit 663833b08fbae8d92cb2245a729312b86aa33a35
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-21 06:23:43 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-24 23:21:08 +0900

    [wasm] Disallow compaction

    WebAssembly doesn't support signals so we can't use read
    barriers so we can't use compaction.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5475

commit 5de62fe37c16033e5dedc51ae9f2dea5db7ecd5a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-13 22:42:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-24 18:10:17 +0900

    Fixed an missing percent in the batch file

commit e7b573e5768956b110c25b2cab02a889f2e8cc8e
  Author:     apatniv <apatniv@gmail.com>
  AuthorDate: 2022-01-24 11:31:29 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-24 12:12:15 +0900

    [ruby/io-wait] Document mandatory require for using io/wait methods

    https://github.com/ruby/io-wait/commit/2beb05bd48

commit 328e6bf3b3a167529e5c64a281e773c97afd16e3
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-01-19 16:53:26 +0900
  Commit:     Kenta Murata <mrkn@mrkn.jp>
  CommitDate: 2022-01-24 10:56:37 +0900

    [ruby/bigdecimal] Version 3.1.2

    https://github.com/ruby/bigdecimal/commit/57e2194135

commit 7db195d521337f78b4477b5730514b78fad8d5a1
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-01-19 15:53:36 +0900
  Commit:     Kenta Murata <mrkn@mrkn.jp>
  CommitDate: 2022-01-24 10:56:30 +0900

    [ruby/bigdecimal] Fix the maximum precision of the quotient

    Fixes https://github.com/ruby/bigdecimal/pull/220

    https://github.com/ruby/bigdecimal/commit/127a1b5a31

commit 506728d0b86e2cd42cc5668ed417c4a870b40bb0
  Author:     Kenta Murata <mrkn@mrkn.jp>
  AuthorDate: 2022-01-19 14:31:17 +0900
  Commit:     Kenta Murata <mrkn@mrkn.jp>
  CommitDate: 2022-01-24 10:56:25 +0900

    [ruby/bigdecimal] Fix typo

    https://github.com/ruby/bigdecimal/commit/79c09b4dac

commit d77f2ff5b4dc35c75cdca355594fdcd654828852
  Author:     gemmaro <gemmaro.dev@gmail.com>
  AuthorDate: 2022-01-22 12:28:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-24 10:17:16 +0900

    [ruby/rdoc] Fix typo in RDoc::Task example

    https://github.com/ruby/rdoc/commit/7a77e55c2a

commit c155445752bdf51f048284519587f73443f2f227
  Author:     Postmodern <postmodern.mod3@gmail.com>
  AuthorDate: 2022-01-21 23:59:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-24 07:00:34 +0900

    [ruby/reline] Ignore global constants when checking if Fiddle::VERSION exists

    If a top-level `VERSION` constant exists, or if a module containing a `VERSION` constant is included into the top-level scope, then `Fiddle.const_defined?(:VERSION)` will erroneously return true when `RUBY_VERSION < 3.0.0`.

    https://github.com/ruby/reline/commit/8529c8e47a

commit 355bc371962e57f5e4b5365a2db752cbb8d673ee
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-23 00:37:55 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-23 01:02:11 +0900

    Reuse the default `AC_LANG_PROGRAM(C)` definition

commit ad150a14598980095260add74474498a642ab5ba
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-22 19:05:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-22 20:13:46 +0900

    Override `AC_C_PROGRAM` on old autoconf

    Autoconf 2.69 fails to detect `-Werror=old-style-definition` due
    to the old style definition of `main`.

commit 2c25427496322f420d9acc58500f2855c9e04a2a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-22 19:02:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-22 20:09:56 +0900

    GCC provides -Wdiv-by-zero

commit c00e360bc09811669b87f82a0ee97e13b9cba02f
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-01-22 15:46:06 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-01-22 15:48:05 +0900

    Fix error: old-style function definition

    https://rubyci.s3.amazonaws.com/debian-riscv64/ruby-master/log/20220122T050018Z.log.html.gz#miniruby
    ```
    compiling vm_trace.c
    vm_trace.c: In function 'rb_vm_memsize_postponed_job_buffer':
    vm_trace.c:1599:1: error: old-style function definition [-Werror=old-style-definition]
     1599 | rb_vm_memsize_postponed_job_buffer()
          | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ```

commit c1a6ff046d4f27c972adf96f9a6724abc2f0647a
  Author:     Seth Boyles <sethboyles@gmail.com>
  AuthorDate: 2022-01-15 04:58:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-22 10:00:51 +0900

    [ruby/psych] Add strict_integer option to parse numbers with commas as strings

    Authored-by: Seth Boyles <sethboyles@gmail.com>

    https://github.com/ruby/psych/commit/75bebb37b8

commit fc6fd4c31e957a4b15ba2c03cbd1cea0a8af6513
  Author:     Kevin Newton <kddnewton@gmail.com>
  AuthorDate: 2022-01-12 02:47:22 +0900
  Commit:     Aaron Patterson <aaron.patterson@gmail.com>
  CommitDate: 2022-01-22 07:34:53 +0900

    Accurately report VM memsize

    Currently the calculation only counts the size of the struct. This commit adds the size of the associated st tables, id tables, and linked lists.

    Still missing is the size of the ractors and (potentially) the size of the object space.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5428

commit 5e3a32021849718ae483eaaa9fbf155f91828039
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-01-21 17:38:11 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-01-21 17:38:11 +0900

    respect `--quiet` option for btest

    Do not print anymore except errors.

commit 542bd9b408a83ff5ff19fa7b8b0ab0742b4a877d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-03 21:38:03 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-21 12:22:04 +0900

    [ruby/etc] Exclude change logs for pre 1.0

    https://github.com/ruby/etc/commit/c8a133fe95

commit 563d0fdadaca6d12c90ceb33120bc7bcf932c612
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-03 18:06:18 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-21 12:21:59 +0900

    [ruby/etc] Derive extra_rdoc_files from files

    https://github.com/ruby/etc/commit/e8ecce3442

commit 3fea4f9d8c2abbbe54987753b049c326cfe5886f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-02 21:37:47 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-21 12:21:54 +0900

    [ruby/etc] Move development dependencies to Gemfile

    https://github.com/ruby/etc/commit/5cabc3996a

commit 59a91f229b17d9664df6ff78d7aa4e13a88cdb63
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-13 11:48:12 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-20 13:54:37 +0900

    Mark `rb_clear_constant_cache` as internal use only

    In the past, many internal functions are declared in intern.h
    under include/ruby directory, because there were no headers for
    internal use.

commit ef2cf9245c93a0760ff4eb25dd60de981a6a05a9
  Author:     Michael Nikitochkin <miry.sof@gmail.com>
  AuthorDate: 2022-01-20 02:12:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-20 10:39:05 +0900

    [ruby/psych] Remove alias of load to unsafe_load

    https://github.com/ruby/psych/commit/39e23cc86f

commit eba90bc03482523f5243b3657aff4299631d94dd
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-01-20 10:03:59 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-01-20 10:03:59 +0900

    Fix warnings

    ```
    compiling ..../ruby/ruby/dln.c
    ..../ruby/ruby/dln.c:108:1: warning: unused function 'init_funcname_len' [-Wunused-function]
    init_funcname_len(const char **file)
    ^
    ..../ruby/ruby/dln.c:122:19: warning: unused variable 'funcname_prefix' [-Wunused-const-variable]
    static const char funcname_prefix[sizeof(FUNCNAME_PREFIX) - 1] = FUNCNAME_PREFIX;
                      ^
    2 warnings generated.
    ```

commit 2b7025e680eb29f936538c07f057f590003e45bf
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-12 04:11:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-20 06:45:28 +0900

    [rubygems/rubygems] Rename `Gem.open_with_flock` to `Gem.open_file`

    Since it only uses `flock` on Windows.

    https://github.com/rubygems/rubygems/commit/b877de4d9c

commit ec5bde1a8034608939ee649ca8ad4c39f9f52956
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-12 03:53:41 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-20 06:45:27 +0900

    [rubygems/rubygems] Restrict `flock` to Windows

    It was introduced to fix some race conditions there, but it doesn't seem
    necessary on other systems and it's actually causing issues there.

    https://github.com/rubygems/rubygems/commit/27b682c812

commit 71bc99900914ef3bc3800a22d9221f5acf528082
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-20 01:18:49 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-20 01:18:49 +0900

    MinGW also uses `rb_w32_shutdown`

    Winsock's `shutdown` is incompatible with the other platforms.
    And autoconf fails to detect WINAPI functions on 32bit Windows,
    probably due to the argument size suffixes.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5469

    Merged-By: nobu <nobu@ruby-lang.org>

commit 7353f950c3229a4b24482af99d589ea56982a285
  Author:     Yusuke Nakamura <yusuke1994525@gmail.com>
  AuthorDate: 2022-01-19 17:52:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-20 01:04:53 +0900

    [rubygems/rubygems] Change generated namespaced test class name in minitest

    * `foo` => `TestFoo`
    * `foo_bar` => `TestFooBar`
    * `foo-bar` => `Foo::TestBar`

    https://github.com/rubygems/rubygems/commit/353cdd61c3

commit 26e0450ba9296540e044df5fd91c8856919d4a6c
  Author:     Yusuke Nakamura <yusuke1994525@gmail.com>
  AuthorDate: 2022-01-15 02:55:41 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-20 01:04:53 +0900

    [rubygems/rubygems] Add spec to class name definition in newgem spec

    https://github.com/rubygems/rubygems/commit/5f698fc4a0

commit 44513132521d8c2653ba3250d94628bfa9c1f0ff
  Author:     Yusuke Nakamura <yusuke1994525@gmail.com>
  AuthorDate: 2022-01-13 02:10:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-20 01:04:52 +0900

    [rubygems/rubygems] Update generated minitest file style

    foo     => test/test_foo.rb
    foo-bar => test/foo/test_bar.rb
    foo_bar => test/test_foo_bar.rb

    https://github.com/rubygems/rubygems/commit/c795e5d40d

commit 4e955b2e379a550cebd27e5d66fd5bcd98c70cf7
  Author:     Yusuke Nakamura <yusuke1994525@gmail.com>
  AuthorDate: 2022-01-10 21:51:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-20 01:04:52 +0900

    [rubygems/rubygems] Create minitest file to underscored path in "bundle gem" command

    ...with dashed gem name

    In "bundle gem" command with dashed name gem (e.g. foo-bar) generates
    `test/test_foo/bar.rb`, but this file contains undefined class `TestFoo`
    and moreover, does not include in "bundle exec rake test" target.

    Therefore, intentially the first test after gem created is fail, but in
    case of gem name contains dash character is not.

    The change doings...
    (when "bundle gem foo-bar" called)

    * create `test/test_foo_bar.rb`
    * define `TestFooBar` class in `test/test_foo_bar.rb`

    https://github.com/rubygems/rubygems/commit/5d9a69fc0f

commit 5c4734d1eff9322f9f21d9c21577978ab6e0d044
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-19 23:00:33 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-19 23:55:09 +0900

    Refactor dln_load into dln_open and dln_sym

    Refactor dln_load into dln_open and dln_sym to simplify the code for
    Windows and platforms that have dlopen.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5459

commit 374904b25f0cd399b800d9b822659fbff382b23c
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-01-19 17:44:53 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-01-19 23:17:14 +0900

    remain `RUBY_ON_BUG` for child processes.

    `RUBY_ON_BUG` is useful for child processes created by the test
    process.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5466

commit 308fe1eb858fd8029f67510a18bedfe0e850a87f
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-01-19 17:43:07 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-01-19 23:17:14 +0900

    Do not create core file if it is intentional abort

    Two tests abort intentionally and they create core files if
    possible. In these case, we don't need to see core files
    so disable by `"Process.setrlimit(Process::RLIMIT_CORE, 0)` for
    those cases.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5466

commit d650b17686d49c2ce8e6a87039861154e93d4621
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-19 16:01:45 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-19 19:57:16 +0900

    `rb_fiber_terminate` must not return [Bug #18497]

    In a forked process from a fiber, the fiber becomes the only
    fiber, `fiber_switch` does nothing as there is no other fibers,
    `rb_fiber_terminate` does not terminate the fiber.  In that case,
    reaches the end of `fiber_entry` finally, which is declared as
    "COROUTINE" and should never return.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5468

commit 5c7af72304d0ad33cd3f21b24a4bc44e8acd5b2c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-19 14:14:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-19 19:57:16 +0900

    Assuming EXIT_SUCCESS equals 0 is not portable

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5468

commit 528344b8de6c89de7bcd0e77cb386f7881d85e03
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-19 16:40:06 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 17:52:19 +0900

    include/ruby/win32.h: explicitly define HAVE_SHUTDOWN

    Configuration for mingw32 can't detect 'shutdown' due to wrong -l
    option even though it's available (this has been going on for a while,
    and it needs to be fixed).
    In this situation, include/ruby/missing.h declares a stub shutdown
    function since 7ee786388a, and another shutdown decl is came from
    system header. They are incompatible at stdcall attribute, so it
    causes compilation failure.
    This change defines a HAVE_SHUTDOWN to guard a newly introduced stub
    decl in include/ruby/missing.h

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5465

commit 0dd8c6157d4ef3e3584b5f87f4af82e3d56339e8
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-17 22:42:41 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-19 15:56:36 +0900

    [rubygems/rubygems] Don't pass regexp to `Gem::Dependency.new` during `gem dependency`

    https://github.com/rubygems/rubygems/commit/89dd5158a4

commit 1d530ae27a51f68ce5e9a800254f586b3f969d41
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-17 22:42:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-19 15:56:36 +0900

    [rubygems/rubygems] Remove dead method

    https://github.com/rubygems/rubygems/commit/477d5f6f6e

commit 0350c179ea8c303b6f0087b96478b757052321c2
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-17 22:10:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-19 15:56:35 +0900

    [rubygems/rubygems] Don't pass regexp to `Gem::Dependeny.new` from list, search, and query commands

    It's deprecated functionality.

    https://github.com/rubygems/rubygems/commit/13d3eb6cb0

commit 8b6a02de2f99bc9670f91757db9bf86edf61f615
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-17 22:02:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-19 15:56:35 +0900

    [rubygems/rubygems] Simplify argument processing logic in `gem list` & `gem search`

    Make it more explicit that if not specific arguments are given, the
    value of `-n` is used.

    https://github.com/rubygems/rubygems/commit/ed811ddc00

commit e4f8d5b2f516a88d1a704cc355e5d21255aea738
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2022-01-19 13:43:52 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2022-01-19 15:38:02 +0900

    .github/workflows: BASERUBY check for Ruby 3.1

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5463

commit d22511fd7595ef1819baa42851d598d95b8f4d00
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-19 13:28:23 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-19 15:01:44 +0900

    Merge rubygems/rubygems HEAD.

      Picked at 12aeef6ba9a3be0022be9934c1a3e4c46a03ed3a

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5462

commit 5646f4b67b75e7e558c994ff8cbd374e4b4bd3b5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-19 14:45:52 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-19 14:46:27 +0900

    Fix a missing comma

commit 8f3e29c849bdab5d6335369e4c49a5d03e88837a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-19 13:33:14 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-19 13:33:14 +0900

    Fix format size qualifier on IL32P64

commit 8c21701968f8d877156c4c1616b823b7fd382021
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-19 12:16:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-19 13:19:58 +0900

    include/ruby/io.h: use 0 as POLLPRI when no support for it

    0x003 is not suitable as a bit mask, and it's ok just to be 0 to avoid
    setting unsupported bit.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5461

commit 68e821c3e575b0905a9ee992b93ccbbaa42b6dc5
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-01-19 13:14:43 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-01-19 13:15:37 +0900

    test/ruby/test_assignment.rb: Prevent a warning

    ```
    /home/chkbuild/chkbuild/tmp/build/20220119T003004Z/ruby/test/ruby/test_assignment.rb:727: warning: assigned but unused variable - m
    ```
    http://rubyci.s3.amazonaws.com/ubuntu/ruby-master/log/20220119T003004Z.log.html.gz

commit 2f0f56bdcae865ea62fdca3834038b8db6d6b9a4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-19 11:50:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-19 12:04:08 +0900

    [DOC] Enhanced Process.groups related

    * On some platforms (e.g., macOS), the user's default group access
      list may exceed `NGROUPS_MAX`.
    * Use upcase "GID" instead of "gid" for other than variable names.

commit e7249294fb85953c3caa0af1eb9d3627a4827a11
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-18 02:55:10 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-19 11:20:36 +0900

    [rubygems/rubygems] Fix regression with old marshaled specs having null required_rubygems_version

    https://github.com/rubygems/rubygems/commit/91f07a0208

commit 39c36a5cf45fc6a779b88c22571075da45cb70e4
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-18 04:46:49 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-19 11:20:36 +0900

    [rubygems/rubygems] Fix skipped spec on Windows

    https://github.com/rubygems/rubygems/commit/bf0f4b98ee

commit f04954d95c8a729d70be1c883617534a2e7cc239
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-17 23:16:34 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-19 11:20:36 +0900

    [rubygems/rubygems] Normalize end alignment style with Bundler

    https://github.com/rubygems/rubygems/commit/f7f504b24c

commit d015b0c92815914f9cbf1fb19e8d9308a99c0efc
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-15 22:22:41 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] add ci workflow .github/workflows/wasm.yml

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit 50f1468bfd11eb2ea54c2d6bea958f44eb2db33c
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2021-12-15 15:49:59 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] include/ruby/io.h: define RB_WAITFD_PRI by ourselves for wasi

    RB_WAITFD_PRI uses POLLPRI for other platforms, but wasi-libc doesn't
    have POLLPRI for now.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit 4f579ecfcee2dc230bd7f744c6db8f8d8d902ad8
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2021-12-15 00:32:49 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] wasm/README.md: write a brief instruction to cross build

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit bb2228817f0bcf2d5400d37ed350f6351f5b3376
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2021-12-14 19:12:02 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] configure.ac: disable mjit on wasi by default

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit dd99ee1f7d366e6b92b952fb96221bf0ea3dc348
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-15 22:11:55 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] bootstraptest, basictest: disable backquote literal tests

    WASI doesn't support spawning a new process for now.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit df31fa4a51822faccb35aa7a253c8af015869d0c
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2021-12-09 12:44:45 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] configure.ac: don't require dup and dup2 only for wasi

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit f72f01abd89640b083b4067e4be399448f0fb6ce
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2021-12-08 22:19:52 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] add unit test suite for fiber, register scan, sjlj in platform dir

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit 3794ef6f01095a265c299917c244fbb346b56323
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-16 01:13:06 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    configure.ac: stop overwriting cc wrapper by darwin-cc everytime

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit be1382b498e05a806f1db52629a54046a2e558d0
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2021-12-06 11:25:44 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    ruby.c: initialize extra optional extensions linked statically

    Add a hook point to initialize extra extension libraries. The default
    hook function is replaced when linking a strong `Init_extra_exts`
    symbol. A builder can insert an object file that defines Init_extra_exts
    by XLDFLAGS.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit 9033ac3e2ce5735c11e99f7f4ecf63d5c258ac1e
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2021-11-27 18:27:37 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    dir.c: ignore ENOTCAPABLE while glob similar to EACCES

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit 420622b5a793186dfa533e7702913fd5e4764e0f
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-16 00:37:54 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] add no thread variant for freestanding environment

    This implementation does nothing around preemptive context switching
    because there is no native thread.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit d6d52a7d049fd802b37d0f594629bad2cdc6b8c2
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-16 00:37:09 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    thread.c: put platform specific part in each impl file

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit bf1c4d254beb0e01fac1d9e6cb805de8ec6260eb
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-15 23:59:37 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] gc.c: scan wasm locals and c stack to mark living objects

    WebAssembly has function local infinite registers and stack values, but
    there is no way to scan the values in a call stack for now.
    This implementation uses Asyncify to spilling out wasm locals into
    linear memory.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit e7fb1fa0414a0c6e43796052c877f317e8e09846
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-15 23:57:14 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] gc.c: disable read signal barrier for wasi

    WASI currently does not yet support signal

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit 23de01c7aa5d8f3651213b75295a4969a187a041
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-15 22:18:55 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] eval_inter.h gc.c vm_core.h: include wasm/setjmp.h instead of sysroot header

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit a4b73f1ba88b4d126569ba5ab295c0eb5f121662
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-15 22:22:30 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] add coroutine/asyncify implementation

    set the default coroutine_type as asyncify when wasi

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit 7ee786388ae0d6f8c8cea7bf012cc11fdb5b534a
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-16 01:18:49 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] wasm/missing.{c,h}: add missing libc stubs for wasi-libc

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit 65f95f26ff0e7b4be4704fedc52344a26d22a4e2
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-15 23:10:48 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] add asyncify based setjmp, fiber, register scan emulation

    configure.ac: setup build tools and register objects

    main.c: wrap main with rb_wasm_rt_start to handle asyncify unwinds

    tool/m4/ruby_wasm_tools.m4: setup default command based on WASI_SDK_PATH
    environment variable. checks wasm-opt which is used for asyncify.

    tool/wasm-clangw wasm/wasm-opt: a clang wrapper which replaces real
    wasm-opt with do-nothing wasm-opt to avoid misoptimization before
    asyncify. asyncify is performed at POSTLINK, but clang linker driver
    tries to run optimization by wasm-opt unconditionally. inlining pass
    at wasm level breaks asyncify's assumption, so should not optimize
    before POSTLIK.

    wasm/GNUmakefile.in: wasm specific rules to compile objects

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit e41b121e94ccce9877824e55f865885bbabe40c3
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-16 02:34:43 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] configure.ac: setup platform specific libraries

    These flags are very wasi-libc version specific, so updating wasi-libc
    may break the build. But supporting multiple wasi-libc versions in ruby
    doesn't have much benefit because wasi-libc is not installed in most
    systems.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit 8a50a6b6f979bdfbf79f5c89f03f46ed7c43b919
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-15 22:18:18 +0900
  Commit:     Yuta Saito <kateinoigakukun@gmail.com>
  CommitDate: 2022-01-19 11:19:06 +0900

    [wasm] configure.ac: disable stack-protector

    clang does not yet support stack-protector for wasm

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5407

commit e7b4abf3845ef006653ef4b951454647e54affe8
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-01-19 04:40:13 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-01-19 04:40:13 +0900

    Don't assume __builtin_bswap32 and __builtin_bswap64 are defined on OpenBSD

    At least OpenBSD/sparc64 doesn't appear to define them, and possibly
    some other OpenBSD GCC platforms don't (most OpenBSD platforms have
    already switched to clang).

commit ffda21b7ba451b8fd874e9c8c2162c55053caa1e
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-18 23:01:03 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-18 23:52:15 +0900

    [Feature #18491] Drop support for HP-UX

    IA64 support was dropped in ticket #15894, so we can drop support for
    HP-UX.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5457

commit ab85c5e979d53e2e07c714122645b1c4b782f571
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-01-18 21:25:26 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-18 21:25:26 +0900

    [DOC] Enhanced RDoc for io.c (#5451)

    Treats:

        IO#reopen
        IO#printf
        Kernel#printf
        IO#print
        Kernel#print
        IO#putc
        IO.new
        IO#set_encoding_by_bom
        IO.for_fd

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 6729258839467ffabf40e25e8510ee9f2a24864a
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-18 19:08:07 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-18 19:08:07 +0900

    include/ruby/win32.h: define HAVE_X for the missing prototypes (#5456)

  Notes:
    Merged-By: kateinoigakukun

commit 3fb1f411ed8dcae693c2e9bdb68f4e9815cbb5f1
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-01-18 00:17:18 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-18 15:56:48 +0900

    [ruby/irb] require_relative can't be used for default gems' exe files

    The `exe` folder and `lib` folder of default gems don't locate under the
    same place. While `exe/irb` will be under the gem folder, `irb.rb` will be
    under `lib/ruby/VERSION/`.

    So `require_relative` will make `irb` unusable when shipped with Ruby.

    Related discussion in the comments: https://github.com/ruby/irb/pull/335

    https://github.com/ruby/irb/commit/99d3aa979d

commit c0d18a1aa2be26d416f4c5d1809533143374b863
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-01-18 05:37:46 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-01-18 05:39:17 +0900

    [ruby/erb] Revert "Remove safe_level and further positional arguments (https://github.com/ruby/erb/pull/7)"

    This reverts commit https://github.com/ruby/erb/commit/5133efa06f0603ae79292f3b2b942957bc8a442e.

    While we already handled this deprecation in many libraries, we noticed
    that some (e.g. sprockets) relied on the format of `ERB.version` and
    https://github.com/ruby/erb/commit/2b4182eb108b9e42fa30bcfa41931896132f88b8 broke such handling.

    Given that the `ERB.version` change was released at 3.1 and it's
    obviously new, I'll skip this removal in 3.2 and postpone this to a
    future version.

commit f3c77bd480834f2835fe6fef5c0475336248dbde
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-17 01:56:31 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-17 21:23:40 +0900

    Fix the placeholder subclass entry skipping [Bug #18489]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5455

commit e53962b9e1c9ee6ea52b43ce19f5c82cc74494f8
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-01-17 20:45:16 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-17 21:09:36 +0900

    [ruby/irb] Use require_relative to load extensions/commands

    https://github.com/ruby/irb/commit/d5060f7668

commit 549af505c5587267d114dd5ffb816047e7f22b4f
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-01-17 15:10:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-17 17:11:27 +0900

    [ruby/net-http] Remove redundant MJIT condition

    ref https://github.com/ruby/ruby/commit/da0f67c0383f57129c7a76255964b1ee739d8db8

    https://github.com/ruby/net-http/commit/dbeb5f1c8f

commit b4e362d444a8a9b5d629f32eeaa72293bcf7482d
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-01-17 14:56:11 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-01-17 14:56:11 +0900

    lib/drb/drb.rb: Prevent a "warning: assigned but unused variable"

    ... by replacing the variable with a underscore-prefixed name

commit 81b604fb005b2dfa9601e0dabcdacfca6d8f3fba
  Author:     st0012 <stan001212@gmail.com>
  AuthorDate: 2022-01-17 07:20:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-17 14:23:40 +0900

    [ruby/irb] Use require_relative to require lib files

    1. `require` can mislead Ruby to load system irb's files and cause
       constant redefined warnings as other code loads the same module/class
       from lib folder.
    2. Most files already use `require_relative`.

    https://github.com/ruby/irb/commit/848d339f2e

commit 804a71497187556f9fbbb66dfa602c5942224786
  Author:     S-H-GAMELINKS <gamelinks007@gmail.com>
  AuthorDate: 2022-01-15 23:07:32 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-17 13:49:37 +0900

    Replace to RBOOL macro

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5449

commit 3515867381e34a04f2d64086ac283cd9536a8b20
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-15 09:16:04 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-17 10:39:24 +0900

    Removed skip alias in test suite

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5446

commit ac1bb6b51032ad8d34a1060f5f6b5b10b60dc183
  Author:     Brandon Weaver <keystonelemur@gmail.com>
  AuthorDate: 2022-01-16 16:09:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-17 10:17:23 +0900

    [ruby/net-http] Rename `D` to `debug` in `Net::HTTP`

    Renames `D` to `debug` in `Net::HTTP` and introduces an alias for
    backwards compatibility. This was done for readability reasons, in that
    `D` did not clearly reflect what the method was doing and can cause some
    confusion.

    https://github.com/ruby/net-http/commit/582d6e87d6

commit ab11cafe0b73a7a50f13c1d7eae1cf5e7cba1a0a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-17 01:56:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-17 01:56:04 +0900

    Parenthesize the macro argument

commit 2dff82bfca0226e335a446715b94670b5af85108
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-16 23:47:10 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-16 23:47:10 +0900

    `O_NONBLOCK` is not always a preprocessor constant on all platforms

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5454

    Merged-By: nobu <nobu@ruby-lang.org>

commit 4cd6fd338f71278bab5798a556a76c4e1588b892
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-16 22:43:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-16 22:43:04 +0900

    Weakmap failure is still pending

commit 155075684944e457396d3b5018c20e0acd0bfbb0
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-14 21:36:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-16 22:09:32 +0900

    [ruby/reline] Use "Bundler.require" to load Gemfile.lock in multiline_repl

    https://github.com/ruby/reline/commit/492bee257a

commit f5e3913737916df3bc569dee7d3c9c9ed98146b3
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-13 20:29:07 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-16 22:09:31 +0900

    [ruby/reline] Fix incremental search to work correctly even if not last line

    https://github.com/ruby/reline/commit/21d75f6d4c

commit 921ff739df14c705491d75435c5e5ce31e2ed553
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-12 19:46:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-16 22:09:31 +0900

    [ruby/reline] Insert newline in the middle of buffer just after dialog

    https://github.com/ruby/reline/commit/0c76631132

commit d1e078e71c7a1dcd20c372d4a50b81ea647311e4
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-09 23:01:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-16 22:09:30 +0900

    [ruby/reline] Add a wait for a test because sometimes fails

    https://github.com/ruby/reline/commit/da4a7aa932

commit 2bc6b07a8d313b6aa9dea13d81ffd3c97db84ead
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-07 22:59:55 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-16 22:09:29 +0900

    [ruby/reline] Combine common logic into one

    https://github.com/ruby/reline/commit/5db9738f17

commit f94a2adf6a45e93d12c63a9b4ef3e21d9b7e5063
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-05 21:18:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-16 22:09:28 +0900

    [ruby/reline] Clear dialog when adding new line to end of buffer

    https://github.com/ruby/reline/commit/7d38454327

commit 5ec3450438150e7cb05422c04dc18901161a13ea
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-16 18:18:05 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-16 21:35:09 +0900

    Remove outdated skips

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5453

commit a4a7bf2a63ee5b54080bfbcc7b2dd745c9991507
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-16 16:40:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-16 21:35:09 +0900

    Use pend for old TODOs

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5453

commit 56b45e8c8e96210a2c17fde9408d46100f8d89cb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-16 16:33:34 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-16 21:35:09 +0900

    Let testunit use omit or pend instead of skip

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5453

commit 2ae9da23c5c112c5d53ab15ac1301274a91d598d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-15 18:11:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-16 17:15:02 +0900

    Check with the latest stable

commit 6328db3c7e2dcc93b78eba48b37beff96ede71c8
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-16 16:01:57 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-16 16:09:12 +0900

    Separate the tests which fail when load-relative enabled

commit ab1fc6efa4f8dbd655db61414c021885fd919c79
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-16 16:01:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-16 16:08:45 +0900

    Add continue-on-skipped_tests flag

commit 41e6f0967d3c5762c40b8a48aacd22f89940227c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-16 15:20:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-16 16:08:44 +0900

    Fix typos for multiple skipped_tests

commit 728304093c4d5ec8be7dd5f1467da4aa362f2d5c
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-01-16 06:53:57 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2022-01-16 06:53:57 +0900

    Update NEWS.md about ERB.new

commit d12a08abb5fd1412d59094a953899bbd8a64ac88
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-01-16 06:46:43 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-16 06:46:47 +0900

    [ruby/erb] Remove safe_level and further positional arguments (https://github.com/ruby/erb/pull/7)

    [Feature #14256]

    https://github.com/ruby/erb/commit/5133efa06f

commit 3cfb6fc4797c2840375c693c24802db125075de4
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2022-01-16 05:25:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-16 05:26:37 +0900

    [ruby/erb] Escape the second *

    The original code just seems unintentional

    https://github.com/ruby/erb/commit/75a0749cb7

commit b2d15dcad6febf628dc56d24b20456527101a10d
  Author:     ooooooo_q <ooooooo-q@users.noreply.github.com>
  AuthorDate: 2022-01-16 05:20:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-16 05:21:05 +0900

    [ruby/erb] fix regexp (https://github.com/ruby/erb/pull/6)

    https://github.com/ruby/erb/commit/33100a022f

commit 4c2d6f76553d03a5c9742a2cf3a22e41333d75a7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-15 21:33:14 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-15 22:24:16 +0900

    Test enable-load-relative

    Now rubygems has the tests depending on it.

commit c1bcfeec38cdc04858ba607eb6f6aaa64dc731c9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-10 23:38:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-15 18:57:33 +0900

    Transfer the responsibility for MJIT options to mjit.c

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5448

commit 670f3e6cd7b6ea03810af3606139021471019017
  Author:     David CARLIER <devnexen@gmail.com>
  AuthorDate: 2022-01-15 14:25:35 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-15 18:56:15 +0900

    [ruby/fcntl] adding few FreeBSD specific flags.

    https://github.com/ruby/fcntl/commit/03d9a7937d

commit d853a7886ef63b7237ab2bce42eb99c26bc1eccb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-12 17:53:52 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-15 18:55:47 +0900

    Define the default JIT feature bit

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5447

commit 7c70151aedf5b51447f7a9ebcb6a4b58ef76deb2
  Author:     loadkpi <loadkpi@gmail.com>
  AuthorDate: 2022-01-14 15:07:39 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-15 14:00:35 +0900

    [rubygems/rubygems]  Fix `gem update --system` for already installed version of rubygems-update

    https://github.com/rubygems/rubygems/commit/c167d513a7

commit 2dc365db79e46daaf415c4fcabeab540ec43e92e
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-01-15 13:30:20 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-01-15 13:30:20 +0900

    Fix spec failures on ruby 3.1

    Because Module#const_added is ruby 3.2 feature

commit e40f79daa39141fed9d5a8d8a71211b6b97b1c8d
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-01-15 09:33:06 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-15 09:33:06 +0900

    Enhanced RDoc for io.c (#5444)

    Treated:

        IO#open
        IO#sysopen
        #open
        IO#putc
        IO#puts
        #p
        Kernel#display

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 8d378fd28bcce28013499454877678cbbfe7cdc9
  Author:     manga_osyo <manga.osyo@gmail.com>
  AuthorDate: 2021-02-25 17:20:50 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-15 09:09:12 +0900

    Add Enumerable::Lazy#with_index to NEWS-2.7.0
    The behavior of `Enumerable::Lazy#with_index` has changed in Ruby 2.7.
    This change was not listed in the Ruby 2.7 news, so I added it.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4225

commit 49cc7709cb762594aa8ea1b98a1fdf41662a5cf6
  Author:     MSP-Greg <Greg.mpls@gmail.com>
  AuthorDate: 2022-01-15 00:00:56 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-15 08:59:14 +0900

    [Actions] mingw - use ruby/setup-ruby@v1 again

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5443

commit 58dc8bf8f15df9a33d191074e8a5d4946a3d59d5
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-01-15 04:21:41 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-01-15 06:46:18 +0900

    Fix {Method,UnboundMethod}#{public?,private?,protected?} for ZSUPER methods

    Add a visibility member to struct METHOD storing the original
    method visibility, and use that, instead of taking the visibility
    from the stored method entry (which may have different visibility
    for ZSUPER methods).

    Consider Method/UnboundMethod objects different if they have
    different visibilities.

    Fixes [Bug #18435]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5356

commit a93cc3e23b4044762e80820fc7a45606587e11db
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-12-28 07:41:43 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-01-15 05:17:57 +0900

    Make Hash#shift return nil for empty hash

    Fixes [Bug #16908]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5360

commit 6b7eff90860d4fb4db01ec4d1f522afa6d809632
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-15 03:59:38 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-15 04:36:33 +0900

    Separately allocate class_serial on 32-bit systems

    On 32-bit systems, VWA causes class_serial to not be aligned (it only
    guarantees 4 byte alignment but class_serial is 8 bytes and requires 8
    byte alignment). This commit uses a hack to allocate class_serial
    through malloc. Once VWA allocates with 8 byte alignment in the future,
    we will revert this commit.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5442

commit ca3d405242c722c8140944bda7278c2a9e5a7139
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-05-01 08:01:27 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-01-15 04:00:26 +0900

    Fix constant assignment evaluation order

    Previously, the right hand side was always evaluated before the
    left hand side for constant assignments.  For the following:

    ```ruby
    lhs::C = rhs
    ```

    rhs was evaluated before lhs, which is inconsistent with attribute
    assignment (lhs.m = rhs), and apparently also does not conform to
    JIS 3017:2013 11.4.2.2.3.

    Fix this by changing evaluation order.  Previously, the above
    compiled to:

    ```
    0000 putself                                                          (   1)[Li]
    0001 opt_send_without_block                 <calldata!mid:rhs, argc:0, FCALL|VCALL|ARGS_SIMPLE>
    0003 dup
    0004 putself
    0005 opt_send_without_block                 <calldata!mid:lhs, argc:0, FCALL|VCALL|ARGS_SIMPLE>
    0007 setconstant                            :C
    0009 leave
    ```

    After this change:

    ```
    0000 putself                                                          (   1)[Li]
    0001 opt_send_without_block                 <calldata!mid:lhs, argc:0, FCALL|VCALL|ARGS_SIMPLE>
    0003 putself
    0004 opt_send_without_block                 <calldata!mid:rhs, argc:0, FCALL|VCALL|ARGS_SIMPLE>
    0006 swap
    0007 topn                                   1
    0009 swap
    0010 setconstant                            :C
    0012 leave
    ```

    Note that if expr is not a module/class, then a TypeError is not
    raised until after the evaluation of rhs.  This is because that
    error is raised by setconstant.  If we wanted to raise TypeError
    before evaluation of rhs, we would have to add a VM instruction
    for calling vm_check_if_namespace.

    Changing assignment order for single assignments caused problems
    in the multiple assignment code, revealing that the issue also
    affected multiple assignment.  Fix the multiple assignment code
    so left-to-right evaluation also works for constant assignments.

    Do some refactoring of the multiple assignment code to reduce
    duplication after adding support for constants. Rename struct
    masgn_attrasgn to masgn_lhs_node, since it now handles both
    constants and attributes. Add add_masgn_lhs_node static function
    for adding data for lhs attribute and constant setting.

    Fixes [Bug #15928]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4450

commit 3cc82ff93c69fbd9d7377aa960ce46a0c24abdda
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-15 00:33:42 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-15 01:29:08 +0900

    Drop support for OSX 10.3 and earlier

    dlopen was introduced in OSX 10.4, which was released in 2005. OSX 10.3
    was EOL in 2007.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5440

commit 64e19ad7e98d9ede10116c6aa4ab4bd6e5b763a2
  Author:     Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
  AuthorDate: 2022-01-15 00:58:21 +0900
  Commit:     Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
  CommitDate: 2022-01-15 00:58:21 +0900

    to prevent collection, keep the last result.

commit 82539a3d13626ee350e123f3f94c58a42db542e7
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2022-01-15 00:22:57 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-01-15 00:22:57 +0900

    variable.c: Fix incorrect identation in `const_added`

commit f75e871e4f7b004d5a7c73086e46a3ad6e0432a0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-14 15:50:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-15 00:19:46 +0900

    Try previous ruby-setup-ruby

    The commits between db14f2dde9ceeaa8acbcd31884475a7ce97ae9d3 and
    11cc84264a91d42bc873f39d70678e44042322d2 seems breaking
    OpenSSL::TestConfig#test_s_parse_include.

commit c54eac661350be3c5b991eff349080910966add3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-14 15:48:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-15 00:15:23 +0900

    Show tool versions

commit 7d42b442bb42d8958daf978a0fe14b948f49609f
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2019-10-22 02:26:51 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-15 00:00:11 +0900

    [rubygems/rubygems] Support binstubs with `--enable-load-relative` prolog

    https://github.com/rubygems/rubygems/commit/32a5e9057a

commit 044b0ae8e054b9959dc48bd5e663cbf2dea653a4
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2019-10-24 00:45:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-15 00:00:10 +0900

    [rubygems/rubygems] Extract a bit of common logic to methods

    https://github.com/rubygems/rubygems/commit/9a1b891435

commit 3006451f6511b6594a24a9046f390c3bec6a7465
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2019-10-22 02:10:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-15 00:00:09 +0900

    [rubygems/rubygems] Privatize some test utils

    https://github.com/rubygems/rubygems/commit/386b3b85ca

commit 810516ca312410515733d3e6a48e5112ad44c750
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2019-10-03 06:46:40 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-15 00:00:09 +0900

    [rubygems/rubygems] Fix method documentation to be more correct English

    https://github.com/rubygems/rubygems/commit/bcffd92c48

commit da0f67c0383f57129c7a76255964b1ee739d8db8
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-01-14 22:17:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-14 23:38:09 +0900

    [rubygems/rubygems] Remove redundant condition

    See https://github.com/rubygems/rubygems/pull/5210#discussion_r784807168

    https://github.com/rubygems/rubygems/commit/cd0e961e81

commit 8d05047d72d0a4b97f57b23bddbca639375bbd03
  Author:     Jean Boussier <jean.boussier@gmail.com>
  AuthorDate: 2021-05-22 19:04:01 +0900
  Commit:     Jean Boussier <jean.boussier@gmail.com>
  CommitDate: 2022-01-14 19:30:07 +0900

    Add a Module#const_added callback

    [Feature #17881]

    Works similarly to `method_added` but for constants.

    ```ruby
    Foo::BAR = 42 # call Foo.const_added(:FOO)
    class Foo::Baz; end # call Foo.const_added(:Baz)
    Foo.autoload(:Something, "path") # call Foo.const_added(:Something)
    ```

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4521

commit 53a4e101465a4d2ae38ea3bfd3cb7dd3c9f12f61
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-01-14 17:36:49 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-01-14 18:33:16 +0900

    clear `@result` after `setup_message`

    For the remote object `ro`, method chain like `ro.foo.bar` the
    result of `ro.foo` is stored in `@result`, but cleared just
    before `setup_message` and it seems GCed on specific machine.

    ```
      1) Error:
    DRbTests::TestDRbCore#test_05_eq:
    RangeError: "140" is recycled object
        (druby://localhost:36141) /tmp/ruby/v3/src/trunk-repeat20-asserts/lib/drb/drb.rb:366:in `_id2ref'
        (druby://localhost:36141) /tmp/ruby/v3/src/trunk-repeat20-asserts/lib/drb/drb.rb:366:in `to_obj'
        (druby://localhost:36141) /tmp/ruby/v3/src/trunk-repeat20-asserts/lib/drb/drb.rb:1528:in `to_obj'
        (druby://localhost:36141) /tmp/ruby/v3/src/trunk-repeat20-asserts/lib/drb/drb.rb:1847:in `to_obj'
        (druby://localhost:36141) /tmp/ruby/v3/src/trunk-repeat20-asserts/lib/drb/drb.rb:620:in `recv_request'
        (druby://localhost:36141) /tmp/ruby/v3/src/trunk-repeat20-asserts/lib/drb/drb.rb:931:in `recv_request'
        (druby://localhost:36141) /tmp/ruby/v3/src/trunk-repeat20-asserts/lib/drb/drb.rb:1656:in `init_with_client'
        (druby://localhost:36141) /tmp/ruby/v3/src/trunk-repeat20-asserts/lib/drb/drb.rb:1668:in `setup_message'
        (druby://localhost:36141) /tmp/ruby/v3/src/trunk-repeat20-asserts/lib/drb/drb.rb:1632:in `perform'
        (druby://localhost:36141) /tmp/ruby/v3/src/trunk-repeat20-asserts/lib/drb/drb.rb:1725:in `block (2 levels) in main_loop'
        (druby://localhost:36141) /tmp/ruby/v3/src/trunk-repeat20-asserts/lib/drb/drb.rb:1721:in `loop'
        (druby://localhost:36141) /tmp/ruby/v3/src/trunk-repeat20-asserts/lib/drb/drb.rb:1721:in `block in main_loop'
        /tmp/ruby/v3/src/trunk-repeat20-asserts/test/drb/drbtest.rb:206:in `test_05_eq'
    ```

    To prevent collecting, clear `@result` just after `setup_message`
    and `setup_message` can get the last result object.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5439

commit ac807888629052cc677529e3a6c48b1980e2ceeb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-14 14:35:38 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-14 15:26:49 +0900

    Update RBS test for Gem::Version#<=> update

commit d3940a533dcce95b377462f395c7bdd393de7261
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-01 19:18:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-14 14:54:29 +0900

    Fetch the unmerged revision to test of bundled gems

commit abc4a46046c326263683a8b3611775c2ddd56a71
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-02 01:25:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-14 14:54:29 +0900

    Get rid of building main again when test-bundled-gems

commit c613d79f9b366409158fd599d76eb1261b657cac
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-14 00:46:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-14 13:46:12 +0900

    Suppress unary minus operator to unsigned type warnings

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5435

commit 9fa9cf4006b2278ee3de3aa75ab0697c4c119744
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-14 00:41:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-14 13:46:12 +0900

    Suppress possible loss of data warnings

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5435

commit 6dc4c942a329565b5701dacd3c18764c149be790
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-01-14 09:00:24 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-14 09:00:24 +0900

    File rdoc (#5438)

    Treats:

        File introduction
        File.open
        File.new

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit b9b63774018870e69b8f81274c8326e9b1628597
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-01-13 19:46:27 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-14 08:16:37 +0900

    [ruby/net-http] Fix unescaped `.` in Regexp

    Use `include?` instead.

    https://github.com/ruby/net-http/commit/05022744a9

commit 40d9be51e8c33118702c4dc536e915547b1080a2
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-14 00:31:20 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-14 07:44:14 +0900

    [ruby/psych] Don't require `strscan` unnecessarily

    It does not seem needed, and it's causing issues on Windows when
    uninstalling `strscan`, because strscan's shared library being used when
    RubyGems tries to remove it (because its loaded through Psych, which
    RubyGems uses for loading configuration).

    https://github.com/ruby/psych/commit/3911356ec1

commit a485152660d2351284362a2ab3b88f125a994554
  Author:     Justin Searls <searls@gmail.com>
  AuthorDate: 2022-01-13 22:46:50 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-13 23:59:55 +0900

    [rubygems/rubygems] Lock standard.yml to the required ruby version

    https://github.com/rubygems/rubygems/commit/1791b5b9e5

commit d0a063794873eafed413957cb7ab93279945258a
  Author:     Vyacheslav Alexeev <alexeev.corp@gmail.com>
  AuthorDate: 2022-01-12 00:38:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-13 18:16:05 +0900

    [rubygems/rubygems] Use `Fiddle` in `bundle doctor` to check for dynamic library presence

    https://github.com/rubygems/rubygems/commit/ecd495ce1b

commit 9828502570acce53f4094c23756bc82bd256eab7
  Author:     Akira Matsuda <ronnie@dio.jp>
  AuthorDate: 2022-01-11 05:30:05 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-13 18:15:14 +0900

    [rubygems/rubygems] Let Version#spaceship accept a String

    With this patch, handwriting version comparisons become a little bit easier.

    before:
      SomeGem.version <=> Gem::Version.new('1.3')

    after:
      SomeGem.version <=> '1.3'

    https://github.com/rubygems/rubygems/commit/7e0dbb79f2

commit 9de380860d8dc78963cabb5247c6e4a93a2fc5a9
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2022-01-13 17:45:25 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-01-13 17:45:25 +0900

    add a NEWS entry of `Proc#dup`.

commit 7e21b77dc6bfefaf331a0dbf89782303b8cda05d
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2021-02-18 17:10:39 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2022-01-13 17:43:14 +0900

    T#dup (T < Proc) should return T's object

    T#dup (T < Proc) returns Proc object (not T) from Ruby 1.9.
    [Bug #17545]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/4197

commit 5a75151a0166ded78fc87ef5891a6877ba0950db
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-13 11:34:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-13 11:34:09 +0900

    [DOC] Mark up the code for Kernel#rand as the same as Random#rand

commit d1a55851e8b5d90c028466865eee4a99b48cec85
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-13 11:32:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-13 11:32:35 +0900

    [DOC] Fix a typo in a doc

commit faf79d3a25ddb9a89f5b27cc6b3e7fead8c7c98f
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-01-13 08:08:30 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-13 08:08:30 +0900

    Enhanced RDoc for IO.popen (#5430)

    * Enhanced RDoc for IO.popen

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 2f71f6bb82c561b0c0ac31b345673a6e6847efe3
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-01-12 02:10:23 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-01-13 05:55:14 +0900

    Speed up and avoid kwarg hash alloc in Time.now

    Previously Time.now was switched to use Time.new as it added support for
    the in: argument. Unfortunately because Class#new is a cfunc this
    requires always allocating a Hash.

    This commit switches Time.now back to using a builtin time_s_now. This
    avoids the extra Hash allocation and is about 3x faster.

        $ benchmark-driver -e './ruby;3.1::~/.rubies/ruby-3.1.0/bin/ruby;3.0::~/.rubies/ruby-3.0.2/bin/ruby' benchmark/time_now.yml
        Warming up --------------------------------------
                      Time.now     6.704M i/s -      6.710M times in 1.000814s (149.16ns/i, 328clocks/i)
        Time.now(in: "+09:00")     2.003M i/s -      2.112M times in 1.054330s (499.31ns/i)
        Calculating -------------------------------------
                                   ./ruby         3.1         3.0
                      Time.now     7.693M      2.763M      6.394M i/s -     20.113M times in 2.614428s 7.278710s 3.145572s
        Time.now(in: "+09:00")     2.030M      1.260M      1.617M i/s -      6.008M times in 2.960132s 4.769378s 3.716537s

        Comparison:
                                   Time.now
                        ./ruby:   7693129.7 i/s
                           3.0:   6394109.2 i/s - 1.20x  slower
                           3.1:   2763282.5 i/s - 2.78x  slower

                     Time.now(in: "+09:00")
                        ./ruby:   2029757.4 i/s
                           3.0:   1616652.3 i/s - 1.26x  slower
                           3.1:   1259776.2 i/s - 1.61x  slower

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5429

commit ae5458f228a5477383e9c00425d85d50a3867817
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-01-12 17:29:17 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-01-13 03:21:45 +0900

    thread.c: Convert TAG_BREAK to a normal exception at thread top-level

    [Bug #18475]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5431

commit 98fb0ab60eb14e74a484920bd904a3edd4ba52eb
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-12 05:21:56 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-13 02:00:55 +0900

    Enable Variable Width Allocation by default

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5432

commit 2d81a718eca679b9bf458beccf1e7a86b812c3e2
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-12 05:19:39 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-13 02:00:55 +0900

    Make embedded string length a long for VWA

    A short (2 bytes) will cause unaligned struct accesses when strings are
    used as a buffer to directly store binary data.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5432

commit e28dbd0f3d08536d61e4e2c0ac938161ac16f29f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-12 20:58:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-12 21:16:02 +0900

    [ruby/optparse] Fix for ruby 3.0 or earlier

    https://github.com/ruby/optparse/commit/9e29d86c12

commit 743a41f7e3e7d4dfad006f23d14a00cbe6ba5946
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-12 19:37:33 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-12 21:16:02 +0900

    [ruby/optparse] DidYouMean::PlainFormatter is deprecated

    https://github.com/ruby/optparse/commit/0ac9957696

commit 92630e2346a221fdfeaa484632938a06765bc6e5
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-12 18:22:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-12 21:16:02 +0900

    [ruby/optparse] Fix links to the page directory files [Bug #18468]

    https://github.com/ruby/optparse/commit/dab72c543d

commit 7d94df63c40ba2c2b85344140c9f3da03a05fc72
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-12 18:17:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-12 21:16:01 +0900

    [ruby/optparse] Add rdoc options

    Specify the main page and the page directory.  Also in Rakefile,
    extract and use the same options from the gemspec file.

    https://github.com/ruby/optparse/commit/d182cd60b5

commit 39bebd762df97a7206559624f1897121ad5f157d
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-12 18:16:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-12 21:16:01 +0900

    [ruby/optparse] Add .document files

    https://github.com/ruby/optparse/commit/ed283559d4

commit 26b4aa853f5b770af03d2d50d7045e04b887b45a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-12 17:18:01 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-12 17:51:14 +0900

    Show JIT options only when supported

commit dcb02cb28aa8c6d998291aaddf95a571d369f316
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-11 21:44:20 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-12 11:02:24 +0900

    [ruby/io-nonblock] Use omit instead of skip for test-unit

    https://github.com/ruby/io-nonblock/commit/a7bfbfa049

commit 186fd89086da1a2285f71ba1dfc275580c5cd229
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-11 21:24:19 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-12 10:59:21 +0900

    [ruby/rinda] Use omit instead of skip for test-unit

    https://github.com/ruby/rinda/commit/1d3512aa26

commit bf2bd6dc22bde97888c60f10d3f42714c6ac1a19
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-11 21:41:25 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-12 10:53:57 +0900

    [ruby/io-wait] Use omit instead of skip for test-unit

    https://github.com/ruby/io-wait/commit/75543ab1bc

commit 7f5e06601b5dc4ea1c1c91cfb843ed83baafe251
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-11 21:31:48 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-12 10:53:34 +0900

    [ruby/date] Use omit instead of skip for test-unit

    https://github.com/ruby/date/commit/537f3f681e

commit 236678b823d304e7b4c32cd8470af487f38920ce
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-11 21:25:17 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-12 10:52:09 +0900

    [ruby/open3] Use omit instead of skip for test-unit

    https://github.com/ruby/open3/commit/f6ca124b56

commit 8ccbca262352f282c9d8a06538cfe2dd20c31410
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-11 21:34:48 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-12 10:50:43 +0900

    [ruby/win32ole] Use omit() for skip()

    https://github.com/ruby/win32ole/commit/2d5dc47ed4

commit 5331615d546169f1c90014a3cd2964e6d3dd0420
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-11 21:19:26 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-12 10:50:41 +0900

    [ruby/win32ole] Use omit instead of skip for test-unit

    https://github.com/ruby/win32ole/commit/c0586b2f75

commit c02a9994cea77d13a9ce8677a1b46dfb8da67d0f
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-11 21:38:05 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-12 10:49:58 +0900

    [ruby/resolv] Use omit instead of skip for test-unit

    https://github.com/ruby/resolv/commit/55e42221d4

commit d494a16ac5d39544b1a5b317414f27f90678a3a5
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-01-10 05:14:23 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-12 10:49:57 +0900

    [ruby/resolv] Support more characters in link local addresses

    Implements [Feature #17524]

    https://github.com/ruby/resolv/commit/993a1a374f

commit 14967347b9bb819c365c73dd035baac723d56b51
  Author:     Noah Gibbs <noah.gibbs@shopify.com>
  AuthorDate: 2022-01-12 04:17:59 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-12 04:17:59 +0900

    YJIT stats documentation additions and updates (#5427)

    * YJIT documentation additions and updates

    * Update yjit.md

    Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>

  Notes:
    Merged-By: maximecb <maximecb@ruby-lang.org>

commit 34ebf82e839bf542444a92e075853ff8f6332156
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-11 21:36:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-11 21:50:53 +0900

    [ruby/tmpdir] Use omit instead of skip for test-unit

    https://github.com/ruby/tmpdir/commit/40107b59b3

commit 9b3dcf193c8a39b1316f0f2c6d9da5998a830663
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-11 21:39:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-11 21:45:34 +0900

    [ruby/net-http] Use omit instead of skip for test-unit

    https://github.com/ruby/net-http/commit/843d4548de

commit 167121a9e75ca2a7a476627ea7f37634c1bd68c8
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-11 21:27:59 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-11 21:40:51 +0900

    [ruby/find] Use omit instead of skip for test-unit

    https://github.com/ruby/find/commit/0ebbd5b852

commit 6b87d980112c1b37f0bb64d5fa5d78a3f5899fdf
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-11 21:26:49 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-11 21:35:22 +0900

    [ruby/zlib] Use omit instead of skip for test-unit

    https://github.com/ruby/zlib/commit/5f23cd3009

commit f95039af7584a2fa27e4d1cbcdf28bbf5b5ecdcf
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-11 21:17:53 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-11 21:17:59 +0900

    Use omit instead of skip without the default gems tests

commit 6d3ee418c2e12adaf292ad74b7d46a7708e91889
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-09 12:24:13 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-11 20:20:51 +0900

    [rubygems/rubygems] Markup code with RDoc notations

    https://github.com/rubygems/rubygems/commit/c29cd23826

commit b633c9ac1cc06610c09aaeba1faa2bf3da7d2be0
  Author:     Vladimir Dementyev <dementiev.vm@gmail.com>
  AuthorDate: 2022-01-11 19:20:19 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-11 19:58:57 +0900

    Reduce p_args rules with p_rest

commit b5310b8975dffd18a90e149e00673b585101cab8
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-01-11 17:33:01 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-01-11 17:33:01 +0900

    Fix compile errors

    ```
    compiling ../ruby.c
    ../ruby.c:1547:17: error: implicit declaration of function 'setup_yjit_options' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
                    setup_yjit_options(s, &opt->yjit);
                    ^
    ../ruby.c:1547:17: note: did you mean 'setup_mjit_options'?
    ../ruby.c:1122:1: note: 'setup_mjit_options' declared here
    setup_mjit_options(const char *s, struct mjit_options *mjit_opt)
    ^
    ../ruby.c:1547:45: error: no member named 'yjit' in 'struct ruby_cmdline_options'; did you mean 'mjit'?
                    setup_yjit_options(s, &opt->yjit);
                                                ^~~~
                                                mjit
    ../ruby.c:192:25: note: 'mjit' declared here
        struct mjit_options mjit;
                            ^
    ../ruby.c:1924:28: error: no member named 'yjit' in 'struct ruby_cmdline_options'; did you mean 'mjit'?
            rb_yjit_init(&opt->yjit);
                               ^~~~
                               mjit
    ../ruby.c:192:25: note: 'mjit' declared here
        struct mjit_options mjit;
                            ^
    3 errors generated.
    ```

commit 3d675c72b9f23791a03bd3b2251e8a2c488b33df
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-11 17:26:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-11 17:26:21 +0900

    Use `setup_yjit_options` only when supported

commit 1c9b5d452e9f2f675130f13393a031e28bf982d7
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-11 11:45:24 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-11 11:49:34 +0900

    Reject command line option ending with `-`

commit 8b585f74604318995daa337d41f19fabb9ce3711
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-11 10:12:40 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-11 10:12:40 +0900

    Define YJIT options only when supported

commit d920535d1b0a17af2fb7cdc541f341461a001181
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-01-11 08:02:48 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-11 08:02:48 +0900

    Enhanced RDoc for IO (#5425)

    Treats:

        #pread
        #pwrite
        #binmode
        #binmode?

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 6931d70e6ef7495dbaa45d62d8065b80cc0fde2a
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-01-11 06:14:36 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-11 06:14:36 +0900

    Enhanced RDoc for IO (#5424)

    Treats:

        #sysseek
        #syswrite
        #sysread

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 9e79ae539b6c939af6c3bc1a008a019fb920fe64
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-04 14:21:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-11 06:10:37 +0900

    [ruby/reline] Clear dialog when just_move_cursor is called with dialog at last line

    https://github.com/ruby/reline/commit/05024b968e

commit 930ebdd7ca4dfb9386fcaa52909dadb970163f8e
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-01-06 09:00:21 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-01-11 03:53:31 +0900

    YJIT: Support kwargs for cfunc

    This adds support for passing keyword arguments to cfuncs. This is done
    by calling a helper method to create the hash from the top N values on
    the stack (determined by the callinfo) and then moving that value onto
    the stack.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5397

commit a9dc0c59e314de66f56d0a1a551a74c96fd11c8d
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-01-11 03:45:06 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-11 03:45:06 +0900

    [DOC] Enhanced RDoc for IO (#5422)

    Revises much of the introductory material.

    Also treats:

        #close_on_exec
        #close
        #closed?
        #close_read
        #close_write

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 04d9b6d2f9d486f3e75e6b352f517bb821982b23
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-01-11 01:39:36 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-01-11 02:02:00 +0900

    [DOC] Link to Ruby Spec and rephrase project goal

    The word "specification" can be confusing as it might make readers
    assume that the Ruby Spec Suite is a specification similar to an ISO
    specification. Avoid the word and link to the project so curious parties
    could read more about the project.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5423

commit 4053e8ba0d39b688440fedee2ab3fffabcd64312
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-01-11 00:29:54 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-01-11 00:29:54 +0900

    Update to ruby/spec@226cfdc

commit 8abfc106058d09840d13f64e7e87cb7e40c3d6fa
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-01-11 00:29:53 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-01-11 00:29:53 +0900

    Update to ruby/mspec@3ea3d32

commit ca97001a945abf93dc5fbfe99f59f28c7d91e4c8
  Author:     Benoit Daloze <eregontp@gmail.com>
  AuthorDate: 2022-01-10 21:08:59 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-01-10 21:08:59 +0900

    Make the Ractor-safe section more fluent

commit b4d0d07e2c1ad21297a286601dcc9ec2ab068b69
  Author:     Trey Evans <lewis.r.evans@gmail.com>
  AuthorDate: 2022-01-10 04:16:02 +0900
  Commit:     Benoit Daloze <eregontp@gmail.com>
  CommitDate: 2022-01-10 21:04:31 +0900

    Clarify ractor documentation meaning and formatting.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5421

commit c764e368bd9c0487e6cc97f8a62e0e0e99a0d7c5
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-01-10 20:17:05 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-01-10 20:17:05 +0900

    Fix default --jit-max-cache in `ruby --help`

    changed at 028f1887c2bfa50dcfc1b623470d6ab1b880fdde

commit 65a8d52212d3945bb5f547136a88f43022a31cf3
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-09 19:17:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-09 19:17:48 +0900

    Revert "[DOC] Mention RBOOL in extension.rdoc [Feature #13125]"

    This reverts commit 9ad34da47ff7d71446e667897559047ed5635b60, as
    `RBOOL` is not defined publicly yet.

commit b43ad6b802b805cec6bee503e352d9697da8ca56
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-09 12:41:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-09 13:21:52 +0900

    [DOC] Fold too long lines

commit 83983bacbc78edf94ee66f9a3218095c0876ed4e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-09 12:39:26 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-09 12:40:25 +0900

    [DOC] Mention `make check`

commit a7faca51acd34b73de037b4ba4956e1dd05a3839
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-01-09 12:39:34 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-01-09 12:39:34 +0900

    Add `=num` to yjit options

    `--yjit-call-threshold` and `--yjit-max-versions` need an argument.

commit cc01ae591bba7ff11f5e83440d986df65b63c29a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-09 12:34:11 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-09 12:34:11 +0900

    [DOC] test-spec would be preferable now

commit 8648457541ec016b1d9d305d9d3ea29fb93ca336
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-01-09 08:06:20 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-09 08:06:20 +0900

    Don't combine test-all and rubyspec.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5420

    Merged-By: ioquatix <samuel@codeotaku.com>

commit 33cc8816bea87e99edfa5488479172597101dc65
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-09 05:07:57 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-09 05:07:57 +0900

    Revert "Enable Variable Width Allocation by default"

    This reverts commit c365c5921ea26e31c03a85b01ff4c04629abfc10.

commit 18b97eee5ace0fc70bf4e6d61092ad9fbade5f56
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-01-05 18:07:52 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-01-09 04:40:55 +0900

    YJIT: Add support for ruby array cfuncs (argc=-2)

    This adds support for cfuncs which take variable arguments using a Ruby
    array. This is specified with the method entry's argc == -2.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5396

commit b5c039125fe375f91b9795a5e1b29febaa12d072
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2022-01-05 17:47:10 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-01-09 04:40:55 +0900

    YJIT: Save SP later in cfunc call

    Saving SP later allows us to avoid storing SP in an intermediate
    register and allows using the ctx_stack_opnd helpers.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5396

commit 09cfc653b77584d557a551df6a5b8ebddbbd11a2
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-08 12:34:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-08 20:32:06 +0900

    [ruby/reline] Fix reline on Solaris

    Solaris requires that the pointer errret_int is alined to an integer,
    however, with VWA, strings are no longer aligned to an integer, so use a
    Fiddle::Pointer with a malloc'd region instead.

    https://github.com/ruby/reline/commit/5fcd89ab0c

commit 0ca00e2cb74f9d07d27844d97c29c208caab95a7
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-01-08 20:03:16 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-08 20:03:16 +0900

    Move IO write buffer allocation into function.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5418

    Merged-By: ioquatix <samuel@codeotaku.com>

commit 47a05f7c097aa760d523abbc40e724b4ce2408d1
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-08 00:36:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-08 14:47:59 +0900

    Do not run the same tests twice

commit fb532d801cc2a4d771eb049976d0e0f03090d220
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-08 14:25:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-08 14:47:49 +0900

    Run an old fixed bug in the same process

commit 64eccbf578b82b30299418444a1b77027c2abdd9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-08 13:53:10 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-08 14:47:49 +0900

    Run the tests on a subclass of String

commit 32a0d9dd4b48d32a1c1eb1c67f2ad3123891c87b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-08 12:49:39 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-08 12:49:39 +0900

    Prefer the dedecated conversion function

commit 54c91042ed61a869d4a66fc089b21f56d165265f
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2022-01-07 11:57:43 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2022-01-08 09:29:03 +0900

    YJIT: Discard local var type info on routine call

    Routines that are called from YJIT's output code can call methods, and
    calling methods mean they can capture and change the environment of the
    calling frame.

    Discard type info whenever we perform routine calls. This is more
    conservative than strictly necessary as some routines need to perform GC
    allocation but can never call methods and so should never be able to
    change local variables. However, manually analyzing C functions for
    whether they have code paths that call methods is error prone and can go
    out of date as changes land in the codebase.

    Closes: shopify/yjit#300

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5416

commit bc643bbe2e2c1afbed18ce2bcf4aed138fece412
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-08 05:11:25 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-08 05:48:06 +0900

    Use unsigned short for length of embedded strings

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5415

commit d9ef711f296afbe2a029961e83a03d023ca29f15
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-08 04:15:42 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-08 04:22:32 +0900

    Improve string info in rb_raw_obj_info

    Improve rb_raw_obj_info to output additional into about strings
    including the length, capacity, and whether or not it is embedded.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5414

commit c365c5921ea26e31c03a85b01ff4c04629abfc10
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-08 01:52:47 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-08 03:27:13 +0900

    Enable Variable Width Allocation by default

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5413

commit be68b3a49030f592a10eacc180d21c38c5d5d5db
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-07 23:47:09 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-08 00:50:03 +0900

    Change termlen when changing encoding during concatenation

    After changing the encoding, we should update the terminator length.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5411

commit dd6a75195a635abfcfdb8ac5df26885e91708908
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-09-18 04:12:08 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-07 09:42:09 +0900

    [ruby/pathname] Make Pathname#each_entry return enumerator if called without block

    Fixes [Bug #18158]

    https://github.com/ruby/pathname/commit/914c726aa2

commit 6baa78bb78315dfb0bc05e933fe6c512a3a098e6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-06 23:27:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-07 09:23:38 +0900

    Use chomp: option when chomp mode

    Get rid of depending on using $/ internally in String#chomp!, and
    chomp the separator at once.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5403

commit 83b987054a801405673266ba47c6f38e33efee0e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-06 23:08:56 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-07 09:23:38 +0900

    Explicitly pass $/ when loop mode

    Get rid of depending on using $/ internally in ARGF.gets.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5403

commit ae0d67d762a0849cc629a004c2ae9182292b19bd
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-07 07:22:11 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-07 07:23:05 +0900

    Revert "Set encoding before concatenating to string"

    This reverts commit 44368b5f8bc21e19fa06a0fc0625923fc41293e6.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5406

commit aeb344e65c35b9ce72185497c0692751a1ab53cf
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-07 06:46:36 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-07 06:47:49 +0900

    Revert "Enable Variable Width Allocation by default"

    This reverts commit d4a95428bb244ca8c4a97ad50f3837f191f1f0c3.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5405

commit 5f55b03716f0fc8aab227c8a752eefed2a58b38f
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-07 03:35:17 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-07 04:33:35 +0900

    Set correct termlen for frozen strings

    Frozen strings should have the same termlen as the original string when
    copy_encoding is true.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5399

commit 44368b5f8bc21e19fa06a0fc0625923fc41293e6
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-07 03:32:59 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-07 04:33:35 +0900

    Set encoding before concatenating to string

    If we set encoding after the call to rb_str_buf_cat, then rb_str_buf_cat
    will not set the correct terminator length.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5399

commit ee4784c06e991c605df31ab520e6b09c0ebc1e9e
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-06 23:03:45 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-07 04:33:35 +0900

    Update lldb_cruby.py for VWA strings

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5399

commit 3818cfbd47265d509908d63331e17c3fc1dc5a8a
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-06 23:02:19 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-07 04:33:35 +0900

    Compile with USE_RVARGC=0 on CI

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5399

commit d4a95428bb244ca8c4a97ad50f3837f191f1f0c3
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-06 23:00:19 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-07 04:33:35 +0900

    Enable Variable Width Allocation by default

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5399

commit ae51f304d28ca8ff3e0680448371c936f10490d0
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2022-01-07 00:07:14 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-01-07 02:13:19 +0900

    io_buffer.c: use mremap based resizing only when mremap available

    some libc implementations (e.g. wasi-libc) define MREMAP_MAYMOVE, but
    don't have mremap itself, so guard the use of mremap by HAVE_MREMAP

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5401

commit 5ad507d751e63ed53f8eb0e518f72aca6588be62
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-01-07 01:47:51 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-07 01:47:51 +0900

    Enhanced RDoc for IO (#5402)

    Treats:

        #ungetc
        #isatty
        #close_on_exec?

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 1bfccba775320ad47d67b49c77a7f999f6d84f48
  Author:     manga_osyo <manga.osyo@gmail.com>
  AuthorDate: 2022-01-06 23:49:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-07 01:13:04 +0900

    Add bugs.ruby links.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5400

commit 3f6bfe49db29df00d01952e3cd109afb20017e4e
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-01-06 15:23:48 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-01-07 01:03:33 +0900

    Update test/ruby/test_module.rb

    Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5398

commit 24b53b1f3a041a9214437b6465b3e69efcd2db98
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-01-06 12:27:14 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-01-07 01:03:33 +0900

    Remove unneeded line

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5398

commit a79c59472df38297c246b27713c277f2edaefa7a
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-01-06 09:12:31 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-01-07 01:03:33 +0900

    Allow include before calling Module#initialize

    This is to allow Module subclasses that include modules before
    calling super in the subclass's initialize.

    Remove rb_module_check_initializable from Module#initialize.
    Module#initialize only calls module_exec if a block is passed,
    it doesn't have other issues that would cause problems if
    called multiple times or with an already initialized module.

    Move initialization of super to Module#allocate, though I'm not
    sure it is required there.  However, it's needed to be removed
    from Module#initialize for this to work.

    Fixes [Bug #18292]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5398

commit 73be7a85cd4da6229f9a898b77492357e3811210
  Author:     ximenasandoval <ximena.sandoval.dh@gmail.com>
  AuthorDate: 2022-01-05 09:16:40 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-06 23:58:39 +0900

    [rubygems/rubygems] Fix suggestions flag

    https://github.com/rubygems/rubygems/commit/b55a1393ca

commit cea4a81056311f13ca1c17f26c9d2c21b5a017a6
  Author:     ximenasandoval <ximena.sandoval.dh@gmail.com>
  AuthorDate: 2021-12-30 06:24:04 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-06 23:58:38 +0900

    [rubygems/rubygems] Let fetch understand gem:version syntax

    Fix version error message

    Add tests to fetch error messages

    Fix default version since is not necessary

    https://github.com/rubygems/rubygems/commit/070620ebe4

commit ee5e684bc1fda49bc28f0fcfc2f79abb26994f08
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-06 22:05:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-06 23:52:48 +0900

    [rubygems/rubygems] Fix `gem install <non-existent-gem> --force` crash

    Before:

    ```
    $ gem install sfdsfdsfsdide --force
    ERROR:  While executing gem ... (NoMethodError)
        undefined method `spec' for nil:NilClass

        @always_install << newest.spec
                                 ^^^^^
    ```

    After:

    ```
    $ gem install sfdsfdsfsdide --force
    ERROR:  Could not find a valid gem 'sfdsfdsfsdide' (>= 0) in any repository
    ```

    https://github.com/rubygems/rubygems/commit/4e2bfd1101

commit e3b0c8c10680d7427bc0b5ec8906a72ce7c64c2d
  Author:     YO4 <ysno@ac.auone-net.jp>
  AuthorDate: 2022-01-03 23:06:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-06 18:33:57 +0900

    [ruby/reline] windows: test_yamatanooroti fix

    windows can't create too narrow and tall window.

    https://github.com/ruby/reline/commit/20b5f2f6fc

commit e554b17c60b31c79c91cc6fd480c692b04ca9e3f
  Author:     Yuta Saito <kateinoigakukun@gmail.com>
  AuthorDate: 2021-12-29 15:33:03 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-01-06 18:14:24 +0900

    tool/rbinstall.rb: instal ruby.wasm produced by Emscripten

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5370

commit 2db7952e592789819d18b28b1b9ef1b36671f21d
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2022-01-06 16:02:37 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-06 16:02:37 +0900

    Update bundled gems list at 2022-01-06

commit 3e417a554b97893ae407e9dd1581ac17fb759cee
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-06 11:32:27 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-06 11:32:27 +0900

    NEWS: "taintedness" and "trustedness" methods are removed

commit ac0d27eb58839a380af335bf42a5cc08ad144b6e
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-06 11:20:55 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-06 11:20:55 +0900

    NEWS: Separate removed constants section

commit da43c8822c31789cd59f009d2d563a31433b67bf
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-06 10:26:19 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-06 10:26:19 +0900

    Remove useless code [Bug #18185]

    RMODULE_SUPER is initialized to 0, as the uninitialized module
    flag is used since b929af430c39df6597d2f3f53b82c38b1d76217b.

commit 5e7cd480f968cddc4c6d6ad0e1a4fa74e5ee3938
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-01-06 10:14:11 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-01-06 10:14:11 +0900

    Fix spec failure on ruby 3.1

    Because https://github.com/ruby/ruby/pull/5148 merged after Ruby 3.1.0 released.

    13241b71a50dded0a7b021ec4f2fb6a995daace9 did not fix proc spec yet.

    https://github.com/ruby/actions/runs/4718820699?check_suite_focus=true#step:18:173
    ```
      1)
      Proc#parameters adds * rest arg for "star" argument FAILED
      Expected [[:req, :x], [:rest]] == [[:req, :x], [:rest, :*]]
      to be truthy but was false
      /home/runner/work/actions/actions/snapshot-ruby_3_1/spec/ruby/core/proc/parameters_spec.rb:85:in `block (3 levels) in <top (required)>'
      /home/runner/work/actions/actions/snapshot-ruby_3_1/spec/ruby/core/proc/parameters_spec.rb:3:in `<top (required)>'
    ```

commit 445c055b443b96921eb1fd9cd7b80e86ed4d078b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-01-06 07:13:06 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-06 07:13:06 +0900

    Enhanced RDoc for IO (#5395)

    Treats:

        #getc
        #readchar
        #getbyte
        #readbyte
        #ungetbyte

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 791343b5bb1b8bb11de4ba2800118c20e36b5a71
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-12-28 04:38:12 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-01-06 03:59:03 +0900

    Remove Refinement#{extend_object,append_features,prepend_features}

    Also make include, prepend, and extend raise a TypeError if one
    of the modules is a refinement.

    Implements [Feature #18270]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5358

commit f22296d27e9be616a16f9befd2f7c9c2d2f972c3
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-01-05 23:46:27 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-01-05 23:46:27 +0900

    test/ruby/test_refinement.rb: Remove "assigned but unused variable"

commit 6f7e02bf46d9c7e778e710fb3761d2d9c44124f2
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-05 22:51:59 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-05 23:32:53 +0900

    Remove assertion causing read barrier to trigger

    GET_HEAP_PAGE reads the page. If during compaction there is a read
    barrier on the page, it causes the read barrier to trigger.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5394

commit 8bba6d3d54fb10aa0fe12c3001b520fffc695663
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-05 18:02:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-05 19:16:53 +0900

    [rubygems/rubygems] Exclude bin directory for newgem template, Because it contains only development script

    https://github.com/rubygems/rubygems/commit/01017ee8ca

commit e38d583391a8839848abbda8ab32afd59c603da6
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-05 18:27:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-05 18:27:16 +0900

    NEWS: Links to the tickets to remove deprecated features

commit 1272a331b40575826ecefb085232e06d8b4977e2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-05 18:18:43 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-05 18:18:43 +0900

    NEWS: Removal of `Kernel#=~` [Feature #15231]

commit 54198c7b97d3d353f7ac233e0360034b6e7b6cb6
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-01-05 17:47:29 +0900
  Commit:     Shugo Maeda <shugo@ruby-lang.org>
  CommitDate: 2022-01-05 17:47:29 +0900

    Add Module#refinements and Refinement#refined_class [Feature #12737]

commit 21ee5341f8fc4ca513295dff2148f7c203c908a7
  Author:     Shugo Maeda <shugo@ruby-lang.org>
  AuthorDate: 2022-01-05 16:58:23 +0900
  Commit:     Shugo Maeda <shugo@ruby-lang.org>
  CommitDate: 2022-01-05 16:58:23 +0900

    Add Module.used_refinements

commit 5757696e07398112c6275704f2cf873aa700f80b
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-01-05 16:18:33 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-01-05 16:20:11 +0900

    `res.response_body_permitted?` is not defined

    `response_body_permitted?` is a method of request.

commit 6326112e16352caad131f1f1580c4621eb7b1d3f
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-01-05 09:39:07 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-05 09:39:07 +0900

    Enhanced RDoc for Enumerable (#5393)

    A little more about the classes that include or extend Enumerable.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit d5836db1b398a7936b0461b3011db66f6cc8c490
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-01-05 09:04:15 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-01-05 09:05:52 +0900

    Fix `Leaked file descriptor: TestIO_Console#test_console_kw`

    ```
    Leaked file descriptor: TestIO_Console#test_console_kw: 10 : #<File:/dev/tty>
    ```

commit 13241b71a50dded0a7b021ec4f2fb6a995daace9
  Author:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  AuthorDate: 2022-01-05 08:18:47 +0900
  Commit:     Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
  CommitDate: 2022-01-05 08:18:47 +0900

    Fix failures on ruby 3.1

    Because https://github.com/ruby/ruby/pull/5148 merged after Ruby 3.1.0 released.

    https://github.com/ruby/actions/runs/4705986643?check_suite_focus=true#step:18:144
    ```
      1)
      Method#parameters adds * rest arg for "star" argument FAILED
      Expected [[:rest]] == [[:rest, :*]]
      to be truthy but was false
      /home/runner/work/actions/actions/snapshot-ruby_3_1/spec/ruby/core/method/parameters_spec.rb:228:in `block (3 levels) in <top (required)>'
      /home/runner/work/actions/actions/snapshot-ruby_3_1/spec/ruby/core/method/parameters_spec.rb:4:in `<top (required)>'

      2)
      Proc#parameters adds * rest arg for "star" argument FAILED
      Expected [[:req, :x], [:rest]] == [[:req, :x], [:rest, :*]]
      to be truthy but was false
      /home/runner/work/actions/actions/snapshot-ruby_3_1/spec/ruby/core/proc/parameters_spec.rb:85:in `block (3 levels) in <top (required)>'
      /home/runner/work/actions/actions/snapshot-ruby_3_1/spec/ruby/core/proc/parameters_spec.rb:3:in `<top (required)>'
    ```

commit d1a91076dc9fb67c08ac074971a9bdbc0207616a
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-27 06:08:11 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-05 07:25:45 +0900

    [rubygems/rubygems] Fix race condition on JRuby

    On JRuby, sometimes we get the following error in CI when running a
    realworld test that checks that `gem install rails` succeeds:

    ```
    ERROR:  While executing gem ... (NoMethodError)
        undefined method `ignored=' for nil:NilClass
            /home/runner/.rubies/jruby-9.3.2.0/lib/ruby/stdlib/rubygems/stub_specification.rb:193:in `to_spec'
            org/jruby/RubyArray.java:2642:in `map'
            /home/runner/.rubies/jruby-9.3.2.0/lib/ruby/stdlib/rubygems/specification.rb:758:in `_all'
            /home/runner/.rubies/jruby-9.3.2.0/lib/ruby/stdlib/rubygems/specification.rb:956:in `each'
            org/jruby/RubyEnumerable.java:1710:in `any?'
            /home/runner/.rubies/jruby-9.3.2.0/lib/ruby/stdlib/rubygems/resolver/activation_request.rb:111:in `installed?'
            /home/runner/.rubies/jruby-9.3.2.0/lib/ruby/stdlib/rubygems/request_set.rb:173:in `block in install'
    ```

    I'm not sure how this error is happening, but I think there's no need to
    copy the `@ignored` instance variable when materializing stub
    specifications. This instance variable is used to not print a warning
    about missing extensions more than once for each gem upon gem
    activation, but as far as I can see, it's only used by methods that work
    on specification stubs. Once specifications are materialized, I think
    it can be safely ignored.

    https://github.com/rubygems/rubygems/commit/301cecd5a7

commit 5917f49ad03cd3b2c13d3eea85c969a113b83bf8
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-01-05 05:38:50 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-01-05 05:38:50 +0900

    Fix documentation for Dir.glob

    Dir.glob("*", File::FNM_DOTMATCH) no longer includes ".." in the
    returned array as of Ruby 3.1.

    Fixes [Bug #18436]

commit 44379805b0859179ed4c9fb68bb2e5e95720cc3a
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-05 03:54:21 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-05 04:46:20 +0900

    Fix crash on bootup when RGENGC_CHECK_MODE=2 with GC stress

    We need to unshare the array loaded_features because the shared root
    could be old gen (while loaded_features is young) which causes a WB
    miss.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5392

commit 9c15da0fd4f9092f6b1b18191a0714932b20ef5b
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2022-01-05 03:57:45 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-05 03:57:45 +0900

    Enhanced RDoc for IO (#5381)

    Treats:

        #lineno
        #lineno=
        #readline
        #readlines
        #each_line
        #each_byte
        #each_char
        #each_codepoint

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit 9e0a91d0640600f2dfd7fc1d5fae6667019c9ca5
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-01-05 02:13:19 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2022-01-05 03:03:18 +0900

    Don't segfault if Warning.warn is undefined

    Check that there is a method entry for the method before passing
    it to rb_method_entry_arity.

    Fixes [Bug #18458]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5391

commit ad007bc6ea1c75c2547be2481fba60b38dd1add1
  Author:     Matt Valentine-House <matt@eightbitraptor.com>
  AuthorDate: 2021-11-16 06:28:20 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-05 00:27:46 +0900

    Switch `is_pointer_to_heap` to use library bsearch

    This commit switches from a custom implemented bsearch algorithm to
    use the one provided by the C standard library.

    Because `is_pointer_to_heap` will only return true if the pointer
    being searched for is a valid slot starting address within the heap
    page body, we've extracted the bsearch call site into a more general
    function so we can use it elsewhere.

    The new function `heap_page_for_ptr` returns the heap page for any heap
    page pointer, regardless of whether that is at the start of a slot or
    in the middle of one.

    We then use this function as the basis of `is_pointer_to_heap`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5187

commit 615e9b28658c5b44a4474e04a53b84ae83b8e3fd
  Author:     Peter Zhu <peter@peterzhu.ca>
  AuthorDate: 2022-01-04 22:59:32 +0900
  Commit:     Peter Zhu <peter@peterzhu.ca>
  CommitDate: 2022-01-04 23:46:36 +0900

    [Feature #18364] Add GC.stat_heap to get stats for memory heaps

    GC.stat_heap will return stats for memory heaps. This is
    used for the Variable Width Allocation feature.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5177

commit e9a4cc02b491fc8a2936f51b9f94ddcd77dd67f7
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-01-04 23:18:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-04 23:18:37 +0900

    [ruby/error_highlight] Add a test to check if it is robust against a spoofed filename

    Previously, RubyVM::AST.of opened a wrong file if the iseq's file path is spoofed.

    ```
    module Dummy
      binding.irb
    end
    ```

    ```
    $ ruby test.rb

    From: test.rb @ line 2 :

        1: module Dummy
     => 2:   binding.irb
        3: end

    irb(Dummy):001:0> foo
    /home/mame/work/ruby/local/lib/ruby/3.1.0/error_highlight/base.rb:412:in `spot_colon2': undefined method `last_lineno' for nil:NilClass (NoMethodError)

          if nd_parent.last_lineno == @node.last_lineno
                      ^^^^^^^^^^^^
    ```

    Found by @kateinoigakukun

    This issue is already fixed in the interpreter side.
    This change just adds a test for the case.

    https://github.com/ruby/error_highlight/commit/f3626b9032

commit 11b1ebe606a82bcdcb4ff5568f0302c5470d0048
  Author:     Christian Boos <cboos@bct-technology.com>
  AuthorDate: 2021-12-30 07:10:21 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-04 23:09:01 +0900

    [ruby/error_highlight] Fix the spurious TypeError.

    When we have no backtrace locations, we can't have the highlight,
    so just return the message.

    https://github.com/ruby/error_highlight/commit/9f5c639494

commit e22218b510ec6befb385a6dda92d4a178607ebc7
  Author:     Christian Boos <cboos@bct-technology.com>
  AuthorDate: 2021-12-30 07:03:41 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-04 23:09:00 +0900

    [ruby/error_highlight] Reproduce the error seen when calling .to_s in embedded Ruby

    The test fails with the following error:

    Error: test_simulate_funcallv_from_embedded_ruby(ErrorHighlightTest): TypeError: wrong argument type nil (expected method)

    https://github.com/ruby/error_highlight/commit/52943c9cd2

commit b673e9a3040335b63cbf216e66b147f2b83828a9
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-01-04 17:52:07 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-01-04 17:52:07 +0900

    Fix the previous commit

commit 426ddbfff5e3106db52456e2b91a23f2f1644872
  Author:     Yusuke Endoh <mame@ruby-lang.org>
  AuthorDate: 2022-01-04 17:34:28 +0900
  Commit:     Yusuke Endoh <mame@ruby-lang.org>
  CommitDate: 2022-01-04 17:34:28 +0900

    test/ruby/test_method.rb: Fix a random failure during `make COVERAGE=1`

    This fixes the following failure.

    ```
    1) Error:
    TestMethod#test_method_list:
    NoMethodError: undefined method `<=>' for #<BasicObject:0x00007f7757e7eb60>

          mods = mods.sort_by {|m| m.name }
                     ^^^^^^^^
    ```
    https://github.com/ruby/actions/runs/4699487470?check_suite_focus=true

    TestNoMethodError#test_to_s creates an anonymous module whose `#name`
    method returns a BasicObject.

    https://github.com/ruby/ruby/blob/f0669fb6cbdbad499974252ef2d955a608d0adc1/test/ruby/test_nomethod_error.rb#L95-L99

    TestMethod#test_method_list uses `ObjectSpace.each_object(Module)` to
    gather all Modules and attempts to sort them by `#name`.
    But the anonymous module returns a BasicObject, which leads to the test
    failure above.

commit 47bf64a26d3d95a312ea5cf5d94ee1d2104f5e26
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2022-01-04 17:25:30 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2022-01-04 17:25:30 +0900

    Use omit instead of skip: test/ruby/**/*.rb

commit f0669fb6cbdbad499974252ef2d955a608d0adc1
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2022-01-04 16:32:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-04 16:38:17 +0900

    [ruby/optparse] Use `require_relative` for internal requires (https://github.com/ruby/optparse/pull/28)

    https://github.com/ruby/optparse/commit/e4f2682128

commit 5074aa19841dac0c1fcb037cd8306c5fe8e8516a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-04 13:30:14 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-04 14:59:18 +0900

    [rubygems/rubygems] Test the actual checksums of the mock gems

    https://github.com/rubygems/rubygems/commit/2b42630959

commit 0bfb406b7577e733873f59a108795b59fab3c264
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-04 08:37:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-04 14:59:17 +0900

    [rubygems/rubygems] Fix the test to use the mock gem path

    "NUL.*" means the NUL device on Windows, as well as mere "NUL",
    and no data is read.

    https://github.com/rubygems/rubygems/commit/e2c7d22745

commit 8f9623741a2cfe8d26af44c3a4f13dffc88fe834
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-04 00:56:54 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-04 14:59:17 +0900

    [rubygems/rubygems] Append a newline to the checksum file

    https://github.com/rubygems/rubygems/commit/48ea2778e9

commit c2e8e1f6a43b867c8e08efa55467bcabd0f6ab6b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-04 00:24:58 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-04 14:59:16 +0900

    [rubygems/rubygems] Fix checksum

    Calculate the checksum of the content, not the given pathname at
    the build time itself.

    https://github.com/rubygems/rubygems/commit/b60ee97ee9

commit 67612dadbca5ddeba1c979e4838739bf7430a7cf
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2022-01-04 08:18:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-04 08:25:58 +0900

    [ruby/net-http] Handle invalid use of IP addresses in SNI

    Server Name Indication does not allow IP addresses (RFC 6066, section 3:
    `Literal IPv4 and IPv6 addresses are not permitted in "HostName".`).

    Recent versions of LibreSSL enforce this restriction, which raises
    when setting the hostname to an IP address (s.hostname=), before
    attempting to setup the SSL connection.

    Since the certificate used in the test is already for localhost,
    we cannot connect to localhost.  However, as all the test does is
    check for a specific exception, just modify the regexp used so it
    handles both cases.

    https://github.com/ruby/net-http/commit/6ab399db45

commit 3ae8b115c2fad3ed71209ff56813fff2e4a8ad3b
  Author:     Alan Wu <alanwu@ruby-lang.org>
  AuthorDate: 2022-01-04 02:43:23 +0900
  Commit:     Alan Wu <alanwu@ruby-lang.org>
  CommitDate: 2022-01-04 02:43:23 +0900

    YJIT: Fix confusing self reference when initializing variable

commit 980bf94f022116308fb7f95f697a85dc24f5884a
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2020-07-27 14:54:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-03 22:33:38 +0900

    Kernel#=~: delete

    Has been deprecated since ebff9dc10e6e72239c23e50acc7d3cbfdc659e7a.

commit 66e9256147c77a1b4f0ae29a841b4042600f004c
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-03 07:07:06 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-03 07:06:28 +0900

    [ruby/reline] Remove test TODO comments that have been confirmed by E2E tests

    https://github.com/ruby/reline/commit/2ed77b693f

commit c8694303eef1f535b24b2fa43ab99a241fd51c10
  Author:     Soutaro Matsumoto <matsumoto@soutaro.com>
  AuthorDate: 2022-01-02 20:24:20 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-02 20:24:20 +0900

    Update RBS to skip testing `Kernel#=~` (#5386)

  Notes:
    Merged-By: soutaro <matsumoto@soutaro.com>

commit 03d97cc966fe35cd571a5260c01a9f50cbe60b2a
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-01-02 17:47:50 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2022-01-02 17:47:50 +0900

    Remove UTF-8 from documentation.

commit e7c2d5cc024207dae91c19e9e0d0b1df43ec1b7d
  Author:     Victor Shepelev <zverok.offline@gmail.com>
  AuthorDate: 2022-01-02 17:43:01 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-02 17:43:01 +0900

    [DOC] Adjust IO::Buffer docs (#5374)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 6f53425825eb71d71c7fdd424801a2cd6da47e16
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-02 15:05:02 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-02 15:05:02 +0900

    NEWS: Removed constants

commit 462079611a7d68852d80671800b698f9f6e69e88
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-02 14:54:03 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-02 15:03:29 +0900

    [ruby/etc] Remove deprecate constants under Struct

    https://github.com/ruby/etc/commit/143edbd215

commit eb294491c00ec3986d619a92008f3b864be0daf4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-02 14:53:30 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-02 15:03:05 +0900

    [ruby/etc] bump up to 1.4.0

    https://github.com/ruby/etc/commit/ca41f182f6

commit 91d09ca95beb990a451f8f6c9ea7bc377be62b93
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-02 14:34:49 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-02 14:52:31 +0900

    [ruby/etc] bump up to 1.3.1

    https://github.com/ruby/etc/commit/82dd69a4cf

commit bb0a725f1f0c1c33c0b058e876139c3a9025999c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-02 14:26:09 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-02 14:52:28 +0900

    [ruby/etc] [DOC] Refine Etc::Passwd#passwd description

    https://github.com/ruby/etc/commit/17b99fe42e

commit 314effdf77e84aac0e6ffd7bce3af41271463c22
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-02 14:22:59 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-02 14:52:27 +0900

    [ruby/etc] [DOC] Document Etc::Passwd and Etc::Group as classes

    https://github.com/ruby/etc/commit/106429f10b

commit 9135a3e864f03ba36eeb4bd2f145459dd423f712
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-02 14:07:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-02 14:52:25 +0900

    [ruby/etc] [DOC] Add document task

    https://github.com/ruby/etc/commit/8c8c6198e2

commit 546dbcfe6944b1f05fdd20fad0ed8b697390d463
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-02 13:22:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-02 13:29:01 +0900

    [ruby/etc] Update ruby versions

    https://github.com/ruby/etc/commit/959416b18a

commit 76181ae940c485d80990941d064f8fdc26b3b4ee
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-02 11:44:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-02 11:44:07 +0900

    [ruby/reline] Check capname of tigetstr/tigetflag/tigetnum

    Incorrect arguments can cause SEGV.

    https://github.com/ruby/reline/commit/a58748bcf9

commit f375b6414d20209ce5d56b7d2f016c286293b075
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-02 11:42:34 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-02 11:44:06 +0900

    [ruby/reline] Add test_tigetstr_with_error

    https://github.com/ruby/reline/commit/1ca779740a

commit 6d1b406dc8dea6f618ae14899dc6b7abf23470d4
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-02 11:24:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-02 11:24:14 +0900

    [ruby/reline] Version 0.3.1

    https://github.com/ruby/reline/commit/9ab5850444

commit 85f304b9315815f00c54db682a5bb3188c3fa2e8
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-02 10:17:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-02 10:27:09 +0900

    [ruby/reline] Implement Reline::Terminfo.tigetnum

    https://github.com/ruby/reline/commit/695212d5d2

commit 071653ecd79287661c795400797a5402c4322129
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-01 22:17:14 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-02 02:04:05 +0900

    Run the prerequisites of test-bundled-gems in order

commit 530586fafca6e3ea73d3b19129b31a7aaff05d27
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-02 00:40:24 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-02 00:39:45 +0900

    [ruby/reline] Fix the definition of tigetflag() in comment...

    https://github.com/ruby/reline/commit/af4d77ba09

commit 0af9eab08e41167241150439e82041504e2ad26c
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-01 23:13:47 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-01 23:13:32 +0900

    [ruby/reline] Consolidate tests that were unnecessarily divided

    https://github.com/ruby/reline/commit/62eec42e4a

commit 7deee741ab2aeb74304f2e09be7783c0600d1afe
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-01 23:12:45 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-01 23:12:07 +0900

    [ruby/reline] Remove unnecessary qualifiers on definition of comments

    https://github.com/ruby/reline/commit/abc1e4ee88

commit 6300c4dcc3e040bdaf0f36e7be53e7c0e8c57ac0
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2022-01-01 23:03:32 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2022-01-01 23:06:53 +0900

    [ruby/reline] Implement Reline::Terminfo.tigetflag

    https://github.com/ruby/reline/commit/0451ed7a28

commit fae0b664315c23ef7db451f6241d256c12217051
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-01 11:36:54 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-01 18:55:52 +0900

    Remove deprecated Random::DEFAULT [Feature #17351]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5382

commit 84891bffe8e68e12a7881d2bbae0db8267035e8a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2020-11-27 21:42:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-01 18:55:52 +0900

    Remove unnecessary Random::DEFAULT expectations

    The respond_to expectation just suffice as duck-typing.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5382

commit 789da481fc59ffb1a0d4e4deb0a17ec4fcbd1d58
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-01 16:57:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-01 17:02:04 +0900

    Prefer RBOOL

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5385

commit 069cca6f7459da5cc502d0c51f60a9813c611b31
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-01 15:41:00 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-01 17:02:04 +0900

    Negative RBOOL usage

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5385

commit 77ee47188efc64fe8b508494e9b11e8ed481d33c
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2022-01-01 16:06:07 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2022-01-01 17:01:40 +0900

    Make the internal predict `int_zero_p` return a bool

commit 243320d22fcd0b9b7ee4cc5b1b420dcd63d87f5f
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2022-01-01 16:23:47 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2022-01-01 16:23:47 +0900

    Fix incorrect minimum read length. (#5353)

  Notes:
    Merged-By: ioquatix <samuel@codeotaku.com>

commit 5414de4b6e4372af832e338f8eb7a9fe8de17c84
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2021-12-31 04:13:37 +0900
  Commit:     John Hawthorn <john@hawthorn.email>
  CommitDate: 2022-01-01 10:30:47 +0900

    YJIT: Fix SP index with optarg and unordered kwarg

    Previously when we were calling a method with an optional argument and
    multiple keywords arguments which weren't in the order the receiver
    expected we would use the wrong SP index to rearrange them.

    Fixes Bug #18453

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5379

commit f59b2e440ea7f4dcc274f54ef1486f90b2ad02bd
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-31 23:59:50 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-31 23:59:50 +0900

    NEWS: Removed methods

commit 60e9aa57339a0b4e28f252674f2f033ae1a90888
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-31 23:59:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-31 23:59:04 +0900

    NEWS: Removed C APIs

commit a493732c8e4d038885ae40c71dd3fc5118f36809
  Author:     U.Nakamura <usa@ruby-lang.org>
  AuthorDate: 2021-12-31 20:13:11 +0900
  Commit:     U.Nakamura <usa@ruby-lang.org>
  CommitDate: 2021-12-31 20:13:11 +0900

    re-enabled YJIT on x64-mswin64

    note that YJIT does not work correctly on the platform now.

commit 93591d31b07ca6c644b6322ed2936b455cfa0b84
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-30 23:32:35 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-31 10:53:54 +0900

    Use rb_cObject instead of rb_cData

commit 87c03694e60c451e5f52829cd21c70305a952543
  Author:     Burdette Lamar <BurdetteLamar@Yahoo.com>
  AuthorDate: 2021-12-31 07:46:24 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2021-12-31 07:46:24 +0900

    Enhanced RDoc for IO (#5367)

    Adds sections to class RDoc:

        Lines
            Line Separator
            Line Limit
            Line Number

    Revises example text file t.txt to:

        Include paragraphs (separated by double line separator).
        Avoid being too long.

    Revises examples that use the changed example file.

    There are several other methods that will point to the added sections.

  Notes:
    Merged-By: BurdetteLamar <BurdetteLamar@Yahoo.com>

commit f53dfab95c30e222f67e610234f63d3e9189234d
  Author:     Jeremy Evans <code@jeremyevans.net>
  AuthorDate: 2021-11-20 02:38:22 +0900
  Commit:     Jeremy Evans <code@jeremyevans.net>
  CommitDate: 2021-12-31 07:37:42 +0900

    Add support for anonymous rest and keyword rest argument forwarding

    This allows for the following syntax:

    ```ruby
    def foo(*)
      bar(*)
    end
    def baz(**)
      quux(**)
    end
    ```

    This is a natural addition after the introduction of anonymous
    block forwarding.  Anonymous rest and keyword rest arguments were
    already supported in method parameters, this just allows them to
    be used as arguments to other methods.  The same advantages of
    anonymous block forwarding apply to rest and keyword rest argument
    forwarding.

    This has some minor changes to #parameters output.  Now, instead
    of `[:rest], [:keyrest]`, you get `[:rest, :*], [:keyrest, :**]`.
    These were already used for `...` forwarding, so I think it makes
    it more consistent to include them in other cases.  If we want to
    use `[:rest], [:keyrest]` in both cases, that is also possible.

    I don't think the previous behavior of `[:rest], [:keyrest]` in
    the non-... case and `[:rest, :*], [:keyrest, :**]` in the ...
    case makes sense, but if we did want that behavior, we'll have to
    make more substantial changes, such as using a different ID in the
    ... forwarding case.

    Implements [Feature #18351]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5148

commit 2d2ee338f3427d39d9977c77b09e5d335b6e362b
  Author:     Alan Wu <XrXr@users.noreply.github.com>
  AuthorDate: 2021-12-30 12:06:19 +0900
  Commit:     Alan Wu <XrXr@users.noreply.github.com>
  CommitDate: 2021-12-30 22:21:51 +0900

    YJIT: Avoid pointer size assumption with intptr_t

    Cast to `void *` first to use the definition of `intptr_t`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5376

commit d5fc3fa4dbf2d6decb6c2582eed6fd2d8003c70c
  Author:     nagachika <nagachika@ruby-lang.org>
  AuthorDate: 2021-12-29 19:31:47 +0900
  Commit:     U.Nakamura <usa@ruby-lang.org>
  CommitDate: 2021-12-30 21:16:29 +0900

    win32/win32.c Fix PROT_EXEC bit flag check for FlushInstrucitonCache()

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5372

commit db547a3bc457e55c07880ae5d2d77f55b93775eb
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-28 13:54:16 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-30 21:13:11 +0900

    [ruby/win32ole] Undefine allocator of WIN32OLE_VARIABLE to get rid of warning

    https://github.com/ruby/win32ole/commit/27d0fdc622

commit 31c69d66d2200566695a0c88dd68cdd04a77614d
  Author:     YO4 <ysno@ac.auone-net.jp>
  AuthorDate: 2021-12-27 19:17:33 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2021-12-30 20:53:21 +0900

    [ruby/reline] windows fix scroll

    https://github.com/ruby/reline/commit/c559d0f7a9

commit 2a311594cc02eace6122d7e5715ae7ac61bc40a7
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2021-12-30 20:47:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2021-12-30 20:52:06 +0900

    [ruby/reline] Omit a test on Ruby 2.6

    Some tokens in Ruby 2.6 have difference information than in 2.7 and later,
    but 2.6 will soon be out of support.

    https://github.com/ruby/reline/commit/f3bc698385

commit 9295732af8a8f27c74abbe5ad70abc95e0e65565
  Author:     aycabta <aycabta@gmail.com>
  AuthorDate: 2021-12-27 23:14:03 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2021-12-30 20:52:06 +0900

    [ruby/reline] Use ripper_lex_without_warning

    https://github.com/ruby/reline/commit/b7536dc224

commit f589242e750939eecf2a140fa3182dc5e387f157
  Author:     ima1zumi <mariimaizumi5@gmail.com>
  AuthorDate: 2021-12-30 11:16:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2021-12-30 20:23:58 +0900

    [ruby/reline] Use unix_line_discard when Ctrl-u is entered

    The kill-line was called when C-u was entered, so it is now called unix-line-discard.

    In readline(3):

    > unix-line-discard (C-u)
    >               Kill backward from point to the beginning of the line.
    >               The killed text is saved on the kill-ring.

    https://github.com/ruby/reline/commit/27570d195e

commit 8727161fcf51a3d9157755f410fc3af68bcd29f0
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-30 18:52:04 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-30 18:52:04 +0900

    Flush deprecation declarations for versions older than 3.0

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5378

commit a90d188b578333c7fb74e51ffe004a208196db82
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-30 13:52:22 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-30 15:33:40 +0900

    Remove declarations of deprecated functions

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5377

commit 1954a95f8bf71f61ce9996a0d8a34b18bb56da3e
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-30 04:53:26 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2021-12-30 07:02:30 +0900

    [rubygems/rubygems] Better way to join path components

    The current way works, but error messages show duplicate "/" in paths,
    which is weird.

    https://github.com/rubygems/rubygems/commit/9123deb4fa

commit 002fa2859962f22de8afdbeece04966ea57b7da9
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-29 16:15:36 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-29 20:53:43 +0900

    On 64bit macOS, enlarge heap pages to reduce mmap calls [Bug #18447]

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5371

commit 239e71c0af79e0c4b91cc21e7dff44a6c282d7b1
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2021-12-29 19:29:30 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2021-12-29 20:12:36 +0900

    [ruby/reline] Use omit instead of skip

    https://github.com/ruby/reline/commit/a538de421f

commit f25c2e6336ed640fe71a296c6c429f9d455d8008
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2021-12-29 19:27:58 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2021-12-29 19:27:58 +0900

    Use omit instead of skip: test/ruby/enc/**/*.rb

commit 6d572902102d9f7b86e5d18a2855e34fd69d94b0
  Author:     git[bot] <svn-admin@ruby-lang.org>
  AuthorDate: 2021-12-29 16:02:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2021-12-29 16:02:15 +0900

    Update bundled gems list at 2021-12-29

commit 4e4c4fab3c25a056688939ae8e003a049fc401ee
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-29 14:09:37 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2021-12-29 14:09:37 +0900

    YJIT: Use proper size prefix and conversion where IL32LLP64

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5369

    Merged-By: nobu <nobu@ruby-lang.org>

commit 5ca51ddde81cd7f338d0dd495ceb8569def60647
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-29 11:50:28 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-29 11:50:28 +0900

    [DOC] Integer#coerce deals with also Float

commit 27765a75025d3e13d512b52dd3755ec1e7da004f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-29 11:49:06 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-29 11:49:06 +0900

    Fix the warning in rb_big2dbl, Bignum is no longer defined

commit 3238164f9c2314577f8adc544bede132bd54ad2b
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-29 09:22:12 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-29 11:40:04 +0900

    `ioctl_narg_len` is used only when ioctl(2) is available

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5368

commit d75f7078c831d45ab5ba2fae4fbb308d01a21e46
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-29 09:29:06 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-29 09:37:59 +0900

    [ruby/io-console] bump up to 0.5.11

    https://github.com/ruby/io-console/commit/ad3805200c

commit e4cd319f3d6560b76dbc1c7e89aa4d790a2d1e43
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2021-12-29 09:37:01 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2021-12-29 09:37:05 +0900

    [ruby/irb] Prefer `IO#wait_readable` over `IO#select`. (https://github.com/ruby/irb/pull/323)

    https://github.com/ruby/irb/commit/1c03bd3373

commit f27eb8148f5a72bbacfebfecc7de9305471bb5c9
  Author:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  AuthorDate: 2021-12-29 09:27:40 +0900
  Commit:     Samuel Williams <samuel.williams@oriontransfer.co.nz>
  CommitDate: 2021-12-29 09:27:40 +0900

    Sync io-console gem.

commit 38a3965dea1e811c7c1eebbc27b721e668b4d392
  Author:     John Hawthorn <john@hawthorn.email>
  AuthorDate: 2021-12-27 12:50:46 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-29 08:57:34 +0900

    YJIT: Fix warning in iface.c

    Fixes warning:

        <internal:yjit>:16: warning: undefining the allocator of T_DATA
        class RubyVM::YJIT::Block

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5361

commit c9af8a32a05b26d45c5c8967902b3a724f3c1be6
  Author:     Koichi Sasada <ko1@atdot.net>
  AuthorDate: 2021-12-28 17:58:39 +0900
  Commit:     Koichi Sasada <ko1@atdot.net>
  CommitDate: 2021-12-29 00:22:02 +0900

    `USE_RUBY_DEBUG_LOG` doesn't check `RUBY_DEVEL`

    `USE_RUBY_DEBUG_LOG` was only defined when `RUBY_DEVEL` is defined.
    This patch removes this dependency (`USE_RUBY_DEBUG_LOG` is defined
    independently from `RUBY_DEVEL`).

    Do not commit a patch which enables `USE_RUBY_DEBUG_LOG`.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5366

commit 763592d208883714f3d255eb5fb1bee649e9613b
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2021-12-28 21:13:39 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2021-12-28 21:13:39 +0900

    Use omit instead of skip: test/-ext-/**/*.rb

commit 55cdb8b01392848e426521f1589d51dc0fca9608
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2021-12-28 20:29:43 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2021-12-28 20:29:54 +0900

    Use omit instead of skip: test/socket/**/*.rb

commit bf97415c02b11a8949f715431aca9eeb6311add2
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2020-11-30 23:33:20 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-28 18:36:30 +0900

    Removed deprecated Dir.exists? and File.exists?

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5352

commit 40e7aefebad412bde50fa9bdadcc8405f7605355
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2020-12-28 11:58:21 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-28 18:35:03 +0900

    Remove obsolete Fixnum and Bignum

  Notes:
    Merged: https://github.com/ruby/ruby/pull/3927

commit b948b1a4e1f8a4a697bbc76873d728afcdc1694a
  Author:     Masataka Pocke Kuwabara <kuwabara@pocke.me>
  AuthorDate: 2021-12-28 18:18:40 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2021-12-28 18:18:40 +0900

    Fix RBS test failures of taint/trust (#5364)

  Notes:
    Merged-By: pocke <p.ck.t22@gmail.com>

commit 63358581bca80c7a885228ac841b0ae9c4ca11b5
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2021-12-28 16:35:12 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2021-12-28 16:35:13 +0900

    Fix weird MinGW failure notifications

    It's been "MinGW / Array", but it will be "MinGW MINGW64 / check" or
    "MinGW UCRT64 / check" by this.

commit 3cd1731920c4fc038870e85dc8c9abf5739fbf71
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2021-12-28 15:28:15 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2021-12-28 15:30:34 +0900

    Skip testing --enable-all in MinGW for now

    If we don't intend to support this platform, we should probably enable
    MJIT for MinGW. However, since the code for https://bugs.ruby-lang.org/issues/18439
    is in place, I'm adjusting the test for it in the meantime.

    following up https://github.com/ruby/ruby/pull/5363

commit eb49aa311932665ce7ce67fb461e288f46b83c84
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2021-12-28 15:22:09 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2021-12-28 15:22:09 +0900

    Fix test_rubyoptions for MinGW (#5363)

    * Fix test_rubyoptions for MinGW

    follows up a74a2f456ad549025861be80f50cc3f0dd6646dd

    * Require jit_support

    * Fix MinGW platform

    * Handle MinGW UCRT

    and fix the prefix

    * Make it more robust

  Notes:
    Merged-By: k0kubun <takashikkbn@gmail.com>

commit a6e5d70346adc84ffde2d1c153ffb5b39dd2d388
  Author:     卜部昌平 <shyouhei@ruby-lang.org>
  AuthorDate: 2021-12-28 14:50:26 +0900
  Commit:     卜部昌平 <shyouhei@ruby-lang.org>
  CommitDate: 2021-12-28 14:52:55 +0900

    USE_RVARGC released; why not CI

commit 91b7be7708797d8d3057fb6f2223645b4b85be71
  Author:     Takashi Kokubun <takashikkbn@gmail.com>
  AuthorDate: 2021-12-28 12:57:04 +0900
  Commit:     Takashi Kokubun <takashikkbn@gmail.com>
  CommitDate: 2021-12-28 12:57:30 +0900

    Do not support non-x86_64 platforms

    This was probably not intended in 85a426dc8678f04a78ffd799943b690ce2984c49.

commit 95d2e06c2b465545c8166e5a5edb582ff1d9bcbe
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-26 22:42:02 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2021-12-28 04:38:31 +0900

    [rubygems/rubygems] Fix `bundle update --bundler` no longer updating lockfile

    https://github.com/rubygems/rubygems/commit/a053b7e4d4

commit be476f38f9a467a25b81dabe42ca120924527395
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-21 18:37:46 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2021-12-27 22:57:46 +0900

    [rubygems/rubygems] Don't crash when updating to an unsupported `rubygems-update` version

    https://github.com/rubygems/rubygems/commit/b0badcd00a

commit ebb4044decb293fde12b2d71e822be78034b90b1
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-22 17:28:31 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2021-12-27 21:32:32 +0900

    [rubygems/rubygems] Run `bundle install` in verbose mode

    To see if we get more information when this fails.

    https://github.com/rubygems/rubygems/commit/853d33fdc3

commit dd022c1f768d4e633f047ec140474b985736ccc9
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-21 18:04:15 +0900
  Commit:     git[bot] <svn-admin@ruby-lang.org>
  CommitDate: 2021-12-27 21:32:32 +0900

    [rubygems/rubygems] Don't redownload `rubygems-update` package if already there

    This makes it easier to test the upgrade process locally and should be
    more efficient in certain cases where the user has already upgraded in
    the past.

    https://github.com/rubygems/rubygems/commit/ed6cc88494

commit 56a0f34d318b84d9da11b2be5c0a35a1e27d417f
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-11-03 19:10:09 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2021-12-27 18:11:48 +0900

    [ruby/drb] Fix method names "regist" as "register"

    https://github.com/ruby/drb/commit/9a1ff286bc

commit a74a2f456ad549025861be80f50cc3f0dd6646dd
  Author:     U.Nakamura <usa@ruby-lang.org>
  AuthorDate: 2021-12-27 17:29:16 +0900
  Commit:     U.Nakamura <usa@ruby-lang.org>
  CommitDate: 2021-12-27 17:29:16 +0900

    Now YJIT can be enabled on mswin64

commit 4e007d705c7879a843cba4ef9d4bea8a422de3f9
  Author:     U.Nakamura <usa@ruby-lang.org>
  AuthorDate: 2021-12-27 17:15:09 +0900
  Commit:     U.Nakamura <usa@ruby-lang.org>
  CommitDate: 2021-12-27 17:15:09 +0900

    Fix some boneheads

commit 9790f54bff387b57579dc6f588bc29735eeae85b
  Author:     U.Nakamura <usa@ruby-lang.org>
  AuthorDate: 2021-12-27 16:38:29 +0900
  Commit:     U.Nakamura <usa@ruby-lang.org>
  CommitDate: 2021-12-27 16:38:29 +0900

    Call FlushInstrucitonCache() when PROT_EXEC is specified to mprotect

commit 85a426dc8678f04a78ffd799943b690ce2984c49
  Author:     U.Nakamura <usa@ruby-lang.org>
  AuthorDate: 2021-12-27 15:56:23 +0900
  Commit:     U.Nakamura <usa@ruby-lang.org>
  CommitDate: 2021-12-27 15:56:23 +0900

    Tiny mmap emulation for Windows

    - prerequisite of supporting YJIT with VC++.
    - note that now can specfily `--yjit` on mswin64, but not enabled
      YJIT'ed code because of YJIT requires `OPT_DIRECT_THREADED_CODE`
      or `OPT_CALL_THREADED_CODE` in `rb_yjit_compile_iseq`.

commit d6311cb1ca5860a6e0cbf6f87c1e0ae9e099f61e
  Author:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  AuthorDate: 2021-12-27 09:41:55 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2021-12-27 10:45:36 +0900

    Track RubyGems 3.4.0dev and Bundler 2.4.0dev

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5350

commit b7e5ce08ff0196c1a9ed885670495cf09a02bbc3
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-24 09:46:04 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2021-12-27 10:45:36 +0900

    [rubygems/rubygems] Don't add verbose flag so opaquely for realworld specs

    https://github.com/rubygems/rubygems/commit/fa8455ef7c

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5350

commit fb0737654cc20cf2be5182e05981a216ba6d3789
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-24 09:36:14 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2021-12-27 10:45:36 +0900

    [rubygems/rubygems] Move setup to the spec that uses it

    https://github.com/rubygems/rubygems/commit/7cf0a8fa8e

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5350

commit 810c1b88ca65703859debe9c415bfd5cbc8391ad
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-24 09:35:12 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2021-12-27 10:45:36 +0900

    [rubygems/rubygems] Remove unused include

    https://github.com/rubygems/rubygems/commit/a581a1dd50

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5350

commit 03903f23c277b4dae8174347f7a5081b3a776a08
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-27 03:44:24 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2021-12-27 10:45:36 +0900

    [rubygems/rubygems] Remove the rest of the `RUBY_VERSION` monkeypatching

    Since we're at it. This generates a bunch of warnings and seems like a
    brittle way to test things, so let's get rid of it.

    https://github.com/rubygems/rubygems/commit/f5d45520e0

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5350

commit ca3a2e46e8098bc66e2ab1589934bb40f00b78b1
  Author:     David Rodríguez <deivid.rodriguez@riseup.net>
  AuthorDate: 2021-12-27 01:41:21 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2021-12-27 10:45:36 +0900

    [rubygems/rubygems] Update some specs to pass ruby-head CI

    These specs were monkeypatching `RUBY_VERSION`, but that obviously
    doesn't change the running ruby to behave any different.

    The removal of some features, in particular, `String#untaint`, made
    these specs fail, because untaint is no longer available under ruby-core
    and bundler calls `untaint` when `RUBY_VERSION` is less than "2.7",
    which these specs were overwriting it to be.

    Rewrite these specs to not overwrite `RUBY_VERSION`, but still test the
    same things.

    https://github.com/rubygems/rubygems/commit/e8c7b92901

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5350

commit 73707e5c51f9244f62dcaec044e50d7c604fc654
  Author:     Masataka Pocke Kuwabara <kuwabara@pocke.me>
  AuthorDate: 2021-12-26 12:28:57 +0900
  Commit:     Hiroshi SHIBATA <hsbt@ruby-lang.org>
  CommitDate: 2021-12-27 10:45:36 +0900

    [rubygems/rubygems] Make SpecificationPolicy autoload constant

    It reduces memory usage about 204kb (1.4%).

    https://github.com/rubygems/rubygems/commit/b7d4b8c8a6

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5350

commit 9736cb890bb80924e7d1f3189232bfe60519bd29
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-27 08:56:00 +0900
  Commit:     GitHub <noreply@github.com>
  CommitDate: 2021-12-27 08:56:00 +0900

    Check if `Kernel#untaint` is defined instead of version comparison

    Probably `RUBY_VERSION` seems overwritten somewhere in the tests.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5349

    Merged-By: nobu <nobu@ruby-lang.org>

commit c956f979e5d05900315d2753d5c3b1389af8dae4
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-26 22:39:48 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-26 23:28:54 +0900

    Initialize Struct by calling with keyword arguments

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5348

commit abad017354a5e6a03582a8dde58c66caec2bc924
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-26 22:40:50 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-26 23:28:54 +0900

    Postpone fix of lookbehind with ss characters tentatively

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5348

commit 7c738ce5e649b82bdc1305d5c347e81886ee759a
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-26 18:02:09 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-26 23:28:54 +0900

    Remove deprecated rb_cData [Bug #18433]

    Also enable the warning for T_DATA allocator.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5348

commit 69f03c864eb193a163631d9a208fd64944b078dc
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-26 23:17:14 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-26 23:28:54 +0900

    Remove Refinement#include and Refinement#prepend

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5348

commit 39bc5de83394a380c9967df74e06c824186f8560
  Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  AuthorDate: 2021-12-26 18:07:12 +0900
  Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
  CommitDate: 2021-12-26 23:28:54 +0900

    Remove tainted and trusted features

    Already these had been announced to be removed in 3.2.

  Notes:
    Merged: https://github.com/ruby/ruby/pull/5348

commit 81c248924daf387118de5b37b16e08a937df73a3
  Author:     Yukihiro "Matz" Matsumoto <matz@ruby.or.jp>
  AuthorDate: 2021-12-25 23:56:01 +0900
  Commit:     Yukihiro "Matz" Matsumoto <matz@ruby.or.jp>
  CommitDate: 2021-12-26 23:22:26 +0900

    Development of 3.2.0 started.
