Project

General

Profile

Activity

From 10/16/2019 to 10/22/2019

10/22/2019

10:58 PM Misc #16262: DevelopersMeeting20191128Japan
* [Feature #16262] Enumerable#each_tuple, and [Feature #4539] Array#zip_with
* `zip_with` really comes in handy on occasion, and is available in many programming languages, in particular functional programming languages.
duerst (Martin Dürst)
10:52 PM Feature #16261: Enumerable#each_splat and Enumerator#splat
Dan0042 (Daniel DeLorme) wrote:
> It's worth pointing out the desired difference with regards to lambdas a bit more explicitly:
> ...
What you want to do here is in many other languages done with `zip_with`:
```ruby
[1, 2, 3].zip_w...
duerst (Martin Dürst)
08:52 PM Feature #16261: Enumerable#each_splat and Enumerator#splat
@eregon Thank you very much for the enlightenment!
That means the code above could be rewritten like this. And at that point it's doubtful if `tuple` is even needed.
```ruby
class Enumerator
def splat
return to_enum(:splat...
Dan0042 (Daniel DeLorme)
07:33 PM Feature #16261: Enumerable#each_splat and Enumerator#splat
FYI there is Enumerable#each_entry:
> Calls block once for each element in self, passing that
> ...
I think many methods already yield multiple arguments rather than an Array of arguments, `zip` being one of the exception.
So I'm no...
Eregon (Benoit Daloze)
06:01 PM Feature #16261: Enumerable#each_splat and Enumerator#splat
Note that `each{ |*item| yield(item) }` doesn't work because of #16166. Dan0042 (Daniel DeLorme)
02:10 PM Feature #16261: Enumerable#each_splat and Enumerator#splat
@Dan0042 super-good points, thanks!
I'd say that `Enumerable#each_tuple`/`Enumerable#each_splat` + `Enumerator#tuple`/`Enumerator#splat` is a most powerful and straightforward combination.
zverok (Victor Shepelev)
01:44 PM Feature #16261: Enumerable#each_splat and Enumerator#splat
It's worth pointing out the desired difference with regards to lambdas a bit more explicitly:
```ruby
[1, 2, 3].zip([4, 5, 6]).map(&:+) # ArgumentError (wrong number of arguments (given 0, expected 1))
[1, 2, 3].zip([4, 5...
Dan0042 (Daniel DeLorme)
10:31 PM Feature #16272 (Closed): Update Unicode Emoji version to 12.1
The Unicode Consortium just released version 12.1 of emoji, see http://blog.unicode.org/2019/10/emoji-121-release-168-emoji-added.html.
This is unrelated to Version 12.1.0 of Unicode itself (which introduced a single new character, fo...
duerst (Martin Dürst)
09:42 PM Misc #16188: What are the performance implications of the new keyword arguments in 2.7 and 3.0?
jeremyevans0 (Jeremy Evans) wrote:
> In CRuby, it's not significantly more complicated. The callee may need to add the literal keywords to a hash anyway (if callee uses a keyword splat). Moving that hash to the last positional argume...
Eregon (Benoit Daloze)
09:41 PM Bug #16271 (Closed): Cannot build taglib-ruby gem on ruby-2.7.0-preview2
Attempting to build the taglib-ruby gem on ruby-2.7.0-preview2 fails with error messages such as:
```
taglib_base_wrap.cxx:2101:9: error: no matching function for call to 'rb_rescue'
if (rb_rescue(RUBY_METHOD_FUNC(SWIG_AUX_NUM2U...
jeremyevans0 (Jeremy Evans)
07:37 PM Feature #16253: Shorthand "forward everything" syntax
Going to do a writeup on this later tonight if anyone wants to proof-read it, it'll be interesting to see what the wider community thinks but I really like it.
Also really loving the attention to detail Jeremy's been giving lately, re...
baweaver (Brandon Weaver)
06:36 PM Bug #16148: bugs.ruby-lang.org is not sending email notifications for watched issues
test Anonymous
06:23 PM Bug #16148: bugs.ruby-lang.org is not sending email notifications for watched issues
test bughit (bug hit)
06:02 PM Bug #16148: bugs.ruby-lang.org is not sending email notifications for watched issues
test bughit (bug hit)
06:00 PM Feature #16166: Remove exceptional treatment of *foo when it is the sole block parameter
I think this is related:
```ruby
proc{ |a,b| [a,b] }.call(1,2) #=> [1, 2]
proc{ |*ab| ab }.call(1,2) #=> [1, 2]
proc{ |a,b| [a,b] }.call([1,2]) #=> [1, 2]
proc{ |*ab| ab }.call([1,2]) #=> [[1, 2]]
```
I *really* thin...
Dan0042 (Daniel DeLorme)
05:55 PM Bug #6117: Transfers allowed into Fibers that have resumed into other fibers
I do not think this code is actually a problem. The restriction on transferred fibers is:
```
You cannot resume a fiber that transferred control to another one.
This will cause a double resume error. You need to transfer control
b...
jeremyevans0 (Jeremy Evans)
05:53 PM Revision 46f175ed (git): Use cppflags to pass preprocessor options
nobu (Nobuyoshi Nakada)
05:41 PM Bug #16270: Strange behavior on Hash's #each and #select method.
Of all Hash methods, only select/reject/select!/reject!/keep_if/delete_if have that behavior. That's fairly inconsistent, but more importantly it doesn't seem like this inconsistency is on purpose. There is no test for this case in test/... Dan0042 (Daniel DeLorme)
04:31 PM Bug #16270 (Closed): Strange behavior on Hash's #each and #select method.
You need to look at the functions passed to `rb_hash_foreach`:
```c
static int
each_pair_i(VALUE key, VALUE value, VALUE _)
{
rb_yield(rb_assoc_new(key, value));
return ST_CONTINUE;
}
static int
select_i(VALUE key, V...
jeremyevans0 (Jeremy Evans)
04:29 PM Bug #16270: Strange behavior on Hash's #each and #select method.
I am not entirely sure where there is a lack of consistency or why the
C code is necessary. I assume that you may have been confused about
Kernel#p perhaps? It is rare that people combine .select with p,
whereas this behaviour is more...
shevegen (Robert A. Heiler)
04:13 PM Bug #16270 (Closed): Strange behavior on Hash's #each and #select method.
The following is some example code:
``` ruby
sample_hash = {
"246" => {
"price" => "8000",
"note" => ""
},
"247" => {
"price" => "8000",
"note" => ""
},
"248" => {
...
zw963 (Wei Zheng)
05:30 PM Revision d5d58447 (git): Use dedicated assertion methods for warning and syntax error
nobu (Nobuyoshi Nakada)
05:07 PM Bug #6400 (Closed): dl/callback with fiddle occurs SEGV on NetBSD amd64
DL was removed in commit:07308c4d30b8c5260e5366c8eed2abf054d86fe7.
If this still occurs when using Fiddle directly, please submit a new bug report for that.
jeremyevans0 (Jeremy Evans)
05:05 PM Revision 601f1fb4 (git): Catch syntax error even if fatal
nobu (Nobuyoshi Nakada)
05:04 PM Revision afab8122 (git): Fix the exception when CPDEBUG
nobu (Nobuyoshi Nakada)
04:05 PM Revision 801a11d0 (git): Relaxed tests for CPDEBUG mode
nobu (Nobuyoshi Nakada)
03:42 PM Revision 1a80ee45 (git): * 2019-10-23 [ci skip]
git[bot]
03:19 PM Revision 51bab75f (git): Provides ruby2_keywords
So that requiring it succeeds even if that forward compatibility
gem is not installed.
nobu (Nobuyoshi Nakada)
01:49 PM Revision 8390057d (git): Benchmark for [Feature #16155]
nobu (Nobuyoshi Nakada)
01:15 PM Revision 99ca5705 (git): tool/release.sh uses ruby-actions' result
https://github.com/ruby/actions naruse (Yui NARUSE)
12:44 PM Revision d736511e (git): Move format-release to tool and fix bugs
naruse (Yui NARUSE)
12:33 PM Revision 04075305 (git): Ignore timestamp file for the expected failure [ci skip]
nobu (Nobuyoshi Nakada)
12:17 PM Revision aec0a293 (git): Add a tool to generate a patch for www from log
Receives an output of `tool/make-snapshot` and genarete
* Markdown format for release note
* a patch for branches.yml, downloads.yml, and releases.yml of w.r-l.o
naruse (Yui NARUSE)
12:05 PM Revision ed3333f8 (git): make-snapshot: Regexp#match raises on nil now
nobu (Nobuyoshi Nakada)
11:06 AM Revision 501b517d (git): NEWS: add a URL about the performance improvement of CGI.escapeHTML
mame (Yusuke Endoh)
10:46 AM Revision 02aadf10 (git): NEWS: Fix the example of Lazy#eager
mame (Yusuke Endoh)
10:39 AM Revision fac4339a (git): NEWS: add an example for Lazy#eager
mame (Yusuke Endoh)
10:32 AM Revision 0e735b21 (git): NEWS: Make Net::FTP#features and #option more informative
mame (Yusuke Endoh)
05:06 AM Revision 22845176 (git): test/ruby/test_exception typo fix
MSP-Greg (Greg L)
05:06 AM Revision 5e0d33a8 (git): appveyor.yml - remove timezone & tzinfo gems from MSVC builds
Not compatible with concurrent-ruby dependency MSP-Greg (Greg L)
03:21 AM Revision 97a03a03 (git): Add a cron job to keep CPDEBUG working
alanwu (Alan Wu)
03:21 AM Revision 9c553139 (git): Fix build for CPDEBUG=1
The declarations went out-of-sync in dcfb7f6. alanwu (Alan Wu)
02:24 AM Feature #16264: Real "callable instance method" object.
It sounds like an interesting way to improve functional programming in ruby. I can definitely see the point of having a proper functional syntax instead of trying to hack everything via symbols. But I'm not sure it's the best way. At th... Dan0042 (Daniel DeLorme)

10/21/2019

11:55 PM Bug #9664 (Closed): cannot resume transferred Fiber even if it should resume
Applied in changeset commit:git|fa8ac91e957a076f6df1adaecad7896817138009.
----------
Fix Fiber#transfer
Fiber#transfer previously made it impossible to resume the fiber
if it was transferred to (no resuming the target of Fiber#transfer...
jeremyevans (Jeremy Evans)
09:34 PM Bug #9664 (Assigned): cannot resume transferred Fiber even if it should resume
This bug still exists in the master branch, and I agree with @cremes as to the cause. When calling Fiber#transfer, the transferred flag needs to be set on the source fiber, not the target fiber, and it should be unset on the target fibe... jeremyevans0 (Jeremy Evans)
11:55 PM Bug #12555 (Closed): Cannot resume a fiber that was earlier transferred from, then transferred back to, and then yielded
Applied in changeset commit:git|fa8ac91e957a076f6df1adaecad7896817138009.
----------
Fix Fiber#transfer
Fiber#transfer previously made it impossible to resume the fiber
if it was transferred to (no resuming the target of Fiber#transfer...
jeremyevans (Jeremy Evans)
11:54 PM Revision fa8ac91e (git): Fix Fiber#transfer
Fiber#transfer previously made it impossible to resume the fiber
if it was transferred to (no resuming the target of Fiber#transfer).
However, the documentation specifies that you cannot resume a fiber
that has transferred to another fib...
jeremyevans (Jeremy Evans)
10:47 PM Bug #8790 (Closed): r41424 以降、Solaris と gdbm 1.1.10 にて TestGDBM#test_s_open_lock が終わらない
jeremyevans0 (Jeremy Evans)
10:40 PM Bug #8855 (Closed): {Single}Forwardable#def_delegators が、Stringでメソッド名を渡された時だけ __id__ と __send__ が取り除かれる
jeremyevans0 (Jeremy Evans)
10:39 PM Bug #8982 (Closed): NoMethodError#message produces surprising output when #inspect is defined on an anonymous class
jeremyevans0 (Jeremy Evans)
10:21 PM Bug #9213 (Closed): mkmf.rb emits invalid destination directory name for mswin32/64
jeremyevans0 (Jeremy Evans)
09:53 PM Bug #9572 (Closed): Restarting Coverage does not produce correct coverage result
jeremyevans0 (Jeremy Evans)
09:38 PM Bug #9629 (Closed): GC::Profiler.total_time under-reports GC time compared to dtrace GC probe measurement
jeremyevans0 (Jeremy Evans)
08:45 PM Bug #9876: IRB::Context output_method is not used
I've added a pull request to remove the unused `output_method` variable: https://github.com/ruby/irb/pull/31 jeremyevans0 (Jeremy Evans)
07:57 PM Bug #9959 (Closed): TracePoint can invoke inconsistent call event with bmethod
jeremyevans0 (Jeremy Evans)
07:49 PM Bug #10747 (Closed): DNS resolution should fall back to TCP on Errno::EACCES
Applied in changeset commit:git|f37cc1c719f12d2cad6032aa4e6f4236f0604992.
----------
Fallback to TCP in resolv if UDP bind raises EACCES
Original patch from Andy Grimm.
Fixes [Bug #10747]
jeremyevans (Jeremy Evans)
07:48 PM Revision f37cc1c7 (git): Fallback to TCP in resolv if UDP bind raises EACCES
Original patch from Andy Grimm.
Fixes [Bug #10747]
jeremyevans (Jeremy Evans)
07:03 PM Bug #9986 (Closed): WEBrick content-length being set when transfer-encoding is chunked
jeremyevans0 (Jeremy Evans)
06:49 PM Bug #10433 (Closed): make test-all stops at [ 401/16011] FTPTest#test_list_read_timeout-exceeded
jeremyevans0 (Jeremy Evans)
05:56 PM Bug #10965 (Closed): logger.rb may not daily rotate
jeremyevans0 (Jeremy Evans)
05:42 PM Bug #11274 (Closed): Equality inconsistency between Method and UnboundMethod
This appears to be fixed starting in Ruby 2.3 (the first example returns `false` instead of `true` for equality as the owners of the methods are different), probably by commit:5e8a147480f87f19a8b96ad3fb33a25fb4bb19b9. jeremyevans0 (Jeremy Evans)
05:36 PM Feature #16253 (Closed): Shorthand "forward everything" syntax
Applied in changeset commit:git|62d43828770211470bcacb9e943876f981b5a1b4.
----------
Arguments forwarding [Feature #16253]
nobu (Nobuyoshi Nakada)
05:35 PM Revision 62d43828 (git): Arguments forwarding [Feature #16253]
nobu (Nobuyoshi Nakada)
05:17 PM Bug #11668 (Closed): SEGV instead of SystemStackError when using the TracePoint API
It looks like this problem was fixed. While I can get this code to segfault on Ruby <2.5, I can no longer get a segfault for this code starting with Ruby 2.5:
```ruby
class Fixnum
define_method(:to_s) do |*args|
to_default_s...
jeremyevans0 (Jeremy Evans)
04:56 PM Bug #12106 (Closed): Behavior of double splatting of hashes with non symbol key is different according to splatted hash position
With the changes in #14183, TypeError is no longer raised in any of the examples, as non-Symbol keys can be used inside a hash that is double splatted. jeremyevans0 (Jeremy Evans)
04:36 PM Bug #12371 (Closed): Windows Nano Server WIN32OLE compatibility
This appears to be fixed by commit:8feb9779182bd4285f3881029fe850dac188c1ac. jeremyevans0 (Jeremy Evans)
04:27 PM Revision 35f90bf1 (git): NEWS: fixed method names [ci skip]
nobu (Nobuyoshi Nakada)
04:27 PM Revision 6067c0a2 (git): NEWS: fixed mark-up [ci skip]
nobu (Nobuyoshi Nakada)
04:20 PM Bug #16266 (Assigned): Additional empty folders created in lib/ruby/gems/2.7.0/gems by make install
MSP-Greg (Greg L) wrote:
> Sorry, but code that creates thirty empty folders is just wrong, regardless of whether it creates 'problems'...
I disagree that a change that creates thirty empty folders is wrong a priori. This change app...
jeremyevans0 (Jeremy Evans)
12:50 AM Bug #16266: Additional empty folders created in lib/ruby/gems/2.7.0/gems by make install
Sorry, but code that creates thirty empty folders is just wrong, regardless of whether it creates 'problems'... MSP-Greg (Greg L)
04:07 PM Revision 349ad617 (git): * 2019-10-22 [ci skip]
git[bot]
04:06 PM Revision ee302f54 (git): add an NEWS entry about [Feature #15575]
ko1 (Koichi Sasada)
04:04 PM Revision 9bbc2834 (git): add a NEWS entry about Proc#to_s change
ko1 (Koichi Sasada)
04:04 PM Revision 0f0d05a3 (git): fix NEWS entry about unbundled gems
ko1 (Koichi Sasada)
01:22 PM Bug #16187: Hash#replace no longer rehashes keys for small (array table) hashes
This can be closed now. It was fixed by commit b9702590445dfea62d271d0a5c942b7adfaaacdd.
Sorry, I should have linked to this bug in the relevant commit in that changeset.
dylants (Dylan Thacker-Smith)
01:09 PM Feature #16150: Add a way to request a frozen string from to_s
Quick update on compatibility with this change.
I opened PRs on the 5 affected gems I found:
- https://github.com/googleapis/google-cloud-ruby/pull/4109
- https://github.com/matthewrudy/memoist/pull/82
- https://github.com/...
byroot (Jean Boussier)
12:32 PM Revision ec2da08e (git): NEWS: fixed indents [ci skip]
nobu (Nobuyoshi Nakada)
12:26 PM Revision 228ebdbf (git): NEWS: fix a typo
mame (Yusuke Endoh)
12:26 PM Bug #16269: Every 4 bytes the Integer.sqrt(n) method closes abruptly
A great report. I've fixed the issue. Thank you! mame (Yusuke Endoh)
12:24 PM Bug #16269 (Closed): Every 4 bytes the Integer.sqrt(n) method closes abruptly
Applied in changeset commit:git|f364564e66d1db1de8e80d669287386595c8bc46.
----------
bignum.c (estimate_initial_sqrt): prevent integer overflow
`Integer.sqrt(0xffff_ffff_ffff_ffff ** 2)` caused assertion failure
because of integer over...
mame (Yusuke Endoh)
09:23 AM Bug #16269 (Closed): Every 4 bytes the Integer.sqrt(n) method closes abruptly
If the variable `size_byte` (starting from 8) is a multiple of 4 the program fails.
But as an example let's start with 9 (which works well).
``` ruby
size_byte = 9
a = (('F' * (size_byte * 2))).to_i(16)
c = a
a *= a
b = Inte...
stiuna (Juan Gregorio)
12:24 PM Revision f364564e (git): bignum.c (estimate_initial_sqrt): prevent integer overflow
`Integer.sqrt(0xffff_ffff_ffff_ffff ** 2)` caused assertion failure
because of integer overflow. [ruby-core:95453] [Bug #16269]
mame (Yusuke Endoh)
09:46 AM Revision c8f97d16 (git): NEWS: structured the "Language changes" section
There were too many items in the section in somewhat random order.
This change creates the following five subsections:
* Pattern matching
* The spec of keyword arguments is changed towards 3.0
* Numbered parameter
* proc/lambda without ...
mame (Yusuke Endoh)
08:45 AM Revision 5d63a9da (git): [Bug #16121] adjusted indent [ci skip]
nobu (Nobuyoshi Nakada)
08:29 AM Bug #16121 (Closed): Stop making a redundant hash copy in Hash#dup
Applied in changeset commit:git|b9702590445dfea62d271d0a5c942b7adfaaacdd.
----------
Stop making a redundant hash copy in Hash#dup (#2489)
* Stop making a redundant hash copy in Hash#dup
It was making a copy of the hash without rehash...
dylants (Dylan Thacker-Smith)
08:29 AM Bug #16121: Stop making a redundant hash copy in Hash#dup
Thank you, I merged it! ko1 (Koichi Sasada)
08:29 AM Revision b9702590 (git): Stop making a redundant hash copy in Hash#dup (#2489)
* Stop making a redundant hash copy in Hash#dup
It was making a copy of the hash without rehashing, then created an
extra copy of the hash to do the rehashing. Since rehashing creates
a new copy already, this change just uses that reha...
Dylan Thacker-Smith
08:14 AM Feature #15574 (Rejected): Prohibit to pass a block on super() implicitly
it seems difficult to apply this proposal because of compatibility (and productivity). rejected. ko1 (Koichi Sasada)
07:48 AM Revision 8b8b9c1a (git): add a NEWS entry about [Feature #15602]
ko1 (Koichi Sasada)
07:05 AM Bug #16268: Consistent segfault with ObjectSpace.count_imemo_objects
74b19e330adbdae2d8e53b58f1a2a7b725e69c8d is needed for 2.6.
ko1 (Koichi Sasada)
05:14 AM Bug #16268 (Closed): Consistent segfault with ObjectSpace.count_imemo_objects
On 2.6.5:
> irb
> ...
Segfaults with:
```
/usr/local/lib/ruby/2.6.0/irb/inspector.rb:109: [BUG] Segmentation fault at 0x0000000000000000
ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-linux]
-- Control frame information ...
sam.saffron (Sam Saffron)
06:30 AM Revision 431132f0 (git): Pass the called keyword arguments if `keyword_init`
nobu (Nobuyoshi Nakada)
03:41 AM Feature #13083: Regexp#{match,match?} with a nil argument are deprecated and will raise a TypeError in Ruby 3.0
I heard this change breaks activerecord.
https://twitter.com/shyouhei/status/1186122901667209216
https://twitter.com/shyouhei/status/1186123025604734976
https://github.com/rails/rails/blob/01336b71af6ac798e48101b4ceb2de00397243aa/ac...
znz (Kazuhiro NISHIYAMA)
02:50 AM Revision 215e4b87 (git): * expand tabs. [ci skip]
Tabs were expanded because previously the file did not have any tab indentation.
Please update your editor config, and use misc/expand_tabs.rb in the pre-commit hook.
git[bot]
02:45 AM Revision 44da5a1c (git): Look up event ID offsets by token as index
nobu (Nobuyoshi Nakada)
02:14 AM Revision 375124be (git): st: Do error check only on non-Ruby
k_takata (Ken Takata)
02:14 AM Revision e70e81b5 (git): st: Add NULL checking
These are found by Coverity. k_takata (Ken Takata)
02:09 AM Feature #10098 (Closed): [PATCH] Timing-safe string comparison for OpenSSL::HMAC
Implemented in upstream. Closing. shyouhei (Shyouhei Urabe)
01:10 AM Misc #16267 (Closed): MinGW CI - add to Actions ?
Actions has three embedded MSYS2 installs, as they currently install the three Windows Rubies with 'DevKits'. So, MinGW could be built/tested on Actions.
I have a GH action at https://github.com/MSP-Greg/msys2-action that's used in P...
MSP-Greg (Greg L)
12:54 AM Revision 263ee663 (git): Make suggestions order stable [Bug #16263]
As the result order of `DidYouMean::SpellChecker#correct` is
undefined, keep the order of the original candidates.
nobu (Nobuyoshi Nakada)
12:53 AM Revision 71ffe40a (git): test/optparse/test_did_you_mean.rb - fix suggestion order
MSP-Greg (Greg L)
12:36 AM Bug #16263 (Closed): test-all & did_you_mean - intermitent failures ?
Applied in changeset commit:git|27261007eb45adae4d5b30cbafa2ef27a2345b3f.
----------
DidYouMean can be an empty stub module [Bug #16263]
nobu (Nobuyoshi Nakada)
12:28 AM Revision 27261007 (git): DidYouMean can be an empty stub module [Bug #16263]
nobu (Nobuyoshi Nakada)
12:11 AM Revision 1d29c9bd (git): * 2019-10-21 [ci skip]
git[bot]
12:11 AM Revision 92234667 (git): test_exception - fix with & w/o did_you_mean
See Ruby issue 16263 MSP-Greg (Greg L)

10/20/2019

11:34 PM Bug #16263: test-all & did_you_mean - intermitent failures ?
Fix for the test/optparse/test_did_you_mean.rb issue:
https://github.com/ruby/ruby/pull/2581
MSP-Greg (Greg L)
10:51 PM Bug #16265: Test (spec) failure using current MSYS2 tools, related to -fstack-protector and possibly D_FORTIFY_SOURCE=2
I bypassed the spec mentioned above:
```
C-API Thread function rb_thread_call_without_gvl
- runs a C function with the global lock unlocked and unlocks IO with the generic RUBY_UBF_IO
```
and with it bypassed, all tests/specs reli...
MSP-Greg (Greg L)
10:50 PM Bug #16266 (Feedback): Additional empty folders created in lib/ruby/gems/2.7.0/gems by make install
Looking at the commit, the addition of the empty folders appears to be intentional, to result in the same behavior as `gem install --default`. Can you explain what problems this causes? jeremyevans0 (Jeremy Evans)
07:27 PM Bug #16266 (Rejected): Additional empty folders created in lib/ruby/gems/2.7.0/gems by make install
See https://github.com/ruby/ruby/pull/2580
Duplicating a comment there:
Somewhere between the following two commits, `make install` adds additional empty folders that are created in lib/ruby/gems/2.7.0/gems, most are default gems.
...
MSP-Greg (Greg L)
06:21 PM Feature #10098: [PATCH] Timing-safe string comparison for OpenSSL::HMAC
The above PR has been merged into the OpenSSL gem 🎉 bdewater (Bart de Water)
12:07 PM Feature #16253: Shorthand "forward everything" syntax
ioquatix (Samuel Williams) wrote:
> I think `...` should be remainder of arguments that aren't explicitly consumed.
If it is the remainder, then it should be placed after all explicit arguments?
```ruby
def foo(pre, opt = nil, *r...
nobu (Nobuyoshi Nakada)
11:56 AM Feature #16253: Shorthand "forward everything" syntax
The parser itself was easy, but I'm wondering how ripper should treat it.
nobu (Nobuyoshi Nakada)
12:00 PM Feature #16264: Real "callable instance method" object.
I hope it is ok to link to one of your blog entries (for those who may ask - I am not
affiliated with zverok nor did I ask him about it prior to that; it may just provide
some more context to the larger topic at hand):
https://zvero...
shevegen (Robert A. Heiler)
11:45 AM Revision ca7de033 (git): Also BDOT2 and BDOT3 are operators
nobu (Nobuyoshi Nakada)
07:16 AM Revision 9e07dfd2 (git): show BASERUBY version at configure.
ko1 (Koichi Sasada)
06:45 AM Revision a236eaa7 (git): Native MonitorMixin::ConditionVariable#wait
MonitorMixin::ConditionVariable#wait can be interrupted just after
Monitor#exit_for_cond. So implementation in C.
ko1 (Koichi Sasada)
05:21 AM Revision a0a3c701 (git): delegate synchronize method
Delegate MonitorMixin#synchronize body to Monitor#synchronize.
It makes guarantee interrupt safe (because Monitor#synchronize is
written in C). I thought Ruby implementation is also safe, but I
got stuck failure <http://ci.rvm.jp/results...
ko1 (Koichi Sasada)

10/19/2019

10:26 PM Bug #16263: test-all & did_you_mean - intermitent failures ?
Fix for the test_exception.rb issue is:
https://github.com/ruby/ruby/pull/2577
MSP-Greg (Greg L)
06:07 PM Bug #16263: test-all & did_you_mean - intermitent failures ?
I just noticed that the tests are not running in ruby'S CI, see:
https://github.com/ruby/ruby/runs/266527630#step:17:122
Because ruby-loco is running tests against install (with a few patches), they do run in its CI...
MSP-Greg (Greg L)
04:19 AM Bug #16263 (Closed): test-all & did_you_mean - intermitent failures ?
If did_you_mean is loaded, the following test failure may occur:
TestException#test_nomethod_error_new_receiver [/ruby/test/ruby/test_exception.rb:999]:
<["Message", :foo, #<Object:0x00000000070f5aa8>]> expected but was
<["Message\n...
MSP-Greg (Greg L)
07:52 PM Feature #16255 (Closed): Make `monitor.rb` built-in
Applied in changeset commit:git|caac5f777ae288b5982708b8690e712e1cae0cf6.
----------
make monitor.so for performance. (#2576)
Recent monitor.rb has performance problem because of interrupt
handlers. 'Monitor#synchronize' is frequently ...
ko1 (Koichi Sasada)
07:52 PM Revision caac5f77 (git): make monitor.so for performance. (#2576)
Recent monitor.rb has performance problem because of interrupt
handlers. 'Monitor#synchronize' is frequently used primitive
so the performance of this method is important.
This patch rewrite 'monitor.rb' with 'monitor.so' (C-extension)
...
ko1 (Koichi Sasada)
05:58 PM Revision 434966bf (git): * 2019-10-20 [ci skip]
git[bot]
05:58 PM Revision f2ed8466 (git): Fixed a typo [ci skip]
nobu (Nobuyoshi Nakada)
05:46 PM Bug #16265 (Closed): Test (spec) failure using current MSYS2 tools, related to -fstack-protector and possibly D_FORTIFY_SOURCE=2
GH PR https://github.com/ruby/ruby/pull/2573 was a work-around that forced using some non-current MSYS2 packages libraries for building. These libraries are only available on Appveyor because their images are out-of-date, a new MSYS2 in... MSP-Greg (Greg L)
02:09 PM Feature #16264: Real "callable instance method" object.
@nobu, sorry, I am not sure I get your question.
Are you asking about how `.:join.with(' ')` is supposed to work?
It is (theoretical and maybe not the best) example of how "partial application" could look in Ruby. It is not part of ...
zverok (Victor Shepelev)
01:54 PM Feature #16264 (Feedback): Real "callable instance method" object.
zverok (Victor Shepelev) wrote:
> **Transition:** `:foo` and `.:foo` could work similarly for some upcoming versions (or indefinitely), with `.:foo` being more powerful alternative, allowing features like `groups_of_lines.map(&.:join.wi...
nobu (Nobuyoshi Nakada)
09:06 AM Feature #16264 (Closed): Real "callable instance method" object.
It is a part of thinking about the "argument-less call style" I already made several proposals about.
### Preface
***Argument-less call style*** is what I now call things like `map(&:foo)` and `each(&Notifications.:send)` approache...
zverok (Victor Shepelev)
12:49 PM Feature #16249: Dir#empty? and File#empty?
@nobu
> This checks a directory named the current `Dir` object opened, instead of the opened directory itself.
I am not sure I understand (probably it is my lack of in-depth filesystem work understanding), for what I can tell, we ...
zverok (Victor Shepelev)
08:19 AM Revision 1d435bd5 (git): Extend Ripper DSL to set to pseudo variables other than `$$`
nobu (Nobuyoshi Nakada)
02:56 AM Feature #16253: Shorthand "forward everything" syntax
The reason to support `...` with other args is something like this:
```ruby
class Controller < Container::Controller
def initialize(command, *arguments, **options, &block)
@command = command

super(*arguments, **options, &...
ioquatix (Samuel Williams)

10/18/2019

11:33 PM Feature #16253: Shorthand "forward everything" syntax
ioquatix (Samuel Williams) wrote:
> Here are some real world examples from my code:
> ...
From reading the last dev meeting log (under `Future work: lead argument handling is postponed`), this will not be supported, at least initially....
jeremyevans0 (Jeremy Evans)
11:17 PM Feature #16253: Shorthand "forward everything" syntax
Here are some real world examples from my code:
```ruby
def self.for(*arguments, &block)
self.new(block, *arguments)
end
# Nicer?
def self.for(..., &block)
self.new(block, ...)
end
```
Module to be prepended:
```ru...
ioquatix (Samuel Williams)
10:26 PM Feature #16131: Remove $SAFE, taint and trust
I have added pull requests for all upstream projects. After some thought, I think many maintainers may consider dropping Ruby <2.7 support not acceptable. So the pull requests I submitted will continue to work on older Ruby versions. ... jeremyevans0 (Jeremy Evans)
05:44 AM Feature #16131: Remove $SAFE, taint and trust
mame (Yusuke Endoh) wrote:
> > Are we OK with just removing the calls to taint/untaint?
> ...
I agree with your points. Here is my implementation plan:
* I will submit pull requests upstream to all projects that remove the calls and...
jeremyevans0 (Jeremy Evans)
03:28 AM Feature #16131: Remove $SAFE, taint and trust
> Are we OK with just removing the calls to taint/untaint?
Each maintainer should determine that.
This is my personal opinion: In principle, we should be conservative against incompatibility. But in regard to `$SAFE`, we can be fl...
mame (Yusuke Endoh)
08:26 PM Feature #16261: Enumerable#each_splat and Enumerator#splat
This reminds me of a neat post showing applicatives in pictures: http://adit.io/posts/2013-04-17-functors,_applicatives,_and_monads_in_pictures.html#applicatives
In Haskell:
```
[(*2), (+3)] <*> [1, 2, 3]
#=> [2,4,6,4,5,6]
```
...
shan (Shannon Skipper)
01:58 PM Feature #16261: Enumerable#each_splat and Enumerator#splat
Hmmmm.
A slight issue I see with the name "tuple", and then the implicit name addition
".each_tuple", which would then (indirectly) elevate the term tuple.
I know the word tuple from e. g. using tuple in python, but I much prefer ...
shevegen (Robert A. Heiler)
10:11 AM Feature #16261 (Rejected): Enumerable#each_splat and Enumerator#splat
**UPD:** After discussion in comments, method names changed to "splat"-based.
New methods proposal.
Prototype code:
```ruby
module Enumerable
def each_splat
return to_enum(__method__) unless block_given?
each_entry {...
zverok (Victor Shepelev)
06:08 PM Feature #16142: Implement code_range in Proc and Method
Just a note: "code range" is an implementation-level concept for Strings. For instance there is CR_7BIT which means all characters are < 128.
So I would recommend another method name than `code_range`, as I think that will be confusing....
Eregon (Benoit Daloze)
06:03 PM Revision 5c81e19b (git): appveyor.yml - MinGW - update for MSYS2 / Mingw-w64 (#2573)
MSYS source code comes from both gcc.gnu.org & Mingw-w64. Updates to the Mingw-w64 source broke the MinGW build step.
Fixes the issue until Mingw-w64 updates their source, then it should be reverted, see comments in code.
MSP-Greg (Greg L)
04:12 PM Misc #16262: DevelopersMeeting20191128Japan
* [Feature #16129] Call initialize_clone with freeze: false if clone called with freeze: false (jeremyevans0)
* Without this, use of `clone(freeze: false)` on objects not expecting it leads to unexpected state.
* Allows fixing prob...
jeremyevans0 (Jeremy Evans)
12:08 PM Misc #16262: DevelopersMeeting20191128Japan
Carry over:
* [Bug #15912] Allow some reentrancy during TracePoint events (alanwu)
* I have seen quite a few people confused about Byebug's REPL not working as they would expect due to this issue. I think it's important to come up ...
mame (Yusuke Endoh)
12:03 PM Misc #16262 (Closed): DevelopersMeeting20191128Japan
Please comment on your favorite ticket numbers you want to ask to discuss with your *SHORT* comment or summary.
(your summary/comment will help us because we don't need to read all of the ticket comments)
*DO NOT* discuss then on thi...
mame (Yusuke Endoh)
03:51 PM Revision 7dcc24fd (git): * 2019-10-19 [ci skip]
git[bot]
03:50 PM Revision bf934e48 (git): Fixed passing idNil as a Symbol
nobu (Nobuyoshi Nakada)
01:18 PM Revision 9cb809cf (git): Verbatim texts need more indent [ci skip]
And separate ruby script and executed example. nobu (Nobuyoshi Nakada)
11:24 AM Revision 58e2ca31 (git): Use `_` instead of `_n_`
znz (Kazuhiro NISHIYAMA)
09:21 AM Feature #16260 (Closed): Symbol#to_proc behaves like lambda, but doesn't aknowledge it
Seems that `Symbol#to_proc` returns `Proc` that has lambda semantics:
```ruby
proc = :+.to_proc
proc.call(1, 2) # => 3
proc.call([1, 2]) # ArgumentError (wrong number of arguments (given 0, expected 1))
```
But if you ask...
```...
zverok (Victor Shepelev)
08:53 AM Revision ddad1fb2 (git): NEWS: Mention that optparse now supports did_you_mean for unknown option
mame (Yusuke Endoh)
08:46 AM Revision e2b719be (git): Support DidYouMean by AmbiguousOption too
nobu (Nobuyoshi Nakada)
08:39 AM Revision b4d308b4 (git): Defer adding additional info until getting the message of an error
nobu (Nobuyoshi Nakada)
08:30 AM Feature #16120: Omitted block argument if block starts with dot-method call
Dan0042 (Daniel DeLorme) wrote:
> ```ruby
> ...
my main problem with omitting parameters there is that it can't know which binding you want to use?
i am already have problems with that because i think it should have used the outer ...
Hanmac (Hans Mackowiak)
08:19 AM Feature #16120: Omitted block argument if block starts with dot-method call
Dan0042 (Daniel DeLorme) wrote:
> Am I the only one who thinks the omitted parameter is by far the most DRY and readable in these examples?
Even if you are not, what does it change? Personally, I find this proposal interesting as an ...
decuplet (Nikita Shilnikov)
07:01 AM Feature #16120: Omitted block argument if block starts with dot-method call
Dan0042 (Daniel DeLorme) wrote:
> ```ruby
> ...
Sorry, it doesn't feel beautiful to me.
> ```ruby
> ...
It looks confusing.
nobu (Nobuyoshi Nakada)
07:43 AM Revision e29e49ab (git): Default DidYouMean.formatter to PlainFormatter
nobu (Nobuyoshi Nakada)
07:20 AM Feature #12745: String#(g)sub(!) should pass a MatchData to the block, not a String
jeremyevans0 (Jeremy Evans) wrote:
> * Passing a second argument to the block breaks if the block is a lambda.
> ...
I prefer to the last approach, but don't like names `subm` and `gsubm`.
How about `repl` and `repl_all`?
JavaScrip...
shugo (Shugo Maeda)
06:19 AM Revision d4e52f67 (git): Added no suggestion test case
nobu (Nobuyoshi Nakada)
06:18 AM Revision 46fa301e (git): Use DidYouMean.formatter
Instead of building messages separately. nobu (Nobuyoshi Nakada)
06:08 AM Feature #16254: MRI internal: Define built-in classes in Ruby with `__intrinsic__` syntax
Dan0042 (Daniel DeLorme) wrote:
> It would really help to have an example that does more than just wrap the intrinsic function calls.
Below is an example which solves Problem: Writen in C: (3) Performance issue: keyword parameters.
...
naruse (Yui NARUSE)
05:59 AM Revision e50b8949 (git): Suppress numbered parameter warnings
nobu (Nobuyoshi Nakada)
05:53 AM Revision 095cdca1 (git): Make weakmap finalizer an ifunc lambda
Simple comparison between proc/ifunc/method invocations:
```
proc 15.209M (± 1.6%) i/s - 76.138M in 5.007413s
ifunc 15.195M (± 1.7%) i/s - 76.257M in 5.020106s
method 9.836M (± 1.2%) i/s - 49.272M in 5....
nobu (Nobuyoshi Nakada)
05:53 AM Revision ce794236 (git): Use identhash as WeakMap
As ObjectSpace::WeakMap allows FLONUM as a key, needs the special
deal for its hash. [Feature #16035]
nobu (Nobuyoshi Nakada)
04:36 AM Feature #16256 (Closed): A "did you mean" hint for OptionParser
My patch was reviewed by @yuki24 and @nobu , and merged. Closing. mame (Yusuke Endoh)
03:39 AM Misc #16232 (Closed): DevelopersMeeting20191017Japan
mame (Yusuke Endoh)
03:20 AM Revision c3b64a86 (git): lib/optparse.rb: Show a did_you_mean hint for unknown option
```
require 'optparse'
OptionParser.new do |opts|
opts.on("-f", "--foo", "foo") {|v| }
opts.on("-b", "--bar", "bar") {|v| }
opts.on("-c", "--baz", "baz") {|v| }
end.parse!
```
```
$ ruby test.rb --baa
Traceback (most recent call ...
mame (Yusuke Endoh)
02:23 AM Revision 5ca5529d (git): Fix warning of generated parser for nested module
hanachin (Seiei Miyagi)
12:56 AM Bug #12667 (Closed): full_gem_path is incorrect for core modules
jeremyevans0 (Jeremy Evans)
12:48 AM Bug #12862 (Closed): Regular Expression Named Group Matching does not work with #{} (Similar? to issue #2778)
jeremyevans0 (Jeremy Evans)
12:46 AM Bug #12961 (Closed): Bad value for range using infinity for Date or Time
jeremyevans0 (Jeremy Evans)
12:29 AM Bug #13549 (Closed): MinGW / Windows encoding - Two issues
jeremyevans0 (Jeremy Evans)
12:28 AM Bug #13556 (Closed): MinGW readline Alt / Meta keys
jeremyevans0 (Jeremy Evans)
12:24 AM Bug #13752 (Closed): Can't observe sibling refinements
This appears to be fixed in the master branch (printing `foo`), though it is still broken in 2.6. Not sure what commit fixed it. jeremyevans0 (Jeremy Evans)

10/17/2019

11:59 PM Bug #13903 (Closed): cant compile ruby with /MT on windows
jeremyevans0 (Jeremy Evans)
11:58 PM Bug #13920 (Closed): prepping io for stdin returns "access denied" on windows
jeremyevans0 (Jeremy Evans)
11:56 PM Bug #13966 (Closed): configure.in still needed ?!
jeremyevans0 (Jeremy Evans)
11:55 PM Bug #13980 (Closed): Rounding failure on i686 (i386).
jeremyevans0 (Jeremy Evans)
11:52 PM Bug #14051 (Closed): net/imap issue on idle method with an empty block
jeremyevans0 (Jeremy Evans)
11:44 PM Bug #14176 (Closed): Unclear error message when calling method with keyword arguments
With the separation of keyword arguments and positional arguments in #14183, I think this can be closed. jeremyevans0 (Jeremy Evans)
11:39 PM Bug #14271 (Feedback): Random TestIO_Console#test_oflush failure
Vit, do you still get this test suite error? jeremyevans0 (Jeremy Evans)
11:35 PM Bug #14353 (Closed): $SAFE should stay at least thread-local for compatibility
`$SAFE` is being deprecated in 2.7 and will revert to normal global variable in 3.0, so this can be closed. jeremyevans0 (Jeremy Evans)
11:22 PM Bug #14505 (Closed): IO.popen / Open3.popen2 / backtick subprocess remains blocked
jeremyevans0 (Jeremy Evans)
11:16 PM Bug #14596 (Closed): Ruby master is broken with bootsnap
jeremyevans0 (Jeremy Evans)
11:13 PM Bug #14631 (Closed): Add support for long paths in Windows 10 when support is enabled in the OS
jeremyevans0 (Jeremy Evans)
10:59 PM Bug #14662 (Closed): Stack consistency error in 2.5.1
jeremyevans0 (Jeremy Evans)
10:59 PM Bug #14663 (Closed): getting "killed string.c" rdoc failed while trying to make ruby-2_5_1
jeremyevans0 (Jeremy Evans)
10:57 PM Bug #14678 (Closed): Segmentation fault in pg
jeremyevans0 (Jeremy Evans)
10:49 PM Bug #14726: wrong message when superclass is not a Class
It looks like this error message has not been changed. Attached is a patch with a slightly more verbose and descriptive error message:
```ruby
class C1; end
C2 < C1.new; end
# TypeError (superclass must be an instance of Class (gi...
jeremyevans0 (Jeremy Evans)
10:29 PM Bug #14745 (Closed): High memory usage when using String#replace with IO.copy_stream
jeremyevans0 (Jeremy Evans)
10:05 PM Bug #15052 (Closed): must not optimize `foo(**{})` out
Fixed by commit:1d5066efb08cbb328ba528a5f8be1708584b659f. jeremyevans0 (Jeremy Evans)
09:59 PM Bug #15179 (Closed): Segfault caused by only 'loop{ x<<[] }'
jeremyevans0 (Jeremy Evans)
09:58 PM Bug #15187 (Closed): IPv6 x-forwarded-host results in "bad URI" error
jeremyevans0 (Jeremy Evans)
09:53 PM Bug #15227 (Closed): Wrong version of ruby is used during tests
jeremyevans0 (Jeremy Evans)
09:52 PM Bug #15253 (Closed): Arduinoとの接続においてSocket.tcp_server_loop中で$stderr.puts、pなどが使用できない
jeremyevans0 (Jeremy Evans)
09:16 PM Feature #16245: Add interfaces to count and measure size all IMEMO objects
Yes!
ObjectSpace.memsize_of_imemo_objects sounds perfect to me.
I also support adding `ObjectSpace.each_iseq` which seems the simplest way to get iteration working.
I get the concern about not wanting to pollute MRI with MRI ...
sam.saffron (Sam Saffron)
09:09 PM Feature #16029: Expose fstring related APIs to C-extensions
Koichi,
What about rb_str_fstring_lookup and rb_str_fstring_lookup_enc? Both will not create strings so shared strings should not be a problem.
To be honest creation can be somewhat inefficient, the one place I can see this being...
sam.saffron (Sam Saffron)
05:55 AM Feature #16029: Expose fstring related APIs to C-extensions
Hi.
(1) implementation
Current implementation can have issue (related to shared string) and this issue can cause something wrong behavior for C-extension.
Sorry, we need a time to confirm.
(2) naming
i think it should be `rb...
ko1 (Koichi Sasada)
08:35 PM Revision 1d564ace (git): Remove unused constant.
This constant isn't used, so lets remove it. tenderlovemaking (Aaron Patterson)
08:30 PM Revision 9026e12f (git): Look up constant instead of caching in a global
The global can go bad if the compactor runs, so we need to look up the
constant instead of caching it in a global.
tenderlovemaking (Aaron Patterson)
07:59 PM Bug #15273 (Closed): Ruby crashing after updating Mac OS to Mojave (10.14)
jeremyevans0 (Jeremy Evans)
07:54 PM Bug #15372 (Closed): openssl 1.1.1a on Debian sid test failures
`test/net/fixtures` was updated in commit:f234e6c3d3170f37508e214cdaef78d4b2584e5a and commit:1e0b49a293d3792826c67b7e05c5fcbd09c9ea6e. Rubygems cert was updated in commit:ae2a904ce9bffedee7d110dc60fd51c0a2879a5b. I think this can be clo... jeremyevans0 (Jeremy Evans)
07:46 PM Bug #15422 (Closed): Re: [ruby-cvs:73514] normal:r66413 (trunk): thread_pthread.c: fix memory leak from fork loop leapfrog (v3)
jeremyevans0 (Jeremy Evans)
07:22 PM Bug #16030 (Closed): test_memsize fails on x32 ABI: Unsupported RVALUE_SIZE=24
Applied in changeset commit:git|ee821e90741ebedc6c7a3bb0e8b67e59f3a44022.
----------
Update test to handle x32 ABI compiled Ruby on Linux
Suggestion from Laurence Parry.
Fixes [Bug #16030]
jeremyevans (Jeremy Evans)
07:21 PM Revision ee821e90 (git): Update test to handle x32 ABI compiled Ruby on Linux
Suggestion from Laurence Parry.
Fixes [Bug #16030]
jeremyevans (Jeremy Evans)
06:53 PM Feature #16255: Make `monitor.rb` built-in
Matz wants to make it as an extension library, so I moved it as extension library.
ko1 (Koichi Sasada)
06:49 PM Bug #15644 (Assigned): ThreadsWait problems with Thread#report_on_exception
I agree this is a bug that should be fixed. I have submitted a pull request to fix it: https://github.com/ruby/thwait/pull/1 jeremyevans0 (Jeremy Evans)
05:55 PM Feature #13683: Add strict Enumerable#single
> instead of `#select`, shouldn't you use `#find` so it doesn't need to check the others when it already found a match?
No, because it should return nil when there's more than one match.
Dan0042 (Daniel DeLorme)
07:24 AM Feature #13683: Add strict Enumerable#single
Dan0042 (Daniel DeLorme) wrote:
> +1
> ...
instead of `#select`, shouldn't you use `#find` so it doesn't need to check the others when it already found a match?
Hanmac (Hans Mackowiak)
06:24 AM Feature #13683: Add strict Enumerable#single
```
[1, 2].mono
[1, 2].solo
[1, 2].alone
```
kinoppyd (Yasuhiro Kinoshita)
05:59 AM Feature #13683: Add strict Enumerable#single
I don't like `only` either since these names do not describe the behavior.
Matz.
matz (Yukihiro Matsumoto)
05:54 PM Revision 8c0629ba (git): Treat key sequences from getwch() that start from 0 or 0xE0 correctly
aycabta (aycabta .)
05:54 PM Revision 58657fa1 (git): Add numeric keypad key sequences on Windows
aycabta (aycabta .)
05:54 PM Revision 53c05a6c (git): Remove freeze
aycabta (aycabta .)
05:54 PM Revision 13b106a1 (git): Ignore the input method key sequence from getwch() correctly
The function getwch() returns some key sequences which start from 0 or 0xE0
with a following key code. Alt+` that is on/off key for input methods gives 0
and 41 so Reline was always ignoring 0 and following keys but numeric keypad
keys g...
aycabta (aycabta .)
05:39 PM Bug #15754 (Closed): MinGW build/compile failure with Ruby 2.5.5, but 2.6.2 & trunk ok
jeremyevans0 (Jeremy Evans)
05:22 PM Bug #16007 (Closed): Process.clock_getres matches the clock in practice for Process::CLOCK_{PROCESS,THREAD}_CPUTIME_ID FAILED fails on armv7hl
jeremyevans0 (Jeremy Evans)
05:12 PM Bug #16033 (Closed): test_callinfo_unreachable_path Bus Error on Solaris sparc
jeremyevans0 (Jeremy Evans)
04:35 PM Bug #16251 (Closed): Evaluation in binding differs from ruby execution
jeremyevans0 (Jeremy Evans)
04:35 PM Bug #16194 (Closed): Can not compile the recent ruby 2.6.5 release due to some openssl-related issue (see issue description)
jeremyevans0 (Jeremy Evans)
04:35 PM Bug #16191 (Closed): Crash when setting conditional to false
jeremyevans0 (Jeremy Evans)
04:34 PM Bug #16190 (Closed): Strange Crash
jeremyevans0 (Jeremy Evans)
04:32 PM Bug #10314 (Closed): Default argument lookup fails in Ruby 2.2 for circular shadowed variable names
Applied in changeset commit:git|0162e7e6471b639dfeeded29943e9e27c9519826.
----------
Make circular argument reference a SyntaxError instead of a warning
Fixes [Bug #10314]
jeremyevans (Jeremy Evans)
05:07 AM Bug #10314: Default argument lookup fails in Ruby 2.2 for circular shadowed variable names
I think it's OK now to make this error.
Matz.
matz (Yukihiro Matsumoto)
04:32 PM Revision 0162e7e6 (git): Make circular argument reference a SyntaxError instead of a warning
Fixes [Bug #10314] jeremyevans (Jeremy Evans)
03:52 PM Feature #16131: Remove $SAFE, taint and trust
The blocker on merging the pull request is that test-bundled-gems is failing due to the `rake` test failure. https://github.com/ruby/rake/pull/329 needs to be merged (and I don't have permissions to merge it), and a new rake released an... jeremyevans0 (Jeremy Evans)
06:58 AM Feature #16131: Remove $SAFE, taint and trust
Hi @jeremyevans0,
> I've rebased my pull request against master and fixed the conflicts
Thank you for the great work! I've discussed this issue on the developer meeting, and all agreed with the change.
> ...
This should be disc...
mame (Yusuke Endoh)
03:46 PM Revision fdfb5100 (git): * 2019-10-18 [ci skip]
git[bot]
03:44 PM Revision d1a73058 (git): Insert multiline incremental search result correctly
aycabta (aycabta .)
03:24 PM Feature #13083 (Closed): Regexp#{match,match?} with a nil argument are deprecated and will raise a TypeError in Ruby 3.0
Merged at commit:2a22a6b2d8465934e75520a7fdcf522d50890caf znz (Kazuhiro NISHIYAMA)
02:48 PM Bug #16259 (Third Party's Issue): Err when running 'rails test'
This error occurs in sassc, an external gem:
```
c:0059 p:---- s:0449 e:000448 CFUNC :compile_data_context
c:0058 p:0298 s:0444 e:000443 METHOD /Users/johnny/env/ebm/vendor/cache/ruby/2.5.0/gems/sassc-2.2.1/lib/sassc/engine.rb:42
...
jeremyevans0 (Jeremy Evans)
10:18 AM Bug #16259 (Third Party's Issue): Err when running 'rails test'
Got this error when running 'rails test'
Please ask if something's missing!
Best of luck!
johuli (Johnny Ulinder)
02:32 PM Feature #15822: Add Hash#except
@matz About use-cases, there are multiple, like:
* Logging/debug printing some hash with sensitive or too large data excluded:
```ruby
puts "REQUEST: #{request_data.except(:body, :apikey)}
```
* Data tidying:
```r...
zverok (Victor Shepelev)
06:42 AM Feature #15822: Add Hash#except
`Hash#slice` was introduced via discussion in #13563. We didn't see the need for `Hash#except` yet. Any (real world use-case)?
I don't think the name `except` is the best name for the behavior.
Matz.
matz (Yukihiro Matsumoto)
01:27 PM Feature #16120: Omitted block argument if block starts with dot-method call
I am so sad :-(
I was really looking forward to using this beautiful syntax instead of numbered parameters which I find so ugly I prefer to use an explicit block variable.
Am I the only one who thinks the omitted parameter is by far th...
Dan0042 (Daniel DeLorme)
08:42 AM Feature #16120 (Rejected): Omitted block argument if block starts with dot-method call
After reconsideration, I came to the conclusion that we should use numbered parameters instead of this feature.
Thank you for a pretty interesting idea. It was good food for thought.
Matz.
matz (Yukihiro Matsumoto)
10:43 AM Revision 4f13927f (git): [DOC] no change on Windows [Bug #15267] [ci skip]
nobu (Nobuyoshi Nakada)
09:52 AM Bug #15267 (Closed): File.basename + File.extname does not restore the original name
Applied in changeset commit:git|e169ad93f44e1944ecf7bb65133fd34e8b868ea8.
----------
Fixed File.extname at a name ending with a dot
File.extname now returns a dot string at a name ending with a dot.
[Bug #15267]
nobu (Nobuyoshi Nakada)
06:05 AM Bug #15267: File.basename + File.extname does not restore the original name
https://github.com/ruby/ruby/pull/2565 nobu (Nobuyoshi Nakada)
05:41 AM Bug #15267: File.basename + File.extname does not restore the original name
I think we should change File.extname instead of File.basename, as:
```
File.basename("name.", ".*") #=> "name"
File.extname("name.") #=> "."
```
We can explain File.extname as:
File.extname(x) returns what File.basename(x, ".*...
akr (Akira Tanaka)
05:14 AM Bug #15267: File.basename + File.extname does not restore the original name
> basename(1) seems to result in the base name with the dot, when stripping a wildcard suffix.
basename(1) doesn't handle wildcard.
https://pubs.opengroup.org/onlinepubs/9699919799/utilities/basename.html
naruse (Yui NARUSE)
09:51 AM Revision e169ad93 (git): Fixed File.extname at a name ending with a dot
File.extname now returns a dot string at a name ending with a dot.
[Bug #15267]
nobu (Nobuyoshi Nakada)
08:45 AM Revision 2a261909 (git): * remove trailing spaces. [ci skip]
git[bot]
08:44 AM Misc #16258: [PATCH] Combine call info and cache to speed up method invocation
Thank you for your patch.
Conclusion: OK.
Points:
* Current implementation separates ci and cc because of CoW friendliness (ci is immutable data and cc is mutable data). However, there are no measurements how it affect on CoW fr...
ko1 (Koichi Sasada)
01:46 AM Misc #16258 (Closed): [PATCH] Combine call info and cache to speed up method invocation
Proposed change: https://github.com/ruby/ruby/pull/2564
To perform a regular method call, the VM needs two structs, `rb_call_info`
and `rb_call_cache`. At the moment, we allocate these two structures in
separate buffers. In the wors...
alanwu (Alan Wu)
08:44 AM Revision 2a22a6b2 (git): Regexp#match{?} with nil raises TypeError as String, Symbol (#1506)
* {String|Symbol}#match{?} with nil returns falsy
To improve consistency with Regexp#match{?}
* String#match(nil) returns `nil` instead of TypeError
* String#match?(nil) returns `false` instead of TypeError
* Symbol#match(nil) returns ...
kachick (Kenichi Kamiya)
07:54 AM Revision 41457dcb (git): Remove unused variable
aycabta (aycabta .)
07:53 AM Bug #16257: Gem::Version instances are silently created as singletons
Fixed and scheduled for rubygems v3.1.0. tonci (Tonči Damjanić)
07:35 AM Revision 60a0c20c (git): Refactor prompt generation logic
aycabta (aycabta .)
06:30 AM Bug #16143: BOM UTF-8 is not removed after rewind
I feel changing the default behavior of IO#rewind is dangerous.
We use IO#rewind when we modify a file in place.
```
open(filename, "r+") {|f|
f.read
f.rewind
f.truncate(0)
f.write "..."
}
```
If IO#rewind moves t...
akr (Akira Tanaka)
05:21 AM Bug #11055: autoload resets private_constant
I agree with fixing this. Nobu will investigate the patch and consider the issue detail.
Matz.
matz (Yukihiro Matsumoto)
03:51 AM Revision 37457117 (git): Use `\&` instead of `\1` with capture
znz (Kazuhiro NISHIYAMA)
02:37 AM Misc #16232: DevelopersMeeting20191017Japan
* [Feature #16142] Implement code_range in Proc and Method - Ruby master - Ruby Issue Tracking System
* Propose an API to get code position of Proc and Method so that we can get body of them (especially of a Proc).
* I want to disc...
osyo (manga osyo)
02:12 AM Misc #16232: DevelopersMeeting20191017Japan
- [Misc #16258] Combine call info and cache to speed up method invocation
- Looking for feedback and reviews. I think this offers a good perf boost.
- [Bug #15912] Allow some reentrancy during TracePoint events
- I have seen quit...
alanwu (Alan Wu)
01:46 AM Misc #16232: DevelopersMeeting20191017Japan
* [[Feature #13083]](https://bugs.ruby-lang.org/issues/13083) {String|Symbol}#match{?} with nil returns falsy as Regexp#match{?}
* Matz said "Those methods (but =~) should consistently raise exceptions." and pull request's conflicts r...
znz (Kazuhiro NISHIYAMA)
02:36 AM Feature #16142: Implement code_range in Proc and Method
hi.
I want to use it when I want to get the block source code.
e.g. https://github.com/osyo-manga/gem-binding-debug
https://github.com/osyo-manga/gem-binding-debug/blob/a5e19728893ddb92ec04170fcd8afbdf43db2eab/lib/binding/debug.rb#L10...
osyo (manga osyo)

10/16/2019

07:51 PM Bug #8039 (Closed): DRB/dRuby server throws an exception when probed on its port
Applied in changeset commit:git|567e312d1f56c27ecb4fa20deac4311f05ee5507.
----------
Do not raise an exception on a closed DRb socket
This rescues some exceptions that could happen with a closed or
shutdown DRb socket. This can prevent...
jeremyevans (Jeremy Evans)
07:51 PM Bug #5618 (Closed): Exceptions cause DRb connection to be closed
Applied in changeset commit:git|50b8033d6b7404670ee985de1473fffc10dd7d9c.
----------
Handle subclasses of Exception in drb
This makes it so that client instances that call a method on a
server-side object that raise a subclass of Excep...
jeremyevans (Jeremy Evans)
07:51 PM Revision d5744aff (git): Fix DRbServer#any_to_s
My previous fix in d0ed935d5bf8c3fce9800742a36e44fb7f63dda4 was
not correct, as pointed out by cremno on GitHub.
This simplifies things by just using Kernel#to_s. Also switch to
bind_call(obj) instead of bind(obj).call for better perfo...
jeremyevans (Jeremy Evans)
07:51 PM Revision 567e312d (git): Do not raise an exception on a closed DRb socket
This rescues some exceptions that could happen with a closed or
shutdown DRb socket. This can prevent the server from
exiting if an client socket is closed directly after it is
accepted.
Fixes [Bug #8039]
jeremyevans (Jeremy Evans)
07:51 PM Revision 50b8033d (git): Handle subclasses of Exception in drb
This makes it so that client instances that call a method on a
server-side object that raise a subclass of Exception are handled
similarly to those that raise a subclass of StandardError.
Only reraise exceptions that we are fairly sure ...
jeremyevans (Jeremy Evans)
07:51 PM Bug #13249 (Closed): Access modifiers don't have an effect inside class methods in Ruby >= 2.3
Applied in changeset commit:git|2993b24a1ecc5fa3cc9f140bfd80669c3a3b7b9c.
----------
Warn for calling public/protected/private/module_function without arguments inside method
Calling these methods without an argument does not have the
...
jeremyevans (Jeremy Evans)
07:10 PM Bug #13249: Access modifiers don't have an effect inside class methods in Ruby >= 2.3
nobu (Nobuyoshi Nakada) wrote:
> * Is it necessary that check is placed inside the function `vm_cref_set_visibility`?
> ...
I agree, that makes more sense.
> * `rb_frame_callee` returns the called name, that may be an aliased name.
...
jeremyevans0 (Jeremy Evans)
07:06 AM Bug #13249: Access modifiers don't have an effect inside class methods in Ruby >= 2.3
* Is it necessary that check is placed inside the function `vm_cref_set_visibility`?
What about calling a separate function where `check_method` flag is 1?
* `rb_frame_callee` returns the called name, that may be an aliased name.
...
nobu (Nobuyoshi Nakada)
05:26 AM Bug #13249: Access modifiers don't have an effect inside class methods in Ruby >= 2.3
@nobu Could you review the patch? mame (Yusuke Endoh)
07:50 PM Revision 2993b24a (git): Warn for calling public/protected/private/module_function without arguments inside method
Calling these methods without an argument does not have the
desired effect inside a method.
Fixes [Bug #13249]
jeremyevans (Jeremy Evans)
05:32 PM Feature #16253: Shorthand "forward everything" syntax
Given the very interesting use case that zverok presented, I'm leaning more in favor of a lexically-scoped "operator" that doesn't need to be present in the method signature. So no invocation via block, just like `super`. Actually, the m... Dan0042 (Daniel DeLorme)
04:55 PM Feature #16253: Shorthand "forward everything" syntax
The disadvantage I see to this proposal is increased complexity. Both internal complexity in the implementation, and also more complexity for the user, as this adds more syntax Ruby programmers need to understand. However, I think the ... jeremyevans0 (Jeremy Evans)
01:17 PM Feature #16253: Shorthand "forward everything" syntax
> But it's true that often we want to operate on the arguments before forwarding, so I think maybe an asymmetric syntax like this would work best?
BTW, that's very valid point — similar problem was discussed here: https://bugs.ruby-la...
zverok (Victor Shepelev)
01:05 PM Feature #16253: Shorthand "forward everything" syntax
> * Is `*` or `...` an expression? What does `def m(...); a = ...; p a; end; m(1, a: 2) {}` print?
I would tend to say `a = ...` is a syntax error; my intention was to use this only in the argument list of a method call, with an imple...
Dan0042 (Daniel DeLorme)
10:33 AM Feature #16253: Shorthand "forward everything" syntax
Things to consider:
* Is `*` or `...` an expression? What does `def m(...); a = ...; p a; end; m(1, a: 2) {}` print?
* Do we want to support required arguments before? It would be useful for `method_missing`:
```ruby
def method_mis...
Eregon (Benoit Daloze)
05:19 PM Revision db841236 (git): Calculate prompt width correctly
aycabta (aycabta .)
04:56 PM Revision e26c6d4a (git): Collect multiline prompt logic into a method
aycabta (aycabta .)
04:21 PM Revision 3fea2d91 (git): Use an even indent in NEWS for code
* Makes it easier to copy-paste and add code backticks. Eregon (Benoit Daloze)
04:17 PM Misc #16232: DevelopersMeeting20191017Japan
* [Feature #16120] Omitted block argument if block starts with dot-method call (Dan0042)
* last time Matz said "Give me time to consider it"; there is now a patch ready; is it ok to accept?
Dan0042 (Daniel DeLorme)
06:55 AM Misc #16232: DevelopersMeeting20191017Japan
* [Feature #16150] Add a way to request a frozen string from to_s
* `Symbol#to_s` now returns a frozen string, and this brought at least seven incompatibility issues. To make sure: is it okay to introduce this change in 2.7.0-preview2?
mame (Yusuke Endoh)
06:38 AM Misc #16232: DevelopersMeeting20191017Japan
* [Feature #16253] Shorthand "forward everything" syntax (mame)
* How about introducing `def foo(...); bar(...); end`? It does not solve the compatibility issue of keyword argument separation, but it would provide a useful shorthand ...
mame (Yusuke Endoh)
05:45 AM Misc #16232: DevelopersMeeting20191017Japan
* [Feature #16255] Make `monitor.rb` built-in (ko1)
* maybe there is no problem.
* Should we make `MonitorMixin` built-in?
* [Feature #16254] MRI internal: Define built-in classes in Ruby with `__intrinsic__` syntax (ko1)
* onl...
ko1 (Koichi Sasada)
03:58 PM Feature #16120: Omitted block argument if block starts with dot-method call
Rebased my patch to the latest master and cleaned up the code a bit:
https://github.com/dan42/ruby/commit/11f609af003370396d0e82381b57ea5a73ff6d8a
Dan0042 (Daniel DeLorme)
03:29 PM Revision e003f29e (git): * 2019-10-17 [ci skip]
git[bot]
03:28 PM Revision 5c80dffd (git): Revert "Disable ccache on arm64 build"
This reverts commit e8124729fbeaf159ae615f61980ee10018ed5134.
It worked once, but soon after that it stopped working again
https://travis-ci.org/ruby/ruby/jobs/598491972
k0kubun (Takashi Kokubun)
01:35 PM Revision 7df22780 (git): Support multiline history in incremental search
aycabta (aycabta .)
12:59 PM Bug #16257: Gem::Version instances are silently created as singletons
Done: https://github.com/rubygems/rubygems/issues/2948 tonci (Tonči Damjanić)
08:59 AM Bug #16257 (Third Party's Issue): Gem::Version instances are silently created as singletons
It is an issue of rubygems.
Please report it at https://github.com/rubygems/rubygems/
nobu (Nobuyoshi Nakada)
08:25 AM Bug #16257: Gem::Version instances are silently created as singletons
Attached the full stack trace. tonci (Tonči Damjanić)
08:23 AM Bug #16257 (Third Party's Issue): Gem::Version instances are silently created as singletons
Instantiating `Gem::Version` objects via `new` actually returns singletons, which is not obvious nor is this documented anywhere:
~~~
irb(main):001:0> v1 = Gem::Version.new("2.2.0")
=> #<Gem::Version "2.2.0">
irb(main):002:0> v1.fr...
tonci (Tonči Damjanić)
12:00 PM Revision f8fb51c9 (git): Revert "alias assert_raise_message for compatibility with test-unit"
This reverts commit 43015275b9a7f2833c93ad11ea96ae4cb3b7acd7.
`assert_raise_message` in test-unit is different from
`assert_raise_with_message`. It checks the exception message
only, but not the exception class,
nobu (Nobuyoshi Nakada)
09:04 AM Feature #10238: todo: remove dependency on malloc_usable_size
It should be fixed. ko1 (Koichi Sasada)
08:55 AM Feature #15123 (Feedback): Enumerable#compact proposal
ko1 (Koichi Sasada)
08:44 AM Revision 43015275 (git): alias assert_raise_message for compatibility with test-unit
nobu (Nobuyoshi Nakada)
08:30 AM Feature #16256: A "did you mean" hint for OptionParser
\o/ shevegen (Robert A. Heiler)
07:38 AM Feature #16256 (Closed): A "did you mean" hint for OptionParser
How about showing "did you mean" when a unknown option is passed for OptionParser?
```ruby
require 'optparse'
OptionParser.new do |opts|
opts.on("-f", "--foo", "foo") {|v| }
opts.on("-b", "--bar", "bar") {|v| }
opts.on("-...
mame (Yusuke Endoh)
08:29 AM Misc #16125 (Rejected): Remove the reserved member from rb_data_type_t as the addition of the compactor callback pushed it over a single cache line
Current design is for compatibility for future changes. ko1 (Koichi Sasada)
07:11 AM Revision 5437d7c8 (git): Temporarily drop test_jit_debug.rb
Still some CIs are failing:
https://ci.appveyor.com/project/ruby/ruby/builds/28141041/job/v4hfc99sjefqabkk
http://ci.rvm.jp/results/trunk-vm-asserts@silicon-docker/2317313
I'll fix them later.
k0kubun (Takashi Kokubun)
06:16 AM Revision d70855c7 (git): Added test for rdoc `--force-update` option
nobu (Nobuyoshi Nakada)
06:16 AM Revision 17ee01e3 (git): Removed an unused assignment
nobu (Nobuyoshi Nakada)
06:14 AM Revision c15856d7 (git): Do not test --jit-debug on -DVM_CHECK_MODE
k0kubun (Takashi Kokubun)
06:04 AM Revision eef25f95 (git): Maintain the intention of comment in Travis matrix
k0kubun (Takashi Kokubun)
05:56 AM Revision 006d9013 (git): Remove arm64 build from Drone
because it started to run on Travis. k0kubun (Takashi Kokubun)
05:54 AM Revision e8124729 (git): Disable ccache on arm64 build
Follow up https://github.com/ruby/ruby/pull/2559
According to experiments in https://github.com/ruby/ruby/pull/2560,
disabling cache seems to make arm64 build succeed.
k0kubun (Takashi Kokubun)
05:52 AM Feature #16245: Add interfaces to count and measure size all IMEMO objects
Already we have:
```ruby
require 'objspace'
pp ObjectSpace.count_imemo_objects
#=>
{:imemo_env=>42,
:imemo_cref=>177,
:imemo_ment=>3662,
:imemo_iseq=>1194,
:imemo_tmpbuf=>117,
:imemo_ast=>22,
:imemo_svar=>40,
:imemo_...
ko1 (Koichi Sasada)
05:47 AM Revision 4ccb49ba (git): Enforce --jit-debug test by another way
k0kubun (Takashi Kokubun)
05:01 AM Revision 759576a0 (git): Fix test path on travis build
k0kubun (Takashi Kokubun)
04:37 AM Revision 2679e109 (git): Test without --jit-debug by default
and let RUBY_DEBUG=1 job test it.
We usually don't use --jit-debug and we should test no --jit-debug by
default.
k0kubun (Takashi Kokubun)
03:59 AM Revision d97229de (git): Add arm64 case on Travis. (#2559)
misc-16234 Jun Aruga
02:04 AM Feature #16254: MRI internal: Define built-in classes in Ruby with `__intrinsic__` syntax
There's something I'm not sure I understood so I'd like to clarify if this proposal can be described as
A) write the boilerplate `rb_define_class` and `rb_define_method` using a ruby-like macro language;
B) write core classes and m...
Dan0042 (Daniel DeLorme)
 

Also available in: Atom