Project

General

Profile

Activity

From 10/21/2025 to 10/27/2025

Today

04:20 PM Bug #21648: [prism] ruby crashes for `for * in [10]; end`
@kddnewton can you mark for backport? Thanks! Earlopain (Earlopain _)
03:28 PM Bug #21648 (Closed): [prism] ruby crashes for `for * in [10]; end`
Applied in changeset commit:git|0b0da6c4b26f80ad6985722d3fc0f5cdee09125d.
----------
Correctly compile splats in for-loop index in prism
Fixes [Bug #21648]
This is a followup to https://github.com/ruby/ruby/pull/13597.
The added test ...
Earlopain (Earlopain _)
12:23 PM Bug #21648: [prism] ruby crashes for `for * in [10]; end`
https://github.com/ruby/ruby/pull/14963 Earlopain (Earlopain _)
10:39 AM Bug #21648 (Closed): [prism] ruby crashes for `for * in [10]; end`
```sh
$ ruby -e "for * in [10]; end"
-e:1: [BUG] Stack consistency error (sp: 15, bp: 14)
ruby 3.4.6 (2025-09-16 revision dbd83256b1) +PRISM [x86_64-linux]
-- Control frame information ----------------------------------------------...
Earlopain (Earlopain _)
03:28 PM Revision 0b0da6c4 (git): Correctly compile splats in for-loop index in prism
Fixes [Bug #21648]
This is a followup to https://github.com/ruby/ruby/pull/13597.
The added test passed but didn't emit the same instructions.
This also handles bare splats and aligns instructions for all cases
Earlopain (Earlopain _)
11:47 AM Revision 308fb9c8 (git): Fix a comment [ci skip]
nobu (Nobuyoshi Nakada)
09:22 AM Revision 2a9d15b9 (git): [ruby/json] parser.c: Fix indentation in json_decode_integer
https://github.com/ruby/json/commit/f228b30635 byroot (Jean Boussier)
09:21 AM Revision 14cbe0de (git): [ruby/json] Use locale indepenent version of `islapha`
https://github.com/ruby/json/commit/1ba1e9bef9 byroot (Jean Boussier)
07:53 AM Revision d0a6780d (git): [ruby/stringio] [DOC] Split the examples `StringIO` into the document file
https://github.com/ruby/stringio/commit/04ba28af00 nobu (Nobuyoshi Nakada)
07:35 AM Revision d17d49d4 (git): [ruby/rubygems] bundler_4_mode always return true
https://github.com/ruby/rubygems/commit/b2e1810067 hsbt (Hiroshi SHIBATA)
07:35 AM Revision 79684cea (git): [ruby/rubygems] Drop to support old git
https://github.com/ruby/rubygems/commit/687ffd7265 hsbt (Hiroshi SHIBATA)
07:33 AM Revision 6a1644dd (git): [ruby/rubygems] If we use shared GEM_HOME and install multiple versions, it may cause unexpected test failures.
```
Fetching gem metadata from https://gem.repo4/.
Resolving dependencies...
Resolving dependencies...
# $? => 0
cannot load such file -- diff/lcs
```
https://github.com/ruby/rubygems/commit/668b300261
hsbt (Hiroshi SHIBATA)
07:33 AM Revision 504a1ba7 (git): [ruby/rubygems] Use dummy gem instead of uri.
If we install uri-1.0.4 as default gems. The example may be failed with
version miss-match.
https://github.com/ruby/rubygems/commit/fd2dcb502b
hsbt (Hiroshi SHIBATA)
06:54 AM Revision 1b57e557 (git): [ruby/openssl] test: remove unused small test keys
Previous commits removed all usages of those small keys.
https://github.com/ruby/openssl/commit/f9d87d7912
rhenium (Kazuki Yamaguchi)
06:54 AM Revision d0ea9c0c (git): [ruby/openssl] ssl: update keys used in tests
Use generic keys whenever possible.
https://github.com/ruby/openssl/commit/73d6a25360
rhenium (Kazuki Yamaguchi)
06:54 AM Revision a9ba78e4 (git): [ruby/openssl] pkey: update keys used in tests
Use generic keys whenever possible.
https://github.com/ruby/openssl/commit/90d6af60b9
rhenium (Kazuki Yamaguchi)
06:54 AM Revision f90ca1a0 (git): [ruby/openssl] ocsp: update keys used in tests
Use generic keys whenever possible.
https://github.com/ruby/openssl/commit/cc4d40525c
rhenium (Kazuki Yamaguchi)
06:54 AM Revision 709aa728 (git): [ruby/openssl] ns_spki: update keys used in tests
Use generic keys whenever possible.
https://github.com/ruby/openssl/commit/ef4fa5e9b4
rhenium (Kazuki Yamaguchi)
06:54 AM Revision bf244356 (git): [ruby/openssl] asn1: update keys used in tests
Use generic keys whenever possible.
https://github.com/ruby/openssl/commit/689fc271b1
rhenium (Kazuki Yamaguchi)
06:54 AM Revision 1c709970 (git): [ruby/openssl] x509: update keys used in tests
Replace fixed-sized RSA keys with the generic rsa-{1,2,3}.pem keys.
Those test cases do not depend on specific keys or key sizes, and just
need several different keys.
Replace DSA keys with EC keys so that we can run more tests in the F...
rhenium (Kazuki Yamaguchi)
06:54 AM Revision e5ac2b89 (git): [ruby/openssl] cipher: various docs improvements
The EVP_CIPHER_CTX = OpenSSL::Cipher interface for AEAD ciphers is
notoriously complicated and full of pitfalls. I tried to clarify docs
so that users can hopefully connect the Ruby methods with the
corresponding OpenSSL man pages more e...
rhenium (Kazuki Yamaguchi)
06:36 AM Revision ecf5aa18 (git): [ruby/openssl] Sync History.md
rhenium (Kazuki Yamaguchi)
06:33 AM Revision b839deec (git): [ruby/openssl] Check NULL values for deprecated EVP_PKEY_get0() functions
In OpenSSL <= 1.1.1, EVP_PKEY_get0() always returned a valid object, so
a NULL check was not necessary. In OpenSSL 3.0, the function can return
NULL (https://docs.openssl.org/3.0/man7/migration_guide/#deprecated-function-mappings),
so gu...
stanhu (Stan Hu)
06:21 AM Revision db59619c (git): [ruby/rubygems] Fixup
https://github.com/ruby/rubygems/commit/9b3a5a8ae9cd
https://github.com/ruby/rubygems/commit/8f6eb4ac64
hsbt (Hiroshi SHIBATA)
05:51 AM Revision f6d2aef3 (git): [ruby/openssl] Update link to OpenSSL configuration file docs
https://github.com/ruby/openssl/commit/02ff964114 Tobias Haar
04:24 AM Revision e221a4b7 (git): [ruby/stringio] [DOC] Doc for StringIO#each
(https://github.com/ruby/stringio/pull/154)
https://github.com/ruby/stringio/commit/eca2588274
burdettelamar (Burdette Lamar)
04:23 AM Revision 2dd01c8f (git): [ruby/stringio] [DOC] Tweaks for StringIO#close_write
(https://github.com/ruby/stringio/pull/150)
https://github.com/ruby/stringio/commit/ea6e36f797
Co-authored-by: Sutou Kouhei <kou@cozmixng.org>
burdettelamar (Burdette Lamar)
03:42 AM Revision a1a3857c (git): [ruby/win32-registry] Use pathspecs to select needed files in the gem file
Exclude other git management files too.
https://github.com/ruby/win32-registry/commit/3be0188111
nobu (Nobuyoshi Nakada)
03:02 AM Revision 342dfd78 (git): [ruby/resolv] win32/resolv: fix loading of `NV Domain`
https://github.com/ruby/resolv/commit/da14f1f2fc fukunori03
01:52 AM Revision 4bd9cbd3 (git): Omit unknown DNS issue of macOS 26.1 beta
```
TestResolvDNS#test_no_server:
Test::Unit::ProxyError: Timeout::Error
/path/to/ruby/test/resolv/test_dns.rb:531:in 'TestResolvDNS#test_no_server'
```
hsbt (Hiroshi SHIBATA)
01:02 AM Revision fcf8b10b (git): [ruby/stringio] [DOC] Tweaks for StringIO#close_read
(https://github.com/ruby/stringio/pull/149)
https://github.com/ruby/stringio/commit/11995db341
burdettelamar (Burdette Lamar)
01:02 AM Revision daaa09bc (git): [ruby/stringio] [DOC] Tweaks for StringIO.closed_read?
(https://github.com/ruby/stringio/pull/152)
https://github.com/ruby/stringio/commit/7ded426718
burdettelamar (Burdette Lamar)
01:01 AM Revision 947e5baa (git): [ruby/stringio] [DOC] Tweaks for StringIO.closed_write?
(https://github.com/ruby/stringio/pull/153)
https://github.com/ruby/stringio/commit/3e9d576441
Co-authored-by: Sutou Kouhei <kou@cozmixng.org>
burdettelamar (Burdette Lamar)

10/26/2025

10:59 PM Revision 52ea2220 (git): Fix segfault when moving nested objects between ractors during GC
Fixes a segmentation fault when moving nested objects between ractors with GC stress enabled and YJIT.
The issue is a timing problem: `move_enter` allocates new object shells but leaves their contents uninitialized until `move_leave` co...
joshuay03 (Joshua Young)
10:46 PM Bug #21560: RUBY_MN_THREADS=1 causes large performance regression in Puma 7
Sent a PR to fix this https://github.com/ruby/ruby/pull/14952 andremuta (Andre Muta)
07:27 PM Revision b66fbd59 (git): Make rb_vm_ccs_invalidate_and_free static
peterzhu2118 (Peter Zhu)
07:04 PM Revision 9e49ee79 (git): [DOC] Tweaks for String#succ!
burdettelamar (Burdette Lamar)
07:04 PM Revision 5c683bd9 (git): [DOC] Tweaks for String#succ
burdettelamar (Burdette Lamar)
06:43 PM Bug #21640: Core Pathname is missing 3 methods / is partially-defined
Longtime rubyist here. I am the author of one of the Pathname PRs that kickstarted this discussion (#64). My PR adds the following methods to Pathname:
``` ruby
# these all use FileUtils
def mkdir_p(...)
def ln(...)
def ln_s(...)
...
gurgeous (Adam Doppelt)
12:38 PM Bug #21640: Core Pathname is missing 3 methods / is partially-defined
OK, I've made a PR to document that in https://github.com/ruby/ruby/pull/14953.
But it's just a workaround, it doesn't address any of the problems.
It doesn't address what happens to the pathname gem and the various problems I mentio...
Eregon (Benoit Daloze)
01:03 PM Revision 7690309a (git): Mention that `require 'pathname'` is necessary for #find, #rmtree and .mktmpdir
* See https://bugs.ruby-lang.org/issues/21640#note-16 Eregon (Benoit Daloze)
08:49 AM Revision f53b8194 (git): Stop deleting the reference from superclass when replacing classext.
Calling the usual rb_iclass_classext_free() causes SEGV because
duplicating a newer classext of iclass had set the reference from superclass
to the newer classext, but calling rb_iclass_classext_free() deletes it.
Satoshi Tagomori
08:49 AM Revision 1c81bbf0 (git): free the entry after deleting the reference
Satoshi Tagomori
08:49 AM Revision be118cf9 (git): classext replacement never happen on non-iclass classes
Satoshi Tagomori
08:49 AM Revision efe9a3cd (git): Add several very basic tests to be run with RUBY_NAMESPACE=1 on CI
To detect breaking namespace features on CI. Satoshi Tagomori
07:05 AM Revision e3a71751 (git): [ruby/stringio] [DOC] Tweaks for StringIO#closed?
(https://github.com/ruby/stringio/pull/151)
https://github.com/ruby/stringio/commit/94bd4a3d87
burdettelamar (Burdette Lamar)

10/25/2025

05:49 PM Bug #21560: RUBY_MN_THREADS=1 causes large performance regression in Puma 7
I run a git bisect building/testing with these examples (to raise if >2ms avg) and this is the commit that started the issue:
> [be1bbd5b7d40ad863ab35097765d3754726bbd54] M:N thread scheduler for Ractors
Which is the commit the introdu...
andremuta (Andre Muta)
03:31 PM Feature #15381: Let double splat call `to_h` implicitly
jeremyevans0 (Jeremy Evans) wrote in #note-11:
> […] Maybe in Ruby 4?
Bringing this up since it seems that this year’s Ruby version will be 4.0.
Is this change going to be considered for inclusion in the new release?
sanjioh (Fabio Sangiovanni)
02:24 PM Revision c6d14584 (git): [DOC] Link github style references in ChangeLog
nobu (Nobuyoshi Nakada)
01:48 PM Revision 0a924d46 (git): Use pointer to the member
Instead of the offset calculation. nobu (Nobuyoshi Nakada)
01:42 PM Revision 8e3957cc (git): Remove automatically set environment variables
Probably since macOS Runner Image Version 20251020.XXXX, spawned
processes initialize `TMPDIR` environment variable under the hood.
nobu (Nobuyoshi Nakada)
01:42 PM Revision af8c4481 (git): Add configured environment variables first
And `LD_PRELOAD` is set to `PRELOADENV` on Linux. nobu (Nobuyoshi Nakada)
12:19 PM Revision 377aa2a3 (git): Improve performance of UnicodeNormalize.canonical_ordering_one
Use array_of_integer.sort! instead of buble-sort-like algorithm tompng (tomoya ishida)
09:10 AM Revision 31e14ac7 (git): [DOC] Follow up GH-14470
`IS_TYPED_DATA` is no longer a flag in `type`, and the "embedded" flag
has been shifted accordingly.
ruby/ruby#14470
nobu (Nobuyoshi Nakada)
09:01 AM Revision 10f0abee (git): Update default gems list at 226caf1a1f3542d9e39e1a72fb43fd [ci skip]
git[bot]
09:00 AM Revision 226caf1a (git): [ruby/json] Release 2.15.2
https://github.com/ruby/json/commit/5e61cd7dce byroot (Jean Boussier)
08:57 AM Revision 8e8e3278 (git): [ruby/json] Fix concurrent usage of JSON::Coder#dump
Fix: https://github.com/rails/rails/commit/90616277e3d8fc46c9cf35d6a7470ff1ea0092f7#r168784389
Because the `depth` counter is inside `JSON::State` it can't be used
concurrently, and in case of a circular reference the counter may be
lef...
byroot (Jean Boussier)
04:59 AM Revision 93828c47 (git): merge revision(s) 4368e6c42effc16904e35f753fc2002f0bba375a:
[PATCH] [ruby/rubygems] Removed credential assertion from stdout
https://github.com/ruby/rubygems/commit/3946be008c
nagachika (Tomoyuki Chikanaga)
04:58 AM Revision bee70ff6 (git): [ruby/rubygems] Bump up vendored uri to 0.13.3
nagachika (Tomoyuki Chikanaga)

10/24/2025

10:34 PM Revision cb302881 (git): Fix memory leak of transcoding when fallback raises
When the fallback function in transcode_loop raises, it will leak the memory
in rb_econv_t. The following script reproduces the leak:
10.times do
100_000.times do
"\ufffd".encode(Encoding::US_ASCII, fallback: proc { ra...
peterzhu2118 (Peter Zhu)
10:09 PM Revision fcae2062 (git): [DOC] Tweaks for String#sub!
burdettelamar (Burdette Lamar)
10:09 PM Revision 245df86e (git): [DOC] Tweaks for String#sub
burdettelamar (Burdette Lamar)
09:03 PM Revision 8b6564d1 (git): ZJIT: Add gen_stack_overflow_check to `CCallWithFrame`
aidenfoxivey (Aiden Fox Ivey)
07:38 PM Bug #21522: Accessing outer locals via eval in a Ractor returns false
Hi, I submitted a PR to fix this: https://github.com/ruby/ruby/pull/14940 andremuta (Andre Muta)
07:04 PM Feature #20163: Introduce #bit_count method on Integer
matz (Yukihiro Matsumoto) wrote in #note-24:
> Is there any real-world use-case for Integer#popcount method?
> ...
Yes, I am using it for a [bit set gem](https://github.com/tenderlove/bitz) (I had to implement my own popcount [here](ht...
tenderlovemaking (Aaron Patterson)
03:50 PM Revision a9f24aac (git): ZJIT: Specialize string length, bytesize, and size (#14928)
Don't push frame for String#size, String#bytesize, and String#length. Jacob (Jacob Jacob)
08:24 AM Misc #21647 (Open): DevMeeting-2025-11-13
# The next dev meeting
**Date: 2025/11/13 13:00-17:00** (JST)
Log: *TBD*
- Dev meeting *IS NOT* a decision-making place. All decisions should be done at the bug tracker.
- Dev meeting is a place we can ask Matz, nobu, nurse and o...
mame (Yusuke Endoh)
08:23 AM Misc #21606 (Closed): DevMeeting-2025-10-23
mame (Yusuke Endoh)
06:20 AM Revision f8ccc0af (git): [ruby/rubygems] Forcely activate irb if that isn't available when running with bundle console
https://github.com/ruby/rubygems/commit/42e22fd367 hsbt (Hiroshi SHIBATA)
02:56 AM Revision 0eaea7bd (git): thwait has been extracted to http://github.com/ruby/thwait
hsbt (Hiroshi SHIBATA)
02:43 AM Revision 7aac92ab (git): Update the primary maintainer of rubygems
hsbt (Hiroshi SHIBATA)
02:42 AM Revision f388647e (git): Added policy of bundled gems
hsbt (Hiroshi SHIBATA)
02:41 AM Revision b58b89b9 (git): Revised structure of maintenance policy
hsbt (Hiroshi SHIBATA)
02:29 AM Revision f31cd375 (git): Revised unmaintained to reflect the current situation
hsbt (Hiroshi SHIBATA)
02:14 AM Revision daca69c8 (git): Restore primary maintainer name at the bundled gems
hsbt (Hiroshi SHIBATA)
01:14 AM Revision 877ebe5b (git): [ruby/stringio] [DOC] Tweaks for StringIO#close
(https://github.com/ruby/stringio/pull/148)
Make examples do more work (instead of text).
https://github.com/ruby/stringio/commit/7f4662438f
burdettelamar (Burdette Lamar)

10/23/2025

10:14 PM Revision 230276dd (git): [DOC] Tweaks for String#strip
burdettelamar (Burdette Lamar)
10:13 PM Revision ab94bce8 (git): [DOC] Tweaks for String#squeeze!
burdettelamar (Burdette Lamar)
10:12 PM Revision 0227ad07 (git): [DOC] Tweaks for String#strip!
burdettelamar (Burdette Lamar)
10:12 PM Revision 8b0d4053 (git): [DOC] Tweaks for String#start_with?
burdettelamar (Burdette Lamar)
09:59 PM Revision 8de628dc (git): ZJIT: s/as_usize/to_usize/ to comply with rust API guidelines
When the name is `as_*`, the guideline expects the return type to be a
reference type. Also, it's good to have contrast in the naming from
the more dangerous `as usize` cast `IntoUsize` is meant to be preferred
over.
See: https://rust-l...
alanwu (Alan Wu)
09:59 PM Revision c2bce540 (git): ZJIT: Replace `as usize` casts in codegen.rs
The `as` casts are somewhat dangerous since when the type on either side
change, it silently becomes a lossy conversion. This is why we have
`IntoUsize` as well as other guaranteed lossless conversion utilities
in stdlib. Use them.
For ...
alanwu (Alan Wu)
09:47 PM Revision f33cd128 (git): ZJIT: Add tests for non-leaf classvar get and set (#14924)
This commit adds tests that raise on `getclassvariable` and
`setclassvariable` to exercise the non-leaf cases as suggested in
https://github.com/ruby/ruby/pull/14918#discussion_r2453804603
dodecadaniel (Daniel Colson)
09:24 PM Revision 1d835539 (git): ZJIT: Inline << and push for Array in single arg case (#14926)
Fixes https://github.com/Shopify/ruby/issues/813 aidenfoxivey (Aiden Fox Ivey)
04:54 PM Revision b3fb91f4 (git): Make Namespace::Root TypedData inherit from Namespace::Entry
The two types of TypedData objects should be treated the same except for
the free function. Since Namespace::Root did not inherit from Namespace::Entry,
all the TypedData_Get_Struct calls for Namespace::Root would raise
"wrong argument t...
peterzhu2118 (Peter Zhu)
03:24 PM Revision 6dc879f9 (git): [ruby/stringio] [DOC] Tweaks for StringIO.new
(https://github.com/ruby/stringio/pull/144)
https://github.com/ruby/stringio/commit/d33ac815c1
burdettelamar (Burdette Lamar)
02:30 PM Revision add78e76 (git): ZJIT: Use iseq pointer directly in get/set class var codegen (#14921)
Addresses https://github.com/ruby/ruby/pull/14918#discussion_r2453802886 Stan Lo
02:19 PM Revision e529bf7d (git): CI: Enable `check` on clangarm64
nobu (Nobuyoshi Nakada)
01:57 PM Feature #21572: Make illegal variable in alternation pattern a syntax error
https://github.com/ruby/ruby/pull/14923 nobu (Nobuyoshi Nakada)
01:21 PM Misc #21609: Propose Stan Lo (@st0012) as a core committer
Thank you Matz and everyone supported me! st0012 (Stan Lo)
04:08 AM Misc #21609: Propose Stan Lo (@st0012) as a core committer
Agreed. Go ahead.
Matz.
matz (Yukihiro Matsumoto)
01:15 PM Misc #21646: Propose Luke Gruber as a Ruby committer
Thank you Matz! luke-gru (Luke Gruber)
04:07 AM Misc #21646: Propose Luke Gruber as a Ruby committer
Accepted. Go ahead.
Matz.
matz (Yukihiro Matsumoto)
10:00 AM Revision 343ea050 (git): bump teeny
nagachika (Tomoyuki Chikanaga)
07:00 AM Misc #21630: Suggest @Earlopain for core contributor
That would be totally fine with me. I only have 3 PRs related to prism merged in ruby/ruby which is not all that much. For these I'm sure I'd find someone who'd occasionally help me out, like it is right now already anyways.
Thanks fo...
Earlopain (Earlopain _)
06:47 AM Misc #21630: Suggest @Earlopain for core contributor
I agree with @naruse. We will revisit this issue some time (a few months?) later.
Matz.
matz (Yukihiro Matsumoto)
06:04 AM Misc #21630: Suggest @Earlopain for core contributor
I agree that they have made many significant contributions to Prism this year. However, they do not yet have permissions for the ruby/prism repository. Perhaps we could first grant them access to ruby/prism, with Kevin serving as their m... naruse (Yui NARUSE)
06:50 AM Bug #21640: Core Pathname is missing 3 methods / is partially-defined
I'd like to document clearly that those 3 methods require explicit "require".
Matz.
matz (Yukihiro Matsumoto)
06:45 AM Feature #20163: Introduce #bit_count method on Integer
Is there any real-world use-case for Integer#popcount method?
Bit-array?
Matz.
matz (Yukihiro Matsumoto)
06:42 AM Feature #21615 (Rejected): Introduce `Array#values`
HI,
* Don't use principle of least surprise as your rationale, since background and assumption vary person to person
* I don't think Hashes can be naturally considered as Arrays with non-integer indexes. You can tell it from Hash#eac...
matz (Yukihiro Matsumoto)
04:08 AM Revision 3b190855 (git): skip jit payload
They should be checked, but not sure JIT code... ko1 (Koichi Sasada)
04:08 AM Revision a1777998 (git): catch up modular-gc
ko1 (Koichi Sasada)
04:08 AM Revision 024bbf54 (git): NameError (NoMethodError) is copyable
because ISeq is shareable now. ko1 (Koichi Sasada)
04:08 AM Revision bc00c446 (git): use `SET_SHAREABLE`
to adopt strict shareable rule.
* (basically) shareable objects only refer shareable objects
* (exception) shareable objects can refere unshareable objects
but should not leak reference to unshareable objects to Ruby world
ko1 (Koichi Sasada)
04:08 AM Revision 45907b1b (git): add SET_SHAREABLE macros
* `RB_OBJ_SET_SHAREABLE(obj)` makes obj shareable.
All of reachable objects from `obj` should be shareable.
* `RB_OBJ_SET_FROZEN_SHAREABLE(obj)` same as above
but freeze `obj` before making it shareable.
Also `rb_gc_verify_shareable...
ko1 (Koichi Sasada)
03:01 AM Revision 271be0a2 (git): ZJIT: Implement classvar get and set (#14918)
https://github.com/Shopify/ruby/issues/649
Class vars are a bit more involved than ivars, since we need to get the
class from the cref, so this calls out to `rb_vm_getclassvariable` and
`rb_vm_setclassvariable` like YJIT.
dodecadaniel (Daniel Colson)
02:57 AM Revision 75ae7093 (git): [ruby/rubygems] Removed credential assertion from stdout
https://github.com/ruby/rubygems/commit/3946be008c hsbt (Hiroshi SHIBATA)
02:57 AM Revision 7fa4d58e (git): [ruby/rubygems] Bump up vendored uri to 1.0.4
https://github.com/ruby/rubygems/commit/bc77ec0bf2 hsbt (Hiroshi SHIBATA)
01:00 AM Revision da214cf3 (git): [DOC] Tweaks for StringIO#binmode (#147)
burdettelamar (Burdette Lamar)
12:52 AM Revision f762e50b (git): [ruby/stringio] [DOC] Tweaks for StringIO.open
(https://github.com/ruby/stringio/pull/146)
https://github.com/ruby/stringio/commit/141c6c0edf
burdettelamar (Burdette Lamar)
12:49 AM Revision 4368e6c4 (git): [ruby/rubygems] Removed credential assertion from stdout
https://github.com/ruby/rubygems/commit/3946be008c hsbt (Hiroshi SHIBATA)
12:49 AM Revision 8b014b1b (git): [ruby/rubygems] Bump up vendored uri to 1.0.4
https://github.com/ruby/rubygems/commit/bc77ec0bf2 hsbt (Hiroshi SHIBATA)
12:16 AM Revision 36e7db00 (git): [DOC] Tweaks for TCPSocket.new
niku (niku _)
12:10 AM Revision c3404d73 (git): ZJIT: Use InvokeBuiltin leaf attribute in codegen
Max Bernstein
12:10 AM Revision fa5481bc (git): ZJIT: Fetch Primitive.attr!(leaf) for InvokeBuiltin
Fix https://github.com/Shopify/ruby/issues/670 Max Bernstein

10/22/2025

11:36 PM Revision da4bd3b3 (git): Fix memory leak when RUBYOPT is invalid
When RUBYOPT is invalid, it raises an error which causes moreswitches
to leak memory. It can be seen when building with LSAN enabled:
$ RUBY_FREE_AT_EXIT=1 RUBYOPT=f ruby
ruby: invalid option -f (-h will show valid options) (Ru...
peterzhu2118 (Peter Zhu)
11:35 PM Revision dfcb79ca (git): ZJIT: Fix unused warnings in `make zjit-test` [ci skip]
alanwu (Alan Wu)
11:26 PM Revision ae767b6c (git): ZJIT: Inline Kernel#block_given? (#14914)
Fix https://github.com/Shopify/ruby/issues/832 tekknolagi (Maxwell Bernstein)
10:40 PM Revision a763e6dd (git): ZJIT: Disable not-annotated cfuncs in --zjit-stats (#14915)
It's mostly a duplicate of not-inlined-cfuncs right now. tekknolagi (Maxwell Bernstein)
10:13 PM Revision d4ea1686 (git): [DOC] Tweaks for String#split
burdettelamar (Burdette Lamar)
10:04 PM Revision f9338a95 (git): [DOC] Tweaks for String#squeeze
burdettelamar (Burdette Lamar)
09:24 PM Revision 71e3ef3d (git): ZJIT: Buffer writes to the perf map
alanwu (Alan Wu)
09:24 PM Revision fee863b4 (git): YJIT: Buffer writes to the perf map
alanwu (Alan Wu)
09:16 PM Revision 3861918f (git): ZJIT: Handle invalid Counter on --zjit-trace-exits=counter (#14911)
aidenfoxivey (Aiden Fox Ivey)
08:53 PM Revision 3afa38d0 (git): YJIT: Fix `defined?(yield)` and `block_given?` at top level
Previously, YJIT returned truthy for the block given query at the top
level. That's incorrect because the top level script never receives a
block, and `yield` is a syntax error there.
Inside methods, the number of hops to get from `iseq...
alanwu (Alan Wu)
08:52 PM Revision fa3a6f5c (git): Add docs for --zjit-debug
Eregon (Benoit Daloze)
08:21 PM Bug #21640: Core Pathname is missing 3 methods / is partially-defined
Earlopain (Earlopain _) wrote in #note-14:
> pathname only had 4 releases since it became a gem at the end of 2020, that does not seem like that much innovation. Per the changelog it barely changed since then even with the releases that ...
Eregon (Benoit Daloze)
04:12 PM Bug #21640: Core Pathname is missing 3 methods / is partially-defined
> ... it's awkward and confusing to have a partially-defined class
I agree.
> ...
I admit I am not very knowledgable on this. Are there other core classes that are still distributed as a gem also? To me being part of core excludes ...
Earlopain (Earlopain _)
02:50 PM Bug #21640: Core Pathname is missing 3 methods / is partially-defined
Earlopain (Earlopain _) wrote in #note-12:
> I want to adress some of these points:
Thank you for your feedback.
> ...
They are very related but not the same, here is what I meant:
1 is explaining that Pathname inherently depends...
Eregon (Benoit Daloze)
10:00 AM Bug #21640: Core Pathname is missing 3 methods / is partially-defined
I want to adress some of these points:
* Problems 1 and 2 seem to be the same to me
* Problem 3, is that even one? If pathname is core, I don't except development to continue in the gem repository.
* Problem 4 you just adressed yourself,...
Earlopain (Earlopain _)
09:35 AM Bug #21640: Core Pathname is missing 3 methods / is partially-defined
> I'm not sure why, but that seems a serious bug that the pathname gem apparently can't be used at all with Bundler.
This is actually a Bundler issue independent from this issue as it already exists on Ruby 3.4: https://github.com/ruby/...
Eregon (Benoit Daloze)
07:39 PM Revision 9ad902e5 (git): ZJIT: Inline String#==, String#===
Max Bernstein
07:39 PM Revision d792de29 (git): ZJIT: Fix Type::from_class for subclasses of built-in types
Max Bernstein
06:53 PM Revision 18e8e446 (git): ZJIT: Revert removal of empty samples from zjit trace exits (#14905)
ZJIT: Revert 9a75c05 aidenfoxivey (Aiden Fox Ivey)
06:22 PM Revision 6fdcd08e (git): ZJIT: Fix land race
Max Bernstein
06:19 PM Revision ceed4069 (git): ZJIT: Inline simple SendWithoutBlockDirect (#14888)
Copy the YJIT simple inliner except for the kwargs bit. It works great! tekknolagi (Maxwell Bernstein)
06:14 PM Revision f09e74ce (git): ZJIT: Fix some dead code in the backend (#14897)
Takashi Kokubun
05:56 PM Revision 87fdd6d5 (git): ZJIT: Support make in zjit_bisect.rb (#14584)
Find ZJIT options in RUN_OPTS/SPECOPTS and put new ones from the bisection script
there too.
tekknolagi (Maxwell Bernstein)
05:11 PM Revision 4c60fc48 (git): [ruby/prism] Test against parse.y
https://github.com/ruby/prism/commit/17a6a19bbae5c8b438a94816ed67c3852547d859 broke ruby/ruby CI
because some tests are only run against parse.y
This will catch that in the future.
https://github.com/ruby/prism/commit/98e1cd5c04
Earlopain (Earlopain _)
04:43 PM Revision 619110b1 (git): ZJIT: A64: Fix Lea with large displacement and overlapping register
Previously, when the output register and the base register are the same
in `out = Lea(Mem(out, disp))`, we did
out = disp
out = out + out
Which wasn't the desired `out = out + disp`.
Fixes a SEGV with `--zjit-call-threshold=2`...
alanwu (Alan Wu)
04:07 PM Revision 839b1fa5 (git): ZJIT: Specialize String#<< to StringAppend (#14861)
Fixes https://github.com/Shopify/ruby/issues/805 aidenfoxivey (Aiden Fox Ivey)
02:58 PM Feature #21572: Make illegal variable in alternation pattern a syntax error
Thank you @ktsj — I will start working on a patch for Prism. kddnewton (Kevin Newton)
02:56 PM Feature #20564: Switch default parser to Prism
Can this issue be closed? We are coming up on the 3.5 release, and I don't think any further information is going to be forthcoming here. kddnewton (Kevin Newton)
02:55 PM Misc #21606: DevMeeting-2025-10-23
* [Feature #21573] Simpler syntax errors
* Developers want nice syntax errors in the command line, that is implemented today.
* Language-agnostic tools that parse stdout want simple-to-parse errors and warnings.
* Can we add a m...
kddnewton (Kevin Newton)
02:52 PM Misc #21606: DevMeeting-2025-10-23
* [Misc #21630] Suggest @Earlopain for core contributor
* They have been very helpful for Prism maintenance, and also other areas of Ruby. It would be helpful for them to merge their own PRs.
kddnewton (Kevin Newton)
02:52 PM Bug #21645: Can't `require "resolve"` on Windows under Bundler without warnings
My impression here is we should always respect dependencies before changing from stdlib/default gem to bundled gem.
Concretely, I think fiddle shouldn't be a bundled gem before its stdlib & default gems usages (resolv, win32/resolv, w...
Eregon (Benoit Daloze)
01:58 AM Bug #21645: Can't `require "resolve"` on Windows under Bundler without warnings
Thanks for popping in!
> Would this problem be avoided if mini_portile2 declared an explicit dependency on net-http
No, that would not do much I think. The problem is that `win32-registry` is a default gem but it depends on `fiddle...
Earlopain (Earlopain _)
02:50 PM Revision 6047eada (git): [ruby/prism] Make error and snapshot tests multi-version aware
This one has been on my mind for a while now.
Currently, there are only tests against the latest syntax version.
This changes the snapshot structure as follows:
* Snapshots at their current location are tested against all syntax versio...
Earlopain (Earlopain _)
06:53 AM Revision 66c12bd5 (git): Update bundled gems list as of 2025-10-22
git[bot]
12:21 AM Revision f46ebed2 (git): Fix memory leak of darray in loaded_features_index
peterzhu2118 (Peter Zhu)

10/21/2025

10:52 PM Revision a2a107c2 (git): ZJIT: Handle when SetIvar raises FrozenError
alanwu (Alan Wu)
10:42 PM Revision 4a23b6a8 (git): Fix memory leak in RCLASS_SET_NAMESPACE_CLASSEXT
The st_insert in RCLASS_SET_NAMESPACE_CLASSEXT may overwrite an existing
rb_classext_t, causing it to leak memory. This commit changes it to use
st_update to free the existing one before overwriting it.
peterzhu2118 (Peter Zhu)
10:42 PM Revision cd42096f (git): Move rb_class_classext_free to class.c
peterzhu2118 (Peter Zhu)
10:03 PM Revision 0cc4819f (git): Improve test_fixnum_{and,or}* by checking all results and using more interesting inputs
Eregon (Benoit Daloze)
10:03 PM Revision 89472d89 (git): ZJIT: Inline Fixnum#^
* Handled in cruby_methods.rs because there is no basic operation for Fixnum#^. Eregon (Benoit Daloze)
09:11 PM Bug #21645: Can't `require "resolve"` on Windows under Bundler without warnings
Would this problem be avoided if mini_portile2 declared an explicit dependency on net-http? If it would be helpful I'm happy to cut a new release of mini_portile with that change.
mdalessio (Mike Dalessio)
11:57 AM Bug #21645: Can't `require "resolve"` on Windows under Bundler without warnings
Here is a standalone workflow that demonstrates the issue closer to how I actually encountered it:
```yml
name: Test
on: push
jobs:
make:
runs-on: windows-latest
steps:
- run: echo "source 'https://rubygems.or...
Earlopain (Earlopain _)
08:48 PM Revision b14fac94 (git): ZJIT: Issue `SendWithoutBlockDirect` to `VM_METHOD_TYPE_BMETHOD`
This helps ZJIT optimize ~300,000 more sends in ruby-bench's lobsters
Top-6 not optimized method types for send_without_block
Before After
iseq: 713,899 (48.0%) iseq: 725,668 (62.4...
alanwu (Alan Wu)
08:48 PM Revision bb7f3d17 (git): YJIT: ZJIT: Extract common bindings to jit.c and remove unnamed enums.
The type name bindgen picks for anonymous enums creates desync issues on
the bindgen CI checks.
alanwu (Alan Wu)
08:48 PM Revision 35c22307 (git): ZJIT: Fix binding to `INVALID_SHAPE_ID` under `-std=c99 -pedantic`
```
/src/jit.c:19:5: error: ISO C restricts enumerator values to range of 'int' (4294967295 is too large) [-Werror,-Wpedantic]
19 | RB_INVALID_SHAPE_ID = INVALID_SHAPE_ID,
| ^ ~~~~~~~~~~~~~~~~
```
alanwu (Alan Wu)
08:48 PM Revision 193b299b (git): [DOC] ”Tweaks for String#setbyte
burdettelamar (Burdette Lamar)
08:48 PM Revision cb52809c (git): [DOC] Tweaks for String#scrub (#14892)
burdettelamar (Burdette Lamar)
08:46 PM Revision 862b42a5 (git): [DOC] Tweaks for String#scrub! (#14893)
burdettelamar (Burdette Lamar)
08:44 PM Revision 42c04097 (git): [DOC] Tweaks for String#scan (#14884)
burdettelamar (Burdette Lamar)
08:44 PM Revision caff9b90 (git): [DOC] Tweaks for String#rstrip (#14881)
burdettelamar (Burdette Lamar)
08:14 PM Misc #21606: DevMeeting-2025-10-23
* [Misc #21646] Propose Luke Gruber as a Ruby committer (jhawthorn)
* Luke has been fixing bugs in Ractors and elsewhere. Would be helpful if he could merge his own PRs.
jhawthorn (John Hawthorn)
06:46 PM Misc #21646: Propose Luke Gruber as a Ruby committer
I would be honored to join as a committer if you'll have me. Thank you everyone! luke-gru (Luke Gruber)
06:41 PM Misc #21646: Propose Luke Gruber as a Ruby committer
+1 Luke is very helpful with Ractor development, and I think he would make a great addition to the team! tenderlovemaking (Aaron Patterson)
03:45 PM Feature #21572: Make illegal variable in alternation pattern a syntax error
I agree with you, @kddnewton.
Your proposal makes sense.
ktsj (Kazuki Tsujimoto)
08:02 AM Feature #21636 (Closed): Proposal to Introduce a Dedicated Warning Category for Regular Expressions
Thank you, I'll close this for now. If there's anything else you'd like to discuss, please let me know. mame (Yusuke Endoh)
03:35 AM Feature #21642: Introduce `IO::ConnectionResetError` and `IO::BrokenPipeError` as standardized IO-level exceptions.
I talked with @akr-san. He said it should be first confirmed whether you have any real use cases that actually want to handle situations like "can't read but can write" (or vice versa).
Pipes are typically unidirectional, so when a wr...
mame (Yusuke Endoh)
01:38 AM Revision 3b87e76c (git): [DOC] Tweaks for String#rpartition
burdettelamar (Burdette Lamar)
01:37 AM Revision e930bd3e (git): [DOC] Tweaks for String#rstrip!
burdettelamar (Burdette Lamar)
 

Also available in: Atom