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... -
11:19 PM Bug #17618 (Closed): Exceptions in Fiber Scheduler causes a segv
-
11:16 PM Bug #17655 (Closed): Experiencing Repeated Segmentation Faults Using Puma with Ruby 3.0.0
-
11:06 PM Bug #17726 (Closed): `respond_to_missing?` doesn't raise when called from `defined?`
-
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... -
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!
... -
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 ... -
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... -
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... -
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... -
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... -
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
-
06:26 PM Bug #17824 (Closed): Gem::Deprecate#deprecate doesn't work with method with keyword arguments
-
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: ...
-
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
-
05:59 PM Bug #17839 (Closed): Windows CI failures with net/http - fix at ruby/net-http
-
05:58 PM Bug #17875 (Closed): Segfault when reusing a closed Fiber scheduler inside a Thread
-
05:57 PM Bug #17864 (Closed): [BUG] try to mark T_NONE object (in Ractors)
-
05:57 PM Bug #17855 (Closed): [BUG] object allocation during garbage collection phase
-
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
-
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? -
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.
-
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. -
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?
-
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.... - 03:09 PM Revision d4db18d6 (git): * 2021-06-16 [ci skip]
-
03:08 PM Revision 43ed1e68 (git): Make ext directory before extinit.c when out-of-place build
-
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?
-
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 + ... -
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 -
02:43 PM Bug #17949 (Closed): [SOLARIS11, SPARC, SEGFAULT] generating encdb.h
-
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
-
12:42 PM Revision d09f097e (git): Time#getlocal tests for [Feature #17544]
-
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 ... -
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...
-
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. -
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.
-
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... -
06:55 AM Revision b32e6c16 (git): Convert initial contents before allocating queue buffer
-
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. -
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?
-
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... -
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`?
-
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
``` - 03:04 AM Revision f0818982 (git): [ruby/ostruct] v0.4.0
- https://github.com/ruby/ostruct/commit/8534f69e4e
-
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... - 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...
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.
-
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?
-
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... -
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 # ... - 04:28 PM Revision a09ddfc4 (git): [lib/ostruct] Fix YAML test
- 04:28 PM Revision 52369fc5 (git): [lib/ostruct] Allow overriding of `block_given?`
- 03:04 PM Revision fc98602e (git): * 2021-06-15 [ci skip]
-
03:03 PM Revision edbe0e22 (git): Suppress exception report in inner thread
-
03:02 PM Revision 57eaa07b (git): Close leaked file descriptors
-
02:31 PM Revision 5dde13e5 (git): [ruby/ostruct] bump up
- https://github.com/ruby/ostruct/commit/bb253be3e9
-
02:24 PM Revision 70833fab (git): Suppress gcc11 clobbered warning
- 01:53 PM Revision 931ea7cf (git): Add fallback block to `OpenStruct#delete_field` (#1409)
-
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
-
12:16 PM Revision b513fc2f (git): Fixed method names in exception messages
- These methods are not !-suffixed, and the messages were very
confusing. - 10:09 AM Revision 1ab71a5b (git): Fix fiber scheduler address resolve solaris tests
- 10:07 AM Revision 25921fe1 (git): Revert "Suppress gcc11 clobbered warning"
- This reverts commit f0f9e77b65990001bd2acb42e1c6b673f6324425.
-
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
-
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... - 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... -
05:11 AM Revision 626427c2 (git): Removed no longer used variables
-
05:10 AM Revision 635e1c52 (git): Pack values to preserve
-
05:09 AM Revision f0f9e77b (git): Suppress gcc11 clobbered warning
- 04:21 AM Revision 2792acc8 (git): Add scheduler hook `Addrinfo.getaddrinfo`. (#4375)
- Co-authored-by: Bruno Sutic <code@brunosutic.com>
-
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] -
01:40 AM Revision 688b2177 (git): time.c: Check if defined(RUBY_MSVCRT_VERSION) to build on Solaris
- Fixes [Bug #17947]
- 01:09 AM Revision 09ea2bb0 (git): * 2021-06-14 [ci skip]
-
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))]
```
06/13/2021
-
06:40 PM Feature #17845: Windows Ruby - ucrt build?
- A separate ticket for `-Wparentheses` warning issue: #17946
-
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... -
06:18 PM Feature #17845: Windows Ruby - ucrt build?
- `_WIN64` is not defined on i386-mingw32 + ucrt.
-
07:49 AM Feature #17370: Introduce non-blocking `Addrinfo.getaddrinfo` and related methods.
- Here is PR.
https://github.com/ruby/ruby/pull/4375 -
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!
-
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`. -
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... -
06:12 AM Revision 32b18fe9 (git): Suppress array-parameter warnings by gcc 11
-
06:12 AM Revision 9ab6d39a (git): Added parentheses to silence sizeof-array-div warnings
- As well as 2366c681166a1dab95de6b9ca8ffcaae18aadd39.
-
06:12 AM Revision 9ec6c83c (git): Removed duplicate include
-
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. -
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.
-
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 ++++++++++++++++++++++++++++++++------------------------------
... - 04:45 AM Revision cba92b32 (git): * 2021-06-13 [ci skip]
-
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.
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 {... -
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` ... -
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.
-
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
... -
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}... -
12:56 PM Bug #17947: [SOLARIS11, SPARC] time.c compilation failed
- Confirmed. Fixed.
-
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... -
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.
-
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.
-
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... - 11:17 AM Revision 146721ef (git): * 2021-06-12 [ci skip]
-
11:15 AM Revision 8366506d (git): cont.c: Replace "iff" with "if and only if"
-
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.
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. -
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... -
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
-
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... -
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".
-
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...
06/10/2021
- 11:31 PM Revision 9210f8df (git): * 2021-06-11 [ci skip]
-
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.
-
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... -
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
+++ ... -
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.
-
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 -
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! :) -
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... -
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...
-
07:53 AM Revision d281fc52 (git): Add missing dependencies
- https://github.com/ruby/ruby/runs/2791163586?check_suite_focus=true
-
07:40 AM Revision 474f7995 (git): Cast jit_func for Windows
- https://ci.appveyor.com/project/ruby/ruby/builds/39542385/job/8b7aq951f9t01x4x
-
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.... -
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(-) -
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... -
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(-) -
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... -
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... -
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... -
06:15 AM Revision 791d7d49 (git): Freeze command line script
-
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,
... -
01:32 AM Bug #17941: POSIX timers are not fork-safe on 2.7.x
- ruby_3_0 d4f4ae599f650feb0a9da6fa486ce425dbe8a81a merged revision(s) 73f9831a57e133ab5645221df862a176a42f6685.
-
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(+)
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` ... -
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... -
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... -
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... -
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.
-
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... - 03:17 PM Revision fa340dd9 (git): * 2021-06-10 [ci skip]
- 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... -
02:45 PM Bug #17923 (Closed): try to mark T_NONE object with miniruby x86 Win32 buildt with MSVC
-
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.
-
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. -
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. -
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.
-
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 -
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... -
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...
-
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.
-
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... -
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... -
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] -
03:32 AM Revision 73f9831a (git): POSIX timer cannot be shared in forked process [Bug #17941]
-
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.
-
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.
> ...
-
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...