Misc #17200



Added by mame (Yusuke Endoh) about 2 years ago. Updated about 2 years ago.



The next dev meeting

Date: 2020/10/26 13:00-17:00

  • 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 log about the discussion to a 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 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.)


* [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.
  • Comment deadline: 2020/10/19 (one week before the 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.

Related issues 1 (1 open0 closed)

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

Updated by mame (Yusuke Endoh) about 2 years ago

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

Updated by parker (Parker Finch) about 2 years ago

  • [Feature #17016] Enumerable#scan_left (parker)
    • This is a proposal to add a method to enumerable that accumulates the results of injecting an operation over the enumerable. There is interest in adding this method, but concern about the name. I think that #accumulate is a good name.
    • Should we add this method?
    • Is the name #accumulate acceptable?

Updated by greggzst (Grzegorz Jakubiak) about 2 years ago

  • [Feature #16851] Ruby hashing algorithm could be improved using Tabulation Hashing
    • Improves hashing algorithm

Updated by jeremyevans0 (Jeremy Evans) about 2 years ago

  • [Bug #14012] NameError is raised when use class variables in Refinements (jeremyevans0)
    • Refinement methods cannot reference class variables of the classes/modules they refine.
    • Is this a bug or expected behavior?
    • If a bug, how should class variable lookup work in refinement methods?
  • [Bug #13768] SIGCHLD and Thread dead-lock problem (jeremyevans0)
    • You can end up with thread deadlock even when a signal handler could result in breaking the deadlock.
    • I don't think this is a bug, otherwise we would have to skip deadlock detection for all custom signal handlers.
    • Do we want add a feature such as Thread.ignore_deadlock = true so that we can support this approach?
  • [Bug #12485] Kernel.Rational raises TypeError though given denominator returns 1 by to_int (jeremyevans0)
    • Do we want Kernel#Rational to fallback to checking for to_int if to_r is not defined?
    • If so, is the patch acceptable?
  • [Bug #11808] Different behavior between Enumerable#grep and Array#grep (jeremyevans0)
    • Is the current behavior bug or expected?
    • @nobu (Nobuyoshi Nakada) has a patch allowing regexp global variables to be available in blocks passed to Enumerable#grep.
    • If current behavior is a bug, do we want to use @nobu's patch?
  • [Bug #11202] No warning when a link to an original method body was removed (jeremyevans0)
    • I don't think this is a bug. Do we want to add a warning in this case?

Updated by jeremyevans0 (Jeremy Evans) about 2 years ago

  • [Feature #17143] Improve support for warning categories (jeremyevans0)
    • Based on feedback at last month's developer meeting, I'm now proposing adding only two new categories: :uninitialized_ivar and :redefine.
    • I have a pull request that adds support for those two categories and adds the :deprecated category to additional warnings, it is OK?

Updated by Glass_saga (Masaki Matsushita) about 2 years ago

  • [Feature #17187] Add connect_timeout to TCPSocket (glass)
    • Could I merge it?

Updated by aycabta (aycabta .) about 2 years ago


  • matz: Let me have some time to consider this issue
    • def foo() = or def foo() :
    • def foo(n) = n => @x
    • def foo=bar may break compatibility (def foo= bar; bar; end); So, no-arugment mark () is mandatory. But I may reconsider


  • matz: The motivation is still valid even after pipeline operator is gave up. It is still useful for a long method chain.
  • matz: I think an experiment with commit is needed and works. I will explain.

Updated by ktsj (Kazuki Tsujimoto) about 2 years ago

  • [Feature #17260] Promote pattern matching to official feature
    • I'd like to remove single line pattern matching and experimental warnings.

Updated by Eregon (Benoit Daloze) about 2 years ago

  • [Feature #17259] Kernel#warn should ignore <internal: entries (eregon)
    • Currently, warn('message', uplevel: n) can show <internal:kernel>:90: warning: message instead of calling_file.rb:42: warning: message.
    • fixes it, OK to merge?
    • Also, RubyGems redefines Kernel#warn for skipping RubyGems' require. That redefinition caused various incompatibilities. If we ignore <internal:, no need to redefine Kernel#warn (I'll make a PR to RubyGems).

Updated by marcandre (Marc-Andre Lafortune) about 2 years ago

  • [Feature #17171] Have private affect constants and singleton methods definitions too (marcandre)
    • Privacy is important for gems in particular. private_constant is verbose to use.
    • The constants and methods affected would have special flag "legacy public"
    • Ruby 3.0: warn (verbose only) on first access to "legacy public"
    • Ruby 3.1: warn (always) on first access to "legacy public"
    • Ruby 3.2: "legacy public" becomes private

Updated by tenderlovemaking (Aaron Patterson) about 2 years ago

  • [Feature #17176] GC.auto_compact / GC.auto_compact=(flag) (tenderlove)

    • Currently compaction is a manual process, eventually I want to make it automatic
    • This feature lets users "opt in" to automatic compaction so we can test extensions
    • Reference updating logic remains the same so "heap integrity" should be the same

Updated by marcandre (Marc-Andre Lafortune) about 2 years ago

  • [Feature #17265] Have common ancestor Bool for TrueClass and FalseClass (marcandre)
    • Useful for RBS
    • Should have very limited incompatibility

Updated by hsbt (Hiroshi SHIBATA) about 2 years ago

  • [Feature #17267] Remove Win32API at Ruby 3.0
    • Does anyone oppose it?

Updated by greggzst (Grzegorz Jakubiak) about 2 years ago

  • [Feature #17277] Make Enumerator#with_index yield row and col indices for Matrix
    • Access Matrix indices in enumerable methods

Updated by ko1 (Koichi Sasada) about 2 years ago

  • [Bug #17146] Queue operations are allowed after it is frozen
    • It is interesting question what "freeze" mean.
  • [Feature #17256] Freeze all Regexp objects
    • I feel it is too heavy to freeze all regexp...
  • [Feature #17269] Frozen Process::Status
    • low priority
  • [Feature #17145] Ractor-aware Object#deep_freeze
    • Can we define the meaning of class/module?
  • [Feature #17270] ObjectSpace.each_object should be restricted on multi-Ractors
    • already introduced, but need confirmation
  • [Bug #17268] special global variables which can be accessed from ractors
    • already introduced, but need confirmation
  • [Feature #17261] Software transactional memory (STM) for Threads and Ractors
    • Can I merge it with current naming and semantics?
  • [Feature #17274] Ractor.make_shareable(obj)
    • already introduced for convenience, but we can change.
  • [Feature #17273] shareable_constant_value pragma
    • is it acceptable?

Updated by Eregon (Benoit Daloze) about 2 years ago

  • [Bug #17280] Dir.glob with FNM_DOTMATCH matches ".." and "." and results in duplicated entries (eregon)
    • What's the intended behavior?

Updated by nobu (Nobuyoshi Nakada) about 2 years ago

  • [Feature #17281] Remove support for mathn
    • mathn has been deprecated.

Updated by koic (Koichi ITO) about 2 years ago

  • [Ticket #17208]  Add Set#compact and Set#compact! methods (koic)
    • Is this proposal acceptable?
Actions #19

Updated by mame (Yusuke Endoh) about 2 years ago

  • Description updated (diff)
Actions #20

Updated by mame (Yusuke Endoh) about 2 years ago

  • Status changed from Open to Closed

Also available in: Atom PDF