Project

General

Profile

Activity

From 06/10/2021 to 06/16/2021

06/16/2021

11:37 PM Bug #14479: Exceptions raised from a :call tracepoint can sometimes be "rescued" inside the method
This is still an issue in the master branch. I've submitted a pull request that should fix the problem: https://github.com/ruby/ruby/pull/4578 jeremyevans0 (Jeremy Evans)
09:09 PM Revision 4e097226 (git): * 2021-06-17 [ci skip]
git[bot]
09:09 PM Revision c1a7e86f (git): * expand tabs. [ci skip]
Tabs were expanded because the file did not have any tab indentation in unedited lines.
Please update your editor config, and use misc/expand_tabs.rb in the pre-commit hook.
git[bot]
09:09 PM Revision c10d5085 (git): Enable frozen_string_literal in builtin_iseq_load
Currently this has a fairly minor effect as strings are not used heavily
inside the builtins (outside of warnings, requires, and errors).
Hopefully this allows us to use strings in the future where appropriate.
jhawthorn (John Hawthorn)
08:18 PM Bug #17993 (Third Party's Issue): Ruby process stuck in rb_sigwait_sleep
I have a very simple client for kudu (https://kudu.apache.org/) implement as a wrapper that I invoke with FFI. After creating a kudu client with `KuduClientBuilder::Build()`, subsequent calls to `system` cause the ruby interpreter to bl... cout (Paul Brannan)
08:12 PM Bug #15779: After NoMemoryError, ruby freezes and takes 100% CPU
This is still an issue in the master branch. I've submitted a pull request for it: https://github.com/ruby/ruby/pull/4577. The pull request uses @wanabe's fix and a test based on @buzztaiki's example. jeremyevans0 (Jeremy Evans)
07:46 PM Feature #14835: Support TracePoint#raised_exception on non-:raise events
I looked into this, and with the current TracePoint design, it does not appear possible. For `:raise` events, the `raised_exception` is stored in `trace_args->data`. This is the same location that the return value is stored for `:retur... jeremyevans0 (Jeremy Evans)
06:48 PM Bug #15465 (Closed): Tests failed on i386-cygwin
jeremyevans0 (Jeremy Evans)
06:47 PM Bug #15587 (Closed): Thread tests failing
Ruby 2.6 is in security maintenance mode, and this does not appear to be a security issue. CI testing on AppVeyor shows the master branch is passing for both Visual Studio 2013 and 2015. So I think this can be closed. If you can reprod... jeremyevans0 (Jeremy Evans)
05:53 PM Bug #15993 (Closed): 'require' doesn't work if there are Cyrillic chars in the path to Ruby dir
This appears to be fixed starting in Ruby 2.7 (also works in 3.0):
```
D:\Евгений>C:\Ruby26-x64\bin\ruby -I D:\Евгений -e "require 'logger'"
Traceback (most recent call last):
2: from -e:1:in `<main>'
1: from C:/Ru...
jeremyevans0 (Jeremy Evans)
05:41 PM Bug #15655 (Closed): Unable to handle Russian dirname on Windows
This appears to be fixed starting in Ruby 2.5 (also works in 2.6, 2.7, and 3.0):
```
C:\>C:\Ruby24-x64\bin\gem list bundler
*** LOCAL GEMS ***
bundler (2.2.20)
C:\>C:\Ruby25-x64\bin\gem list bundler
*** LOCAL GEMS ***
...
jeremyevans0 (Jeremy Evans)
05:32 PM Bug #15674 (Closed): Regression: ObjectSpace.allocation_sourceline produces the wrong location for allocations, it shows the end of the method instead of the line where the object was created
This is fixed in Ruby 2.7.3 (and also works in 3.0.1 and master). As Ruby 2.6 is in security maintenance mode, the change will not be backported to Ruby 2.6, so this can be closed. jeremyevans0 (Jeremy Evans)
05:00 PM Bug #16368 (Closed): Error in `YAML.load(symbolize_names: true)` with null column YAML
https://github.com/ruby/psych/pull/480 was merged, which fixed this issue. jeremyevans0 (Jeremy Evans)
04:57 PM Bug #16475 (Closed): [Installation process - compiling ruby 2.7.0 from source} "make install" step oddity for ruby 2.7.0 on linux mint (debian base)
jeremyevans0 (Jeremy Evans)
04:46 PM Bug #16608: ConditionVariable#wait should return false when timeout exceeded
I submitted a pull request to rbs to fix the failure (https://github.com/ruby/rbs/pull/683) I also updated the ruby pull request (https://github.com/ruby/ruby/pull/4256) to rebase it on the current master branch. Once the rbs pull reques... jeremyevans0 (Jeremy Evans)
03:41 PM Bug #16674 (Closed): Build issue of FreeBSD 12
commit:78677f105df79e45dec451b56947509fc71c6f57 fixed this issue for the master branch. It was backported to 3.0 in commit:95aff214687a5e12c3eb57d056665741e734c188. Ruby 2.7 still fails due to this, so commit:78677f105df79e45dec451b5694... jeremyevans0 (Jeremy Evans)
03:26 PM Bug #17212 (Closed): FreeBSDで3.0.0-preview1のビルドが失敗する
I believe this was fixed by commit:78677f105df79e45dec451b56947509fc71c6f57, which disabled dtrace by default when building on FreeBSD. Ruby 3.0 and the master branch can both build correctly on FreeBSD 12.2 (tested on RubyCI). We have ... jeremyevans0 (Jeremy Evans)
03:02 PM Feature #17845: Windows Ruby - ucrt build?
@larkanis
> Do you want to switch your ruby-logo build to UCRT as well or add it as another architecture?
I think adding as another architecture would be best? Maybe tag it as `ruby-ucrt`?
> ...
I'll open an issue about add...
MSP-Greg (Greg L)
02:08 PM Feature #17845: Windows Ruby - ucrt build?
The [rubyinstaller-head nightly build](https://github.com/oneclick/rubyinstaller2/releases/tag/rubyinstaller-head) is compiled with MINGW-UCRT since a few days. So all projects that use [ruby-setup](https://github.com/ruby/setup-ruby) wi... larskanis (Lars Kanis)
12:16 PM Feature #17845: Windows Ruby - ucrt build?
On Mingw-w64 `_CrtSetReportMode` is defined in `crtdbg.h` as
```
#define _CrtSetReportMode(t,f) ((int)0)
```
thus I believe the definition in `win32/win32.c` makes no difference although it may cause a `-Wmacro-redefined` warning.
xtkoba (Tee KOBAYASHI)
09:36 AM Feature #17845: Windows Ruby - ucrt build?
Thank you @xtkoba for working on this! I replaced my previous patches by the above patches [in rubyinstaller2-packages](https://github.com/oneclick/rubyinstaller2-packages/pull/15/files).
One thing I noticed is that you disabled the c...
larskanis (Lars Kanis)
02:52 PM Bug #16840 (Closed): Decrease in Hash#[]= performance with object keys
Apparently this case was optimized in Ruby 3.0. Using the benchmark code provided:
```
$ for x in 25 26 27 30; do ruby$x -v; for y in 1 2 3; do ruby$x t/t51.rb; done; done
ruby 2.5.9p229 (2021-04-05 revision 67939) [x86_64-openbsd]...
jeremyevans0 (Jeremy Evans)
02:28 PM Bug #17945 (Closed): Date::Infinity comparison <=> with Float::INFINITY not symmetric
jeremyevans0 (Jeremy Evans)
01:23 PM Revision 2b17d2f2 (git): [ruby/net-protocol] Get rid of `__send__`
Mitigate the security risk:
https://devcraft.io/2021/01/07/universal-deserialisation-gadget-for-ruby-2-x-3-x.html
https://github.com/ruby/net-protocol/commit/a9970437e8
nobu (Nobuyoshi Nakada)
09:16 AM Bug #17664: Behavior of sockets changed in Ruby 3.0 to non-blocking
One potential issue with caching the non-blocking state in Ruby is that a C extension might call fcntl() directly on the fd of an IO to change its non-blocking state.
Not sure if that's done in practice, but it could be an issue.
Eregon (Benoit Daloze)
07:10 AM Bug #17664: Behavior of sockets changed in Ruby 3.0 to non-blocking
> In the uring backend, for read/write operations, set the IO to blocking and then revert it afterwards.
Why would you need to revert it? In practically all cases I can think of, you're going to do all I/O for a given fd on the same s...
ciconia (Sharon Rosner)
05:06 AM Bug #17664: Behavior of sockets changed in Ruby 3.0 to non-blocking
Thanks @normalperson - I understand you aren't interested much in Ruby but wish you the best. Thanks for chiming in promptly.
I probably wouldn't characterise this as an incompatibility, because this problem can surface if the user ex...
ioquatix (Samuel Williams)
12:57 AM Bug #17664: Behavior of sockets changed in Ruby 3.0 to non-blocking
samuel@oriontransfer.net wrote:
> I welcome discussion on this point, but for certain, I believe
> Ruby being non-blocking by default makes sense and that
> approach was proposed by Eric, and I agreed with it and
> finally enabled i...
normalperson (Eric Wong)
09:15 AM Bug #16921: s390x: random test failures for timeout or segmentation fault
If someone will still see the issue, please let us know.
jaruga (Jun Aruga)
09:12 AM Bug #16921 (Closed): s390x: random test failures for timeout or segmentation fault
I have not seen this issue for a while on the Fedora s390x build server. I also have not seen it on Travis s390x pipeline and our s390x server. So, I would close this for now.
jaruga (Jun Aruga)
05:31 AM Revision f4640f64 (git): Fixed comments in cmd.exe script [ci skip]
nobu (Nobuyoshi Nakada)
04:33 AM Revision f136c1ec (git): Removed redundant NUM2IOCTLREQ definition [Bug #17759]
Fix up c2d9967f78d2e6f93f8d9876c2b3ab25aa6b86e7. nobu (Nobuyoshi Nakada)
04:17 AM Bug #17759 (Closed): Correct `ioctl_req_t` for musl
Applied in changeset commit:git|c2d9967f78d2e6f93f8d9876c2b3ab25aa6b86e7.
----------
Configure ioctl request argument type [Bug #17759]
nobu (Nobuyoshi Nakada)
04:17 AM Revision c2d9967f (git): Configure ioctl request argument type [Bug #17759]
nobu (Nobuyoshi Nakada)
03:57 AM Feature #17992: Upstreaming the htmlentities gem into CGI#.(un)escape_html
Note that escaping and unescaping are not symmetric. There may be a point in keeping escaping to the minimum for performance reasons. However, when it comes to unescaping, it would be useless unless all escaped characters are completely ... sawa (Tsuyoshi Sawada)
02:30 AM Bug #17986: Ractor is stdlib Socket unfriendly
This hack has a limitation which i faced with specs.
For socket testing purposes i have i small [class](https://github.com/kvokka/dtn/blob/master/spec/support/socket_recorder.rb) (It should be adjusted for using with Ractors, share it...
kvokka (Mike Beliakov)
12:27 AM Bug #15621 (Closed): system({}, ...) breaks nonascii ENV["PATH"] on Windows
Starting in Ruby 3.0, it appears `ENV["PATH"]` is unmodified after the call to `system`. In prior versions of Ruby, it was modified by the call to `system`. This is probably related to the changes to `ENV` in Ruby 3.0, which will not b... jeremyevans0 (Jeremy Evans)
12:18 AM Bug #16186 (Closed): Calling Net::HTTP from within an #inspect implementation hang when invoked from p
I tested this and it appears fixed by commit:63a5412db7138297a2e7513067ef80dad7a3b4b4. It may be worthwhile to backport that commit to Ruby 2.7. jeremyevans0 (Jeremy Evans)
12:11 AM Bug #16759 (Closed): MinGW 2.5 - SEGV bug with Binding#local_variable_set
As this appears fixed in Ruby 2.6+, and Ruby 2.5 is out of support, I'm going to close this. jeremyevans0 (Jeremy Evans)

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)
 

Also available in: Atom