Project

General

Profile

Actions

Misc #21777

closed

DevMeeting-2026-01-14

Misc #21777: DevMeeting-2026-01-14

Added by mame (Yusuke Endoh) 11 months ago. Updated 10 months ago.

Status:
Closed
Assignee:
-
[ruby-core:124173]

Description

The next dev meeting

Date: 2026/01/14 13:00-17:00 (JST)
Log: https://github.com/ruby/dev-meeting-log/blob/master/2026/DevMeeting-2026-01-14.md

  • 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/01/11. 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 open — 0 closed)

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

Updated by mame (Yusuke Endoh) 11 months ago Actions #1

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

Updated by zverok (Victor Shepelev) 11 months ago Actions #2 [ruby-core:124191]

  • [Bug #21780] Change the default size of Enumerator.produce back to infinity (zverok)
    • While the new argument is a good addition to the API, I argue that Float::INFINITY would be a more friendly default, corresponding to the most straightforward usage

Updated by shioimm (Misaki Shioi) 10 months ago Actions #3 [ruby-core:124358]

  • [Bug #21803] Addrinfo#connect_internal should raise IO::TimeoutError on user-specified timeouts
    • I’d like to make Socket.tcp consistently raise IO::TimeoutError when a user-specified timeout occurs, rather than raising Errno::ETIMEDOUT in some cases.

Updated by Eregon (Benoit Daloze) 10 months ago Actions #4 [ruby-core:124402]

  • [Feature #8948] Frozen regex (eregon)
    • Can we merge it now for 4.1? Then there is plenty of time for the few gems that rely on mutable Regexp to adapt.
    • We can also revert it if it turns out to be too disrupting.

Updated by byroot (Jean Boussier) 10 months ago Actions #5

  • [Feature #21800] Dir.foreach and Dir.each_child to optionally yield File::Stat object alongside the children name (byroot)
    • It's common for development tools to need to recursively scan the file system, but it's slower than it should be in Ruby because the API impose N+1 stat syscalls.
    • By providing File::Stat alongside the entry name we can leverage readdir's d_type and avoid a stat(2) call in most cases.
    • This would benefit many popular gems such as Zeitwerk, rubocop, etc.
  • [Feature #21788] Promote Thread::Monitor to a core class (byroot)
    • Monitor is about as useful as Mutex and yet one is a core class and the other is a "stdlib" extension.
    • Bringing it into core allow to make is about as fast as mutex, while it is currently ~20% slower.
    • I don't personally think MonitorMixin should be made core though. It can remain in monitor.rb.
  • [Feature #21821] Add Stack and SizedStack classes. (byroot)
    • Identical to Queue and SizedQueue but LIFO ordering.
    • Should they be namespaced under Thread:: like Queue or is it just historical?

Updated by jeremyevans0 (Jeremy Evans) 10 months ago Actions #6

  • [Feature #21264] Extract Date library from Ruby repo in the future (jeremyevans0)
    • Do we want to extract date to bundled gems?
    • I'm fine keeping it as stdlib, and if it needs a maintainer, I volunteer to maintain it.
    • If we want to move Date to bundled gems, I think we should move a subset of Date to core.

Updated by mame (Yusuke Endoh) 10 months ago Actions #7 [ruby-core:124423]

  • [Feature #6012] Proc#source_location also return the column (mame)
    • Quite a few gems are using the idiom source_location.last.
    • The idiom will return a column number (of the end of the code range) instead of a line number.
    • This incompacibility actually affected rspec and pry (though they are already fixed).
    • Is this incompatibility really ok? I feel it is disproportionately incompatible for unclear use cases.

Updated by mame (Yusuke Endoh) 10 months ago · Edited 1Actions #8 [ruby-core:124424]

  • [Feature #13683] Add strict Enumerable#single (mame)

Updated by Eregon (Benoit Daloze) 10 months ago · Edited Actions #9 [ruby-core:124428]

  • [Feature #21795] Methods for retrieving ASTs (eregon)
    • This seems very useful and convenient, and abstract over implementation details like node_id (which I think make little sense to expose to users).
    • To address @mame's concern about not working for eval code, how about keeping eval code in memory by default?
    • TruffleRuby would implement this using source byte offset+length and not node_id. I can even prototype an implementation if useful.

Updated by Eregon (Benoit Daloze) 10 months ago Actions #10 [ruby-core:124429]

  • [Feature #21826] Deprecating RubyVM::AbstractSyntaxTree (eregon)
    • OK to deprecate now/for 4.1? If not, when?
    • And maybe remove it in 4.2?
  • [Feature #21827] Deprecating Ripper (eregon)
    • Removing Ripper would remove a significant maintenance overhead, for all Ruby implementations.
    • It is however an established/public API, even though Ripper.sexp is still marked experimental and it hasn't been very stable.
    • So how about deprecating it in 4.1?

Updated by Eregon (Benoit Daloze) 10 months ago Actions #11 [ruby-core:124434]

I plan to attend this meeting, though I will only be able to join from 15:30PM JST (= 7:30AM CET).
Would it possible to discuss the topics I added, as well as #6012 (https://bugs.ruby-lang.org/issues/21777#note-7) after that time so I can participate in their discussion?
Maybe by simply putting these topics at the end of the list of topics when creating the agenda.

Updated by Eregon (Benoit Daloze) 10 months ago · Edited Actions #12 [ruby-core:124472]

Updated by mame (Yusuke Endoh) 10 months ago Actions #13

  • Description updated (diff)
  • Status changed from Open to Closed
Actions

Also available in: PDF Atom