Project

General

Profile

Activity

From 01/02/2020 to 01/08/2020

01/08/2020

11:53 PM Bug #16486: Hash.ruby2_keywords?(hash) and Hash.ruby2_keywords!(hash)
A memo for the dev-meeting discussion
* What we should provide as `Hash.ruby2_keywords!`? mutating version, non-mutating version, or both?
* Should it raise a FrozenError if a hash is frozen?
mame (Yusuke Endoh)
11:19 AM Bug #16486: Hash.ruby2_keywords?(hash) and Hash.ruby2_keywords!(hash)
@Dan0042 Very good point, I agree there should be no way to change that flag inplace, since there isn't currently (`**h` will copy Hash).
Knowing that the flag can never change for a given Hash instance is a useful guarantee, e.g., when...
Eregon (Benoit Daloze)
11:24 PM Bug #16488: 2.7 spews warnings about net/imap
I've pushed https://github.com/ruby/ruby/commit/65c2c75e162ebc8c4b35b0823967eeb132c00749. Could you please check if the fix works for your program? Thanks! mame (Yusuke Endoh)
11:23 PM Bug #16488 (Closed): 2.7 spews warnings about net/imap
Applied in changeset commit:git|65c2c75e162ebc8c4b35b0823967eeb132c00749.
----------
lib/net/imap.rb: use `&blk` instead of Kernel#proc with no block
[Bug #16488]
mame (Yusuke Endoh)
10:41 PM Bug #16488 (Closed): 2.7 spews warnings about net/imap
I just upgraded from 2.6.5 to 2.7.0. Some of my scripts are now emitting warnings that weren't there before. Eg., #16469.
Specifically in this report I want to complain that ruby 2.7 is issuing warnings about it's own net/imap libra...
chdiza (Charles Diza)
11:21 PM Revision 65c2c75e (git): lib/net/imap.rb: use `&blk` instead of Kernel#proc with no block
[Bug #16488] mame (Yusuke Endoh)
11:20 PM Misc #16454: DevelopersMeeting20200116Japan
alanwu (Alan Wu) wrote:
> * [Misc #16487] Potential for SIMD usage in ruby-core (alanwu)
> ...
I'm unsure what topic should be discussed. Do you want us to discuss not the issue itself but a policy for feature request? I think it wou...
mame (Yusuke Endoh)
10:47 PM Misc #16454: DevelopersMeeting20200116Japan
* [Misc #16487] Potential for SIMD usage in ruby-core (alanwu)
* It would be great if we can come up with a stance on this and document it. It doesn't have to be permanent; we can revise it later, but I think the policy can be very he...
alanwu (Alan Wu)
12:59 PM Misc #16454: DevelopersMeeting20200116Japan
* [Feature #16463] Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1 (eregon)
* This would be a way to make transition to Ruby 2.7 a lot simpler. Advantages are: easier migration (no explicit `ruby2_key...
Eregon (Benoit Daloze)
10:06 PM Bug #16361 (Closed): TestEnv#test_fetch failure
Okay, thanks! mame (Yusuke Endoh)
03:35 PM Bug #16361: TestEnv#test_fetch failure
The test case was relaxed by [1] similarly to my initial proposal. If this is desired fix and not just workaround, then this could be closed.
[1]: https://github.com/ruby/ruby/commit/9914d6e992a69587e6d43ba7eaa6cdda9f178f8e
vo.x (Vit Ondruch)
08:23 PM Bug #9573: descendants of a module don't gain its future ancestors, but descendants of a class, do
Attached is a work-in-progress patch that includes similar support for `Module#prepend`. It does work in terms of `Module#prepend` affecting classes/modules that have already included the receiver, but it causes failures in the tests th... jeremyevans0 (Jeremy Evans)
07:53 PM Revision 1d09acd8 (git): [DOC] Improve docs for String#match
Fix invalid code to make it syntax highlighted; other small fixes. stomar (Marcus Stollsteimer)
07:51 PM Revision 841a945d (git): * 2020-01-09 [ci skip]
git[bot]
07:47 PM Revision f74021e1 (git): Improve docs for String#=~
Move existing example to the corresponding paragraph and
add an example for `string =~ regexp` vs. `regexp =~ string`;
avoid using the receiver's identifier from the call-seq
because it does not appear in rendered HTML docs;
mention depr...
stomar (Marcus Stollsteimer)
04:13 PM Misc #16487: Potential for SIMD usage in ruby-core
The topic is
* portability between architectures
* portability in a architecture
* maintenanceability
## Portability between architectures
Though some compilers provides intrinsics for SIMD instructions, introducing SIMD needs m...
naruse (Yui NARUSE)
02:22 PM Misc #16487: Potential for SIMD usage in ruby-core
SIMD Everywhere seem very interesting, but from a quick check it seems that all the fallbacks are applied during compilation, which means you'd have to compile ruby yourself to get the benefits.
If we want most users to benefits from ...
byroot (Jean Boussier)
10:58 AM Misc #16487: Potential for SIMD usage in ruby-core
> The downside of SIMD instructions is that they are not universally available.
So it means maintaining several versions of the same code, and switching them either statically or dynamically.
There is a library simde: SIMD Everywhere...
jaruga (Jun Aruga)
09:48 AM Misc #16487 (Open): Potential for SIMD usage in ruby-core
### Context
There are several ruby core methods that could be optimized with the use of SIMD instructions.
I experimented a bit on `coderange_scan` https://github.com/Shopify/ruby/pull/2, and Pavel Rosický experimented on `String#s...
byroot (Jean Boussier)
03:58 PM Bug #14175 (Closed): TestResolvMDNS#test_mdns_each_address fails
This was very likely resolved via #14340 vo.x (Vit Ondruch)
09:35 AM Revision 23218d4a (git): config.status should be newer than config.cache if exists
nobu (Nobuyoshi Nakada)
09:14 AM Revision 5b06dd3a (git): Hoisted out call_default_proc
nobu (Nobuyoshi Nakada)
09:13 AM Revision b8fa1807 (git): Adjusted indents [ci skip]
nobu (Nobuyoshi Nakada)
09:09 AM Revision 592d7cee (git): Speeds up fallback to Hash#default_proc in rb_hash_aref by removing a method call
methodmissing (Lourens Naudé)
09:00 AM Revision 13f4f07f (git): Merge bundler-2.1.4
hsbt (Hiroshi SHIBATA)
03:30 AM Revision f518b608 (git): * 2020-01-08 [ci skip]
git[bot]
03:26 AM Revision beb59c3b (git): Add GC guard
Try to fix infrequent error:
https://rubyci.org/logs/rubyci.s3.amazonaws.com/solaris10-sunc/ruby-master/log/20200108T010004Z.fail.html.gz
```
1) Error:
DRbTests::TestDRbSSLCore#test_02_basic_object:
RangeError: "348" is recycled objec...
znz (Kazuhiro NISHIYAMA)
12:38 AM Misc #16483: How about stopping new *.tar.bz2 releases?
If bz2 removal goes forward, it might be nice to deprecate now but not remove until later. It'd be ideal to have working versions of RVM, ruby-install and ruby-build in wide distribution before bz2 goes away. If we change the tools now b... shan (Shannon Skipper)

01/07/2020

05:57 PM Bug #16474 (Feedback): [ASYNC BUG]
Unfortunately, this bug report does not provide enough information to diagnose this issue. If you can provide a reproducible example of this problem, that would be helpful.
You may want to try using a native Windows Ruby instead of u...
jeremyevans0 (Jeremy Evans)
05:53 PM Bug #16469: Wrong warning message at `URI.encode` and `URI.decode`
We can probably use `__callee__` instead of hard coding the method names, that should fix this issue:
```diff
diff --git a/lib/uri/common.rb b/lib/uri/common.rb
index b886923c9e..e3ed405857 100644
--- a/lib/uri/common.rb
+++ b/lib...
jeremyevans0 (Jeremy Evans)
04:44 PM Bug #9573: descendants of a module don't gain its future ancestors, but descendants of a class, do
Attached is a patch that implements support for this for `Module#include`, but not `Module#prepend`. It passes `make check`. I'm not sure if we want to support this for `Module#include` but not `Module#prepend`, as it would make them i... jeremyevans0 (Jeremy Evans)
03:37 PM Feature #16476: Socket.getaddrinfo cannot be interrupted by Timeout.timeout
+1
This has been an issue for a very long time, and it's often been handled by installing an asynchronous DNS resolver gem, but it would be nice if it "just worked". If it's really as simple as using `getaddrinfo_a`, that sounds great.
Dan0042 (Daniel DeLorme)
02:08 PM Bug #16486: Hash.ruby2_keywords?(hash) and Hash.ruby2_keywords!(hash)
I would like to recommend this be a non-mutating method. Instead of `Hash.ruby2_keywords!(hash)` it should be something like `hash = Hash.as_ruby2_keywords(hash)` to prevent misuse. Dan0042 (Daniel DeLorme)
01:23 PM Bug #11014: String#partition doesn't return correct result on zero-width match
IIRC this has to do with zero-length matches being ignored in certain conditions, in particular having to do with repeating/multiple matches.
if `"foo".split(/\A/)` was `["","foo"]`
then `"foo".split(//)` would have to be `["","f","o...
Dan0042 (Daniel DeLorme)
10:04 AM Bug #11014: String#partition doesn't return correct result on zero-width match
The problem is not just for `partition`, but also involves `split` and `scan`.
I think your regex `/^=*/` is unnecessarily complex. Your point can be made by `/\A/`, which is simpler.
I tried with four regex patterns `/\A/`, `/\A.*...
sawa (Tsuyoshi Sawada)
10:04 AM Bug #16472 (Closed): OStruct documentation is lost
znz (Kazuhiro NISHIYAMA)
07:10 AM Misc #16483: How about stopping new *.tar.bz2 releases?
RVM also primarily uses bz2. shan (Shannon Skipper)
04:38 AM Misc #16483: How about stopping new *.tar.bz2 releases?
I prefer to remove bz2 from release packages. I can change to use gz from bz2 at ruby-build. hsbt (Hiroshi SHIBATA)
03:23 AM Revision f132825f (git): Disable IPv6 on Travis s390x case. (#2819)
This fixes following error that sometimes happens once in a few times
on Travis s390x environment.
```
$ tool/travis_retry.sh sudo -E apt-add-repository -y "ppa:ubuntu-toolchain-r/test"
+ sudo -E apt-add-repository -y ppa:ubuntu-toolcha...
Jun Aruga
02:18 AM Bug #16367 (Third Party's Issue): stdin not support ibm866 encoding for windows
Given that https://github.com/piotrmurach/tty-prompt/issues/115#issuecomment-557919189 says that the `tty-prompt` library uses a native C API, and this issue can only be reproduced on Windows, I strongly suspect this is an issue in `tty-... duerst (Martin Dürst)
01:39 AM Feature #16461: Proc#using
Eregon (Benoit Daloze) wrote:
> shugo (Shugo Maeda) wrote:
> ...
No, you can't have `/` be the original one once `block.using(DivRefinement)` is called.
I don't come up with use cases using conflicting refinements in the
same block...
shugo (Shugo Maeda)

01/06/2020

11:27 PM Bug #16486 (Assigned): Hash.ruby2_keywords?(hash) and Hash.ruby2_keywords!(hash)
@jeremyevans0 @eregon Thanks, I put this on the next dev meeting. mame (Yusuke Endoh)
06:10 PM Bug #16486: Hash.ruby2_keywords?(hash) and Hash.ruby2_keywords!(hash)
+1, sounds good to me as class methods.
Could also be under ExperimentalFeatures, but not a great fit for this.
Eregon (Benoit Daloze)
02:53 PM Bug #16486: Hash.ruby2_keywords?(hash) and Hash.ruby2_keywords!(hash)
I'm fine with adding these methods, and I agree that making them class methods instead of instance methods discourages casual use. jeremyevans0 (Jeremy Evans)
09:46 AM Bug #16486 (Closed): Hash.ruby2_keywords?(hash) and Hash.ruby2_keywords!(hash)
Hash's ruby2_keywords flag is designed to be as implicit as possible, but unfortunately, sometimes we need to handle the flag explicitly. In ActiveJob, the whole arguments are serialized and deserialized, and the process removes the fla... mame (Yusuke Endoh)
11:27 PM Misc #16454: DevelopersMeeting20200116Japan
* [Bug #16486] `Hash.ruby2_keywords?(hash)` and `Hash.ruby2_keywords!(hash)` (mame)
* It turned out that we sometimes need to deal with ruby2_keywords flag explicitly. I'd like to add the feature as class methods. (@naruse says that b...
mame (Yusuke Endoh)
08:50 PM Feature #8215: Support accessing Fiber-locals and backtraces for a Fiber
@eregon I agree with your points. I respect that you've studied a lot in your thesis so ultimately I'll defer to your judgement. But let me explain a bit more.
The reason for expanding the `Fiber#` interface is so that tools like `asy...
ioquatix (Samuel Williams)
06:22 PM Feature #8215: Support accessing Fiber-locals and backtraces for a Fiber
`Fiber#[]` and `Fiber#[]=` sounds fine, but what if somebody does:
`some_fiber = Fiber.new { ... }; Thread.new { some_fiber[:fiber_local] }`?
I think that should raise or not be possible.
If it would return the value, it would imp...
Eregon (Benoit Daloze)
08:41 PM Revision b0bf654c (git): always expand ivar arrays to max width
If the instance variable table hasn't been "expanded", allocate the
maximum size of the ivar table. This operates under the assumption that
most objects will eventually expand their ivar array to the maximum
width anyway, so we may as w...
tenderlovemaking (Aaron Patterson)
06:15 PM Misc #16483: How about stopping new *.tar.bz2 releases?
`ruby-install` also uses `.tar.bz2` currently, so changing that would mean that existing ruby-install releases (and installations) would no longer work:
https://github.com/postmodern/ruby-install/blob/402cbdeaffb99d105ecd9b93c75828b32f0...
Eregon (Benoit Daloze)
08:50 AM Misc #16483: How about stopping new *.tar.bz2 releases?
I like it. I’m biased though since I’m a sucker for opportunities to simplify like this one.
If we do go ahead, we should maybe announce it one release in advance to minimize impact.
alanwu (Alan Wu)
07:59 AM Misc #16483: How about stopping new *.tar.bz2 releases?
I don't mind as in I don't need .tar.bz2.
Personally I use .tar.xz; all local archives of source files that I
keep are in .tar.xz format.
(Note that github offers either git clone, or .zip, so .tar.bz2 is
probably becoming more r...
shevegen (Robert A. Heiler)
07:02 AM Misc #16483 (Closed): How about stopping new *.tar.bz2 releases?
Current ruby releases generate `*.tar.gz`, `*.tar.bz2`, `*.tar.xz`, and `*.zip`.
But I think we can stop generating `*.tar.bz2`.
I think `*.tar.bz2` are less merit.
For better size, `*.tar.xz` exist.
For better compatibility, `*.ta...
znz (Kazuhiro NISHIYAMA)
05:40 PM Misc #16360: Enabling IBM PowerPC/Z cases in Travis CI
> Later I will send the pull-request to disable IPv6 on only Travis s390x-linux case.
I sent the pull-request to fix the s390x issue now.
Disable IPv6 on Travis s390x case.
https://github.com/ruby/ruby/pull/2819
jaruga (Jun Aruga)
04:40 PM Revision 95d23f36 (git): * 2020-01-07 [ci skip]
git[bot]
04:33 PM Revision e92bebb0 (git): Suppress some warnings
```
.../ruby/test/ruby/test_keyword.rb:3509: warning: assigned but unused variable - bug8993
.../ruby/test/ruby/test_object.rb:83: warning: assigned but unused variable - f
.../ruby/test/ruby/test_object.rb:95: warning: method redefined;...
mame (Yusuke Endoh)
03:27 PM Feature #15998 (Closed): Allow String#-@ to deduplicate tainted string, but return an untainted one
jeremyevans0 (Jeremy Evans)
12:00 PM Feature #15998: Allow String#-@ to deduplicate tainted string, but return an untainted one
Tainting was made a noop in 2.7.0, this issue can now be closed. byroot (Jean Boussier)
12:50 PM Revision 7392083c (git): Support history-size in .inputrc correctly
aycabta (aycabta .)
09:52 AM Revision e44e3716 (git): Slightly change the job wording [ci skip]
mame-san said it's weird k0kubun (Takashi Kokubun)
09:45 AM Revision e3aca289 (git): Support running Actions on a fork
Since 8c9450e7b875db846b19cc631af0d7fee66db5c6, we increased the chance
to run GitHub Actions on a fork, as we usually use a topic branch
instead of master when filing a pull request.
This patch makes it possible to reuse the same GitHu...
k0kubun (Takashi Kokubun)
09:42 AM Revision 8cd292f5 (git): Directly refer to GitHub events
instead of unnecessarily defining env vars k0kubun (Takashi Kokubun)
08:03 AM Feature #16484: Remove xmlrpc and net-telnet from bundled gems
I don't think I have used either one of them so I may not be the primary
target audience either way.
I only remember having used telnet in the 1990s to connect to oldschool
text MUDs.:D But I guess for ruby in general there is very...
shevegen (Robert A. Heiler)
07:06 AM Feature #16484 (Closed): Remove xmlrpc and net-telnet from bundled gems
I added net-telnet(2015) and xmlrpc(2016) to bundled gems. They are the old protocol in 2020.
Should we remove them at Ruby 3.0?
The users can install them from rubygems manually.
hsbt (Hiroshi SHIBATA)
07:23 AM Feature #16485 (Closed): Make rexml, rss to the bundled gems
I discussed about promote(demote?) rexml and rss to the bundled gems with @kou
Pros: @kou can handle to maintain and release them conveniently.
Cons: The users need to add `rexml` to their `Gemfile` after Ruby 2.8(3.0)
hsbt (Hiroshi SHIBATA)
06:22 AM Misc #16447 (Closed): Merge JSON doc updates?
Applied at the following commits.
* https://github.com/ruby/ruby/commit/2e5ef30cb9f56e5a7a8139e0f1d75bbcf5ee8362
* https://github.com/ruby/ruby/commit/41ef6df8c93039aa1cd4a37e380a13cbfbc4d62f
* https://github.com/ruby/ruby/commit/7f...
hsbt (Hiroshi SHIBATA)
06:18 AM Bug #14160 (Closed): JSON#generate documentation wrong/misleading
Applied at https://github.com/ruby/ruby/commit/1658e6b5db0380c39d2423281e10acc5b6c6a8bd hsbt (Hiroshi SHIBATA)
06:13 AM Revision 7f1e3a7b (git): [flori/json] Add :nodoc: for GeneratorMethods
https://github.com/flori/json/commit/2f3f44c180 zverok (Victor Shepelev)
06:13 AM Revision 41ef6df8 (git): [flori/json] Fix examples syntax
https://github.com/flori/json/commit/3845491d92 zverok (Victor Shepelev)
06:13 AM Revision 2e5ef30c (git): [flori/json] Enchance generic JSON and #generate docs
https://github.com/flori/json/commit/4ede0a7d19 zverok (Victor Shepelev)
06:09 AM Revision 1658e6b5 (git): [flori/json] Remove invalid JSON.generate description from JSON module rdoc
This text used to be true in older versions of json, but has not
been true for a number of years (since json version 2 I think).
https://github.com/flori/json/commit/373b633f38
jeremyevans (Jeremy Evans)
06:06 AM Revision 33d86655 (git): support RUBY_ON_BUG envval on assert failure.
Check RUBY_ON_BUG env val also on rb_assert_failure(). ko1 (Koichi Sasada)
03:47 AM Bug #16459: <internal:trace_point>:346: [BUG] Segmentation fault at 0x0000000000000008
Note that 2.6 (.4-?) has same issue. ko1 (Koichi Sasada)
02:41 AM Bug #16459 (Closed): <internal:trace_point>:346: [BUG] Segmentation fault at 0x0000000000000008
Applied in changeset commit:git|ce072fe5689184cba5e4a86968367c525cb22a72.
----------
script_compiled event on compile error.
script_compiled event for TracePoint should not be invoked on
compile error (SyntaxError) because it is not "c...
ko1 (Koichi Sasada)
02:36 AM Revision ce072fe5 (git): script_compiled event on compile error.
script_compiled event for TracePoint should not be invoked on
compile error (SyntaxError) because it is not "compiled".
[Bug #16459]
ko1 (Koichi Sasada)
01:03 AM Bug #16480 (Assigned): Ruby 2.7, C++, and rb_define_method compilation error
It indeed seems to be a bug. For C extensions, that arity argument can be a variable. There is a fallback code. But for C++, there is no way to accept non-constexpr arities. This is a problem.
@nobu Can you provide us a workaround...
shyouhei (Shyouhei Urabe)

01/05/2020

11:04 PM Bug #16459: <internal:trace_point>:346: [BUG] Segmentation fault at 0x0000000000000008
Yes, using 2.7.0:
```
> git clone https://github.com/ioquatix/covered
> ...
Covered::BriefSummary
can generate partial summary
Covered::Cache
will mark lines after flushing
Covered::Files
#mark
can mark lines
...
ioquatix (Samuel Williams)
10:51 PM Feature #8215: Support accessing Fiber-locals and backtraces for a Fiber
@matz I agree with adding all three APIs, `Fiber#[]`, `Fiber#[]=` and `Fiber#backtrace`. Can you let me know if you are happy with these additions? ioquatix (Samuel Williams)
10:39 PM Misc #16481 (Third Party's Issue): Version numbering in RDoc is not consistent
Can you report this to the administrator of https://ruby-doc.org/? It's NOT the official site.
hsbt (Hiroshi SHIBATA)
05:52 PM Feature #16482 (Closed): net/http should support TLS connection to proxies
Right now net/http forces the user to use a clear text connection to a proxy. This massively reduces security as the user is forced to sent proxy authentication data in the clear.
A proxy is specified in net/http like this:
```
pr...
xformer (Frank Schwab)
04:24 PM Revision 46845d03 (git): * 2020-01-06 [ci skip]
git[bot]
04:20 PM Revision 439e1ccd (git): Complete indented and quoted string correctly
def foo
''.upca[TAB]
This will be completed to be:
def foo
''.upcase
The indent was gone. This commit fixes the bug.
aycabta (aycabta .)
04:06 PM Feature #16166: Remove exceptional treatment of *foo when it is the sole block parameter
[The log for developers' meeting 20191128](https://docs.google.com/document/d/1AZ74HXEedKksJwhEUPIlnRxAUgchndZPZYAKjGPMsFI/edit#) says that Matz hoped this to be done in 2.7. However, Ruby 2.7 still returns this:
```ruby
instance_exe...
sawa (Tsuyoshi Sawada)
01:48 PM Revision da028a4f (git): Rescue EOFError
If C-d is pressed before IRB is ready, IRB crashes because EOFError occurs. aycabta (aycabta .)
05:35 AM Revision 54fd50c9 (git): Fix OpenStructDocumentation
In https://github.com/ruby/ruby/commit/9be3295d53b6fd9f8a3ad8157aa0655b1976d8ac,
OpenStruct's documentation stopped to be rendered by RDoc
(there should be no additional code between documentation
comment and documented class). Fixing this.
zverok (Victor Shepelev)
03:26 AM Revision c7af1e43 (git): Remove unused tmp_buffer in class.c
ref 44a164c26f5371519636585d8ba7aa59f489442e and beae6cbf0fd8b6619e5212552de98022d4c4d4d4 znz (Kazuhiro NISHIYAMA)
03:26 AM Revision 787c6d59 (git): Remove unused last_idx in class.c
ref c7f01d889becbeffc4254e1b0b7faecb80ea3f3e and beae6cbf0fd8b6619e5212552de98022d4c4d4d4 znz (Kazuhiro NISHIYAMA)
02:39 AM Revision 5b0c3754 (git): parse.y: fix a wrong sizeof argument for ruby_sized_xfree
mame (Yusuke Endoh)
02:39 AM Revision 44a164c2 (git): include/ruby/ruby.h: remove a variable tmp_buffer as it does not change
It is no longer used due to beae6cbf0fd8b6619e5212552de98022d4c4d4d4.
Coverity Scan found this.
mame (Yusuke Endoh)
02:39 AM Revision c7f01d88 (git): include/ruby/ruby.h: remove last_idx that is no longer variable
Due to beae6cbf0fd8b6619e5212552de98022d4c4d4d4, the variable last_idx
is no longer changed and always -1. This change simplifies the code by
removing the variable. Coverity Scan pointed out this.
mame (Yusuke Endoh)
02:28 AM Revision 9b928fa4 (git): [ruby/reline] Sort completion list
#### Legacy mode:
```console
$ irb --legacy
irb(main):001:0> l[TAB][TAB]
lambda load local_variables loop
```
#### Before this patch:
```console
$ irb
irb(main):001:0> l[TAB][TAB]
local_variabl...
shuujii (Shuji KOBAYASHI)
02:27 AM Bug #16477 (Closed): readline-ext repository is huge
Sorry, those tags ware mixed into the ruby/readline-ext repository when I cherry-pick-ed from ruby/ruby. I removed it. aycabta (aycabta .)
02:05 AM Feature #16468: Switch to Miller-Rabin for Prime.prime?
On second thought, I think Marc is right, we can't ruin someones day with a composite without a warning that theres a non-zero probability of it being incorrect so I will update...... steveb3210 (Stephen Blackstone)
01:41 AM Feature #16468: Switch to Miller-Rabin for Prime.prime?
It can fall back to APR-CL primality test when Miller-Rabin does not work. In my personal opinion, it would be best to keep prime.rb simple because it is a hobby library.
You may be interested in my gem: https://github.com/mame/faste...
mame (Yusuke Endoh)
01:23 AM Feature #16468: Switch to Miller-Rabin for Prime.prime?
marcandre (Marc-Andre Lafortune) wrote:
> Interesting. We might as well always return the correct result, i.e. apply the fast algorithm for integers < 318,665,857,834,031,151,167,461 and the slow algorithm for larger ones. Would you car...
steveb3210 (Stephen Blackstone)
12:58 AM Feature #16029: Expose fstring related APIs to C-extensions
@byroot, yeah.
`rb_funcall(str, rb_intern("-@"))` works and is backwards compatible, but I entirely agree that it makes sense to add an official API as well that does not depend on dynamic invocation.
sam.saffron (Sam Saffron)

01/04/2020

11:09 PM Feature #16468: Switch to Miller-Rabin for Prime.prime?
Interesting. We might as well always return the correct result, i.e. apply the fast algorithm for integers < 318,665,857,834,031,151,167,461 and the slow algorithm for larger ones. Would you care to modify your patch? marcandre (Marc-Andre Lafortune)
07:19 PM Feature #16468: Switch to Miller-Rabin for Prime.prime?
Attached is an implementation against master.... steveb3210 (Stephen Blackstone)
08:34 PM Feature #9587 (Closed): Integer#times with optional starting value
Eregon (Benoit Daloze)
05:28 PM Feature #9587: Integer#times with optional starting value
I now think that writing as below is good enough:
```ruby
6.times.with_index(1){|_, i| puts "Chapter#{i}"}
```
I withdraw this proposal. Please close it.
sawa (Tsuyoshi Sawada)
08:30 PM Feature #10240 (Rejected): `String#to_a`
Eregon (Benoit Daloze)
06:21 PM Feature #10240: `String#to_a`
I do not feel this proposal to be natural any more. Please close this issue. sawa (Tsuyoshi Sawada)
08:29 PM Feature #10797 (Closed): `inherit` parameter for `..._defined?` methods in Module
Eregon (Benoit Daloze)
06:48 PM Feature #10797: `inherit` parameter for `..._defined?` methods in Module
This proposal was adopted in Ruby 2.6 (and is mentioned in the context of #14944, which is actually a duplicate of the current issue). Please close this issue. sawa (Tsuyoshi Sawada)
08:28 PM Feature #11308 (Closed): Optional `include_super=true` parameter for `*method_defined?` methods
Eregon (Benoit Daloze)
06:57 PM Feature #11308: Optional `include_super=true` parameter for `*method_defined?` methods
This is another duplicate of #10797. Please close this issue. sawa (Tsuyoshi Sawada)
08:28 PM Feature #11879 (Closed): `Module#prepended_modules`
Eregon (Benoit Daloze)
07:05 PM Feature #11879: `Module#prepended_modules`
Indeed this issue is a duplicate. Please close this. sawa (Tsuyoshi Sawada)
08:26 PM Feature #9037 (Closed): Memoization of "anonymous constants"
Eregon (Benoit Daloze)
05:33 PM Feature #9037: Memoization of "anonymous constants"
This proposal is indeed a duplicate of #8804. Please close this. sawa (Tsuyoshi Sawada)
08:24 PM Feature #10880 (Rejected): Subclassing Array from Enumerator
Eregon (Benoit Daloze)
06:54 PM Feature #10880: Subclassing Array from Enumerator
I should use `each_with_index` and `each_with_object` as marcandre suggests. I withdraw this. Please close this issue. sawa (Tsuyoshi Sawada)
06:46 PM Feature #14944: Support optional inherit argument for Module#method_defined?
Actually, this proposal is a duplicate of #10797 sawa (Tsuyoshi Sawada)
06:41 PM Misc #16481 (Third Party's Issue): Version numbering in RDoc is not consistent
When you expand the "Core API" section in https://ruby-doc.org/, you can see that there is version 2.6 (instead of 2.6.0). It is inconsistent with other minor versions such as 2.7.0, 2.5.0, 2.4.0, 2.3.0 and so on. sawa (Tsuyoshi Sawada)
06:07 PM Bug #16480 (Closed): Ruby 2.7, C++, and rb_define_method compilation error
I maintain the Rice library which provides constructs for exposing C++ libraries into Ruby. With Ruby 2.7.0 I've got a hard compilation failure that I'm not sure how to fix.[1]
Diving into this, I've found that rb_define_method, when ...
jasonroelofs (Jason Roelofs)
03:53 PM Revision ded072c2 (git): * 2020-01-05 [ci skip]
git[bot]
03:52 PM Revision ce4d1677 (git): Fix output of example [ci skip]
znz (Kazuhiro NISHIYAMA)
07:21 AM Bug #9573: descendants of a module don't gain its future ancestors, but descendants of a class, do
From @jeremyevans0:
> Previously it wasn't possible because there wasn't a way to go from the module to all iclasses generated from it.
> ...
> Actually, looks like the subclasses entry may contain it (module_subclasses is used by ic...
ioquatix (Samuel Williams)
05:43 AM Bug #9573: descendants of a module don't gain its future ancestors, but descendants of a class, do
Is there a clean way to fix this issue? ioquatix (Samuel Williams)
06:27 AM Feature #5321: Introducing Numeric#exact? and Numeric#inexact?
I really think this is a very overblown issue that is being handled incorrectly.
First, we have what appears to be a singular issue on our hands
`Complex(1, BigDecimal("0.0")).to_r`
Whether or not that qualifies as a valid opera...
wishdev (John Higgins)
04:26 AM Misc #16454: DevelopersMeeting20200116Japan
* [Bug #16383] TracePoint does not report calls to attribute reader methods (jeremyevans0)
* Do we want to support this?
* [Feature #5321] Introducing Numeric#exact? and Numeric#inexact? (jeremyevans0)
* Can we add Numeric#exact? ...
jeremyevans0 (Jeremy Evans)
04:13 AM Revision b594005c (git): * 2020-01-04 [ci skip]
git[bot]
04:13 AM Bug #14266 (Closed): Set#clone(freeze: false) makes frozen internal hash
Applied in changeset commit:git|04eb7c7e462d1fcbab9efc7022c1b43636ab878a.
----------
Call initialize_clone with freeze: false if clone called with freeze: false
This makes it possible to initialize_clone to correctly not freeze
interna...
jeremyevans (Jeremy Evans)
04:13 AM Bug #4352 (Closed): [patch] Fix eval(s, b) backtrace; make eval(s, b) consistent with eval(s)
Applied in changeset commit:git|0eeed5bcc5530edb0af2af2ccff09d067c59e8f9.
----------
Make eval(code, binding) use (eval) as __FILE__ and 1 as __LINE__
This removes the warning that was added in
3802fb92ff8c83eed3e867db20f72c53932f542d,...
jeremyevans (Jeremy Evans)
04:13 AM Revision 04eb7c7e (git): Call initialize_clone with freeze: false if clone called with freeze: false
This makes it possible to initialize_clone to correctly not freeze
internal state if the freeze: false keyword is passed to clone.
If clone is called with freeze: true or no keyword, do not pass
a second argument to initialize_clone to ...
jeremyevans (Jeremy Evans)
04:13 AM Revision 0eeed5bc (git): Make eval(code, binding) use (eval) as __FILE__ and 1 as __LINE__
This removes the warning that was added in
3802fb92ff8c83eed3e867db20f72c53932f542d, and switches the behavior
so that the eval does not use the binding's __FILE__ and __LINE__
implicitly.
Fixes [Bug #4352]
jeremyevans (Jeremy Evans)
01:42 AM Feature #16478: Fold symbol tables for tracking basic operation method redefinition changes into a single ID table
Whoopsie, changing to the Feature tracker (from Bug) methodmissing (Lourens Naudé)
01:37 AM Feature #16478 (Open): Fold symbol tables for tracking basic operation method redefinition changes into a single ID table
References https://github.com/ruby/ruby/pull/2812
I stumbled onto these 2 tables (`vm_opt_method_table` and `vm_opt_mid_table`) while working on https://github.com/ruby/ruby/pull/2809 and experimented at first with converting `vm_opt_...
methodmissing (Lourens Naudé)
01:41 AM Feature #16479 (Open): Let execution context local storage be backed by an ID table
References https://github.com/ruby/ruby/pull/2814
Back fiber local variables with an ID table instead of `st_table`
```
lourens@CarbonX1:~/src/ruby/ruby$ make benchmark ITEM=fiber_locals COMPARE_RUBY="~/src/ruby/trunk/ruby" OPTS="...
methodmissing (Lourens Naudé)

01/03/2020

11:43 PM Bug #16477: readline-ext repository is huge
For the record, you mean this repository:
https://github.com/ruby/readline-ext
@aycabta @hsbt It sounds good to drop those tags to reduce repository size.
Eregon (Benoit Daloze)
07:04 PM Bug #16477 (Closed): readline-ext repository is huge
Today I've cloned (my fresh new fork) of readline-ext
```
+ $ git clone git@github.com:graywolf/readline-ext.git
Cloning into 'readline-ext'...
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
r...
graywolf (Gray Wolf)
10:29 PM Misc #16360: Enabling IBM PowerPC/Z cases in Travis CI
> Sure, I will take a look at the code, contact if it's needed and fix.
Hi, possibly I found the cause of this error for `apt-add-repository` command that happens for only Travis s390x environment, and how to avoid it.
```
$ tool/...
jaruga (Jun Aruga)
03:58 PM Bug #16337 (Open): kernel_gem.rb:68 - ThreadError
I'm still seeing this on 2.7.0p0, even though it looks like it should have been fixed based on comment #2. The workaround in comment #1 still helps.
```
$ /opt/google-fluentd/embedded/bin/ruby --version
ruby 2.7.0p0 (2019-12-25 revi...
jkohen (Javier Kohen)
01:49 PM Feature #16476 (Closed): Socket.getaddrinfo cannot be interrupted by Timeout.timeout
It seems like the blocking syscall done by `Socket.getaddrinfo` blocks Ruby VM in a way that Timeout.timeout has no effect.
See reproduction steps in getaddrinfo_interrupt.rb (https://gist.github.com/kirs/00c02ef92e0418578135fe0a6cbd3d7...
kirs (Kir Shatrov)
12:39 PM Bug #16475: [Installation process - compiling ruby 2.7.0 from source} "make install" step oddity for ruby 2.7.0 on linux mint (debian base)
I should add that even despite the openssl warning, "make install" appears to work perfectly
fine - ruby is at /usr/bin/ruby and it works fine. As I type this, I am compiling a new
base system through ruby, lateron the extensions too ...
shevegen (Robert A. Heiler)
12:38 PM Bug #16475 (Closed): [Installation process - compiling ruby 2.7.0 from source} "make install" step oddity for ruby 2.7.0 on linux mint (debian base)
Hello ruby core team (and everyone else),
I have a slight oddity; it seems to be not hugely important, as it seems minor, but
I will report it anyway just in case. Please disregard/close if this has already been
reported before.
...
shevegen (Robert A. Heiler)
05:53 AM Revision 170f4dbb (git): Fix unused warnings
http://ci.rvm.jp/results/trunk_gcc7@silicon-docker/2539622
```
/tmp/ruby/v2/src/trunk_gcc7/class.c: In function 'rb_scan_args_parse':
/tmp/ruby/v2/src/trunk_gcc7/class.c:1971:12: warning: unused variable 'tmp_buffer' [-Wunused-variable]
...
znz (Kazuhiro NISHIYAMA)
03:01 AM Feature #16463: Fixing *args-delegation in Ruby 2.7: ruby2_keywords semantics by default in 2.7.1
> Representing the Hash flag as a subclass of Hash sounds nice for debugging.
> ...
I must admit I've been struggling with the conflation issue. I think even with the current design it would be nice if the double-splat created a KwHash....
Dan0042 (Daniel DeLorme)
02:40 AM Revision e014e6bf (git): Update specs for keyword argument separation
jeremyevans (Jeremy Evans)
02:40 AM Revision ff965656 (git): Update tests for full keyword argument separation
jeremyevans (Jeremy Evans)
02:40 AM Revision beae6cbf (git): Fully separate positional arguments and keyword arguments
This removes the warnings added in 2.7, and changes the behavior
so that a final positional hash is not treated as keywords or
vice-versa.
To handle the arg_setup_block splat case correctly with keyword
arguments, we need to check if we...
jeremyevans (Jeremy Evans)

01/02/2020

11:29 PM Bug #16473: New deprecated warning disallows keyword arguments bypassing
This is one clear case where #16463 would solve it intuitively. Eregon (Benoit Daloze)
11:08 PM Bug #16473: New deprecated warning disallows keyword arguments bypassing
In this particular case there would be a bug if `*args` had more than one element, so I think the cleaner fix would be
```ruby
def non_kw(a = {}, b = {})
puts "non kw #{a}"
kw **b
end
```
I really think the `ruby2_keyword...
Dan0042 (Daniel DeLorme)
06:10 PM Bug #16473: New deprecated warning disallows keyword arguments bypassing
puchuu (Andrew Aladjev) wrote:
> @jeremyevans0, what will be the right way to bypass keyword arguments?
As mentioned earlier, you should probably use `ruby2_keywords`. In this particular case, even if you don't want to support earlie...
jeremyevans0 (Jeremy Evans)
05:55 PM Bug #16473: New deprecated warning disallows keyword arguments bypassing
@jeremyevans0, what will be the right way to bypass keyword arguments?
```ruby
def non_kw(a = {}, **keyword_args)
puts "non kw #{a}"
kw **keyword_args
end
```
This variant is wrong with ruby 2, because it provides:
```
...
puchuu (Andrew Aladjev)
05:31 PM Bug #16473 (Rejected): New deprecated warning disallows keyword arguments bypassing
This behavior is expected. The positional hash argument is converted to keyword arguments when `kw` is called. That is not going to work in Ruby 3 (see #14183), hence the warning.
For delegating argument to a method that accepts key...
jeremyevans0 (Jeremy Evans)
05:10 PM Bug #16473 (Rejected): New deprecated warning disallows keyword arguments bypassing
Hello. I see that ruby 2.7.0 prints unnecessary deprecated warning during arguments bypassing.
```ruby
def kw(a: 1)
puts "kw #{a}"
end
def non_kw(a = {}, *args)
puts "non kw #{a}"
kw *args
end
non_kw({ :a => 2 }, :a ...
puchuu (Andrew Aladjev)
10:26 PM Revision 8ba261c7 (git): Bump benchmark-driver to v0.15.7 (#2811)
methodmissing (Lourens Naudé)
10:05 PM Bug #16472: OStruct documentation is lost
@marcandre, got it, thanks. https://github.com/ruby/ruby/pull/2810 zverok (Victor Shepelev)
07:06 PM Bug #16472: OStruct documentation is lost
You're welcome to provide a PR on the core repo.
I will update `ruby/ostruct`
marcandre (Marc-Andre Lafortune)
02:41 PM Bug #16472 (Closed): OStruct documentation is lost
After this commit: https://github.com/ruby/ruby/commit/9be3295d53b6fd9f8a3ad8157aa0655b1976d8ac -- RDoc loses documentation attahed to OpenStruct class, see https://docs.ruby-lang.org/en/master/OpenStruct.html, which currently looks this... zverok (Victor Shepelev)
07:46 PM Revision 9f460e01 (git): move internal/debug.h definitions to internal.h
Debug utilities should be accessible from any internal code. ko1 (Koichi Sasada)
07:39 PM Revision 6f5ee1f0 (git): modify MJIT_CC only on RUBY_DEBUG=ci
Modify MJIT_CC (27fae1d4ad) only on CI environment. ko1 (Koichi Sasada)
06:47 PM Bug #16474 (Closed): [ASYNC BUG]
My scripting system to run thousands of video render jobs uses threading to gain parallelism. it takes about 12 hours start-to-finish. This script ran fine befoer this run that failed. Here is the message I got:
[ASYNC BUG] consume_co...
gnormhurst (Norm Hurst)
05:23 PM Bug #16438: Check warning messages for Ruby 2.7
I see the only one way to fix this deprecation. Change `write(*objects)` signature to `print(*objects, field_separator: $OUTPUT_FIELD_SEPARATOR, record_separator: $OUTPUT_RECORD_SEPARATOR)` and test print by passing separators directly. ... puchuu (Andrew Aladjev)
03:30 PM Bug #16438: Check warning messages for Ruby 2.7
Hello. I can't understand why setting OFS to not nil value was deprecated. I want to simulate print method behaviour and I am using `$OUTPUT_FIELD_SEPARATOR` between objects. Than I want to test this method, so I am settings OFS to not n... puchuu (Andrew Aladjev)
05:15 PM Bug #16459: <internal:trace_point>:346: [BUG] Segmentation fault at 0x0000000000000008
can you make a reproducible code?
ko1 (Koichi Sasada)
05:07 PM Revision 27fae1d4 (git): disable ccache if $CC is in /usr/lib/ccache/$CC.
MJIT with ccache has a problem on docker environment, so
we need to use original CC (/usr/bin/gcc, for example).
Ubuntu system provides /usr/lib/ccache/gcc and so on to use
gcc with ccache. It is easy to setup ccache by adding
/usr/lib/c...
ko1 (Koichi Sasada)
04:27 PM Revision b884eb59 (git): Fix variable name and add more example [ci skip]
znz (Kazuhiro NISHIYAMA)
03:44 PM Feature #16471: Two feature requests for WeakRef: get original object, callback feature
I'd rather not pollute the target object's class with a finalizer. However, I'm working on a class, FinalCall, that can hold the target object. When the FinalCall object is garbage collected, it calls a callback. If anybody wants to cont... Snappingturtle (Mike O'Sullivan)
10:55 AM Feature #16471: Two feature requests for WeakRef: get original object, callback feature
> `WeakRef#__getobj__` isn't documented in Ruby 2.5.1
It kinda is, but I agree it's not very clear. The documentation says the parent class is `Delegator` and `__getobj__` is documented there: https://ruby-doc.org/stdlib-2.5.3/libdoc/...
byroot (Jean Boussier)
03:23 AM Feature #16471: Two feature requests for WeakRef: get original object, callback feature
`WeakRef#__getobj__` isn't documented in Ruby 2.5.1 (https://short.uno/wwb6bky) so I didn't know it existed. So I guess that's sort of a bug report right there.
I think I might be able to write a class that does the callback on garbage ...
Snappingturtle (Mike O'Sullivan)
01:01 AM Feature #16471: Two feature requests for WeakRef: get original object, callback feature
> First, add the ability to pull the original object out of the WeakRef object,
`WeakRef#__getobj__`.
> ...
This usage would be impossible even if the callback were provided.
The callback will be called **after** `wr` was collecte...
nobu (Nobuyoshi Nakada)
03:03 PM Revision db22b368 (git): * 2020-01-03 [ci skip]
git[bot]
03:02 PM Revision bba49161 (git): Fix example of node.type [ci skip]
```
% docker run -it --rm rubylang/all-ruby env ALL_RUBY_SINCE=ruby-2.6 ./all-ruby -e 'root = RubyVM::AbstractSyntaxTree.parse("x = 1 + 2")
p [root, root.type]
call = root.children[2]
p [call, call.type]
'
ruby-2.6.0 [#<RubyVM::...
znz (Kazuhiro NISHIYAMA)
12:44 PM Feature #16461: Proc#using
shugo (Shugo Maeda) wrote:
> It doesn't mutate the Proc, but the block, and if OtherRefinement is activated before the block invocation, both refinements are activated.
> ...
So what happens if I have this:
```ruby
using Proc::Refine...
Eregon (Benoit Daloze)
03:12 AM Revision 749915e9 (git): Fix a typo [ci skip]
znz (Kazuhiro NISHIYAMA)
02:11 AM Feature #16460: External names for keyword parameters in method definitions
harrisonb (Harrison Bachrach) wrote:
> > Though I don’t remember exactly, once I proposed a similar syntax.
> ...
The problem is described in [a_matsuda's slide](https://speakerdeck.com/a_matsuda/ruby-2-dot-0-on-rails-in-production?sli...
nobu (Nobuyoshi Nakada)
01:55 AM Revision 71ae2ace (git): * 2020-01-02 [ci skip]
git[bot]
01:41 AM Revision 34bc15c8 (git): Check Module#ruby2_keywords arity
It is considered a mistake, because calling this method with no
arguments has no effect.
nobu (Nobuyoshi Nakada)
 

Also available in: Atom