Project

General

Profile

Activity

From 04/28/2021 to 05/04/2021

05/04/2021

11:41 PM Feature #17752: Enable -Wundef for C extensions in repository
I propose `-Wundef` warnings not be made into errors for the time being.
PR: https://github.com/ruby/ruby/pull/4455
xtkoba (Tee KOBAYASHI)
10:58 PM Feature #17752: Enable -Wundef for C extensions in repository
Maybe [icc 2021.2 x64](http://rubyci.s3.amazonaws.com/icc-x64/ruby-master/log/20210504T190003Z.fail.html.gz) is also broken. mame (Yusuke Endoh)
10:56 PM Feature #17752 (Assigned): Enable -Wundef for C extensions in repository
I think this change broke the following servers on RubyCI.
* [Ubuntu armv7l eabihf](http://rubyci.s3.amazonaws.com/scw-9d6766/ruby-master/log/20210504T221708Z.fail.html.gz)
* [CentOS 7.6(1810) x86_64](http://rubyci.s3.amazonaws.com/c...
mame (Yusuke Endoh)
12:57 PM Feature #17752 (Closed): Enable -Wundef for C extensions in repository
Applied in changeset commit:git|8b32de2ec9b72d4c9ede19b70ec9497718fb25a6.
----------
Add -Werror=undef to default warnflags for core
* See [Feature #17752]
* For external extensions it's transformed to just warn and not error (-Wundef)...
Eregon (Benoit Daloze)
11:40 PM Bug #17846: Percent mode changes the output from ERB beyond what is documented
k0kubun (Takashi Kokubun) wrote in #note-4:
> [..] writing a comment in the middle of `<% %>` is currently not supported.
I don't really have an issue with this resolution, however, is it documented
somewhere? I cannot find this men...
graywolf (Gray Wolf)
02:12 AM Bug #17846 (Rejected): Percent mode changes the output from ERB beyond what is documented
So the trick is:
```rb
$ erb -x repro.erb
#coding:UTF-8
_erbout = +''; # ; _erbout.<< "x\n".freeze
; _erbout.<< "y\n".freeze
; _erbout
```
```rb
$ erb -x -P repro.erb
#coding:UTF-8
_erbout = +''; # ; _erbout.<< "x\ny\n".freeze
; _er...
k0kubun (Takashi Kokubun)
02:01 AM Bug #17846 (Feedback): Percent mode changes the output from ERB beyond what is documented
Oh sorry, I guess that's why it shouldn't change the output lol. will take a look k0kubun (Takashi Kokubun)
02:01 AM Bug #17846 (Rejected): Percent mode changes the output from ERB beyond what is documented
```
-P disable ruby code evaluation for lines beginning with %
```
"lines beginning with `%`" means lines beginning with `%`. Your lines start with `<` or `y`, so `-P` is irrelevant to your input.
k0kubun (Takashi Kokubun)
08:49 PM Revision 370949aa (git): test/net/ftp/test_ftp.rb - fix intermittent MinGW failure
Fixes intermittent error as below:
[242/838] 5316=test_ftp
#<Thread:0x0000020aa8733f20 D:/a/ruby/ruby/src/test/net/ftp/test_ftp.rb:2532 run> terminated with exception (report_on_exception is true):
D:/a/ruby/ruby/src/tool/lib/minitest/u...
MSP-Greg (Greg L)
06:59 PM Revision fd3a2034 (git): What's Here for class IO (#4440)
* What's Here for class IO burdettelamar (Burdette Lamar)
06:25 PM Bug #14400 (Closed): IO#ungetc and IO#ungetbyte documentation is inconsistent with the behavior
Applied in changeset commit:git|c809a8cae8c2c8e64fd2d1b0fe8571faf443b8cd.
----------
Fix documentation for IO#unget{byte,c}
Fixes [Bug #14400]
jeremyevans (Jeremy Evans)
06:23 PM Revision c809a8ca (git): Fix documentation for IO#unget{byte,c}
Fixes [Bug #14400] jeremyevans (Jeremy Evans)
06:14 PM Bug #15928: Constant declaration does not conform to JIS 3017:2013
I submitted a pull request to fix this: https://github.com/ruby/ruby/pull/4450
Like @mame, I think this is a real bug. Constant assignment evaluation order should be consistent with attribute assignment evaluation order.
The spec ...
jeremyevans0 (Jeremy Evans)
04:29 PM Feature #17848 (Rejected): inline rbs either by rdoc comments or changing syntax
I like gradual typing - I like the syntax of rbs files but for coding - convenience it would be nice if we had inline syntax for types.
I know that steep allows you to define types inline but because it is valid ruby syntax - the code ...
dsisnero (Dominic Sisneros)
04:15 PM Feature #17832: allow IO write to write memoryview object without copying or add IO#write_memoryview
For debugging purposes, it would be nice if we could modify the content of view directly from Ruby code without any third-party C extension, although I cannot tell whether `IO` is suitable for that. xtkoba (Tee KOBAYASHI)
01:19 PM Feature #17832: allow IO write to write memoryview object without copying or add IO#write_memoryview
any comments on this feature request? dsisnero (Dominic Sisneros)
03:46 PM Revision 14c932e5 (git): * 2021-05-05 [ci skip]
git[bot]
03:46 PM Revision 3ca291c9 (git): Correctly update array capacity after realloc
Reallocating to a smaller size in the transient heap may result in no
change in the actual capacity but the capacity of the array is still
updated to the smaller value.
This commit changes `ary_heap_realloc` to return the new capacity w...
peterzhu2118 (Peter Zhu)
02:22 PM Feature #17837: Add support for Regexp timeouts
> The main/major issue is it can trigger within ensure, right? Is there anything else?
That would fix most issues, but not all. It can also trigger in places where exception are entirely unexpected, so there's just no `ensure`.
Als...
byroot (Jean Boussier)
12:55 PM Feature #17837: Add support for Regexp timeouts
duerst (Martin Dürst) wrote in #note-9:
> I very strongly suggest that this feature be voluntary, e.g. as an additional flag on the regular expression.
If you have to turn it on for each regexp, that would make the feature kinda useless...
Dan0042 (Daniel DeLorme)
10:31 AM Feature #17837: Add support for Regexp timeouts
sam.saffron (Sam Saffron) wrote in #note-6:
> Sort of, it gets complicated. Unicorn is easy cause it is single threaded. Killing off threads in Puma is much more fraught, in Sidekiq the old pattern of killing off was nuked by Mike cause...
Eregon (Benoit Daloze)
12:12 AM Feature #17837: Add support for Regexp timeouts
sam.saffron (Sam Saffron) wrote in #note-6:
> > Or is it too difficult to detect them / the problematic patterns evolve over time?
> ...
In general, yes. But for an extremely large set of regular expressions, it's easy to predict tha...
duerst (Martin Dürst)
12:56 PM Revision d0998850 (git): Fix -Wundef warnings for RBIMPL_HAS_BUILTIN
* See [Feature #17752]
* Defining explicitly to 0 seems the best solution, see https://github.com/ruby/ruby/pull/4428
* For example:
./include/ruby/internal/has/builtin.h:49:33: error: "RBIMPL_HAS_BUILTIN___builtin_assume" is not defined...
Eregon (Benoit Daloze)
12:56 PM Revision f108bc32 (git): HAVE_* macros should not be defined with value 0
* See [Feature #17752] Eregon (Benoit Daloze)
12:56 PM Revision 0764d323 (git): Fix -Wundef warnings for patterns `#if HAVE`
* See [Feature #17752]
* Using this to detect them:
git grep -P 'if\s+HAVE' | grep -Pv 'HAVE_LONG_LONG|/ChangeLog|HAVE_TYPEOF'
Eregon (Benoit Daloze)
12:56 PM Revision fa7a712d (git): Fix -Wundef warnings for HAVE_RB_EXT_RACTOR_SAFE
* See [Feature #17752] Eregon (Benoit Daloze)
12:56 PM Revision 59a92a84 (git): Fix -Wundef warnings in core extensions
* See [Feature #17752] Eregon (Benoit Daloze)
12:56 PM Revision f1dcc3da (git): Add RBIMPL_RVALUE_EMBED_LEN_MAX neeeded by internal/bignum.h
* It evaluated to 0 before, revealed by -Wundef
* See [Feature #17752]
Co-authored-by: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com>
Eregon (Benoit Daloze)
12:56 PM Revision 68d6bd08 (git): Fix trivial -Wundef warnings
* See [Feature #17752]
Co-authored-by: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com>
Eregon (Benoit Daloze)
12:56 PM Revision 229cbeba (git): Fix -Wundef warnings in coroutine/*/Context.h
* See [Feature #17752]
Co-authored-by: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com>
Eregon (Benoit Daloze)
12:56 PM Revision 9e2483ee (git): vm_dump.c: rename HAVE_BACKTRACE to USE_BACKTRACE
* HAVE_ macros should only be defined or undefined, not used for their value.
* See [Feature #17752]
Co-authored-by: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com>
Eregon (Benoit Daloze)
12:56 PM Revision 8b32de2e (git): Add -Werror=undef to default warnflags for core
* See [Feature #17752]
* For external extensions it's transformed to just warn and not error (-Wundef)
like other other -Werror in warnflags.
Eregon (Benoit Daloze)
10:03 AM Revision 113ddf4d (git): test/net/imap/test_imap.rb: wait a moment before socket is closed
to try to suppress a failure on Solaris. This is the same as
19504d115dc09558255fcb5213f80dd8454ab189
http://rubyci.s3.amazonaws.com/solaris11-sunc/ruby-master/log/20210504T070007Z.fail.html.gz
```
1) Error:
IMAPTest#test_idle_done_no...
mame (Yusuke Endoh)
01:43 AM Feature #17825: Uniformize Float::INFINITY and Date::infinity.new
It's hard to remove that class because of marshal compatibility.
```diff
diff --git a/ext/date/lib/date.rb b/ext/date/lib/date.rb
index 65c34ace492..e96d102d7da 100644
--- a/ext/date/lib/date.rb
+++ b/ext/date/lib/date.rb
@@ -9,6...
nobu (Nobuyoshi Nakada)
01:08 AM Revision ef406a6c (git): Suppress maybe-uninitialized warning by mingw gcc 11
nobu (Nobuyoshi Nakada)

05/03/2021

11:53 PM Revision 7a3dd05e (git): spec/ruby/library/net/http/http/fixtures/http_server.rb host naming for Windows
MSP-Greg (Greg L)
11:53 PM Revision 5a42ef49 (git): Fix test/net/http/test_https.rb host naming for Windows
MSP-Greg (Greg L)
09:11 PM Revision 9a6226c6 (git): Eagerly allocate instance variable tables along with object
This allows us to allocate the right size for the object in advance,
meaning that we don't have to pay the cost of ivar table extension
later. The idea is that if an object type ever became "extended" at
some point, then it is very like...
tenderlovemaking (Aaron Patterson)
09:10 PM Bug #17511: Segmentation fault when compiled with -O2 or higher on ARM Android
Just for the record, there turns out to be a Clang/LLVM bug in its `__builtin_longjmp` implementation for ARM Linux (more specifically for non-Darwin and non-Windows) for which there seems to be no reliable workaround on user's side.
...
xtkoba (Tee KOBAYASHI)
07:08 PM Bug #17846: Percent mode changes the output from ERB beyond what is documented
Apologies if intentional, but it seems that whitespace between `<%` and `#` can be troublesome:
https://makandracards.com/makandra/3533-erb-templates-and-comments
xtkoba (Tee KOBAYASHI)
04:31 PM Feature #11963 (Closed): Add a simple static web server to `ruby`
jeremyevans0 (Jeremy Evans)
04:26 PM Feature #11963: Add a simple static web server to `ruby`
I guess this one can be closed, I've just ran my first `ruby -run -e httpd . -p 8080` using ruby 2.7! ulysse (Ulysse Buonomo)
04:00 PM Revision a6ff1dc6 (git): * 2021-05-04 [ci skip]
git[bot]
03:59 PM Revision 14ee2635 (git): Workaround failures on Windows
nobu (Nobuyoshi Nakada)
03:44 PM Bug #17812 (Closed): Timeout::Error doesn't let two-argument raise() set a new message
jeremyevans0 (Jeremy Evans)
02:57 PM Feature #17837: Add support for Regexp timeouts
> I admit that this is less important than per-request timeout.
I'd like to second what Sam said on this. With what is now the most common way of deploying Ruby in production, namely a threaded web-server like Puma, there is no good w...
byroot (Jean Boussier)
01:38 PM Feature #17837: Add support for Regexp timeouts
Eregon (Benoit Daloze) wrote in #note-5:
> Shouldn't an app have a global timeout per request anyway, and that would catch regexps and other things too?
I agree that it is much better to have. Still, I think this proposal is good-to-...
mame (Yusuke Endoh)
07:57 AM Feature #17837: Add support for Regexp timeouts
> Shouldn't an app have a global timeout per request anyway
Sort of, it gets complicated. Unicorn is easy cause it is single threaded. Killing off threads in Puma is much more fraught, in Sidekiq the old pattern of killing off was nuk...
sam.saffron (Sam Saffron)
01:29 PM Feature #17847: `ruby -run -e httpd` displays URL
+1 mame (Yusuke Endoh)
12:56 PM Feature #17847 (Closed): `ruby -run -e httpd` displays URL
The current version of un.rb `httpd` shows port number only:
```
$ ruby -run -e httpd
[2021-05-03 21:55:09] INFO WEBrick 1.7.0
[2021-05-03 21:55:09] INFO ruby 3.1.0 (2021-05-03) [x86_64-linux]
[2021-05-03 21:55:09] INFO WEBrick...
gotoken (Kentaro Goto)
11:34 AM Feature #17795: Around `Process.fork` callbacks API
Another use-case I found: https://github.com/rubyjs/mini_racer#fork-safety
That gem (and others of course) could provide some helpers methods based on the chosen strategy if there is a common hook.
Right now providing fork safety (if...
Eregon (Benoit Daloze)
12:46 AM Bug #17843: Ruby on Rails error[BUG] Segmentation fault at 0x0000000000000110 ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-darwin15] (#42110)
Apologies about my misleading statement about support for the OS.
It doesn't seem to be receiving security updates anymore so I had assumed it reached end of life.
Looking at the report, the crash happens after fork.
There was a Ruby cr...
alanwu (Alan Wu)

05/02/2021

11:44 PM Bug #17843: Ruby on Rails error[BUG] Segmentation fault at 0x0000000000000110 ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-darwin15] (#42110)
The latest version of Xcode (12.5 beta) seems to support macOS 10.9 or later: https://developer.apple.com/support/xcode/ xtkoba (Tee KOBAYASHI)
11:11 PM Bug #17843: Ruby on Rails error[BUG] Segmentation fault at 0x0000000000000110 ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-darwin15] (#42110)
OS X El Capitan is no longer supported by Apple.
I'm not sure about Ruby's policy for trying to support OSes that the vendor no longer supports.
In any case, I would suggest upgrading to a newer OS to deal with the crash.
alanwu (Alan Wu)
11:17 PM Revision a0296448 (git): * 2021-05-03 [ci skip]
git[bot]
11:17 PM Revision 511b2f30 (git): Get rid of misleading indentation
xtkoba (Tee KOBAYASHI)
09:26 PM Feature #17845: Windows Ruby - ucrt build?
@larskanis
Sorry, I meant to ping you immediately, but got distracted. Also, I saw your changes to ridk, but didn't see your patch file.
Anyway, I agree that there needs to be some way to distinguish between mingw and ucrt builds....
MSP-Greg (Greg L)
08:11 PM Feature #17845: Windows Ruby - ucrt build?
> I wonder if there is a standard target triplet for MinGW + UCRT.
The compiler triplet for MINGW with UCRT is still 'x86_64-w64-mingw32'. This is defined in MSYS2 [here](https://github.com/msys2/MSYS2-packages/blob/master/filesystem...
larskanis (Lars Kanis)
06:42 PM Bug #17846 (Rejected): Percent mode changes the output from ERB beyond what is documented
```
/ # cat repro.erb
<% # %>x
y
/ # erb repro.erb
y
/ # erb -P repro.erb
/ #
```
Based on documentation of -P (disabling percent mode), this change in behavior
is unexpected.
graywolf (Gray Wolf)

05/01/2021

08:06 PM Bug #17774: Quantified empty group causes regex to fail
sawa (Tsuyoshi Sawada) wrote in #note-3:
> wanabe (_ wanabe) wrote in #note-2:
> ...
Oh I'm very sorry, I wrote it wrong.
I was aware of it, but I simply used the wrong word.
wanabe (_ wanabe)
12:50 PM Bug #17774: Quantified empty group causes regex to fail
wanabe (_ wanabe) wrote in #note-2:
> ... Oniguruma, a derivative of Onigmo
I believe it is the other way around.
sawa (Tsuyoshi Sawada)
11:06 AM Bug #17774: Quantified empty group causes regex to fail
The reproduction example could be a bit shorter.
```
$ ruby -ve 'p "xxxx" =~ /(?:x(){5})*$/, "xxxx" =~ /(?:x(){4})*$/'
ruby 3.1.0dev (2021-05-01T02:04:17Z origin/master 121fa24a34) [x86_64-linux]
3
0
```
This problem has already...
wanabe (_ wanabe)
07:41 PM Feature #17845: Windows Ruby - ucrt build?
MinGW `msvcrt` packages have a prefix of `mingw-w64-x86_64`,
MinGW ` ucrt ` packages have a prefix of `mingw-w64-ucrt-x86_64`.
MSP-Greg (Greg L)
07:33 PM Feature #17845: Windows Ruby - ucrt build?
I wonder if there is a standard target triplet for MinGW + UCRT. I came up with `x86_64-w64-mingw32-ucrt`, but when googled it hits only one page. I suppose something like `x64-mingw32-ucrt` is acceptable for `target_os` in `configure`, ... xtkoba (Tee KOBAYASHI)
06:38 PM Feature #17845 (Closed): Windows Ruby - ucrt build?
Currently, Windows Ruby is normally compiled two ways.
The first, mswin, is compiled using Microsoft's current Visual C compiler, and links to the universal runtime (ucrt).
The second, mingw, is compiled using MinGW gcc. This link...
MSP-Greg (Greg L)
03:09 PM Bug #17843: Ruby on Rails error[BUG] Segmentation fault at 0x0000000000000110 ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-darwin15] (#42110)
I wonder if the problem disappears by backporting commit:4ea96f1d4f8a50c204c4367c994cdbf12cd97b64 which modifies `fill_random_bytes_syscall` so that it calls `CCRandomGenerateBytes` instead for newer environments (probably for macOS >= 1... xtkoba (Tee KOBAYASHI)
12:54 PM Bug #17843: Ruby on Rails error[BUG] Segmentation fault at 0x0000000000000110 ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-darwin15] (#42110)
The stack trace shows that the crash occurred at:
```
libdispatch.dylib(_dispatch_queue_wakeup_with_qos_slow+126) [0x00007fff90ff9b06]
libcorecrypto.dylib(ccrng_CommonCrypto_generate+309) [0x00007fff9e03bddc]
libruby.3.0.dylib(ruby_f...
xtkoba (Tee KOBAYASHI)
08:03 AM Bug #17843 (Closed): Ruby on Rails error[BUG] Segmentation fault at 0x0000000000000110 ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-darwin15] (#42110)
following tutorial
https://www.youtube.com/watch?v=nlKIJfv50U0
On this command
$ rails g scaffold Survey name:text laptop:binary os:text
the following error was generated with the following instruction
[BUG] Segmentation fault...
nayaronfire (kk nayar)
01:01 PM Feature #17844 (Open): Support list of methods to test with respond_to?
Not sure whether this is a good idea at all, but I guess it doesn't hurt to put it up for debate.
The preferred way to check e.g. whether an argument is acceptable is by use of `respond_to?`:
```ruby
# Don't
def notify(recipien...
svoop (Sven Schwyn)
02:04 AM Bug #17606 (Closed): Make failed on i386-cygwin (miniruby.exe aborted)
Applied in changeset commit:git|121fa24a3451b45c41ac0a661b64e9fc8600e589.
----------
Adjust struct member offset for i386 Cygwin
Fixes [Bug #17606]
xtkoba (Tee KOBAYASHI)
02:04 AM Revision 121fa24a (git): Adjust struct member offset for i386 Cygwin
Fixes [Bug #17606] xtkoba (Tee KOBAYASHI)
12:13 AM Revision f64d7674 (git): Fix example for custom warn method
Regexp has a match? method.
[ci skip]
adam12 (Adam Daniels)

04/30/2021

10:47 PM Misc #17842: Example incorrect in documentation for Hash#dig
Thanks for the fix! I merged your pull request. jeremyevans0 (Jeremy Evans)
10:46 PM Misc #17842 (Closed): Example incorrect in documentation for Hash#dig
Applied in changeset commit:git|a9824a3113ee5342e7ac90387de9f3b9d5ec9e0a.
----------
Correct documentation example on Hash#dig
Fixes [Misc #17842]. The current documentation suggests that:
{foo: {bar: {baz: 2}}}.dig(:foo, :bar...
nickkelley (Nick Kelley)
10:37 PM Misc #17842: Example incorrect in documentation for Hash#dig
Here is a pull request that fixes the comment: https://github.com/ruby/ruby/pull/4441
nickkelley (Nick Kelley)
10:30 PM Misc #17842 (Closed): Example incorrect in documentation for Hash#dig
In the current examples for Hash#dig, we have:
```
h = {foo: {bar: {baz: 2}}}
h.dig(:foo) # => {:bar=>{:baz=>2}}
h.dig(:foo, :bar) # => {:bar=>{:baz=>2}} <-- incorrect return value
```
This should be:
```
h = {foo: {bar: {baz: ...
nickkelley (Nick Kelley)
10:46 PM Revision a867d552 (git): * 2021-05-01 [ci skip]
git[bot]
10:46 PM Revision a9824a31 (git): Correct documentation example on Hash#dig
Fixes [Misc #17842]. The current documentation suggests that:
{foo: {bar: {baz: 2}}}.dig(:foo, :bar) # => {:bar=>{:baz=>2}}
when it should be:
{foo: {bar: {baz: 2}}}.dig(:foo, :bar) # => {:baz=>2}
nickkelley (Nick Kelley)
08:29 PM Feature #17837: Add support for Regexp timeouts
Shouldn't an app have a global timeout per request anyway, and that would catch regexps and other things too?
Capturing the time in regexp interrupt checks is easy but sounds fairly expensive.
Could such regexps emit a warning since ...
Eregon (Benoit Daloze)
03:06 PM Bug #17840: `make install` overriding file permission with 644
You are right! Thank you for your detailed explanation! I confirmed the files permissions were changed by your steps.
> As for package management, for example Gentoo Portage [removes bundled gems](https://gitweb.gentoo.org/repo/gentoo...
jaruga (Jun Aruga)
02:45 PM Bug #16798: ENV.replace on Windows with a variable name not respecting case will clear it
The backport breaks on RHEL7:
~~~
hash.c: In function 'keylist_delete':
hash.c:5661:5: error: 'for' loop initial declarations are only allowed in C99 mode
for (long i=0; i<RARRAY_LEN(keys); i++) {
^
hash.c:5661:5: note:...
vo.x (Vit Ondruch)
02:36 PM Bug #17823: addr2line.c: Interpret `DW_RLE_start_length`
PR: https://github.com/ruby/ruby/pull/4439 xtkoba (Tee KOBAYASHI)
02:11 PM Bug #17810: addr2line.c: Some symbol names missing in C backtrace with Clang/LLVM
PR: https://github.com/ruby/ruby/pull/4438
The second patch is omitted from the PR, because it turns out to be not very useful. The corresponding source file name should be easily guessable from the symbol name.
xtkoba (Tee KOBAYASHI)
12:40 PM Bug #17606: Make failed on i386-cygwin (miniruby.exe aborted)
PR: https://github.com/ruby/ruby/pull/4437 xtkoba (Tee KOBAYASHI)
11:56 AM Revision 1f255add (git): Silence GCC 11 warnings
```
../strftime.c: In function 'rb_strftime_with_timespec':
../strftime.c:392:39: warning: comparison is always false due to limited range of data type [-Wtype-limits]
392 | if (vtm->wday < 0 || vtm->wday > 6)
...
xtkoba (Tee KOBAYASHI)
11:46 AM Revision b2c54f53 (git): [ruby/irb] Need reline >= 0.1.6
irb 1.3.5 need reline >= 0.1.6 because irb use `Reline::IOGate.in_pasting?`.
This method defined after reline 0.1.6.
fix #228.
https://github.com/ruby/irb/commit/6b7b8fc324
ima1zumi (Mari Imaizumi)
11:22 AM Feature #17647: Print register `r11` on 32-bit ARM Linux
PR: https://github.com/ruby/ruby/pull/4436 xtkoba (Tee KOBAYASHI)
02:58 AM Revision 6ee55455 (git): Update Time documentation
burdettelamar (Burdette Lamar)

04/29/2021

10:35 PM Misc #17828 (Closed): Deprecate use of master and slave
We should only update the documentation and code on `etc/pty`. I totally agreed the Matz's opinion. hsbt (Hiroshi SHIBATA)
05:00 PM Misc #17828: Deprecate use of master and slave
For reference, the Rust project decided to switch to `main` because it is the tools default and running on defaults has value.
Still, it's doing so on a relaxed timeline: https://internals.rust-lang.org/t/changing-the-default-branch-fro...
Skade (Florian Gilcher)
10:22 PM Bug #16612: Enumerator::ArithmeticSequence#last with float range produces incorrect value
I've traced this to an off-by-one in `ruby_float_step_size`. I've submitted a pull request to fix this: https://github.com/ruby/ruby/pull/4434
@Eregon Unfortunately, you can't get `#each` to work like repeated edition without breaking...
jeremyevans0 (Jeremy Evans)
08:04 PM Bug #17840: `make install` overriding file permission with 644
user:jaruga That is because what you changed is the default value of `data_mode` which is overwritten by command-line options:
```
./miniruby -I../lib -I. -I.ext/common ../tool/runruby.rb --extout=.ext -- --disable-gems -r./x86_64-li...
xtkoba (Tee KOBAYASHI)
06:42 PM Bug #17840: `make install` overriding file permission with 644

Thanks for checking. I assumed the data_mode (0644) might cause this situation.
However after editing `rbinstall.rb` to change the data_mode from 0644 to 0755, I still saw the installed files permissions were still 644.
```
$ vi...
jaruga (Jun Aruga)
06:13 PM Bug #17840: `make install` overriding file permission with 644
Seems intentionally done at [tool/rbinstall.rb:774](https://github.com/ruby/ruby/blob/dfca24af82e7d06adcb57f625573b0e558d9e5dc/tool/rbinstall.rb#L774). Files having pattern `libexec/*` are chmodded to `prog_mode` (0755), otherwise to `da... xtkoba (Tee KOBAYASHI)
04:30 PM Bug #17840 (Closed): `make install` overriding file permission with 644
On the current latest master `b0b5a4e86ef2740c427f9356a4173a1debf4f79c`, by the following steps, I can see the difference between files permission between installed Ruby's gems directory installed by `make install` and gems directory ins... jaruga (Jun Aruga)
07:13 PM Revision 5a451c4b (git): lldb: Warn when attempting to dump invalid pages
eightbitraptor (Matt V-H)
07:02 PM Bug #17841 (Closed): The first instance of SortedSet doesn't sort when rbtree is present
This is probably caused by the fix to #15830. Here's a pull request that should fix it: https://github.com/ruby/ruby/pull/4432, though I didn't test with rbtree. Closing and marking for backport. jeremyevans0 (Jeremy Evans)
06:32 PM Bug #17841 (Closed): The first instance of SortedSet doesn't sort when rbtree is present
If the `rbtree` gem is present, then in ruby 2.7, the first instance of `SortedSet` will return entries in insertion order. Future instances of `SortedSet` correctly return sorted entries.
Given:
```
require 'rbtree'
require 'set...
joshc (Josh C)
04:40 PM Revision dfca24af (git): * 2021-04-30 [ci skip]
git[bot]
04:36 PM Revision 19504d11 (git): test/net/smtp/test_smtp.rb: wait a moment before socket is closed
On Solaris, Socket.tcp seems to fail with EINVAL if the server closes
the connection immediately after accpeted. I think this is a bug of
Socket.tcp, but seems difficult to fix soon.
http://rubyci.s3.amazonaws.com/solaris11-sunc/ruby-ma...
mame (Yusuke Endoh)
02:58 PM Bug #17794: addr2line.c can free(3) an invalid pointer without zlib
PR: https://github.com/ruby/ruby/pull/4430
This should be trivial.
xtkoba (Tee KOBAYASHI)
02:28 PM Bug #17788: ruby 3.0.0 - compiling c++ extension on alpine fails
PR: https://github.com/ruby/ruby/pull/4429 xtkoba (Tee KOBAYASHI)
01:39 PM Feature #17752: Enable -Wundef for C extensions in repository
user:Eregon Thank you very much. I have just learnt how to use GitHub. I will do it by myself next time. xtkoba (Tee KOBAYASHI)
01:27 PM Feature #17752: Enable -Wundef for C extensions in repository
I made a PR with @xtkoba's patches and additional fixes, as well as enabling undef warnings:
https://github.com/ruby/ruby/pull/4428
@xtkoba Importing patches is quite time-consuming, it would be better if you can already make commits...
Eregon (Benoit Daloze)
01:05 PM Feature #17837: Add support for Regexp timeouts
+1 wonderful and useful idea
Even without the DoS aspect, it's all too easy to create regexps with pathological performance that only manifests in certain edge cases, usually in production. It would be very useful if some kind of time...
Dan0042 (Daniel DeLorme)
05:23 AM Feature #17837: Add support for Regexp timeouts
Invoking a thread implicitly in the interpreter is troublesome. Previously, Ruby had a timer thread, but as far as I know, it was (almost) abundaned by @normalperson. If you try to revive a timer thread, you should learn the complex hist... mame (Yusuke Endoh)
11:27 AM Bug #16492: TestBugReporter#test_bug_reporter_add test failures
Note I am planing to check this ticket after reviving Travis s390x (#17818).
jaruga (Jun Aruga)
08:53 AM Bug #17787: Four AIX build issues with xlc compiler and ruby-3.0.1
ruby_3_0 3e07a4edc92f18dec4806961c1b724ac5cf4d6b2 merged revision(s) 3a3033c138c0951ad5edbf02b5c233b58a190d2f. nagachika (Tomoyuki Chikanaga)
08:53 AM Revision 3e07a4ed (git): merge revision(s) 3a3033c138c0951ad5edbf02b5c233b58a190d2f: [Backport #17787]
get rid of using `__builtin_unreachable` directly [Bug #17787]
As it is an independent feature from `clz`, `ctz` and `popcount`,
it might be unavailable even if the latters are built in.
---
internal/bit...
nagachika (Tomoyuki Chikanaga)
08:49 AM Revision cc4e6026 (git): merge revision(s) 87c546b5fa97e6e226cce4daf417617a1143f642,7a3322a0fd660d676f1918bd7c4a37676b44e1c2:
Avoid using inconsistent coding style
Other `_mjit_compile_*.erb` files don't use goto. These files'd better
be consistent for readability.
---
tool/ruby_vm/views/_mjit_compile_getinlinecache.erb | 14 ++...
nagachika (Tomoyuki Chikanaga)
08:20 AM Revision 58240b5d (git): merge revision(s) 4ae27d8075b2d138d13cb2b112f0ee50934b3017,2670509ebba5ba31a5bf34cf906943075446e005,8e2ac2140d1cd9c163c1556df58c020dc22ab269:
[ruby/net-ftp] Reduce resource cosumption of Net::FTP::TIME_PARSER
Reported by Alexandr Savca as a DoS vulnerability, but Net::FTP is a
client library and the impact of the issue is low, so I have decided
to fix ...
nagachika (Tomoyuki Chikanaga)
01:57 AM Feature #16962: Make IO.for_fd autoclose option default to false
ioquatix (Samuel Williams) wrote in #note-4:
> Thanks for looking into this.
> ...
My git blame magic ball shows that Ruby has always done this. It was temporarily changed in commit:6f1edacc010c48c5762598fed74ff4f1e62d1b20 and then qu...
jeremyevans0 (Jeremy Evans)
12:21 AM Feature #16962: Make IO.for_fd autoclose option default to false
Thanks for looking into this.
Not being able to close some file descriptors when using `IO.for_fd` is almost certainly a bug.
```
/* need to keep FILE objects of stdin, stdout and stderr */
```
Why?
ioquatix (Samuel Williams)
12:07 AM Feature #16962: Make IO.for_fd autoclose option default to false
I looked into this and I think it's because stdin, stdout, and stderr are special cased:
```c
if (IS_PREP_STDIO(fptr) || fd <= 2) {
/* need to keep FILE objects of stdin, stdout and stderr */
}
```
This Ruby pro...
jeremyevans0 (Jeremy Evans)

04/28/2021

11:52 PM Bug #17583: Segfault on large stack(RUBY_THREAD_VM_STACK_SIZE)
nobu (Nobuyoshi Nakada) wrote in #note-9:
> Does this work?
> ...
@nobu I tested it and it fixes the problem on OpenBSD/amd64.
jeremyevans0 (Jeremy Evans)
09:36 PM Bug #17804: Math.cbrt(0.0) returns NaN
I've submitted a pull request to fix this: https://github.com/ruby/ruby/pull/4425 jeremyevans0 (Jeremy Evans)
08:30 PM Bug #16680 (Closed): Symlink folder in $LOAD_PATH does not work with autoload
I tried this with Ruby 2.6, 2.7, and 3.0, and got the same results with all three:
```
$ ls -ld /home/jeremy/tmp/looksee1
lrwxr-xr-x 1 jeremy jeremy 7 Apr 28 13:19 /home/jeremy/tmp/looksee1 -> looksee
$ ruby26 -I /home/jeremy/tm...
jeremyevans0 (Jeremy Evans)
07:26 PM Bug #17839: Windows CI failures with net/http - fix at ruby/net-http
Windows failures in test-all & test-spec are fixed by ruby/ruby PR https://github.com/ruby/ruby/pull/4424.
Patches also applied to ruby-loco, both mingw & mswin passed. Ruby-loco's mswin runs full testing, unlike CI here...
MSP-Greg (Greg L)
03:30 PM Bug #17839 (Closed): Windows CI failures with net/http - fix at ruby/net-http
CI is currently broken on Windows builds.
Fix is at https://github.com/ruby/net-http/pull/20, adds Windows CI, updates workflow yaml, fixes host naming, etc
Actions runs now need approval for first time contributors. If someone co...
MSP-Greg (Greg L)
06:52 PM Bug #17836: JIT fails to create a precompiled header with Clang
Sorry, I forgot adding `Co-authored-by` in the commit message (please consider using GitHub if you care), but I merged your patch. Thanks. k0kubun (Takashi Kokubun)
06:50 PM Bug #17836 (Closed): JIT fails to create a precompiled header with Clang
Applied in changeset commit:git|9f8a50723f8a84b3e4755b418570148f422d1b28.
----------
Specify -c to emit pch with clang (#4423)
[Bug #17836]
k0kubun (Takashi Kokubun)
06:50 PM Revision b0b5a4e8 (git): * 2021-04-29 [ci skip]
git[bot]
06:49 PM Revision 9f8a5072 (git): Specify -c to emit pch with clang (#4423)
[Bug #17836] k0kubun (Takashi Kokubun)
05:11 PM Bug #17585: DWARF5 support?
Fedora Rawhide is using GCC11 since ~beginning of the year and I am not aware of any issues. Actually, Fedora 34 was released yesterday, so should there been any issues, we will soon find out :) vo.x (Vit Ondruch)
11:24 AM Bug #17585: DWARF5 support?
GCC 11 is released yesterday, and in [Changes, New Features, and Fixes](https://gcc.gnu.org/gcc-11/changes.html) it is said that:
```
To take full advantage of DWARF version 5 GCC needs to be build against binutils version 2.35.2 or ...
xtkoba (Tee KOBAYASHI)
11:44 AM Bug #17542 (Closed): Username and password are not decoded if retrieved from env
fixed at 842f00f45212019a3b07f8d8dac269d35beb9efa nagachika (Tomoyuki Chikanaga)
09:48 AM Revision 96fd1e1f (git): Removed unused macro HAVE_CONFIG_H
It seems like a vestige of ext/md5. nobu (Nobuyoshi Nakada)
09:48 AM Revision 795fb51f (git): NDEBUG is ignored since Ruby 3.0
nobu (Nobuyoshi Nakada)
08:58 AM Revision f985dafe (git): Guard for < Ruby 3.0
hsbt (Hiroshi SHIBATA)
08:48 AM Revision 7f1323c3 (git): [ruby/ostruct] Add compatibility for to_h with block in Ruby 2.5
https://github.com/ruby/ostruct/commit/da45de5068 Marc-Andre Lafortune
08:33 AM Revision 37b445ea (git): [ruby/ostruct] Compatibility with Ruby 2.5
https://github.com/ruby/ostruct/commit/ecd9fafdf8 Marc-Andre Lafortune
07:25 AM Feature #17837: Add support for Regexp timeouts
I wonder if even a lightweight SIGVTALRM may be too much of a performance hit? On the upside though not needing to think about a background thread is nice!
If we are doing a background thread implementation I would recommend dropping...
sam.saffron (Sam Saffron)
05:23 AM Feature #17837: Add support for Regexp timeouts
I like this idea. It might be better to use SIGVTALRM instead of a monitor thread. However, it may affect the performance of a program that repeatedly uses a small and trivial regexp. Anyone can try to implement it and evaluate the perfo... mame (Yusuke Endoh)
06:05 AM Feature #16989: Sets: need ♥️
Is there a chance this feature lands in 3.1? greggzst (Grzegorz Jakubiak)
05:56 AM Misc #17828: Deprecate use of master and slave
zzak (Zachary Scott) wrote in #note-5:
> For me, having different branch names is just a quality of life improvement. Every project at my company has switched to "main", and many OSS projects I hack on have as well. Having to remember w...
duerst (Martin Dürst)
12:38 AM Misc #17828: Deprecate use of master and slave
For me, having different branch names is just a quality of life improvement. Every project at my company has switched to "main", and many OSS projects I hack on have as well. Having to remember which one uses "main" and which one uses "m... zzak (zzak _)
04:49 AM Feature #17838 (Closed): `Set#intersect?` and enumerables
`Set#intersect?` currently accepts only a `set` argument.
It should accept an enumerable argument:
```ruby
[1, 2, 3].intersect?(Set[2, 3, 4]) # => true
Set[2, 3, 4].intersection([1, 2, 3]) # => Set[2, 3]
Set[2, 3, 4].intersect?(...
marcandre (Marc-Andre Lafortune)
03:02 AM Bug #17799: Seg fault in rb_class_clear_method_cache
I doubt if `rb_class_detach_module_subclasses` in `class.c` is worth investigating. The reason is as follows. As mentioned in #note-6, there is a large gap between Frame 6 and Frame 8 of the crashed thread which we cannot fill in, and so... xtkoba (Tee KOBAYASHI)
02:56 AM Revision 2afbe711 (git): [ruby/optparse] Add EditorConfig file
More info here: https://editorconfig.org/
For example, `ruby/ruby` has it: https://github.com/ruby/ruby/blob/05ebaee/.editorconfig
Also fix some offenses.
https://github.com/ruby/optparse/commit/29402e7e0e
AlexWayfer (Alexander Popov)
02:10 AM Revision 908785ef (git): [ruby/net-imap] Fix typo intentionaly -> intentionally [ci skip]
https://github.com/ruby/net-imap/commit/4057c662e7 kamipo (Ryuta Kamizono)
02:03 AM Revision 0296a644 (git): [ruby/net-http] Initialize OpenSSL early before creating TCPSocket
OpenSSL make take some time to initialize, and it would be best
to take that time before connecting instead of after.
From joshc on Redmine.
Fixes Ruby Bug #9459
https://github.com/ruby/net-http/commit/14e09fba24
jeremyevans (Jeremy Evans)
02:01 AM Revision 1229ad05 (git): [ruby/net-http] Fix the regexp used to clean the host
Introduced in https://github.com/ruby/ruby/commit/c1652035644
`/s` marks the regexp as encoded with Windows-31J which makes little
sense.
Nurse thinks the intent was to use `/m` for a multi-line regexp.
https://github.com/ruby/net-htt...
byroot (Jean Boussier)
02:01 AM Revision 842f00f4 (git): [ruby/net-http] Decode user and password from env configured proxy
If someone sets an env variable defining a http_proxy, containing a
username / password with percent-encoded characters, then the resulting
base64 encoded auth header will be wrong.
For example, suppose a username is `Y\X` and the passw...
Lukas Eipert
01:58 AM Revision 8a2b7b79 (git): [ruby/net-http] Replace Timeout.timeout in Net:HTTP#connect
Use Socket.tcp's connect_timeout option instead
https://github.com/ruby/net-http/commit/753cae3bbc
mohamedhafez (Mohamed Hafez)
01:51 AM Revision e22626f0 (git): [ruby/net-smtp] mod: bump to a new VERSION that could be checked for testings >0.2.1
https://github.com/ruby/net-smtp/commit/8f2c9323e2 Tom Freudenberg
01:48 AM Revision eebecdf1 (git): [ruby/net-smtp] Removed needless files from Gem::Specification#files
https://github.com/ruby/net-smtp/commit/69bba6b125 hsbt (Hiroshi SHIBATA)
01:47 AM Revision ff931d03 (git): [ruby/net-smtp] Replace Timeout.timeout with socket timeout
Timeout.timeout is inefficient since it spins up a new thread for
each invocation, use Socket.tcp's connect_timeout option instead
https://github.com/ruby/net-smtp/commit/6ae4a59f05
mohamedhafez (Mohamed Hafez)
01:46 AM Revision 4c8cce5b (git): [ruby/net-smtp] Net::SMTP.start() and #start() accepts ssl_context_params keyword argument
Additional params are passed to OpenSSL::SSL::SSLContext#set_params.
For example, `Net::SMTP#start(ssl_context_params: { cert_store: my_store, timeout: 123 })`
calls `set_params({ cert_store: my_store, timeout: 123 })`.
...
Tom Freudenberg
12:10 AM Revision 73455749 (git): test/net/ftp/test_ftp.rb: Use RubyVM::JIT instead of RubyVM::MJIT
mame (Yusuke Endoh)
 

Also available in: Atom