Project

General

Profile

Activity

From 06/09/2021 to 06/15/2021

06/15/2021

11:46 PM Bug #17664: Behavior of sockets changed in Ruby 3.0 to non-blocking
This change was originally proposed and implemented by @normalperson.
The outward interface does not change, but you are right it can impact io_uring implementation.
I know this is a problem and ran into the same issue.
I don't know h...
ioquatix (Samuel Williams)
11:19 PM Bug #17618 (Closed): Exceptions in Fiber Scheduler causes a segv
jeremyevans0 (Jeremy Evans)
11:16 PM Bug #17655 (Closed): Experiencing Repeated Segmentation Faults Using Puma with Ruby 3.0.0
jeremyevans0 (Jeremy Evans)
11:06 PM Bug #17726 (Closed): `respond_to_missing?` doesn't raise when called from `defined?`
jeremyevans0 (Jeremy Evans)
10:37 PM Bug #17803: Segmentation fault during deflate
I've submitted a pull request to fix this issue using a mutex: https://github.com/ruby/zlib/pull/27
It passes the script that @mame developed, but there may still be multithreaded issues remaining. I didn't trace all code to see if it...
jeremyevans0 (Jeremy Evans)
10:04 PM Bug #17986: Ractor is stdlib Socket unfriendly
> I don't think the behavior you are showing is a bug, so I think this should be closed. However, I'll wait for a while and see if another core team member feels differently.
Thank you @jeremyevans0 for the idea, you gave me TIL!
...
kvokka (Mike Beliakov)
04:13 AM Bug #17986: Ractor is stdlib Socket unfriendly
The code you are showing (`make_shareable` with a socket) is broken because in order to be shareable, an object must be immutable, and a socket cannot really be immutable and usable.
You can work around it using `for_fd` (this should ...
jeremyevans0 (Jeremy Evans)
01:37 AM Bug #17986 (Closed): Ractor is stdlib Socket unfriendly
**Description**
In the process of playing with Ractors was found, that there is no way to use stdlib Sockets.
My intent was to implement bidirectional connection with Socket using Ractors.
This small console snippet is self expl...
kvokka (Mike Beliakov)
09:48 PM Feature #17992: Upstreaming the htmlentities gem into CGI#.(un)escape_html
k0kubun (Takashi Kokubun) wrote in #note-1:
> Could you clarify a bit more context about why you'd like to escape these characters not supported in CGI.escapeHTML?
We have a dataset of user content that contains HTML entities (whethe...
AMomchilov (Alexander Momchilov)
08:50 PM Feature #17992 (Feedback): Upstreaming the htmlentities gem into CGI#.(un)escape_html
Could you clarify a bit more context about why you'd like to escape these characters not supported in `CGI.escapeHTML`?
I believe `CGI.escapeHTML` has been primarily used to avoid breaking the DOM structure by escaping dynamic contents...
k0kubun (Takashi Kokubun)
08:17 PM Feature #17992 (Feedback): Upstreaming the htmlentities gem into CGI#.(un)escape_html
Hi there,
I was looking to unescape some HTML entities in a String, and I discovered that `CGI#.(un)escape_html` is **really** limited. Many StackOverflow questions share a similar disappointment, and point users to using the [htmlent...
AMomchilov (Alexander Momchilov)
07:36 PM Bug #17946: win32/win32.c: `&` has lower precedence than `==`
Thank you for pointing this out. I agree that parentheses must have been intended in this case. I submitted a pull request to add them: https://github.com/ruby/ruby/pull/4575 jeremyevans0 (Jeremy Evans)
06:26 PM Bug #17824 (Closed): Gem::Deprecate#deprecate doesn't work with method with keyword arguments
jeremyevans0 (Jeremy Evans)
06:13 PM Feature #17838 (Assigned): `Set#intersect?` and enumerables
This makes sense to me. However, there is a explicit test currently that array arguments are not accepted. So this must be considered a feature request and not a bug. I've submitted an upstream pull request that implements this feature: ... jeremyevans0 (Jeremy Evans)
06:00 PM Bug #17951: Collisions in Proc#hash values for blocks defined at the same line
I have submitted a pull request with @xtkoba's fix: https://github.com/ruby/ruby/pull/4574 jeremyevans0 (Jeremy Evans)
05:59 PM Bug #17839 (Closed): Windows CI failures with net/http - fix at ruby/net-http
jeremyevans0 (Jeremy Evans)
05:58 PM Bug #17875 (Closed): Segfault when reusing a closed Fiber scheduler inside a Thread
jeremyevans0 (Jeremy Evans)
05:57 PM Bug #17864 (Closed): [BUG] try to mark T_NONE object (in Ractors)
jeremyevans0 (Jeremy Evans)
05:57 PM Bug #17855 (Closed): [BUG] object allocation during garbage collection phase
jeremyevans0 (Jeremy Evans)
05:42 PM Bug #17945: Date::Infinity comparison <=> with Float::INFINITY not symmetric
I've submitted a pull request upstream to fix this: https://github.com/ruby/date/pull/34 jeremyevans0 (Jeremy Evans)
05:18 PM Misc #17886: DevelopersMeeting20210617Japan
* [Feature #17763] Add an inline cache for class variables
* This seems to speed up Rails applications at the cost of some code complexity. Can we merge it?
tenderlovemaking (Aaron Patterson)
03:30 PM Bug #17991: [TEST, CRASH] TestBugReporter#test_bug_reporter_add
Patch for add2line somehow helped:
```
fedora-rawhide gcc 11.1.1 now ok
voidlinux 10.2.1 still ok
```
4 crashes are gone.
tankf33der (Mike P)
02:55 PM Bug #17991: [TEST, CRASH] TestBugReporter#test_bug_reporter_add
Current summary:
```
all gcc below:
fedora-rawhide 11.1.1 - crash
archlinux 11.1.0 - ok
voidlinux 10.2.1 - ok
alpinelinux 10.2.1 - ok
solaris11 10.2.0 - ok
all clang below:
fedora-rawhide 12.0.1 - ok
```
I will test the patch asap.
tankf33der (Mike P)
01:34 PM Bug #17991: [TEST, CRASH] TestBugReporter#test_bug_reporter_add
This reminds me of #17794. Could you try the patch in #17794 (https://bugs.ruby-lang.org/attachments/8822) and see if the situation changes? xtkoba (Tee KOBAYASHI)
01:26 PM Bug #17991 (Closed): [TEST, CRASH] TestBugReporter#test_bug_reporter_add
Testing host is latest Fedora Rawhide.
I see 4 tests which crashed by `double free or corruption (out)`. This is one of them, rest 3 are `TestRubyOptions#test_segv_*` group.
```
[ 5452/20801] TestBugReporter#test_bug_reporter_add = 0....
tankf33der (Mike P)
03:09 PM Revision d4db18d6 (git): * 2021-06-16 [ci skip]
git[bot]
03:08 PM Revision 43ed1e68 (git): Make ext directory before extinit.c when out-of-place build
nobu (Nobuyoshi Nakada)
03:01 PM Bug #17987 (Feedback): Ruby报错
Ruby 2.6 is in security maintenance mode and this does not appear to be a security issue. Can you reproduce this crash on the master branch? jeremyevans0 (Jeremy Evans)
10:46 AM Bug #17987: Ruby报错
Isn't this yet another instance of TPI?
```
Code Type: ARM-64 (Native)
(...)
6 libsystem_platform.dylib 0x000000019fbf1c44 _sigtramp + 56
7 ffi_c.bundle 0x00000001029968d4 prep_trampoline + ...
xtkoba (Tee KOBAYASHI)
07:13 AM Bug #17987 (Closed): Ruby报错
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: https://www.ruby-lang.org/bugreport.html
liuyan (岩 刘)
02:43 PM Bug #17949 (Closed): [SOLARIS11, SPARC, SEGFAULT] generating encdb.h
jeremyevans0 (Jeremy Evans)
01:18 PM Bug #17949: [SOLARIS11, SPARC, SEGFAULT] generating encdb.h
I believe this issue could be closed.
Fix already in the tree:
https://github.com/ruby/ruby/commit/90cad6e14745d812f042df61a6455db022be7389
tankf33der (Mike P)
12:42 PM Revision d09f097e (git): Time#getlocal tests for [Feature #17544]
nobu (Nobuyoshi Nakada)
11:59 AM Bug #17990 (Open): Inconsistent behavior of Regexp quantifiers over characters with complex case foldings
With case insensitive Regexps, the string `"ff"` is considered equal to the string `"\ufb00"` with a single ligature character.
```
irb(main):001:0> /ff/i.match("\ufb00")
=> #<MatchData "ff">
```
This behavior also persists when ...
jirkamarsik (Jirka Marsik)
11:43 AM Bug #17989 (Open): Case insensitive Regexps do not handle characters with overlapping case foldings
When a Regexp uses the case-insensitive flag, strings are compared by first case folding them and then comparing the case foldings for equality. When a literal string is encountered in a Regexp source, the pattern analyzer tries to enume... jirkamarsik (Jirka Marsik)
11:42 AM Feature #17950: Unable to pattern-match against a String key
> Switching to feature request.
Makes sense. Hopefully the example of matching HTTP headers makes it a compelling case for such.
chucke (Tiago Cardoso)
08:58 AM Bug #17988 (Third Party's Issue): pod update on Mac mini M1 with Big Sur after moving project from iMac. Xcode 12.4
I believe that this is the same issue as #17862, #17922, and https://github.com/typhoeus/ethon/issues/193. mame (Yusuke Endoh)
08:47 AM Bug #17988 (Third Party's Issue): pod update on Mac mini M1 with Big Sur after moving project from iMac. Xcode 12.4
The pod update fails.
davidrussell@Mac-mini NowBoarding_1701 % pod update
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/universal-darwin20/rbconfig.rb:229: warning: Insecure world writable dir /Users/davidru...
aardsoft (David Russell)
06:55 AM Revision b32e6c16 (git): Convert initial contents before allocating queue buffer
nobu (Nobuyoshi Nakada)
05:51 AM Bug #17561: The timeout option for Addrinfo.getaddrinfo is not reliable on Ruby 2.7.2
Although I can't reproduce the issue on my machine (I tried several times), I agree that this should be removed from 2.7.
I will create a patch.
Glass_saga (Masaki Matsushita)
04:50 AM Bug #17561 (Assigned): The timeout option for Addrinfo.getaddrinfo is not reliable on Ruby 2.7.2
@Glass_saga Could you handle this? mame (Yusuke Endoh)
04:47 AM Bug #17561: The timeout option for Addrinfo.getaddrinfo is not reliable on Ruby 2.7.2
confirmed on my machine:
```
$ ruby -ve "require 'resolv'; 10000.times { |i| p [i, Addrinfo.getaddrinfo('2130706433', 80, nil, :STREAM, timeout: 0)] }"
ruby 2.7.3p183 (2021-04-05 revision 6847ee089d) [x86_64-linux]
*** stack smashi...
ko1 (Koichi Sasada)
05:05 AM Bug #17098: Float#negative? reports negative zero as not negative
If you have pragmatic demands that need to distinguish `-0.0` and `+0.0`, what do you think to propose the introduction of `Float#signbit`?
mrkn (Kenta Murata)
04:58 AM Bug #17098: Float#negative? reports negative zero as not negative
The current behavior is consistent with the behavior of the integer zero:
```
irb(main):001:0> 0.negative?
=> false
irb(main):002:0> 0.positive?
=> false
```
mrkn (Kenta Murata)
03:04 AM Revision f0818982 (git): [ruby/ostruct] v0.4.0
https://github.com/ruby/ostruct/commit/8534f69e4e Marc-Andre Lafortune
12:35 AM Bug #17880 (Closed): [BUG] We are killing the stack canary set by `opt_setinlinecache`
Applied in changeset commit:git|2088a457981b0f71a3bfd14871ed5b6f0d090e6a.
----------
[Bug #17880] Set leaf false on opt_setinlinecache (#4565)
This change fixes the bug described in https://bugs.ruby-lang.org/issues/17880.
Checking `r...
Anonymous
12:34 AM Revision 2088a457 (git): [Bug #17880] Set leaf false on opt_setinlinecache (#4565)
This change fixes the bug described in https://bugs.ruby-lang.org/issues/17880.
Checking `ractor_shareable_p` will cause the method to call back into
Ruby. Anything calling this method can't be a leaf instruction,
otherwise it could cra...
Eileen M. Uchitelle

06/14/2021

11:21 PM Feature #17950: Unable to pattern-match against a String key
The fact that only symbol keys are supported is documented (https://docs.ruby-lang.org/en/master/doc/syntax/pattern_matching_rdoc.html#label-Patterns), so this is expected and not a bug. Switching to feature request. jeremyevans0 (Jeremy Evans)
09:17 PM Bug #17984: [BUG] try to mark T_NONE object
Can you send me a core file and I can take a look? tenderlovemaking (Aaron Patterson)
09:50 AM Bug #17984 (Closed): [BUG] try to mark T_NONE object
About 1% of our CI jobs fail with this error.
If necessary I can try to find a repro, but these GC issues are hard to pin down because they require GC.stress which is very slow.
```
<OBJ_INFO:gc_mark_ptr@gc.c:6687> 0x00007f6717407...
byroot (Jean Boussier)
06:11 PM Bug #17985 (Closed): Ractor + GC: [BUG] not single ractor mode
The attached script (named `bug17882-gcmod.rb`) is a modification of `bootstraptest/test_ractor.rb:224` that reads:
```ruby
def test n
# (...snip...)
end
GC.disable # newly added
p 30.times.map{|i|
test i
}
GC.start # ...
xtkoba (Tee KOBAYASHI)
04:28 PM Revision a09ddfc4 (git): [lib/ostruct] Fix YAML test
Marc-Andre Lafortune
04:28 PM Revision 52369fc5 (git): [lib/ostruct] Allow overriding of `block_given?`
Marc-Andre Lafortune
03:04 PM Revision fc98602e (git): * 2021-06-15 [ci skip]
git[bot]
03:03 PM Revision edbe0e22 (git): Suppress exception report in inner thread
nobu (Nobuyoshi Nakada)
03:02 PM Revision 57eaa07b (git): Close leaked file descriptors
nobu (Nobuyoshi Nakada)
02:31 PM Revision 5dde13e5 (git): [ruby/ostruct] bump up
https://github.com/ruby/ostruct/commit/bb253be3e9 nobu (Nobuyoshi Nakada)
02:24 PM Revision 70833fab (git): Suppress gcc11 clobbered warning
nobu (Nobuyoshi Nakada)
01:53 PM Revision 931ea7cf (git): Add fallback block to `OpenStruct#delete_field` (#1409)
jfrazx
01:37 PM Revision 90cad6e1 (git): prefer cc/gcc over clang on solaris
requested by tankf33der at https://bugs.ruby-lang.org/issues/17949#change-92430 shyouhei (Shyouhei Urabe)
12:16 PM Revision b513fc2f (git): Fixed method names in exception messages
These methods are not !-suffixed, and the messages were very
confusing.
nobu (Nobuyoshi Nakada)
10:09 AM Revision 1ab71a5b (git): Fix fiber scheduler address resolve solaris tests
Bruno Sutic
10:07 AM Revision 25921fe1 (git): Revert "Suppress gcc11 clobbered warning"
This reverts commit f0f9e77b65990001bd2acb42e1c6b673f6324425. Samuel Williams
08:35 AM Bug #17951: Collisions in Proc#hash values for blocks defined at the same line
It was there since 1.9 as far as I can see https://github.com/ruby/ruby/commit/a3e1b1ce7ed7e7ffac23015fc2fde56511b30681#diff-2672918174f926386106967d117f11da8aa1905772dcf48fce53694386e4a666R658-R668 decuplet (Nikita Shilnikov)
01:24 AM Bug #17951: Collisions in Proc#hash values for blocks defined at the same line
A possible fix:
```diff
--- a/proc.c
+++ b/proc.c
@@ -1451,7 +1451,7 @@ rb_hash_proc(st_index_t hash, VALUE prc)
GetProcPtr(prc, proc);
hash = rb_hash_uint(hash, (st_index_t)proc->block.as.captured.code.val);
hash...
xtkoba (Tee KOBAYASHI)
05:56 AM Revision 050a8954 (git): Wake up join list within thread EC context. (#4471)
* Wake up join list within thread EC context.
* Consume items from join list so that they are not re-executed.
If `rb_fiber_scheduler_unblock` raises an exception, it can result in a
segfault if `rb_threadptr_join_list_wakeup` is not w...
Samuel Williams
05:11 AM Revision 626427c2 (git): Removed no longer used variables
nobu (Nobuyoshi Nakada)
05:10 AM Revision 635e1c52 (git): Pack values to preserve
nobu (Nobuyoshi Nakada)
05:09 AM Revision f0f9e77b (git): Suppress gcc11 clobbered warning
nobu (Nobuyoshi Nakada)
04:21 AM Revision 2792acc8 (git): Add scheduler hook `Addrinfo.getaddrinfo`. (#4375)
Co-authored-by: Bruno Sutic <code@brunosutic.com> Samuel Williams
01:42 AM Bug #17947 (Closed): [SOLARIS11, SPARC] time.c compilation failed
Applied in changeset commit:git|688b217706546c2bc9a0926de246dc29d0935261.
----------
time.c: Check if defined(RUBY_MSVCRT_VERSION) to build on Solaris
Fixes [Bug #17947]
mame (Yusuke Endoh)
01:40 AM Revision 688b2177 (git): time.c: Check if defined(RUBY_MSVCRT_VERSION) to build on Solaris
Fixes [Bug #17947] mame (Yusuke Endoh)
01:09 AM Revision 09ea2bb0 (git): * 2021-06-14 [ci skip]
git[bot]
01:02 AM Revision 70313ec0 (git): parse.y: Fix the location of a target constant of OP_CDECL
```
p RubyVM::AbstractSyntaxTree.parse("::Foo += 1").children
#=> before: [[], nil, (OP_CDECL@1:0-1:10 (COLON3@1:0-1:10 :Foo) :+ (LIT@1:9-1:10 1))]
#=> after: [[], nil, (OP_CDECL@1:0-1:10 (COLON3@1:0-1:5 :Foo) :+ (LIT@1:9-1:10 1))]
```
mame (Yusuke Endoh)

06/13/2021

06:40 PM Feature #17845: Windows Ruby - ucrt build?
A separate ticket for `-Wparentheses` warning issue: #17946 xtkoba (Tee KOBAYASHI)
06:26 PM Feature #17845: Windows Ruby - ucrt build?
Or should `extconf.rb` be improved to notice deprecation?
```
../../../ext/date/date_core.c:7803:17: warning: 'timezone' is deprecated: Only provided for source compatibility; this variable might not always be accurate when linking t...
xtkoba (Tee KOBAYASHI)
06:18 PM Feature #17845: Windows Ruby - ucrt build?
`_WIN64` is not defined on i386-mingw32 + ucrt. xtkoba (Tee KOBAYASHI)
07:49 AM Feature #17370: Introduce non-blocking `Addrinfo.getaddrinfo` and related methods.
Here is PR.
https://github.com/ruby/ruby/pull/4375
ioquatix (Samuel Williams)
07:09 AM Bug #17880: [BUG] We are killing the stack canary set by `opt_setinlinecache`
I ran that patch on our CI, and confirm that the crash is entirely gone. Thank you! byroot (Jean Boussier)
06:38 AM Bug #17949: [SOLARIS11, SPARC, SEGFAULT] generating encdb.h
Please disable default clang-llvm selection by default on Solaris.
All tests above passed with `CC=gcc ./configure --enable-shared --disable-rpath`.
tankf33der (Mike P)
06:36 AM Bug #17949: [SOLARIS11, SPARC, SEGFAULT] generating encdb.h
You were right, this is llvm's issue.
Ruby successfully passed all tests under GCC on Solaris SPARC.
```
...
...
PASS all 1488 tests
exec ./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems "./b...
tankf33der (Mike P)
06:12 AM Revision 32b18fe9 (git): Suppress array-parameter warnings by gcc 11
nobu (Nobuyoshi Nakada)
06:12 AM Revision 9ab6d39a (git): Added parentheses to silence sizeof-array-div warnings
As well as 2366c681166a1dab95de6b9ca8ffcaae18aadd39. nobu (Nobuyoshi Nakada)
06:12 AM Revision 9ec6c83c (git): Removed duplicate include
nobu (Nobuyoshi Nakada)
06:12 AM Revision 122ce52e (git): Check if alternative malloc header can work in C++
jemalloc (5.2.1 at least) cannot compile in C++ on macOS SDK, due
to conflicts on exception specification.
nobu (Nobuyoshi Nakada)
05:09 AM Bug #17948: Backport d74e5d5b4fba41a9120b3ed2762cf765478605ad (Crash more nicely when the VM isn't fully set up)
ruby_3_0 f0a1c063490d69f0868876deed74ad52db63cf4b merged revision(s) d74e5d5b4fba41a9120b3ed2762cf765478605ad. nagachika (Tomoyuki Chikanaga)
05:07 AM Revision f0a1c063 (git): merge revision(s) d74e5d5b4fba41a9120b3ed2762cf765478605ad: [Backport #17948]
Crash more nicely when the VM isn't fully set up
If we crash but the VM isn't fully alive, we can get an infinite loop.
---
vm_dump.c | 62 ++++++++++++++++++++++++++++++++------------------------------
...
nagachika (Tomoyuki Chikanaga)
04:45 AM Revision cba92b32 (git): * 2021-06-13 [ci skip]
git[bot]
04:44 AM Revision d54f74a4 (git): Refactor rb_block_call function
rb_block_call and rb_block_call_kw have similar code.
So, using rb_block_kw function in rb_block_call function for refactoring.
S_H_ (Shun Hiraoka)

06/12/2021

11:59 PM Bug #17951 (Closed): Collisions in Proc#hash values for blocks defined at the same line
```ruby
require 'set'
def capture(&block)
block
end
# it creates 1k of same blocks
blocks = Array.new(1000) { capture { :foo } }
hashes = blocks.map(&:hash).uniq
ids = blocks.map(&:object_id).uniq
equality = blocks.map {...
decuplet (Nikita Shilnikov)
04:21 PM Bug #17949: [SOLARIS11, SPARC, SEGFAULT] generating encdb.h
From #17947 I guess that Clang/LLVM is used as the compiler. There are some possible workarounds that I can think of, from my experience with Clang/LLVM and `setjmp`/`longjmp`.
* `__builtin_setjmp` is enabled for `sparc-sun-solaris` ...
xtkoba (Tee KOBAYASHI)
01:34 PM Bug #17949: [SOLARIS11, SPARC, SEGFAULT] generating encdb.h
The simplest way to crash miniruby is exec and press Ctrl-D inside it as input.
tankf33der (Mike P)
01:32 PM Bug #17949 (Closed): [SOLARIS11, SPARC, SEGFAULT] generating encdb.h
The same latest Solaris 11 and ruby, next crash while compiling:
```
$ gmake
...
...
compiling time.c
compiling version.c
compiling vm.c
compiling vm_trace.c
compiling coroutine/ucontext/Context.c
compiling enc/trans/newline.c
...
tankf33der (Mike P)
03:36 PM Feature #17950 (Open): Unable to pattern-match against a String key
I'm unable to parse against an internal hash, when the internal hash contains strings as keys:
```ruby
case {status: 200, headers: {"content-type" => "application/json"}, body: "bla"}
in { status: , headers: {"content-type" => type}...
chucke (Tiago Cardoso)
12:56 PM Bug #17947: [SOLARIS11, SPARC] time.c compilation failed
Confirmed. Fixed.
tankf33der (Mike P)
10:52 AM Bug #17947: [SOLARIS11, SPARC] time.c compilation failed
Can you confirm that the following patch fixes the issue?
```diff
diff --git a/time.c b/time.c
index a5c00e2aa2..a7ef9d2f47 100644
--- a/time.c
+++ b/time.c
@@ -1623,7 +1623,7 @@ localtime_with_gmtoff_zone(const time_t *t, struct...
mame (Yusuke Endoh)
10:19 AM Bug #17947: [SOLARIS11, SPARC] time.c compilation failed
I can not imagine how llvm-clang ecosystem can mess define values as subject of this report. tankf33der (Mike P)
07:46 AM Bug #17947: [SOLARIS11, SPARC] time.c compilation failed
I suppose that the Ruby build system is not maintained for the combination of Solaris + Clang/LLVM. You may want to use Sun C or GCC instead unless intended to use Clang specifically. Of course patches are always welcome. xtkoba (Tee KOBAYASHI)
05:18 AM Bug #17947 (Closed): [SOLARIS11, SPARC] time.c compilation failed
Compilation failed on file time.c, added line to skip error helped to see later compilation progress.
`miniruby` compiled and crashing, Solaris journey will be long.
```
#define RUBY_MSVCRT_VERSION 0
```
Latest ruby cant be comp...
tankf33der (Mike P)
11:17 AM Revision 146721ef (git): * 2021-06-12 [ci skip]
git[bot]
11:15 AM Revision 8366506d (git): cont.c: Replace "iff" with "if and only if"
nagachika (Tomoyuki Chikanaga)
09:15 AM Bug #17948 (Closed): Backport d74e5d5b4fba41a9120b3ed2762cf765478605ad (Crash more nicely when the VM isn't fully set up)
d74e5d5b4fba41a9120b3ed2762cf765478605ad should be backported into ruby_2_7/ruby_3_0 branches.
nagachika (Tomoyuki Chikanaga)

06/11/2021

06:49 PM Bug #17880: [BUG] We are killing the stack canary set by `opt_setinlinecache`
Aaron and I worked on a fix today: https://github.com/ruby/ruby/pull/4565
We simplified the script and were able to reproduce locally before the change and unable to reproduce after.
eileencodes (Eileen Uchitelle)
05:27 PM Feature #17763: Implement cache for cvars
I re-ran the benchmarks. I accidentally switched them when I pasted them into here.
Before: Rails 6.1 / Ruby master
```
ruby 3.1.0dev (2021-06-04T00:24:57Z master 91c542ad05) [x86_64-darwin19]
-- create_table(:posts, {:force=>tru...
eileencodes (Eileen Uchitelle)
03:41 PM Bug #17933: `Net::HTTP#write_timeout` doesn't work with `body_stream`
I've created a pull request in the [Ruby Net::HTTP Github project](https://github.com/ruby/net-http) with the proposed solution: https://github.com/ruby/net-http/pull/27
miguelfteixeira (Miguel Teixeira)
10:01 AM Feature #17930: Add column information into error backtrace
mame (Yusuke Endoh) wrote in #note-14:
> If needed, we can implement `Thread::Backtrace::Location#code_location` by using `AST.of`.
> ...
I think it is good to add, as basically `Thread::Backtrace::Location`-backtraces (caller_location...
Eregon (Benoit Daloze)
01:28 AM Feature #17845: Windows Ruby - ucrt build?
Pattern matching for `target_os` in configure script should be permissive if we consider suffixing something onto "mingw32". xtkoba (Tee KOBAYASHI)
12:26 AM Bug #17946 (Closed): win32/win32.c: `&` has lower precedence than `==`
A warning in [win32/win32.c:2600](https://github.com/ruby/ruby/blob/9210f8df7ff23f06c03dedf9f89fd8ab902043e3/win32/win32.c#L2600):
```
../win32/win32.c:2606:88: warning: & has lower precedence than ==; == will be evaluated first [-Wp...
xtkoba (Tee KOBAYASHI)

06/10/2021

11:31 PM Revision 9210f8df (git): * 2021-06-11 [ci skip]
git[bot]
11:31 PM Revision d74e5d5b (git): Crash more nicely when the VM isn't fully set up
If we crash but the VM isn't fully alive, we can get an infinite loop. tenderlovemaking (Aaron Patterson)
05:35 PM Bug #17945 (Closed): Date::Infinity comparison <=> with Float::INFINITY not symmetric
**Example**
``` ruby
require 'date'
p Float::INFINITY <=> Date::Infinity.new
p Date::Infinity.new <=> Float::INFINITY
```
**Expected Result**
I expected the comparison to have the same result when the order of values is switched...
bjfish (Brandon Fish)
02:59 PM Revision 929cc615 (git): Finish GC before calling gc_set_initial_pages
If we are during incremental sweeping when calling gc_set_initial_pages
there is an assertion error. The following patch will artificially
produce the bug:
```
diff --git a/gc.c b/gc.c
index c3157dbe2c..d7282cf8f0 100644
--- a/gc.c
+++ ...
peterzhu2118 (Peter Zhu)
12:09 PM Misc #17936: Run Travis at push on forked repository
> I sent the PR here.
> ...
The PR was merged. I expect that now you can run Travis on any branches on your forked repo without changing `.travis.yml` as well as GitHub Actions.
jaruga (Jun Aruga)
08:26 AM Feature #17944 (Open): Remove Socket.gethostbyaddr and Socket.gethostbyname
It is marked as unsafe by our static analysis. Can it be removed now?
It was deprecated in:
https://bugs.ruby-lang.org/projects/ruby-master/repository/trunk/revisions/60266
https://bugs.ruby-lang.org/issues/13097
pvalena (Pavel Valena)
08:15 AM Feature #10320: require into module
texpert (Aurel Branzeanu) wrote in #note-11:
> And another similar gem is modulation ( https://rubygems.org/gems/modulation/versions/0.25 )
It looks much more developed and actively maintained! Thank you! :)
jaesharp (J Lynn)
06:18 AM Feature #10320: require into module
jaesharp (J Lynn) wrote in #note-10:
> I'd like to note that there exists a gem called modules ( https://rubygems.org/gems/modules ) which uses `Kernel#load` with the `wrap=true` option in order to implement a module import/export resol...
texpert (Aurel Branzeanu)
05:51 AM Feature #10320: require into module
I'd like to note that there exists a gem called modules ( https://rubygems.org/gems/modules ) which uses `Kernel#load` with the `wrap=true` option in order to implement a module import/export resolution system similar in nature to the on... jaesharp (J Lynn)
07:53 AM Revision d281fc52 (git): Add missing dependencies
https://github.com/ruby/ruby/runs/2791163586?check_suite_focus=true k0kubun (Takashi Kokubun)
07:40 AM Revision 474f7995 (git): Cast jit_func for Windows
https://ci.appveyor.com/project/ruby/ruby/builds/39542385/job/8b7aq951f9t01x4x k0kubun (Takashi Kokubun)
07:32 AM Revision c5e8a49b (git): Avoid enqueueing the same ISeq twice
by a race condition by multiple Ractors.
Atmically incrementing body->total_calls may have its own cost, so for
now we intentionally leave the unreliable total_calls. So we allow an
ISeq to be never pushed when you use multiple Ractors....
k0kubun (Takashi Kokubun)
07:09 AM Revision 3d6b5c23 (git): merge revision(s) 773c690f2553db31a9cc83a037f5449e0c1ea456:
[ruby/net-ftp] Bump version to 0.1.2
https://github.com/ruby/net-ftp/commit/895ba44b3c
---
lib/net/ftp.rb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
nagachika (Tomoyuki Chikanaga)
07:08 AM Revision 24370a7a (git): merge revision(s) 370949aad60e992c26037241c07489c056554ea3:
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 w...
nagachika (Tomoyuki Chikanaga)
07:07 AM Revision 98e5d1f2 (git): merge revision(s) fe11031b677f301fa011202f3d27e8eb73064264:
test/net/ftp/test_ftp.rb: remove unused variable
---
test/net/ftp/test_ftp.rb | 1 -
1 file changed, 1 deletion(-)
nagachika (Tomoyuki Chikanaga)
07:07 AM Revision 02411b16 (git): merge revision(s) 1b2abb6590a653cb7b31d73c42edbaf2d0617b27:
[ruby/net-ftp] Replace "iff" with "if and only if"
iff means if and only if, but readers without that knowledge might
assume this to be a spelling mistake. To me, this seems like
exclusionary language that is unn...
nagachika (Tomoyuki Chikanaga)
07:06 AM Revision 63634928 (git): merge revision(s) 990baec41174a0b4cf7e285cf3185b4ab444437e:
[ruby/net-ftp] Close the passive connection data socket if there is
an error setting up the transfer
Previously, the connection leaked in this case. This uses
begin/ensure and checking for an error in the ensur...
nagachika (Tomoyuki Chikanaga)
07:01 AM Revision ced669ae (git): merge revision(s) a86c6cb34df0c44973efe6578ba1cd9150af22cf:
[ruby/net-ftp] 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
when we aren't using S...
nagachika (Tomoyuki Chikanaga)
06:15 AM Revision 791d7d49 (git): Freeze command line script
nobu (Nobuyoshi Nakada)
02:32 AM Feature #17930: Add column information into error backtrace
If needed, we can implement `Thread::Backtrace::Location#code_location` by using `AST.of`.
```
class Thread::Backtrace::Location
def code_location
node = RubyVM::AbstractSyntaxTree.of(self)
[
node.first_lineno,
...
mame (Yusuke Endoh)
01:32 AM Bug #17941: POSIX timers are not fork-safe on 2.7.x
ruby_3_0 d4f4ae599f650feb0a9da6fa486ce425dbe8a81a merged revision(s) 73f9831a57e133ab5645221df862a176a42f6685. nagachika (Tomoyuki Chikanaga)
01:31 AM Revision d4f4ae59 (git): merge revision(s) 73f9831a57e133ab5645221df862a176a42f6685: [Backport #17941]
POSIX timer cannot be shared in forked process [Bug #17941]
---
thread_pthread.c | 1 +
1 file changed, 1 insertion(+)
nagachika (Tomoyuki Chikanaga)

06/09/2021

11:27 PM Feature #17930: Add column information into error backtrace
> Another thought: for the case of NoMethodError, maybe showing the arguments would be enough to differentiate in most cases which of the two calls with the same name was problematic?
> ...
I don't think it is ideal. If you chain `#map` ...
yuki24 (Yuki Nishijima)
06:07 PM Feature #17930: Add column information into error backtrace
Another thought: for the case of NoMethodError, maybe showing the arguments would be enough to differentiate in most cases which of the two calls with the same name was problematic?
`NoMethodError#args` already exists, so it would be th...
Eregon (Benoit Daloze)
05:52 PM Feature #17930: Add column information into error backtrace
> I'll try to implement it again in prelude.rb, or think of creating a private, MRI-specific default gem.
Why not exposing column information on Thread::Backtrace::Location?
That would be a proper public API.
Given that Thread::Back...
Eregon (Benoit Daloze)
04:53 PM Feature #17930: Add column information into error backtrace
> did_you_mean is a public gem, so I think it should avoid using such a internal, unstable (the AST will evolve and differs per Ruby implementation), and MRI-specific API.
That makes sense.
First I tried to implement the feature in...
mame (Yusuke Endoh)
06:16 PM Revision 8a46b480 (git): Refactor gc_marks_start_heap to only configure heap
Move the non-heap related configurations to gc_marks_start. peterzhu2118 (Peter Zhu)
03:17 PM Misc #17936 (Closed): Run Travis at push on forked repository
Applied in changeset commit:git|f7741cda323e759432f34c954d7da0ac3d865ab1.
----------
Enable Travis on the specific branches or forked repositories.
Align the Travis enabling timing with GitHub Actions.
For the syntax, see <https://doc...
jaruga (Jun Aruga)
03:17 PM Revision fa340dd9 (git): * 2021-06-10 [ci skip]
git[bot]
03:16 PM Revision f7741cda (git): Enable Travis on the specific branches or forked repositories.
Align the Travis enabling timing with GitHub Actions.
For the syntax, see <https://docs.travis-ci.com/user/conditions-v1>.
We use `repo` syntax rather than `fork = true/false` syntax to show a general usage in any repositories on GitHub...
Jun Aruga
02:45 PM Bug #17923 (Closed): try to mark T_NONE object with miniruby x86 Win32 buildt with MSVC
jeremyevans0 (Jeremy Evans)
12:21 PM Bug #17923: try to mark T_NONE object with miniruby x86 Win32 buildt with MSVC
FTR commit:e03bf76b312e9cba0e44488fcd8f67099af816cb by user:nobu should solve this in a more general way. I think we can close this now. xtkoba (Tee KOBAYASHI)
10:15 AM Revision e03bf76b (git): Pack iseq_inline_constant_cache_entry
Reordered iseq_inline_constant_cache_entry members not to exceed
the size of RValue.
nobu (Nobuyoshi Nakada)
09:49 AM Revision 9ba335e2 (git): [Win32] fixed PACKED_STRUCT_UNALIGNED on x86
Use MACHINE for x86 CPU family, ARCH is CPU model name (i386) and
cannot be x86.
nobu (Nobuyoshi Nakada)
08:50 AM Bug #17943: Segmentation fault in dispatch()
mame (Yusuke Endoh) wrote in #note-1:
> It is a static function in protobuf. Please contact on them first.
Thanks for you analysis and quick response. I submitted https://github.com/protocolbuffers/protobuf/issues/8716.
pantras (Philippe ANTRAS)
08:11 AM Bug #17943 (Third Party's Issue): Segmentation fault in dispatch()
It is a static function in protobuf. Please contact on them first.
https://github.com/protocolbuffers/protobuf/blob/v3.11.0/ruby/ext/google/protobuf_c/upb.c#L7015
mame (Yusuke Endoh)
07:46 AM Bug #17943 (Third Party's Issue): Segmentation fault in dispatch()
Ruby is crashing due to a segfault in dispatch() while decoding a protobuf message on s390 platform. This occurred with Ruby 2.4.6 and reproduces with 2.7.3.
I believe this is in Ruby, since `nm -D /opt/rbenv/versions/2.7.3/lib/ruby/g...
pantras (Philippe ANTRAS)
05:32 AM Feature #17942: Add a `initialize(public @a, private @b)` shortcut syntax for defining public/private accessors for instance vars as part of constructor
You should probably read @matz's response to a previous request for instance variable parameters: https://bugs.ruby-lang.org/issues/8563#note-3 (which he confirmed had not changed as of 2017: https://bugs.ruby-lang.org/issues/8563#note-1... jeremyevans0 (Jeremy Evans)
05:25 AM Feature #17942: Add a `initialize(public @a, private @b)` shortcut syntax for defining public/private accessors for instance vars as part of constructor
FYI: This is (partially) a duplicate of #5825, #8563, #12023, #12578, #12820, and #15192. mame (Yusuke Endoh)
04:55 AM Feature #17942 (Open): Add a `initialize(public @a, private @b)` shortcut syntax for defining public/private accessors for instance vars as part of constructor
This proposal builds on the proposed `initialize(@a, @b)` instance var assignment shortcut syntax described in #15192.
1. It allows you to add an *optional* `public`/`protected`/`private` modifier before any instance var parameter. Do...
TylerRick (Tyler Rick)
04:21 AM Feature #15192: Introduce a new "shortcut assigning" syntax to convenient setup instance variables
## Same feature in TypeScript
It's worth mentioning that other languages have a shortcut for assignment var assignment directly from constructor parameters. So it seems especially painful that Ruby, despite being *so* beautifully elegan...
TylerRick (Tyler Rick)
03:34 AM Bug #17941 (Closed): POSIX timers are not fork-safe on 2.7.x
Applied in changeset commit:git|73f9831a57e133ab5645221df862a176a42f6685.
----------
POSIX timer cannot be shared in forked process [Bug #17941]
nobu (Nobuyoshi Nakada)
03:32 AM Revision 73f9831a (git): POSIX timer cannot be shared in forked process [Bug #17941]
nobu (Nobuyoshi Nakada)
12:36 AM Feature #17845: Windows Ruby - ucrt build?
A patch is attached for the configure script to set `rb_cv_msvcrt=ucrt` and `RT_VER=140` when UCRT is used. xtkoba (Tee KOBAYASHI)
12:31 AM Feature #17763: Implement cache for cvars
Thank you for the benchmark.
How about that?
>> We also measured database queries in Rails and with the cvar cache they are about ~9% faster.
> ...
ko1 (Koichi Sasada)
12:08 AM Feature #17785: Allow named parameters to be keywords
This feels related to [this proposal](https://bugs.ruby-lang.org/issues/16460) I submitted ~1.5 years ago concerning external/internal names for keyword parameters as it would solve this problem somewhat more elegantly:
```ruby
# Onl...
hibachrach (Hazel Bachrach)
 

Also available in: Atom