Project

General

Profile

Actions

Misc #19525

closed

DevMeeting-2023-04-13

Added by mame (Yusuke Endoh) about 1 year ago. Updated about 1 year ago.

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

Description

The next dev meeting

Date: 2023/04/13 13:00-17:00 (JST)
Log: https://github.com/ruby/dev-meeting-log/blob/master/2023/DevMeeting-2023-04-11.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 2023/04/10. 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 master - Misc #14770: [META] DevelopersMeetingOpenActions
Actions #1

Updated by mame (Yusuke Endoh) about 1 year ago

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

Updated by hsbt (Hiroshi SHIBATA) about 1 year ago

  • [Bug #19551] Backport commits for CI failures
    • Can I merge PR like "Fix CI failure" for stable branches myself from April 2023?

Updated by byroot (Jean Boussier) about 1 year ago

  • [Feature #18885] End of boot advisory API (byroot)
    • I'm about to merge the first optimizations, are we still ok with Process.warmup as a name?
  • [Feature #19561] ObjectSpace::WeakMap#delete and ObjectSpace::WeakKeyMap#delete (byroot)
    • When used as a weak set, it can be convenient to eagerly delete some keys.
  • [Feature #19538] Performance warnings (byroot and eregon)
    • Disabled by default, enabled with -W:performance.
    • Would allow the VM or YJIT to indicate when it has to deoptimize because of some construct.
    • For example: transitioning to SHAPE_TOO_COMPLEX, mega-morphic call sites, etc.
  • [Feature #19528] JSON.load enabling create_additions: true by default is surprising and lead to security vulnerabilities (byroot)
    • JSON.load is the natural method to reach to as "load/dump" is the standard Ruby interface (Marshal.load, YAML.load, etc).
    • Various linters have to ben load and recommend to use parse instead.
    • I think json 2.x should warn when this feature is implicitly enabled, and json 3.x should disable it by default.
    • This has led to multiple CVE in the past.
  • [Feature #19560] IO#close_on_fork= and IO#close_on_fork? (byroot)
    • O_CLOFORK was added to the POSIX spec in 2020, and some system (not Linux) supports it.
    • Ruby could emulate it.
    • Such feature would make it much easier to write fork-safe network clients.

Updated by peterzhu2118 (Peter Zhu) about 1 year ago

  • [Feature #19571] Add REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO to the GC (peterzhu2118)
    • We tested on production traffic on Shopify's Storefront Renderer.
    • We saw a significant improvement in GC time (0.67x on average and 0.49x for p99) and response time (0.96x on average and 0.86x for p99).

Updated by jeremyevans0 (Jeremy Evans) about 1 year ago

  • [Bug #4040] SystemStackError with Hash[*a] for Large a (jeremyevans0)
    • @ko1 (Koichi Sasada) fixed this issue for iseq methods accepting splats in Ruby 2.2.
    • We fixed this issue for cfunc methods in January.
    • I found this issue applies to all other method calls.
    • I developed a fix for all cases I could identity (yjit will need updates for it).
    • The fix results in a minor performance decrease in microbenchmarks.
    • I have attempted to offset this performance decrease with major optimizations to bmethod, send, symproc, and method_missing calls, using knowledge gained from fixing this bug.
    • Do we want to fix this issue, and if so, how much of a performance loss are we willing to accept?
    • I propose we should accept this fix if it doesn't result in more than 0.2% performance decrease in production benchmarks such as railsbench.
  • [Bug #19533] Behavior of ===/include? on a beginless/endless range (nil..nil) changed in ruby 3.2 (jeremyevans0)
    • Do we want to make beginless+endless Range#include? return true for all objects?
    • A decision was made in August 2022 to have include? raise exception for beginless/endless ranges.
    • Looking back, it's possible that it was desired for the beginless^endless case and not the beginless+endless case.
  • [Bug #19564] Range.cover? fails for Range wrapped in SimpleDelegator (jeremyevans0)
    • Do we want to handle delegate objects in Range#cover??
    • If so, do we want to add Range#to_range and have Range#cover? check for that method and call it if it exists?
  • [Feature #19573] Add Class#singleton_inherited (jeremyevans0)
    • This would be similar to Class#inherited, but called for singleton class creation instead of normal subclass creation.
    • This could be used to warn or raise on singleton class creation, or modify the object to change behavior.

Updated by matz (Yukihiro Matsumoto) about 1 year ago

  • [Bug #19246] Rebuilding the loaded feature index much slower in Ruby 3.1
    • Personally asked for the situation.

Updated by palkan (Vladimir Dementyev) about 1 year ago

  • [Fearure #19591] Add symbolize_keys to MatchData#named_captures
    • Looking for Matz's feedback
Actions #8

Updated by mame (Yusuke Endoh) about 1 year ago

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

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0Like0