Activity
From 07/08/2025 to 07/14/2025
Today
- 07:22 PM Revision e288a866 (git): ZJIT: Restore SP register after JIT-to-JIT call (#13882)
- Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>
Co-authored-by: Stan Lo <stan.lo@shopify.com> -
05:42 PM Feature #21346: Introduce `String#ensure_suffix`
- I've updated the documentation examples to reflect the typical use:
```rb
"script".ensure_suffix(".rb") # => "s... -
03:34 PM Bug #21512: Socket.tcp_with_fast_fallback('example.com', 80, '127.0.0.1') fails with unknown socket domain: ipv4 (SocketError)
- I have opened a pull request: https://github.com/ruby/ruby/pull/13878
This bug is around from Ruby 3.4 when HEv2 w... -
03:33 PM Bug #21512 (Open): Socket.tcp_with_fast_fallback('example.com', 80, '127.0.0.1') fails with unknown socket domain: ipv4 (SocketError)
- The following code is expected to open a socket bound to the local IPv4 interface, but raises an SocketError.
```r... -
03:11 PM Revision b2a7b769 (git): Remove dead rb_cc_table_free
-
03:11 PM Revision 127cc425 (git): Remove dead rb_cc_table_mark
-
02:05 PM Revision 64d4e772 (git): [DOC] Tweaks for String#delete_suffix! (#13872)
-
01:58 PM Revision 07a3ab53 (git): [DOC] Tweaks for String#delete_suffix
-
01:58 PM Revision 55dd2022 (git): [DOC] Tweaks for String#delete_prefix!
-
01:57 PM Revision d38bb4ad (git): [DOC] Tweaks for String#delete_prefix
-
12:25 PM Bug #21029: Prism behavior for `defined? (;x)` differs
I agree that consistent behavior between both cases would be ideal.
Given the current structure of `parse.y`, wr...-
10:01 AM Bug #19154: Specify require and autoload guarantees in ractors
- Awesome John! Thanks very much!
-
09:29 AM Bug #21511: Use-after-free of the execution context after the fiber object carrying it is freed in GC
- using ruby 3.5.0dev (2025-07-14T05:11:58Z master 8f54b5bb93) +PRISM [x86_64-linux]
``` shell
# this is currently ... -
07:33 AM Bug #21511: Use-after-free of the execution context after the fiber object carrying it is freed in GC
- nobu (Nobuyoshi Nakada) wrote in #note-3:
> 3.4.1 is outdate.
> Could you try with more recent version?
>
> BTW,... -
07:26 AM Bug #21511 (Open): Use-after-free of the execution context after the fiber object carrying it is freed in GC
- 3.4.1 is outdate.
Could you try with more recent version?
BTW, 3.4.1 tarball is not listed there, but still exist... -
07:10 AM Bug #21511: Use-after-free of the execution context after the fiber object carrying it is freed in GC
- nobu (Nobuyoshi Nakada) wrote in #note-1:
> I can't reproduce it with ruby_3_4 (commit:1e3d24a0f47) on aarch64-linux... -
06:56 AM Bug #21511 (Feedback): Use-after-free of the execution context after the fiber object carrying it is freed in GC
- I can't reproduce it with ruby_3_4 (commit:1e3d24a0f47) on aarch64-linux.
What version is commit:de8de51182? -
04:39 AM Bug #21511 (Open): Use-after-free of the execution context after the fiber object carrying it is freed in GC
- In bootstraptest/test_thread.rb,
``` ruby
assert_equal 'ok', %{
File.write("zzz_t1.rb", <<-END)
begin
... -
05:11 AM Revision 8f54b5bb (git): [ruby/uri] [DOC] Update old use of `URI::Parser`
- https://github.com/ruby/uri/commit/d2a79c6343
-
05:11 AM Revision d1470914 (git): [ruby/uri] [DOC] Document private visibility too
- For the references to URI::RFC2396_Parser private methods.
https://github.com/ruby/uri/commit/372fbb455d -
05:11 AM Revision 1a03270a (git): [ruby/uri] [DOC] Fix references
- These are instance methods, not class methods. And `URI::Parser` was
moved to URI::RFC2396_Parser at [r46491]
[r464... -
02:52 AM Revision 7a03a02b (git): [rubygems/rubygems] Fix more warnings when running old Bundler with latest RubyGems
- Also fix platform warnings when Bundler's entrypoint is bundler's
binstub.
https://github.com/rubygems/rubygems/comm... -
02:52 AM Revision c3d41492 (git): [rubygems/rubygems] Avoid more warnings when using RubyGems with old Bundler
- We were only avoiding them when the RUBYGEMS_GEMDEPS variable is used.
Avoid the warnings in general, whenever the en... -
02:52 AM Revision a93c6840 (git): [rubygems/rubygems] Change helper to load only Bundler extensions to RubyGems
- We'll want to reuse this helper in other situations where we don't want
all Bundler loaded.
https://github.com/rubyg... -
02:52 AM Revision 1c48aa6f (git): [rubygems/rubygems] Move loading Bundler without platform warnings to a method
- https://github.com/rubygems/rubygems/commit/e068f0649a
-
02:52 AM Revision 4651d235 (git): [rubygems/rubygems] No need to detect ancient binstubs either
- https://github.com/rubygems/rubygems/commit/346d491a11
-
02:52 AM Revision 15751af9 (git): [rubygems/rubygems] Improve some heredoc indentations
- https://github.com/rubygems/rubygems/commit/6ee3a33048
-
02:52 AM Revision f1cbd58a (git): [rubygems/rubygems] Stop generating binstubs with support for RubyGems before 2.6.2
- RubyGems generated binstubs still provide support for this ancient
version. This makes no sense since we prevent down... -
02:52 AM Revision 51e89003 (git): [rubygems/rubygems] Reset tmp directories before spec suite
- If you abort running test suite with a quick double Ctrl-C, tmp files
will be left around, and they will interfere wi... -
02:52 AM Revision 7dc28418 (git): [rubygems/rubygems] Load RubyGems extensions in the first place
- This is not currently causing any issues, but I think the most correct
thing to do is that Bundler loads the extensio... -
02:19 AM Revision 55baf026 (git): Fix an indent [ci skip]
07/13/2025
-
04:37 AM Revision f03cc0b5 (git): [ruby/uri] Repeat matching to reduce deviations
- https://github.com/ruby/uri/commit/fa49e5b8ae
-
04:37 AM Revision 9c166d26 (git): [ruby/uri] Test in exponential scale with rehearsal
- https://github.com/ruby/uri/commit/be35e0b4d8
07/12/2025
-
06:22 PM Revision b438915f (git): [DOC] TWeaks for String#delete!
-
05:08 PM Revision e1bc92d0 (git): [DOC] Tweaks for String#delete
-
02:55 PM Revision b0db93c0 (git): [DOC] Tweaks for String#count
-
02:49 PM Bug #21510 (Closed): Rails server crashes on Mac M2 with Bus Error at 0x0000000109946aac
- Thank you for the bug report. You appear to be running on Ruby 2.6, which was EOL in 2022. As such, I'll be closing t...
-
02:24 PM Bug #21510: Rails server crashes on Mac M2 with Bus Error at 0x0000000109946aac
- Although the issue seems related to `pg` gem, I can run activerecord statements on a rails console session and they w...
-
02:18 PM Bug #21510 (Closed): Rails server crashes on Mac M2 with Bus Error at 0x0000000109946aac
- I have been struggling to setup a Rails 5.1.7 application on my Macbook M2 for months.
I installed Rosetta, x86_64 b... -
01:34 PM Revision 9e7a985c (git): [Bug #21509] [DOC] Correct `IO#wait` description
-
01:32 PM Bug #21509 (Closed): io/wait: IO#wait raises error when passed nil as timeout
- Applied in changeset commit:git|dbf7a0c713c39bdfd22c24e69f4bb0b89c9cab65.
----------
[ruby/io-wait] [Bug #21509] [DO... -
01:32 PM Revision dbf7a0c7 (git): [ruby/io-wait] [Bug #21509] [DOC] Correct `IO#wait` description
- https://github.com/ruby/io-wait/commit/c65af887a1
-
01:25 PM Revision 753e3b7a (git): [ruby/openssl] asn1: align UTCTime year range with RFC 5280
- ASN.1 UTCTime uses two-digit years. While X.680 does not specify how to
map them as far as I can tell, X.509/PKIX use... -
10:32 AM Bug #20686 (Closed): URI::HTTPS can build URI with blank, invalid host
- Applied in changeset commit:git|22b81b5bf56d7c5053008697d9e6b2a9c4eb79f4.
----------
[ruby/uri] Do not allow empty h... -
10:32 AM Revision cf7b871a (git): [ruby/uri] Improve performance of `URI::MailTo::EMAIL_REGEXP`
- Fix the performance regression at #172 for valid emails.
``` yml
prelude: |
require 'uri/mailto'
n = 1000
re =... -
07:07 AM Revision 22b81b5b (git): [ruby/uri] Do not allow empty host names, as they are not allowed by RFC 3986
- Pointed out by John Hawthorn.
Fixes [Bug #20686]
https://github.com/ruby/uri/commit/c0cfa04a66 -
07:07 AM Revision 1add45e2 (git): [ruby/uri] Prohibit successive dots in email
- https://github.com/ruby/uri/commit/32335923bf
-
07:07 AM Revision 859d7427 (git): [ruby/uri] More tests for `check_to`
- https://github.com/ruby/uri/commit/b1b5f9a476
- 03:31 AM Revision c97eba9b (git): [ruby/uri] lib/uri/mailto.rb (EMAIL_REGEXP): use assertions surrounding the local part instead of a character class
- https://github.com/ruby/uri/commit/2d7d2d9988
- 03:31 AM Revision 0685e8ca (git): [ruby/uri] lib/uri/mailto.rb (EMAIL_REGEXP): the local part should not contain leading or trailing dots
- https://github.com/ruby/uri/commit/618e2bb640
-
03:24 AM Revision f1764623 (git): [ruby/uri] Make URI::regexp schemes case sensitive
- (https://github.com/ruby/uri/pull/38)
https://github.com/ruby/uri/commit/0c2b6468fa -
03:05 AM Revision c47a92b6 (git): [ruby/uri] Fix the message for unexpected argument
- Use just `self` instead of `self.class`, in `URI::Generic.build`.
Since this is a class method, `self.class` is alway...
07/11/2025
- 08:24 PM Revision 3ec46aad (git): ZJIT: Mark objects baked in JIT code (#13862)
-
06:07 PM Revision c592cbd6 (git): [DOC] Fix links to RDoc in documentation_guide.md
- Since RDoc's documentation is built separately now, the references will
no longer work. -
06:07 PM Revision 482eeb7d (git): [DOC] Remove doc/rdoc/markup_reference.rb
- RDoc has been moved from a default gem to a bundled gem, which means that
the source code is no longer in the ruby/ru... -
05:20 PM Revision 1582bd93 (git): Add Timeout message when bootstraptest times out
-
04:55 PM Revision b0b1712b (git): ZJIT: Use Vec instead of HashMap for profiling (#13809)
- This is notably faster: no need to hash indices.
Before:
```
plum% samply record ~/.rubies/ruby-zjit/bin/ruby --zji... - 04:49 PM Revision b760afe2 (git): ZJIT: Improve asm comments for side exits (#13853)
- * ZJIT: Improve asm comments for side exits
* Use GuardType(Type) and GuardBitEquals(VALUE) - 04:41 PM Revision 77de6b4e (git): [DOC] Add ZJIT glossary table
- 04:41 PM Revision c0b9480b (git): [DOC] Add a few new terms to Ruby glossary
- 04:30 PM Revision bd162dc0 (git): ZJIT: Run validation between compiler passes in debug mode
- 04:30 PM Revision e53bfe21 (git): ZJIT: Fix missing find!() for SetIvar
- 04:30 PM Revision 0d7d87b4 (git): ZJIT: Gracefully handle iseq_name with NULL ISEQ
- 04:30 PM Revision e3456d61 (git): ZJIT: Don't stringify Function in ValidationError
- That's not the validator's responsibility; the caller can choose to
later. -
04:13 PM Bug #18903: Stack overflow signal handling seems to be triggered once and then not working after
- One observation I have is that there are ways to prevent this in application code:
```ruby
require 'json'
circular_r... -
02:04 PM Bug #21509 (Closed): io/wait: IO#wait raises error when passed nil as timeout
- The [documentation of the method](https://ruby-doc.org/3.4.1/exts/io/wait/IO.html#method-i-wait) goes:
wait(ti... -
10:45 AM Revision 12d44dbc (git): Use an invariant condition
- Cannot rule out the possibility that `crr->silent` is modified during
`func`. -
09:04 AM Feature #21501: Include native filenames in backtraces as sources for native methods
- > The underlying premise is that a bug is far more likely to be in the user's Ruby code [...]
Yup, I can very very... -
02:43 AM Feature #21501: Include native filenames in backtraces as sources for native methods
- Let me clarify why the current behavior is generally preferred.
The underlying premise is that a bug is far more l... -
08:32 AM Revision 9760ec6f (git): [DOC] Move document only source to doc
-
06:26 AM Feature #21459 (Closed): Add Set C-API
- Feature added in commit:2ab38691a2683c992bf2886159094afd5e461233
-
06:24 AM Revision 0b23a8db (git): Update dependencies for addition of set.h to public headers
-
06:24 AM Revision 2ab38691 (git): Add Set C-API
- This should be a minimal C-API needed to deal with Set objects. It
supports creating the sets, checking whether an el... -
06:24 AM Revision 08d4f789 (git): Rename some set_* functions to set_table_*
- These functions conflict with the planned C-API functions. Since they
deal with the underlying set_table pointers and... -
06:19 AM Bug #21507 (Closed): Regexp considers variable repetition quantifiers invalid in lookbehind
- Applied in changeset commit:git|b2fdd26417d1539014c7af499ab1f9b398eca4c0.
----------
Lookbehind regexp must be fixed... -
03:36 AM Bug #21507 (Open): Regexp considers variable repetition quantifiers invalid in lookbehind
-
03:36 AM Bug #21507 (Feedback): Regexp considers variable repetition quantifiers invalid in lookbehind
- This is currently an intended implementation limitation.
This behavior comes from the specifications of Onigmo, wh... -
02:48 AM Bug #21507 (Closed): Regexp considers variable repetition quantifiers invalid in lookbehind
- This is my first bug subscription, please feel free to tell me if I can do anything better.
# Description
Attem... -
06:19 AM Revision b2fdd264 (git): Lookbehind regexp must be fixed-length
- Fixes [Bug #21507]
-
06:08 AM Revision 1317377f (git): ZJIT: A64: Have add/sub to SP be single-instruction
- Previously a missed optimization for add followed by mov. While we're
at it, have Add and Sub share the same match ar... - 05:47 AM Revision 0058bee5 (git): Fix `heap-use-after-free` in `rb_getaddrinfo` (#13856)
- This change addresses the following ASAN error:
```
==1973462==ERROR: AddressSanitizer: heap-use-after-free on addre... -
05:45 AM Feature #21039: Ractor.make_shareable breaks block semantics (seeing updated captured variables) of existing blocks
- The followings are also approved; changing an existing proc object to shareable should be prohibited.
> * raise on... -
05:43 AM Feature #21039: Ractor.make_shareable breaks block semantics (seeing updated captured variables) of existing blocks
- https://github.com/ruby/dev-meeting-log/blob/master/2025/DevMeeting-2025-07-10.md#feature-21039-ractormake_shareable-...
-
05:09 AM Misc #21399 (Closed): DevMeeting-2025-07-10
-
05:09 AM Misc #21508 (Open): DevMeeting-2025-08-21
- # The next dev meeting
**Date: 2025/08/21 13:00-17:00** (JST)
Log: *TBD*
- Dev meeting *IS NOT* a decision-mak... - 01:15 AM Revision a02dcbfd (git): Remove accidentally committed method Module.gccct_clear_table
- This was probably meant to be only for debugging. It was introduced in
the big namespace on read commit: 382645d440d - 01:12 AM Revision 0e2bae82 (git): ZJIT: Print a message about ZJIT_RB_BUG when unused (#13852)
-
12:26 AM Bug #21503 (Closed): \p{Word} does not match on \p{Join_Control} while docs say it does
- https://github.com/ruby/ruby/pull/7711 has been merged
07/10/2025
-
10:57 PM Bug #21505 (Closed): [Ractor] calling exit from non-main ractor will hang if main ractor waits on it
- Applied in changeset commit:git|6c66458070e2de45213f473ac30b431ebea81b9b.
----------
Fix rb_eSystemExit raised in Ra... -
10:57 PM Revision 6c664580 (git): Fix rb_eSystemExit raised in Ractor
- [Bug #21505]
Previously `Ractor.new { exit }.join` would hang because SystemExit was
special cased.
This commit upd... - 09:10 PM Revision 470e11a4 (git): ZJIT: Mark Snapshot as having an output
- Other instructions use it as an operand and #13814 especially needs it
to have an output for validation. - 09:10 PM Revision 45be0e99 (git): ZJIT: Validate that each IR instruction appears at most once
- 08:40 PM Revision b1828cbb (git): ZJIT: Implement patch points on BOP redefinition (#13850)
- Co-authored-by: Max Bernstein <max@bernsteinbear.com>
- 07:11 PM Revision 214983bd (git): ZJIT: Add def-use validator via dataflow analysis (#13814)
- This PR adds a validator based on dataflow analysis to ZJIT. It checks that all uses are dominated by a GEN-DEF prior...
- 07:08 PM Revision 9ab80a74 (git): ZJIT: Avoid optimizing locals on eval (#13840)
- * ZJIT: Avoid optimizing locals on eval
* Maintain the local state for eval -
03:56 PM Revision 9d41541b (git): Fix unused variable warnings in default.c in modular GC
- The asan and valgrind macros when BUILDING_MODULAR_GC don't use the variables
which could the compiler to emit unused... -
03:18 PM Revision 1fb4929a (git): Make `rb_enc_autoload_p` atomic
- Using `encoding->max_enc_len` as a way to check if the encoding
has been loaded isn't atomic, because it's not atomic... -
02:40 PM Revision 51252ef8 (git): [DOC] Tweaks for String#concat (#13836)
-
02:02 PM Revision a1acba6d (git): [DOC] Tweaks for String#codepoints
-
12:42 PM Revision 800de989 (git): [Bug #19417] Update version guard
-
12:35 PM Bug #21506 (Closed): Fix timeout in `Addrinfo.getaddrinfo` to actually take effect
- Applied in changeset commit:git|cdeb9c4d7020d36f157fde57eb12108c2515f031.
----------
Fix timeout in Addrinfo.getaddr... - 12:35 PM Revision cdeb9c4d (git): Fix timeout in Addrinfo.getaddrinfo to actually take effect (#13803)
- [Bug #21506] Fix timeout in Addrinfo.getaddrinfo to actually take effect
This change fixes an issue where the timeou... -
12:28 PM Revision bd18238a (git): [Bug #19417] Make word prop match join_control ...
- ... to conform to UTS 18 as mentioned in https://bugs.ruby-lang.org/issues/19417#note-3
https://unicode.org/reports/... -
12:02 PM Feature #21454: "undefined method 'break' for an instance of Binding"
- nobu (Nobuyoshi Nakada) wrote in #note-1:
> Use no-dbg.rb with `RUBYOPT=-rno-dbg` when you run without `rdbg`.
>
... -
09:04 AM Feature #21454 (Feedback): "undefined method 'break' for an instance of Binding"
- In today's dev meeting, we emphasized that it's important to ensure `binding.break` (or `debugger`) is removed before...
-
08:57 AM Feature #21454: "undefined method 'break' for an instance of Binding"
- Use no-dbg.rb with `RUBYOPT=-rno-dbg` when you run without `rdbg`.
```ruby
class Binding
def break = nil
end
... -
09:39 AM Bug #21503: \p{Word} does not match on \p{Join_Control} while docs say it does
- It looks `\p{Word}` is updated in TR#18 Version 15.
https://www.unicode.org/reports/tr18/tr18-15.html
The fix looks... -
09:23 AM Bug #21456 (Rejected): IO.close does not work in a rescue IO::TimeoutError block.
- dE (dE Techno) wrote:
> not sure what signal it sends, it's undocumented
No signal is sent.
Send a signal by y... -
08:56 AM Feature #21435 (Rejected): Kernel#then_try as a conditional #then
- From my point of view, it doesn't make the code clearer. Besides that, the core Ruby does not provide even `#try`.
M... -
08:53 AM Bug #21452 (Rejected): ARGS_SPLAT bytecode regression between 3.3 and 3.4
- I agree with @jeremyevans0 here. I consider this as an optimization.
Matz.
-
08:51 AM Feature #21386: Introduce `Enumerable#join_map`
- FWIW, this function is called `mapconcat` in Emacs: https://www.gnu.org/software/emacs/manual/html_node/elisp/Mapping...
-
08:38 AM Feature #21386 (Rejected): Introduce `Enumerable#join_map`
- I reject this proposal. Simply combine join and map at the moment.
I hope JIT inlining will remove intermediate obje... -
02:54 AM Feature #21386: Introduce `Enumerable#join_map`
- https://github.com/ruby/dev-meeting-log/blob/master/2019/DevMeeting-2019-03-11.md
> [Feature #15323] Proposal: Add... -
08:51 AM Feature #20205: Enable `frozen_string_literal` by default
- Probably we would have Ruby4.0 in 2025, but I am not going to make frozen-string-literal default this year.
Matz.
-
08:45 AM Feature #21455 (Rejected): Add a block argument to Array#join
- It's fundamentally `join_map` we have rejected. Array#join should join, not mapping.
We are not going to add every e... -
08:33 AM Feature #4539 (Rejected): Array#zip_with
- I don't think it's worth adding a new method.
Matz.
-
08:30 AM Feature #21346: Introduce `String#ensure_suffix`
- I don't think other candidates are better. Probably typical usage `str.ensure_suffix(".rb")` helps you understand the...
-
08:19 AM Feature #21039: Ractor.make_shareable breaks block semantics (seeing updated captured variables) of existing blocks
- I'd like to have `Ractor.shareble_proc` and `Ractor.sharable_lambda`. See the agenda from 20250710 developer meeting....
-
08:17 AM Feature #21459: Add Set C-API
- I accept the proposal.
Matz.
-
08:15 AM Feature #21442 (Assigned): Make tsort to bundled gems
- I got the approval from @akr at https://bugs.ruby-lang.org/issues/21399
I added warning for this at commit:65a0f46... -
07:48 AM Revision 65a0f468 (git): Warn to use tsort for Ruby 3.6 that will be released at 2026
-
06:45 AM Revision bec1ff62 (git): Sort `COMMONOBJS` alphabetically
-
06:40 AM Revision 8cc109a8 (git): [rubygems/rubygems] Update vendored resolv to 0.6.2
- https://github.com/rubygems/rubygems/commit/afbbc02763
-
05:16 AM Feature #17473: Make Pathname to embedded class of Ruby
- Regarding the original proposal, I'd accept making Pathname built-in, considering its wide accepting among the commun...
-
03:44 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
- We know that signal handlers run in a trap context, but are there other ways this can happen? I was under the impress...
-
12:28 AM Revision 581da51c (git): Fix whitespace on some RB_VM_LOCKING calls
07/09/2025
- 11:03 PM Revision f5085c70 (git): ZJIT: Mark profiled objects when marking ISEQ (#13784)
- 09:51 PM Revision 1e3d24a0 (git): [ruby/prism] Accept a newline after the defined? keyword [Backport #21197] (#13327)
- * [ruby/prism] Accept a newline after the defined? keyword
[Bug #21197]
https://github.com/ruby/prism/commit/22be95... - 09:50 PM Revision 1df94aaf (git): ZJIT: Name side-exit test cases correctly
- 09:50 PM Revision e2a81c73 (git): ZJIT: Optimize `opt_and` and `opt_or` instructions for Fixnum
- 09:50 PM Revision 10b582da (git): ZJIT: Profile `opt_and` and `opt_or` instructions
-
09:01 PM Bug #21505: [Ractor] calling exit from non-main ractor will hang if main ractor waits on it
- I opened https://github.com/ruby/ruby/pull/13838 which fixes this
```
./miniruby -e 'Ractor.new { exit }.join'
-... -
06:42 PM Revision b146eae3 (git): [DOC] Tweaks for String#clear
-
06:41 PM Revision 6c77a0c6 (git): [DOC] Tweaks for String#chop
-
06:41 PM Revision 3baed2ea (git): [DOC] Tweaks for String#chr
-
06:41 PM Feature #21386: Introduce `Enumerable#join_map`
- I am against this.
Ergonomics: Adding a special "X_Y" method for every common pattern of "X followed by Y" is truly ... -
05:38 PM Revision 94e702b0 (git): [DOC] Tweaks for String#chop
-
05:38 PM Revision 54f28c1d (git): Avoid concurrently overflowing of shape_id
- Previously it was possible for two atomic increments of next_shape_id
running concurrently to overflow MAX_SHAPE_ID. ... -
05:38 PM Revision cfc006d4 (git): Always use atomics to get the shape count
- When sharing between threads we need both atomic reads and writes. We
probably didn't need to use this in some cases ... -
05:38 PM Revision 5dfd86cf (git): Fix off-by-one in shape_tree_mark/shape_tree_compact
- This was using < so subtract one from the last shape id would have us
miss the last inserted shape. I think this is u... -
04:40 PM Revision fd8a67fc (git): Re-ordered vcpkg related steps. It may be affected with VsDevCmd.bat
-
04:40 PM Revision 942d64b4 (git): Use the latest version of Visual Studio with windows-2022 runner image
-
03:54 PM Revision 1de0b28c (git): [DOC] Tweaks for String#chomp
-
03:54 PM Revision f17e5c4d (git): [DOC] Tweaks for String#chomp!
-
01:11 PM Revision 08738779 (git): Update to ruby/spec@ed254ba
-
11:18 AM Revision ba246c5a (git): [ruby/io-wait] Revert "Fix dependency for ruby 2.6"
- This reverts commit https://github.com/ruby/io-wait/commit/2eb3841e9c8f.
Ruby 2.6 support has been dropped.
https:/... -
10:54 AM Bug #21506 (Closed): Fix timeout in `Addrinfo.getaddrinfo` to actually take effect
- ### Description
This change fixes an issue where the timeout option in `Addrinfo.getaddrinfo` was not functioning as... -
10:40 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
- > Yes, for example gems like webservers like Puma set trap handlers.
The trap handler code that has already been w... -
08:37 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
- mame (Yusuke Endoh) wrote in #note-25:
> Indeed, creating a new thread for each signal arrival is extremely simple.
... -
12:28 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
- > Run signal handlers not on the main thread but another thread.
While I don't have a strong opinion on this, I pe... -
10:34 AM Revision 0c1c3ffa (git): [ruby/io-wait] Revert https://github.com/ruby/io-wait/pull/9 "Make
- the gem a noop on Rubies older than
2.6"
This reverts commit https://github.com/ruby/io-wait/commit/75fcb74c327f.
T... -
10:34 AM Revision ddeefa2e (git): [ruby/io-wait] Bump up the required ruby version
- io-wait became a default gem at ruby 3.0.
Even it can be installed on earlier versions, but the standard library
will... -
08:56 AM Revision 25afe7ef (git): Rename variables to suit each method
-
08:56 AM Revision cd10afed (git): Removed a left over from c71a60c1dd02
- 0a0eb2807ed7 has already replaced most of that code.
-
08:12 AM Bug #21396: Set#initialize should call Set#add on items passed in
- Regarding thread-safety, for `add?` the only thing is the return value where the old implementation might potentially...
-
06:35 AM Bug #21396: Set#initialize should call Set#add on items passed in
- knu (Akinori MUSHA) wrote in #note-10:
> Jeremy, thanks for the reply.
>
> Your point about thread-safety is well... -
04:57 AM Bug #21396: Set#initialize should call Set#add on items passed in
- Jeremy, thanks for the reply.
Your point about thread-safety is well taken. It is an important advantage. As a p... -
12:41 AM Bug #21396: Set#initialize should call Set#add on items passed in
- knu (Akinori MUSHA) wrote in #note-8:
> Considering the feedback we've received about compatibility in the new exper... -
06:59 AM Revision 3f0e0d5c (git): [ruby/io-nonblock] Bump up the required ruby version
- io-nonblock became a default gem at ruby 3.0.
Even it can be installed on earlier versions, but the standard library
... - 04:48 AM Revision 4ed27575 (git): [rubygems/rubygems] Update gemspec based on provided github username when exists
- * Conditionally set changelog_url if gh username passed
and enabled
* conditionally set homepage, source code uri, ho... - 04:48 AM Revision 3feba181 (git): [rubygems/rubygems] Let s3_uri_signer accept the HTTP method
- https://github.com/rubygems/rubygems/commit/35fc7f9547
- 04:48 AM Revision 5d880b75 (git): [rubygems/rubygems] Correctly sign S3 HEAD requests
- We sometimes send HEAD requests. The s3_uri_signer.rb code allways assumed GETs.
This lead to consistently getting 40... - 04:48 AM Revision af6012b9 (git): [rubygems/rubygems] Fix date format in S3 URI signer
- %M is minute of the hour.
%m is month of year.
We want the former, not the latter.
https://github.com/rubygems/rubyg... -
04:48 AM Revision c6da0197 (git): [rubygems/rubygems] Add blank line after every question
- To try make output a bit less messy.
https://github.com/rubygems/rubygems/commit/92c8bc6769 -
04:48 AM Revision 9942ff7c (git): [rubygems/rubygems] Use shorter questions as prompts in `bundle gem`
- If we use long explanations as prompts, sometimes the prompt gets
printed twice due to a (I think) reline/readline bu... -
04:48 AM Revision 9b0f9f81 (git): [rubygems/rubygems] Reword MIT explanation to make sense after reordering
- Previous wording assumed explanation was displayed after the question,
not before.
https://github.com/rubygems/rubyg... - 03:56 AM Revision e9cd3060 (git): ZJIT: Support guarding *Exact types (#13797)
- ZJIT already can generate guard type instructions for *Exact types.
For example:
```
def test(strings)
strings.ma...
07/08/2025
-
09:26 PM Revision 5aaedc05 (git): Re-ordered vcpkg related steps. It may be affected with VsDevCmd.bat
-
09:26 PM Revision 80bf0744 (git): Use the latest version of Visual Studio with windows-2022 runner image
-
09:18 PM Revision 9f00b887 (git): Bump up resolv-0.2.3 for Ruby 3.2
-
09:12 PM Bug #21505: [Ractor] calling exit from non-main ractor will hang if main ractor waits on it
- Yeah fair enough. It's probably not as complicated to fix as I initially thought.
-
08:54 PM Bug #21505: [Ractor] calling exit from non-main ractor will hang if main ractor waits on it
- `Kernel#exit` is basically just `raise SystemExit`, does it mean any exception in a Ractor hangs?
IOW, I don't think ... -
07:58 PM Bug #21505 (Closed): [Ractor] calling exit from non-main ractor will hang if main ractor waits on it
- ```ruby
r = Ractor.new do
exit
end
r.join # hangs
```
Should `exit` be allowed in ractors? It would be ea... -
08:52 PM Feature #21501: Include native filenames in backtraces as sources for native methods
- ivoanjo (Ivo Anjo) wrote in #note-6:
> I must admit I'm a bit torn on this. As I mentioned above, often the `.c` fil... -
08:41 PM Feature #21501: Include native filenames in backtraces as sources for native methods
- matz (Yukihiro Matsumoto) wrote in #note-5:
> In my opinion, the typical Ruby user is not interested in line numbers... -
08:33 AM Feature #21501: Include native filenames in backtraces as sources for native methods
- For me the usefulness is in understanding both what and where something is happening even without needing to go into ...
-
03:04 AM Feature #21501: Include native filenames in backtraces as sources for native methods
- I didn't quite understand what makes you happy with this proposal. Could you explain a little more how it would be us...
-
08:33 PM Bug #19473: can't be called from trap context (ThreadError) is too limiting
- OK, thank you all 3 for clarifying.
I understand that point of view, even though I don't fully agree with it.
One... -
11:24 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
- Locking multiple mutex with a fixed order is considered to be deadlock-safe, but permitting mutex in signal_handler, ...
-
08:38 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
- If `Mutex#lock` were permitted inside a trap handler, a program like the following would have a very hard-to-reproduc...
-
05:10 AM Bug #19473: can't be called from trap context (ThreadError) is too limiting
- Eregon (Benoit Daloze) wrote in #note-20:
> I think a simple way to look at this issue is to analyze all cases:
> 1... -
07:57 PM Revision c691095f (git): ZJIT: Use BitSet in HIR
-
07:57 PM Revision e59f404b (git): ZJIT: Add a BitSet type
- 07:51 PM Revision 342ada15 (git): ZJIT: Use nil? optimization to test guard generation against different types
- 07:51 PM Revision 79915e6f (git): ZJIT: Profile `nil?` calls
- This allows ZJIT to profile `nil?` calls and create type guards for
its receiver.
- Add `zjit_profile` to `opt_nil_p... -
06:50 PM Bug #21504 (Open): [Ractor] Process.waitpid blocks ractor, new NT doesn't pick up other ractors
- The following code hangs when run with `RUBY_MAX_CPU=2 make run`:
Note: `RUBY_MAX_CPU` is set to 2 so that only 1 ... -
05:26 PM Revision b1604708 (git): [DOC] Tweaks for String#chars
-
05:26 PM Revision 14971e75 (git): [DOC] Tweaks for String#center
-
04:32 PM Revision 5cd408a5 (git): Bump up resolv-0.6.2 for Ruby 3.4 (#13818)
- 04:28 PM Revision 9e4157a0 (git): ZJIT: Make type definition code more consistent
- 04:28 PM Revision af892c1b (git): ZJIT: More accurately model Class types
- 04:28 PM Revision 6c200828 (git): ZJIT: Support inference of ModuleExact type
-
03:10 PM Bug #21375: Set[] does not call #initialize
- I'm leaning toward making Set subclass-friendly again. That's how I've always wanted Set to be (unlike Array and Has...
-
02:57 PM Bug #21396: Set#initialize should call Set#add on items passed in
- Considering the feedback we've received about compatibility in the new experimental Set implementation, it may be in ...
-
02:34 PM Bug #21029: Prism behavior for `defined? (;x)` differs
- @S_H_ I agree, I think the overhead is not worth it in this case and we should pretend the `;` do not exist on both c...
-
02:23 PM Bug #21029: Prism behavior for `defined? (;x)` differs
- I've fixed that `defined? (x;)` returns an `expression` when using parse.y.
https://github.com/ruby/ruby/pull/13821
... -
10:30 AM Revision f5acefca (git): [ruby/uri] Prefer dedicated assertion methods
- https://github.com/ruby/uri/commit/d79b3f5b94
-
10:00 AM Revision 100c0430 (git): [ruby/etc] Prefer dedicated assertions
- https://github.com/ruby/etc/commit/9caddede76
-
09:25 AM Revision 7ce4db84 (git): [ruby/delegate] Prefer dedicated assertions
- https://github.com/ruby/delegate/commit/5ee4189537
-
07:52 AM Feature #21455: Add a block argument to Array#join
- I have a different view on this proposal.
If `Array#join` were to accept a block, I would expect its behavior to r... - 07:26 AM Revision c913a635 (git): Update default gems list at b9782ab8932f9fb6a24a0522c579ca [ci skip]
-
07:25 AM Revision b9782ab8 (git): [ruby/resolv] v0.6.2
- https://github.com/ruby/resolv/commit/a28aaed4cb
-
07:25 AM Revision 9aa0300d (git): [ruby/resolv] Limit decompressed name length
- RFC 1035 specifies the 255-octet maximum name length. This change set
checks the limit.
https://github.com/ruby/reso... -
06:36 AM Revision 680383c6 (git): [ruby/tsort] Exclude gemspec and git-related files
- https://github.com/ruby/tsort/commit/bf2e3a8695
-
06:36 AM Revision 51de7c75 (git): [ruby/tsort] Use git magic signatures to exclude files
- https://github.com/ruby/tsort/commit/ab55dcb7f3
-
06:11 AM Revision 75786557 (git): [ruby/tsort] [DOC] Document constants
- https://github.com/ruby/tsort/commit/1d1711ad23
-
05:37 AM Feature #21262 (Closed): Proposal: `Ractor::Port`
- https://github.com/ruby/dev-meeting-log/blob/master/2025/DevMeeting-2025-06-05.md#feature-21262-proposal-ractorport
... -
05:36 AM Bug #21362 (Assigned): Namespace: Inline method caches poisoned with builtins
-
02:12 AM Bug #21503: \p{Word} does not match on \p{Join_Control} while docs say it does
- There is already a PR for that: https://github.com/ruby/ruby/pull/7711
Can you take a look? @duerst @naruse -
12:11 AM Feature #20405: Inline comments
- I like Marco's proposal, but I wonder how much code out there could potentially break.
Also available in: Atom