Project

General

Profile

Activity

From 05/06/2025 to 05/12/2025

Today

03:52 AM Revision f638e148 (git): Support to sync cgi/escape from ruby/cgi repo
hsbt (Hiroshi SHIBATA)
02:09 AM Revision 4464cbe5 (git): [rubygems/rubygems] Fix doctor command parsing of otool output
I have several gem dylibs that have a line matching "(compatibility "
with no file path preceding it.
https://github...
Randy Stauner
02:09 AM Revision af799140 (git): [ruby/json] Favor decimal notation over scientific notation for floats
e.g.
```
JSON.dump(1746861937.7842371)
```
master:
```
"1.https://github.com/ruby/json/commit/746861937784+9"
```
T...
byroot (Jean Boussier)

05/11/2025

09:56 PM Bug #21328: Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
Or, use GCC 14 for a while, if possible. (I am not familiar with MSYS2) mame (Yusuke Endoh)
09:56 PM Bug #21328 (Closed): Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
I believe this is the same issue as #21286.
Please apply the patch of https://github.com/ruby/ruby/pull/13202 your...
mame (Yusuke Endoh)
03:27 PM Bug #21328 (Closed): Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
We are facing an issue that starts in 05/03/2025
We have an Azure Devops Pipeline that build and test a project, b...
fagrela (Felipe Agrela)
08:37 PM Revision dc5555d7 (git): Fix -Wmaybe-uninitialized
../namespace.c: In function ‘current_namespace’:
../namespace.c:221:48: warning: ‘proc_ns’ may be used uninitialized ...
k0kubun (Takashi Kokubun)
08:05 PM Revision 8b7a4d16 (git): Handle GC triggering while building the initial `id_to_obj_tbl`
GC can trigger while we build the table, and if it sweeps an object
with an ID, it may not find it in the `id_to_obj`...
byroot (Jean Boussier)
05:50 PM Revision 2fe8b9cd (git): Copy to path with the base name
nobu (Nobuyoshi Nakada)
05:50 PM Revision b48b8413 (git): digest.so needs ruby/digest.h which is installed by build-ext
nobu (Nobuyoshi Nakada)
05:50 PM Revision 204740b7 (git): Revert "Try removing building C API specs in CRuby makefiles entirely"
This reverts commit 2a9236366d6016738a756caecab03263565a20c7.
spec/ruby/optional/capi/spec_helper.rb doesn't work wel...
nobu (Nobuyoshi Nakada)
05:50 PM Revision 3e47e7a4 (git): Fix redefinition of `clock_gettime` and `clock_getres`
winpthreads-git 12.0.0.r720 provides `clock_gettime` and
`clock_getres` as inline functions.
nobu (Nobuyoshi Nakada)
05:35 PM Revision f2e5f6db (git): Allow T_CLASS and generic types to be too_complex
The intial complex shape implementation never allowed objects
other than T_OBJECT to become too complex, unless we ru...
byroot (Jean Boussier)
05:02 PM Feature #21219: `Object#inspect` accept a list of instance variables to display
ℹ️ In case it's of interest/inspiration, I released [Inspectable](https://alchemists.io/projects/inspectable) 0.2.0 w... bkuhlmann (Brooke Kuhlmann)
04:32 PM Misc #21325: make ruby more middle-aged man friendly

