Project

General

Profile

Activity

From 11/19/2019 to 11/25/2019

11/25/2019

09:24 PM Bug #15856: Performance of redundant `Kernel.require` is slow when many gems are activated
I agree caching `require 'openssl'` should be possible.
I'm OK with changing (or removing) that spec to specify the new behavior, but would like to hear others' opinions as I don't much about the history and rationale behind the current...
Eregon (Benoit Daloze)
06:44 PM Bug #15856: Performance of redundant `Kernel.require` is slow when many gems are activated
For what its worth:
We went ahead and incorporated the prior patch into chef's shipping packages starting with Chef 15.5.9, and it will be incorporated into all our shipping products that bake in ruby (inspec, chefdk, chef workstation...
lamont (Lamont Granquist)
08:19 PM Bug #16368 (Closed): Error in `YAML.load(symbolize_names: true)` with null column YAML
Trying to parse YAML which contains null column `symbolize_names: true` would raise `NoMethodError`
```
irb(main):001:0> require 'yaml'
=> true
irb(main):002:0> YAML.load("null: nullnull")
=> {nil=>"nullnull"}
irb(main):003:0> ...
kibitan (Chikahiro Tokoro)
06:22 PM Bug #16367 (Third Party's Issue): stdin not support ibm866 encoding for windows
see here https://github.com/piotrmurach/tty-prompt/issues/115 long76 (Misha Shaygu)
04:37 PM Bug #16366: .count on endless range causes infinite loop
Sounds like a bug - counting to infinity is not easy. :) shevegen (Robert A. Heiler)
03:28 PM Bug #16366 (Closed): .count on endless range causes infinite loop
Out of curiosity, I tried:
``` ruby
(1..).count
```
Which resulted in an unkillable 100% CPU irb session.
I expected either an exception or maybe `Infinity`
Thanks
duffyjp (Jacob Duffy)
08:42 AM Revision 26625bc3 (git): [ripper] Quoted label without expression must be a local variable
The difference from 0b8c73aa65add5c57b46b0cfdf4e661508802172 is to
add the result of `string_add` event to marking objects.
```C
RNODE($1)->nd_rval = add_mark_object(p, $$);
```
nobu (Nobuyoshi Nakada)
07:53 AM Revision 86461fc2 (git): lldb_cruby.py: improved dump of Symbol
[ci skip] nobu (Nobuyoshi Nakada)
06:09 AM Revision 09e76e98 (git): Improve consistency of bool/true/false
znz (Kazuhiro NISHIYAMA)
06:00 AM Misc #16262: DevelopersMeeting20191128Japan
* [Feature #16166] Remove exceptional treatment of *foo when it is the sole block parameter (sawa)
* Unintended arity. This must be fixed in an earlier stage before Ruby 3.
* [Feature #16274] Transform hash keys by a hash (sawa)
*...
sawa (Tsuyoshi Sawada)
05:04 AM Revision e27acb61 (git): add fast path for argc==0.
If calling builtin functions with no arguments, we don't need to
calculate argv location.
ko1 (Koichi Sasada)
03:10 AM Revision 5c6235a8 (git): Set TRUE/FALSE to `bool ruby_tz_uptodate_p` instead of 1/FALSE
znz (Kazuhiro NISHIYAMA)
02:46 AM Misc #16360: Enabling IBM PowerPC/Z cases in Travis CI
Hello. It is definitely a good idea to enhance our CI. But that alone does not improve the code quality. We need someone to fix issues.
Maybe we need a platform maintainer first.
shyouhei (Shyouhei Urabe)
02:42 AM Misc #16188: What are the performance implications of the new keyword arguments in 2.7 and 3.0?
Eregon (Benoit Daloze) wrote:
> jeremyevans0 (Jeremy Evans) wrote:
> ...
There are a ton of other changes in 2.7 that could affect performance besides `ruby2_keywords`.
> > If you want to measure the effect of `ruby2_keywords`, you...
jeremyevans0 (Jeremy Evans)
12:22 AM Misc #16188: What are the performance implications of the new keyword arguments in 2.7 and 3.0?
jeremyevans0 (Jeremy Evans) wrote:
> > * Remove `ruby2_keywords` in Ruby 3.0, just have it in Ruby 2.7 where it's needed. Ruby 3.0 (with the keyword arg separation) doesn't need `ruby2_keywords`.
> ...
I don't think anyone is seriously...
Eregon (Benoit Daloze)
12:00 AM Misc #16188: What are the performance implications of the new keyword arguments in 2.7 and 3.0?
https://github.com/ruby/ruby/compare/master...eregon:no-ruby2_keywords is a more extensive removal of `ruby2_keywords`, although not complete yet.
It's actually a lot of extra logic in `setup_parameters_complex`.
Eregon (Benoit Daloze)
01:54 AM Revision 714a0cef (git): Fix a typo [ci skip]
znz (Kazuhiro NISHIYAMA)
01:47 AM Misc #16365 (Closed): [PATCH] Remove duplicated line in NEWS
Applied in changeset commit:git|a5f0d1d71598451dd8461ba52a3a143cb33afdd3.
----------
Remove duplicated line in NEWS [ci skip]
[ruby-core:95935] [Misc #16365]
Anonymous
01:21 AM Misc #16365 (Closed): [PATCH] Remove duplicated line in NEWS
I found a duplicated line in NEWS and created a patch to fix it. jnchito (Junichi Ito)
01:46 AM Revision a5f0d1d7 (git): Remove duplicated line in NEWS [ci skip]
[ruby-core:95935] [Misc #16365] Junichi Ito
12:21 AM Revision 9af52c0d (git): lldb_cruby.py: fixed dump of embedded RArray
[ci skip] nobu (Nobuyoshi Nakada)
12:19 AM Revision ce50af21 (git): Fix the docs for Proc#>>.
The docs are wrong about the behaviour of `#>>` (looks like it was copied from `#<<`)
In `(prc >> g).call(n)` _prc_ is called first (with _n_), *then* _g_ is called with the result.
Code examples are OK.
Paweł Przeniczny

