Project

General

Profile

Activity

From 10/16/2025 to 10/22/2025

Today

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)

10/20/2025

11:39 PM Misc #21646: Propose Luke Gruber as a Ruby committer
+1 Luke has been doing great work and is really knowledgeable in Ractors peterzhu2118 (Peter Zhu)
10:51 PM Misc #21646 (Open): Propose Luke Gruber as a Ruby committer
I'd like to propose adding Luke Gruber (@luke-gru) as a Ruby committer.
He's been contributing to CRuby [since 2019](https://github.com/ruby/ruby/commit/ec8e5f5aa64e2a54cf1e303f2b012c98e8d521ba) fixing a variety of bugs and being acti...
jhawthorn (John Hawthorn)
09:30 PM Revision 17368234 (git): ZJIT: Implement codegen for FixnumMod (#14857)
This is mostly to see what happens to the loops-times benchmark. tekknolagi (Maxwell Bernstein)
08:55 PM Revision 6e9f7974 (git): [DOC] Create doc/contributing/concurrency_guide.md
This guide is for those that want to contribute to ruby but don't
understand where they need to use locks or other concurrency mechanisms.
It teaches them how to use these locks safely and what is prohibited in
certain circumstances.
Luke Gruber
08:10 PM Revision e047cea2 (git): ZJIT: Optimize send with block into CCallWithFrame (#14863)
Since `Send` has a block iseq, I updated `CCallWithFrame` to take an optional `blockiseq` as well, and then generate `CCallWithFrame` for `Send` when the condition is right.
## Stats
`liquid-render` Benchmark
| Metric ...
Stan Lo
04:24 PM Revision 5d2a244b (git): [Bug #21644] compile.c: fix `newrange` INSN peephole optimization for chilled string
ref: https://bugs.ruby-lang.org/issues/21644
```shell
$ ruby -v -e '("a" || "b").."c"'
ruby 3.4.7 (2025-10-08 revision 7a5688e2a2) +PRISM [x86_64-linux]
-e:1: warning: possibly useless use of .. in void context
-e:1: [BUG] Stack consist...
viralpraxis (Iaroslav Kurbatov)
04:22 PM Revision 33f1af67 (git): ZJIT: Remove idx from hir::Insn::Param (#14872)
It turns out that we don't use it anywhere. tekknolagi (Maxwell Bernstein)
03:14 PM Bug #19017: Net::HTTP may block when attempting to reuse a persistent connection
Hi, I am not sure we should solve this in IO, the error lies more in calling eof? in the first place I would say as eof? is meant to be blocking - and currently I only see solutions that involve non-blocking calls.
The solution propos...
dotconfig404 (Friedrich Raschwitz)
02:55 PM Revision fba349e6 (git): ZJIT: Implement expandarray (#14847)
Only support the simple case: no splat or rest.
lobsters before:
<details>
```
***ZJIT: Printing ZJIT statistics on exit***
Top-20 not inlined C methods (60.5% of total 11,039,954):
Kernel#is_a?: 1,030,7...
tekknolagi (Maxwell Bernstein)
01:55 PM Bug #21645 (Open): Can't `require "resolve"` on Windows under Bundler without warnings
`prism` had disabled some workflows for ruby-head on windows because of the extraction from fiddle to being a bundled gem.
I attempted to renable them now, but it is still an issue: https://github.com/ruby/prism/pull/3687
During `bun...
Earlopain (Earlopain _)
12:09 PM Revision ac27bec2 (git): merge revision(s) 957c832db137e67289e93dfd9fd9e915b1f2fc87:
[PATCH] Fix memory leak in rb_const_remove when using namespace
We need to free the rb_const_entry_t we remove from the RCLASS_WRITABLE_CONST_TBL
otherwise it will leak memory.
nagachika (Tomoyuki Chikanaga)
09:12 AM Bug #21643 (Closed): 'make' or 'make up' results in: uncommon.mk:1988: *** missing separator. Stop.
@nobu: Many thanks! This is solved, most probably due to removing uncommon.mk.
[After that, I had to upgrade from Ubuntu 22.04 to Ubuntu 24.04 to make sure BASERUBY wasn't too old, so there may have been other reasons, too.]
duerst (Martin Dürst)
04:43 AM Bug #21643: 'make' or 'make up' results in: uncommon.mk:1988: *** missing separator. Stop.
duerst (Martin Dürst) wrote:
> Line 1988 and 1989 (the last two lines) in upcommon.mk read:
> ...
The `prism/srcs.mk` and `depend` file contents should follow it.
After removing that file and running `./config.status --recheck`, what ...
nobu (Nobuyoshi Nakada)
03:33 AM Bug #21643 (Closed): 'make' or 'make up' results in: uncommon.mk:1988: *** missing separator. Stop.
I tried to get my ruby checkout up to date using 'make up', but after a lot of output, it stopped with the message "uncommon.mk:1988: *** missing separator. Stop.". Now it just gives this message when trying 'make up' or 'make'.
Line...
duerst (Martin Dürst)
07:04 AM Revision 6eb75f6c (git): [ruby/rubygems] update magnus version in rust extension gem template
https://github.com/ruby/rubygems/commit/1ba8eb4ab3 Mat Sadler
06:52 AM Revision b6f1c4ed (git): [ruby/rubygems] Use ruby/rubygems instead of rubygems/rubygems at document, tool and configurations
https://github.com/ruby/rubygems/commit/749b498822 hsbt (Hiroshi SHIBATA)
06:52 AM Revision 22ceaf27 (git): [ruby/rubygems] Now ruby/rubygems is the canonical repository url
https://github.com/ruby/rubygems/commit/c637007e91 hsbt (Hiroshi SHIBATA)
05:17 AM Bug #21644 (Closed): Stack consistency error for the `newrange` INSN peephole optimization with chilled string
Applied in changeset commit:git|7587e92910e7604a4c66f2b804bfa2076339c6ff.
----------
[Bug #21644] compile.c: fix `newrange` INSN peephole optimization for chilled string
ref: https://bugs.ruby-lang.org/issues/21644
```shell
$ ruby -v ...
viralpraxis (Iaroslav Kurbatov)
04:32 AM Bug #21644 (Closed): Stack consistency error for the `newrange` INSN peephole optimization with chilled string
PR:https://github.com/ruby/ruby/pull/14879
Confirmed on every version since 3.4.
``` shell
$ ruby -v -e '("a" || "b").."c"'
ruby 3.4.7 (2025-10-08 revision 7a5688e2a2) +PRISM [x86_64-linux]
-e:1: warning: possibly useless use of...
viralpraxis (Iaroslav Kurbatov)
05:17 AM Revision 7587e929 (git): [Bug #21644] compile.c: fix `newrange` INSN peephole optimization for chilled string
ref: https://bugs.ruby-lang.org/issues/21644
```shell
$ ruby -v -e '("a" || "b").."c"'
ruby 3.4.7 (2025-10-08 revision 7a5688e2a2) +PRISM [x86_64-linux]
-e:1: warning: possibly useless use of .. in void context
-e:1: [BUG] Stack consist...
viralpraxis (Iaroslav Kurbatov)
04:51 AM Feature #21642: Introduce `IO::ConnectionResetError` and `IO::BrokenPipeError` as standardized IO-level exceptions.
ioquatix (Samuel Williams) wrote in #note-4:
> - "Connection Reset" occurs during read, and indicates that the remote end has dropped the connection, and it's likely that we are missing data (as opposed to reaching end of stream).
I ...
mame (Yusuke Endoh)
03:50 AM Feature #21642: Introduce `IO::ConnectionResetError` and `IO::BrokenPipeError` as standardized IO-level exceptions.
Thanks for your feedback. I understand your point and I think it makes sense.
"Connection Reset" and "Broken Pipe" have well defined meanings. On the face of it, I don't know what "CloseUnrecoverable" means. Is there a concept like this...
ioquatix (Samuel Williams)
12:55 AM Feature #21642: Introduce `IO::ConnectionResetError` and `IO::BrokenPipeError` as standardized IO-level exceptions.
I sympathize with this proposal. Having to rescue a wide variety of exceptions is a common pain point, especially when writing applications like chatbots.
I believe the best approach is to classify exceptions based on the required use...
mame (Yusuke Endoh)
12:38 AM Revision 4353187d (git): Fix extension file permissions on Cygwin in namespace feature
fd0 (Daisuke Fujimura)

10/19/2025

10:55 PM Feature #21642 (Open): Introduce `IO::ConnectionResetError` and `IO::BrokenPipeError` as standardized IO-level exceptions.
Currently, different IO implementations in Ruby raise inconsistent exception types when a connection is reset or broken.
For example:
```ruby
# Plain TCP socket:
socket.read_nonblock(1024)
# => Errno::ECONNRESET
# SSL socket:...
ioquatix (Samuel Williams)
02:22 PM Revision 957c832d (git): Fix memory leak in rb_const_remove when using namespace
We need to free the rb_const_entry_t we remove from the RCLASS_WRITABLE_CONST_TBL
otherwise it will leak memory.
peterzhu2118 (Peter Zhu)
11:35 AM Revision 2f20dc5d (git): [DOC] Improve loop code example documentation
TaoufikMejri
10:18 AM Revision 8edb40f6 (git): Change upstream repository of rubygems
hsbt (Hiroshi SHIBATA)
12:58 AM Revision 56afc0a0 (git): [ruby/English] [DOC] Markup variables in the full list as code
https://github.com/ruby/English/commit/5e60c1068a nobu (Nobuyoshi Nakada)
12:58 AM Revision 4e6d78b8 (git): [ruby/English] [DOC] Enclose English in quotes
https://github.com/ruby/English/commit/70b46b58cc nobu (Nobuyoshi Nakada)

10/18/2025

02:40 PM Revision ddd1aeaa (git): Free loaded_features_index in namespace
peterzhu2118 (Peter Zhu)
02:40 PM Revision eb4a6f0c (git): Fix memory leak of TypedData data in Namespace
peterzhu2118 (Peter Zhu)
02:40 PM Revision d7f412e6 (git): Add rb_root_namespace_data_type
peterzhu2118 (Peter Zhu)
01:34 PM Feature #19326: Please add a better API for passing a Proc to a Ractor
byroot (Jean Boussier) wrote in #note-13:
> I think we can close now?
```ruby
require 'pp'
class Worker
def initialize(*args, &block)
@args = args
@block = Ractor.shareable_proc(&block)
end
def run(count)
...
sdwolfz (Codruț Gușoi)
05:43 AM Revision 4365a094 (git): Don't check existence of openssl-1.1 dll files on GHA mingw workflow.
nagachika (Tomoyuki Chikanaga)
03:54 AM Revision db357848 (git): [ruby/zlib] Initialize const member
```
/github/workspace/src/ext/zlib/zlib.c:2608:25: warning: default initialization of an object of type 'struct read_raw_arg' with const member leaves the object uninitialized [-Wdefault-const-init-field-unsafe]
2608 | struct re...
nobu (Nobuyoshi Nakada)
03:26 AM Revision 599257ea (git): Stop renaming openssl dll files on GHA mingw workflow.
nagachika (Tomoyuki Chikanaga)
03:20 AM Revision 4a09da62 (git): partially merge revision 949573028b127931cb034a2928ef80a59c45ea43:
[PATCH] Win32: OpenSSL 1.1 DLLs are no longer used
We are already using OpenSSL 3.3 and have no possibility to use system
provided DLLs.
nagachika (Tomoyuki Chikanaga)
02:51 AM Bug #21638: Ractor-local `$DEBUG` is not marked
ruby_3_3 commit:e526fbe770909974f610b7a2a00bd8d5dd045f1f merged revision(s) commit:e94a2f691d67ad98be9036e76c765fcfa7d22552. nagachika (Tomoyuki Chikanaga)
02:20 AM Revision e526fbe7 (git): merge revision(s) e94a2f691d67ad98be9036e76c765fcfa7d22552: [Backport #21638]
[PATCH] [Bug #21638] Mark ractor-local `$VERBOSE` and `$DEBUG`
https://github.com/sampersand/blog/blob/master/the%20-s%20flag.md#the-segfault
nagachika (Tomoyuki Chikanaga)
12:44 AM Revision 7989a2ff (git): Preallocate capacity for id table in rb_singleton_class_clone_and_attach
We know the exact capacity for the constant table created in
rb_singleton_class_clone_and_attach so we can preallocate it.
peterzhu2118 (Peter Zhu)
12:40 AM Revision 9b221695 (git): [DOC] Tweaks for String#rindex
burdettelamar (Burdette Lamar)

10/17/2025

10:37 PM Revision a0bf6d34 (git): ZJIT: Add inlining for Kernel#respond_to? (#14873)
lobsters before:
<details>
```
***ZJIT: Printing ZJIT statistics on exit***
Top-20 not inlined C methods (61.1% of total 10,568,718):
Kernel#is_a?: 1,030,925 ( 9.8%)
Stri...
aidenfoxivey (Aiden Fox Ivey)
09:26 PM Revision cb550433 (git): Set method table owned by iclass in rb_class_duplicate_classext
We duplicate the method table in rb_class_duplicate_classext, so we should
set RCLASSEXT_ICLASS_IS_ORIGIN and unset RCLASSEXT_ICLASS_ORIGIN_SHARED_MTBL
to signal that the iclass owns the method table and it should be freed.
peterzhu2118 (Peter Zhu)
08:29 PM Revision 1c119f02 (git): Revert "ZJIT: Mark commonly-edited files as merge=union (#14865)"
This reverts commit 23287c45806cac060ed63e87176d1a87968b9267.
This looks like a mixed bag...
Max Bernstein
07:48 PM Revision 23287c45 (git): ZJIT: Mark commonly-edited files as merge=union (#14865)
This helps the default merge driver make reasonable decisions (and
therefore avoid conflicts) when multiple people are e.g. adding tests
to src/hir.rs at the same time.
tekknolagi (Maxwell Bernstein)
07:33 PM Revision 0594646c (git): ZJIT: Don't push frame for Hash#size (#14871)
`Hash#size` was not in "Top-20 not annotated C methods" on lobsters so our before / after benchmarks are not very helpful for this change.
<details>
<summary>Before</summary>
<br>
```
***ZJIT: Printing ZJIT statistics on exit***
Top-20 ...
Jacob (Jacob Jacob)
05:26 PM Revision 0e5cb74a (git): ZJIT: Don't push frame for String#empty? (#14836)
lobsters before:
```
***ZJIT: Printing ZJIT statistics on exit***
Top-20 not inlined C methods (71.9% of total 15,247,103):
Hash#[]: 4,516,006 (29.6%)
Class#current: 1,15...
Jacob (Jacob Jacob)
12:39 PM Revision 5298e979 (git): [rubygems/rubygems] Postpone to remove legacy mingw platform
https://github.com/rubygems/rubygems/commit/9b3a5a8ae9 hsbt (Hiroshi SHIBATA)
12:26 PM Revision fb72e188 (git): Update repository urls for rubygems and bundler
hsbt (Hiroshi SHIBATA)
09:55 AM Revision 837947ac (git): Compatibility with test-unit-ruby-core
nobu (Nobuyoshi Nakada)
09:37 AM Revision 943b5f66 (git): CI: Launchable: Fix errors at actions/setup-python on ppc64le/s390x
The following errors happened at the actions/setup-python step.
https://github.com/ruby/ruby/actions/runs/18229870239
> The version '3.x' with architecture 's390x' was not found for Ubuntu 24.04.
> ...
After skipping the actions/setup-...
Jun Aruga
08:24 AM Revision 5ced99dd (git): [rubygems/rubygems] :Revamp CmakeBuilder to fix the issues described in #8572. Specifically:
* Correctly pass command line arguments to CMake
* Call CMake twice - once to configure a project and a second time to build (which is the standard way to use CMake). This fixes the previously incorrect assumption that CMake generates a ...
cfis (Charlie Savage)
06:09 AM Revision c2860bff (git): CI: Try mingw arm64
nobu (Nobuyoshi Nakada)
06:09 AM Revision 87593f2c (git): Disable shorten-64-to-32 warning on IL32LLP64
Disable the shorten-64-to-32 warning for now, because it currently
generates a lot of warnings on platforms where `sizeof(void*)` is
larger than `sizeof(long)`.
TODO: Replace `long` with `ptrdiff_t` or something in the all sources.
nobu (Nobuyoshi Nakada)
06:09 AM Revision 485f079d (git): win32: OBJCOPY is not needed on Windows in favor of def file
nobu (Nobuyoshi Nakada)
06:09 AM Revision 1546362f (git): win32: Prefix `clock_getclock` and `clock_getres`
Get rid of conflict with inline versions provided in time.h. nobu (Nobuyoshi Nakada)
06:09 AM Revision 89961f85 (git): configure.ac: Update caches for functions defined in win32.c
nobu (Nobuyoshi Nakada)
06:09 AM Revision 3dc62016 (git): win32: Install the same packages as vcpkg even on msys
nobu (Nobuyoshi Nakada)
06:08 AM Revision 2dc23c1a (git): win32: Fix missing type
nobu (Nobuyoshi Nakada)
05:52 AM Revision 5a23716c (git): Skip low precision clocks to measure performances
nobu (Nobuyoshi Nakada)
05:52 AM Revision b2d4dc9c (git): win32: Support more `clockid_t`
Add `CLOCK_PROCESS_CPUTIME_ID` and `CLOCK_THREAD_CPUTIME_ID`. nobu (Nobuyoshi Nakada)
05:11 AM Revision ff6bd7fb (git): [ruby/ipaddr] Fix InvalidAddressError message
https://github.com/ruby/ipaddr/commit/c96dbadee3 ishikawa999
03:01 AM Bug #21632 (Closed): Backport REXML CVE-2025-58767 fix
Merged. naitoh (Jun NAITOH)
01:54 AM Revision 9664191e (git): Use ruby/setup-ruby v1.265.0
hsbt (Hiroshi SHIBATA)
01:32 AM Revision d2edfe55 (git): Bump rexml to v3.4.4 for Ruby 3.2 (CVE-2025-58767)
This update addresses CVE-2025-58767 (GHSA-c2f4-jgmc-q2r5). naitoh (Jun NAITOH)
12:53 AM Bug #21641 (Closed): Hash#to_s behaves different in 3.4
closed by request of OP zenspider (Ryan Davis)

10/16/2025

11:40 PM Revision 4f51f624 (git): [rubygems/rubygems] Restrict what schemes are acceptable in the remote fetcher
The remote fetcher only works with certain schemes (`http`, `https`,
`s3`, and `file`). It's possible for other schemes to show up in this
code and it can cause bugs.
Before this patch, doing `gem install path:///hello` would result in...
tenderlovemaking (Aaron Patterson)
09:03 PM Revision 9a80258b (git): Fix crash when freeing namespaces
remove_class_from_subclasses calls st_insert, which mallocs. Malloc is not
allowed in GC. This commit replaces the st_insert with an st_update since
we know that ns_id exists in the st_table.
The following script reproduces the crash:
...
peterzhu2118 (Peter Zhu)
08:47 PM Revision 3fa84846 (git): ZJIT: Add to counters when FnProperties.inline inlining succeeds
This counts methods that can be folded away to nothing *in addition* to
the already-counted `CCall`.
Max Bernstein
08:47 PM Revision 9598b444 (git): ZJIT: Fix singleton class qualified method names in stats
Now methods on singleton classes (for example, `new`) get split up into
`String*#new`, `Array*#new`, ... (where the `*` indicates a singleton
class) instead of all looking like `Class#new`.
before:
```
***ZJIT: Printing ZJIT statistics...
Max Bernstein
07:24 PM Bug #21641: Hash#to_s behaves different in 3.4
Please feel free to join us on [Ruby Discord](https://discord.gg/ad2acQFtkh) or [#ruby IRC](https://web.libera.chat/#ruby) to discuss all the options! Refining Hash is one way:
``` ruby
module LegacyHashToS
refine Hash do
def t...
shan (Shannon Skipper)
07:12 PM Bug #21641: Hash#to_s behaves different in 3.4
It's mentioned in https://www.ruby-lang.org/en/news/2024/12/25/ruby-3-4-0-released/ under Hash#inspect rendering have been changed. [Bug #20433] masterleep2 (Bill Lipa)
06:03 PM Bug #21641 (Closed): Hash#to_s behaves different in 3.4
I couldn't find anywhere documenting this change from Ruby 3.3 to Ruby 3.4:
3.3.9:
``` ruby
> irb
3.3.9 :001 > {x:1}.to_s
=> "{:x=>1}"
3.3.9 :002 >
```
3.4.0:
```ruby
3.4.0 :001 > {x:1}.to_s
=> "{x: 1}"
3.4.0 :002 >
...
matheussilvasantos (Matheus Oliveira)
07:16 PM Revision 037b6e24 (git): ZJIT: Break out patchpoint exit reasons (#14858)
We have a lot of patchpoint exits on some applications and this helps
pin down why.
tekknolagi (Maxwell Bernstein)
05:35 PM Revision 190a3cd4 (git): ZJIT: [DOC] Recommend cargo-binstall for ZJIT tool installation (GH-14859)
aidenfoxivey (Aiden Fox Ivey)
03:34 PM Revision f925f1ae (git): ZJIT: Inline BasicObject#initialize (#14856)
It just returns nil. tekknolagi (Maxwell Bernstein)
02:38 PM Revision 68f45a6d (git): [ruby/prism] Do not rely on RUBY_VERSION being consistent
https://github.com/ruby/prism/commit/34428946db kddnewton (Kevin Newton)
02:29 PM Revision a8a8f1c2 (git): [ruby/prism] Handle RUBY_VERSION being nil
https://github.com/ruby/prism/commit/dda0dc81df kddnewton (Kevin Newton)
02:10 PM Revision cea3307f (git): [ruby/prism] Do not stub Ruby version
https://github.com/ruby/prism/commit/44c4306247 kddnewton (Kevin Newton)
02:00 PM Revision 6652d507 (git): [ruby/prism] Create a new string for the current version error
https://github.com/ruby/prism/commit/ebf4425d49 kddnewton (Kevin Newton)
01:20 PM Revision 99929d6f (git): [ruby/prism] Do not rely on Gem being loaded
https://github.com/ruby/prism/commit/2466940e49 kddnewton (Kevin Newton)
12:45 PM Revision ea4c3169 (git): Update default gems list at aa2d3cd5133e6a5deb24fa047e5a66 [ci skip]
git[bot]
12:43 PM Revision aa2d3cd5 (git): [ruby/prism] Bump to v1.6.0
https://github.com/ruby/prism/commit/b72fcc6183 kddnewton (Kevin Newton)
12:34 PM Revision f5d3b6e6 (git): [ruby/prism] Add support for `Prism.parse(foo, version: "current")`
The docs currently say to use `Prism.parse(foo, version: RUBY_VERSION)` for this.
By specifying "current" instead, we can have prism raise a more specifc error.
Note: Does not use `ruby_version` from `ruby/version.h` because writing a t...
Earlopain (Earlopain _)
03:40 AM Revision 1d95d75c (git): ZJIT: Profile opt_succ and inline Integer#succ for Fixnum (#14846)
This is only really called a lot in the benchmark harness, as far as I
can tell.
tekknolagi (Maxwell Bernstein)
02:53 AM Feature #21615: Introduce `Array#values`
This feels like opening Pandora's box. If this is accepted, I can foresee the following discussions arising, just off the top of my head:
* Should `Array#keys` be defined as a method that returns `(0...ary.size).to_a`?
* `Array#find_...
mame (Yusuke Endoh)
02:01 AM Revision 7a474e1f (git): ZJIT: Inline String#getbyte (#14842)
tekknolagi (Maxwell Bernstein)
01:21 AM Revision 45c01686 (git): Use explicit memory orders in concurrent_set
The atomic load/store operations here should mostly be using
release/acquire semantics. This may lead to better performance than what
we had under the default seq_cst.
On x86 this may make the atomic store of hash faster, as it can avoi...
jhawthorn (John Hawthorn)
12:13 AM Revision 9e4a7569 (git): Use BUILTIN_TYPE in gc_mark_check_t_none
jhawthorn (John Hawthorn)
 

Also available in: Atom