Project

General

Profile

Actions

Misc #22249

open

DevMeeting-2026-09-10

Misc #22249: DevMeeting-2026-09-10

Added by mame (Yusuke Endoh) 21 days ago. Updated about 5 hours ago.

Status:
Open
Assignee:
-
[ruby-core:126430]

Description

The next dev meeting

Date: 2026/09/10 13:00-17:00 (JST)
Log: TBD

  • Dev meeting IS NOT a decision-making place. All decisions should be done at the bug tracker.
  • Dev meeting is a place we can ask Matz, nobu, nurse and other developers directly.
  • Matz is a very busy person. Take this opportunity to ask him. If you can not attend, other attendees can ask instead of you (if attendees can understand your issue).
  • We will write a record of the discussion in the file or to each ticket in English.
  • All activities are best-effort (keep in mind that most of us are volunteer developers).
  • The date, time and place of the meeting are scheduled according to when/where we can reserve Matz's time.
  • DO NOT discuss then on this ticket, please.

Call for agenda items

If you have a ticket that you want matz and committers to discuss, please post it into this ticket in the following format:

* [Ticket ref] Ticket title (your name)
  * Comment (A summary of the ticket, why you put this ticket here, what point should be discussed, etc.)

Example:

* [Feature #14609] `Kernel#p` without args shows the receiver (ko1)
  * I feel this feature is very useful and some people say :+1: so let discuss this feature.
  • It is recommended to add a comment by 2026/09/07. We hold a preparatory meeting to create an agenda a few days before the dev-meeting.
  • The format is strict. We'll use this script to automatically create an markdown-style agenda. We may ignore a comment that does not follow the format.
  • Your comment is mandatory. We cannot read all discussion of the ticket in a limited time. We appreciate it if you could write a short summary and update from a previous discussion.

Related issues 1 (1 open0 closed)

Related to Ruby - Misc #14770: [META] DevelopersMeetingOpenActions

Updated by mame (Yusuke Endoh) 21 days ago Actions #1

  • Related to Misc #14770: [META] DevelopersMeeting added

Updated by byroot (Jean Boussier) 21 days ago Actions #2 [ruby-core:126433]

  • [Feature #22232] Deprecate RHASH_TBL and associated APIs (byroot)
    • I would like to deprecate RHASH_TBL, RHASH_TBL_RAW and rb_hash_bulk_insert_into_st_table.
    • It's a dangerous API because it allow bypassing write barriers
    • It restrict evolution of RHash, as we must always be able to convert a Hash into a public st_table.
    • gem-codesearch only revealed very old and low download gems.
    • All codesearch results have an equivalent rb_hash_* API, proving RHASH_TBL is useless.
  • [Feature #22236] New API for adjustable JIT warmup (byroot)
    • JIT warmup can be a challenge in production.
    • After a deploy JIT warmup can cause high latency, so it may need to be tuned to avoid timeouts, queuing, etc.
    • Current tuning parameters like --yjit-call-threshold are hard to reason about, imprecise and need frequent update as the application changes.
    • I'd like YJIT, and potentially ZJIT to have an adjustable max_compile_time_ns.
    • When RubyVM::YJIT.runtime_stats[:compile_time_ns] goes over max_compile_time_ns stop compiling.
    • When max_compile_time_ns is assigned to a value higher than current compile_time_ns re-enable compilation.
    • It only need to be best effort.
    • See ticket for example usage.

Updated by chucke (Tiago Cardoso) 21 days ago Actions #3 [ruby-core:126435]

Updated by himura467 (Akito Shitara) 16 days ago · Edited Actions #4 [ruby-core:126472]

  • [Feature #22056] Zero-Copy String Constructor Backed by Arbitrary Ruby Object (himura467)

Updated by hasumikin (hitoshi hasumi) 10 days ago Actions #5 [ruby-core:126543]

  • [Feature #22279] Region (Length / Range) Arguments for String Bit Operations (hasumikin)
    • Follow-up to [Feature #22118] (String bit operations, accepted): adds (offset, length) and Range overloads to bit_set / bit_clear / bit_flip / bit_count.
    • Semantics follow #22118: mutations raise IndexError on any overrun without modifying bits, bit_count clamps and returns 0 for an empty intersection, negative offset is IndexError, negative length is ArgumentError.
    • Points I'd like feedback on: (1) bit_count(offset) with a lone offset raises ArgumentError rather than meaning "to the end"; (2) an empty region for mutations still requires offset <= bit_size, mirroring "abc"[4, 0] being nil.

Updated by shugo (Shugo Maeda) 6 days ago Actions #6

  • [Bug #22276] alias in a module falls back to Object even in classes not inheriting from Object (shugo)
    • alias in a module binds Object's method at alias time, so it is broken in classes not inheriting from Object; this assumes Object is the root class, which is not true since 1.9.
    • I propose to check only the method existence with Object and resolve the alias at call time, like ZSUPER methods. PR: https://github.com/ruby/ruby/pull/18553
    • Is this change acceptable?

Updated by tekknolagi (Maxwell Bernstein) 4 days ago · Edited Actions #7 [ruby-core:126566]

  • [Misc #22272] Propose Kevin Menard (@nirvdrum (Kevin Menard)) as a core committer (tekknolagi)
    • I am proposing we make Kevin Menard, a long-time and frequent contributor, a committer.
    • This will also help ZJIT: it would be nice if he could merge PRs.

Updated by jhawthorn (John Hawthorn) about 5 hours ago Actions #8 [ruby-core:126589]

  • [Bug #22291] Instance variables should be forbidden on Ractor-shareable objects
    • Currently reading an ivar from a Ractor-shareable, but not frozen, object is only allowed on the main Ractor. But freezing these objects then incorrectly allows other Ractors to read the (possibly Ractor-unsafe) ivars.
    • I propose we forbid setting instance variables on shareable Ractor objects.
    • Currently, Ractor, ENV, Shareable proc will forbid setting instance variables (no change to Class/Module which have special rules)
    • Is this acceptable?
Actions

Also available in: PDF Atom