Project

General

Profile

Activity

From 08/26/2020 to 09/01/2020

09/01/2020

11:16 PM Revision 6e8ec9ab (git): Support passing a category to `Warning.warn`
This change adds a `category` kwarg to make it easier to monkey patch
`Warning.warn`. Warnings already have a category, but that warning isn't
exposed. This implements a way to get the category so that warnings with
a specific category, ...
eileencodes (Eileen Uchitelle)
09:07 PM Bug #16787: [patch] allow Dir.home to work for non-login procs when $HOME not set
Just noting that I rebased (and re-tested) the Ruby 2.7 backport PR ([PR 3293](https://github.com/ruby/ruby/pull/3293)) on top of the latest changes in the 'ruby-2_7' branch. The rebasing did not result in any material changes to the 2.7... salewski (Alan Salewski)
08:10 PM Bug #17141 (Closed): Crash when parsing malformed input
Calling "ruby crash_small.rb" crashes ruby - see attached crash log tumdum (Tomasz Kłak)
07:52 PM Feature #17140 (Open): Merge Enumerable#grep(_v) with Enumerable#select/reject
In recent versions of Ruby we've gotten new behavior of some Enumerable methods like any?, all?, none?, one?, and others to support a single argument pattern that responds to `===`. This is very powerful, and very useful.
Currently En...
baweaver (Brandon Weaver)
07:35 PM Feature #17122: Add category to Warning#warn
I've addressed the backwards compatibility on the PR (https://github.com/ruby/ruby/pull/3418) and added an entry to NEWS.md. Let me know if there are other changes <3 eileencodes (Eileen Uchitelle)
06:18 PM Feature #17104: Do not freeze interpolated strings when using frozen-string-literal
mame (Yusuke Endoh) wrote in #note-18:
> I found `"foo#{ "foo" }"` frozen because it is optimized to `"foofoo"` at the parser. What do you think?
I guess that's semantically correct (besides the frozen status), since interpolation d...
Eregon (Benoit Daloze)
03:39 PM Feature #17104: Do not freeze interpolated strings when using frozen-string-literal
Eregon (Benoit Daloze) wrote in #note-17:
> I'll try to make a PR for this change: https://github.com/ruby/ruby/pull/3488
Thanks, I've given it a try.
I found `"foo#{ "foo" }"` frozen because it is optimized to `"foofoo"` at the p...
mame (Yusuke Endoh)
05:53 PM Bug #17017: Range#max & Range#minmax incorrectly use Float end as max
I reverted the changes in this pull request, and updated the Range#max documentation to explain the behavior (commit:de10a1f3583adeeffd7f8bcf8f276e0a626ffa0c). jeremyevans0 (Jeremy Evans)
02:49 PM Bug #17017: Range#max & Range#minmax incorrectly use Float end as max
matz (Yukihiro Matsumoto) wrote in #note-24:
> `Range` class methods are classified in two. The ones that behave like `Enumerable` methods (defined by `#each`), and the others that behave like region (defined by the both ends).
> ...
O...
jeremyevans0 (Jeremy Evans)
05:13 AM Bug #17017: Range#max & Range#minmax incorrectly use Float end as max
`Range` class methods are classified in two. The ones that behave like `Enumerable` methods (defined by `#each`), and the others that behave like region (defined by the both ends).
I think `#min` and `#max` should belong to the latter. ...
matz (Yukihiro Matsumoto)
05:52 PM Revision de10a1f3 (git): Update documentation for Range#max
jeremyevans (Jeremy Evans)
05:52 PM Revision 4db4faef (git): Revert "Fix Range#{max,minmax} for range with integer beginning and non-integer end"
This reverts commit 8900a25581822759daca528d46a75e0b743fc22e. jeremyevans (Jeremy Evans)
05:52 PM Revision e080a4cd (git): Revert "Special case Range#max for integer beginning and Float::Infinity end"
This reverts commit 05bf811c2839628aaef3d565daedb28be80d47ef. jeremyevans (Jeremy Evans)
05:49 PM Revision 94430d00 (git): Comply with guide for method doc: array.c (#3499)
Methods considered:
count
flatten!
flatten
cycle
permutation
combination
repeated_permutation
repeated_combination
product
take
take_while
drop
drop_while
burdettelamar (Burdette Lamar)
04:46 PM Revision 9d4c5147 (git): * 2020-09-02 [ci skip]
git[bot]
04:41 PM Revision 41cf17be (git): Fixed argument types
nobu (Nobuyoshi Nakada)
04:41 PM Revision f6822e4e (git): Format with proper conversion specifiers instead of casts
nobu (Nobuyoshi Nakada)
04:31 PM Bug #17139 (Closed): [doc] StringScanner#matched_size seems to be byte-oriented but that is not documented
StringScanner#matched_size seems to be byte oriented. But that is not documented. Better be documented to avoid confusion.
[1] pry(main)> ss = StringScanner.new([1024].pack("U*"))
[3] pry(main)> ss.skip_until(/./)
[4] pry(main)> ss....
akostadinov (Aleksandar Kostadinov)
03:56 PM Feature #17055: Allow suppressing uninitialized instance variable and method redefined verbose mode warnings
At the last dev meeting, @matz said he did not like the callback API, and decided to postpone discussion on this. jeremyevans0 (Jeremy Evans)
03:48 PM Misc #17138 (Closed): DevelopersMeeting20200925Japan
# The next dev meeting
**Date: 2020/09/25 13:00-17:00**
Place/Sign-up/Agenda/Log: https://github.com/ruby/dev-meeting-log/blob/master/DevelopersMeeting20200925Japan.md
- Dev meeting *IS NOT* a decision-making place. All decisions ...
mame (Yusuke Endoh)
03:47 PM Misc #17041 (Closed): DevelopersMeeting20200831Japan
mame (Yusuke Endoh)
03:01 PM Bug #14895: Inconsistent constant names when using const_set on a singleton class
Fixed dangling participle. sawa (Tsuyoshi Sawada)
02:20 PM Bug #14895: Inconsistent constant names when using const_set on a singleton class
marcandre (Marc-Andre Lafortune) wrote in #note-7:
> So I suggest I'll commit your patch, unless there's an objection.
I have no objection, so if you consider the current behavior a bug, please commit the patch (assuming it doesn't c...
jeremyevans0 (Jeremy Evans)
04:50 AM Bug #14895 (Open): Inconsistent constant names when using const_set on a singleton class
jeremyevans0 (Jeremy Evans) wrote in #note-6:
> Output:
> ...
... and it shows the name 'A' and 'C'. That's much better!
> If you like that idea, please submit a feature request for it (or switch this to a feature request and reope...
marcandre (Marc-Andre Lafortune)
02:16 PM Bug #15178 (Closed): Wrong paramaters passing to pthread_setname_np(3)
Applied in changeset commit:git|be9dbe1c3eb4bb4cab0bdc42a91ef425bb1eaddd.
----------
Fix pthread_setname_np arguments on NetBSD
The previous attempt to fix this in
b87df1bf243074edb2e6cc8a24bc00df81cebf3c reversed the argument
order in...
jeremyevans (Jeremy Evans)
02:16 PM Revision be9dbe1c (git): Fix pthread_setname_np arguments on NetBSD
The previous attempt to fix this in
b87df1bf243074edb2e6cc8a24bc00df81cebf3c reversed the argument
order instead of just fixing the quote escaping.
From Takahiro Kambe.
Fixes [Bug #15178]
jeremyevans (Jeremy Evans)
12:18 PM Revision 6b432009 (git): Fix syncing bundler man pages
`rm_rf` does not support globbing, so not all files get deleted. deivid (David Rodríguez)
10:03 AM Revision 8d1de315 (git): Use RSTRING_LENINT for overflow check
nobu (Nobuyoshi Nakada)
10:01 AM Revision 21ad4075 (git): Don't read past the end of the Ruby string
Ruby strings don't always have a null terminator, so we can't use
it as a regular C string. By reading only the first len bytes of
the Ruby string, we won't read past the end of the Ruby string.
peterzhu2118 (Peter Zhu)
08:06 AM Feature #15752 (Closed): A dedicated module for experimental features
As far as I understand, you want a place to separate features that do not only belong to `CRuby`, right?
But for example, we started `RubyVM::AbstractSyntaxTree` as a `CRuby` specific feature, it was natural for us to place it under `Ru...
matz (Yukihiro Matsumoto)
05:42 AM Revision fbf79f1c (git): Use the previous winflexbison3
winflexbison3 v2.5.23.20200829 seems to install nothing. nobu (Nobuyoshi Nakada)
04:23 AM Bug #15417: Pathname case insensitive comparison
The arguments are path components but not paths, can't stat. nobu (Nobuyoshi Nakada)
02:21 AM Revision cceba235 (git): minitest is working fine with Ruby 3
hsbt (Hiroshi SHIBATA)
02:21 AM Revision e00eba1c (git): xmlrpc has been removed from the bundled gems
hsbt (Hiroshi SHIBATA)
02:21 AM Revision a3d90f1b (git): bump version to minitest-5.14.2
hsbt (Hiroshi SHIBATA)
02:21 AM Revision 37715937 (git): Revert the workaround of minitest and hoe
86737c509cd49cfe4509a65d300d390da0f07be6
3e1aea461320094e634ab32ca0b13dd43b69d8b0
hsbt (Hiroshi SHIBATA)
02:05 AM Revision b01d852c (git): congigure.ac: favour gcc on Linux
Requested by Naruse. shyouhei (Shyouhei Urabe)

08/31/2020

10:32 PM Bug #14895 (Closed): Inconsistent constant names when using const_set on a singleton class
marcandre (Marc-Andre Lafortune) wrote in #note-5:
> This looks like a bug to me.
> ...
Ruby 2.7 changed the behavior so that `a` and `c` are treated identically, but that `c` is like `a`:
```
a # #<Module:0x00000b0bda620368>
b #...
jeremyevans0 (Jeremy Evans)
09:38 PM Bug #14997 (Closed): Socket connect timeout exceeds the timeout value for
I believe this timeout issue is now solved by the Socket.tcp :resolv_timeout option, introduced in commit:6382f5cc91ac9e36776bc854632d9a1237250da7. jeremyevans0 (Jeremy Evans)
09:33 PM Bug #15038 (Closed): Appveyor MinGW - bundled gems missing?
Both AppVeyor CI jobs now show the bundled gems, so hopefully this can be closed:
https://ci.appveyor.com/project/ruby/ruby/builds/34951403/job/xodf8ma94pv35c33?fullLog=true#L3025
https://ci.appveyor.com/project/ruby/ruby/builds/3495...
jeremyevans0 (Jeremy Evans)
09:25 PM Revision 50736f12 (git): Comply with guide for method doc: array.c (#3489)
Methods considered:
&
intersection
|
union
max
min
minmax
uniq!
uniq
compact!
compact
burdettelamar (Burdette Lamar)
09:22 PM Bug #15178: Wrong paramaters passing to pthread_setname_np(3)
I agree with your analysis. Looking at the NetBSD man page for pthread_setname_np (https://netbsd.gw.com/cgi-bin/man-cgi?pthread_setname_np++NetBSD-current), the format string is clearly the 2nd argument and not the third. The only rea... jeremyevans0 (Jeremy Evans)
09:14 PM Revision a137874e (git): add RUBY_DEBUG=ci envval for GH actions
RUBY_DEBUG=ci envval shows more information on rb_bug(). ko1 (Koichi Sasada)
09:13 PM Bug #15417: Pathname case insensitive comparison
ioquatix (Samuel Williams) wrote:
> Unless string match exactly, we should leave it to file system to determine if the path is equivalent or not (e.g. in the case of `Pathname#relative_path_from`). Trying to be too clever might cause fu...
jeremyevans0 (Jeremy Evans)
08:23 PM Bug #15276 (Closed): URI.join behaviour is unintuitive
jeremyevans0 (Jeremy Evans)
08:22 PM Bug #15209 (Closed): r64925 order-only-prerequisites - make targets - breaking change
r64925 was reverted shortly after this in commit:3757515501347685bfbd9ef11bc03e93c66d1dc9, so this can be closed. jeremyevans0 (Jeremy Evans)
08:17 PM Bug #15313 (Closed): [PATCH] Let debuggers know when a tail call happens
As tailcall optimization was removed in commit:241dced625f9ba8a4071954579778a0940e75179, I think this can be closed. jeremyevans0 (Jeremy Evans)
07:53 PM Revision e744d407 (git): Comply with guide for method doc: array.c (#3484)
Methods:
+
concat
*
assoc
rassoc
==
eql?
hash
include?
<=>
-
difference
burdettelamar (Burdette Lamar)
07:52 PM Misc #17137 (Assigned): Cooperation on maintaining official docker ruby images
It was pointed out to me at https://github.com/docker-library/ruby/issues/323 that the ruby-core team has started maintaining their own docker images at https://github.com/ruby/ruby-docker-images, and that the base Dockerfiles were initi... deivid (David Rodríguez)
07:43 PM Feature #14394: Class.descendants
More like:
```ruby
class A
end
x = Class.new(A)
y = x.new
```
~~How does the GC handle such classes?
Will they get GC'd when there isn't any reference to them anymore?~~
I checked such classes will get GC'd when there isn't any refe...
Hanmac (Hans Mackowiak)
06:50 PM Feature #14394: Class.descendants
+1 for this feature from me.
@hanmac: if you are referring to singleton classes, they should be excluded:
```ruby
s = +'hello'
def s.force_singleton_class
42
end
s.singleton_class < String # => true
String.descendants.include?(s.sing...
marcandre (Marc-Andre Lafortune)
10:46 AM Feature #14394: Class.descendants
Hanmac (Hans Mackowiak) wrote in #note-10:
> if it would add them, how about adding a parameter to this function exclude/include them? (exclude them as default?)
I think the user can filter easily based on whatever condition they wan...
Eregon (Benoit Daloze)
09:02 AM Feature #14394: Class.descendants
@fatkodima
how does `rb_class_foreach_subclass` handle anonymous classes?
if it would add them, how about adding a parameter to this function exclude/include them? (exclude them as default?)
Hanmac (Hans Mackowiak)
07:28 PM Feature #17104: Do not freeze interpolated strings when using frozen-string-literal
I'll try to make a PR for this change: https://github.com/ruby/ruby/pull/3488 Eregon (Benoit Daloze)
08:50 AM Feature #17104: Do not freeze interpolated strings when using frozen-string-literal
OK. Persuaded. Make them unfrozen.
Matz.
matz (Yukihiro Matsumoto)
07:08 PM Bug #15576 (Closed): Wrong error message from some class methods of `Dir`
jeremyevans0 (Jeremy Evans)
06:16 PM Revision 18bcfe71 (git): * 2020-09-01 [ci skip]
git[bot]
06:16 PM Revision 1f4c507a (git): Comply with guide for method doc: array.c (#3477)
Methods considered:
delete_at
slice!
reject!
reject
delete_if
zip
transpose
replace
clear
fill
burdettelamar (Burdette Lamar)
03:22 PM Feature #17122: Add category to Warning#warn
> OK. Accepted. But we might need to add arity check before calling warning callback for compatibility's sake.
Great, very exciting! I will work on implementing an arity check / fixing the incompatibility and fix the failing tests on ...
eileencodes (Eileen Uchitelle)
06:06 AM Feature #17122: Add category to Warning#warn
OK. Accepted. But we might need to add arity check before calling `warning` callback for compatibility's sake.
Matz.
matz (Yukihiro Matsumoto)
02:04 AM Feature #17122: Add category to Warning#warn
akr (Akira Tanaka) wrote in #note-13:
> But Ruby don't have "ignorable" argument that
> ...
Maeda-sensei (@maeda) told me that Common Lisp has allow-other-keys which suppress keyword argument checking at function call.
http://www....
akr (Akira Tanaka)
01:14 PM Feature #15547 (Closed): deprecate iterator?
Applied in changeset commit:git|2e80c8347e27f8ecedab56bab105d69efa35cbea.
----------
Deprecate iterator? method
[Feature #15547] [Fix GH-2071]
nobu (Nobuyoshi Nakada)
07:47 AM Feature #15547: deprecate iterator?
I agree.
Matz.
matz (Yukihiro Matsumoto)
01:14 PM Revision 2e80c834 (git): Deprecate iterator? method
[Feature #15547] [Fix GH-2071] nobu (Nobuyoshi Nakada)
12:57 PM Revision c23c880f (git): [ruby/strscan] Bump version
https://github.com/ruby/strscan/commit/df90d541fa Sutou Kouhei
12:57 PM Revision c76508b8 (git): [ruby/strscan] Replaced examples using $KCODE with encodings
`$KCODE` has been deprecated and not effective since years ago.
https://github.com/ruby/strscan/commit/7c4dbd4cb3
nobu (Nobuyoshi Nakada)
11:49 AM Revision 01f28405 (git): Update version to 3.0.0 in NEWS.md
znz (Kazuhiro NISHIYAMA)
11:31 AM Bug #17132: vcs.rb doesn't detect git submodules as vcs
>As I have never used git submodule, I can't get what "target thats inside a submodule" means.
> ...
It means that the target eg. the srcdir is in a git submodule.
It set it up like this:
``` shell
git init
git submodule add https...
Thaodan (Björn Bidar)
11:30 AM Revision 53ba9fb7 (git): Prohibit setter method names in endless method definition
https://bugs.ruby-lang.org/issues/16746#note-26 mame (Yusuke Endoh)
10:23 AM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
Re naming of receiving a message, here is the poll I made:
https://twitter.com/eregontp/status/1299284528578596864
126 votes, 83.3% Ractor.receive, 16.7% Ractor.recv.
I think the result can hardly be clearer.
I see it as naming it `Rac...
Eregon (Benoit Daloze)
09:51 AM Revision 86737c50 (git): Removed minitest and hoe because they didn't support Ruby 3 yet
hsbt (Hiroshi SHIBATA)
09:10 AM Feature #17125 (Closed): Remove Thread.exclusive
Applied in changeset commit:git|b674fc9ca2498d55c7e4f91592279eb985b8bea1.
----------
Thread.exclusive: delete
Has been deprecated since 2069c9e031fc968d6d3d0fe30a9316851e4d91d8.
[Feature #17125][ruby-core:99636]
shyouhei (Shyouhei Urabe)
09:02 AM Feature #17125: Remove Thread.exclusive
OK. Let's remove them.
Matz.
matz (Yukihiro Matsumoto)
09:08 AM Revision b674fc9c (git): Thread.exclusive: delete
Has been deprecated since 2069c9e031fc968d6d3d0fe30a9316851e4d91d8.
[Feature #17125][ruby-core:99636]
shyouhei (Shyouhei Urabe)
09:00 AM Bug #17105: A single `return` can return to two different places in a proc inside a lambda inside a method
It is intentional since 1.6.0. But I am OK with making `m2` raise `LocalJumpError`.
Ask @ko1 about migration.
Matz.
matz (Yukihiro Matsumoto)
08:48 AM Feature #17103: Add a :since option to ObjectSpace.dump_all
OK. Accepted.
Matz.
matz (Yukihiro Matsumoto)
08:45 AM Revision eb9342d3 (git): The deprecation of enumerators with block has been withdrawn
https://bugs.ruby-lang.org/issues/6670#change-75907 nobu (Nobuyoshi Nakada)
08:45 AM Revision 0eec4ae8 (git): Get rid of using Socket.gethostbyname
nobu (Nobuyoshi Nakada)
08:22 AM Feature #14844: Future of RubyVM::AST?
I am OK with move the class from `RubyVM::AbstractSyntaxTree`. We have to decide the new name for it (`RubyAST`?).
In addition, the structure of the abstract syntax tree may be slightly changed from time to time (by refactoring or synta...
matz (Yukihiro Matsumoto)
08:20 AM Feature #16746: Endless method definition
https://github.com/ruby/ruby/pull/3479 mame (Yusuke Endoh)
08:19 AM Feature #16746: Endless method definition
In the previous dev-meeting, matz said that it should be prohibited to define setter method with endless definition.
```ruby
# prohibited
def foo=(x) = @x = x
```
There are two reasons:
1. This code is very confusing and it i...
mame (Yusuke Endoh)
08:18 AM Revision 3e1aea46 (git): Temporary removed minitest from bundled gems.
It requires Ruby 2.x.
https://github.com/seattlerb/minitest/blob/master/Rakefile#L14
hsbt (Hiroshi SHIBATA)
07:53 AM Revision 34c20c99 (git): [DOC] Fixed wording [ci skip]
nobu (Nobuyoshi Nakada)
07:53 AM Revision f588caa7 (git): [DOC] Indent a code block in NEWS [ci skip]
nobu (Nobuyoshi Nakada)
07:48 AM Feature #17039: Remove Time#succ
Let us remove it.
Matz.
matz (Yukihiro Matsumoto)
07:38 AM Revision 21c62fb6 (git): Version number bumped to 3.0.0 from 2.8.0 (tentative).
We have decided to go forward to 3.0 this year. matz (Yukihiro Matsumoto)
07:36 AM Feature #17136: Remove special behavior from $KCODE
We waited enough long time. Let us remove it.
Matz.
matz (Yukihiro Matsumoto)
06:36 AM Feature #17136 (Closed): Remove special behavior from $KCODE
`$SAFE` is now a normal global variable with no special behavior.
I think `$KCODE`'s special behavior is also no longer needed.
Warnings since 1.9.
```
% docker run -it --rm rubylang/all-ruby env ALL_RUBY_SINCE=ruby-1.4 ./all-ruby...
znz (Kazuhiro NISHIYAMA)
05:36 AM Feature #16345 (Closed): Don't emit deprecation warnings by default.
I agree with @marcandre for making migration slow(er). We should wait for a few versions after emitting opt-in warnings before removing the feature.
But it doesn't affect the discussion of stopping forced (default-on) warnings. I vote...
matz (Yukihiro Matsumoto)
01:15 AM Feature #17135 (Assigned): Improve performance of Integer#size method
The patch looks good to me. HOWEVER, let me -1 this.
Integer#size HAS to be as fast as what is proposed here, without any extra hustle like this.
@ko1 any idea what is preventing it from running smoothly?
shyouhei (Shyouhei Urabe)

08/30/2020

11:28 PM Feature #17056: Array#index: Allow specifying the position to start search as in String#index
I have implemented an `offset` parameter for `Array#index` - https://github.com/ruby/ruby/pull/3448
Will adjust to more methods if asked.
fatkodima (Dima Fatko)
03:34 PM Revision 9b88851c (git): * 2020-08-31 [ci skip]
git[bot]
03:34 PM Revision 585a659b (git): Comply with guide for method doc: array.c (#3475)
Methods considered:
bsearch
bsearch_index
sort_by!
collect
collect!
values_at
select
select!
keep_if
delete
burdettelamar (Burdette Lamar)
01:10 PM Feature #17135 (Closed): Improve performance of Integer#size method
`Integer#size` seems to show improved performance when written in ruby.
benchmark:
```yml
prelude: |
n = 42
benchmark:
size: |
n.size
loop_count: 20000000
```
result:
```bash
sh@MyComputer:~/rubydev/build$ mak...
S_H_ (Shun Hiraoka)
11:26 AM Feature #13683: Add strict Enumerable#single
matz (Yukihiro Matsumoto) wrote in #note-10:
> Hmm, I don't like the name `single`.
matz (Yukihiro Matsumoto) wrote in #note-17:
> ...
Could you explain why?
I think `single` as in "return a single element or error out" is the best...
Eregon (Benoit Daloze)
10:46 AM Feature #16986: Anonymous Struct literal
ko1 (Koichi Sasada) wrote in #note-34:
> how about `%struct{a: 1, b: 2}` (and `%value{...}` if needed)?
> ...
Is `%struct"a: 1, b: 2"` same?
nobu (Nobuyoshi Nakada)
09:54 AM Feature #15547: deprecate iterator?
I've forgotten this.
Updated https://github.com/ruby/ruby/pull/2071
nobu (Nobuyoshi Nakada)
07:07 AM Revision 9eda6547 (git): KNOWNBUGS.rb: use-after-poison since b9007b6c548f91e88fd3f2ffa23de740431fa969
nobu (Nobuyoshi Nakada)

08/29/2020

08:16 PM Revision 726f2e59 (git): Comply with guide for method doc: array.c (#3474)
Methods considered:
length
empty?
join
inspect
to_a
to_h
to_ary
reverse!
reverse
rotate!
rotate
sort!
sort
burdettelamar (Burdette Lamar)
05:15 PM Revision a8f11df3 (git): * 2020-08-30 [ci skip]
git[bot]
05:15 PM Revision f0ad5594 (git): Comply with guide for method doc: array.c (#3473)
Methods considered:
at
first
last
fetch
index
rindex
[]
insert
each
each_index
reverse_each
burdettelamar (Burdette Lamar)
05:03 PM Feature #11927: Return value for `Module#include` and `Module#prepend`
I would like to have this. Please, reconsider this feature. fatkodima (Dima Fatko)
05:01 PM Feature #5628: Module#basename
Used this numerous times.
I like this suggestion:
regularfry (Alex Young) wrote in #note-4:
> .name( false )
> ...
What ruby-core think on this?
fatkodima (Dima Fatko)
04:02 PM Bug #17132 (Feedback): vcs.rb doesn't detect git submodules as vcs
As I have never used git submodule, I can't get what "target thats inside a submodule" means.
Could you explain how you set up it?
`.git` file/directory doesn't exist in submodule?
nobu (Nobuyoshi Nakada)
01:38 PM Feature #17099: Remove boolean argument and warning from Module#attr

Anyone has opinion?
S_H_ (Shun Hiraoka)
12:42 PM Feature #13683: Add strict Enumerable#single
Hmmm, just now I realized there's a simple idiom that's roughly equivalent to `one`/`single`
```ruby
[1,2].inject{break} #=> nil
[1,2].inject{raise} #=> error
[1].inject{break} #=> 1
[1].inject{raise} #=> 1
[].inject{break} #=> n...
Dan0042 (Daniel DeLorme)
12:29 PM Feature #13683: Add strict Enumerable#single
Dan0042 (Daniel DeLorme) wrote in #note-25:
> I really think the block form should be like find/select
> ...
...
> continue searching [...] that alters the fundamental behavior too much imho.
I think you are right.
But the word "one",...
sawa (Tsuyoshi Sawada)
11:11 AM Feature #13683: Add strict Enumerable#single
> If collection is empty and a block was given, returns the block's return value:
I really think the block form should be like find/select
```ruby
[1,2,3].one{ _1.even? } #=> 2
[1,2,3,4].one{ _1.even? } #=> error
[1,...
Dan0042 (Daniel DeLorme)
04:23 AM Feature #13683: Add strict Enumerable#single
Having `Enumerable#find` take an optional keyword argument, say `exception:`, would make more sense, be useful, and have more generality.
```ruby
[1].find(exception: true){true} # => 1
[1, 2, 3].find(exception: true){true} # >> Error
[]...
sawa (Tsuyoshi Sawada)
12:42 PM Bug #17131: Time.at(time) != time in certain cases
jeremyevans0 (Jeremy Evans) wrote in #note-3:
> a spec that shows that defining to_r without to_int is expected to raise an error
> ...
All clear, thanks a lot. I'll handle the usages to adhere to this protocol.
phil_pirozhkov (Phil Pirozhkov)
11:41 AM Feature #17016: Enumerable#accumulate
`#accumulate` is good, but since [this question](https://stackoverflow.com/q/1475808) linked in the OP was asking for the "cumulative sum" ... what about `#cumulative` ?
```ruby
[1,2,3].cumulative.sum #=> [1,3,6]
[1,2,3]...
Dan0042 (Daniel DeLorme)
10:49 AM Revision d7492a0b (git): Revert changes to rdoc & rubygems regarding Tempfile.open(&block)
* They likely want to support older Ruby/tempfile versions
* Reverts part of e8c3872555fc85640505974e6b1c39d315572689
Eregon (Benoit Daloze)
10:30 AM Revision 3beecafc (git): Fix usages of Tempfile.open(&block) that expected the file to still be there after the block
Eregon (Benoit Daloze)
10:23 AM Revision e8c38725 (git): Simplify Tempfile.open calls with a block as they now unlink the file automatically
Eregon (Benoit Daloze)
10:11 AM Revision ff323b2a (git): Adapt specs for the new Tempfile.open with block behavior
Eregon (Benoit Daloze)
10:05 AM Revision fa21985a (git): Sync with ruby/tempfile@aa9ea12d94a905161cbd79af1ad9ab427f250f4e
Eregon (Benoit Daloze)
10:00 AM Revision a11b9ca0 (git): Some fixes in NEWS.md
Eregon (Benoit Daloze)
09:58 AM Revision 1199f1a4 (git): Fix warnings related to new Socket.gethostby* deprecations
Eregon (Benoit Daloze)
09:51 AM Revision 232d6c40 (git): Use a constant instead of a global variable in sync_default_gems.rb
Eregon (Benoit Daloze)
08:18 AM Revision 6d946665 (git): Show deprecation warning on Socket.gethostbyname and Socket.gethostbyaddr
Glass_saga (Masaki Matsushita)
07:10 AM Revision 56dd578d (git): IO.copy_stream: handle EOPNOTSUP instead of ENOTSUP
Glass_saga (Masaki Matsushita)
06:56 AM Feature #9420 (Closed): warn and puts should be atomic
For now, warn and puts already use writev if available. Glass_saga (Masaki Matsushita)
06:41 AM Feature #16965 (Closed): io.c: Unsupported copy_file_range() not detected properly on certain kernels
Applied in changeset commit:git|93df3010482ad52e5ada2e416c996005da956e1e.
----------
IO.copy_stream: handle ENOTSUP on copy_file_range(2)
fallback to other methods on ENOTSUP.
some RedHat kernels may return ENOTSUP on an NFS mount.
[Fe...
Glass_saga (Masaki Matsushita)
06:38 AM Revision 93df3010 (git): IO.copy_stream: handle ENOTSUP on copy_file_range(2)
fallback to other methods on ENOTSUP.
some RedHat kernels may return ENOTSUP on an NFS mount.
[Feature #16965]
Glass_saga (Masaki Matsushita)
05:26 AM Feature #17134 (Open): Add resolv_timeout to TCPSocket
Add resolve_timeout to TCPSocket.new.
It makes DNS timeout customizable in the same way as Socket.tcp.
https://github.com/ruby/ruby/pull/3472
Glass_saga (Masaki Matsushita)
03:31 AM Revision c2011d1a (git): Fix a typo [ci skip]
znz (Kazuhiro NISHIYAMA)

08/28/2020

11:12 PM Bug #15570 (Closed): rb_int2big signature change #14036 breaks VIM on 32b arches
This was fixed in vim (https://github.com/vim/vim/commit/63d1fea8141c3dfb36aeb9de60e5f1f90450acff), so I think this can be closed, as changing it back would rebreak vim. jeremyevans0 (Jeremy Evans)
11:07 PM Feature #14394: Class.descendants
I opened a PR - https://github.com/ruby/ruby/pull/3471 fatkodima (Dima Fatko)
12:51 AM Feature #14394: Class.descendants
Implementation wise MRI already have `rb_class_foreach_subclass()`. It can be rather trivial to wrap that C function. shyouhei (Shyouhei Urabe)
10:38 PM Bug #16622 (Closed): mswin build was failed with the current master branch #3121
jeremyevans0 (Jeremy Evans)
10:35 PM Bug #16679 (Feedback): Test of Ruby fails under multiple OS user userland installations
From the error you are receiving, it is trying to write to a read-only file, and that is raising an error. The same tests don't usually raise an error, so this is probably specific to your environment. Is it possible for you to come up... jeremyevans0 (Jeremy Evans)
09:49 PM Bug #16774 (Closed): Don't require sub-word atomics
This was committed at commit:abe2e7de4d1f2d5861d7c9ab9c7e778f2ee1dcd2 jeremyevans0 (Jeremy Evans)
09:39 PM Bug #16974: frozen string issue in lib/reline/ansi.rb on ruby-2.7.1
The current pull request for this is at https://github.com/ruby/reline/pull/122 jeremyevans0 (Jeremy Evans)
09:35 PM Bug #16983: RubyVM::AbstractSyntaxTree.of(method) returns meaningless node if the method is defined in eval
I'm not sure if this is a bug, but it does seem like a fundamental and significant limitation with the design of RubyVM::AbstractSyntaxTree.of. RubyVM::AbstractSyntaxTree.of reparses the file the method is defined in and cannot handle a... jeremyevans0 (Jeremy Evans)
09:14 PM Feature #13683: Add strict Enumerable#single
If we introduce `one`, it would be nice to support regexp; maybe use `===` for matching when given an argument?
```ruby
%w[hello world].one(/ll/) # => 'hello'
```
marcandre (Marc-Andre Lafortune)
08:19 PM Feature #13683: Add strict Enumerable#single
I have opened a PR - https://github.com/ruby/ruby/pull/3470
```
# Returns one and only one item. Raises an error if there are none or more than one.
[99].one #=> 99
[].one #=> RuntimeError: collection is emp...
fatkodima (Dima Fatko)
07:56 PM Bug #17015 (Closed): RubyVM::AbstractSyntaxTree.parse has the same result on `proc { |a| }` and `proc { |a,| }`
The pull request was merged at commit:ff5e66034006a875125581114cce19d46843b32a jeremyevans0 (Jeremy Evans)
07:56 PM Revision 45c40f56 (git): Comply with guide for method doc: array.c (#3469)
Methods:
- freeze
- try_convert
- new
- \<<
- push
- pop
- shift
- unshift
- []
burdettelamar (Burdette Lamar)
06:39 PM Revision 4a5dd970 (git): Add alias treatment to method_documentation.rdoc (#3468)
* Add alias treatment to method_documentation.rdoc burdettelamar (Burdette Lamar)
06:28 PM Revision 3ffef9a0 (git): * 2020-08-29 [ci skip]
git[bot]
06:26 PM Bug #17102: openssl/buffering.rb:182: [BUG] Segmentation fault at 0x00001fa0fd774000
The crash appears to be due to memory corruption. Unfortunately, since it isn't reproducible, I don't think there is anything we can do to try to debug it. jeremyevans0 (Jeremy Evans)
06:26 PM Revision b49307c7 (git): Update to ruby/spec@335eb9b
Eregon (Benoit Daloze)
06:26 PM Revision 3dd63108 (git): Update to ruby/mspec@53a6e3e
Eregon (Benoit Daloze)
06:19 PM Bug #17129 (Closed): bundle install `eventmachine` and `sassc` fails since 914b2208ab3eddec478cdc3e079e6c30d0f0892c
jeremyevans0 (Jeremy Evans)
06:01 PM Bug #17131 (Closed): Time.at(time) != time in certain cases
@nobu committed a spec that shows that defining to_r without to_int is expected to raise an error (commit:7e1fddba4a609cb7bf4a696eccd892e68753bb21). I think that is sufficient to handle this issue. If you would like additional document... jeremyevans0 (Jeremy Evans)
04:44 PM Feature #15547: deprecate iterator?
+1, @nobu could you commit it? Eregon (Benoit Daloze)
04:43 PM Feature #17133 (Closed): Add deprecate warning Kernel#iterator?
Eregon (Benoit Daloze)
10:58 AM Feature #17133: Add deprecate warning Kernel#iterator?
Sorry, this ticket was duplicate.
ref: https://bugs.ruby-lang.org/issues/15547
S_H_ (Shun Hiraoka)
10:49 AM Feature #17133 (Closed): Add deprecate warning Kernel#iterator?
`Kernel#iterator?` was mildly deprecate sicne`1.8.6`, as far as I checked [ruby-doc](https://ruby-doc.org/core-1.8.6/Kernel.html#method-i-iterator-3F).
I think it better, to deprecated warn added(or delete `Kernel#iterator?`).
pull...
S_H_ (Shun Hiraoka)
03:30 PM Bug #17030: Enumerable#grep{_v} should be optimized for Regexp
I'm surprised at the performance difference on MRI though. Just allocating the MatchData shouldn't be so expensive. Maybe `Regexp#match?` has additional optimizations? Eregon (Benoit Daloze)
03:01 PM Bug #17030: Enumerable#grep{_v} should be optimized for Regexp
This is something that a JIT with inlining and escape analysis can optimize and always be correct.
Static analysis doesn't cut it for Ruby.
On TruffleRuby (master + a fix I'll merge soon) for the benchmark above:
https://gist.github.com...
Eregon (Benoit Daloze)
01:03 PM Revision 1c138327 (git): Try to fix compile error on windows
https://github.com/ruby/ruby/runs/1041040167?check_suite_focus=true#step:11:177
```
compiling ../src/re.c
re.c
../src/re.c(317): error C2057: expected constant expression
../src/re.c(317): error C2466: cannot allocate an array of constan...
znz (Kazuhiro NISHIYAMA)
11:17 AM Feature #14476: Adding same_all? for checking whether all items in an Array are same
I hope this new feature never makes it.
`enum.each_cons(2).all? { _1 == _2 }` is simply superior and more versatile.
Moreover, I'm not convinced that the frequency of this use warrants a new feature, especially that good alternativ...
marcandre (Marc-Andre Lafortune)
10:47 AM Revision 7e1fddba (git): States Time.at expects rational-like argument to respond to #to_int
https://bugs.ruby-lang.org/issues/17131 nobu (Nobuyoshi Nakada)
10:42 AM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
@ko1 Can you review these potential performance overheads of adding Ractors? (and so potential regressions for code not using Ractors)
From https://github.com/ko1/ruby/blob/ractor_parallel/doc/ractor.md#language-changes-to-isolate-uns...
Eregon (Benoit Daloze)
10:10 AM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
mame (Yusuke Endoh) wrote in #note-15:
> Here is my counterproposal: When a Ractor attempts to read a constant that has an unsharable object, the object should be "deeply copied" and cached.
Reading a constant to me is always expected t...
Eregon (Benoit Daloze)
10:00 AM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
matz (Yukihiro Matsumoto) wrote in #note-14:
> We have left some naming issues. My current ideas are:
> ...
I think many people can agree the C socket API has terrible naming, I think we should not blindly follow those mistakes for new n...
Eregon (Benoit Daloze)
07:19 AM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
I basically like Ractors, but I'd like to discuss how to share constants.
Currently, a Ractor cannot read any constant if it has an unsharable object.
```
C = [[1, 2], [3, 4]]
Ractor.new do
p C #=> can not access non-sharable ...
mame (Yusuke Endoh)
05:49 AM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
OK, I accept the Ractor concept. Go ahead and merge.
We have left some naming issues. My current ideas are:
* I vote for `recv` mostly because of the past familiality to UNIX naming convention
* I also want `recvfrom` a la UDP com...
matz (Yukihiro Matsumoto)
10:29 AM Revision 75c4e9b7 (git): Named the magic number for regexp option buffer size
In `rb_enc_reg_error_desc`, no longer kcode option is added. nobu (Nobuyoshi Nakada)
10:01 AM Bug #17132 (Feedback): vcs.rb doesn't detect git submodules as vcs
Mostly a followup of #12239 as this was already about a similar use case.
When I run make-snapshot with a srcdir as target thats inside a submodule it doesn't detect it as vcs.
My command line and the output:
`~/dev/sailfish/jolla/p...
Thaodan (Björn Bidar)
02:54 AM Feature #17122: Add category to Warning#warn
I feel the original proposal, adding a category keyword argument, is natural.
Although it is incompatible, arity check (or parameter check),
checking the arity of Warning.warn and don't give actual arguments more than the arity,
can pre...
akr (Akira Tanaka)
02:05 AM Revision 1f09c436 (git): [ruby/reline] Move width calculator methods to Reline::Unicode
https://github.com/ruby/reline/commit/f348ecd9f5 aycabta (aycabta .)
02:05 AM Revision cdd7d410 (git): [ruby/reline] fix cursor_pos regexp match
https://github.com/ruby/reline/commit/1dd80ef188 tompng (tomoya ishida)
02:05 AM Revision 88829270 (git): [ruby/irb] Discard newlines at end of file
https://github.com/ruby/irb/commit/0b2773d91d aycabta (aycabta .)

08/27/2020

10:17 PM Bug #17031 (Closed): `Kernel#caller_locations(m, n)` should be optimized
Applied in changeset commit:git|3b24b7914c16930bfadc89d6aff6326a51c54295.
----------
Improve performance of partial backtraces
Previously, backtrace_each fully populated the rb_backtrace_t with all
backtrace frames, even if caller only...
jeremyevans (Jeremy Evans)
10:17 PM Revision 3b24b791 (git): Improve performance of partial backtraces
Previously, backtrace_each fully populated the rb_backtrace_t with all
backtrace frames, even if caller only requested a partial backtrace
(e.g. Kernel#caller_locations(1, 1)). This changes backtrace_each to
only add the requested frame...
jeremyevans (Jeremy Evans)
07:54 PM Revision 8095114f (git): Comply with guide for method doc: hash.c (#3466)
Instance methods considered (most unchanged):
- any
- dig
- \<=
- \<
- \>=
- \>
- to_proc
burdettelamar (Burdette Lamar)
06:28 PM Revision 029c7e60 (git): Comply with guide for method doc: hash.c (#3465)
Instance methods considered (maybe not all changed):
invert
merge!
merge
assoc
rassoc
flatten
compact
compact!
compare_by_identity
compare_by_identity?
burdettelamar (Burdette Lamar)
05:16 PM Bug #17030: Enumerable#grep{_v} should be optimized for Regexp
Dan0042 (Daniel DeLorme) wrote in #note-21:
> Yeah ok, that sentence wasn't very clear, sorry.
> ...
Unfortunately, you can't take this approach for VM optimizations without breaking backwards compatibility unless you also have a deopt...
jeremyevans0 (Jeremy Evans)
04:55 PM Bug #17030: Enumerable#grep{_v} should be optimized for Regexp
Yeah ok, that sentence wasn't very clear, sorry.
The first thing is that when compiling a method to an iseq, you have to set a flag on the iseq if the method contains any of the "last_match" pseudo-globals (`$~`, `$&`, `$1`, `Regexp.l...
Dan0042 (Daniel DeLorme)
08:03 AM Bug #17030: Enumerable#grep{_v} should be optimized for Regexp
Dan0042 (Daniel DeLorme) wrote in #note-15:
>
> ...
I didn't quite get it. So, to summarize, how this new approach should work? Can you elaborate in few more sentences?
Does ruby already do some kind of static analysis that you can...
fatkodima (Dima Fatko)
02:10 AM Bug #17030: Enumerable#grep{_v} should be optimized for Regexp
Dan0042 (Daniel DeLorme) wrote in #note-17:
> Maybe not impossible, but personally I wouldn't want to code that kind of analysis when a simple approach is enough for >90% of cases, and guaranteed to be bug-free.
Agreed
> ...
You a...
marcandre (Marc-Andre Lafortune)
04:52 PM Revision f332fe23 (git): Comply with guide for method doc: hash.c (#3464)
Instance methods considered (maybe not all changed):
to_a
inspect
to_hash
to_h
keys
values
include?
has_value?
==
eql?
hash
burdettelamar (Burdette Lamar)
04:17 PM Feature #15573: Permit zero step in Numeric#step and Range#step
@zverok
Without `take` (or simply if `step` will have a block) this will be problematic.
But, agreed, good example.
fatkodima (Dima Fatko)
04:12 PM Feature #15573: Permit zero step in Numeric#step and Range#step
> What is the purpose of a zero step? I cannot understand why/how it would be used.
> ...
For edge cases like this, they typically emerge on dynamic calculation (and if the calculation is mathematically sound, they probably shouldn't ...
zverok (Victor Shepelev)
03:42 PM Feature #15573: Permit zero step in Numeric#step and Range#step
Dan0042 (Daniel DeLorme) wrote in #note-9:
> What is the purpose of a zero step? I cannot understand why/how it would be used.
This is basically an infinite generator of the same number. I haven't real usecases for this also.
fatkodima (Dima Fatko)
01:59 PM Feature #15573: Permit zero step in Numeric#step and Range#step
What is the purpose of a zero step? I cannot understand why/how it would be used. Dan0042 (Daniel DeLorme)
10:29 AM Feature #15573: Permit zero step in Numeric#step and Range#step
Mathematically, it is allowed that step can be 0, but from practical stand point - this is an infinite loop waiting to be happen.
The original issue was about inconsistencies, so I decided to allow `0` for consistency (mainly because...
fatkodima (Dima Fatko)
04:01 PM Revision 9658a5a8 (git): Show deprecation warning on TCPSocket.gethostbyname
Glass_saga (Masaki Matsushita)
04:00 PM Revision 5483bf8f (git): add T_ZOMBIE support to lldb scripts
tenderlovemaking (Aaron Patterson)
03:54 PM Feature #14476: Adding same_all? for checking whether all items in an Array are same
How about `all_equivalent?` or `all_duplicates?`? fatkodima (Dima Fatko)
03:37 PM Feature #14394: Class.descendants
I would like the ruby team to reconsider this feature.
There is a high demand for this and a lot of implementations in the ruby world. Just some of them:
* rails' ActiveSupport - https://github.com/rails/rails/blob/master/activesupport...
fatkodima (Dima Fatko)
03:37 PM Bug #17130 (Closed): Method#super_method is broken for aliased methods
Applied in changeset commit:git|c60aaed1856b2b6f90de0992c34771830019e021.
----------
Fix Method#super_method for aliased methods
Previously, Method#super_method looked at the called_id to
determine the method id to use, but that isn't ...
jeremyevans (Jeremy Evans)
03:37 PM Bug #11189 (Closed): alias prepended module
Applied in changeset commit:git|c60aaed1856b2b6f90de0992c34771830019e021.
----------
Fix Method#super_method for aliased methods
Previously, Method#super_method looked at the called_id to
determine the method id to use, but that isn't ...
jeremyevans (Jeremy Evans)
03:37 PM Revision c60aaed1 (git): Fix Method#super_method for aliased methods
Previously, Method#super_method looked at the called_id to
determine the method id to use, but that isn't correct for
aliased methods, because the super target depends on the
original method id, not the called_id.
Additionally, aliases ...
jeremyevans (Jeremy Evans)
03:06 PM Revision f41bd0d7 (git): * 2020-08-28 [ci skip]
git[bot]
02:55 PM Revision 280d0281 (git): [ruby/stringio] Bump version to 0.1.4
https://github.com/ruby/stringio/commit/64f2360d38 nobu (Nobuyoshi Nakada)
02:46 PM Revision f4b9e943 (git): [ruby/io-console] Bug 17128: In test_set_winsize_console, wrapped re-size in a begin-rescue-else.
https://github.com/ruby/io-console/commit/a22333c33a leam (Leam Hall)
02:41 PM Revision b3c1c767 (git): [stringio] fix stringio codepoint enumerator off by one error
ylecuyer (Yoann Lecuyer)
02:39 PM Revision 96d701f7 (git): Adjust indents [ci skip]
nobu (Nobuyoshi Nakada)
01:31 PM Revision b8bfb1d5 (git): Comply with guide for method doc: hash.c (#3459)
Instance methods considered (some maybe not changed):
clear
[]=
replace
length
empty?
each_value
each_key
each_pair
transform_keys
transform_keys!
transform_values
transform_values!
burdettelamar (Burdette Lamar)
07:56 AM Feature #16476 (Closed): Socket.getaddrinfo cannot be interrupted by Timeout.timeout
merged: https://github.com/ruby/ruby/commit/2038cc6cab6ceeffef3ec3a765c70ae684f829ed Glass_saga (Masaki Matsushita)
07:43 AM Misc #17041: DevelopersMeeting20200831Japan
Adjust subject to match new date. duerst (Martin Dürst)
07:42 AM Revision 49001008 (git): sed -i '/rmodule.h/d'
shyouhei (Shyouhei Urabe)
07:42 AM Revision 5ca44076 (git): include/ruby/backward/2/rmodule.h: deprecate
Only one function in only one file uses contents of this public header.
That is not a wise idea. Let's just free the header's soul.
shyouhei (Shyouhei Urabe)
07:39 AM Revision 2038cc6c (git): Make Socket.getaddrinfo interruptible (#2827)
Before, Socket.getaddrinfo was using a blocking getaddrinfo(3) call.
That didn't allow to wrap it into Timeout.timeout or interrupt the thread in any way.
Combined with the default 10 sec resolv timeout on many Unix systems, this can
ha...
kirs (Kir Shatrov)
07:33 AM Feature #17103: Add a :since option to ObjectSpace.dump_all
That's a good point. I added:
> The current generation can be accessed using GC::count.
byroot (Jean Boussier)
12:19 AM Feature #17103: Add a :since option to ObjectSpace.dump_all
I missed "allocation tracing disabled are not dumped" sentence. And changed version is more helpful.
Now I don't have any objection.
One suggestion is, "since" integer is not clear yet (even if `trace_object_allocations` describes it...
ko1 (Koichi Sasada)
06:04 AM Revision 1035a3b2 (git): RUBY_SHOW_COPYRIGHT_TO_DIE: flip the default
Commit 7aab062ef3772c7e8e50fc872a1647918c76dbba says:
> ruby_show_version() will no longer exits the process, if
> ...
3.0 is a good timing for that "future".
shyouhei (Shyouhei Urabe)
06:03 AM Revision 756403d7 (git): sed -i '/r_cast.h/d'
shyouhei (Shyouhei Urabe)
06:03 AM Revision cd1d6d90 (git): include/ruby/backward/2/r_cast.h: deprecate
Remove all usages of RCAST() so that the header file can be excluded
from ruby/ruby.h's dependency.
shyouhei (Shyouhei Urabe)
06:02 AM Revision 44252552 (git): improve deprecation warning
We should not recommend RBIMPL_*. shyouhei (Shyouhei Urabe)
06:02 AM Revision 21b3bc10 (git): DEPRECATED_TYPE: is deprecated
Nobody uses this macro any longer. shyouhei (Shyouhei Urabe)
06:02 AM Revision 3437e624 (git): RClassDeprecated: delete
It has been deprecated for 5 years since 1f2255604087e9a7d7efcb2df61b5ca0e2daa200. shyouhei (Shyouhei Urabe)
05:42 AM Feature #17125 (Open): Remove Thread.exclusive
znz (Kazuhiro NISHIYAMA)
05:37 AM Feature #17125 (Closed): Remove Thread.exclusive
Applied in changeset commit:git|3353baac3d55e1b42515ce7084e7b7f07abc0192.
----------
Use own mutex instead of Thread.exclusive
ref [Feature #17125]
znz (Kazuhiro NISHIYAMA)
05:37 AM Revision 3353baac (git): Use own mutex instead of Thread.exclusive
ref [Feature #17125] znz (Kazuhiro NISHIYAMA)
05:27 AM Revision 5ae2c1b0 (git): git rm include/ruby/backward/rubyio.h
shyouhei (Shyouhei Urabe)
05:11 AM Revision 6ec6dd3e (git): git rm include/ruby/backward/rubysig.h
shyouhei (Shyouhei Urabe)
05:09 AM Revision 5ca7b6ab (git): git rm include/ruby/backward/{st,util}.h
shyouhei (Shyouhei Urabe)
05:08 AM Revision d9c93a0d (git): * 2020-08-27 [ci skip]
git[bot]
05:08 AM Revision 6b6a4471 (git): rb_deprecated_classext_struct: delete
Used from nowhere any longer. shyouhei (Shyouhei Urabe)
05:08 AM Revision 4bc38463 (git): git rm include/ruby/backward/classext.h
shyouhei (Shyouhei Urabe)
05:07 AM Revision 0da2a3f1 (git): sed -i '\,2/extern.h,d'
shyouhei (Shyouhei Urabe)
05:07 AM Revision b2e1688e (git): git rm include/ruby/backward/2/extern.h
shyouhei (Shyouhei Urabe)
03:21 AM Bug #17129: bundle install `eventmachine` and `sassc` fails since 914b2208ab3eddec478cdc3e079e6c30d0f0892c
I think this issue has been resolved by https://github.com/ruby/ruby-docker-images/commit/6e36738aaea9caedc31372d5c3f91ea831ae3c3c Thank you! yahonda (Yasuo Honda)
03:18 AM Bug #17129: bundle install `eventmachine` and `sassc` fails since 914b2208ab3eddec478cdc3e079e6c30d0f0892c

> This is not a problem by itself. But a next mystery arises: how was it possible to compile eventmachine before, given it is written in C++?
Rails CI runs on Buildkite, whose Dockerfile also installs `g++`.
https://github.com/...
yahonda (Yasuo Honda)
02:35 AM Bug #17129: bundle install `eventmachine` and `sassc` fails since 914b2208ab3eddec478cdc3e079e6c30d0f0892c
I added g++ in the docker image. I confirmed this problem was fixed by the steps to reproduce described above. Thanks. mrkn (Kenta Murata)
01:38 AM Bug #17129: bundle install `eventmachine` and `sassc` fails since 914b2208ab3eddec478cdc3e079e6c30d0f0892c
Thank you!
https://gist.github.com/mrkn/1c2b8ad11810355ff916fd86af8317be#file-config-log-L1147-L1149
> ```
> ...
So it seems C++ compiler does not exist at all in the container.
This is not a problem by itself. But a next myster...
shyouhei (Shyouhei Urabe)
01:28 AM Bug #17129: bundle install `eventmachine` and `sassc` fails since 914b2208ab3eddec478cdc3e079e6c30d0f0892c
This is config.log produced by `rake docker:build ruby_version=master:914b2208ab3eddec478cdc3e079e6c30d0f0892c`.
https://gist.github.com/mrkn/1c2b8ad11810355ff916fd86af8317be
mrkn (Kenta Murata)
01:14 AM Bug #17129: bundle install `eventmachine` and `sassc` fails since 914b2208ab3eddec478cdc3e079e6c30d0f0892c
Does this help to check `config.log`?
https://gist.github.com/yahonda/25231929b96c2eb5a6cb6df8862ac742
yahonda (Yasuo Honda)
12:13 AM Feature #16986: Anonymous Struct literal
> So, external input like JSON data is not the target of this proposal. Rather, this proposal is just a variant of Struct, which allows to omit the definition line: Foo = Struct.new(...).
Yes. This proposal is strict one.
ko1 (Koichi Sasada)

08/26/2020

08:43 PM Bug #17030: Enumerable#grep{_v} should be optimized for Regexp
What about this?
```ruby
2.times do
p $~ # depends on match *below*
rx =~ str
end
```
Now imagine if `2.times` is replaced by `foo`; a priori we can't know if or how many times the block will be executed. So what I was tr...
Dan0042 (Daniel DeLorme)
07:31 PM Bug #17030: Enumerable#grep{_v} should be optimized for Regexp
Dan0042 (Daniel DeLorme) wrote in #note-15:
> But static analysis has other limits
Good example but it is easily resolved: assume `v` isn't a Regexp and we may get a false positive, which is not a big issue. There will be other false...
marcandre (Marc-Andre Lafortune)
07:17 PM Bug #17030: Enumerable#grep{_v} should be optimized for Regexp
> Couldn't static analysis of the code determine in most cases if match data need be generated or not?
scivola20 had a good idea, but this is even better. We can automatically get the best performance without having to manually optimi...
Dan0042 (Daniel DeLorme)
05:30 PM Bug #17030: Enumerable#grep{_v} should be optimized for Regexp
fatkodima (Dima Fatko) wrote in #note-13:
> In many cases, probably yes, but again, `case-when`, when arguments/consts/etc instead of local vars are used - it is hard to tell if them are regexes or not.
That's not really what I'm pro...
marcandre (Marc-Andre Lafortune)
05:01 PM Bug #17030: Enumerable#grep{_v} should be optimized for Regexp
marcandre (Marc-Andre Lafortune) wrote in #note-12:
> Maybe it would be best to start a different thread as none of these proposals have a relation to `grep{_v}` without block not being optimized.
I have already implemented a patch to m...
fatkodima (Dima Fatko)
03:01 PM Bug #17030: Enumerable#grep{_v} should be optimized for Regexp
Couldn't static analysis of the code determine in most cases if match data need be generated or not?
This is Ruby, so I can think of some corner cases where things like `const_get(:Regexp).last_match` would be impacted (in theory), wh...
marcandre (Marc-Andre Lafortune)
08:31 AM Bug #17030: Enumerable#grep{_v} should be optimized for Regexp
sawa (Tsuyoshi Sawada) wrote in #note-10:
> I feel scivola20 (sciv ola)'s idea promising, but have a concern that it is going to introduce the same kind of mess as when `"string"f` notation was introduced (same "f" used due to frozen and...
fatkodima (Dima Fatko)
08:27 PM Bug #17048: Calling initialize_copy on live modules leads to crashes
Yes, nobu's patch fixes the crash. It is technically a breaking change though, so maybe it needs approval from Matz?
Side note, the bug still exists on master as of [today](https://wandbox.org/permlink/afSmo1UbL9wnIBmq).
alanwu (Alan Wu)
06:11 PM Bug #17131: Time.at(time) != time in certain cases
The check for `to_int` in addition to `to_r` is deliberate. The related code comment states: `test to_int method availability to reject non-Numeric objects such as String, Time, etc which have to_r method`. So that is not a bug.
I'v...
jeremyevans0 (Jeremy Evans)
05:49 PM Bug #17131 (Closed): Time.at(time) != time in certain cases
## Problem
According to the [spec](https://github.com/ruby/ruby/blob/445e5548c9da906a2d7a490e660328b2893d07d1/spec/ruby/core/time/at_spec.rb#L89):
```ruby
describe "with an argument that responds to #to_r" do
it "coerce...
phil_pirozhkov (Phil Pirozhkov)
05:39 PM Bug #17130: Method#super_method is broken for aliased methods
Pull request submitted: https://github.com/ruby/ruby/pull/3458 jeremyevans0 (Jeremy Evans)
05:36 PM Bug #17130 (Closed): Method#super_method is broken for aliased methods
Method#super_method currently does not work correctly for aliased methods. Here's a simple example:
```ruby
class A
def m1; p :A_m1 end
def m2; p :A_m2 end
end
class B < A
def m1; p :B_m1; super end
alias m2 m1
end
...
jeremyevans0 (Jeremy Evans)
05:20 PM Bug #16997: IO#gets converts some \r\n to \n with universal_newline: false
I'm able to reproduce this issue on Windows (`ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x64-mingw32]`), but not on OpenBSD (probably expected).
On Windows, this doesn't just affect IO#gets, it also affects IO#read and likely othe...
jeremyevans0 (Jeremy Evans)
12:36 PM Revision 445e5548 (git): Fixed error messages at non-ascii %string terminator
nobu (Nobuyoshi Nakada)
12:16 PM Revision cc36b5d4 (git): Removed a never-true condition
nobu (Nobuyoshi Nakada)
09:05 AM Feature #17127: Some TrueClass methods are faster if implemented in Ruby
these method able to speeding up implemented by Ruby code.
- `TrueClass#^`
- `TrueClass#&`
benchmark:
```yaml
benchmark:
to_s: |
true.to_s
inspect: |
true.inspect
or: |
true | false
xor: |
true ^ false
and: |...
S_H_ (Shun Hiraoka)
08:40 AM Misc #17041: DevelopersMeeting20200831Japan
The meeting was postponed to the next Monday (31th Aug.) for some reason. mame (Yusuke Endoh)
01:16 AM Misc #17041: DevelopersMeeting20200831Japan
* [Feature #16812] Allow slicing arrays with ArithmeticSequence (mrkn)
* I found the wrong test case, so the implementation was also in wrong state. The proposed patch has been fixed.
* There are opposing opinions in the following ...
mrkn (Kenta Murata)
08:39 AM Bug #17129: bundle install `eventmachine` and `sassc` fails since 914b2208ab3eddec478cdc3e079e6c30d0f0892c
It only reproduces with Ruby using`rubylang/ruby:master-nightly-bionic`.
It does not reproduce ruby installed by `rbenv install 2.8.0-dev` at local Ubuntu 18.04.5 LTS, then I do not know how to provide `config.log`, yet.
yahonda (Yasuo Honda)
08:10 AM Bug #17129: bundle install `eventmachine` and `sassc` fails since 914b2208ab3eddec478cdc3e079e6c30d0f0892c
Is there a way for me to get the `config.log` which has to be created during compiling ruby itself? It must contain the reason why the C++ compiler was rejected. shyouhei (Shyouhei Urabe)
08:02 AM Bug #17129 (Closed): bundle install `eventmachine` and `sassc` fails since 914b2208ab3eddec478cdc3e079e6c30d0f0892c
bundle install `eventmachine` and `sassc` fails since 914b2208ab3eddec478cdc3e079e6c30d0f0892c
Ruby on Rails CI against ruby 2.8.0dev using rubylang/ruby:master-nightly-bionic docker image has been failing since https://buildkite.com/...
yahonda (Yasuo Honda)
07:43 AM Feature #17104: Do not freeze interpolated strings when using frozen-string-literal
Non-freezing interpolated strings is good thing to reduce allocations.
I think it is possible if most developers understands difference of interpolated and non-interpolated strings.
akr (Akira Tanaka)
07:30 AM Feature #17125: Remove Thread.exclusive
We checked gems which use this API and they look obsoleted.e
We should check the impact with preview.
Go ahead
naruse (Yui NARUSE)
07:07 AM Feature #17040: cleanup include/ruby/backward*
It looks implementation detail and concurrent gems already supports new headers.
Go ahead
naruse (Yui NARUSE)
06:35 AM Feature #17122: Add category to Warning#warn
If we can accept the compatibility issue, I support it.
However, I'm not sure the "category" is a last attribute, so to make stable API, accept `**kw` is one idea (but it increases runtime overhead).
ko1 (Koichi Sasada)
06:02 AM Feature #16345: Don't emit deprecation warnings by default.
We discussed about it and I recognized the motivation is how to shorten the migration period (to reuse conflicts feature or to delete barrier features) and I understand the advantages of this proposal.
IMO off-by-default and on-by-defau...
ko1 (Koichi Sasada)
05:28 AM Revision 72cb9bc5 (git): [webrick][DOC] Describe the stance of WEBrick about its security and utilization (#3457)
WEBrick is not recommended for the production use. We need to explicitly
describe this fact in the document to avoid troubles due to misunderstanding.
Kenta Murata
03:54 AM Bug #17037: rounding of Rational#to_f
Gauche scheme interpreter has same issue and Kawai-san (the author of Gauche) investigate it.
http://blog.practical-scheme.net/gauche/20200722-ratnum-flonum
akr (Akira Tanaka)
 

Also available in: Atom