https://bugs.ruby-lang.org/https://bugs.ruby-lang.org/favicon.ico?17113305112022-08-04T16:37:31ZRuby Issue Tracking SystemRuby master - Misc #18954: DevMeeting-2022-08-18https://bugs.ruby-lang.org/issues/18954?journal_id=985772022-08-04T16:37:31Zmame (Yusuke Endoh)mame@ruby-lang.org
<ul><li><strong>Related to</strong> <i><a class="issue tracker-5 status-1 priority-4 priority-default" href="/issues/14770">Misc #14770</a>: [META] DevelopersMeeting</i> added</li></ul> Ruby master - Misc #18954: DevMeeting-2022-08-18https://bugs.ruby-lang.org/issues/18954?journal_id=985892022-08-06T13:37:06Zzverok (Victor Shepelev)zverok.offline@gmail.com
<ul></ul><ul>
<li>[Feature <a class="issue tracker-2 status-1 priority-4 priority-default" title="Feature: Range#step semantics for non-Numeric ranges (Open)" href="https://bugs.ruby-lang.org/issues/18368">#18368</a>] <code>Range#step</code> semantics for non-<code>Numeric</code> ranges (zverok)
<ul>
<li>Proposal to reimplement <code>(a..b).step(c)</code> via <code>+</code>, or provide another method with this behavior</li>
<li>More clarifications provided & answers to the questions after last dev.meeting</li>
</ul>
</li>
<li>[Bug <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: Range#include? inconsistency for beginless String ranges (Closed)" href="https://bugs.ruby-lang.org/issues/18580">#18580</a>] <code>Range#include?</code> inconsistency for beginless String ranges
<ul>
<li>"This was discussed during the February 2022 developer meeting, and <a class="user active user-mention" href="https://bugs.ruby-lang.org/users/13">@matz (Yukihiro Matsumoto)</a> said he needs more time to consider it."</li>
</ul>
</li>
<li>[Feature <a class="issue tracker-2 status-1 priority-4 priority-default" title="Feature: Object#non (Open)" href="https://bugs.ruby-lang.org/issues/17330">#17330</a>] <code>Object#non</code> (zverok)
<ul>
<li>Proposal to introduce generic "nullify if unacceptable" API (zverok)</li>
<li>more explanations and examples provided</li>
</ul>
</li>
<li>[Feature <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Feature: Data: simple immutable value object (Closed)" href="https://bugs.ruby-lang.org/issues/16122">#16122</a>] <code>Struct::Value</code>: simple immutable value object (zverok)
<ul>
<li>
<strong>The ticket is in weird state. It has "Status: Feedback", but generic state "CLOSED", but I don't see any notice of HOW it was closed?..</strong> Is it RedMine glitch?.. I don't see an option to reopen it.</li>
<li>The <a href="https://bugs.ruby-lang.org/issues/16122#note-28" class="external">latest comment</a> from Matz seems to lean towards accepting proposal, the only culprit is a name: "Struct::Value seems acceptable to him, but he wanted to seek a better name. Devs suggested Tuple, NamedTuple, and Record, but none of them seemed to fit for him."</li>
<li>Can we somehow move forward with this?</li>
</ul>
</li>
<li>[Feature <a class="issue tracker-2 status-6 priority-4 priority-default closed" title="Feature: Proposal: Introduce method results memoization API in the core (Rejected)" href="https://bugs.ruby-lang.org/issues/18934">#18934</a>] Introduce method results memoization API in the core (zverok)
<ul>
<li>New ticket, proposing and justifying simple <code>memoized def method_without_args</code>
</li>
</ul>
</li>
</ul> Ruby master - Misc #18954: DevMeeting-2022-08-18https://bugs.ruby-lang.org/issues/18954?journal_id=985972022-08-08T07:20:27Zbyroot (Jean Boussier)byroot@ruby-lang.org
<ul></ul><ul>
<li>[Feature <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Feature: Add SizedQueue#push(timeout:) (Closed)" href="https://bugs.ruby-lang.org/issues/18944">#18944</a>] Add <code>SizedQueue#push(timeout:)</code> (byroot)
<ul>
<li>Matz said this should be required separately.</li>
<li>When implementing <code>Queue#pop(timeout:)</code> it was very evident this was needed.</li>
<li>Spec is return <code>self</code> on success, <code>nil</code> on timeout, like <code>pop</code>.</li>
<li>Useful to periodically do heartbeat, drop messages, etc when waiting to push on a queue.\</li>
</ul>
</li>
<li>[Feature <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Feature: End of boot advisory API for RubyVM (Closed)" href="https://bugs.ruby-lang.org/issues/18885">#18885</a>] End of boot advisory API (byroot)
<ul>
<li>e.g. something like <code>RubyVM.prepare</code>, or <code>RubyVM.ready</code>.</li>
<li>Would allow applications to notify the VM that they're done loading and about to process user input.</li>
<li>Could be used by the VM to enable some optimizations, such as precomputing constant caches, etc.</li>
<li>Particularly useful for forking server, but not only.</li>
</ul>
</li>
</ul> Ruby master - Misc #18954: DevMeeting-2022-08-18https://bugs.ruby-lang.org/issues/18954?journal_id=986192022-08-09T19:26:11Zjeremyevans0 (Jeremy Evans)merch-redmine@jeremyevans.net
<ul></ul><ul>
<li>[Bug <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: Kernel#sprintf - %c ignores a non-ASCII character's encoding (Closed)" href="https://bugs.ruby-lang.org/issues/18955">#18955</a>] Kernel#sprintf - %c ignores a non-ASCII character's encoding (jeremyevans0)
<ul>
<li>Do we want the %c format specifier to transcode a string argument to the format string's encoding before taking the first character?</li>
</ul>
</li>
<li>[Bug <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: Kernel#sprintf doesn't apply format sequence in some encodings (Closed)" href="https://bugs.ruby-lang.org/issues/18958">#18958</a>] Kernel#sprintf doesn't apply format sequence in some encodings (jeremyevans0)
<ul>
<li>Should we raise an ArgumentError when the format string is in an incompatible encoding?</li>
<li>The encodings listed in the issue are not the same as those that are not <code>ascii_compatible?</code>.</li>
<li>If we do want to raise an exception for this, do we want a new encoding flag for this, or a hardcoded list of incompatible encodings?</li>
</ul>
</li>
<li>[Bug <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: Third argument to Regexp.new is a bit broken (Closed)" href="https://bugs.ruby-lang.org/issues/18797">#18797</a>] Third argument to Regexp.new is a bit broken (jeremyevans0)
<ul>
<li>Do we want to deprecate passing a third argument to Regexp.new?</li>
</ul>
</li>
<li>[Bug <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: IO.foreach hangs up when passes limit=0 (Closed)" href="https://bugs.ruby-lang.org/issues/18767">#18767</a>] IO.foreach hangs up when passes limit=0 (jeremyevans0)
<ul>
<li>Is the current infinite loop in this case expected, or should it raise an ArgumentError as IO.readlines does?</li>
</ul>
</li>
</ul> Ruby master - Misc #18954: DevMeeting-2022-08-18https://bugs.ruby-lang.org/issues/18954?journal_id=986242022-08-10T10:30:56ZEregon (Benoit Daloze)
<ul></ul><ul>
<li>[Feature <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Feature: Deprecate and remove replicate and dummy encodings (Closed)" href="https://bugs.ruby-lang.org/issues/18949">#18949</a>] Deprecate and remove replicate and dummy encodings (eregon)
<ul>
<li>I will try to attend the dev meeting. Would it be possible to discuss this towards the end of the meeting, 16 JST (= 9am CEST) my preference, or if better 15 JST (= 8am CEST)?</li>
<li>There are multiple things to decide, see <a href="https://bugs.ruby-lang.org/issues/18949#To-Decide" class="external">https://bugs.ruby-lang.org/issues/18949#To-Decide</a>
</li>
<li>
<ol>
<li>(<code>Encoding#replicate</code> and <code>rb_define_dummy_encoding()</code>) is most important (for complexity & performance) and given the extremely low usage it seems safe to deprecate and then remove</li>
</ol>
</li>
<li>
<ol start="2">
<li>Handling the dummy UTF-16 and UTF-32 encodings, seems used very rarely but harder to assess. It causes significant performance overhead. Discussion e.g. in <a href="https://bugs.ruby-lang.org/issues/18949#note-23" class="external">https://bugs.ruby-lang.org/issues/18949#note-23</a>
</li>
</ol>
</li>
<li>
<ol start="3">
<li>Multiple devs want to keep (other) existing dummy encodings based on usages, so let's keep them for now. Maybe we could make them non-dummy or only available for transcoding in the future.</li>
</ol>
</li>
</ul>
</li>
</ul> Ruby master - Misc #18954: DevMeeting-2022-08-18https://bugs.ruby-lang.org/issues/18954?journal_id=986422022-08-12T17:24:12Zpalkan (Vladimir Dementyev)dementiev.vm@gmail.com
<ul></ul><ul>
<li>
<p>[Feature <a class="issue tracker-2 status-6 priority-4 priority-default closed" title="Feature: Allow pattern match to set instance variables (Rejected)" href="https://bugs.ruby-lang.org/issues/18408">#18408</a>] Allow pattern match to set non-local variables</p>
<ul>
<li>That would make, in particular, <code>42 => @a</code> possible
<ul>
<li>This addition seems natural after we added non-local vars support for pinning</li>
<li>It also "restores" the original rightward assignment functionality</li>
</ul>
</li>
<li>Here is a PR attached: <a href="https://github.com/ruby/ruby/pull/5426" class="external">https://github.com/ruby/ruby/pull/5426</a>
</li>
</ul>
</li>
<li>
<p>[Feature <a class="issue tracker-2 status-1 priority-4 priority-default" title="Feature: Expose Pattern Matching interfaces in core classes (Open)" href="https://bugs.ruby-lang.org/issues/18821">#18821</a>] Expose Pattern Matching interfaces in core classes</p>
<ul>
<li>Here is a PR adding <code>MatchData#{deconstruct,deconstruct_keys}</code> waiting for feedback: <a href="https://github.com/ruby/ruby/pull/6216" class="external">https://github.com/ruby/ruby/pull/6216</a>
</li>
</ul>
</li>
</ul> Ruby master - Misc #18954: DevMeeting-2022-08-18https://bugs.ruby-lang.org/issues/18954?journal_id=986502022-08-15T11:08:59ZEregon (Benoit Daloze)
<ul></ul><ul>
<li>[Bug <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: Method#owner and UnboundMethod#owner are incorrect after using Module#public/protected/private (Closed)" href="https://bugs.ruby-lang.org/issues/18729">#18729</a>] Method#owner and UnboundMethod#owner are incorrect after using Module#public/protected/private (eregon)
<ul>
<li>Also [Bug <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: Calling `protected` on ancestor method changes result of `instance_methods(false)` (Closed)" href="https://bugs.ruby-lang.org/issues/18435">#18435</a>] and [Bug <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: Regression on master for Method#== when comparing public with private method (Closed)" href="https://bugs.ruby-lang.org/issues/18751">#18751</a>], they are all the same issue basically.</li>
<li>Let's attempt to stop hiding ZSUPER methods, this was never tried and I think would cause little incompatibilities. OK to try this?</li>
<li>The semantic model after that change will finally make sense for users and Ruby implementers, instance_methods reflects the method table, owner means in which module's method table the method is.</li>
<li>Also this will mean ZSUPER methods are just an internal implementation detail on CRuby, other Ruby impls are free to use something else like shallow-copy (like alias_method does) but instance_methods/owner/etc will be the same for the user.</li>
<li>The hiding is actually "exposing" ZSUPER methods to Ruby users because other Ruby implementations don't use ZSUPER methods and don't hide the visibility-created methods.</li>
</ul>
</li>
</ul> Ruby master - Misc #18954: DevMeeting-2022-08-18https://bugs.ruby-lang.org/issues/18954?journal_id=987022022-08-18T07:14:48Zhsbt (Hiroshi SHIBATA)hsbt@ruby-lang.org
<ul></ul><ul>
<li>[Feature <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Feature: Integrate functionality of syntax_suggest gem into Ruby (Closed)" href="https://bugs.ruby-lang.org/issues/18159">#18159</a>] Integrate functionality of syntax_suggest gem into Ruby
<ul>
<li>Is it ok for <code>syntax_suggest</code>?</li>
</ul>
</li>
</ul> Ruby master - Misc #18954: DevMeeting-2022-08-18https://bugs.ruby-lang.org/issues/18954?journal_id=987132022-08-18T09:37:45Zmame (Yusuke Endoh)mame@ruby-lang.org
<ul></ul><p>We could not finish all the agenda in time. We will continue on 25th.</p> Ruby master - Misc #18954: DevMeeting-2022-08-18https://bugs.ruby-lang.org/issues/18954?journal_id=987862022-08-20T19:51:12ZEregon (Benoit Daloze)
<ul></ul><ul>
<li>[Feature <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Feature: `UnboundMethod#==` with inherited classes (Closed)" href="https://bugs.ruby-lang.org/issues/18798">#18798</a>] <code>UnboundMethod#==</code> with inherited classes (eregon)
<ul>
<li>OK to change UnboundMethod#== to check if same method definition (and ignore from which class instance_method was used on)?</li>
<li>If not, OK to add <code>{Method,UnboundMethod}#same_definition?(other)</code>?</li>
</ul>
</li>
</ul> Ruby master - Misc #18954: DevMeeting-2022-08-18https://bugs.ruby-lang.org/issues/18954?journal_id=989132022-08-25T12:38:56Zmame (Yusuke Endoh)mame@ruby-lang.org
<ul><li><strong>Status</strong> changed from <i>Open</i> to <i>Closed</i></li></ul> Ruby master - Misc #18954: DevMeeting-2022-08-18https://bugs.ruby-lang.org/issues/18954?journal_id=989142022-08-25T12:39:22Zmame (Yusuke Endoh)mame@ruby-lang.org
<ul><li><strong>Description</strong> updated (<a title="View differences" href="/journals/98914/diff?detail_id=63046">diff</a>)</li></ul>