11/24/2019

11:14 PM Misc #16262: DevelopersMeeting20191128Japan
* [Feature #16345] Don't emit deprecation warnings by default. (mame)
* The discussion seems to be agreeing with deduplicated warnings [Feature #16289]. We must decide.
mame (Yusuke Endoh)
10:46 PM Misc #16262: DevelopersMeeting20191128Japan
* [Misc #16188] The performance overhead of `ruby2_keywords` (eregon)
* It's about 7-8% (@mame measurements) for `foo(*args)` calls where `foo` has little code, both for MRI and TruffleRuby (I measured about 5-11% overhead). That's qu...
Eregon (Benoit Daloze)
09:19 AM Misc #16262: DevelopersMeeting20191128Japan
* [Feature #16355]Raise NoMatchingPatternError when `expr in pat` doesn't match(ktsj)
* I'd like to fix this specification before 2.7 release.
ktsj (Kazuki Tsujimoto)
03:14 AM Misc #16262: DevelopersMeeting20191128Japan
* [Feature #16363] Promote did_you_mean to default gem (yuki24)
* Currently there are two problems with the gem being a bundled gem, one with the availability of the lib and the other about bundler.
yuki24 (Yuki Nishijima)
02:25 AM Misc #16262: DevelopersMeeting20191128Japan
* [Feature #16364] Top-level ruby2_keywords (mame)
* Currently, there is no top-level `ruby2_keywords`, which would be unuseful for some simple cases.
mame (Yusuke Endoh)
11:04 PM Misc #16188: What are the performance implications of the new keyword arguments in 2.7 and 3.0?
jeremyevans0 (Jeremy Evans) wrote:
> Comparing 2.6 to 2.7 is irrelevant in regards to the discussion of the effect of `ruby2_keywords`. There are many other changes between 2.6 and 2.7 that have a much larger effect than `ruby2_keyword...
Eregon (Benoit Daloze)
10:57 PM Misc #16188: What are the performance implications of the new keyword arguments in 2.7 and 3.0?
Eregon (Benoit Daloze) wrote:
> Here is another benchmark, where no keyword arguments are used, yet we see a slowdown of up to 11.5% in MRI 2.7:
> ...
As I explained in my previous comment, the majority of the slowdown is not related t...
jeremyevans0 (Jeremy Evans)
10:41 PM Misc #16188: What are the performance implications of the new keyword arguments in 2.7 and 3.0?
Eregon (Benoit Daloze) wrote:
> jeremyevans0 (Jeremy Evans) wrote:
> ...
`def a(x) end; a(*arr) end` is the worst case performance decrease, assuming that what we are measuring is the effect of supporting `ruby2_keywords` when not actu...
jeremyevans0 (Jeremy Evans)
10:38 PM Misc #16188: What are the performance implications of the new keyword arguments in 2.7 and 3.0?
Here is another benchmark, where no keyword arguments are used, yet we see a slowdown of up to 11.5% in MRI 2.7:
https://gist.github.com/eregon/31e155901c995925bd1c661dfa1a71d8
`length([1], [2], [3])` and `length({a: 1}, {b: 2}, {c: ...
Eregon (Benoit Daloze)
09:56 PM Misc #16188: What are the performance implications of the new keyword arguments in 2.7 and 3.0?
I also measured on TruffleRuby, and there the diff is minimal, just adding the `ruby2_keywords` check on *splat call sites:
https://github.com/oracle/truffleruby/commit/d143af3626aae009e2414bfe61833565fe3a0476
The results are similar...
Eregon (Benoit Daloze)
08:54 PM Misc #16188: What are the performance implications of the new keyword arguments in 2.7 and 3.0?
jeremyevans0 (Jeremy Evans) wrote:
> On CRuby master branch, in the worst possible case I could design, the difference was about 1%.
Why is `def a(x) end; a(*arr)` the worst case? Would it not be more expensive to call a method accep...
Eregon (Benoit Daloze)
10:27 PM Revision fd956c72 (git): Cache loaded module to suppress method redefined warnings
aycabta (aycabta .)
09:50 PM Revision 90872520 (git): * 2019-11-25 [ci skip]
git[bot]
08:38 PM Revision 51ea1abb (git): Remove e2mmap dependency
aycabta (aycabta .)
06:10 PM Revision efbca151 (git): Remove lib/irb/slex.rb
aycabta (aycabta .)
02:29 PM Revision 1aeb201d (git): Remove debug code...
aycabta (aycabta .)
02:15 PM Revision 41164418 (git): * 2019-11-24 [ci skip]
git[bot]
02:08 PM Bug #16361: TestEnv#test_fetch failure
I cannot reproduce the issue with ruby 2.7.0-preview3.
```
$ make test-all TESTS=test/ruby/test_env.rb
fatal: not a git repository (or any of the parent directories): .git
./revision.h unchanged
config.status: creating ruby-runner...
mame (Yusuke Endoh)
01:42 PM Revision 745ab168 (git): Disable tracer ext of IRB when tracer doesn't found
aycabta (aycabta .)
12:17 PM Feature #16355: Raise NoMatchingPatternError when `expr in pat` doesn't match
I think this basically breaks [Feature #15865].
We should decide if `expr in pattern` can be used as a condition (such as in `if`) or not.
As @palkan said, it's already easy to use `|| raise NoMatchingPatternError` for assignment c...
Eregon (Benoit Daloze)
03:09 AM Feature #16363: Promote did_you_mean to default gem
\o/
(^^^ That's an upvote emoji really.)
shevegen (Robert A. Heiler)
12:27 AM Feature #16363 (Closed): Promote did_you_mean to default gem
The `did_you_mean` gem has been a bundled gem for over 3 years now and I think it's time to promote it to a standard library. There are two main issues in the current structure:
* A number of implementations, including [`optparse.rb`...
yuki24 (Yuki Nishijima)
02:23 AM Feature #16364 (Closed): Top-level ruby2_keywords
How about defining top-level ruby2_keywords?
```
#!/usr/bin/env ruby
def foo(**kw)
kw
end
ruby2_keywords def bar(*a)
foo(*a)
end
bar(k:1) #=> {:k=>1} with no warnings in 2.7
```
Currently, `Module#ruby2_keywords`...
mame (Yusuke Endoh)

11/23/2019

08:20 PM Bug #16361: TestEnv#test_fetch failure
mame (Yusuke Endoh) wrote:
> How did you run the test?
I am using the snapshot to execute the test suite. Therefore I assume that did_you_mean gem is available and the test suite should pass in this configuration.
vo.x (Vit Ondruch)
12:34 AM Bug #16361: TestEnv#test_fetch failure
How did you run the test? Currently, bundled gems should be unavailable in `make test-all`, and some tests don't assume that bundled gems are loaded.
Currently, did_you_mean is a bundled gem, so should not be loaded in `make test-all...
mame (Yusuke Endoh)
07:06 AM Revision b5634392 (git): Show include directive differences only when under git
When building from tarballs, the source directory is not a git
repository.
nobu (Nobuyoshi Nakada)
02:41 AM Revision 9318e1ff (git): Use realpath to try to fix failures with symlinks
znz (Kazuhiro NISHIYAMA)
12:44 AM Bug #16362 (Closed): Unable to build Ruby 2.6.5 on Manjaro Linux 18.1.3
Closing as per OP's request. Thanks. mame (Yusuke Endoh)

11/22/2019

10:22 PM Revision 818708ed (git): Stop using undefined matrix.os for macOS
and use github.workflow instead. Applied a similar change to MJIT too. k0kubun (Takashi Kokubun)
08:44 PM Revision b0614a0f (git): Tracer.set_get_line_procs should support block and Proc object
Original Tracer.set_get_line_procs is implemented by
"def set_get_line_procs(p = proc)". It means that original
Tracer.set_get_line_procs supports block and Proc object.
aycabta (aycabta .)
08:43 PM Revision 1ee010a3 (git): Tracer.add_filter should support block and Proc object
Original Tracer.add_filter is implemented by "def add_filter(p = proc)". It
means that original Tracer.add_filter supports block and Proc object.
aycabta (aycabta .)
08:42 PM Revision 8e743fad (git): Count pinned slots using only bitmap
This is significantly faster than checking BUILTIN_TYPEs because we
access significantly less memory. We also use popcount to count entire
words at a time.
The only functional difference from the previous implementation is that
T_ZOMBIE...
jhawthorn (John Hawthorn)
08:42 PM Revision 26fd8d96 (git): Optimize pinned page sorting
Previously we would count the pinned objects on each comparison. Since
sorting is O(N log N) and we calculated this on both left and right
pages on each comparison this resulted in a extra iterations over the
slots.
jhawthorn (John Hawthorn)
08:42 PM Revision 3f4199b0 (git): Use value of use_verifier in gc_compact
jhawthorn (John Hawthorn)
08:04 PM Bug #16362: Unable to build Ruby 2.6.5 on Manjaro Linux 18.1.3
Sorry, I discovered that something was resetting my CFLAGS. Please close this. Marzipanzerfaust (Jeffrey Crochet)
07:45 PM Bug #16362 (Closed): Unable to build Ruby 2.6.5 on Manjaro Linux 18.1.3
Steps to reproduce:
```
$ curl -OL https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.5.tar.gz
$ tar xvf ruby-2.6.5.tar.gz
$ cd ruby-2.6.5
$ ./configure
$ make
```
`./configure` summary:
```
* Installation prefix: /usr/...
Marzipanzerfaust (Jeffrey Crochet)
04:58 PM Revision 144bff43 (git): * 2019-11-23 [ci skip]
git[bot]
04:57 PM Revision 271cb9ac (git): Suppress git error message
`fatal: not a git repository (or any of the parent directories): .git` znz (Kazuhiro NISHIYAMA)
04:57 PM Revision d7f10022 (git): Skip test_validate_gemspec when tarball and git installed too
`git --version` failed as expected when git is not installed,
but unexpectedly pass when git installed and pwd is not in git working directory.
So use `git rev-parse` instead, and it failed when git installed too.
znz (Kazuhiro NISHIYAMA)
02:56 PM Revision 053f78e1 (git): internal.h: Add a prototype declaration for rb_gvar_readonly_setter
emscripten fails to compile ruby due to lack of this. mame (Yusuke Endoh)
02:35 PM Bug #16361 (Closed): TestEnv#test_fetch failure
I am facing following test suite error:
~~~
1) Failure:
TestEnv#test_fetch [/builddir/build/BUILD/ruby-2.7.0-f9d20a1bf1/test/ruby/test_env.rb:123]:
[ruby-core:56062] [Feature #8649].
Expected Exception(KeyError) was raised, but ...
vo.x (Vit Ondruch)
01:43 PM Bug #16359 (Closed): Psych cannot build against system libyaml.
Applied in changeset commit:git|994435d0efa9931d0475de923c4e6c227d03e398.
----------
Revert "Update dependencies"
This reverts commit e1b234148829f65bea9f5ecc7018beb782ea6023.
This allows to build Psych against system libyaml again on...
Anonymous
08:59 AM Bug #16359: Psych cannot build against system libyaml.
The attached patch which reverts the Psych part of [1] appears to fix the issue for me.
[1]: https://github.com/ruby/ruby/commit/e1b234148829f65bea9f5ecc7018beb782ea6023
vo.x (Vit Ondruch)
08:50 AM Bug #16359 (Closed): Psych cannot build against system libyaml.
Just to be sure that we are building Ruby in Fedora against system libyaml library, the first step is to remove bundled libyaml contained in Psych [1]. Now the build started to fail:
~~~
make[2]: Entering directory '/builddir/build/B...
vo.x (Vit Ondruch)
01:42 PM Revision 994435d0 (git): Revert "Update dependencies"
This reverts commit e1b234148829f65bea9f5ecc7018beb782ea6023.
This allows to build Psych against system libyaml again on Fedora.
[Bug #16359]
Vít Ondruch
12:37 PM Misc #16360 (Closed): Enabling IBM PowerPC/Z cases in Travis CI
We added `arm64-linux` and `arm32-linux` cases to Travis CI by [the ticket](https://bugs.ruby-lang.org/issues/16234).
The `arm32-linux` case is going to be stable after [this pull-request](https://github.com/ruby/ruby/pull/2686) will be...
jaruga (Jun Aruga)
10:05 AM Revision 35608760 (git): Add github repo to remove_tag
naruse (Yui NARUSE)
09:42 AM Revision a93d0a4e (git): Check -1 arity for C++
nobu (Nobuyoshi Nakada)
04:58 AM Revision f9d20a1b (git): * 2019-11-22 [ci skip]
git[bot]
04:55 AM Revision 8eb0a9e5 (git): Use jsDelivr instead of raw.githubusercontent.com
Try to fix download error on Solaris CI
https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11x/ruby-master/log/20191121T162422Z.fail.html.gz
```
tool/downloader.rb:243:in `rescue in download': failed to download config.guess (Runti...
znz (Kazuhiro NISHIYAMA)

11/21/2019

04:21 PM Bug #16358 (Third Party's Issue): rails 6.0.1 db:migrate failure on Mac OS 10.13.6 using mysql2 gem
This appears to be a bug in the mysql2 gem, please report it to their bug tracker: https://github.com/brianmario/mysql2/issues
```
/usr/lib/system/libsystem_platform.dylib(_sigtramp+0x1a) [0x7fff6241cf5a]
/Users/nukeguy5/.rbenv/vers...
jeremyevans0 (Jeremy Evans)
11:27 AM Bug #16358 (Third Party's Issue): rails 6.0.1 db:migrate failure on Mac OS 10.13.6 using mysql2 gem
Hello,
I got a segmentation fault while trying to do a migration to a mysql database. I've tried versions 0.4.10 and 0.5.1 of the mysql2 gem. I have included my Gemfile, console output, and Diagnostic Reports file regarding the issue....
devonrudd (Devon Rudd)
03:52 PM Misc #16234: Enabling ARM 64/32-bit cases by Drone CI
> There is one issue on the Travis arm32 environment. I added it as allow_failures.
I sent a PR to fix the issue on the Travis arm32 environment.
https://github.com/ruby/ruby/pull/2686
Let me explain about the issue and why this h...
jaruga (Jun Aruga)
02:10 PM Revision 88d6009d (git): Use more strict regexp to avoid to match naninanirb.rb
znz (Kazuhiro NISHIYAMA)
01:59 PM Feature #16352: Modify Marshal to dump objects larger than 2 GiB
> I don't understand the motivation of this limit and has a great impact in libraries that need to serialize large objects as numeric matrix.
> ...
Shyouhei already pointed out the historic reason. I believe you can quite easily convinc...
shevegen (Robert A. Heiler)
01:54 PM Feature #16356: Method#inspect of argument forwarding
> But names (e.g. literal :* and :&) should be excluded from parameters output anyways, right?
I am not matz, nor among the core team, but I think that the general intention is that the
information displayed here (e. g. via #inspect)...
shevegen (Robert A. Heiler)
06:17 AM Revision ffab1bfd (git): Fixed for old git
nobu (Nobuyoshi Nakada)
01:57 AM Revision 97a5af62 (git): Skip updating revision.h when the revision is unchanged
note: GNU make only. nobu (Nobuyoshi Nakada)
01:32 AM Bug #14241 (Closed): Time.strptime() doesn't support the directive "%W".
Applied in changeset commit:git|a9d4f2d03c847ec1c89dc03a5076a9fa29ffa61f.
----------
Support %U/%u/%W/%w/%V/%g/%G formats in Time.strptime
Most of these formats were documented as supported, but were not
actually supported. Document th...
jeremyevans (Jeremy Evans)
01:32 AM Bug #9836 (Closed): Bad Implementation of Time.strptime
Applied in changeset commit:git|a9d4f2d03c847ec1c89dc03a5076a9fa29ffa61f.
----------
Support %U/%u/%W/%w/%V/%g/%G formats in Time.strptime
Most of these formats were documented as supported, but were not
actually supported. Document th...
jeremyevans (Jeremy Evans)
01:32 AM Revision a9d4f2d0 (git): Support %U/%u/%W/%w/%V/%g/%G formats in Time.strptime
Most of these formats were documented as supported, but were not
actually supported. Document that %g and %G are supported.
If %U/%W is specified without yday and mon/mday are not specified,
then Date.strptime is used to get the appropr...
jeremyevans (Jeremy Evans)

11/20/2019

10:28 PM Revision 8f106212 (git): Add test/reline/test_string_processing.rb
aycabta (aycabta .)
10:14 PM Revision 9131e62f (git): [ruby/reline] Version 0.0.7
https://github.com/ruby/reline/commit/09d370bdc19e62f0a27c2240e19b07963afd922f aycabta (aycabta .)
10:04 PM Revision f30f78e2 (git): Version 0.0.6
aycabta (aycabta .)
10:04 PM Revision e4127cdd (git): Version 1.1.0
aycabta (aycabta .)
10:01 PM Revision 95f20f46 (git): Consider escape sequence to calculate prompt width
aycabta (aycabta .)
08:58 PM Feature #16356: Method#inspect of argument forwarding
@jeremyevans0 thanks for the explanation, I suspected there is something important about missing `:keyrest` there :)
But names (e.g. literal `:*` and `:&`) should be excluded from `parameters` output anyways, right?..
zverok (Victor Shepelev)
08:30 PM Feature #16356: Method#inspect of argument forwarding
zverok (Victor Shepelev) wrote:
> `#inspect` just follows whatever `#parameters` say.
> ...
That's not how `...` is implemented, though. It is implemented so that:
```ruby
def a(...)
b(...)
end
```
means
```ruby
ruby2...
jeremyevans0 (Jeremy Evans)
08:11 PM Feature #16356: Method#inspect of argument forwarding
`#inspect` just follows whatever `#parameters` say.
But I indeed find that `#parameters` return value is kinda weird for this case:
```
./ruby --disable-gems -e "def m(...); end; p method(:m).parameters"
[[:rest, :*], [:block, :...
zverok (Victor Shepelev)
10:58 AM Feature #16356 (Open): Method#inspect of argument forwarding
Current behavior includes `(**, &&)`.
Is this intentional?
```
% ruby -e 'def mf(...);end;p method(:mf)'
#<Method: main.mf(**, &&) -e:1>
```
I added tests of current behavior at https://github.com/ruby/ruby/commit/777973084e599...
znz (Kazuhiro NISHIYAMA)
08:07 PM Feature #16355: Raise NoMatchingPatternError when `expr in pat` doesn't match
Agree, that it could save users from unexpected behavior.
On the other hand, raising an exception drastically limits the application of online pattern matching: it won't be possible to use it with `if ... else ...` or in `select/filte...
palkan (Vladimir Dementyev)
12:58 AM Feature #16355 (Closed): Raise NoMatchingPatternError when `expr in pat` doesn't match
Currently, single line pattern matching(`expr in pat`) returns true or false.
```
[1, 2, 3] in [x, y, z] #=> true (with assigning 1 to x, 2 to y, and 3 to z)
[1, 2, 3] in [1, 2, 4] #=> false
```
I think `expr in pat` should rais...
ktsj (Kazuki Tsujimoto)
07:38 PM Revision 1197a036 (git): Add a proper cast to pass JIT tests on mswin.
https://ci.appveyor.com/project/ruby/ruby/builds/29001248/job/ye80bsrmewdgw294 ko1 (Koichi Sasada)
05:44 PM Revision eee70b41 (git): Add a warning message and --legacy of an alias of --singleline
aycabta (aycabta .)
05:44 PM Revision 9d6f7882 (git): Refactor filter_backtrace
Y. Ushiki
05:44 PM Revision 04d0d93e (git): Fix filter_backtrace for context-mode 0
Y. Ushiki
05:44 PM Revision 91bf3b7a (git): Use singleline/multiline instead of readline/reidline
aycabta (aycabta .)
05:18 PM Revision 9b52bacc (git): Refined inspection of argument forwarding
nobu (Nobuyoshi Nakada)
03:48 PM Revision f835a74d (git): * 2019-11-21 [ci skip]
git[bot]
03:47 PM Revision 6723aa07 (git): Change argument `Proc` to `#call` defined object.
This is the same as the behavior of Readline. osyo (manga osyo)
03:47 PM Revision 81586a4d (git): Add <Home> <End> keys.
osyo (manga osyo)
11:14 AM Bug #16357 (Closed): `Segmentation fault (core dumped)` or `[BUG] object allocation during garbage collection phase`
How to reproduce:
```
+$ tree .
.
├── config.ru
├── Gemfile
└── Gemfile.lock
0 directories, 3 files
+$ cat config.ru
require 'json'
require 'rack'
run ->(env) do
begin
req = Rack::Request.new(env)
JSON.load(...
graywolf (Gray Wolf)
10:17 AM Feature #16101 (Closed): Proc#to_s returns "... file:line" instead of "...@file:line"
https://github.com/seattlerb/minitest/pull/798 is closed. znz (Kazuhiro NISHIYAMA)
10:16 AM Feature #16295: Chainable aliases for String#-@ and String#+@
You can use `String#-@` and `String#+@` in method chain.
```ruby
"foo"[email protected]
[email protected]?
```
znz (Kazuhiro NISHIYAMA)
08:57 AM Revision 77797308 (git): Add tests of argument forwarding's parameters and inspect
znz (Kazuhiro NISHIYAMA)
08:55 AM Revision 633625a0 (git): Mintty on Cygwin isn't a kind of command prompt, can process ANSI escape code
aycabta (aycabta .)
08:21 AM Revision ae818b58 (git): add a NEWS entry for Method#inspect
ko1 (Koichi Sasada)
07:28 AM Revision fc22b0ea (git): Always forward declaration is needed
`rb_resolve_refined_method_callable` is referenced in
`refine_sym_proc_call`, even when pre-compiling mjit header on
mswin.
nobu (Nobuyoshi Nakada)
07:28 AM Revision 83900528 (git): Turn C4047 warning into error
Warned at making precompiled header on mswin.
```
building rb_mjit_header-2.7.0.pch
vm.c
d:\a\ruby\ruby\src\vm_args.c(1117): warning C4047: '=': 'const rb_callable_method_entry_t *' differs in levels of indirection from 'int'
rb_mjit_he...
nobu (Nobuyoshi Nakada)
06:54 AM Revision 7608baf9 (git): re-add function prototypes
This commit reverts a part of 0e8219f591f3f17cb7ee361e8a60dbef08145883
which broke icc. See also https://rubyci.org/logs/rubyci.s3.amazonaws.com/icc-x64/ruby-master/log/20191120T010006Z.fail.html.gz
shyouhei (Shyouhei Urabe)
06:37 AM Revision f90b22e3 (git): Revert the line for nextafter.c for FreeBSD make
nobu (Nobuyoshi Nakada)
05:04 AM Feature #14423: Enumerator from single object
This one can be closed (`Enumerator#produce` was implemented in 2.7) zverok (Victor Shepelev)
05:00 AM Misc #14581: Update JSON docs
@hsbt
>> what's the maintenance status of the upstream?
> ...
I just noticed my documentation patches [#349](https://github.com/flori/json/pull/349) and [#347](https://github.com/flori/json/pull/347) and clarification request [#348...
zverok (Victor Shepelev)
04:43 AM Feature #14145: Proposal: Better Method#inspect
merged. Thank you! ko1 (Koichi Sasada)
12:41 AM Feature #14145: Proposal: Better Method#inspect
@ko1 I've updated the PR to use `...` and `_`, and rebased it from recent `master`. zverok (Victor Shepelev)
04:42 AM Revision 50cc9341 (git): Update representation (discussed on ruby tracker)
zverok (Victor Shepelev)
04:42 AM Revision baf482ba (git): Fix test_module.rb
zverok (Victor Shepelev)
04:42 AM Revision 4b583cff (git): Method parameters inspect
Example:
def m(a, b=nil, *c, d:, e: nil, **rest, &block)
end
p method(:m)
#=> #<Method: m(a, b=<default>, *c, d:, e: <default>, **rest, &block) ...>
zverok (Victor Shepelev)
02:05 AM Feature #16352: Modify Marshal to dump objects larger than 2 GiB
This behaviour has been there since the beginning. No ruby version since 0.49 has successfully dumped such long string. Same thing happens for a very big bignum, a very long array, a class that has very long classpath (Q::W::E::R::...)... shyouhei (Shyouhei Urabe)
01:04 AM Revision da0d7211 (git): Fix indent of a line when a newline is inserted to the next
aycabta (aycabta .)
12:58 AM Revision 9306602f (git): Replace typo "bock" with "block"
aycabta (aycabta .)
12:56 AM Revision 19a310b0 (git): A preceding token of "do" of block has EXPR_CMDARG or EXPR_ENDFN
meth do # the preceding token of "do" has EXPR_CMDARG
end
meth() do # the preceding token of "do" has EXPR_ENDFN
end
aycabta (aycabta .)

11/19/2019

11:39 PM Revision 49b4507f (git): Number sign comment (# bla bla) is a kind of newline character
aycabta (aycabta .)
11:19 PM Revision bc0da8e3 (git): Generate history file path correctly when $HOME/.irbrc doesn't exist
aycabta (aycabta .)
09:50 PM Bug #16354 (Closed): Memory corruption in Enumerable#reverse_each
Applied in changeset commit:git|ff41663403d3eb76d95f465cb94e14d2faaa04d1.
----------
Fix memory corruption in Enumerable#reverse_each [ruby-dev:50867] [Bug #16354]
ktsj (Kazuki Tsujimoto)
09:34 PM Bug #16354 (Closed): Memory corruption in Enumerable#reverse_each
Enumerable#reverse_eachのブロック呼び出し中に、対象のEnumerableをto_aしたものを捕まえてサイズを変更するとSEGVすることがあります。
```
$ ruby -e '(0...1000).reverse_each {|i| i.inspect; ObjectSpace.each_object(Array) {|a| a.clear if a.length == 1000 }}'
-e:1: [BUG] Segmentatio...
ktsj (Kazuki Tsujimoto)
09:35 PM Revision ff416634 (git): Fix memory corruption in Enumerable#reverse_each [ruby-dev:50867] [Bug #16354]
ktsj (Kazuki Tsujimoto)
06:42 PM Feature #14145: Proposal: Better Method#inspect
@ko1 I happened to sit next to Matz on speakers' lunch at RubyConf and asked him (just in case). He agreed to both of your proposals, so I'll change it in a day or two in my patch :)
Thank you!
zverok (Victor Shepelev)
09:05 AM Feature #14145: Proposal: Better Method#inspect
Great patch!
I think `<default>` is too long. How about `...`?
```
def foo9 a, b, o1=nil, *args, p1, k1:nil, rk1:, **kw, &bl
end
p method(:foo9)
#<Method: main.foo9(a, b, o1=..., *args, p1, rk1:, k1:..., **kw, &bl) /home/ko1/src/...
ko1 (Koichi Sasada)
03:56 PM Revision 61131edb (git): Revert "[ripper] Quoted label without expression must be a local variable"
This reverts commit 0b8c73aa65add5c57b46b0cfdf4e661508802172, which
seems breaking RVALUE consistency check.
nobu (Nobuyoshi Nakada)
03:07 PM Revision f3c98035 (git): * 2019-11-20 [ci skip]
git[bot]
02:53 PM Revision 2439948b (git): Avoid needless object allocation
ktsj (Kazuki Tsujimoto)
08:36 AM Revision 822d7ae3 (git): Add a test
and rename from b.rb
[ruby-core:95055] [Bug #16177]
znz (Kazuhiro NISHIYAMA)
08:18 AM Revision 0b8c73aa (git): [ripper] Quoted label without expression must be a local variable
nobu (Nobuyoshi Nakada)
08:03 AM Misc #16333 (Closed): DevelopersMeeting20191112Online to confirm Ruby 2.7 spec
Sorry, we can not write enough discussion log.
At least for me, real time English logging is hard.
I hope enough information are added for each ticket.
Good idea or your help is welcome.
ko1 (Koichi Sasada)
08:01 AM Bug #16177: Some `*.rb` files on builddir cause Segmentation fault
I fixed this issue, but no test. can anyone write it? ko1 (Koichi Sasada)
08:01 AM Bug #16177 (Closed): Some `*.rb` files on builddir cause Segmentation fault
Applied in changeset commit:git|a5fe08fdd9d11f12a6837291ee588ab933a823b6.
----------
care about TAG_FATAL.
TAG_FATAL represents interpreter closing state and ec->errinfo
contains FIXNUM (eTerminateSignal, etc). If we need to change the...
ko1 (Koichi Sasada)
07:56 AM Revision a5fe08fd (git): care about TAG_FATAL.
TAG_FATAL represents interpreter closing state and ec->errinfo
contains FIXNUM (eTerminateSignal, etc). If we need to change the
state, then errinfo is also changed because TAG_RAISE assumes that
ec->errinfo contains a Exception object.
...
ko1 (Koichi Sasada)
06:37 AM Bug #16353 (Closed): Backport 2a477e0e444de6344048101466fb9189b9defddc
Please backport 2a477e0e444de6344048101466fb9189b9defddc to ruby_2_5.
It may avoid occasional errors on macos.
https://github.com/ruby/actions/runs/309307228#step:17:201
```
1) Error:
FTPTest#test_retrbinary_read_timeout_not_exc...
znz (Kazuhiro NISHIYAMA)
06:11 AM Revision c53aec73 (git): Configure static extensions only if in charge
Get rid of races in parallel configuration when using the
ext/Setup file.
nobu (Nobuyoshi Nakada)
04:56 AM Revision f6239ce0 (git): peep-hole optimize VM instructions
Some minor optimizations.
Calculating -------------------------------------
ours trunk
vm2_regexp 8.479M 8.346M i/s - 6.000M times in 0.707612s 0.718916s
vm2_regexp_invert ...
shyouhei (Shyouhei Urabe)
04:27 AM Feature #16276: For consideration: "private do...end" / "protected do...end"
Dan0042 (Daniel DeLorme) wrote:
> > - Possibility #3: renders SyntaxError. This requires a massive rewrite of our parser. Theoretically possible but not in practice.
> ...
It may be possible to know at runtime whether a literal block...
jeremyevans0 (Jeremy Evans)
04:06 AM Revision 75e8dd58 (git): Remove TEST_BUNDLED_GEMS_ALLOW_FAILURES
https://github.com/seattlerb/minitest/pull/798 is closed znz (Kazuhiro NISHIYAMA)
03:36 AM Revision 0e8219f5 (git): make functions static
These functions are used from within a compilation unit so we can
make them static, for better binary size. This changeset reduces
the size of generated ruby binary from 26,590,128 bytes to
26,584,472 bytes on my macihne.
shyouhei (Shyouhei Urabe)
02:40 AM Revision 78e266da (git): Clarify documentation for `InstructionSequence#compile`.
We incorrectly assumed that the `file` argument should be the file name and
caused https://github.com/scoutapp/scout_apm_ruby/issues/307 because
exception backtrace did not contain correct path. This documentation
clarifies the role of t...
Samuel Williams
 

Also available in: Atom