nobu (Nobuyoshi Nakada) wrote in #note-2:
> `format` is an alias of `#sprinf` inherited from `Kernel`.
> We can...
pynix (Pynix wang)
10:27 AM Misc #21325: make ruby more middle-aged man friendly
`format` is an alias of `#sprinf` inherited from `Kernel`.
We can't rename it.
nobu (Nobuyoshi Nakada)
04:16 PM Feature #21311: Namespace on read (revised)
> wanted to make sure everyone is aware of this
What I want all in the thread to realize is that if somewhere in the...
fxn (Xavier Noria)
03:09 PM Feature #21311: Namespace on read (revised)
Example:
```ruby
# main.rb
class C
attr_reader :target
def initialize(target)
@target = target
end
end
...
fxn (Xavier Noria)
03:05 PM Feature #21311: Namespace on read (revised)
fxn (Xavier Noria) wrote in #note-70:
> Maybe you have the C code in your head, I am looking at it as a Ruby program...
tagomoris (Satoshi Tagomori)
02:53 PM Feature #21311: Namespace on read (revised)
> That should not happen, and if it happens, it's a bug. Could you write and show the script to reproduce it?
Exactl...
fxn (Xavier Noria)
02:50 PM Feature #21311: Namespace on read (revised)
fxn (Xavier Noria) wrote in #note-68:
> @tagomoris when I said that (1) would break Ruby semantics I meant that **in...
tagomoris (Satoshi Tagomori)
02:44 PM Feature #21311: Namespace on read (revised)
@tagomoris when I said that (1) would break Ruby semantics I meant that **in the same namespace** you would have two ... fxn (Xavier Noria)
02:24 PM Feature #21311: Namespace on read (revised)
@tagomoris From the point of view of the Ruby programmer, I have an object, I pass it, and the callee receives a diff... fxn (Xavier Noria)
01:59 PM Feature #21311: Namespace on read (revised)
@fxn I'm unsure I correctly understand what you mean... Let me check your point.
You said:
* The current namespac...
tagomoris (Satoshi Tagomori)
10:11 AM Feature #21311: Namespace on read (revised)
Some of the issues I have noted seem to be addressable and have been added to the TODO. (I have written tickets for t... fxn (Xavier Noria)
10:00 AM Feature #21311: Namespace on read (revised)
@byroot Thank you for working on the feature. I'll merge the patches soon (had merged one already).
About the crash ...
tagomoris (Satoshi Tagomori)
09:30 AM Feature #21311: Namespace on read (revised)
Alright, so I can't benchmark with `RUBY_NAMESPACE=1` because I keep running into that crash and can't figure it out.... byroot (Jean Boussier)
08:12 AM Feature #21311: Namespace on read (revised)
I submitted a fix for the crash here: https://github.com/tagomoris/ruby/pull/5
But now it's crashing in `require`
...
byroot (Jean Boussier)
08:02 AM Feature #21311: Namespace on read (revised)
headline benchmarks (in non-ideal conditions, I was on battery, etc) and **whithout** `RUBY_NAMESPACE=1`:
```
m...
byroot (Jean Boussier)
07:47 AM Feature #21311: Namespace on read (revised)
Trying to run benchmarks with `RUBY_NAMESPACE=1` crashes during init:
```
opt/rubies/head-namespaces/bin/ruby: [B...
byroot (Jean Boussier)
07:34 AM Feature #21311: Namespace on read (revised)
I opened a PR on yjit-bench with workarounds for both the fiddle issue and the CGI issue: https://github.com/Shopify/... byroot (Jean Boussier)
07:13 AM Feature #21311: Namespace on read (revised)
> bin/rails aborted!
> LoadError: cannot load such file -- cgi/cookie (LoadError)
Yes, the `cgi` changes broke Ra...
byroot (Jean Boussier)
12:42 AM Feature #21311: Namespace on read (revised)
`make yjit-bench` is now failing even on master HEAD.
> bin/rails aborted!
> LoadError: cannot load such file -- ...
tagomoris (Satoshi Tagomori)
03:44 PM Bug #21322: Namespaces and builtin classes as arguments and return values
We have followed the discussion in https://bugs.ruby-lang.org/issues/21311.
I may contribute a doc patch to explain ...
fxn (Xavier Noria)
01:24 PM Bug #21322: Namespaces and builtin classes as arguments and return values
The third option is more aligned with my intuitive idea of a new entity with new rules. Instead of a container of met... fxn (Xavier Noria)
01:01 PM Bug #21322: Namespaces and builtin classes as arguments and return values
@eregon maybe, but the fact is that you pass an object, and the callee receives a different object. This is not consi... fxn (Xavier Noria)
03:38 PM Revision 54c2edc0 (git): Fix `Namespace#inspect` to display its internal id
byroot (Jean Boussier)
02:32 PM Revision b94df81b (git): RUBY_TYPED_WB_PROTECTED should be specified with write barrier protection on this object.
https://github.com/tagomoris/ruby/pull/7
RUBY_TYPED_FREE_IMMEDIATELY can be added because namespace_entry_free does n...
tagomoris (Satoshi Tagomori)
02:32 PM Revision 574127b0 (git): Add missing gc_mark in `autoload_const_mark`
If we're referencing the namespace object we have to mark it. byroot (Jean Boussier)
02:32 PM Revision ae2d5378 (git): Suppress warning about unused variable without VM_CHECK_MODE
tagomoris (Satoshi Tagomori)
02:32 PM Revision e9b538bb (git): Fix `namespace_initialize` to not crash on boot
```
/opt/rubies/head-namespaces/bin/ruby(sigsegv+0x84) [0x104e897e8]
/usr/lib/system/libsystem_platform.dylib(_sigtra...
byroot (Jean Boussier)
02:32 PM Revision b132322e (git): Skip mmtk/i686 tests for a while
tagomoris (Satoshi Tagomori)
02:32 PM Revision bbcc3782 (git): Skip updating max_iv_count when the namespace cannot be determined
tagomoris (Satoshi Tagomori)
02:32 PM Revision c2c5b054 (git): Unexpectedly miss-fixed macro during rebase
tagomoris (Satoshi Tagomori)
02:32 PM Revision f0b41ef6 (git): Describe the basic documents of Namespace
tagomoris (Satoshi Tagomori)
02:32 PM Revision 8199e6e1 (git): Show experimental warning when namespace is enabled
tagomoris (Satoshi Tagomori)
02:32 PM Revision 8ecc04dc (git): Delete code for debugging namespace
tagomoris (Satoshi Tagomori)
02:32 PM Revision 82f645e8 (git): Namespace::Entry is long living object
tagomoris (Satoshi Tagomori)
02:32 PM Revision 294b52fb (git): Follow the code style about else
tagomoris (Satoshi Tagomori)
02:32 PM Revision 90e5ce61 (git): Rename RCLASS_EXT() macro to RCLASS_EXT_PRIME() to prevent using it wrongly
The macro RCLASS_EXT() accesses the prime classext directly, but it can be
valid only in a limited situation when nam...
tagomoris (Satoshi Tagomori)
02:32 PM Revision ff790c75 (git): Compact prime classext readable/writable flags
To make RClass size smaller, move flags of prime classext readable/writable to:
readable - use ns_classext_tbl is NU...
tagomoris (Satoshi Tagomori)
02:32 PM Revision e81d5020 (git): Add yjit/zjit bindings for adding namespace
tagomoris (Satoshi Tagomori)
02:32 PM Revision 5ee1ec31 (git): initialize method tables before any GC chance
tagomoris (Satoshi Tagomori)
02:32 PM Revision f24ba27d (git): avoid calling ZALLOC after NEWOBJ_OF for RClass: need to return RClass not promoted
tagomoris (Satoshi Tagomori)
02:32 PM Revision 4b33b468 (git): Fix function pointer type mismatch with `rb_define_private_method`
`rb_define_private_method` performs strict type checking on the function
pointer. As a result, we cannot pass the fun...
mame (Yusuke Endoh)
02:32 PM Revision cf3e2bba (git): Prevent a compile error of clang's -Wformat-pedantic
```
/github/workspace/src/proc.c:2023:65: error: format specifies type 'void *' but the argument has type 'const rb...
mame (Yusuke Endoh)
02:32 PM Revision e7e51749 (git): spec/ruby/core/module/ancestors_spec.rb: Add a guard for Namespace feat.
mame (Yusuke Endoh)
02:32 PM Revision cb99e544 (git): Update common.mk dependencies
mame (Yusuke Endoh)
02:32 PM Revision 8d3cd430 (git): Remove unnecessary prototype declarations
```
internal/class.h:158:20: warning: ‘RCLASS_SET_CLASSEXT_TABLE’ declared ‘static’ but never defined [-Wunused-funct...
mame (Yusuke Endoh)
02:32 PM Revision 1e4f7a28 (git): Fix "old-style function definition"
```
namespace.c: In function ‘rb_namespace_available’:
namespace.c:55:1: warning: old-style function definition [-Wol...
mame (Yusuke Endoh)
02:32 PM Revision 382645d4 (git): namespace on read
tagomoris (Satoshi Tagomori)
03:09 AM Revision 49742414 (git): Revert "Fix redefinition of `clock_gettime` and `clock_getres`"
This reverts commit 585598623da949c92d0f2ea94029a863142ec908.
This broke Windows CIs
```
linking miniruby.exe
Cr...
hsbt (Hiroshi SHIBATA)

05/10/2025

10:07 PM Revision 915d0277 (git): Fix typo (newsString -> new String)
Zopolis4
10:01 PM Bug #21327 (Open): Windows builds seem broken after clock_gettime changes?
https://github.com/ruby/ruby/actions/workflows/windows.yml
not sure how stable windows normally is, but this looks...
zenspider (Ryan Davis)
09:57 PM Bug #21326 (Open): Instruction generation differences between parse.y and prism for `def a(x, ...); b(...); end`
Diff instructions using:
```sh
DUMP="puts RubyVM::InstructionSequence.compile(ARGV.first).disasm.gsub(/^\d+ /, ''...
zenspider (Ryan Davis)
07:04 PM Misc #21325 (Open): make ruby more middle-aged man friendly
after 35, I lose all interests about programming.
no linux, no vim, no iterm2, and no much much.
when I want to...
pynix (Pynix wang)
05:32 PM Revision 98667f82 (git): [DOC] Update documentation for ObjectSpace#each_object
Co-authored-by: Benoit Daloze <eregontp@gmail.com> osyoyu (Daisuke Aritomo)
05:32 PM Revision 29b3d683 (git): [DOC] Make clear that current behavior is not ideal
Daisuke Aritomo
05:32 PM Revision a51b4a86 (git): [DOC] ObjectSpace#each_object behavior in multi-Ractor mode
This behavior of ObjectSpace#each_object has been around since Ruby 3.0
when Ractors were first introduced, but was n...
Daisuke Aritomo
04:43 PM Feature #21311: Namespace on read (revised)
kou (Kouhei Sutou) wrote in #note-54:
> > building fiddle fails
>
> Could you share the error message?
I could...
tagomoris (Satoshi Tagomori)
01:13 PM Feature #21311: Namespace on read (revised)
@mame
> I am personally excited to see Ruby adding a bold new feature that brings real energy and discussion to the ...
fxn (Xavier Noria)
09:03 AM Feature #21311: Namespace on read (revised)
> building fiddle fails
Could you share the error message?
kou (Kouhei Sutou)
08:37 AM Feature #21311: Namespace on read (revised)
> So I ran benchmark/app_fib.rb
Fibonnaci isn't a very interesting benchmark here. It's just the same method being...
byroot (Jean Boussier)
08:31 AM Feature #21311: Namespace on read (revised)
On my laptop, building fiddle fails and it prevents running `make yjit-bench`.
So I ran benchmark/app_fib.rb and g...
tagomoris (Satoshi Tagomori)
02:55 PM Revision 6dd7a7bb (git): Refactor `rb_obj_field_get` to handle complex shapes
This allow to get or set fields without having to worry about the
shape type.
byroot (Jean Boussier)
01:39 PM Revision d9502a83 (git): Rename `rb_field_get` -> `rb_obj_field_get`
To be consistent with `rb_obj_field_set`. byroot (Jean Boussier)
01:22 PM Feature #21258: Retire CGI library from Ruby 3.5
> It means CGI is not promoted bundled gems.
Is there a reason to skip this step?
For previous extractions we...
byroot (Jean Boussier)
12:36 PM Bug #21324 (Open): Namespace loads RubyGems in root Namespace but it should not
RubyGems has tons of mutable state, isn't core library and isn't "builtin classes" either, so it should not be in roo... Eregon (Benoit Daloze)
12:32 PM Bug #21323: irb fails to start with Namespace
Looks somewhat similar, `benchmark` loads fine in main namespace but not in other namespace:
```
$ RUBY_NAMESPACE=1...
Eregon (Benoit Daloze)
11:14 AM Bug #21323 (Open): irb fails to start with Namespace
```
$ irb
irb(main):001> 6 * 7
=> 42
$ RUBY_NAMESPACE=1 irb
/home/eregon/prefix/ruby-master/bin/ruby: warning:...
Eregon (Benoit Daloze)
12:22 PM Bug #21317: Namespaces leak with object IDs
Seems very related to https://bugs.ruby-lang.org/issues/21322 so let's keep this one closed and discuss there. Eregon (Benoit Daloze)
11:13 AM Bug #21317: Namespaces leak with object IDs
Full reproducer, showing that even though `Object` is the same reference in all namespaces it can have different cons... Eregon (Benoit Daloze)
10:13 AM Bug #21317 (Closed): Namespaces leak with object IDs
byroot (Jean Boussier)
10:12 AM Bug #21317: Namespaces leak with object IDs
@byroot, if you will, I believe this one can be closed too. fxn (Xavier Noria)
08:11 AM Bug #21317: Namespaces leak with object IDs
I suspect this one was an error of mine. I think we can close. fxn (Xavier Noria)
05:33 AM Bug #21317: Namespaces leak with object IDs
Did you actually test the code? `mod1.constants == mod2.constants` returns `true`.
```
$ cat main.rb
ns = Namesp...
mame (Yusuke Endoh)
12:20 PM Bug #21322: Namespaces and builtin classes as arguments and return values
Right, IOW it's the duality between builtin classes and other classes.
Builtin classes' constants, methods, ivar and...
Eregon (Benoit Daloze)
09:50 AM Bug #21322: Namespaces and builtin classes as arguments and return values
For example, if I instead do
```ruby
ns = Namespace.new
ns.require_relative 'foo'
c = Class.new
c::X = 1
ns::C.x(c)...
fxn (Xavier Noria)
09:40 AM Bug #21322: Namespaces and builtin classes as arguments and return values
> I believe this is consistent with the feature
I say so in the sense that objects with the same ID are equal in the...
fxn (Xavier Noria)
09:12 AM Bug #21322 (Open): Namespaces and builtin classes as arguments and return values
@tagomoris thanks for the docs under `doc/namespace.md`.
Unless I missed it, I believe there is an edge case relat...
fxn (Xavier Noria)
12:17 PM Bug #21320: Namespaces leak with constant lookup
Full repro:
```
# Copy the description program to program.rb, e.g. $ xsel -b > program.rb
$ RUBY_NAMESPACE=1 ruby ...
Eregon (Benoit Daloze)
08:36 AM Bug #21320: Namespaces leak with constant lookup
This is probably a consequence of https://bugs.ruby-lang.org/issues/21318. fxn (Xavier Noria)
12:13 PM Bug #21316: Namespaces leak with permanent names
Right I think in the namespace defining the class/module the `Module#name` needs to not have a prefix, or it will bre... Eregon (Benoit Daloze)
08:18 AM Bug #21316: Namespaces leak with permanent names
Main problem here is that there are many programs that depend on that name.
They may store it somewhere for later `c...
fxn (Xavier Noria)
06:22 AM Bug #21316: Namespaces leak with permanent names
This is definitely not ideal. `Class#name` could end up referring to a different constant.
```ruby
# main.rb
NS ...
mame (Yusuke Endoh)
11:06 AM Bug #21318: Namespaces leak with Module.nesting
Complete reproducer:
```
$ RUBY_NAMESPACE=1 ruby -ve 'p Module.nesting; ns = Namespace.new; File.write "ns.rb", "p ...
Eregon (Benoit Daloze)
10:11 AM Bug #21321: Namespaces do not support extending mixins
> and sorry for the noise.
It's alright, even if the feature is experimental, the sooner bugs are noticed the bett...
byroot (Jean Boussier)
10:09 AM Bug #21321: Namespaces do not support extending mixins
Yes, please, and sorry for the noise. fxn (Xavier Noria)
09:59 AM Bug #21321 (Closed): Namespaces do not support extending mixins
> cannot repro anymore.
Closing then?
byroot (Jean Boussier)
08:39 AM Bug #21321: Namespaces do not support extending mixins
I was yesterday running a checkout from May 6. Updated the branch now and cannot repro anymore. fxn (Xavier Noria)
08:28 AM Bug #21321: Namespaces do not support extending mixins
@mame I was here till 4 AM experimenting with this feature.
To be organized, I reported different things in differ...
fxn (Xavier Noria)
05:54 AM Bug #21321: Namespaces do not support extending mixins
I don't think it's really necessary to create a separate ticket for this from #21319, is it? mame (Yusuke Endoh)
09:59 AM Bug #21319 (Closed): Namespaces do not support including mixins
byroot (Jean Boussier)
08:34 AM Bug #21319: Namespaces do not support including mixins
I was yesterday running a checkout from May 6. Updated the branch now and cannot repro anymore. fxn (Xavier Noria)
05:46 AM Bug #21319: Namespaces do not support including mixins
I cannot repro the issue.
```ruby
# main.rb
ns = Namespace.new
ns.require "./sub"
p :success
```
```ruby...
mame (Yusuke Endoh)
09:26 AM Revision 58559862 (git): Fix redefinition of `clock_gettime` and `clock_getres`
winpthreads-git 12.0.0.r720 provides `clock_gettime` and
`clock_getres` as inline functions.
nobu (Nobuyoshi Nakada)
08:29 AM Revision 7add6b2a (git): ruby/spec has a minimum of Ruby 3.2 now
Eregon (Benoit Daloze)
06:59 AM Revision 3c37d6ff (git): Update bundled gems list as of 2025-05-09
git[bot]
06:41 AM Revision c75202c5 (git): [Feature #15408] Fix up _id2ref_spec.rb
nobu (Nobuyoshi Nakada)

05/09/2025

11:28 PM Bug #21319: Namespaces do not support including mixins
Maybe the root cause is _enabling_ namespaces with `RUBY_NAMESPACE=1`. fxn (Xavier Noria)
11:02 PM Bug #21319 (Closed): Namespaces do not support including mixins
The following program
```ruby
module M
end
class C
include M
end
```
fails under a namespace with err...
fxn (Xavier Noria)
11:27 PM Bug #21321: Namespaces do not support extending mixins
Maybe the root cause is _enabling_ namespaces with `RUBY_NAMESPACE=1`. fxn (Xavier Noria)
11:22 PM Bug #21321 (Closed): Namespaces do not support extending mixins
The program
```ruby
module M
end
class C
extend M
end
```
fails under a namespace with error:
```
...
fxn (Xavier Noria)
11:15 PM Revision 3306d7d2 (git): Only clear Ractor cache in child
This avoids a race condition where we were clearing the cache from
another ractor while it was in use. Oops!
Fixes t...
jhawthorn (John Hawthorn)
11:07 PM Bug #21320 (Open): Namespaces leak with constant lookup
The following program
```ruby
X = :top
class C
X = :super
end
class D < C
p X
end
```
prints `:...
fxn (Xavier Noria)
10:54 PM Bug #21318 (Open): Namespaces leak with Module.nesting
Namespaces are not transparent for this program:
```ruby
Module.nesting
```
The nesting is empty or not depen...
fxn (Xavier Noria)
10:13 PM Revision 87b621bd (git): Update default gems list at 58c008e68f31a8056df508cc46e17c [ci skip]
git[bot]
10:12 PM Revision 58c008e6 (git): [ruby/psych] Bump version for release
https://github.com/ruby/psych/commit/dbf9e36583 tenderlovemaking (Aaron Patterson)
10:08 PM Bug #21317 (Closed): Namespaces leak with object IDs
Namespaces are not transparent for this program
```ruby
if mod1.object_id == mod2.object_id
mod1.constants == ...
fxn (Xavier Noria)
10:05 PM Bug #21316 (Open): Namespaces leak with permanent names
Namespaces are not transparent for this program
```ruby
C = Class.new
C.name == 'C'
```
because under a non-...
fxn (Xavier Noria)
10:01 PM Feature #15408: Deprecate ObjectSpace._id2ref
> The question is rather why you want _id2ref to be deprecated
I want it removed, actually! 😀
You have seen all...
headius (Charles Nutter)
08:20 PM Feature #15408: Deprecate ObjectSpace._id2ref
headius (Charles Nutter) wrote in #note-44:
> I'd also like to know **why** you want `_id2ref` to stick around.
I...
Dan0042 (Daniel DeLorme)
07:19 AM Feature #15408 (Closed): Deprecate ObjectSpace._id2ref
Applied in changeset commit:git|4de049a3f9709ab8b0b192c40e83b910b80d6de3.
----------
Deprecate `ObjectSpace._id2ref`...
byroot (Jean Boussier)
06:34 AM Feature #15408: Deprecate ObjectSpace._id2ref
I was hoping for a removal timeline, but alright. I'll merge my PR. byroot (Jean Boussier)
03:14 AM Feature #15408: Deprecate ObjectSpace._id2ref
This was discussed at the dev meeting, and @matz agreed to add the deprecation warning. mame (Yusuke Endoh)
09:22 PM Revision 4a2f489c (git): Fix rb_range_beg_len() and rb_arithmetic_sequence_beg_len_step() spec
* The begp, lenp and stepp might not be written to, so they need default values. Eregon (Benoit Daloze)
09:22 PM Revision 2a923636 (git): Try removing building C API specs in CRuby makefiles entirely
* Since it does not work when using some configure options such as:
.../configure --with-ext=-test-/cxxanyargs,+ --...
Eregon (Benoit Daloze)
09:22 PM Revision 29be534f (git): Try fixing building C API specs with make
* But it doesn't work because there is no .ext/include/ruby/digest.h
when using .../configure --with-ext=-test-/cxx...
andrykonchin (Andrew Konchin)
09:22 PM Revision 78a2ffa0 (git): Fix digest specs when run in CRuby via make test-spec
andrykonchin (Andrew Konchin)
09:22 PM Revision cb4a4418 (git): Fix formatting in digest_spec.c
andrykonchin (Andrew Konchin)
09:22 PM Revision 269ad29d (git): Update to ruby/spec@d8bacef
andrykonchin (Andrew Konchin)
08:04 PM Bug #21315: Finalizers violate the `rb_ractor_confirm_belonging` assertion
Eregon (Benoit Daloze) wrote in #note-3:
> it clearly seems to exhibit that behavior
To clarify what I mean:
```...
Eregon (Benoit Daloze)
07:45 PM Bug #21315: Finalizers violate the `rb_ractor_confirm_belonging` assertion
> When a Ractor terminates just before it actually does so it should probably run the remaining finalizers
Objects...
jhawthorn (John Hawthorn)
07:13 PM Bug #21315: Finalizers violate the `rb_ractor_confirm_belonging` assertion
When a Ractor terminates just before it actually does so it should probably run the remaining finalizers, AFAIK, this... Eregon (Benoit Daloze)
06:56 PM Bug #21315: Finalizers violate the `rb_ractor_confirm_belonging` assertion
> Run each finalizer in the Ractor that created it (what do we do about terminated ractors?)
That one I think woul...
byroot (Jean Boussier)
06:51 PM Bug #21315: Finalizers violate the `rb_ractor_confirm_belonging` assertion
It does seem like it's a problem that this is a way to have access to an unshareable object from multiple ractors
``...
jhawthorn (John Hawthorn)
04:19 PM Bug #21315 (Open): Finalizers violate the `rb_ractor_confirm_belonging` assertion
Reproduction (with assertions enabled):
```ruby
require "tempfile"
Ractor.new do
10.times do
Tempfile....
byroot (Jean Boussier)
06:45 PM Revision 3135eddb (git): Refactor `FIRST_T_OBJECT_SHAPE_ID` to not be used outside `shape.c`
byroot (Jean Boussier)
06:07 PM Feature #21311: Namespace on read (revised)
This feature proposal is quite exceptional. Because this is a feature strongly driven by @matz himself, and Ruby is m... mame (Yusuke Endoh)
12:16 PM Feature #21311: Namespace on read (revised)
Let me add.
This is not a case of "let's merge and polish". Problem is, it has to be seen if you can satisfy the goa...
fxn (Xavier Noria)
11:29 AM Feature #21311: Namespace on read (revised)
I am aligned with @eregon.
There are several important issues.
Another one that has not been mentioned (I think) is...
fxn (Xavier Noria)
11:02 AM Feature #21311: Namespace on read (revised)
In https://github.com/ruby/dev-meeting-log/blob/master/2025/DevMeeting-2025-05-08.md#discussion
> mame: Are there any...
Eregon (Benoit Daloze)
05:53 PM Revision e2f5e233 (git): [ruby/psych] exception tests
https://github.com/ruby/psych/commit/1e9b79f699 OrenGitHub
05:53 PM Revision 42328d4e (git): [ruby/psych] more special cases
https://github.com/ruby/psych/commit/b33bf8b060 OrenGitHub
05:53 PM Revision 451e1dcf (git): [ruby/psych] duplicate more tests
https://github.com/ruby/psych/commit/a3be6429bf OrenGitHub
05:53 PM Revision ae299cc9 (git): [ruby/psych] add first test for safe load stream
https://github.com/ruby/psych/commit/336553b412 OrenGitHub
05:53 PM Revision f0e2a41d (git): [ruby/psych] fixed bugs from testing
https://github.com/ruby/psych/commit/e954f96639 OrenGitHub
05:53 PM Revision d6931930 (git): [ruby/psych] Add safe version for load_stream
https://github.com/ruby/psych/commit/30a2a5ee94 OrenGitHub
04:43 PM Revision 011982ef (git): Fix warnings in tests for ObjectSpace._id2ref
There's a lot of warnings when running test_objectspace.rb because of
ObjectSpace._id2ref. For example:
test_obj...
peterzhu2118 (Peter Zhu)
04:32 PM Revision 102063f9 (git): ZJIT: Fix a splitting condition for LHS
k0kubun (Takashi Kokubun)
02:24 PM Bug #18119 (Closed): Ractor crashes when instantiating classes
Applied in changeset commit:git|f30f0f0a22bb5cf536b5ca551f3dfa5ebb745030.
----------
Fix crash when instantiating cl...
peterzhu2118 (Peter Zhu)
02:24 PM Revision f30f0f0a (git): Fix crash when instantiating classes in Ractors
[Bug #18119]
When we create classes, it pushes the class to the subclass list of the
superclass. This access needs t...
peterzhu2118 (Peter Zhu)
01:14 PM Revision 5349c0aa (git): Align gems/bundled_gems [ci skip]
nobu (Nobuyoshi Nakada)
12:41 PM Feature #21258: Retire CGI library from Ruby 3.5
With recent commits, it seems that a cgi.gemspec is not created.
erb.gemspec shows it as a dependency?
MSP-Greg (Greg L)
04:08 AM Feature #21258 (Assigned): Retire CGI library from Ruby 3.5
We discussed this in devmeeting.
We decided the followings:
* To remove `cgi` library without `CGI.escape*` and...
hsbt (Hiroshi SHIBATA)
10:28 AM Bug #21280: StringIO#set_encoding warns when backed by chilled string literal
https://github.com/ruby/stringio/pull/132 is a much cleaner solution, was it considered?
(https://bugs.ruby-lang.org/...
Eregon (Benoit Daloze)
03:28 AM Bug #21280: StringIO#set_encoding warns when backed by chilled string literal
Discussed at the dev meeting. @matz said that he prefers not to issue warnings that could be false positives, even if... mame (Yusuke Endoh)
09:13 AM Revision 15e3675e (git): Remove dead code in `rb_gc_impl_ractor_cache_free`
Followup: https://github.com/ruby/ruby/pull/13286 byroot (Jean Boussier)
08:22 AM Revision ea772508 (git): Rename `RB_OBJ_SHAPE` -> `rb_obj_shape`
As well as `RB_OBJ_SHAPE_ID` -> `rb_obj_shape_id`
and `RSHAPE` is now a simple alias for `rb_shape_lookup`.
I tried ...
byroot (Jean Boussier)
08:22 AM Revision 0b81359b (git): Stop exposing rb_shape_frozen_shape_p
byroot (Jean Boussier)
08:22 AM Revision becc45ff (git): Eliminate some `rb_shape_t *` usages outside of `shape.c`.
byroot (Jean Boussier)
08:22 AM Revision a970d35d (git): Get rid of `rb_shape_get_parent`.
byroot (Jean Boussier)
08:22 AM Revision 5782561f (git): Rename `rb_shape_get_shape_id` -> `RB_OBJ_SHAPE_ID`
And `rb_shape_get_shape` -> `RB_OBJ_SHAPE`. byroot (Jean Boussier)
08:22 AM Revision a0075754 (git): Remove unused `rb_shape_object_id_index`
byroot (Jean Boussier)
08:22 AM Revision c9b08882 (git): Refactor `rb_shape_get_next` to return an ID
Also rename it, and change parameters to be consistent with
other transition functions.
byroot (Jean Boussier)
08:22 AM Revision e0200cfb (git): Refactor `rb_shape_transition_shape_remove_ivar` to not take a shape pointer
It's more consistent with other transition functions. byroot (Jean Boussier)
08:22 AM Revision 3f7c0af0 (git): Rename `rb_shape_obj_too_complex` -> `rb_shape_obj_too_complex_p`
byroot (Jean Boussier)
08:22 AM Revision 677d075c (git): Refactor `rb_shape_transition_too_complex` to return an ID.
byroot (Jean Boussier)
08:22 AM Revision f82523f1 (git): Refactor `rb_shape_transition_frozen` to return a `shape_id`.
byroot (Jean Boussier)
08:22 AM Revision 31d0a581 (git): Get rid of useless SHAPE_MASK
byroot (Jean Boussier)
08:22 AM Revision 334ebba2 (git): Rename `rb_shape_get_shape_by_id` -> `RSHAPE`
byroot (Jean Boussier)
08:22 AM Revision 9966de11 (git): Refactor `rb_shape_get_next_iv_shape` to take and return ids.
byroot (Jean Boussier)
08:22 AM Revision df7d25bb (git): Stop exposing rb_shape_get_root_shape
byroot (Jean Boussier)
08:22 AM Revision 62eb2007 (git): Remove unused rb_obj_debug_shape
byroot (Jean Boussier)
08:22 AM Revision e4f97ce3 (git): Refactor `rb_shape_depth` to take an ID rather than a pointer.
As well as `rb_shape_edges_count` and `rb_shape_memsize`. byroot (Jean Boussier)
08:22 AM Revision f8b3fc52 (git): Refactor `rb_shape_traverse_from_new_root` to not expose `rb_shape_t`
byroot (Jean Boussier)
08:22 AM Revision 7116b0a7 (git): Extract `rb_shape_free_all`
byroot (Jean Boussier)
08:19 AM Bug #20165 (Closed): Ractors moving a Struct breaks beyond the first 3 fields
Duplicate of: [Bug #20271] [Bug #20267] [Bug #20255]
This was fixed in 0350290262ea0fbc4e1807901797ee8a6970c2b9 an...
byroot (Jean Boussier)
08:16 AM Bug #20897 (Closed): resolv: not usable across ractors
The linked PR was merged. byroot (Jean Boussier)
07:55 AM Revision 30ef0f18 (git): Fix allocation count when forking with Ractors
After fork we reset to single ractor mode (which IMO we shouldn't do,
but it requires more work to fix) and so we nee...
jhawthorn (John Hawthorn)
07:19 AM Revision 4de049a3 (git): Deprecate `ObjectSpace._id2ref`
[Feature #15408]
Matz decided to deprecate it for Ruby 2.6 or 2.7 but that never
actually happened.
Given the objec...
byroot (Jean Boussier)
06:55 AM Misc #21100 (Closed): DevMeeting before RubyKaigi 2025
Meeting log is here: https://github.com/ruby/dev-meeting-log/blob/master/2025/DevMeeting-2025-04-15.md hsbt (Hiroshi SHIBATA)
06:37 AM Feature #21309: Can Thread::Mutex be Ractor shareable?
> Should I create a ticket here?
You can directly open a PR on https://github.com/ruby/net-http/.
If it doesn't...
byroot (Jean Boussier)
05:04 AM Feature #21309: Can Thread::Mutex be Ractor shareable?
> Maybe Net::HTTP could use `IO.select`?
That sounds like a good idea and I'd like to try it. I have checked some ...
osyoyu (Daisuke Aritomo)
06:37 AM Revision 4ef324c7 (git): Added https://bugs.ruby-lang.org/issues/21258 to NEWS.md
hsbt (Hiroshi SHIBATA)
05:28 AM Revision dcd0a35c (git): Update default gems list at d3c472781dec4fe415203fbb898d8b [ci skip]
git[bot]
05:27 AM Revision d3c47278 (git): Replaced CGI.parse with URI.decode_www_form
hsbt (Hiroshi SHIBATA)
05:27 AM Revision ab19b1f6 (git): Use CGI 0.5.0.beta1
hsbt (Hiroshi SHIBATA)
05:27 AM Revision 5e1c9067 (git): Added cgi for bundler testing. rack depends cgi/cookie.rb
hsbt (Hiroshi SHIBATA)
05:27 AM Revision 5aade8a8 (git): Added migration wrapper for cgi.rb and cgi/util.rb
hsbt (Hiroshi SHIBATA)
05:27 AM Revision ce6c1778 (git): Guard CGI examples with Ruby 3.5 and use cgi/escape for related examples
hsbt (Hiroshi SHIBATA)
05:27 AM Revision 600c6165 (git): Removed CGI library without CGI::Escape features
hsbt (Hiroshi SHIBATA)
05:27 AM Revision a61f51f6 (git): Use cgi/escape instead of cgi/util
hsbt (Hiroshi SHIBATA)
05:27 AM Revision 56423d43 (git): Reduce loading class/module on CGIUtilTest and CGIEscapeTest
hsbt (Hiroshi SHIBATA)
05:27 AM Revision 382be44f (git): Extract CGIEscapeTest from CGIUtilTest
hsbt (Hiroshi SHIBATA)
05:27 AM Revision 8a1d4514 (git): Support `require 'cgi/escape'` with extracting CGI::Escape from CGI::Util
hsbt (Hiroshi SHIBATA)
04:51 AM Revision c6676837 (git): Added instruction for initial setup of depend file
hsbt (Hiroshi SHIBATA)
04:50 AM Bug #19387: Issue with ObjectSpace.each_objects not returning objects after starting a ractor
I also ran into this, so I opened an pull request document this behavior.
https://github.com/ruby/ruby/pull/13278
osyoyu (Daisuke Aritomo)
03:52 AM Bug #21314 (Open): Kernel#autoload requires the wrong file (?)
While discussing #21154 with some people at the dev meeting, I found a weird behavior of `Kernel#autoload` that's har... mame (Yusuke Endoh)
03:43 AM Feature #21274 (Closed): Show performance warnings for easily avoidable unnecessary implicit splat allocations
jeremyevans0 (Jeremy Evans)
03:18 AM Feature #21274: Show performance warnings for easily avoidable unnecessary implicit splat allocations
This was discussed at the dev meeting, but @matz was negative about adding this warning. He prefers fluent code over ... mame (Yusuke Endoh)
03:31 AM Feature #21307 (Assigned): A way to strictly validate time input
mame (Yusuke Endoh)
03:30 AM Feature #21307: A way to strictly validate time input
Discussed at the dev meeting. This proposal was accepted as `struct: true` keyword argument, like
```ruby
Time.ne...
mame (Yusuke Endoh)
03:19 AM Feature #21287: Remove SortedSet autoload and set/sorted_set
Discussed at the dev meeting, and @matz said "go ahead".
mame (Yusuke Endoh)

05/08/2025

11:03 PM Bug #19408 (Closed): Object no longer frozen after moved from a ractor
Fixed by a5ba7124bcc112f537a29564f644dea67f2b532d jhawthorn (John Hawthorn)
10:43 PM Bug #17678 (Closed): Ractors do not restart after fork
Sorry @jeremyevans0 I think Aaron and I missed that PR, but we did the same thing in https://github.com/ruby/ruby/pul... jhawthorn (John Hawthorn)
08:34 PM Revision 7a660d7c (git): [DOC] Tweaks for What's Here
burdettelamar (Burdette Lamar)
08:25 PM Bug #18119: Ractor crashes when instantiating classes
I have a fix here: https://github.com/ruby/ruby/pull/13284 peterzhu2118 (Peter Zhu)
07:48 PM Revision b67711b1 (git): Fix `remove_instance_variable` on complex objects
Introduced in: https://github.com/ruby/ruby/pull/13159
Now that there is no longer a unique TOO_COMPLEX shape with
n...
byroot (Jean Boussier)
06:05 PM Feature #15408: Deprecate ObjectSpace._id2ref
@Dan0042 I think @Eregon covered what I was going to say, but I'd also like to know **why** you want `_id2ref` to sti... headius (Charles Nutter)
02:47 PM Feature #15408: Deprecate ObjectSpace._id2ref
https://byroot.github.io/ruby/performance/2025/04/26/unlocking-ractors-object-id.html explains the problems of `_id2r... Eregon (Benoit Daloze)
02:46 PM Feature #15408: Deprecate ObjectSpace._id2ref
@Dan0042 It still is, CRuby has to keep a weak map of all objects for which the object_id was asked in case `_id2ref`... Eregon (Benoit Daloze)
01:30 AM Feature #15408: Deprecate ObjectSpace._id2ref
The original reason to deprecate `_id2ref` is no longer relevant now that `object_id` is a monotonically-increasing I... Dan0042 (Daniel DeLorme)
05:53 PM Revision e3452cfa (git): Raise error on take/send for Ractors in child processes
Ractor objects that are available in a child process should raise a
`Ractor::ClosedError` exception when called with ...
tenderlovemaking (Aaron Patterson)
05:53 PM Revision f7ff3809 (git): Clean up Ractor cache after fork
Ractors created in a parent process should be properly shut down in the
child process. They need their cache cleared...
tenderlovemaking (Aaron Patterson)
05:53 PM Revision d7ad53f2 (git): Acquire VM lock around fork
Otherwise it might be held by another Ractor, causing a deadlock in the
new process.
jhawthorn (John Hawthorn)
05:46 PM Revision c7508563 (git): Fix -Wreturn-type
../variable.c: In function ‘iterate_over_shapes_with_callback’:
../variable.c:2189:1: warning: control reaches end of...
k0kubun (Takashi Kokubun)
05:31 PM Feature #20405: Inline comments
There seems to be some revival of this in the context of type checkers, and Hiroya Fujinami graciously asked for my o... jez (Jake Zimmerman)
04:37 AM Feature #20405: Inline comments
Using type checkers makes it difficult to write Ruby fluently. To make type checkers work effectively in Ruby, we nee... make_now_just (Hiroya Fujinami)
05:13 PM Bug #20957: RangeError on Array#values_at with negative ranges
I found almost same behavior at Array#fill
```
[0,1,2,3].fill(10, -10..-5) #=> RangeError
[0,1,2,3].fill(10, ...
kiridaruma (Keiichiro Nishiyama)
03:49 PM Bug #21267: respond_to check in Class#allocate is inconsistent
Right.
I think it's quite valuable to make those `rb_undef_alloc_func` to avoid having to handle uninitialized objec...
Eregon (Benoit Daloze)
04:55 AM Bug #21267: respond_to check in Class#allocate is inconsistent
> Or core types could actually define dup & clone as overridden methods, and not use the alloc function at all and so... jhawthorn (John Hawthorn)
03:21 PM Feature #21311: Namespace on read (revised)
I think it would be good to compare this to "isolated execution contexts" which is the well-known approach to get suc... Eregon (Benoit Daloze)
01:34 PM Feature #21311: Namespace on read (revised)
I'll do that, thank you! fxn (Xavier Noria)
12:53 PM Feature #21311: Namespace on read (revised)
fxn (Xavier Noria) wrote in #note-44:
> Congrats @tagomoris :).
>
> Would you be open to consider having the perm...
tagomoris (Satoshi Tagomori)
07:32 AM Feature #21311: Namespace on read (revised)
Congrats @tagomoris :).
Would you be open to consider having the permanent name of classes and modules be constant...
fxn (Xavier Noria)
05:23 AM Feature #21311: Namespace on read (revised)
I added committer grants to @tagomoris. Please let me know if you have extra permission or something. hsbt (Hiroshi SHIBATA)
04:34 AM Feature #21311: Namespace on read (revised)
> I nominate @tagomoris (Satoshi Tagomori) for committer.
+1
mame (Yusuke Endoh)
04:25 AM Feature #21311: Namespace on read (revised)
@tagomoris Can you share your required/optional information to me? see https://github.com/ruby/ruby/wiki/Committer-Ho... hsbt (Hiroshi SHIBATA)
04:21 AM Feature #21311: Namespace on read (revised)
Let's just merge and experiment. We won't know until we actually try it. Also, I nominate @tagomoris for committer.
...
matz (Yukihiro Matsumoto)
02:40 PM Feature #21309 (Rejected): Can Thread::Mutex be Ractor shareable?
osyoyu (Daisuke Aritomo) wrote in #note-5:
> I am not sure about this. Sending HTTP request using net/http inside an...
Eregon (Benoit Daloze)
01:38 PM Feature #21309: Can Thread::Mutex be Ractor shareable?
> if we got some shareable mutable state, then we'd need a shareable mutex
Come to think of it, I now do think tha...
osyoyu (Daisuke Aritomo)
02:36 PM Revision c18bedcd (git): Remove dependency on debug_counter.h when BUILDING_MODULAR_GC
This allows the default GC to not need debug_counter.h when building as a
modular GC.
peterzhu2118 (Peter Zhu)
02:36 PM Revision 3f5080e7 (git): Stop checking for USE_DEBUG_COUNTER in default.c
We don't need to check for USE_DEBUG_COUNTER because the code is no-op
if USE_DEBUG_COUNTER is not enabled.
peterzhu2118 (Peter Zhu)
02:31 PM Revision 46a82408 (git): [DOC] Tweaks for String#-@
burdettelamar (Burdette Lamar)
01:30 PM Misc #21290: Unable to build ruby extension on Fedora 42 due to possible GCC 15 issues
Just adding that I am also experiencing this with ed25519 and ruby-prof, as well as appsignal.
* **Ruby Version:**...
definiv (Jake W)
08:37 AM Misc #21290: Unable to build ruby extension on Fedora 42 due to possible GCC 15 issues
I also stumbled over this issue and falsely addressed it to mongodb/bson
Here is a Dockerfile which lets you repro...
AUlrich (Andreas Ulrich)
03:03 AM Misc #21290: Unable to build ruby extension on Fedora 42 due to possible GCC 15 issues
Hi,
I am also experiencing a similar issue when trying to install a Ruby gem with C extensions (`blurhash` and `ru...
hongminhee (Minhee Hong)
12:22 PM Revision 5e534849 (git): ZJIT: Temporarily revert path compression
For reasons I don't understand yet, this causes an issue when trying to
boot yjit-bench. Temporarily revert it.
Max Bernstein
09:59 AM Bug #21286: Windows - MSYS2 just updated to GCC 15.1.0, builds failing
ruby_3_4 merged commit:7e44df91b6d01be68391a029997f5ccdabe80603 alanwu (Alan Wu)
09:20 AM Revision f3006c26 (git): Add depend files under ext/-test-
nobu (Nobuyoshi Nakada)
09:07 AM Feature #21042: Add and expose Thread#memory_allocations memory allocation counters
only 3 statistics are acceptable.
I don't want to increase more and more measurements from performance perspective.
ko1 (Koichi Sasada)
09:03 AM Revision a41eed99 (git): [rubygems/rubygems] Update `TarWriter` test to store mtime in a variable
https://github.com/rubygems/rubygems/commit/0e2cec3fa3 Ellen Marie Dash
09:03 AM Revision 819ecd11 (git): [rubygems/rubygems] Add mtime to Gem::Package::TarWriter#add_file argument
Since 9e21dd9, Gem::Package::TarWriter#add_file adds the file to
the tar with Gem.source_date_epoch for its mtime.
Th...
unasuke (Yusuke Nakamura)
09:03 AM Revision 8685a81e (git): [ruby/strscan] jruby: Check if len++ walked off the end
(https://github.com/ruby/strscan/pull/153)
Fix https://github.com/ruby/strscan/pull/152
CRuby can walk off the end ...
headius (Charles Nutter)
09:03 AM Revision 5a0306f9 (git): [ruby/strscan] jruby: Pass end index to byteListToInum
(https://github.com/ruby/strscan/pull/150)
These parse methods take begin and end indices, not begin and length. A
t...
headius (Charles Nutter)
09:03 AM Revision 61b6f226 (git): [ruby/json] Constify static data in fpconv.c
https://github.com/ruby/json/commit/3b605d9b1e nobu (Nobuyoshi Nakada)
09:03 AM Revision 1f2a9dc2 (git): [ruby/psych] Refine Ruby 3.5 Set support.
Use feature testing to detect native Set,
and don't rely on `Set#to_h` which wasn't intended
as a public method.
htt...
byroot (Jean Boussier)
07:50 AM Revision 49b4e035 (git): Make test/ruby/test_env.rb#test_delete_if_in_ractor easier to debug
byroot (Jean Boussier)
07:50 AM Revision 71baa694 (git): variable.c: Fix compilation warnings
```
variable.c: In function ‘iterate_over_shapes_with_callback’:
variable.c:2188:1: warning: control reaches end of n...
byroot (Jean Boussier)
05:58 AM Revision cf9046c0 (git): Refactor `id_to_obj_tbl` compaction
Use `st_foreach_with_replace` rather than to call `st_insert`
from inside `st_foreach`, this saves from having to dis...
byroot (Jean Boussier)
05:58 AM Revision 2d1241ba (git): Get rid of RB_GC_VM_ID_TO_OBJ_TABLE_KEYS
byroot (Jean Boussier)
05:58 AM Revision f48e45d1 (git): Move `object_id` in object fields.
And get rid of the `obj_to_id_tbl`
It's no longer needed, the `object_id` is now stored inline
in the object alongsi...
byroot (Jean Boussier)
05:58 AM Revision d34c1505 (git): shape.c: refactor frozen shape to no longer be final
This opens the door to store more informations in shapes, such
as the `object_id` or object address in case it has be...
byroot (Jean Boussier)
05:58 AM Revision 6c9b3ac2 (git): Refactor OBJ_TOO_COMPLEX_SHAPE_ID to not be referenced outside shape.h
Also refactor checks for `->type == SHAPE_OBJ_TOO_COMPLEX`. byroot (Jean Boussier)
05:58 AM Revision 0ea210d1 (git): Rename `ivptr` -> `fields`, `next_iv_index` -> `next_field_index`
Ivars will longer be the only thing stored inline
via shapes, so keeping the `iv_index` and `ivptr` names
would be co...
byroot (Jean Boussier)
03:51 AM Feature #21274: Show performance warnings for easily avoidable unnecessary implicit splat allocations
> The term premature optimization typically refers to cases where you optimize, and later, the optimization results i... Dan0042 (Daniel DeLorme)
03:25 AM Feature #21274: Show performance warnings for easily avoidable unnecessary implicit splat allocations
Dan0042 (Daniel DeLorme) wrote in #note-2:
> I appreciate the effort here, but I wonder if this might be a case of p...
jeremyevans0 (Jeremy Evans)
03:06 AM Feature #21274: Show performance warnings for easily avoidable unnecessary implicit splat allocations
I appreciate the effort here, but I wonder if this might be a case of premature micro-optimization. Was there a measu... Dan0042 (Daniel DeLorme)
03:34 AM Revision 4e30b77b (git): Added depend file for test/-ext-/econv/test_append.rb
https://github.com/ruby/ruby/commit/ce51ef30df5bf07ec3881a377f0011b8f20ec507 broke
ext/-test-/econv/append.o. We shou...
hsbt (Hiroshi SHIBATA)
01:59 AM Feature #21279: Bare "rescue" should not rescue NameError
byroot (Jean Boussier) wrote in #note-5:
> 99% of the time, when I use a bare `rescue` it's because I'll call `raise...
Dan0042 (Daniel DeLorme)

05/07/2025

05:29 PM Feature #21311: Namespace on read (revised)
Eregon (Benoit Daloze) wrote in #note-12:
> Unless they truly need to communication at all between namespaces, but t...
Eregon (Benoit Daloze)
05:20 PM Feature #21311: Namespace on read (revised)
Basically, I believe the idea is to have isolated execution contexts without forking, but is hard to achieve that by ... fxn (Xavier Noria)
05:18 PM Feature #21311: Namespace on read (revised)
tagomoris (Satoshi Tagomori) wrote in #note-28:
> Mounting server-less applications (run on AWS Lambda, separated on...
Eregon (Benoit Daloze)
05:09 PM Feature #21311: Namespace on read (revised)
tagomoris (Satoshi Tagomori) wrote:
> Root namespace is a unique namespace to be defined when a Ruby process starts....
Eregon (Benoit Daloze)
05:07 PM Feature #21311: Namespace on read (revised)
Aaron that is a concern I have also in mind that I have not expressed yer.
The current proposal allows access to t...
fxn (Xavier Noria)
05:01 PM Feature #21311: Namespace on read (revised)
Eregon (Benoit Daloze) wrote in #note-12:
> * Any user-defined class instance won't be `is_a?` in another namespace ...
tenderlovemaking (Aaron Patterson)
04:36 PM Feature #21311: Namespace on read (revised)
Dan0042 (Daniel DeLorme) wrote in #note-19:
> I'm not sure if this can be achieved with TruffleRuby sub-interpreters...
Eregon (Benoit Daloze)
02:57 PM Feature #21311: Namespace on read (revised)
@tagomoris thanks for your replies, even more with such a busy thread :). Let me followup:
> There should be no need...
fxn (Xavier Noria)
02:24 PM Feature #21311: Namespace on read (revised)
byroot (Jean Boussier) wrote in #note-24:
> But I'd like to hear about common green path, day to day, use cases, not ...
peter.boling (Peter Boling)
02:09 PM Feature #21311: Namespace on read (revised)
Thank you for expanding on the motivation, the design makes more sense to me now.
I'm still not convinced the trad...
byroot (Jean Boussier)
02:04 PM Feature #21311: Namespace on read (revised)
@fxn
> So, I guess spawning does not create hierarchy. A namespace may not have a pointer to the namespace where i...
tagomoris (Satoshi Tagomori)
01:48 PM Feature #21311: Namespace on read (revised)
I'm sorry that I skipped to make effort to describe the motivation and copied the motivation section from the past ti... tagomoris (Satoshi Tagomori)
07:08 AM Feature #21311: Namespace on read (revised)
I have compiled the branch and I am playing around a bit with `miniruby` to test my understanding of the feature.
So...
fxn (Xavier Noria)
02:19 AM Feature #21311: Namespace on read (revised)
FYI: you can try namespace PR on https://ruby.github.io/play-ruby/?run=14855772787&options=%7B%22arguments%22%3A%5B%5... ko1 (Koichi Sasada)
05:09 PM Feature #21254 (Closed): Inlining Class#new
mame (Yusuke Endoh) wrote in #note-10:
> @tenderlovemaking Can we close this?
Yes, sorry. I thought I had closed ...
tenderlovemaking (Aaron Patterson)
06:37 AM Feature #21254: Inlining Class#new
Note: https://github.com/ruby/ruby/pull/13080 has been merged. hsbt (Hiroshi SHIBATA)
06:36 AM Feature #21254: Inlining Class#new
@tenderlovemaking Can we close this? mame (Yusuke Endoh)
05:04 PM Revision 7e44df91 (git): Fix C23 (GCC 15) WIN32 compatibility for rb_define_* functions
Backport [Bug #21286] alanwu (Alan Wu)
03:47 PM Revision 3e94b5f9 (git): Remove dependence on internal/hash.h for default GC
peterzhu2118 (Peter Zhu)
06:07 AM Bug #18878 (Assigned): parse.y: Foo::Bar {} is inconsistently rejected
mame (Yusuke Endoh)
05:01 AM Misc #21281: DevMeeting-2025-05-08
* [Feature #21258] Retire CGI library from Ruby 3.5
* Can I remove CGI library without `CGI::Util` ?
* What's the...
hsbt (Hiroshi SHIBATA)

05/06/2025

11:50 PM Bug #21312 (Assigned): ruby 3.5-dev installs a gemspec for rdoc that misses dependencies
hsbt (Hiroshi SHIBATA)
05:46 PM Bug #21312 (Assigned): ruby 3.5-dev installs a gemspec for rdoc that misses dependencies
Similarly to https://bugs.ruby-lang.org/issues/20581, installing ruby 3.5-dev installs a gemspec for rdoc that it's m... deivid (David Rodríguez)
10:35 PM Revision 4aac1506 (git): Skip an unstable Ractor test
k0kubun (Takashi Kokubun)
10:34 PM Revision 7afa08ce (git): YJIT: End the block after OPTIMIZE_METHOD_TYPE_CALL
k0kubun (Takashi Kokubun)
10:32 PM Bug #21310 (Feedback): YJIT optimization causes incorrect is_a? method evaluation
I think it's most likely fixed by https://github.com/ruby/ruby/pull/13245. It's going to be shipped in the next relea... k0kubun (Takashi Kokubun)
01:08 AM Bug #21310 (Feedback): YJIT optimization causes incorrect is_a? method evaluation
Our Rails application contains code like the following:
```ruby
result = a_proc.call
if result.is_a?(Result) &...
ravron-hb (Riley Avron)
10:32 PM Revision d6d63b27 (git): Enabled debug mode for CodeQL
hsbt (Hiroshi SHIBATA)
08:00 PM Feature #21311: Namespace on read (revised)
Agreed on all points. I have little concept of the complexity of the implementation, and defer to you on that. I th... peter.boling (Peter Boling)
07:03 PM Feature #21311: Namespace on read (revised)
peter.boling (Peter Boling) wrote in #note-23:
> One use case for this is to benchmark libraries that do the same ...
byroot (Jean Boussier)
06:41 PM Feature #21311: Namespace on read (revised)
byroot (Jean Boussier) wrote in #note-13:
> > Avoiding name conflicts between libraries: Applications can require two...
peter.boling (Peter Boling)
06:01 PM Feature #21311: Namespace on read (revised)
Dan0042 (Daniel DeLorme) wrote in #note-19:
> It's not about "working around" libraries. It's about loading entirely...
byroot (Jean Boussier)
04:47 PM Feature #21311: Namespace on read (revised)
If my interpretation is correct, the entry point of a library will be executed as many times as user namespaces requi... fxn (Xavier Noria)
04:38 PM Feature #21311: Namespace on read (revised)
My interpretation of the vocabulary is as following:
1. The interpreter boots in a `root` namespace.
1. The "state" ...
fxn (Xavier Noria)
03:13 PM Feature #21311: Namespace on read (revised)
byroot (Jean Boussier) wrote in #note-13:
> I personally see namespaces as a feature libraries can use to write more...
Dan0042 (Daniel DeLorme)
02:59 PM Feature #21311: Namespace on read (revised)
> The main and user namespaces are independent
@eregon the description says
> User namespace is a namespace to ...
fxn (Xavier Noria)
12:11 PM Feature #21311: Namespace on read (revised)
@byroot makes a good point about use cases, I share the same concerns (and already did in https://bugs.ruby-lang.org/... Eregon (Benoit Daloze)
12:01 PM Feature #21311: Namespace on read (revised)
Has the performance of Namespace been evaluated?
I would assume getting the current namespace to execute methods/pro...
Eregon (Benoit Daloze)
11:56 AM Feature #21311: Namespace on read (revised)
(from description)
> There is no way to access App in the main namespace from the code in the different namespace ns...
Eregon (Benoit Daloze)
11:55 AM Feature #21311: Namespace on read (revised)
While I believe namespaces would be a good addition to Ruby, I'm not convinced this particular implementation of
nam...
byroot (Jean Boussier)
11:52 AM Feature #21311: Namespace on read (revised)
I think this addresses https://bugs.ruby-lang.org/issues/19744#note-74 by having a CoW copy of all builtin classes/mo... Eregon (Benoit Daloze)
11:38 AM Feature #21311: Namespace on read (revised)
@fxn The main and user namespaces are independent, though the main namespace can refer to user namespace via `ns::Som... Eregon (Benoit Daloze)
10:18 AM Feature #21311: Namespace on read (revised)
> having a block parameter on Namespace.new could provide similar UX without changing syntax.
That wouldn't handle...
byroot (Jean Boussier)
10:17 AM Feature #21311: Namespace on read (revised)
> any user-defined classes/modules are not defined in the root namespace.
Ah, that is key.
So, what happens in ...
fxn (Xavier Noria)
10:01 AM Feature #21311: Namespace on read (revised)
fxn (Xavier Noria) wrote in #note-6:
> In Ruby, objects are stored in constants. Conceptually, a constant `X` storin...
tagomoris (Satoshi Tagomori)
09:22 AM Feature #21311: Namespace on read (revised)
Thanks @tagomoris.
> Conceptually, yes. Definitions are deeply cloned. But objects (stored on constants, etc) will n...
fxn (Xavier Noria)
08:00 AM Feature #21311: Namespace on read (revised)
fxn (Xavier Noria) wrote in #note-2:
> A few quick questions:
>
> Assuming a normal execution context, nesting at...
tagomoris (Satoshi Tagomori)
07:46 AM Feature #21311: Namespace on read (revised)
@baweaver I don't have strong opinion about adding `namespace` keyword, but having a block parameter on `Namespace.ne... tagomoris (Satoshi Tagomori)
06:24 AM Feature #21311: Namespace on read (revised)
A few quick questions:
Assuming a normal execution context, nesting at the top level of a file is empty. Would it be...
fxn (Xavier Noria)
05:46 AM Feature #21311: Namespace on read (revised)
As a proof of concept this is a very valuable idea, and will give users a chance to experiment with it.
I wonder a...
baweaver (Brandon Weaver)
05:16 AM Feature #21311 (Open): Namespace on read (revised)
This replaces #19744
## Concept
This proposes a new feature to define virtual top-level namespaces in Ruby. Th...
tagomoris (Satoshi Tagomori)
07:45 PM Bug #21313 (Open): `it` in rescue/ensure on prism
```ruby
1.times do
raise
rescue
p it
#=> prism: false
#=> parse.y: 0
end
```
`it` should return 0,...
ko1 (Koichi Sasada)
05:13 PM Revision cb772247 (git): Improve correctness contention for allocated object counts
Currently the count of allocated object for a heap is incremented
without regards to parallelism which leads to incor...
etienne (Étienne Barrié)
03:11 PM Revision 925da368 (git): Parse topn, opt_length, opt_size into HIR
Max Bernstein
11:18 AM Feature #21309: Can Thread::Mutex be Ractor shareable?
> Now, more generally, if we got some shareable mutable state, then we'd need a shareable mutex. I just haven't yet e... Eregon (Benoit Daloze)
10:14 AM Feature #21309: Can Thread::Mutex be Ractor shareable?
I'm not sure I see the use case for `Mutex` to be shareable, at least in this specific scenario.
To take the `Time...
byroot (Jean Boussier)
08:19 AM Feature #21309: Can Thread::Mutex be Ractor shareable?
> At least for Queue it's not that simple, because it contains objects
Indeed, you're right about Queue. I overloo...
osyoyu (Daisuke Aritomo)
09:19 AM Feature #21308: Replacing the Float#to_s (dtoa.c) implementation with a modern algorithm
The interface of `fpconv_dtoa()` looks quite different from `dtoa()` in missing/dtoa.c.
Rather `grisu2()` itself is ...
nobu (Nobuyoshi Nakada)
05:23 AM Feature #19744 (Closed): Namespace on read
jeremyevans0 (Jeremy Evans)
05:19 AM Feature #19744: Namespace on read
This is replaced by #21311.
Could someone close this?
tagomoris (Satoshi Tagomori)
05:06 AM Revision 1c68aae9 (git): Check LoadError first
The message from dlerror is not our concern. nobu (Nobuyoshi Nakada)
05:06 AM Revision 54950b1f (git): Added assertion strings with Xcode 16.3 beta
hsbt (Hiroshi SHIBATA)
03:11 AM Bug #21286: Windows - MSYS2 just updated to GCC 15.1.0, builds failing
ruby_3_3 commit:ffd469bd6d06df10057325a5b8c773fca009af8d merged revision(s) commit:719486a642f0e282b02b958069b8b39b85... nagachika (Tomoyuki Chikanaga)
02:29 AM Revision ffd469bd (git): merge revision(s) 719486a642f0e282b02b958069b8b39b85b3aa1e: [Backport #21286]
Fix C23 (GCC 15) WIN32 compatibility for rb_define_* functions
Fixes [Bug #21286]
nagachika (Tomoyuki Chikanaga)
 

Also available in: Atom