Project

General

Profile

Activity

From 05/30/2025 to 06/05/2025

06/05/2025

11:52 PM Revision 86eb5f9c (git): CI: Trap launchable_record_test in the parent process
nobu (Nobuyoshi Nakada)
11:39 PM Bug #21108 (Closed): C-c (SIGINT) crashes ruby when looping Ractors are not taken?
I believe this should be fixed as `Ractor.yield` no longer exists under the Ractor::Port API jhawthorn (John Hawthorn)
11:37 PM Revision 43472a30 (git): ZJIT: Panic unimplemented for OOB basic block args (#13533)
shan (Shannon Skipper)
11:33 PM Revision d946d65c (git): Detect `clock_gettime` and `clock_getres` for winpthreads
nobu (Nobuyoshi Nakada)
11:00 PM Revision 5da3dc88 (git): CI: Timeout launchable setup in 3min
nobu (Nobuyoshi Nakada)
11:00 PM Revision 296a0d0b (git): CI: Create report files only when Launchable setup succeeded
nobu (Nobuyoshi Nakada)
09:55 PM Bug #19154: Specify require and autoload guarantees in ractors
To give an update, `require` and `autoload` now work inside ractors. I think this can be closed. luke-gru (Luke Gruber)
09:54 PM Feature #15854: Tracing instance variable assignment
> I think tracing ivar assignments would be prohibitively slow, and so probably not really usable in practice.
Since TracePoint is only recommended for debugging use, I think trading execution speed for more efficient debugging experi...
st0012 (Stan Lo)
09:49 PM Revision a62166e2 (git): support nested VM barrier synchronization
on `RGENGC_CHECK_MODE > 1`, there are the following steps
1. gc_enter
2. vm_barrier
3. verify_internal_consistency
4. vm_barrier
and it causes nested vm_barrier synchronization.
This patch allows such cases.
ko1 (Koichi Sasada)
09:48 PM Revision 1a991131 (git): ZJIT: Pass self through basic block params (#13529)
* ZJIT: Pass self through basic block params
Co-authored-by: Max Bernstein <[email protected]>
* Add comments for self
* Use self_param for ivar
* Make self_param a loop local
* Fix rest parameter type check
* Push self_param fi...
k0kubun (Takashi Kokubun)
09:45 PM Bug #20346: FiberScheduler.unblock not called by Thread#join when Thread body contains Ractor.take
I created a PR for this: https://github.com/ruby/ruby/pull/13517 luke-gru (Luke Gruber)
09:37 PM Feature #21346: Introduce `String#ensure_suffix`
Let me record the background of the discussion. During the dev meeting, we considered the following use case:
```ruby
path.ends_with?(".rb") ? path : "#{path}.rb"
```
When rewriting this as `path.ensure_suffix(".rb")`, the behavi...
mame (Yusuke Endoh)
06:18 PM Feature #21346: Introduce `String#ensure_suffix`
matheusrich (Matheus Richard) wrote in #note-13:
> @ufuk see [dev meeting discussion](https://github.com/ruby/dev-meeting-log/blob/50ce075f492578c2b97a32887adbfc7515e1e1ab/2025/DevMeeting-2025-06-05.md#L4:~:text=matz%3A%20%22Hello%22.en...
ufuk (Ufuk Kayserilioglu)
04:59 PM Feature #21346: Introduce `String#ensure_suffix`
@ufuk see [dev meeting discussion](https://github.com/ruby/dev-meeting-log/blob/50ce075f492578c2b97a32887adbfc7515e1e1ab/2025/DevMeeting-2025-06-05.md#L4:~:text=matz%3A%20%22Hello%22.ensure_suffix(%22o!%22)%20should%20return%20%22Helloo!... matheusrich (Matheus Richard)
04:57 PM Feature #21346: Introduce `String#ensure_suffix`
I personally find the `"Hello".ensure_suffix("o!")` case returning `"Helloo!"` very unexpected. I would have expected the change in the string to be the minimal operation needed to ensure that the string ends with the given suffix (i.e. ... ufuk (Ufuk Kayserilioglu)
02:51 PM Feature #21346: Introduce `String#ensure_suffix`
I've updated the PR as per Matz's comment. matheusrich (Matheus Richard)
09:17 AM Feature #21346: Introduce `String#ensure_suffix`
What about `ensure_prefix`?
I think it's good to have parity here, I would be surprised if that doesn't exist but `ensure_suffix` does.
Also we have `start_with?`/`end_with?`, etc.
Eregon (Benoit Daloze)
05:40 AM Feature #21346: Introduce `String#ensure_suffix`
`ensure_suffix` accepted. IMO, it should always copy the original string, even when it ends with the suffix. I don't see any reason to add bang-version, right now. Keep it on-demand (because we are lazy).
Matz.
matz (Yukihiro Matsumoto)
08:06 PM Revision 4e395809 (git): Refactor raw accesses to rb_shape_t.capacity
byroot (Jean Boussier)
06:23 PM Bug #17516: forking in a ractor causes Ruby to crash
Right now forking with a block or forking and execing works without crashing
```
./miniruby -e 'Ractor.new { fork(){} }.take'
```
However as described in the issue forking with no block still crashes.
```
./miniruby -e 'Racto...
jhawthorn (John Hawthorn)
06:15 PM Bug #21007 (Closed): Ractor scheduler issue when multiple threads in a ractor
This was fixed by resetting the running_time_us jhawthorn (John Hawthorn)
06:11 PM Bug #20905 (Closed): Ruby VM hangs while using ractors
After @ko1's merge of Ractor::Ports this no longer reproduces. 🎉
@luke-gru and I paired on this both before and after. It seems like what fixed this is removing a check from the end of co_start when a thread terminates (which had a po...
jhawthorn (John Hawthorn)
05:05 PM Bug #21396: Set#initialize should call Set#add on items passed in
ko1 (Koichi Sasada) wrote in #note-4:
> How about to redfine `initialize` on subclass of `Set` to call `#add`?
I think we could, but that means people have to change their code when upgrading.
Eregon (Benoit Daloze) wrote in #note...
tenderlovemaking (Aaron Patterson)
01:43 PM Bug #21396: Set#initialize should call Set#add on items passed in
I've always created custom variants of Set too, and I don't think it's rare to find these in in-house codebases.
knu (Akinori MUSHA)
08:34 AM Bug #21396: Set#initialize should call Set#add on items passed in
Is there any public code in some gem or so that relies on this? (the example is rather synthetic) Eregon (Benoit Daloze)
01:08 AM Bug #21396: Set#initialize should call Set#add on items passed in
How about to redfine `initialize` on subclass of `Set` to call `#add`? ko1 (Koichi Sasada)
04:25 PM Feature #21390 (Closed): Deprecate passing arguments to Set#to_set and Enumerable#to_set
Implemented in commit:0b07d2a1e32a456fc302c8d970fa85782bdb98ce jeremyevans0 (Jeremy Evans)
12:30 PM Feature #21390: Deprecate passing arguments to Set#to_set and Enumerable#to_set
I can agree with this. As it turned out, subclassing the Set class did not become very common, so I think it's fine to deprecate this feature now. knu (Akinori MUSHA)
05:54 AM Feature #21390 (Assigned): Deprecate passing arguments to Set#to_set and Enumerable#to_set
nobu (Nobuyoshi Nakada)
04:24 PM Revision 0b07d2a1 (git): Deprecate passing arguments to Set#to_set and Enumerable#to_set
Array#to_a, Hash#to_h, Enumerable#to_a, and Enumerable#to_h do not
allow you to specify subclasses. This has undesired behavior when
passing non-Set subclasses. All of these are currently allowed, and
none make sense:
```ruby
enum = [...
jeremyevans (Jeremy Evans)
04:20 PM Bug #21398: Ractor.select hangs when multiple threads submit heavy jobs concurrently
Thank you for the report.
Is it possible for you to try to install ruby-head (3.5.0dev) and try this script with the recent changes to ractors (ractor ports)? I'm having trouble reproducing it on my end on ruby-head.
Here's the script ...
luke-gru (Luke Gruber)
04:21 AM Bug #21398 (Closed): Ractor.select hangs when multiple threads submit heavy jobs concurrently
When multiple threads run heavy Ractor-based jobs at the same time, `Ractor.select(*workers)` can hang indefinitely without any crash, exception, or deadlock being reported.
This issue does not occur when only one thread is running si...
arino.tamada (有乃 玉田)
04:02 PM Revision 2f80117c (git): Fix comment about debugging shapes
This method was moved to RubyVM::Shape in 913979bede2a1b79109fa2072352882560d55fe0. etienne (Étienne Barrié)
04:01 PM Revision 22dfa250 (git): More comprehensive debugging configuration
etienne (Étienne Barrié)
03:30 PM Bug #21400: rb_bug() hit when killing current root fiber on non-main thread
I created a PR: https://github.com/ruby/ruby/pull/13526 luke-gru (Luke Gruber)
03:24 PM Bug #21400 (Closed): rb_bug() hit when killing current root fiber on non-main thread
This following code hits an `rb_bug`:
```ruby
Thread.new { Fiber.current.kill }.join
```
Normally fibers gracefully handle this case by terminating and switching to another fiber, but if there is no other fiber it raises the `FIB...
luke-gru (Luke Gruber)
02:51 PM Revision da2453c5 (git): Add debug message to test_heaps_grow_independently
To debug flaky failures on i686 that look like:
1) Failure:
TestGc#test_heaps_grow_independently [test/ruby/test_gc.rb:704]:
Expected 2061929 to be < 2000000.
peterzhu2118 (Peter Zhu)
02:45 PM Revision 01f6bd8b (git): ZJIT: Add `insns` param that tests for opcode presence
alanwu (Alan Wu)
02:18 PM Revision 998e5791 (git): [ruby/date] Suppress warnings by gcc-13 with `-Og`
https://github.com/ruby/date/commit/6dd7969a64 nobu (Nobuyoshi Nakada)
01:33 PM Revision edaa27ce (git): Suppress warnings by gcc-13 with `-Og`
nobu (Nobuyoshi Nakada)
01:31 PM Bug #21376: Inconsistent equality between Sets with different compare_by_identity, different classes
This bug in optimization in Set#== deserves to be fixed, I think. In hindsight, adding Set#compare_by_identity might not have been the best idea. knu (Akinori MUSHA)
12:11 PM Bug #21392 (Closed): Data classes do not allow overriding #inspect
Closing as requested. alanwu (Alan Wu)
11:24 AM Bug #21381 (Closed): Different error messages when mixing `it` and `_1` in block for Prism and parse.y
Applied in changeset commit:git|0e0008da0f19d098a2e98902f2215c126aca0101.
----------
[Bug #21381] Refine error messages for `it` and numbered parameters
nobu (Nobuyoshi Nakada)
11:04 AM Misc #21399 (Closed): DevMeeting-2025-07-10
# The next dev meeting
**Date: 2025/07/10 13:00-17:00** (JST)
Log: https://github.com/ruby/dev-meeting-log/blob/master/2025/DevMeeting-2025-07-10.md
- Dev meeting *IS NOT* a decision-making place. All decisions should be done at t...
mame (Yusuke Endoh)
11:04 AM Misc #21281 (Closed): DevMeeting-2025-05-08
mame (Yusuke Endoh)
11:04 AM Misc #21379 (Closed): DevMeeting-2025-06-05
mame (Yusuke Endoh)
11:00 AM Bug #21384: const_added is triggered twice when using autoload
Briefly discussed at the dev meeting. @matz said that it was not intentional to fire the hook twice. But changing it now would be a compatibility concern, so he decided to keep the current behavior.
Conceptually, we may consider this ...
mame (Yusuke Endoh)
10:52 AM Bug #21337: Using `not` on the RHS of a logical operator becomes valid syntax with Prism
`p(not 1)` is also allowed in Ruby 3.4, but this should also be prohibited, @matz said.
@kddnewton @tenderlovemaking @eileencodes Can you fix this issue soon? We need to backport to 3.4 to stop Ruby 3.4 users writing such code.
mame (Yusuke Endoh)
08:53 AM Bug #21337: Using `not` on the RHS of a logical operator becomes valid syntax with Prism
I am against this prism behavior. It introduces ambiguity for `not a && b` (might be `not (a && b)` or `(not a) && b`). I don't think we can have formal definition of this `not` behavior.
Matz.
matz (Yukihiro Matsumoto)
10:39 AM Misc #21154: Document or change Module#autoload?
> Think about this. You ship a gem like this:
@fxn Thank you for the very interesting example. It became a topic of discussion for @akr, @naruse, and me for a total of 4 hours over two dev meetings.
With a slight modification to yo...
mame (Yusuke Endoh)
10:21 AM Revision 0e0008da (git): [Bug #21381] Refine error messages for `it` and numbered parameters
nobu (Nobuyoshi Nakada)
10:13 AM Bug #21391: Inconsistent trailing slash behavior of File.join and Pathname#join with empty strings
I don't recommend trailing slash on a pathname because it is not portable between operating systems.
The behavior of Pathname (it doesn't add a trailing slash) reflects this my opinion.
https://pubs.opengroup.org/onlinepubs/9699919...
akr (Akira Tanaka)
10:12 AM Revision b9e3edb3 (git): [rubygems/rubygems] Slightly simplify locked specification source replacement
https://github.com/rubygems/rubygems/commit/22f0a07377 deivid (David Rodríguez)
10:12 AM Revision 970eac15 (git): [rubygems/rubygems] Fix git source unlocking for multi-gem repositories like Rails
If you have
```
gem "rails", git: "https://github.com/rails/rails"
```
and then explicitly pin to an older ref, like
```
gem "rails", git: "https://github.com/rails/rails", ref: "https://github.com/rubygems/rubygems/commit/99bacb5aa8e...
deivid (David Rodríguez)
10:12 AM Revision e4933e1d (git): [rubygems/rubygems] Fix `bundle update --bundler` when restarts disabled
There's no reason why we should not update bundler as requested, even if
restarts are disabled.
https://github.com/rubygems/rubygems/commit/e59acd2a0d
deivid (David Rodríguez)
10:12 AM Revision 5cf07c1e (git): [rubygems/rubygems] Look in configured path when checking if self-update version is installed
https://github.com/rubygems/rubygems/commit/1ce0882e6f deivid (David Rodríguez)
10:12 AM Revision 1befc5d1 (git): [rubygems/rubygems] Make update specs independent from version of Bundler
https://github.com/rubygems/rubygems/commit/609b21a5fe deivid (David Rodríguez)
10:12 AM Revision 0e6805eb (git): [rubygems/rubygems] Refactor restarts to not need memoizing the restart version
https://github.com/rubygems/rubygems/commit/a9d80a7dcb deivid (David Rodríguez)
10:12 AM Revision 417210c0 (git): [rubygems/rubygems] Make self management specs independent from version of Bundler
https://github.com/rubygems/rubygems/commit/1257bd161e deivid (David Rodríguez)
10:12 AM Revision 523f68c6 (git): [rubygems/rubygems] Compare major version only
https://github.com/rubygems/rubygems/commit/6b4cf6713d deivid (David Rodríguez)
10:12 AM Revision 8b2145dc (git): [rubygems/rubygems] Remove dead spec helpers
https://github.com/rubygems/rubygems/commit/ee5a0158fd deivid (David Rodríguez)
10:12 AM Revision e74008bf (git): [rubygems/rubygems] Reduce duplication a bit
https://github.com/rubygems/rubygems/commit/0574c62fc0 deivid (David Rodríguez)
10:12 AM Revision 11492bd8 (git): [rubygems/rubygems] Fix headings levels in Changelogs
And adapt release scripts and configuration to the new structure.
https://github.com/rubygems/rubygems/commit/3deb1aedae
Antoine Marguerie
10:12 AM Revision 803dae70 (git): [rubygems/rubygems] Deprecate x64-mingw32 legacy Windows platform in favor of x64-mingw-ucrt
https://github.com/rubygems/rubygems/commit/71c969be44 larouxn (Nicholas La Roux)
10:12 AM Revision 21bce66f (git): [rubygems/rubygems] Reset variables that can cause specs to fail if set
https://github.com/rubygems/rubygems/commit/8df67b7322 deivid (David Rodríguez)
09:31 AM Misc #21385: Namespace: Suggesting a rename
other ideas:
* NameSpace (from ObjectSpace)
* NameCapsule
* RootNamespace
* ModuleGroup
* ModuleBag
* ModuleSpace (by ledsun)
(Namespace also separates global variables though)
ko1 (Koichi Sasada)
08:45 AM Misc #21385: Namespace: Suggesting a rename
From the latest suggestions, I think `Realm` and `Context` are the best, since the feature about creating multiple sets of top-level constants/isolating them.
Since it is a low-level API I think nesting under `Ruby::` would be good, and...
Eregon (Benoit Daloze)
07:49 AM Misc #21385: Namespace: Suggesting a rename
Regarding the name conflict, if this is meant as a low level API, we could consider something under the newly introduced `Ruby` module. E.g. `Ruby::Context`, `Ruby::Namespace`, etc etc.
This also doesn't prevent deprecating the use of...
byroot (Jean Boussier)
05:19 AM Misc #21385: Namespace: Suggesting a rename
Oh, it is interesting to know there's a higher level API in the horizon. Looking forward to see what you have in mind!
With that new context, a "cell" is a low-level thing with inner/independent activity, but it is permeable and can c...
fxn (Xavier Noria)
04:45 AM Misc #21385: Namespace: Suggesting a rename
I have to make myself clear. It's fine for me, if we rename Namespace.
Matz.
matz (Yukihiro Matsumoto)
04:23 AM Misc #21385: Namespace: Suggesting a rename
Context, Capsule, Realm, and Zone do not seem to represent namespaces, so I don't want to adopt them (although I like those names). I like the name Package too. But I think we should reserve it for high-level APIs.
FYI, I consider this ...
matz (Yukihiro Matsumoto)
09:27 AM Feature #21347 (Assigned): Add `open_timeout` as an overall timeout option for `Socket.tcp`
shioimm (Misaki Shioi)
04:52 AM Feature #21347: Add `open_timeout` as an overall timeout option for `Socket.tcp`
Accepted. Go ahead.
Matz.
matz (Yukihiro Matsumoto)
09:25 AM Feature #21359: Introduce `Exception#cause=` for Post-Initialization Assignment
Maybe `Exception.new("message", cause: cause)` should be supported, but I suppose that might be quite hard to support for all subclasses of `Exception`.
That's probably the reason it's on `raise` and not in exception constructor.
BTW i...
Eregon (Benoit Daloze)
09:07 AM Feature #21359: Introduce `Exception#cause=` for Post-Initialization Assignment
I am basically against `cause=` (or `set_cause` that is). It makes exceptions more complex. Is it impossible to defer exception creation til it is absolutely needed?
Matz.
matz (Yukihiro Matsumoto)
09:11 AM Feature #21279 (Closed): Bare "rescue" should not rescue NameError
Upon considering the historic constraint (and compatibility concern), I choose to keep `NameError` as it is.
Thank you for the proposal.
Matz.
matz (Yukihiro Matsumoto)
09:09 AM Feature #21311: Namespace on read (revised)
bughit (bug hit) wrote in #note-112:
> Yes, it would only help with direct dependencies of the app:
Right, I also thought about this case.
That would work with the big compromise of every usage of `[email protected]` to be through `ns_d2::D` an...
Eregon (Benoit Daloze)
09:08 AM Feature #21358: Advanced filtering support for #dig
I prefer pattern matching.
Matz.
matz (Yukihiro Matsumoto)
07:13 AM Feature #21358 (Feedback): Advanced filtering support for #dig
mame (Yusuke Endoh)
09:07 AM Bug #21323 (Closed): irb fails to start with Namespace
Right, this seems fixed on master.
Would be interesting to know what was the fix.
Eregon (Benoit Daloze)
08:47 AM Feature #21389: Simplify Set#inspect output
I prefer `Set[1, 2, 3]` to `#<Set: {1, 2, 3}>`. And the name of the subclass should be printed, e.g. `MySet[1, 2, 3]`.
Matz.
matz (Yukihiro Matsumoto)
08:43 AM Bug #21374: FrozenError message is inconsistent when a singleton method is defined on a frozen object
I agree with you. It should be consistent (and I prefer `can't modify frozen Array: [] (FrozenError)` message). But there might be some internal reason. We have to investigate first.
Matz.
matz (Yukihiro Matsumoto)
08:40 AM Bug #21382 (Closed): Syntax for arguments in || is more strict than arguments in ()
Unfortunately, `|` is a binary-or operator too. So we have to be more strict to avoid ambiguity and syntax conflict.
Matz.
matz (Yukihiro Matsumoto)
08:32 AM Revision 9f112afc (git): Allow volatile pointer relaxed atomic operations
nobu (Nobuyoshi Nakada)
08:09 AM Revision 9e84a278 (git): Win: Cast of qualifier in `rbimpl_atomic_u64_load_relaxed`
nobu (Nobuyoshi Nakada)
08:06 AM Revision 8906d55c (git): [ruby/stringio] Extract internal part as the function
`str_chilled_p`
(https://github.com/ruby/stringio/pull/136)
https://github.com/ruby/stringio/commit/3c52ddc4c8
nobu (Nobuyoshi Nakada)
07:53 AM Bug #21378 (Feedback): variable pinning does not look for method arguments
@yui-knk Do you think this is possible to implement? mame (Yusuke Endoh)
07:05 AM Revision 256440a8 (git): Update bundled gems list as of 2025-06-05
git[bot]
06:57 AM Feature #21219: `Object#inspect` accept a list of instance variables to display
I prefer the idea of selecting instance variables to output by a hook method. It is tough to choose the name of the method for selection. I suggest `instance_variables_to_inspect` for now. If anyone thinks a more compact name would be be... matz (Yukihiro Matsumoto)
06:34 AM Revision 62b1ae09 (git): Win: Slim down `vcvars_ver` options in the matrix
nobu (Nobuyoshi Nakada)
05:44 AM Revision 772fc1f1 (git): Get rid of `rb_shape_t.flags`
Now all flags are only in the `shape_id_t`, and can all be checked
without needing to dereference a pointer.
byroot (Jean Boussier)
04:43 AM Bug #21362: Namespace: Inline method caches poisoned with builtins
Cache poisoning itself seems to be a bug to be fixed.
But it should be pointed out that whether a method is replaced when it is called from another namespace is an important design choice, and is called local rebinding. We believe tha...
matz (Yukihiro Matsumoto)
04:34 AM Feature #21365: Add `Namespace#eval`
Namespace.eval accepted.
Matz.
matz (Yukihiro Matsumoto)
04:32 AM Bug #21316: Namespaces leak with permanent names
As #21335, we should not provide information that depends on namespace, until we fix high level API.
Matz.
matz (Yukihiro Matsumoto)
04:24 AM Feature #21335: Namespaces should be present in the backtrace
I'd like to keep this issue pending until we provide high level API (maybe Package). See #21385)
Matz.
matz (Yukihiro Matsumoto)
04:05 AM Misc #21369: Propose Max Bernstein (@tekknolagi) as a core committer
Accepted. Follow the guideline.
Matz.
matz (Yukihiro Matsumoto)
01:51 AM Revision 111986f8 (git): ZJIT: Add newrange support (#13505)
* Add newrange support to zjit
* Add RangeType enum for Range insn's flag
* Address other feedback
Stan Lo

06/04/2025

11:15 PM Revision 0ca80484 (git): mark main Ractor object
`RUBY_DEBUG=gc_stress ./miniruby -e0` crashes because of this
marking miss.
BTW, to use `RUBY_DEBUG=gc_stress` we need to specify
`--enable-debug-env` configure option. This is why I couldn't repro
on my environments.
see c0c94ab183d0d...
ko1 (Koichi Sasada)
09:14 PM Revision 112c3425 (git): ZJIT: Implement side exits for entry frames (#13469)
Co-authored-by: Max Bernstein <[email protected]>
Co-authored-by: Alan Wu <[email protected]>
k0kubun (Takashi Kokubun)
08:57 PM Bug #21397 (Closed): `snap run ruby.gem` fails when both snap and deb package installed
There appears to be a packaging issue with the [official](https://www.ruby-lang.org/en/news/2018/11/08/snap/) Ruby snap.
On a clean virtual machine running Ubuntu 24.04, the `gem` command fails when run from the snap if the Ruby deb p...
mk76835897 (Max Kapur)
07:48 PM Bug #21396: Set#initialize should call Set#add on items passed in
jeremyevans0 (Jeremy Evans) wrote in #note-2:
> This is not a bug, IMO. Using underlying functions instead of calling methods was one of the deliberate design decisions for core Set (see #21216), and how other core collection classes w...
tenderlovemaking (Aaron Patterson)
07:43 PM Bug #21396: Set#initialize should call Set#add on items passed in
This is not a bug, IMO. Using underlying functions instead of calling methods was one of the deliberate design decisions for core Set (see #21216), and how other core collection classes work. `Array.new(1, true)` does not call `Array#[]... jeremyevans0 (Jeremy Evans)
07:31 PM Bug #21396 (Closed): Set#initialize should call Set#add on items passed in
```ruby
class Foo < Set
def add(item) = super(item.bytesize)
end
x = Foo.new(["foo"])
p x
p x.include?(3)
```
On Ruby 3.4 the output is this:
```
> ruby -v test.rb
ruby 3.4.1 (2024-12-25 revision 48d4efcb85) +PRISM [ar...
tenderlovemaking (Aaron Patterson)
06:07 PM Revision 99cc100c (git): Remove dead rb_malloc_info_show_results
peterzhu2118 (Peter Zhu)
05:18 PM Revision 3b5787a9 (git): Implement write barrier for addrinfo
`rb_addrinfo_t` has `VALUE inspectname` and `VALUE canonname`, so this
triggers the write barrier for those. The `AddrInfo` wasn't readily
available where we need to call `RB_OBJ_WRITE`, so this involves passing
`self` around a bit.
dodecadaniel (Daniel Colson)
11:59 AM Revision a4dc778a (git): Launchable: Set env variables to prevent CI slowdowns (#13513)
When Launchable in unstable, the round trip time takes a long time, which slows down CI execution. In this PR I configured the environment variable `LAUNCHABLE_COMMIT_TIMEOUT` to configure the timeout.
https://github.com/launchableinc/c...
ono-max (Naoto Ono)
11:14 AM Revision a87b0893 (git): ZJIT: Fix incorrect method name in test for Array#size
Stan Lo
11:14 AM Bug #21395: Please backport caa6ba1a46afa1bc696adc5fe91ee992f9570c89
8d49c05c134702c321198b70fbbf34dd80cc1ba6 seems to only change the `debug` gem version, I guess you mean some other commit to backport?
Probably https://github.com/ruby/ruby/commit/caa6ba1a46afa1bc696adc5fe91ee992f9570c89
> As a resul...
Eregon (Benoit Daloze)
10:54 AM Bug #21395 (Closed): Please backport caa6ba1a46afa1bc696adc5fe91ee992f9570c89

In Ruby 3.4, debug.gem raises an exception when stepping into a rescue clause:
https://github.com/ruby/debug/pull/1142
I discussed with @ko1, and we decided to resolve this by modifying `rb_debug_inspector_backtrace_locations` ...
mame (Yusuke Endoh)
11:13 AM Revision 675f3350 (git): Get rid of TOO_COMPLEX shape type
Instead it's now a `shape_id` flag.
This allows to check if an object is complex without having
to chase the `rb_shape_t` pointer.
byroot (Jean Boussier)
10:53 AM Revision 8d49c05c (git): Use the edge version of debug gem
mame (Yusuke Endoh)
10:53 AM Revision caa6ba1a (git): Make `rb_debug_inspector_backtrace_locations` return a raw backtrace
Previously, a user of the debug inspector API was supposed to use
`rb_debug_inspector_backtrace_locations` to get an array of
`Thread::Backtrace::Location`, and then used its index to get more
information from `rb_debug_inspector _frame_...
mame (Yusuke Endoh)
10:23 AM Revision 8d14d6ea (git): ZJIT: Spill to the stack using arguments instead of FrameState
The FrameState on the SendWithoutBlock represents the entry state,
but for instructions that push to the stack in the middle of the
instruction before actually doing the send like opt_aref_with,
the FrameState is incorrect. We need to wr...
alanwu (Alan Wu)
10:23 AM Revision 6f0f84e5 (git): ZJIT: Parse opt_aref_with into HIR
alanwu (Alan Wu)
10:18 AM Revision 8070d5d9 (git): `Ractor#take` and warn
`Ractor#take` was deprecated but some libraries can use it as
an alias for `Ractor#value` (i.e., to wait for a Ractor's
temrination and retrieve its result).
Therefore `Ractor#take` is simply an alias for `Ractor#value`.
This method wil...
ko1 (Koichi Sasada)
08:02 AM Misc #21350 (Closed): Bundled gems lack online documentation
I have no plan to add the documentation of bundled gems under the docs.r-l.o. I don't want to spend the time for coordinating all bundled gems especially gems outside ruby org of GitHub.
>I think they should:
> ...
I'm +1 to above St...
hsbt (Hiroshi SHIBATA)
07:51 AM Bug #20854 (Closed): Some bundled gems are not installed starting with 007c75ce4c66243e41144c6977e5ccbf4ab71c93
Ruby 3.4 is already released, and I couldn't reproduce this. hsbt (Hiroshi SHIBATA)
07:47 AM Bug #20560 (Closed): make install - skipped bundled gems - minor issue
This is duplicate of https://bugs.ruby-lang.org/issues/21388. hsbt (Hiroshi SHIBATA)
07:44 AM Bug #21388 (Assigned): make install and bundled gems
hsbt (Hiroshi SHIBATA)
06:31 AM Revision 9fddb8d9 (git): Suppress dangling pointer warning by gcc
`__has_warning` is clang, not gcc. nobu (Nobuyoshi Nakada)
06:31 AM Revision 7ddc5e61 (git): Suppress overflow warning at `ALLOC_N` in `iseq_set_local_table`
`xmalloc2` checks the overflow of arguments multiplication. nobu (Nobuyoshi Nakada)
06:31 AM Revision c5f7d274 (git): Check for 64bit atomic operations
May not be supported on some 32bit architectures.
```
/usr/lib/gcc-cross/m68k-linux-gnu/14/../../../../m68k-linux-gnu/bin/ld: ../../libruby-static.a(vm.o): in function `rbimpl_atomic_u64_set_relaxed':
/home/ubuntu/build/ruby/master/m68k...
nobu (Nobuyoshi Nakada)
06:27 AM Revision 47f55b4b (git): Mark as NORETURN
nobu (Nobuyoshi Nakada)
06:26 AM Revision 206110a2 (git): Add missing lock in `rb_ivar_defined`
If called on a class, we should acquire the lock. byroot (Jean Boussier)
06:16 AM Feature #20105 (Closed): Introduce `IO::Stream` or something similar.
In the end, I created a gem for this. I'm okay with using a gem.
https://github.com/socketry/io-stream
ioquatix (Samuel Williams)
06:14 AM Revision 1f4913db (git): [ruby/did_you_mean] Revert "Alias value to take in old Ruby"
This reverts commit https://github.com/ruby/did_you_mean/commit/15d7b0bfa573.
https://github.com/ruby/did_you_mean/commit/86a7daca19
hsbt (Hiroshi SHIBATA)
05:59 AM Revision 6b8dcb7c (git): shape.c: fix off by one error in `shape_tree_mark`
byroot (Jean Boussier)
05:59 AM Revision bbd5a5a8 (git): vm_getivar: normalize shape_id to ignore frozen state
Freezing an object changes its `shape_id` This is necessary
so that `setivar` routines can use the `shape_id` as a cache key
and save on checking the frozen status every time.
However for `getivar` routines, this causes needless cache m...
byroot (Jean Boussier)
05:59 AM Revision 625d6a9c (git): Get rid of frozen shapes.
Instead `shape_id_t` higher bits contain flags, and the first one
tells whether the shape is frozen.
This has multiple benefits:
- Can check if a shape is frozen with a single bit check instead of
dereferencing a pointer.
- Guar...
byroot (Jean Boussier)
05:51 AM Revision 6b7e3395 (git): [ruby/psych] Revert "Alias value or join to take in old Ruby"
This reverts commit https://github.com/ruby/psych/commit/1a4d383efe0b.
https://github.com/ruby/psych/commit/2f51c02280
hsbt (Hiroshi SHIBATA)
05:35 AM Revision a88ff325 (git): [ruby/uri] Revert "Alias value or join to take in old Ruby"
This reverts commit https://github.com/ruby/uri/commit/443ed0cf8540.
https://github.com/ruby/uri/commit/9e51838a04
hsbt (Hiroshi SHIBATA)
05:28 AM Revision ac1dfee4 (git): [ruby/date] Removed workaround for assert_ractor
https://github.com/ruby/date/commit/700e44ef54 hsbt (Hiroshi SHIBATA)
05:12 AM Revision 80352678 (git): [ruby/time] Removed workaround for assert_ractor
https://github.com/ruby/time/commit/337410e971 hsbt (Hiroshi SHIBATA)
05:08 AM Revision 04b26db5 (git): Support Ractor#value and Ractor#join for old versions of Ruby
https://github.com/ruby/test-unit-ruby-core/pull/9
https://github.com/ruby/test-unit-ruby-core/pull/10
hsbt (Hiroshi SHIBATA)
05:03 AM Revision 50400f3b (git): [ruby/etc] Removed workaround for assert_ractor
https://github.com/ruby/etc/commit/fd61177b71 hsbt (Hiroshi SHIBATA)
04:04 AM Feature #21346: Introduce `String#ensure_suffix`
I like this idea, but I'm concerned about the same method returning `self` in one case and a new string in another. It seems like it'd be easier to reason about if it either always returned a new string or always affected the original ob... maxfelsher (Max Felsher)
03:47 AM Revision a84f7343 (git): Added warning for CGI.parse
hsbt (Hiroshi SHIBATA)
02:38 AM Revision 0ecb6896 (git): Correct comments for packed shape and index [ci skip]
nobu (Nobuyoshi Nakada)

06/03/2025

11:00 PM Misc #21369: Propose Max Bernstein (@tekknolagi) as a core committer
Thank you @k0kubun for nominating me to be a committer and for @tenderlovemaking, @eileencodes, and @duerst for their votes of confidence. It would be an honor to join and continue to work on Ruby with you all. tekknolagi (Maxwell Bernstein)
07:55 PM Revision 553753cd (git): Fix scheduler warning
```
test/fiber/test_scheduler.rb:98: warning: Scheduler should implement #fiber_interrupt
```
byroot (Jean Boussier)
07:48 PM Revision 89d49433 (git): Fix memory leak of Ractor ports
Memory leak reported:
3 miniruby 0x1044b6c1c ractor_init + 164 ractor.c:460
2 miniruby 0x1043fd6a0 ruby_xmalloc + 44 gc.c:5188
1 miniruby ...
peterzhu2118 (Peter Zhu)
07:48 PM Revision 7a40f1f0 (git): Fix memory leak of Ractor recv_queue
Memory leak reported:
3 miniruby 0x104702c1c ractor_init + 164 ractor.c:460
2 miniruby 0x1046496a0 ruby_xmalloc + 44 gc.c:5188
1 miniruby ...
peterzhu2118 (Peter Zhu)
07:23 PM Feature #20405: Inline comments
I've been thinking about inline comments since the idea was brought up at RubyKaigi 2025. I agree they’d be a valuable addition to the language, but none of the proposed syntaxes have quite resonated with me.
The one that feels most R...
marcoroth (Marco Roth)
07:15 PM Revision e27404af (git): Use all 32bits of `shape_id_t` on all platforms
Followup: https://github.com/ruby/ruby/pull/13341 / [Feature #21353]
Even thought `shape_id_t` has been make 32bits, we were still limited
to use only the lower 16 bits because they had to fit alongside `attr_index_t`
inside a `uintptr_...
byroot (Jean Boussier)
04:07 PM Feature #21311: Namespace on read (revised)
You boot with **one** Gemfile.lock, which has a single consistent transitive closure.
To have a different closure, you have a different Gemfile.lock and you Bundle require in a different namespace.
Remember, the moment you create a nam...
fxn (Xavier Noria)
03:45 PM Feature #21311: Namespace on read (revised)
Eregon (Benoit Daloze) wrote in #note-107:
> ```
> ...
Yes, it would only help with direct dependencies of the app:
```
App->A->B->[email protected]
\
[email protected]
```
But not for transitive, which is probably the more common type of con...
bughit (bug hit)
03:32 PM Feature #21311: Namespace on read (revised)
In other words, my understanding is that each namespace starts with its own Gemfile.lock. Different namespaces have potentially different dependency graphs.
And yes, a lot of code is duplicated in memory.
fxn (Xavier Noria)
03:30 PM Feature #21311: Namespace on read (revised)
Eregon (Benoit Daloze) wrote in #note-109:
> But we don't want two copies of `A` or `App` so that's not a solution, the use case here would be to run a single `App` which depends on gems which transitively depend on incompatible version...
fxn (Xavier Noria)
03:17 PM Feature #21311: Namespace on read (revised)
fxn (Xavier Noria) wrote in #note-108:
> my understanding is the idea is that you can load different versions of gems _in different namespaces_.
Yes, that much should work but that's just the motivation of running multiple apps in on...
Eregon (Benoit Daloze)
02:53 PM Feature #21311: Namespace on read (revised)
@eregon my understanding is the idea is that you can load different versions of gems _in different namespaces_.
So, in that example, you'd need two namespaces, and `A` needs to be defined in each one of them.
For everyone following, na...
fxn (Xavier Noria)
02:36 PM Feature #21311: Namespace on read (revised)
> Multiple versions of gems can be required
> ...
I think loading different versions of a gem in a single app is impossible to support with Namespace.
But maybe I'm missing something, let me know if so.
Suppose we have this dependency...
Eregon (Benoit Daloze)
04:04 PM Revision ea8b53a5 (git): Allow pass special constants to the write barrier
Some GC implementations want to always know when an object is written to,
even if the written value is a special constant. Checking special constants
in rb_obj_written was a micro-optimization that made assumptions about
the GC implement...
peterzhu2118 (Peter Zhu)
04:02 PM Bug #21171 (Closed): Segfault on large stack (RUBY_THREAD_VM_STACK_SIZE) on 3.4.2
Thank you for the bug report. I've debugged this and it's a duplicate of #21099. I marked that for backport and it should be fixed in the next release of Ruby 3.4. peterzhu2118 (Peter Zhu)
03:30 PM Misc #21385: Namespace: Suggesting a rename
hsbt (Hiroshi SHIBATA) wrote in #note-9:
> FYI: `Context` is conflict with Mastodon.
I’m fairly confident we can find at least 2 instances of `Namespace` in the wild.
I don’t think this argument has much weight.
cheba (Alexander Mankuta)
01:31 AM Misc #21385: Namespace: Suggesting a rename
FYI: `Context` is conflict with Mastodon.
https://github.com/mastodon/mastodon/blob/main/app/models/context.rb#L3
hsbt (Hiroshi SHIBATA)
02:07 PM Revision 5f247416 (git): [ruby/prism] Document ClassNode fields - Adds documentation for the fields of the `ClassNode`. - Part of #2123
https://github.com/ruby/prism/commit/99615b43ac harasho
02:00 PM Bug #21394 (Closed): Memory leak in Prism's RubyVM::InstructionSequence.new
Applied in changeset commit:git|34b407a4a89e69dd04f692e2b29efa2816d4664a.
----------
Fix memory leak in Prism's RubyVM::InstructionSequence.new
[Bug #21394]
There are two ways to make RubyVM::InstructionSequence.new raise which
would ...
peterzhu2118 (Peter Zhu)
02:00 PM Revision 34b407a4 (git): Fix memory leak in Prism's RubyVM::InstructionSequence.new
[Bug #21394]
There are two ways to make RubyVM::InstructionSequence.new raise which
would cause the options->scopes to leak memory:
1. Passing in any (non T_FILE) object where the to_str raises.
2. Passing in a T_FILE object where Stri...
peterzhu2118 (Peter Zhu)
09:13 AM Revision 135583e3 (git): [ruby/tmpdir] Restore Ractor.yield style test for old version of Ruby
https://github.com/ruby/tmpdir/commit/f12c766996 hsbt (Hiroshi SHIBATA)
09:13 AM Revision 365d5b6b (git): [ruby/time] Alias value or join to take in old Ruby
https://github.com/ruby/time/commit/2a1827b0ce hsbt (Hiroshi SHIBATA)
09:13 AM Revision d609a231 (git): [ruby/json] Update `JSONInRactorTest` to handle Ruby 3.5 Ractors.
https://github.com/ruby/json/commit/d42b36963d byroot (Jean Boussier)
09:13 AM Revision 267d8a04 (git): [ruby/strscan] Support `Ractor#value`
(https://github.com/ruby/strscan/pull/157)
This is same as https://github.com/ruby/stringio/pull/134
---------
https://github.com/ruby/strscan/commit/141f9cf9b6
Co-authored-by: Koichi Sasada <[email protected]>
hsbt (Hiroshi SHIBATA)
08:40 AM Revision 8ab4935d (git): [ruby/pathname] Alias value or join to take in old Ruby
https://github.com/ruby/pathname/commit/c501767d12 hsbt (Hiroshi SHIBATA)
08:40 AM Revision a79e9ab3 (git): [ruby/uri] Alias value or join to take in old Ruby
https://github.com/ruby/uri/commit/443ed0cf85 hsbt (Hiroshi SHIBATA)
08:24 AM Revision 6609ba05 (git): [ruby/io-wait] Alias value or join to take in old Ruby
https://github.com/ruby/io-wait/commit/cf84aea70d hsbt (Hiroshi SHIBATA)
08:24 AM Revision ce459c1d (git): [ruby/did_you_mean] Omit some tests with JRuby
https://github.com/ruby/did_you_mean/commit/a7a438ae27 hsbt (Hiroshi SHIBATA)
08:24 AM Revision 0266e4de (git): [ruby/did_you_mean] Alias value to take in old Ruby
https://github.com/ruby/did_you_mean/commit/15d7b0bfa5 hsbt (Hiroshi SHIBATA)
07:56 AM Bug #21384 (Closed): const_added is triggered twice when using autoload
nobu (Nobuyoshi Nakada)
07:56 AM Revision a77ec9a2 (git): [ruby/psych] Alias value or join to take in old Ruby
https://github.com/ruby/psych/commit/1a4d383efe hsbt (Hiroshi SHIBATA)
07:44 AM Revision 7d119005 (git): [ruby/stringio] Support `Ractor#value`
(https://github.com/ruby/stringio/pull/134)
from https://bugs.ruby-lang.org/issues/21262
We need to alias `Ractor#value` to `Ractor#take` for old versions of
Ruby.
---------
https://github.com/ruby/stringio/commit/9954dabd80
Co-auth...
hsbt (Hiroshi SHIBATA)
07:29 AM Bug #21373 (Closed): "Illegal instruction: 4" when raising SystemStackError after rescuing
mame (Yusuke Endoh)
07:24 AM Misc #21371 (Rejected): Proposal to Remove SPARC Architecture Support from Ruby
nobu (Nobuyoshi Nakada)
07:21 AM Bug #21329 (Closed): `date_core.so` is broken with the recent MSYS2 update
There is no action by ruby core side. hsbt (Hiroshi SHIBATA)
07:02 AM Revision c6c51569 (git): [ruby/io-console] Alias value or join to take in old Ruby
https://github.com/ruby/io-console/commit/7106d05219 hsbt (Hiroshi SHIBATA)
06:59 AM Revision 17401792 (git): [ruby/etc] Alias value or join to take in old Ruby
https://github.com/ruby/etc/commit/3dbe760bed hsbt (Hiroshi SHIBATA)
06:57 AM Feature #21361: Set execution file and line
Note: As you may know, ISeq depends on the fact that one iseq has only one filename, so we need to change many places (we may need to include filename information along with the line number). ko1 (Koichi Sasada)
06:57 AM Revision 9991edcc (git): [ruby/digest] Alias value to take in old Ruby
https://github.com/ruby/digest/commit/1eaee7d4fe hsbt (Hiroshi SHIBATA)
06:46 AM Revision 52d85c0e (git): [ruby/date] Alias value to take in old Ruby
https://github.com/ruby/date/commit/1ce29a26dd hsbt (Hiroshi SHIBATA)
06:43 AM Bug #21356 (Closed): Error when accessing local variable named "default" with Binding#local_variable_get
Fixed by https://github.com/ruby/ruby/pull/13395 mame (Yusuke Endoh)
06:37 AM Bug #20009 (Closed): Marshal.load raises exception when load dumped class include non-ASCII
nobu (Nobuyoshi Nakada)
06:30 AM Bug #21330: Namespace: Class and Module frozen status is not namespaced
> I'm afraid that moving frozen flag into class_ext (and each built-in class variants can has each frozen state) makese OBJ_FROZEN code:
It seems like your sentence is missing a word. Did you mean to say that it will make `OBJ_FROZEN`...
byroot (Jean Boussier)
06:08 AM Bug #21330: Namespace: Class and Module frozen status is not namespaced
ko1 (Koichi Sasada) wrote in #note-4:
> I'm afraid that moving frozen flag into class_ext (and each built-in class variants can has each frozen state) makese `OBJ_FROZEN` code:
> ...
roda-sequel-stack (https://github.com/jeremyevans/ro...
jeremyevans0 (Jeremy Evans)
06:01 AM Bug #21330: Namespace: Class and Module frozen status is not namespaced
I'm afraid that moving frozen flag into class_ext (and each built-in class variants can has each frozen state) makese `OBJ_FROZEN` code:
```C
// include/ruby/internal/fl_type.h
static inline VALUE
RB_OBJ_FROZEN_RAW(VALUE obj)
{
...
ko1 (Koichi Sasada)
06:23 AM Bug #21313 (Closed): `it` in rescue/ensure on prism
mame (Yusuke Endoh)
05:47 AM Bug #21298: `ObjectSpace.allocation_class_path` returns inconsistent results depending on `TracePoint` state
Can we go ahead? This will bring incompatibility, so I think this should be fixed by the release. @ktsj @tenderlovemaking mame (Yusuke Endoh)
02:14 AM Bug #21392: Data classes do not allow overriding #inspect
nobu (Nobuyoshi Nakada) wrote in #note-5:
> austin (Austin Ziegler) wrote in #note-3:
> ...
In my feature branch where I'm converting to Data classes.
>
> ...
This is the problem, of course, with having maintained something backwa...
austin (Austin Ziegler)
01:39 AM Feature #21393 (Feedback): One-line pattern matching syntax as a method argument
nobu (Nobuyoshi Nakada)
01:12 AM Revision 6ca52090 (git): Remove hardcoded version of rake from Bundler tests
The original commit is https://github.com/rubygems/rubygems/commit/85f73e42a563ac6848ba22aeae344a5bdc5a9ed7 hsbt (Hiroshi SHIBATA)

06/02/2025

11:12 PM Revision 6f4eaa10 (git): Remove hardcoded version of rake from Bundler tests
Let them run against the version resolved by the `test_gems.rb` gemfile.
This should fix ruby-core CI job that was broken by the release of rake
13.3.0.
deivid (David Rodríguez)
11:06 PM Revision 710f5b77 (git): [rubygems/rubygems] Follow coding style
https://github.com/rubygems/rubygems/commit/bfac93100e TangRufus
11:06 PM Revision 79241467 (git): [rubygems/rubygems] Test `bin/` is included in the ignore list
https://github.com/rubygems/rubygems/commit/7afe81fd45 TangRufus
11:06 PM Revision 204e3c58 (git): [rubygems/rubygems] Only ignore `.gitignore` when generating gems with git
https://github.com/rubygems/rubygems/commit/aec5a7887d TangRufus
11:06 PM Revision 9024caa1 (git): [rubygems/rubygems] Ignore `Gemfile`, `gems.rb` & `gems.locked` according to `init_gems_rb` preference
https://github.com/rubygems/rubygems/commit/88aeb66f41 TangRufus
11:06 PM Revision 582e2c7f (git): [rubygems/rubygems] Extract `ignore_paths` helper method
https://github.com/rubygems/rubygems/commit/d45710ee53 TangRufus
11:06 PM Revision 2667df27 (git): [rubygems/rubygems] Remove `.git` from `spec.files` default ignore list
https://github.com/rubygems/rubygems/commit/4f96e12ff3 TangRufus
11:06 PM Revision ab63fb0e (git): [rubygems/rubygems] Rename `ignore_files` to `ignore_paths`
https://github.com/rubygems/rubygems/commit/c07e3a88aa TangRufus
11:05 PM Revision 636ff31c (git): [rubygems/rubygems] Add `.gitignore`, `gems.rb` & `gems.locked` into `spec.files` default ignore list
https://github.com/rubygems/rubygems/commit/6390ed7a2b TangRufus
11:05 PM Revision 63ae1d28 (git): [rubygems/rubygems] Remove `features/` from `spec.files` default ignore list
https://github.com/rubygems/rubygems/commit/77ba4192a7 TangRufus
11:05 PM Revision 68345e29 (git): [rubygems/rubygems] Only ignore `test/` when generating gems with `minitest` or `test-unit`
https://github.com/rubygems/rubygems/commit/c464f2036a TangRufus
11:05 PM Revision 2745221a (git): [rubygems/rubygems] Test it does not add any CI config files into ignore list when not generating any CI config
https://github.com/rubygems/rubygems/commit/018bb19244 TangRufus
11:05 PM Revision f1512bfa (git): [rubygems/rubygems] Extract `before` blocks
https://github.com/rubygems/rubygems/commit/ff51a51d1a TangRufus
11:05 PM Revision 959bde86 (git): [rubygems/rubygems] Suffix `.circleci` with `/` in `spec.files` in the `.gemspec` template
https://github.com/rubygems/rubygems/commit/e48c6beaf6 TangRufus
11:04 PM Revision 3691c540 (git): [rubygems/rubygems] Suffix `.github` with `/` in `spec.files` in the `.gemspec` template
https://github.com/rubygems/rubygems/commit/edf13f7e60 TangRufus
11:04 PM Revision 68d64f46 (git): [rubygems/rubygems] Exclude `spec` from `spec.files` in the `.gemspec` template only when using RSpec
https://github.com/rubygems/rubygems/commit/a42387b8be TangRufus
11:04 PM Revision 6b2088cf (git): [rubygems/rubygems] Exclude `.rspec` from `spec.files` in the `.gemspec` template
https://github.com/rubygems/rubygems/commit/331901941d TangRufus
11:04 PM Revision a7be563d (git): [rubygems/rubygems] Exclude `.rubocop.yml` and `.standard.yml` from `spec.files` in the `.gemspec` template
https://github.com/rubygems/rubygems/commit/9d937d4f7f TangRufus
11:04 PM Revision 48025717 (git): [rubygems/rubygems] Remove `appveyor` from `spec.files` default ignore list
https://github.com/rubygems/rubygems/commit/2f2046c97b TangRufus
11:04 PM Revision 04a39640 (git): [rubygems/rubygems] Refactor `spec.files` ignore list generation
https://github.com/rubygems/rubygems/commit/c11539f325 TangRufus
11:03 PM Revision b34959b4 (git): [rubygems/rubygems] Fix English grammar
https://github.com/rubygems/rubygems/commit/160938e75c TangRufus
10:47 PM Revision 21a14ea2 (git): [rubygems/rubygems] Moved the REMEMBERING OPTIONS section to be after CONFIGURATION KEYS
Since the remembering options are discouraged, the preferred method should be explained first.
Slight tweak to wording
Fix documentation spec test as per suggested patch
https://github.com/rubygems/rubygems/commit/9f082ccf31
Matthew Hively
10:47 PM Revision f4a5247c (git): [rubygems/rubygems] Clarify how BUNDLE_DEPLOYMENT, BUNDLE_FROZEN and BUNDLE_PATH are connected
https://github.com/rubygems/rubygems/commit/9ed20bddab Matthew Hively
10:47 PM Revision 1f894fa2 (git): [rubygems/rubygems] Remove unnecessary duplicate x64-mingw-ucrt entry
https://github.com/rubygems/rubygems/commit/d6f1f96585 larouxn (Nicholas La Roux)
10:47 PM Revision 869a52f3 (git): [rubygems/rubygems] Partially phase out x64-mingw32 in favour of x64-mingw-ucrt (platforms)
- the x64-mingw32 platform has been superseded by x64-mingw-ucrt
- the mingw-ucrt platform is present as of Windows 10, which was released 10 years ago in 2015 and all versions prior to 10 are end-of-life and 10 will be by mid October 20...
larouxn (Nicholas La Roux)
10:47 PM Revision a763716a (git): [rubygems/rubygems] misc: fix spelling
https://github.com/rubygems/rubygems/commit/0e40e7d938 John Bampton
07:54 PM Revision d6aa1714 (git): Update to ruby/spec@4d2fc4d
andrykonchin (Andrew Konchin)
07:45 PM Revision 685c8ca9 (git): Fix test_loading_kwargs_memory_leak
The test fails with:
TestISeq#test_loading_kwargs_memory_leak [test/ruby/test_iseq.rb:882]:
pid 18222 exit 1
| -:2:in '<main>': undefined method 'iseq_to_binary' for main (NoMethodError)
peterzhu2118 (Peter Zhu)
07:09 PM Bug #21394 (Closed): Memory leak in Prism's RubyVM::InstructionSequence.new
Fix: https://github.com/ruby/ruby/pull/13496
There are two ways to make RubyVM::InstructionSequence.new raise which would cause the options->scopes to leak memory:
1. Passing in any (non T_FILE) object where the to_str raises.
2. ...
peterzhu2118 (Peter Zhu)
06:57 PM Revision e596cf6e (git): Make FrozenCore a plain T_CLASS
John Hawthorn
03:49 PM Revision db2cfebf (git): Pin shape->edges
byroot (Jean Boussier)
03:49 PM Revision e9fd44dd (git): shape.c: Implement a lock-free version of get_next_shape_internal
Whenever we run into an inline cache miss when we try to set
an ivar, we may need to take the global lock, just to be able to
lookup inside `shape->edges`.
To solve that, when we're in multi-ractor mode, we can treat
the `shape->edges` ...
byroot (Jean Boussier)
03:26 PM Bug #21391: Inconsistent trailing slash behavior of File.join and Pathname#join with empty strings
Dan0042 (Daniel DeLorme) wrote in #note-2:
> That being said, I feel that `Pathname.new('/usr').join('')` is a nonsensical operation. It seems to result in a no-op, but it might be better to warn or raise an error.
Ah, looks like I migh...
Dan0042 (Daniel DeLorme)
01:52 PM Revision cbd49ecb (git): Remove unused RBASIC_RESET_FLAGS
peterzhu2118 (Peter Zhu)
01:52 PM Revision acc273a8 (git): Remove dependancy of default.c on internal/object.h
We don't want the default GC to depend on Ruby internals so we can build
it as a modular GC.
peterzhu2118 (Peter Zhu)
01:08 PM Revision cfe17520 (git): [DOC] Mention vsdevcmd.bat
nobu (Nobuyoshi Nakada)
01:02 PM Bug #21370 (Closed): `it` can cause ISeq serialization failure
Fixed in ff222ac27afe712ef6ec2bb74c81cdde1a1fa176 (not sure why the bot didn't catch it). byroot (Jean Boussier)
12:19 PM Feature #21346: Introduce `String#ensure_suffix`
Related: I've proposed both methods to Crystal, and the recently were [approved and merged](https://github.com/crystal-lang/crystal/pull/15782#event-17927216823). matheusrich (Matheus Richard)
11:41 AM Revision ff222ac2 (git): compile.c: Handle anonymous variables in `outer_variable_cmp`
[Bug #21370] byroot (Jean Boussier)
10:17 AM Feature #21387: Proposal to add Data#[]
@zverok @eregon Thanks for the feedback.
Reconsidering my motivation, I may have expected `Data` to be something like an *immutable* `Struct` (or even an *immutable* `Hash`).
I'm still attracted to this idea of an immutable `Hash`-...
ybiquitous (Masafumi Koba)
09:50 AM Revision 9a292528 (git): Fix compatibility with fiber schedulers that don't implement `#fiber_interrupt`. (#13492)
Samuel Williams
06:00 AM Bug #21392: Data classes do not allow overriding #inspect
austin (Austin Ziegler) wrote in #note-3:
> You are correct (and I should have known better; I have unit tests proving this).
What unit tests?
You can define `pretty_print` for IRB.
```ruby
def pretty_print(q)
q.tex...
nobu (Nobuyoshi Nakada)
02:22 AM Bug #21392 (Assigned): Data classes do not allow overriding #inspect
Thank you, confirmed. @ima1zumi @tompng Can you take a look?
```
$ irb
irb(main):001* module Color
irb(main):002* CIELAB = Data.define(:l, :a, :b) do
irb(main):003* def inspect
irb(main):004* "CIELAB [%.4f%% %.4f %.4f...
mame (Yusuke Endoh)
02:14 AM Bug #21392: Data classes do not allow overriding #inspect
You are correct (and I should have known better; I have unit tests proving this).
I'm not sure if this is an IRB issue, because IRB's output always outputs `<data …>`.
```
irb(main):002> p Color::CIELAB[1,2,3]
CIELAB [1.0000% 2.0...
austin (Austin Ziegler)
01:57 AM Bug #21392: Data classes do not allow overriding #inspect
I cannot reproduce the issue neither.
```
$ cat t.rb
module Color
CIELAB = Data.define(:l, :a, :b) do
def inspect
"CIELAB [%.4f%% %.4f %.4f]" % [l, a, b]
end
end
end
p Color::CIELAB[1,2,3]
$ ruby -v t.r...
mame (Yusuke Endoh)
12:34 AM Bug #21392 (Feedback): Data classes do not allow overriding #inspect
I get the "Expected" results for 3.2..master, not your "Actual". nobu (Nobuyoshi Nakada)
05:51 AM Misc #21385: Namespace: Suggesting a rename
When I explain the feature a concept that I use naturally is "execution context". Like, "foo.rb runs in its own execution context, and that is set externally, foo.rb is not aware of it." fxn (Xavier Noria)
03:29 AM Feature #21393: One-line pattern matching syntax as a method argument
> That code is not a pattern matching. It is interpreted as a keyword argument.
Oops! This was entirely my misunderstanding.
koic (Koichi ITO)
03:26 AM Feature #21393: One-line pattern matching syntax as a method argument
I understand your expectation, but if we allow this, the syntax would be ambiguous. I am not sure which
```ruby
do_something(expr in a, b, c)
```
should be interpreted as
```ruby
do_something((expr in a), b, c)
```
or
...
mame (Yusuke Endoh)
03:00 AM Feature #21393 (Feedback): One-line pattern matching syntax as a method argument
## Context
Using one-line `in` pattern matching syntax as a method argument causes a syntax error.
```console
$ ruby -vce 'do_something(expression in pattern)'
ruby 3.4.4 (2025-05-14 revision a38531fd3f) +PRISM [x86_64-darwin24]
...
koic (Koichi ITO)
12:03 AM Misc #21379: DevMeeting-2025-06-05
- [Feature #21347] Add `open_timeout` as an overall timeout option for `Socket.tcp`
- I propose introducing an option to `Socket.tcp` that raises a timeout exception after a specified period has elapsed since the method started.
- ...
shioimm (Misaki Shioi)

06/01/2025

11:50 PM Revision 20d7db8c (git): Handle test failure of mock object
Fixup 4c26a38ed3c
https://rubyci.s3.amazonaws.com/amazon2/ruby-master/log/20250601T213003Z.fail.html.gz
```
1)
An exception occurred during: Mock.verify_count
File.birthtime accepts an object that has a #to_path method FAILED
Mock 'pat...
hsbt (Hiroshi SHIBATA)
11:46 PM Misc #21385: Namespace: Suggesting a rename
I strongly support this proposal. It would avoid a lot of confusion down the line. Ideally, we would use a term that makes it clear that this is something much more wide-reaching, and something that's supposed to be much more rarely used... duerst (Martin Dürst)
09:56 PM Misc #21385: Namespace: Suggesting a rename
Some other ideas:
* Package - Some conflict with Packwerk, but then again would likely be used with it very quickly.
* Capsule - Similar to Package
* Realm - Bit Tolkien-esque, but no significant precedence in Ruby of this name bein...
baweaver (Brandon Weaver)
08:10 PM Misc #21385: Namespace: Suggesting a rename
Agreed naming this new feature `Namespace` is very confusing and misleading.
`isolates` doesn't sound right because they are not really isolated.
I think `Context` would be fine.
TruffleRuby has a similar feature called `InnerContext`...
Eregon (Benoit Daloze)
11:32 PM Bug #21392 (Closed): Data classes do not allow overriding #inspect
I'm preparing a new version of Color and I have decided to make all of the colour classes Data classes. However, it does not appear that `#inspect` can be overridden:
```ruby
module Color
CIELAB = Data.define(:l, :a, :b) do
...
austin (Austin Ziegler)
08:13 PM Misc #21379: DevMeeting-2025-06-05
* [Misc #21385] Namespace: Suggesting a rename (eregon)
* "Namespace" seems to confuse many people (that feature is not about namespacing, modules do that, but about multiple execution contexts with their own $LOAD_PATH, $LOADED_FEATU...
Eregon (Benoit Daloze)
03:40 AM Misc #21379: DevMeeting-2025-06-05
* [Feature #21389] Simplify Set#inspect output (jeremyevans0)
* I think Set#inspect should produce output similar to Array#inspect, not Object#inspect.
* Is using `Set[1, 2, 3]` for `Set#inspect` acceptable?
* Regardless of whet...
jeremyevans0 (Jeremy Evans)
08:06 PM Feature #21346: Introduce `String#ensure_suffix`
I think this would be good to add (both methods). Eregon (Benoit Daloze)
08:03 PM Bug #21375: Set[] does not call #initialize
IMO this is unnecessarily breaking compatibility.
If we don't want to support subclasses of Set properly as it used to work (and calling `initialize` is I think a totally reasonable assumption, especially for any library which used to b...
Eregon (Benoit Daloze)
07:55 PM Feature #21389: Simplify Set#inspect output
Per https://bugs.ruby-lang.org/issues/21377#note-5 (that issue should have been linked BTW, I added it),
I strongly believe showing `Set[1, 2, 3]` instead of `MySet[1, 2, 3]` for an instance of MySet would be a mistake.
Array and Has...
Eregon (Benoit Daloze)
03:35 AM Feature #21389 (Closed): Simplify Set#inspect output
As Set is now a core collection class, it should have special inspect output. Ideally, inspect output should be suitable to eval, similar to array and hash (assuming the elements are also suitable to eval):
```ruby
set = Set[1, 2, 3...
jeremyevans0 (Jeremy Evans)
07:48 PM Feature #21387: Proposal to add Data#[]
I think it's easy enough to add `[]` for your Data subclass where you want it.
I think it's best to avoid adding extra methods to Data as it seems not unlikely some might want [] to not be defined or to be defined differently.
@zvero...
Eregon (Benoit Daloze)
02:03 PM Bug #21391: Inconsistent trailing slash behavior of File.join and Pathname#join with empty strings
Dan0042 (Daniel DeLorme) wrote in #note-2:
> It's not the only inconsistent behavior: (absolute and relative paths example)
To clarify, I don't expect the result of the two to be equivalent in all cases, it's clearly documented what ...
lovro-bikic (Lovro Bikić)
01:02 PM Bug #21391: Inconsistent trailing slash behavior of File.join and Pathname#join with empty strings
It's not the only inconsistent behavior:
```ruby
File.join("/usr","/var") #=> "/usr/var"
Pathname.new("/usr").join("/var").to_s #=> "/var"
File.join("/usr","../var") #=> "/usr/../var"
Pathname.new("/usr...
Dan0042 (Daniel DeLorme)
09:42 AM Bug #21391 (Open): Inconsistent trailing slash behavior of File.join and Pathname#join with empty strings
```ruby
File.join('/usr', '')
# => "/usr/"
Pathname.new('/usr').join('').to_s
# => "/usr" # no trailing slash
File.join('/usr', ' ')
# => "/usr/ "
Pathname.new('/usr').join(' ').to_s
# => "/usr/ "
```
`File.join` with a...
lovro-bikic (Lovro Bikić)
07:03 AM Revision 3fd2d54a (git): Update bundled gems list as of 2025-06-01
git[bot]
06:45 AM Bug #21171: Segfault on large stack (RUBY_THREAD_VM_STACK_SIZE) on 3.4.2
```diff
--- gc/default/default.c.orig 2025-05-31 23:10:11.742430691 +0000
+++ gc/default/default.c 2025-05-31 23:10:44.442617151 +0000
@@ -9337,9 +9337,9 @@
rb_darray_make(&objspace->weak_references, 0);

// TODO: debug ...
purbug28 (puni ru)
05:22 AM Revision 4c26a38e (git): Skip birthtime failures on old linux
`statx(2)` is available since Linux 4.11 and glibc 2.28. nobu (Nobuyoshi Nakada)
03:38 AM Feature #21390 (Closed): Deprecate passing arguments to Set#to_set and Enumerable#to_set
Array#to_a, Hash#to_h, Enumerable#to_a, and Enumerable#to_h do not allow you to specify subclasses. This has undesired behavior when passing non-Set subclasses. All of these are currently allowed, and none make sense:
```ruby
enum ...
jeremyevans0 (Jeremy Evans)
03:16 AM Revision 1395abd0 (git): Win: Use `VsDevCmd.bat` instead of old `vcvarsall.bat`
nobu (Nobuyoshi Nakada)
01:24 AM Revision a64616fb (git): Win: Fix `winget` command to `install`
nobu (Nobuyoshi Nakada)

05/31/2025

04:42 PM Feature #21387: Proposal to add Data#[]
> However, I'm still curious why I've come up with this `#[]` idea.
> ...
I am not sure about this argument. The "can be initialized with keyword arguments" and "can be converted to Hash" are probably the most common features among all ...
zverok (Victor Shepelev)
01:41 PM Feature #21387: Proposal to add Data#[]
@zverok Thank you for the feedback!
My example of `data_people.pluck(:name)` was not so good, sorry. A strength of `pluck` is to accept multiple keys like `data_people.pluck(:name, :age)`, so `.map` isn't a proper alternative in this ...
ybiquitous (Masafumi Koba)
07:16 AM Feature #21387: Proposal to add Data#[]
The design goal of `Data` was to be as close to "just a simple atomic object" as possible and convenient. It is a "value object," not a "container". `#[]` is closer to a container protocol and starts to erode the design.
For a partic...
zverok (Victor Shepelev)
06:10 AM Feature #21387 (Open): Proposal to add Data#[]
## Proposal
I propose to add a new instance method `#[]` to the `Data` class, similar to [`Struct#[]`](https://docs.ruby-lang.org/en/3.4/Struct.html#method-i-5B-5D).
If writing the method signature in RBS, it would be like this:
...
ybiquitous (Masafumi Koba)
12:45 PM Bug #21388 (Rejected): make install and bundled gems
Two issues:
1. Currently, `make install` from the `MinGW (UCRT)` workflow shows two gems not being installed (`syslog` cannot be installed on Windows):
```
skipped bundled gems:
csv-3.3.5.gem not...
MSP-Greg (Greg L)
11:56 AM Revision 63617a6c (git): Update rake version in bundler tests
nobu (Nobuyoshi Nakada)
10:21 AM Revision f2ddd923 (git): Update rake version in lock files
nobu (Nobuyoshi Nakada)
09:43 AM Revision 32c708ef (git): Update bundled gems list as of 2025-05-31
git[bot]
09:31 AM Revision 49f35c91 (git): Bump bundled bigdecimal to 3.2.1 (#13482)
tompng (tomoya ishida)
09:31 AM Revision 2097d379 (git): Fix typo (s/ractore/ractor/)
Daisuke Aritomo
09:29 AM Revision 7b75b1f2 (git): prepare IDs for `Ractor::monitor`
To prevent the following strange error, prepare IDs at first.
```
<internal:ractor>:596:in 'Ractor#monitor': symbol :exited is already registered with 98610c (fatal)
from <internal:ractor>:550:in 'Ractor#join'
...
ko1 (Koichi Sasada)
08:15 AM Revision e8b31c27 (git): rake 13.3.0 -> 13.2.1
`make test-bundler-parallel` prints many errors, so try to
downgrade rake version.
```
219) bundle install --standalone run in a subdirectory with --binstubs creates stubs that can be symlinked
Failure/Error:
rai...
ko1 (Koichi Sasada)
07:49 AM Revision 9dc9d5f5 (git): [DOC] Fix indentation
RDoc markdown parser requires exact 4 spaces or tab as indentation.
Also the first nested bullet list must be separated from the enclosing
bullet list item by a blank line.
nobu (Nobuyoshi Nakada)
04:06 AM Revision 57d10c6e (git): NEWS entries for `Ractor::Port`
ko1 (Koichi Sasada)
04:05 AM Revision c0c94ab1 (git): skip failing test in a week
```
1) Failure:
TestGc#test_gc_stress_at_startup [/home/chkbuild/chkbuild/tmp/build/20250530T213003Z/ruby/test/ruby/test_gc.rb:799]:
[Bug #15784]
pid 1748790 killed by SIGSEGV (signal 11) (core dumped).
1. [3/3] Assertion for "success...
ko1 (Koichi Sasada)
03:43 AM Feature #20861: Add an environment variable for tuning the default thread quantum
Just to report back about this feature.
I've tried this now with about 5 different apps of various sizes, ranging from 10 requests per second up to 1000 requests per second. Both on web (Puma) and background job (Sidekiq) workloads. C...
nateberkopec (Nate Berkopec)

05/30/2025

11:56 PM Bug #21384: const_added is triggered twice when using autoload
I see, thank you for the clarification! petekinnecom (Pete Kinnecom)
03:32 PM Bug #21384: const_added is triggered twice when using autoload
Let me add that I'd prefer that Ruby does not consider autoloads as constants in the API, I'd like autoloads to become constants if realized (autoloading can err, and even if succeeds, the owner may not be the receiver of the `autoload` ... fxn (Xavier Noria)
03:30 PM Bug #21384: const_added is triggered twice when using autoload
It is intended.
Reason is, `constants` includes the constant after a call to `autoload`.
fxn (Xavier Noria)
11:17 PM Revision 79242968 (git): skip flaky test
```
1) Failure:
TestProcess#test_warmup_frees_pages [/tmp/ruby/src/trunk-random1/test/ruby/test_process.rb:2772]:
<164348> expected but was
<165985>.
```
can someone investigate it?
ko1 (Koichi Sasada)
09:00 PM Revision 2cce6287 (git): Sync lockfile from rubygems/rubygems (#13472)
* Sync lockfile from rubygems/rubygems
* Restore lockfile for test-bundler
In the past, bundler updated platform without normalized variable like arm64-darwin-23.
We ignored that update. But the current bundler uses arm64-darwin for th...
deivid (David Rodríguez)
07:14 PM Revision e577edb1 (git): Update bundled gems list as of 2025-05-30
git[bot]
07:01 PM Revision 49b7a092 (git): skip tests for BigDecimal 3.2.0
ko1 (Koichi Sasada)
07:01 PM Revision 70131741 (git): fix for test-bundled-gems to catch up new API
ko1 (Koichi Sasada)
07:01 PM Revision ef2bb610 (git): `Ractor::Port`
* Added `Ractor::Port`
* `Ractor::Port#receive` (support multi-threads)
* `Rcator::Port#close`
* `Ractor::Port#closed?`
* Added some methods
* `Ractor#join`
* `Ractor#value`
* `Ractor#monitor`
* `Ractor#unmonitor`
* Removed...
ko1 (Koichi Sasada)
05:02 PM Misc #21385: Namespace: Suggesting a rename
More evidence.
The CRuby code base has the predicate `rb_namespace_p` (I think, since Ruby 2.7):
```c
static inline bool
rb_namespace_p(VALUE obj)
{
if (RB_SPECIAL_CONST_P(obj)) return false;
switch (RB_BUILTIN_TYPE(ob...
fxn (Xavier Noria)
04:37 PM Misc #21385: Namespace: Suggesting a rename
Another suggestion: Context. matheusrich (Matheus Richard)
03:46 PM Misc #21385 (Closed): Namespace: Suggesting a rename
I'd like to suggest a rename of namespaces.
The word "namespace" is already taken in Ruby.
We say that classes and modules act as or represent namespaces. Constant paths nest them in practice. We say that it is a best practice that...
fxn (Xavier Noria)
04:33 PM Feature #21386 (Rejected): Introduce `Enumerable#join_map`
### Problem
The pattern `.map { ... }.join(sep)` is extremely common in Ruby codebases:
```ruby
users.map(&:name).join(", ")
```
It’s expressive but repetitive (both logically and computationally). This pattern allocates an in...
matheusrich (Matheus Richard)
02:55 PM Revision d2a1ad00 (git): [ruby/mmtk] Fix environment variable parsing
Ues more idiomatic rust approaches.
https://github.com/ruby/mmtk/commit/ef125f9eae
wks (Kunshan Wang)
02:55 PM Revision 94688bdc (git): [ruby/mmtk] Fix clippy warnings and formatting.
We also enable `#![warn(unsafe_op_in_unsafe_fn)]` in the whole mmtk_ruby
crate.
https://github.com/ruby/mmtk/commit/8b8025f71a
wks (Kunshan Wang)
02:55 PM Revision d8774ec9 (git): [ruby/mmtk] Bump MMTk and dependencies version
https://github.com/ruby/mmtk/commit/de252637ec wks (Kunshan Wang)
02:55 PM Revision 60de513d (git): [ruby/mmtk] Remove unused constant
Remove the unused constant HAS_MOVED_GFIELDSTBL and related methods.
In the mmtk/mmtk-ruby repo, we are now able to find the global field
(IV) table of a moved object during copying GC without using the
HAS_MOVED_GFIELDSTBL bit. We syn...
wks (Kunshan Wang)
02:27 PM Revision f8db23af (git): ZJIT: Fold more fixnum operations (#13465)
Tavian Barnes
02:23 PM Revision 65e9791c (git): ZJIT: Assert that we're compiling a specific YARV insn to HIR (#13471)
tekknolagi (Maxwell Bernstein)
01:00 PM Feature #21205 (Closed): Make File::Stat#birthtime available on Linux
Applied in changeset commit:git|18a036a6133bd141dfc25cd48ced9a2b78826af6.
----------
[Feature #21205] Define File::Stat#birthtime by statx
nobu (Nobuyoshi Nakada)
11:55 AM Revision 8872d3e1 (git): [Feature #21205] Fix up birthtime in ruby/spec
nobu (Nobuyoshi Nakada)
11:55 AM Revision 18a036a6 (git): [Feature #21205] Define File::Stat#birthtime by statx
nobu (Nobuyoshi Nakada)
09:44 AM Revision a333fb1e (git): Win: Add scripts to install and setup
nobu (Nobuyoshi Nakada)
04:11 AM Misc #21369: Propose Max Bernstein (@tekknolagi) as a core committer
+1. I'm quite surprised Max isn't already a committer, given his almost daily contributions. duerst (Martin Dürst)
12:02 AM Misc #21369: Propose Max Bernstein (@tekknolagi) as a core committer
+1 Max is doing great work on ZJIT eileencodes (Eileen Uchitelle)
 

Also available in: Atom