Activity
From 03/27/2025 to 04/02/2025
04/02/2025
-
11:59 PM Misc #21209 (Closed): Endless classes and modules
- There's something special about proposals on April 1st, isn't there?
-
05:16 PM Misc #21209: Endless classes and modules
- A similar issue was raised in #21155. We discussed that issue at the last dev meeting, and several endless class definition syntax was proposed.
```ruby
module = Foo
in module Foo
for module Foo
```
However, @matz didn't ... -
09:20 PM Bug #20255: Embedded arrays aren't moved correctly across ractors
- I reread my message and I didn't mean to come across like I disagreed with your changes, because I don't :)
-
08:46 PM Bug #20255: Embedded arrays aren't moved correctly across ractors
- > doesn't really "move" the object anymore, it just deep copies it since your change. It's not a less expensive operation anymor
As mentioned previously, this isn't meant as an end state, but as a quick fix to allow further experiment... -
08:43 PM Bug #20255: Embedded arrays aren't moved correctly across ractors
- That would be fine with me, because actually `move: true` doesn't really "move" the object anymore, it just deep copies it since your change. It's not a less expensive operation anymore, so we may as well keep the original object around ...
-
05:44 PM Bug #20255: Embedded arrays aren't moved correctly across ractors
- Yeah, it's really tricky. There has been some talks of just removing the `move: true` capability.
Given: https://bugs.ruby-lang.org/issues/21208, I'm not sure it can ever be made correct, hence it might not be worth trying to improve it. -
05:41 PM Bug #20255: Embedded arrays aren't moved correctly across ractors
- Yeah I was afraid that would be the case, but we could differentiate between user-defined clone callbacks and builtin callbacks. Either way we can probably worry about this later, I was just bringing it up in case you hadn't thought abou...
-
10:37 AM Bug #20255: Embedded arrays aren't moved correctly across ractors
- > The best solution is to not allow these callbacks,
So it's not actually possible, because many types rely on it. e.g:
```ruby
class Array
def initialize_clone(o)
# noop
end
end
p [1, 2, 3, 4, 5].clone # => []
``` -
08:53 PM Revision d543fda4 (git): [ruby/prism] Be explicit in tests which files `parser` can't parse
- It also updates to latest `parser`, which allows numbered
parameters in pattern matching pin,
passing `patterns.txt` and `case.txt`
https://github.com/ruby/prism/commit/bdcc8b3dc5 -
08:51 PM Revision 334c261c (git): [ruby/prism] Fix parser translator when splatting in pattern matching pin
- Because it ends up treating it as a local variable, and `a.x`
is not a valid local variable name.
I'm not big on pattern matching, but conceptually it makes sense to me
to treat anything inside ^() to not be
pattern matching syntax?
ht... -
07:53 PM Bug #21214: VmRSS consumption increase in Ruby 3.4.2 vs Ruby 3.3.6
- > It looks like there is an issue with strings
Looking at `GC.count` and `GC.stat_heap`
`3.3.4`
```
gc_count: 1179
0 => { :total_allocated_pages=>13, :total_freed_pages=>0}
1 => { :total_allocated_pages=>1226, :total_fre... -
07:02 PM Bug #21214: VmRSS consumption increase in Ruby 3.4.2 vs Ruby 3.3.6
- It looks like there is an issue with strings. I simplified the script to:
```ruby
require 'objspace'
BYTES_TO_MB = 1024 * 1024
$stdout.sync = true
srand(1)
# Declare supporting code
def print_info(context)
puts context
... -
06:09 PM Bug #21214: VmRSS consumption increase in Ruby 3.4.2 vs Ruby 3.3.6
- `ObjectSpace.memsize_of_all` being mostly stable suggest the difference is likely in the GC releasing the memory less eagerly, or having trouble releasing it because it's more fragmented.
> any lead to reduce this peak?
There are ... -
04:18 PM Bug #21214: VmRSS consumption increase in Ruby 3.4.2 vs Ruby 3.3.6
- Add random strings to the object created during the loop
-
04:06 PM Bug #21214 (Closed): VmRSS consumption increase in Ruby 3.4.2 vs Ruby 3.3.6
- Hello,
After updating Ruby from 3.3.6 to 3.4.2, our batch-style (not based on rails) application exceed its memory limit.
Below is an example script that runs on both versions and demonstrates that 'ObjectSpace.memsize_of_all' does n... -
04:50 PM Revision fe9ebb24 (git): vm_core.h: unify YJIT ifdefs
-
04:16 PM Revision e3fc29a9 (git): Improve backtrace of errors raised by `Socket.tcp_with_fast_fallback`
- [Bug #21211]
Socket errors raised from background threads are hard to track down because
their backtrace starts from the spawned thread.
To solve this we can raise a new error with the old one as `cause`. -
04:10 PM Revision 3a7b0324 (git): [DOC] Tweaks for Hash doc
-
04:03 PM Revision 2a55cc3f (git): [DOC] Tweaks to String::try_convert
-
02:47 PM Revision ce1dfe81 (git): [DOC] Doc for Thread::ConditionVariable
- Documented the necessity of calling `wait` in a loop. We modified the
example to demonstrate the idiomatic use, and added a third thread `a2`
to demonstrate another reason that necessitates the loop.
Mentioned spurious wake-up in the doc. -
02:04 PM Bug #21206: Segmentation fault on ISeq#to_binary
- I tracked it down to:
```c
if (!p->it_id) {
p->it_id = internal_id(p);
vtable_add(p->lvtbl->args, p->it_id);
}
```
Internal IDs can't be serialized.
It seems there was... -
01:26 PM Bug #21206: Segmentation fault on ISeq#to_binary
- Running in on ruby master with debugs run into the following assertion failure:
```
../include/ruby/internal/core/rstring.h:391: Assertion Failed: rbimpl_rstring_getmem:RB_TYPE_P(str, RUBY_T_STRING): actual type: 19
```
-
12:19 PM Bug #20984: ENV.inspect is not encoding aware
- Backported d78ff6a767ca813ac5fa178dd7611f20a993c191 into ruby_3_3 at 3d8a66568e8106b367665d716e0d3c8c8208aa07.
-
12:16 PM Revision 3d8a6656 (git): merge revision(s) d78ff6a767ca813ac5fa178dd7611f20a993c191: [Backport #20984]
- [Bug #20984] Fix test with locale encoding
-
11:24 AM Bug #21211 (Closed): Incomplete Backtrace for Socket Errors in Ruby 3.4+
- Applied in changeset commit:git|580aa60051773e3512121088eb8ebaee8ce605ea.
----------
Improve backtrace of errors raised by `Socket.tcp_with_fast_fallback`
[Bug #21211]
Socket errors raised from background threads are hard to track dow... -
10:26 AM Bug #21211: Incomplete Backtrace for Socket Errors in Ruby 3.4+
- https://github.com/ruby/ruby/pull/13041
-
11:24 AM Revision 580aa600 (git): Improve backtrace of errors raised by `Socket.tcp_with_fast_fallback`
- [Bug #21211]
Socket errors raised from background threads are hard to track down because
their backtrace starts from the spawned thread.
To solve this we can raise a new error with the old one as `cause`. -
09:28 AM Bug #21203: TestGc#test_gc_parameter_init_slots is flaky results
- @peterzhu2118 I could reproduce this only one time with my Apple Silicon macOS.
```
1) Failure:
TestGc#test_latest_gc_info_weak_references_count [/Users/hsbt/Documents/github.com/ruby/ruby/test/ruby/test_gc.rb:422]:
Expected 3 to... -
09:25 AM Bug #21203: TestGc#test_gc_parameter_init_slots is flaky results
- @peterzhu2118 Thanks for working on this issue. Because it's a flaky issue, it is difficult to tell how to reproduce it.
According to Launchable, we can see that
* this issue started occuring around 2025-03-17, and
* it occured on... -
08:58 AM Bug #21204: `TestEtc#test_ractor_parallel` is still flaky result with ModGC/MMTk
- `TestSocket#test_timestamp` is failed sometimes on ModGC workflow.
```
1) Failure:
TestSocket#test_timestamp [/home/runner/work/ruby/ruby/src/test/socket/test_socket.rb:493]:
<[[#<Socket:fd 7>], [], []]> expected but was
... -
07:24 AM Revision 43ee4a50 (git): Fixup comment for Windows platform, not Solaris
-
07:24 AM Revision e71192da (git): Removed Solaris conditions from optional and shared directories
-
07:24 AM Revision 3d4ea454 (git): Removed Solaris conditions from library directory
-
07:24 AM Revision 8cb61b00 (git): Removed Solaris conditions from core directory
-
07:24 AM Revision 6bd5a51a (git): Removed Solaris conditions from test files
- We no longer execute those files with Solaris platforms.
- 07:01 AM Revision ca97302d (git): Update bundled gems list as of 2025-04-01
-
06:43 AM Feature #14565: Simpler, one-liner, failsafe require in ruby? [Suggested names: require_failsafe, require_safe, require_try, require_add)
- I like this feature request, a non-failing require would be great for gems that optionally depend on another gem.
For example:
```ruby
begin
require 'rubocop-rspec'
rescue LoadError
end
if defined?(RuboCop::RSpec)
# ..... -
05:55 AM Bug #21213 (Third Party's Issue): [BUG] heap_idx_for_size: allocation size too large (size=145u, heap_idx=146u)
- It is a bug of Visual C 17.3.5 and has been fixed by preview versions.
-
05:31 AM Bug #21213 (Third Party's Issue): [BUG] heap_idx_for_size: allocation size too large (size=145u, heap_idx=146u)
- Failed to build ruby 3.4.2 after upgrade Visual C++ build Tools from 17.2 to 17.3.5. The logging file is as attachment. Use this build script https://github.com/jiangjianshan/msvc-pkg/blob/main/packages/ruby/build.bat and it work before ...
-
04:53 AM Bug #21212 (Assigned): IO::Buffer can be freed while its slice is locked
- ```ruby
buffer = IO::Buffer.new(100)
slice = buffer.slice
buffer.locked do
buffer.free rescue p $! #=> IO::Buffer::LockedError (expected)
end
slice.locked do
p slice.locked? #=> true (expected)
p buffer.locked? #=> f... -
02:40 AM Bug #21210: IO::Buffer gets invalidated on GC compaction
- alanwu (Alan Wu) wrote in #note-5:
> Another option that maintains validity across movement (untested):
> ...
So this will copy the embedded String content to a malloc'ed memory, right?
The default GC embeds up to 640 bytes minus RS... -
01:39 AM Bug #21210: IO::Buffer gets invalidated on GC compaction
- eightbitraptor (Matt V-H) wrote in #note-4:
> Instead of pinning the source string, did you consider allowing the string to move by calculating the `base` offset, then moving the `source` string and updating the `base` pointer using `rb_... -
01:52 AM Revision 938db053 (git): Removed the warning targets for Ruby 3.1 because 3.1 is already EOL
-
01:37 AM Revision d75d4275 (git): [rubygems/rubygems] Bump up minimum required version for cmake 4
- https://github.com/rubygems/rubygems/commit/3e77caeddf
-
01:35 AM Revision ca023835 (git): [rubygems/rubygems] Bump up minimum required version for cmake 4
- https://github.com/rubygems/rubygems/commit/3e77caeddf
-
01:33 AM Revision 66d133ab (git): [rubygems/rubygems] Bump up minimum required version for cmake 4
- https://github.com/rubygems/rubygems/commit/3e77caeddf
04/01/2025
-
11:41 PM Bug #21210: IO::Buffer gets invalidated on GC compaction
- Another option that maintains validity across movement (untested):
```diff
diff --git a/io_buffer.c b/io_buffer.c
index 0534999319..13102b561d 100644
--- a/io_buffer.c
+++ b/io_buffer.c
@@ -570,7 +570,7 @@ rb_io_buffer_type_for(V... -
09:56 PM Bug #21210: IO::Buffer gets invalidated on GC compaction
- I checked with the following `test.rb` that this patch does fixes the Buffer validity after compaction.
```
str = +"hello"
str_buf = IO::Buffer.for(str)
buf = IO::Buffer.new(128)
slice = buf.slice(8, 32)
GC.verify_compactio... -
08:10 PM Bug #21210: IO::Buffer gets invalidated on GC compaction
- Patch: https://github.com/ruby/ruby/pull/13033
-
05:28 PM Bug #21210: IO::Buffer gets invalidated on GC compaction
- The `source` field in a `struct rb_io_buffer` can have a String or an IO::Buffer if not nil.
When `source` is a String, we need to pin the object (`rb_str_locktmp` does not keep the embedded String content from being moved by GC).
When... -
04:39 PM Bug #21210 (Closed): IO::Buffer gets invalidated on GC compaction
- commit:6012145299cfa4ab561360c78710c7f2941a7e9d implemented compaction for `IO::Buffer`.
It looks like this doesn't work well with an `IO::Buffer` that shares memory region with a String object.
I think the problem is that an `IO::Buff... -
08:45 PM Revision e4020133 (git): Remove incorrect assertion
- ractor_cache will always be NULL in this context
-
08:25 PM Revision 6fbc32b5 (git): GCC defines __linux__, not __LINUX__
- Fixes: 2c6512fe67a275ce4d251f3c5d304bc523597f42
-
08:16 PM Bug #21208: `Ractor#send(move: true)` allow moving objects that are on the stack, and used by C code.
- Hmm... this is tricky, good find! This probably won't occur often, I'm having a hard time coming up with a situation where it would happen with some benign looking code.
It's fun thinking about solutions to these kinds of things, so as ... -
07:51 AM Bug #21208: `Ractor#send(move: true)` allow moving objects that are on the stack, and used by C code.
- > The following script causes a crash
Actually, that was only because I was on an older branch, it no longer crash on `master`, and even behave somewhat correctly by sheer luck.
The general issue remain, `send(obj, move: true)` ess... -
06:00 PM Bug #21211 (Closed): Incomplete Backtrace for Socket Errors in Ruby 3.4+
- When invoking `Socket.tcp` with an invalid hostname (e.g., "foo.bar") in Ruby 3.4, the error raised does not provide a complete backtrace indicating the original application code that made the call. This behavior differs from Ruby 3.3 wh...
-
04:11 PM Revision 30e5e7c0 (git): Revert "Fix jump buffer leak in setjmp handler in WASI builds"
- This reverts the following commits as it's causing OOM in some cases in
ruby/ruby.wasm test suite.
* 372515f33c908b36b3f5fbd2edcb34c69b418500
* 3a730be8b464454878a42132f6fecb98ab4c1b5b -
03:36 PM Misc #21209 (Closed): Endless classes and modules
- Endless methods have proven popular enough that we should bring the same endlessness to module/class definitions.
For a long time we've had this ugly pattern of class definitions with an extreme level of indentation.
I propose a si... -
01:44 PM Bug #21203: TestGc#test_gc_parameter_init_slots is flaky results
- I can't reproduce this on my ARM macOS or x86 Linux machine with `-DVM_CHECK_MODE` enabled. Do you know how this can be reproduced?
-
11:25 AM Bug #21203 (Assigned): TestGc#test_gc_parameter_init_slots is flaky results
-
11:15 AM Bug #21203 (Closed): TestGc#test_gc_parameter_init_slots is flaky results
- Applied in changeset commit:git|a671b25525279706d1fa2ee3b25ef45e3ec0eb89.
----------
[Bug #21203] Skip TestGc#test_gc_parameter_init_slots since it is flaky (#13025)
https://bugs.ruby-lang.org/issues/21203
TestGc#test_gc_parameter_ini... -
09:20 AM Revision a671b255 (git): [Bug #21203] Skip TestGc#test_gc_parameter_init_slots since it is flaky (#13025)
- https://bugs.ruby-lang.org/issues/21203
TestGc#test_gc_parameter_init_slots is a flaky test that fails intermittently. Until the issue with flakiness is resolved, I will skip it. -
06:58 AM Revision 67a7d4a0 (git): [rubygems/rubygems] Bump up minimum required version for cmake 4
- https://github.com/rubygems/rubygems/commit/3e77caeddf
-
04:31 AM Revision cd195248 (git): [rubygems/rubygems] Stay away from FileUtils.rm_rf in Bundler specs
- Instead, skip the spec when run by ruby-core. Maybe the root cause can
be fixed at some point.
https://github.com/rubygems/rubygems/commit/09594ae5b8 -
02:25 AM Bug #21193: Inherited callback returns `nil` for `Object.const_source_location`
- I don't have a strong opinion for this proposal. Aligning the order of meta-programming sounded nice, but when we see non-trivial compatibility issue, I'd rather revert this change altogether.
Matz.
-
12:57 AM Revision 79f3167e (git): [rubygems/rubygems] Let compact index response parser consistently return a mutable dependencies array
- That restores support for compact index dummy implementations that only lists
versions, without checksums or dependencies.
This format is undocumented, so we may want to get rid of it in the
future. However, some of our tests rely on it... -
12:56 AM Revision 92422576 (git): Remove compact index response parser from Bundler
- It's available in RubyGems since 3.2.3 and we no longer support that old
version. - 12:55 AM Revision fce2c386 (git): [rubygems/rubygems] Sorting files in metadata for reproducibility
- https://github.com/rubygems/rubygems/commit/792117980b
03/31/2025
-
10:52 PM Feature #15574: Prohibit to pass a block on super() implicitly
- There's still a problem here when an "unused block" warning is emitted from native code.
The current behavior is actually quite counter-intuitive. Take this example of extending `Array` and overriding `index`.
```ruby
class MyArra... -
10:02 PM Bug #21207: CSV gem not installing in head
- I have a GitHub repo [github-actions-ruby-info](https://github.com/MSP-Greg/github-actions-ruby-info/actions) that logs information about Ruby builds on most GHA supported platforms.
None of the current Ubuntu and macOS head builds ha... -
04:05 PM Bug #21207 (Closed): CSV gem not installing in head
- The current MinGW workflow in Ruby shows:
```text
skipped bundled gems:
csv-3.3.4.gem not found in bundled_gems
```
I verified the same locally with both a Windows UCRT build and an Ubuntu build, and the ruby... -
08:48 PM Feature #18784 (Closed): `FileUtils.rm_f` and `FileUtils.rm_rf` should not mask exceptions
-
07:30 PM Feature #18784: `FileUtils.rm_f` and `FileUtils.rm_rf` should not mask exceptions
- I realized I never replied to latest objections from @mame to this feature.
My use case is to make sure temporary test files and folders are cleaned after each test, because if they are not cleaned the following tests may not work as ... -
08:37 PM Revision 6d70847e (git): Make free, memsize functions of IO::Buffer static
- They are not used outside of io_buffer.c, so we can make them static.
- 07:57 PM Revision 0fad0ce3 (git): [ruby/prism] Use `xmalloc()`/`xfree()`
- https://github.com/ruby/prism/commit/bd9027f0ab
-
06:49 PM Bug #21208 (Assigned): `Ractor#send(move: true)` allow moving objects that are on the stack, and used by C code.
- The following script causes a crash:
```ruby
rac = Ractor.new do
Ractor.receive
end
hash = Hash[*50.times]
hash.merge!(12 => 0, 14 => 0) do |key, old_val, new_val|
if key == 12
rac.send(hash, move: true)
end
n... -
06:49 PM Revision 2d903649 (git): [DOC] Tweaks for Hash doc
-
06:48 PM Revision 765918d2 (git): [DOC] Tweaks for docs about contributing (#13012)
-
06:47 PM Revision cdb1bf1e (git): [DOC] Tweaks for Hash#update
-
04:10 PM Revision a61e7118 (git): Provide compaction support for argf_type
-
04:10 PM Revision 60121452 (git): Mark rb_io_buffer_type references declaratively
- allowing them to support compaction and be moved.
-
03:10 PM Bug #20255: Embedded arrays aren't moved correctly across ractors
- https://github.com/ruby/ruby/pull/13023
-
02:46 PM Bug #20255: Embedded arrays aren't moved correctly across ractors
- Yes, copy as well is a problem. The best solution is to not allow these callbacks, because even if they run and you try to traverse the graph again to error or copy/move it, the callback could have spawned a thread that sets an unshareab...
-
02:43 PM Bug #20255: Embedded arrays aren't moved correctly across ractors
- Also I don't quite get why this is an issue with `move: true` but isn't when doing a copy.
-
02:40 PM Bug #20255: Embedded arrays aren't moved correctly across ractors
- For context, even though I didn't precisely predict these two cases, I was expecting `initialize_cone` to be problematic. In the `move: true` case we certainly shouldn't invoke it.
But also, this patch isn't really meant as a final so... -
02:35 PM Bug #20255: Embedded arrays aren't moved correctly across ractors
- This change seems to have a regression in this case as well.
```ruby
a = Object.new
b = Object.new
p "outside: #{b}"
a.instance_variable_set("@b", b)
r = Ractor.new do
obj = Ractor.receive
p "inside: #{obj}"
p "inside: #{obj.inst... -
02:32 PM Bug #20255: Embedded arrays aren't moved correctly across ractors
- @luke-gru indeed.
-
02:16 PM Bug #20255: Embedded arrays aren't moved correctly across ractors
- Hi Jean, thanks for taking care of this issue. Your change makes sense to me but I have a small concern regarding the potential call to `initialize_clone`. When allowing user-defined hooks like this in Ractor move logic, the user can add...
-
10:02 AM Bug #20255 (Closed): Embedded arrays aren't moved correctly across ractors
- Applied in changeset commit:git|0350290262ea0fbc4e1807901797ee8a6970c2b9.
----------
Ractor: Fix moving embedded objects
[Bug #20271]
[Bug #20267]
[Bug #20255]
`rb_obj_alloc(RBASIC_CLASS(obj))` will always allocate from the basic
40B ... -
02:56 PM Revision 8a475d15 (git): Implement `dcompact` for Time objects
-
10:02 AM Bug #20267 (Closed): Hashes that use ar_table aren't moved properly across ractors
- Applied in changeset commit:git|0350290262ea0fbc4e1807901797ee8a6970c2b9.
----------
Ractor: Fix moving embedded objects
[Bug #20271]
[Bug #20267]
[Bug #20255]
`rb_obj_alloc(RBASIC_CLASS(obj))` will always allocate from the basic
40B ... -
10:02 AM Bug #20271 (Closed): Issue with moving embedded string across ractors
- Applied in changeset commit:git|0350290262ea0fbc4e1807901797ee8a6970c2b9.
----------
Ractor: Fix moving embedded objects
[Bug #20271]
[Bug #20267]
[Bug #20255]
`rb_obj_alloc(RBASIC_CLASS(obj))` will always allocate from the basic
40B ... -
10:01 AM Revision 7db0e071 (git): Don't preserve `object_id` when moving object to another Ractor
- That seemed like the logical thing to do to me, but ko1 disagree.
-
10:01 AM Revision 03502902 (git): Ractor: Fix moving embedded objects
- [Bug #20271]
[Bug #20267]
[Bug #20255]
`rb_obj_alloc(RBASIC_CLASS(obj))` will always allocate from the basic
40B pool, so if `obj` is larger than `40B`, we'll create a corrupted
object when we later copy the shape_id.
Instead we can us... -
09:14 AM Bug #21183: Ractor error with Prism::VERSION
- It looks handled on 3.4.2 already:
```sh
$ ruby -ve 'require "prism"; puts Prism::VERSION.frozen?'
ruby 3.4.2 (2025-02-15 revision d2930f8e7a) +PRISM [x86_64-linux]
true
```
Since this is about `error_highlight`, it still needs... -
09:14 AM Revision 532b9246 (git): Initialize ractor thgroup in `thread_do_start_proc`
- Followup: https://github.com/ruby/ruby/pull/13013
-
08:26 AM Bug #17506 (Closed): Ractor isolation broken by ThreadGroup
- Applied in changeset commit:git|5e421ce8d949a4f92568db359be0d188b66e58ca.
----------
ractor: don't inherit the default thread group
[Bug #17506]
`Thread.current.group` isn't shareable so it shouldn't be inherited
by the main thread of... -
08:25 AM Revision 5e421ce8 (git): ractor: don't inherit the default thread group
- [Bug #17506]
`Thread.current.group` isn't shareable so it shouldn't be inherited
by the main thread of a new Ractor.
This cause an extra allocation when spawning a ractor, which could
be elided with a bit of extra work, but not sure if... -
08:25 AM Feature #21205: Make File::Stat#birthtime available on Linux
- Switching this to a feature request.
-
05:48 AM Feature #21205: Make File::Stat#birthtime available on Linux
- byroot (Jean Boussier) wrote in #note-1:
> Contrary to FreeBSD, on Linux the `birthtime` isn't present in the struct returned by `stat(2)`: https://man7.org/linux/man-pages/man3/stat.3type.html (see how there is no `btime`).
I know. ... - 07:14 AM Revision 2263e26f (git): Update default gems list at 502fcfcc46fe1362b30d311e2fc03b [ci skip]
-
07:13 AM Revision 502fcfcc (git): stringio-3.1.6 has been released
-
06:08 AM Revision a2b03ba7 (git): Skip test_ractor.rb with ModGC workflow because this test is flaky
- 05:43 AM Revision c8ecaad4 (git): Update bundled gems list at 679e3e5b333a36a6621ba03c9c10d6 [ci skip]
-
05:42 AM Revision 679e3e5b (git): Specified commits for removing csv-filter executable
-
05:42 AM Revision 91973a59 (git): Update bundled_gems
-
05:06 AM Revision 397334ab (git): Bundle rbs-3.9.2
-
05:06 AM Revision 83518d8d (git): Update rdoc-6.13.1
-
05:06 AM Revision 0dae3edb (git): Also skip test_load(JSONSingletonTest)
-
05:06 AM Revision 0a097e6e (git): Fix `{}`
-
05:06 AM Revision 3fb2006b (git): Skip RDoc tests
-
05:05 AM Revision e47f6215 (git): Bundle rbs-3.9.1
- 02:59 AM Revision 372515f3 (git): Don't set `saved_ec.tag` to `NULL` in `cont_init()`
- 02:59 AM Revision 3a730be8 (git): Fix jump buffer leak in setjmp handler in WASI builds
- 02:59 AM Revision 72fc9c7b (git): Fix stack pointer corruption in setjmp handler in WASI builds
-
02:39 AM Bug #21206 (Open): Segmentation fault on ISeq#to_binary
- Found this SEGV using bootsnap.
This could well be architecture dependent because of ISeqs being so by nature.
Also this doesn't happen when the ISeq is created using `compile_prism`.
```
$ ruby -ve 'RubyVM::InstructionSequence... -
12:39 AM Revision dea505de (git): [rubygems/rubygems] Allow ruby platform to be remove also when dependencies have changed
- Since we will now add it back if the final resolution is compatible, we
can also get this kind of edge case (`bundle add`) working.
https://github.com/rubygems/rubygems/commit/cdc5ebec77 -
12:39 AM Revision b2bcd360 (git): [rubygems/rubygems] Remove edge cases for not removing invalid platforms
- Instead, remove them anytime we find dependencies don't match the
lockfile for a platform, and then add them back after resolution if
they ended up being valid.
https://github.com/rubygems/rubygems/commit/220bd77887 -
12:39 AM Revision f72d5eff (git): [rubygems/rubygems] `SpecSet#add_extra_platforms!` doesn't need to return anything
- https://github.com/rubygems/rubygems/commit/9fd92ade54
-
12:39 AM Revision 91df1795 (git): [rubygems/rubygems] Split finding and removing invalid platforms
- I don't like traversing the array and modifying it at the same time
while it seems to work.
https://github.com/rubygems/rubygems/commit/6551c74c27 -
12:39 AM Revision f8720b01 (git): [ruby/json] Remove caller location assertions
- Fix: https://github.com/ruby/json/pull/781
Tests are ran a bit differently in ruby/ruby
and this assertion breaks.
https://github.com/ruby/json/commit/0d4fc669ed -
12:39 AM Revision a7ab156d (git): Revert "Relax assertion pattern for ruby repo"
- This reverts commit 09b94688731a73a4ee63969a22ba7d537223e02a.
-
12:16 AM Revision a203603b (git): Correct typo in Ractor comment
03/30/2025
-
05:24 PM Revision d7e46543 (git): [ruby/prism] Fix parser translator when pinning hash with string keys
- `StringNode` and `SymbolNode` don't have the same shape
(`content` vs `value`) and that wasn't handled.
I believe the logic for the common case can be reused.
I simply left the special handling for implicit nodes in pattern matching
and... -
05:22 PM Bug #21197 (Closed): Prism does not accept newline after defined? keyword
- Applied in changeset commit:git|052794bfe1970e90f4f4f9e37fc362dd27903a8d.
----------
[ruby/prism] Accept a newline after the defined? keyword
[Bug #21197]
https://github.com/ruby/prism/commit/22be955ce9 -
05:22 PM Revision 052794bf (git): [ruby/prism] Accept a newline after the defined? keyword
- [Bug #21197]
https://github.com/ruby/prism/commit/22be955ce9 -
01:46 PM Revision 6b5aa432 (git): [ruby/openssl] Skip PKCS7 with indefinite length test in AWS-LC
- AWS-LC had been decoding the indefinite BER to an unusable output. We
should skip the test until indefinite BER decoding in AWS-LC is
properly fixed.
Changes:
1. AWS-LC will be looking to fix the parsing for indefinite BER
constructed s... -
09:26 AM Bug #17506: Ractor isolation broken by ThreadGroup
- Retested on 3.4.2, and it seems the bug is still present.
-
09:13 AM Feature #21205: Make File::Stat#birthtime available on Linux
- Contrary to FreeBSD, on Linux the `birthtime` isn't present in the struct returned by `stat(2)`: https://man7.org/linux/man-pages/man3/stat.3type.html (see how there is no `btime`).
What `File.birthtime` does, it that it uses `statx(2... -
07:27 AM Feature #21205 (Closed): Make File::Stat#birthtime available on Linux
- Not that I would run into any problem with it, but this behaviour is confusing:
RbConfig::CONFIG["platform"] #=> "amd64-freebsd14"
(File.birthtime "/").class #=> Time
(File.stat "/").birthtime.class #=> Time
... -
03:41 AM Bug #21195: Crash when using IO#timeout
- ruby_3_3 commit:51dee044c1cb079a463118c5113ae9fdf96e463e merged revision(s) commit:5f77f9bea61fb4cc8447a76e191fdfb28f076862.
-
03:20 AM Bug #21117: Inconsistent behaviour between "_1" and "it" variables
- I decided to mark "WONTFIX" for ruby_3_3. Introducing syntax error might cause unavoidable problem in real world applications.
-
03:11 AM Revision 51dee044 (git): merge revision(s) 5f77f9bea61fb4cc8447a76e191fdfb28f076862: [Backport #21195]
- Fix handling of `error`/`errno` in `io_internal_wait`. (#12961)
[Bug #21195]
03/29/2025
-
09:05 PM Revision 9e87323a (git): [DOC] Tweaks for Hash#values_at
-
09:04 PM Revision dbc1ceca (git): [DOC] Tweaks for Hash#values
-
09:04 PM Revision 4e3bc65e (git): [DOC] Tweaks for Hash#has_value?
-
11:46 AM Bug #21202 (Closed): Ripper wrongly concats separate tstring_content within nested unterminated heredoc
- Applied in changeset commit:git|a4a60195502add094fb52a587411bbd0c19facce.
----------
[Bug #21202] Fix wrong token concat while tokenizing nested unterminated heredoc (#13000) -
11:46 AM Revision a4a60195 (git): [Bug #21202] Fix wrong token concat while tokenizing nested unterminated heredoc (#13000)
-
08:51 AM Revision 549c7fe2 (git): Adjust indentation for user defined parameterized rule
- This PR just fixing indentation.
-
07:50 AM Bug #21094: Module#set_temporary_name does not affect a name of a nested module
- ruby_3_3 commit:aac5c546cd35ff0aeab120e3724fbb1296892ae3 merged revision(s) commit:f69ad0e810e1fdc18dc12f77bbecfa49999ef3bf.
-
07:49 AM Revision aac5c546 (git): merge revision(s) f69ad0e810e1fdc18dc12f77bbecfa49999ef3bf: [Backport #21094]
- [Bug #21094] Update nested module names when setting temporary name
-
06:59 AM Bug #21186: Inconsistent parsing of ?あand 0
- ruby_3_3 commit:770060f7662698ca74bc28428919a688b8fe06d2 merged revision(s) commit:1acfb29015dbc38fd345d8786aa78aad59f7dcd1.
-
06:58 AM Bug #19841: Marshal.dump stack overflow with recursive Time
- ruby_3_3 commit:d2eda78e4091a99c1a387d43967af5794d8eac70 merged revision(s) commit:9459bedd84d479bb1d7d3d40bada1cecb4701c37.
-
06:32 AM Revision 770060f7 (git): merge revision(s) 1acfb29015dbc38fd345d8786aa78aad59f7dcd1: [Backport #21186]
- [Bug #21186] multibyte char literal should be a single letter word
-
06:21 AM Revision d2eda78e (git): merge revision(s) 9459bedd84d479bb1d7d3d40bada1cecb4701c37: [Backport #19841]
- [Bug #19841] Refine error on marshaling recursive USERDEF
-
12:01 AM Bug #21183 (Closed): Ractor error with Prism::VERSION
- Fixed in the master branch by commit:f27ed98effff9891d28edc7119d45811bcedd510, marking for backport.
03/28/2025
-
10:34 PM Feature #17414 (Closed): Ractor should allow access to shareable attributes for Modules/Classes
- I think we can close this as accessing the class instance variables has been allowed for a while (Ruby 3.1?)
``` ruby
module Config
class << self
attr_accessor :conf
end
self.conf = 42
end
Ractor.new { Config.conf =... -
04:36 PM Revision 332f5d0b (git): Remove RUBY_FL_PROMOTED{0,1} from debugger scripts
- These flags were removed in d426343418aab6148706860bd1678ac309dc12c0 and
print_flags is broken because of it. -
02:08 PM Feature #20757 (Closed): Make rb_tracearg_(parameters|eval_script|instruction_sequence) public C-API
- Applied in changeset commit:git|04ebedf7f0144e8d5b8b2cd9cd243a2581bf974c.
----------
Make rb_tracearg_(parameters|eval_script|instruction_sequence) public C-API
This allows C-Extension developers to call those methods to retrieve
infor... -
02:08 PM Revision 3aee7b98 (git): Mark first argument to all C-API tracepoint functions as nonnull
-
02:08 PM Revision 04ebedf7 (git): Make rb_tracearg_(parameters|eval_script|instruction_sequence) public C-API
- This allows C-Extension developers to call those methods to retrieve
information about a TracePoint's parameters, eval script and
instruction sequence.
Implements [Feature #20757] -
10:56 AM Bug #21204 (Assigned): `TestEtc#test_ractor_parallel` is still flaky result with ModGC/MMTk
-
10:29 AM Bug #21204: `TestEtc#test_ractor_parallel` is still flaky result with ModGC/MMTk
- This seems a ModGC bug as the failure seems to happen (from what I heard) only in the ModGC workflow, cc @eightbitraptor @peterzhu2118
The test has been omitted only for the ModGC workflow: https://github.com/ruby/etc/pull/55 -
03:32 AM Bug #21204 (Assigned): `TestEtc#test_ractor_parallel` is still flaky result with ModGC/MMTk
- https://github.com/ruby/ruby/actions/runs/14121185441/job/39561623937?pr=13004
```
1) Failure:
TestEtc#test_ractor_parallel [/home/runner/work/ruby/ruby/src/test/etc/test_etc.rb:178]:
pid 150540 killed by SIGABRT (signal 6)... -
05:19 AM Revision fc260046 (git): Remove test_retry_workers
- The test fails randomly for unknown reason.
https://github.com/ruby/ruby/actions/runs/14121674932/job/39562945096?pr=12993
```
1) Error:
TestParallel::TestParallel#test_retry_workers:
Test::Unit::ProxyError: execution expired (s... -
05:19 AM Revision 28c7ae66 (git): Try avoiding "invalid byte sequence in UTF-8"
-
05:19 AM Revision 12f8dda9 (git): Report the actual time wated for timeout errors in TestParallel
-
05:07 AM Revision c3ca9313 (git): TestRegexp#test_match_cache_positive_look_ahead_complex: Extend the timeout limit
-
04:06 AM Bug #21199 (Third Party's Issue): Psych.dump and load on Date before 1582-10-15
- YAML has no specification of calendar systems.
If YAML specifies it, we would obey it of course.
Until then, YAML is not suitable for such dates, just don't use such dates.
-
01:12 AM Bug #21199: Psych.dump and load on Date before 1582-10-15
- I suggest Psych.dump and Psych.load should deal the date as the default style Date::ITALY, like Date.new.
Normal people only know Date::ITALY, which skip 1582-10-05~1582-10-14.
I also suggest Date.to_s should convert inner date style to ... -
03:58 AM Revision 8582d931 (git): [ruby/etc] Skip TestEtc#test_ractor_parallel on ModGC workflow
- (https://github.com/ruby/etc/pull/55)
https://bugs.ruby-lang.org/issues/21204
TestEtc#test_ractor_parallel is only failing intermittently on ModGC workflow after 87fb0c4. So, we'll skip this test on ModGC workflow.
https://github.com/... -
03:44 AM Revision 1e715bd2 (git): Skip failing rbs tests for deprecated JSON methods
-
03:44 AM Revision 2ba37d24 (git): spec/mspec/tool/wrap_with_guard.rb 'ruby_version_is ...3.5' spec/ruby/security/cve_2020_10663_spec.rb
-
03:44 AM Revision 09b94688 (git): Relax assertion pattern for ruby repo
-
03:44 AM Revision 3bbb52f5 (git): [ruby/json] Add missing assert_deprecated_warning
- https://github.com/ruby/json/commit/1b16a82980
-
03:44 AM Revision ec171b40 (git): [ruby/json] Move `create_addtions` logic in Ruby.
- By leveraging the `on_load` callback we can move all this logic
out of the parser. Which mean we no longer have to duplicate
that logic in both parser and that we'll later be able to extract
it entirely from the gem.
https://github.com/... -
03:44 AM Revision e8c46f4c (git): [ruby/json] JSON.load invoke the proc callback directly from the parser.
- And substitute the return value like `Marshal.load` doesm
which I can only assume was the intent.
This also open the door to re-implement all the `create_addition`
logic in `json/common.rb`.
https://github.com/ruby/json/commit/73d2137fd3 -
03:44 AM Revision 80a59a62 (git): [ruby/json] Remove more dead code
- https://github.com/ruby/json/commit/eda239ad34
-
03:44 AM Revision 756b75f2 (git): [ruby/json] Remove `Class#json_creatable?` monkey patch.
- https://github.com/ruby/json/commit/1ca7efed1f
-
03:44 AM Revision 96ecac1e (git): [ruby/json] Get rid of JSON::NOT_SET
- https://github.com/ruby/json/commit/760d922265
-
03:44 AM Revision bba30bee (git): [ruby/json] Remove outdated JSON.iconv
- https://github.com/ruby/json/commit/3de8702354
-
03:44 AM Revision 26e55562 (git): [ruby/json] Cleanup JSON.pretty_generate
- https://github.com/ruby/json/commit/01c47a0555
-
03:44 AM Revision 2b9a9300 (git): [ruby/json] Deprecate `JSON.fast_generate`
- https://github.com/ruby/json/commit/6508455d82
-
03:14 AM Bug #21203 (Assigned): TestGc#test_gc_parameter_init_slots is flaky results
-
03:12 AM Bug #21203 (Assigned): TestGc#test_gc_parameter_init_slots is flaky results
- I faced `TestGc#test_gc_parameter_init_slots` failure at everyday.
https://github.com/ruby/ruby/actions/runs/14120822712/job/39560620479
```
1) Failure:
TestGc#test_gc_parameter_init_slots [/home/runner/work/ruby/ruby/src/... -
02:15 AM Revision 589713bc (git): Ignore to build C extension for test files of bundled gems
03/27/2025
-
11:41 PM Revision 5ab0b914 (git): [Backport #21141] [DOC] Refine description of `Time#utc?`
-
11:41 PM Revision bd99a2ef (git): [Backport #21141] [DOC] Clarify what time is in UTC
-
10:24 PM Revision e652af18 (git): Update LEGAL to mention ext/json/vendor
- One file is under MIT, which is already the case of many files
in Ruby, so it's fine.
The other is under the Boost Software License, which is very
similar to BSD and is fine to include in Ruby as far as I'm
aware. -
10:23 PM Revision 00c6e537 (git): FCALL shouldn't be forwarded from caller
- When we forward an FCALL (a method call with an implicit self), we
shouldn't forward the FCALL flag because it ignores method visibility
checks. This patch removes the FCALL flag from callers.
[Bug #21196] - 10:23 PM Revision aa7380f9 (git): Fix handling of `error`/`errno` in `io_internal_wait`. (#12961)
- [Bug #21195]
-
10:08 PM Bug #21094: Module#set_temporary_name does not affect a name of a nested module
- 3.4 backport done at commit:5b3970f68b9108e0976b75b5d67da8c56eaa9db4
-
09:57 PM Bug #21186: Inconsistent parsing of ?あand 0
- 3.4 backport is done. commit:8b491169c32621d4e74324eed08465448dfc54d5
-
08:59 PM Revision 43683e1e (git): Avoid allocation for anonymous positional splat with no arguments
- Anonymous positional splats cannot be directly accessed, they can
only be passed as splats to other methods. So if an anonymous
positional splat would be empty, you can use a shared frozen
empty array to save an allocation.
```ruby
def... -
08:39 PM Revision 72cb6897 (git): [ruby/etc] Attempt to re-enable TestEtc#test_ractor_parallel
- * If this fails, please revert this commit in ruby/etc
to keep the repos sync'ed.
https://github.com/ruby/etc/commit/87fb0c4a83 -
08:39 PM Revision 0581947a (git): [ruby/etc] Speedup TestEtc#test_ractor_parallel
- https://github.com/ruby/etc/commit/18c12c084c
-
08:21 PM Revision 2f1ac3fe (git): [ruby/etc] Increase timeout for test_ractor_parallel
- * It seems much slower on macOS (locally on Linux it's always < 1 second).
https://github.com/ruby/etc/commit/9e46857011 -
08:14 PM Revision d49483a7 (git): [ruby/prism] Move snapshots
- This is messing up the CRuby sync, so moving them out of the test
directory will make this easier.
https://github.com/ruby/prism/commit/7ba13bfb68 -
06:38 PM Bug #21202: Ripper wrongly concats separate tstring_content within nested unterminated heredoc
- Pull request: https://github.com/ruby/ruby/pull/13000
-
06:33 PM Bug #21202 (Closed): Ripper wrongly concats separate tstring_content within nested unterminated heredoc
- ~~~ruby
code = <<~'CODE'
<<H1
#{<<H2}a
H2
b
CODE
Ripper.tokenize(code) #=> ["<<H1", "\n", "\#{", "<<H2", "}", "a\nb\n", "H2\n"]
~~~
`"a\nb\n"` should be a separate token `"a\n"` and `"b\n"` -
06:17 PM Feature #21047 (Closed): Change `*nil` to not call `nil.to_a`, for consistency with `**nil`
- Applied in changeset commit:git|67d1dd2ebd622c27d2ae0681c544d9f5d2f5349b.
----------
Avoid array allocation for *nil, by not calling nil.to_a
The following method call:
```ruby
a(*nil)
```
A method call such as `a(*nil)` previously a... -
06:17 PM Feature #21109 (Closed): Want to clarify how $/ is handled in Ractor
- Applied in changeset commit:git|6ecfe643b5d8d64682c6f6bce5b27db5c007331d.
----------
Freeze $/ and make it ractor safe
[Feature #21109]
By always freezing when setting the global rb_rs variable, we can ensure
it is not modified and ca... -
06:17 PM Revision 67d1dd2e (git): Avoid array allocation for *nil, by not calling nil.to_a
- The following method call:
```ruby
a(*nil)
```
A method call such as `a(*nil)` previously allocated an array, because
it calls `nil.to_a`, but I have determined this array allocation is
unnecessary. The instructions in this case are:
... -
06:11 PM Bug #21201: Performance regression when defining methods inside `refine` blocks
- tenderlovemaking (Aaron Patterson) wrote in #note-2:
> I guess if refined methods are rare enough, maybe it's not worthwhile to allocate "refinement inline cache"? In other words, refined methods are always an IC miss?
I believe that wa... -
05:55 PM Bug #21201: Performance regression when defining methods inside `refine` blocks
- The downside however is that I think we'd need to lock the VM to lookup methods? So it doesn't help with making Ractor lock less.
-
05:52 PM Bug #21201: Performance regression when defining methods inside `refine` blocks
- > refined methods are always an IC miss?
I like that idea. -
05:29 PM Bug #21201: Performance regression when defining methods inside `refine` blocks
- byroot (Jean Boussier) wrote in #note-1:
> > I was wondering if there might be any ideas to make it faster, or to handle the invalidation more efficiently.
> ...
I guess if refined methods are rare enough, maybe it's not worthwhile to... -
04:37 PM Bug #21201: Performance regression when defining methods inside `refine` blocks
- > I was wondering if there might be any ideas to make it faster, or to handle the invalidation more efficiently.
The solution is likely to keep the list (set) of all existing call caches that belong to a refinement, as to save the ob... -
11:20 AM Bug #21201 (Closed): Performance regression when defining methods inside `refine` blocks
- After the change introduced in [PR #10037](https://github.com/ruby/ruby/pull/10037), a significant performance regression has been observed when defining methods within refine blocks.
The PR correctly fixes a bug where `callcache` inv... -
05:52 PM Feature #21133 (Closed): [ruby/logger] Add an option to disable writing the header when creating a new log file
-
05:24 PM Feature #21133: [ruby/logger] Add an option to disable writing the header when creating a new log file
- viralpraxis (Iaroslav Kurbatov) wrote:
> Creating a logger automatically writes a hardcoded header comment ("# Logfile created on ..."):
> ...
This one can be closed since the PR was merged. -
04:54 PM Revision 6ecfe643 (git): Freeze $/ and make it ractor safe
- [Feature #21109]
By always freezing when setting the global rb_rs variable, we can ensure
it is not modified and can be accessed from a ractor.
We're also making sure it's an instance of String and does not have any
instance variables.... -
02:56 PM Revision 49d49d59 (git): [ruby/psych] Format Date in ISO-8601 explicitly
- Fix https://github.com/ruby/psych/pull/644
https://github.com/ruby/psych/commit/b1ade765ba -
12:22 PM Revision 5adb2591 (git): Skip TestThreadInstrumentation#test_sleeping_inside_ractor on ModGC workflow (#12996)
- TestThreadInstrumentation#test_sleeping_inside_ractor is a flaky and failing intermittently. Additionally, Launchable reported this test as a top flaky test. (Link: https://app.launchableinc.com/organizations/ruby/workspaces/ruby/insight...
-
10:09 AM Revision c577416b (git): Do not run ruby/spec on CI on Ruby 3.0
-
10:09 AM Revision bac22c98 (git): Update to ruby/spec@5e579e2
-
10:09 AM Revision 53a930f1 (git): Update to ruby/mspec@484310d
-
10:02 AM Bug #21200 (Assigned): Ractor spuriously hangs, segfaults or errors on TestEtc#test_ractor_parallel
- For a new test `test_ractor_parallel` I added in https://github.com/ruby/etc/pull/52/files
This seems a Ractor bug.
Example failures:
https://github.com/ruby/ruby/actions/runs/14097239052/job/39486770259?pr=12990
```
1) Fail... -
09:52 AM Bug #21199 (Feedback): Psych.dump and load on Date before 1582-10-15
- Note that `date` and `date2` are equal in your reproduction code.
```ruby
require 'date'
require 'psych'
date = Date.new(1582, 10, 4)
p "date=#{date.inspect}"
str = Psych.dump(date, permitted_classes: [Date])
p "str=#{str}"
d... -
09:22 AM Bug #21199 (Third Party's Issue): Psych.dump and load on Date before 1582-10-15
- The code is:
```ruby
require 'date'
require 'psych'
date = Date.new(1582, 10, 4)
p "date=#{date.inspect}"
str = Psych.dump(date, permitted_classes: [Date])
p "str=#{str}"
date2 = Psych.load(str, permitted_classes: [Date])
p ... -
07:57 AM Revision df08cc62 (git): [rubygems/rubygems] Bump up connection_pool-2.5.0 with rake vendor:install
- https://github.com/rubygems/rubygems/commit/33c3caa63f
-
07:57 AM Revision 62a026a4 (git): [rubygems/rubygems] Fix Style/RedundantParentheses by bin/rubocop -a
- https://github.com/rubygems/rubygems/commit/4bbf02493e
-
07:57 AM Revision c9e07da5 (git): [rubygems/rubygems] Resolved Lint/ShadowingOuterLocalVariable warning
- https://github.com/rubygems/rubygems/commit/01a14a7073
-
07:56 AM Revision d4a97ea3 (git): Update the all of gemfile deps
-
05:21 AM Bug #21198: Fiber::Scheduler#blocking_operation_wait crash due to stack-use-after-return
- A solution to this would be to invalidate the proc afterwards. I don't know if this is possible but I can take a look.
- 04:57 AM Revision 752a1d78 (git): [rubygems/rubygems] Implement pub_grub strategy interface
- My application spends more than 30% of time during `bundle update`
comparing versions due to versions being sorted inside
next_package_to_try. This has been addressed in pub_grub by defining a
strategy interface (a `#next_package_and_ver... - 04:57 AM Revision af594f51 (git): [rubygems/rubygems] Have "gem exec" sort executable names in error message.
- This decouples `gem exec` behavior (and tests) from the sort order of
the gemspec.
https://github.com/rubygems/rubygems/commit/911cd29159 -
04:54 AM Revision 9f17a0c7 (git): Get rid of SAFE_STATE_PROTOTYPE
- It was only used by JRuby and TruffleRuby to call `SAFE_STATE_PROTOTYPE.dup`
instead of `State.new` which isn't an worthy optimization. -
04:54 AM Revision 4dde7101 (git): Refactor jeaiii-ltoa.h
- Some relatively minor change to make the library more in line
with the gem. Some renaming, etc. -
03:28 AM Revision 1b8e6568 (git): Pend a test for ractor in etc
- ... because it is flaky
-
02:37 AM Revision c6f89e26 (git): Skip failing rbs tests for removing deprecated methods
-
02:37 AM Revision 6d82ea7d (git): Update ext/json/generator/depend
-
02:37 AM Revision ee85745c (git): Removed trailing spaces
-
02:37 AM Revision d1f3c812 (git): Faster integer formatting
- This commit provides an alternative implementation for a
long → decimal conversion.
The main difference is that it uses an algorithm pulled from
https://github.com/jeaiii/itoa.
The source there is C++, it was converted by hand to C for
... -
02:37 AM Revision dc6ffbbe (git): [ruby/json] Remove unused `FAST_STATE_PROTOTYPE` and `PRETTY_STATE_PROTOTYPE`
- https://github.com/ruby/json/commit/18e5c3c67c
-
02:37 AM Revision b71ec119 (git): [ruby/json] Remove `unparse` and `restore` aliases.
- These were deprecated 16 years ago.
https://github.com/ruby/json/commit/a88d825a91 -
02:37 AM Revision f4529ecb (git): [ruby/json] Deprecate all `*_default_options`
- Globally changing the behavior of the library is a bad idea, as
many different libraries may rely on `json` and may not expect it
and likely never tested that a different default config works for them.
If you need to change the behavior... -
01:15 AM Bug #21197 (Assigned): Prism does not accept newline after defined? keyword
-
01:15 AM Bug #21188 (Assigned): PRISM does not end reading from tty with ^D twice
-
01:15 AM Bug #21168 (Assigned): Prism doesn't require argument parentheses (in some cases) when a block is present but parse.y does
-
01:15 AM Bug #21166 (Assigned): Fiber Scheduler is unable to be interrupted by `IO#close`.
-
01:15 AM Bug #21139 (Assigned): Prism and parse.y parses `it = it` differently
-
01:15 AM Bug #21089 (Assigned): Missing methods on enumerators created from Enumerator::product and Enumerator::Chain
-
01:15 AM Feature #21042 (Assigned): Add and expose Thread#memory_allocations memory allocation counters
-
01:15 AM Feature #21039 (Assigned): Ractor.make_shareable breaks block semantics (seeing updated captured variables) of existing blocks
-
01:15 AM Feature #20959 (Assigned): Add a way to get codepage of console.
-
01:15 AM Feature #20953 (Assigned): Array#fetch_values vs #values_at protocols
-
01:15 AM Bug #20920 (Assigned): When loading a file, __FILE__ gets relative paths expanded only when they start with "./"
-
01:15 AM Bug #20816 (Assigned): Potential regression in Ruby 3.3.x (compared with 3.1 and 3.2) regarding fast syscalls and multi-threading.
-
12:45 AM Bug #19765 (Closed): Ractor.make_shareable ignores self of a proc created from a Method
- This should be fixed by commit:git|d80f3a287c5c8d0404b6cb837db360cab320cde1
The third example now also raises `can not make shareable object for #<Method: String#to_s()>`