Project

General

Profile

Activity

From 07/05/2022 to 07/11/2022

07/11/2022

08:29 PM Bug #18905: :"@=".inspect is non-evaluatable
I was bitten by the same thing last week and was actually going to open an issue myself. Thanks for raising this @qnighy.
The thing that caught me out was that the following discrepancy:
```ruby
"4_to_5".to_sym.inspect
#=> :"4_to_5...
ufuk (Ufuk Kayserilioglu)
12:09 PM Bug #18905: :"@=".inspect is non-evaluatable
sawa (Tsuyoshi Sawada) wrote in #note-1:
> However, among them, `:"@=".inspect` and `:"$$$$=".inspect` do not include quotations. Is that what you are at?
Ah yes, the second example is my mistake. It should have been `:"[=]="` or suc...
qnighy (Masaki Hara)
07:53 AM Bug #18905: :"@=".inspect is non-evaluatable
First, `inspect` methods are not for `eval`.
We only guarantee that `sym.name.to_sym == sym`.
nobu (Nobuyoshi Nakada)
07:57 PM Revision 6e74c5c2 (git): [rubygems/rubygems] Bump rb-sys
Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.18 to 0.9.19.
- [Release notes](https://github.com/oxidize-rb/rb-sys/releases)
- [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.18...v0.9.19)
---
updated-depende...
dependabot[bot]
07:54 PM Bug #18816: Ractor segfaulting MacOS 12.4 (aarch64 / M1 processor)
I took a look at this, and it looks like we're missing a lock when deleting the fd from `waiting_fds` list. I've attached a patch that fixes the crash for me. It seems like not every request gets serviced, but I think that might be a d... tenderlovemaking (Aaron Patterson)
05:52 PM Revision ea956e5e (git): [rubygems/rubygems] Bump rb-sys in /test/rubygems/test_gem_ext_cargo_builder/custom_name
Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.18 to 0.9.19.
- [Release notes](https://github.com/oxidize-rb/rb-sys/releases)
- [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.18...v0.9.19)
---
updated-depende...
dependabot[bot]
03:34 PM Misc #18836: DevMeeting-2022-07-21
* [Bug #18770] Inconsistent behavior of IO/StringIO's each methods when called with nil as a separator, limit and chomp: true (jeremyevans0)
* When using `nil` separator and `chomp` keyword, should IO chomp a final line separator?
...
jeremyevans0 (Jeremy Evans)
03:22 PM Bug #18896 (Rejected): Shellwords.escape(nil) returns "empty" string
jeremyevans0 (Jeremy Evans)
03:05 PM Revision 66dfcbed (git): [ruby/irb] [DOC] Include updated help message (https://github.com/ruby/irb/pull/377)
* Include updated help message
https://github.com/ruby/irb/commit/ff129f3794
burdettelamar (Burdette Lamar)
03:02 PM Revision b1218fd3 (git): * 2022-07-12 [ci skip]
git[bot]
03:02 PM Revision 702d4d77 (git): [ruby/date] [DOC] Enhanced RDoc (https://github.com/ruby/date/pull/62)
Minor edits to 11 methods' documentation.
https://github.com/ruby/date/commit/00bb7f6648
burdettelamar (Burdette Lamar)
02:38 PM Bug #18906 (Closed): coverage failed on GItHub Actions
Applied in changeset commit:git|a871fc4d86e857b4c580604d2654877135484896.
----------
Fix a regression of b2e58b02aec73f9c350bf109c021c180fc699ccc
At that commit, I fixed a wrong conditional expression that was always
true. However, th...
mame (Yusuke Endoh)
06:10 AM Bug #18906: coverage failed on GItHub Actions
GitHub Actions log will expire, so I copy and paste it.
https://github.com/ruby/actions/runs/6857369382?check_suite_focus=true#step:9:84
```
test-tool
Run options:
--seed=60580
"--ruby=./miniruby -I./lib -I. -I.ext/com...
znz (Kazuhiro NISHIYAMA)
05:59 AM Bug #18906: coverage failed on GItHub Actions
Thank you, I have send a PR: https://github.com/ruby/ruby/pull/6112 mame (Yusuke Endoh)
02:37 AM Bug #18906 (Closed): coverage failed on GItHub Actions
coverage failed on GItHub Actions since https://github.com/ruby/actions/actions/runs/2486933939
(previous https://github.com/ruby/actions/actions/runs/2486176425 is passed)
A reproduce test is attached.
```
1) Failure:
TestCov...
znz (Kazuhiro NISHIYAMA)
02:38 PM Revision a871fc4d (git): Fix a regression of b2e58b02aec73f9c350bf109c021c180fc699ccc
At that commit, I fixed a wrong conditional expression that was always
true. However, that seemed to have caused a regression. [Bug #18906]
This change removes the condition to make the code always enabled.
It had been enabled until th...
mame (Yusuke Endoh)
01:50 PM Bug #18907 (Closed): rb_profile_frames output includes dummy main Thread frame
Howdy! I'm working at Datadog [on the `ddtrace` gem](https://github.com/DataDog/dd-trace-rb), and we're starting to make use of the `rb_profile_frames` API for our continuous profiler.
While comparing the output of `rb_profile_frames`...
ivoanjo (Ivo Anjo)
01:19 PM Revision 2733c049 (git): [ruby/reline] Add tests for top-level dialog color APIs
https://github.com/ruby/reline/commit/347a468c59 st0012 (Stan Lo)
01:00 PM Revision 6423d32e (git): Replace use of double_heap in tests with expand_heap
eightbitraptor (Matt V-H)
01:00 PM Revision a6dd859a (git): Add expand_heap option to GC.verify_compaction_references
In order to reliably test compaction we need to be able to move objects
between size pools.
In order for this to happen there must be pages in a size pool into
which we can allocate.
The existing implementation of `double_heap` only do...
eightbitraptor (Matt V-H)
11:05 AM Misc #18888 (Assigned): Migrate ruby-lang.org mail services to Google Domains and Google Workspace
FYI: I migrated to `ruby-lang.org` from AWS Route53 to Google Domains today. It remains old DNS records.
We will remove the obsoleted records and prepare email aliases for Ruby core members.
hsbt (Hiroshi SHIBATA)
07:24 AM Bug #18893 (Closed): Don't redefine memcpy(3)
This is fixed and will be included in the next release. Thank you! shyouhei (Shyouhei Urabe)
06:58 AM Revision fae568ed (git): Use NO_JIT_DESCRIPTION only when needed
Apparently 203801566a186b7b1cbe899a06d0832923a1bdf9 broke YJIT's CI. k0kubun (Takashi Kokubun)
06:10 AM Revision 20380156 (git): Fix #5872 for MJIT GitHub Actions
If you run tests with RUN_OPTS=--mjit, the test fixes in
https://github.com/ruby/ruby/pull/5872 don't work.
k0kubun (Takashi Kokubun)
04:43 AM Revision da21a2c3 (git): [ruby/rdoc] `RubyVM` is implementation dependent
https://github.com/ruby/rdoc/commit/aaeb5ce1ce nobu (Nobuyoshi Nakada)
04:43 AM Revision b564ef36 (git): [ruby/rdoc] Fix the known classes more
https://github.com/ruby/rdoc/commit/9f47234e0e nobu (Nobuyoshi Nakada)
04:14 AM Revision c7dd5b65 (git): * 2022-07-11 [ci skip]
git[bot]
04:14 AM Revision 86df6f4b (git): [ruby/rdoc] Fix an exception class name
https://github.com/ruby/rdoc/commit/87301da71b nobu (Nobuyoshi Nakada)

07/10/2022

02:51 PM Revision 5137af63 (git): [ruby/date] Enhanced RDoc (https://github.com/ruby/date/pull/61)
Omit private aliases from Rdoc.
https://github.com/ruby/date/commit/48f9180663
burdettelamar (Burdette Lamar)
12:07 PM Bug #18658: Need openssl 3 support for Ubuntu 22.04 (Ruby 2.7.x and 3.0.x)
https://github.com/rbenv/ruby-build/pull/1974 is merged so one solution now is "Use ruby-build" and it will install the right openssl version whenever the system openssl version does not match.
It is not ideal that the system openssl ...
Eregon (Benoit Daloze)
10:01 AM Bug #18658: Need openssl 3 support for Ubuntu 22.04 (Ruby 2.7.x and 3.0.x)
Issue at ruby/openssl to have a release supporting OpenSSL 1.0.1 - 3.0.0: https://github.com/ruby/openssl/issues/517.
If there is such a release it should be a no-brainer for Ruby 2.7 and 3.0 to directly support OpenSSL 3.
The next Tru...
Eregon (Benoit Daloze)
04:00 AM Bug #18658: Need openssl 3 support for Ubuntu 22.04 (Ruby 2.7.x and 3.0.x)
For folks who use rbenv/ruby-build to manage ruby, https://gist.github.com/yob/08d53a003181aa0fcce9812b1b533870 describes an adapted version of the workaround by @mame that can be used to install ruby 3.0 on systems with openssl 3.0 jhealy (James Healy)
08:56 AM Revision ec09ba58 (git): Extract `atomic_inc_wraparound` function
nobu (Nobuyoshi Nakada)
07:38 AM Revision 072a8bf7 (git): * 2022-07-10 [ci skip]
git[bot]
04:11 AM Revision b1b81723 (git): Add `asan_unpoisoning_object` to execute the block with unpoisoning
nobu (Nobuyoshi Nakada)
04:11 AM Revision ec303e49 (git): Split `rb_raw_obj_info`
nobu (Nobuyoshi Nakada)
04:11 AM Revision 233054a6 (git): Cycle `obj_info_buffers_index` atomically
nobu (Nobuyoshi Nakada)
04:07 AM Revision a006dcb7 (git): `APPEND_S` for no conversion formats
nobu (Nobuyoshi Nakada)
04:03 AM Revision 2bf03135 (git): Rewrite `APPENDF` using variadic arguments
nobu (Nobuyoshi Nakada)
04:03 AM Revision 51025a90 (git): Use `size_t` for `rb_raw_obj_info`
nobu (Nobuyoshi Nakada)
04:03 AM Revision fbe36514 (git): Use `asan_unpoison_object_temporary`
nobu (Nobuyoshi Nakada)
04:03 AM Revision b16f44ad (git): Get rid of static buffer in `obj_info`
nobu (Nobuyoshi Nakada)

07/09/2022

10:44 PM Bug #18818: Thread waitq does not retain referenced objects, can lead to use after free.
IMO, neither ruby nor C should *ever* be in a position where they are referencing freed memory. And, although `sync_waiter` lists check `waiter->th->status != THREAD_KILLED` when they are being traversed, that would be dangerous if the ... nevans (Nicholas Evans)
02:48 PM Bug #18904: Mutex and Fiber: No live threads left. Deadlock? (fatal)
dorianmariefr (Dorian Marié) wrote in #note-3:
> What would you suggest using instead?
Stop nesting the calls?:
```ruby
around do ...
jeremyevans0 (Jeremy Evans)
12:43 PM Bug #18904: Mutex and Fiber: No live threads left. Deadlock? (fatal)
What would you suggest using instead? dorianmariefr (Dorian Marié)
02:44 PM Bug #18905: :"@=".inspect is non-evaluatable
Not sure what you mean. `inspect` is expected to return a string, and the cases you mention indeed return a string respectively.
```ruby
:"@=".inspect #=> ":@="
:"[][]=".inspect #=> ":\"[][]=\""
:"$$$$=".inspect #=> ":$$$$="
```
...
sawa (Tsuyoshi Sawada)
06:30 AM Bug #18905 (Closed): :"@=".inspect is non-evaluatable
There is an edge case where `Symbol#inspect` returns a non-evaluatable expression:
```ruby
:"@=".inspect # => :@=
:"[][]=".inspect # => :[][]=
:"$$$$=" # => :$$$$=
```
More specifically, the quotations are stripped if the follo...
qnighy (Masaki Hara)
10:00 AM Revision 1150a54a (git): Use `File::PATH_SEPARATOR` for the portability
nobu (Nobuyoshi Nakada)
06:26 AM Revision 949c3afb (git): [ruby/openssl] Skip a new test when old OpenSSL
It does not raise an error when setting an invalid value to SSLContext
ciphers on Ubuntu 18.04.
https://github.com/ruby/openssl/commit/8c96a69b0d
nobu (Nobuyoshi Nakada)
04:08 AM Revision 2725c5db (git): Fix invalid mkdir detection on OpenBSD
This was broken by 67e54ce4081abaa16774b93ccd33ccbd1d6c6531, which
resulted in " -d" being used as the mkdir_p program. I think this
is because $ac_install_sh has been set to '' at the point it is
used.
There's probably a better way to ...
jeremyevans (Jeremy Evans)

07/08/2022

05:20 PM Bug #18904 (Rejected): Mutex and Fiber: No live threads left. Deadlock? (fatal)
This isn't a bug. `Mutex` is not designed to be reentrant, so that will always fail in recursive use. `Monitor` is only reentrant in the same fiber, and you are using a separate fiber, so that should fail as well in this case. The `Mon... jeremyevans0 (Jeremy Evans)
04:34 PM Bug #18904: Mutex and Fiber: No live threads left. Deadlock? (fatal)
Same error happens with `Monitor` dorianmariefr (Dorian Marié)
04:32 PM Bug #18904 (Rejected): Mutex and Fiber: No live threads left. Deadlock? (fatal)
Hi,
I was investigating an issue with the climate_control gem and minitest-around and it seems like the bug is coming from Ruby:
```ruby
def around(&block)
Fiber.new do |context, resume|
context.instance_exec(resume, &bloc...
dorianmariefr (Dorian Marié)
04:06 PM Revision e9ec6893 (git): [ruby/date] [DOC] Enhanced RDoc (https://github.com/ruby/date/pull/59)
Minor changes (mostly doc-guide compliance) to 18 or so of simpler methods (getters).
https://github.com/ruby/date/commit/00e37ba2b4
burdettelamar (Burdette Lamar)
03:39 PM Revision d77ebe8e (git): [ruby/openssl] Strip trailing spaces [ci skip]
https://github.com/ruby/openssl/commit/862d92de93 nobu (Nobuyoshi Nakada)
03:31 PM Revision 1c17cf68 (git): * 2022-07-09 [ci skip]
git[bot]
02:18 PM Revision 86768f1d (git): [ruby/openssl] Fix formatting in docs
The + tag can only be used for single words. For multiple words the <tt>
tag has to be used.
https://github.com/ruby/openssl/commit/cf2f019c3e
peterzhu2118 (Peter Zhu)
02:18 PM Revision 4d6a2932 (git): [ruby/openssl] Let OpenSSL choose the digest if digest for Openssl::OCSP::BasicResponse#sign is nil.
https://github.com/ruby/openssl/commit/27efcd7e1c jprokop (Jarek Prokop)
02:18 PM Revision 7a5a90e0 (git): [ruby/openssl] Let OpenSSL choose the digest if digest for Openssl::OCSP::Request#sign is nil.
https://github.com/ruby/openssl/commit/a1f6cbc261 jprokop (Jarek Prokop)
02:18 PM Revision def44530 (git): [ruby/openssl] Fix test of cipher name to pass in LibreSSL 3.4
LibreSSL 3.5 switched the cipher naming to match OpenSSL.
https://github.com/ruby/openssl/commit/bf198278bd
jeremyevans (Jeremy Evans)
02:18 PM Revision b5efef37 (git): [ruby/openssl] Fix operator precedence in OSSL_OPENSSL_PREREQ and OSSL_LIBRESSL_PREREQ
https://github.com/ruby/openssl/commit/b02815271f jeremyevans (Jeremy Evans)
02:18 PM Revision aee36dd7 (git): [ruby/openssl] Fix build with LibreSSL 3.5
https://github.com/ruby/openssl/commit/e25fb0d0d8 jeremyevans (Jeremy Evans)
02:18 PM Revision 09daf78f (git): [ruby/openssl] Add 'ciphersuites=' method to allow setting of TLSv1.3 cipher suites along with some unit tests (https://github.com/ruby/openssl/pull/493)
Add OpenSSL::SSL::SSLContext#ciphersuites= method along with unit tests.
https://github.com/ruby/openssl/commit/12250c7cef
twkmd12
02:18 PM Revision 0bf2dfa6 (git): [ruby/openssl] ignore pkgconfig when any openssl option is specified
https://github.com/ruby/openssl/commit/b23fa75aa3 Stefan Kaes
02:18 PM Revision 01025a00 (git): [ruby/openssl] Skip optional wildcard SAN tests on LibreSSL 3.5.0+
RFC 6066 states how some wildcard SAN entries MAY be handled, but
it does not say they MUST be handled. LibreSSL 3.5.0 only handles
suffix wildcard SANs, not prefix wildcard SANs, or interior
wildcard SANs, so return early from the wild...
jeremyevans (Jeremy Evans)
10:10 AM Revision 58e7205c (git): See the environment variable and then check if JIT options conflict
nobu (Nobuyoshi Nakada)
08:53 AM Misc #18891: Expand tabs in C code
I'm also in favour of https://github.com/ruby/ruby/pull/6094 - It feels like the most elegant solution of those proposed eightbitraptor (Matt V-H)
06:59 AM Revision 7bab7883 (git): Simplify BLSR code
And suppress unary minus operator to unsigned type warnings by VC. nobu (Nobuyoshi Nakada)
03:11 AM Revision 9958ed61 (git): Use `roomof` macro
The masking is not only unnecessary but works only when the masking
value is a power of 2. Also suppress unary minus operator to unsigned
type warnings.
nobu (Nobuyoshi Nakada)
02:31 AM Revision 4a2662ae (git): [Bug #18890] Suppress warnings and fix the message
```
test/ruby/test_parse.rb:1384: warning: assigned but unused variable - obj
test/ruby/test_pattern_matching.rb:1162: warning: unused literal ignored
test/ruby/test_pattern_matching.rb:1165: warning: unused literal ignored
test/ruby/tes...
nobu (Nobuyoshi Nakada)
01:55 AM Revision f1c15f3e (git): Relax assertion condition for thread local counters
Recently `TestThreadInstrumentation#test_join_counters` often fails as
```
<[1, 1, 1]> expected but was
<[2, 2, 2]>.
```
Probably it seems that the thread is suspended more than once.
There may be no guarantee that the subject thread n...
nobu (Nobuyoshi Nakada)
01:55 AM Revision cf991337 (git): Make a local symbol static
nobu (Nobuyoshi Nakada)

07/07/2022

08:28 PM Bug #18903: Stack overflow signal handling seems to be triggered once and then not working after
In general it is not possible to recover from a stack overflow (be it in C or Ruby), the executing program should be considered hopelessly corrupted because e.g. it might have happened in the middle of a critical section.
So IMHO the ri...
Eregon (Benoit Daloze)
02:33 PM Bug #18903: Stack overflow signal handling seems to be triggered once and then not working after
(Found by Jean Boussier) chrisseaton (Chris Seaton)
02:33 PM Bug #18903 (Open): Stack overflow signal handling seems to be triggered once and then not working after
This program creates a recursive object graph and then tries to convert it to JSON with no max depth, so it stack overflows in C code that does no co-operative stack overflow checks, as the bytecode interpreter would. This therefore trig... chrisseaton (Chris Seaton)
06:56 PM Revision 3cf2c2e4 (git): Remove ISEQ_MARKABLE_ISEQ flag
We don't need this flag anymore. We have all the info we need via the
bitmap and the is_entries list.
tenderlovemaking (Aaron Patterson)
06:48 PM Revision 621e5c56 (git): [ruby/date] Enhanced RDoc (https://github.com/ruby/date/pull/58)
Brings a dozen call-seq schemas into compliance with the doc guide.
Adds links to section "Argument start" where needed.
Revises (minorly) ::today.
Otherwise, does not disturb existing text.
https://github.com/ruby/date/comm...
burdettelamar (Burdette Lamar)
06:15 PM Revision 55c5bf27 (git): [ruby/irb] Additions/revisions to help-message (https://github.com/ruby/irb/pull/370)
Changed:
Added text to options that said just 'same as ruby -whatever'.
Added defaults.
Removed an errant tab.
https://github.com/ruby/irb/commit/dfe454cc33
burdettelamar (Burdette Lamar)
05:49 PM Bug #18902 (Closed): Thread#value crash if the thread was killed because of a fork
Applied in changeset commit:git|65ae2bb2e045aa8b668d3c30515f5a6cb3eb68ad.
----------
Thread#value: handle threads killed by a fork
[Bug #18902]
When a thread is killed because we forked, the `value` if left
to `Qundef`. Returning it w...
byroot (Jean Boussier)
02:22 PM Bug #18902 (Closed): Thread#value crash if the thread was killed because of a fork
Reproduction script
```ruby
thr = Thread.new { sleep 10}
fork do
p thr.status # =>false
p thr.join # => #<Thread:0x00000001008ae480 /tmp/thread-join.rb:1 dead>
p thr.value # Assertion Failed: ./vm_core.h:1303:VM_ENV_FLAGS...
byroot (Jean Boussier)
05:49 PM Revision 65ae2bb2 (git): Thread#value: handle threads killed by a fork
[Bug #18902]
When a thread is killed because we forked, the `value` if left
to `Qundef`. Returning it woudl crash the VM.
byroot (Jean Boussier)
05:22 PM Revision 7dd0a225 (git): [rubygems/rubygems] Fix `simulate_windows` helper
It should also set the proper class variable so that `Gem.win_platform?`
returns true.
https://github.com/rubygems/rubygems/commit/0fbf6904d1
deivid (David Rodríguez)
05:14 PM Revision c8b3bd45 (git): Fix extconf.rb for OpenSSL 3 without $warnflags
On Windows with OpenSSL 3, the gem fails to compile with the following
error message:
ruby/src/ext/openssl/extconf.rb:188: undefined method \`sub!' for nil:NilClass
This is because $warnflags is nil.
peterzhu2118 (Peter Zhu)
04:07 PM Revision 4d8f12ba (git): Fix macro redefinition warning for MacOS
Introduced by 7f64989e5c913ef7624e084badd1a43ce65b3ccc
./internal.h:110:9: warning: 'memcpy' macro redefined [-Wmacro-redefined]
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/secure/_string.h:62:9: note: prev...
eightbitraptor (Matt V-H)
03:49 PM Bug #18900 (Closed): Missing events(?)/unexpected results using GVL instrumentation API
Applied in changeset commit:git|587d2d199b3f783d03266d42d066949f8a4824d3.
----------
thread_pthread.c: call SUSPENDED event when entering native_sleep
[Bug #18900]
Thread#join and a few other codepaths are using native sleep as
a way ...
byroot (Jean Boussier)
01:23 PM Bug #18900: Missing events(?)/unexpected results using GVL instrumentation API
I got a patch for it: https://github.com/ruby/ruby/pull/6101 byroot (Jean Boussier)
12:28 PM Bug #18900: Missing events(?)/unexpected results using GVL instrumentation API
> This seems surprising to me: the main thread that got blocked on #join was never marked as suspended, even though there's a resumed event from a different thread.
I may have missed some kind of fastpath in which we should trigger th...
byroot (Jean Boussier)
10:51 AM Bug #18900 (Closed): Missing events(?)/unexpected results using GVL instrumentation API
I'd like to start by thanking @byroot for his amazing work on the [GVL Instrumentation API](https://bugs.ruby-lang.org/issues/18339). This new API is going to be really useful for those of us doing performance analysis of Ruby apps :)
...
ivoanjo (Ivo Anjo)
03:49 PM Revision 0018c264 (git): * 2022-07-08 [ci skip]
git[bot]
03:49 PM Revision 587d2d19 (git): thread_pthread.c: call SUSPENDED event when entering native_sleep
[Bug #18900]
Thread#join and a few other codepaths are using native sleep as
a way to suspend the current thread. So we should call the relevant
hook when this happen, otherwise some thread may transition
directly from `RESUMED` to `REA...
byroot (Jean Boussier)
02:13 PM Bug #18898: IO#set_encoding with invalid arguments leads to a segfault
It looks like the internal encoding should be set to `Encoding.default_internal` when an invalid encoding name is given as the second argument. The equivalent is giving `nil` as the second argument instead as far as I can tell. This sc... javanthropus (Jeremy Bopp)
01:39 PM Revision 61c7ae4d (git): Gather heap page size conditions combination
When similar combination of conditions are separated in two places, it
is harder to make sure the conditional blocks match each other,
nobu (Nobuyoshi Nakada)
01:39 PM Revision f3685986 (git): Improve error message for segv in read_barrier_handler
If the page_body is a null pointer, then read_barrier_handler will
crash with an unrelated message. This commit improves the error message.
Before:
test.rb:1: [BUG] Couldn't unprotect page 0x0000000000000000, errno: Cannot allocate mem...
peterzhu2118 (Peter Zhu)
01:39 PM Revision d6c98626 (git): Fix crash in compaction due to unlocked page
The page of src could be partially compacted, so it may contain
T_MOVED. Sweeping a page may read objects on this page, so we
need to lock the page.
peterzhu2118 (Peter Zhu)
01:39 PM Revision d7c5a6d4 (git): Fix typo in gc_compact_move
The page we're sweeping is on the destination heap `dheap`, not the
source heap `heap`.
peterzhu2118 (Peter Zhu)
01:23 PM Feature #18901 (Closed): Support cross size pool movement for T_ARRAY
[Github PR](https://github.com/ruby/ruby/pull/6099)
This PR enables Arrays to move between size pools during compaction. This can occur if the array is mutated such that it would fit in a different size pool when embedded. It uses the...
eightbitraptor (Matt V-H)
01:10 PM Revision 7f64989e (git): do not define our own version of memcpy
The (sole) use of memcpy in our public header is now replaced to
directly call ruby_nonempty_memcpy, and the previous definition of
memcpy is now internal-only. [Bug#18893]
shyouhei (Shyouhei Urabe)
06:06 AM Revision 8794cc62 (git): Tentatively put macOS CIs back with adding macOS 12
nobu (Nobuyoshi Nakada)
06:06 AM Revision 67e54ce4 (git): Fallback `mkdir_p` to `as_mkdir_p`
Assume `mkdir -p` to be race-free on recent systems.
And we do not provide install-sh anyway.
nobu (Nobuyoshi Nakada)
02:33 AM Bug #18892 (Closed): ARGF.lineno starts from 2 when the file has shebang
Applied in changeset commit:git|cd948429223223f5e299626a4695ab30e43de2ea.
----------
[Bug #18892] Reset `ARGF.lineno` after reading shebang
nobu (Nobuyoshi Nakada)
02:33 AM Revision cd948429 (git): [Bug #18892] Reset `ARGF.lineno` after reading shebang
nobu (Nobuyoshi Nakada)
12:20 AM Misc #18891: Expand tabs in C code
I'm +1 for https://github.com/ruby/ruby/pull/6094 hsbt (Hiroshi SHIBATA)

07/06/2022

10:32 PM Bug #18893: Don't redefine memcpy(3)
shyouhei (Shyouhei Urabe) wrote in #note-8:
> This is my take:
> ...
Acked-by: Alejandro Colomar <alx.manpages@gmail.com>
alx (Alejandro Colomar)
12:26 AM Bug #18893: Don't redefine memcpy(3)
This is my take:
```patch
From 505d00311d82fdbed80688e9db792c3b54b8ee27 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=8D=9C=E9=83=A8=E6=98=8C=E5=B9=B3?=
<shyouhei@ruby-lang.org>
Date: Wed, 6 Jul 2022 09:18:28 +0900
Subject: [PATCH] do n...
shyouhei (Shyouhei Urabe)
10:05 PM Revision 7ba5c063 (git): [ruby/pstore] Emphasize keys instead of roots, values instead of objects (https://github.com/ruby/pstore/pull/7)
Modifies RDoc to Emphasize keys instead of roots, values instead of objects.
Code:
Renames method #root? to #key? and method #roots to #keys.
Aliases method #key as #root and method #keys as #roots.
Adds testing for all fou...
burdettelamar (Burdette Lamar)
09:15 PM Misc #18836: DevMeeting-2022-07-21
* [Misc #18891] Expand tabs in C code (k0kubun)
* Does anybody have objections to fixing this problem? Any suggestions on how to approach this?
k0kubun (Takashi Kokubun)
08:21 PM Revision 4ccaf628 (git): fix lldb scripts on older lldb python
tenderlovemaking (Aaron Patterson)
06:58 PM Revision dbb23f29 (git): [ruby/date] [DOC] Enhanced RDoc (https://github.com/ruby/date/pull/57)
All things commercial.
https://github.com/ruby/date/commit/9d3bc61728
burdettelamar (Burdette Lamar)
05:57 PM Revision c6b38e43 (git): thread_pthread.c: Remove useless call to pthread_rwlock_init
byroot (Jean Boussier)
03:25 PM Revision a2e0815e (git): Switch YJIT to using rb_str_buf_append rather than rb_str_append when encodings don't match, as discussed with byroot
Noah Gibbs (and/or Benchmark CI)
03:25 PM Revision 906f7cb3 (git): vm_opt_ltlt: call rb_str_buf_append directly if RHS is a String
`rb_str_concat` does a lot of type checking we can easily bypass.
```
| |compare-ruby|built-ruby|
|:--------------|-----------:|---------:|
|string_concat | 362.007k| 398.965k|
| | -| 1.10...
byroot (Jean Boussier)
03:13 PM Revision 9641f233 (git): * 2022-07-07 [ci skip]
git[bot]
03:13 PM Revision 3c61e1e7 (git): YJIT: add a counter for gc object refs in the machine code (#6089)
Add a counter for gc object refs in the machine code
This is to gather data for the eventual implementation of
a constant pool.
maximecb (Maxime Chevalier-Boisvert)
02:21 PM Bug #18898: IO#set_encoding with invalid arguments leads to a segfault
Thank you for working on this. While the patch prevents the crash, it does not address the other odd behavior that was reported, namely that the *internal* encoding of the IO instance is set to the default *external* encoding. Shouldn'... javanthropus (Jeremy Bopp)
09:08 AM Bug #18898 (Closed): IO#set_encoding with invalid arguments leads to a segfault
Applied in changeset commit:git|5ef3c7ea2d1968c87f361b6615699b92cc6e5a9a.
----------
[Bug #18898] Fallback invalid external encoding to the default
nobu (Nobuyoshi Nakada)
02:30 AM Bug #18898 (Closed): IO#set_encoding with invalid arguments leads to a segfault
Save the following to a file and run it:
```ruby
#!/usr/bin/env ruby
Encoding.default_external = 'utf-8'
File.open(__FILE__) do |f|
f.set_encoding('utf-8', 'invalid')
printf(
"default external: %p\ndefault internal: %p...
javanthropus (Jeremy Bopp)
12:34 PM Bug #18899 (Closed): Inconsistent argument handling in IO#set_encoding
`IO#set_encoding` behaves differently when processing a single String argument than it does when processing 2 arguments (whether Strings or Encodings) in the case where the external encoding is being set to binary and the internal encodi... javanthropus (Jeremy Bopp)
09:08 AM Revision 5ef3c7ea (git): [Bug #18898] Fallback invalid external encoding to the default
nobu (Nobuyoshi Nakada)
07:20 AM Misc #18891: Expand tabs in C code
> It might be a bit difficult to find out which C files shouldn't be a target.
I noticed ruby-commit-hook/bin/auto-style.rb already knows about this. (2) doesn't have any blocker.
So I prepared a pull request: https://github.com/ruby/...
k0kubun (Takashi Kokubun)
07:03 AM Revision 53afacd0 (git): Update bundled gems list at 2022-07-06
git[bot]
02:59 AM Revision 76619bbb (git): [wasm] get rid of workaround use of older binaryen and update to latest
We no longer need to use older version of binaryen since the blocker
issue has been resolved https://github.com/WebAssembly/binaryen/issues/4401
katei (Yuta Saito)

07/05/2022

11:32 PM Bug #18890 (Closed): parse.y: pattern label is newline-sensitive if it is dynamic
Applied in changeset commit:git|eaeb130b11fefe91aaf61f294ea32af76dada74f.
----------
[Bug #18890] newline should be insignificant after pattern label
nobu (Nobuyoshi Nakada)
11:32 PM Revision eaeb130b (git): [Bug #18890] newline should be insignificant after pattern label
nobu (Nobuyoshi Nakada)
10:11 PM Feature #18897: Add a new instruction for sending messages to ephemeral stack arrays
Just to be complete with regard to stack frames, `max` doesn't show up in the stack trace in the following code even though `<=>` is called via `.max`:
```ruby
class Foo
attr_reader :x
def initialize x
@x = x
end
...
tenderlovemaking (Aaron Patterson)
10:05 PM Feature #18897 (Closed): Add a new instruction for sending messages to ephemeral stack arrays
This feature is an alternative to Feature #18825. Instead of adding a new instruction specifically for the `.hash` method, this patch replaces `opt_newarray_max` and `opt_newarray_min` with a new instruction `opt_newarray_send`. `opt_n... tenderlovemaking (Aaron Patterson)
07:51 PM Bug #18896: Shellwords.escape(nil) returns "empty" string
`Shellwords.escape` just converts the argument to a string before shell-escaping it, so in this context nil is equivalent to ""
```
Shellwords.escape("") #=> "''"
Shellwords.escape(42) #=> "42"
Shellwords.escape(Object.n...
Dan0042 (Daniel DeLorme)
12:31 PM Bug #18896 (Rejected): Shellwords.escape(nil) returns "empty" string
Mistakenly calling Shellwords.escape with nil as parameter had this result:
``` ruby
irb(main):002:0> Shellwords.escape(nil)
=> "''"
```
This is not helpful and resulted a hard-to-find bug when a script proceeded to use an empty s...
hspem (Per-Erik Martin)
05:59 PM Revision 902d1a5c (git): [rubygems/rubygems] add message when gems are requested to be updated but they are not installed
https://github.com/rubygems/rubygems/commit/27953ffe9a Brian Le
05:59 PM Revision 6eab8095 (git): [rubygems/rubygems] output gems already up-to-date regardless if any gems were updated
https://github.com/rubygems/rubygems/commit/4ec608a573 Brian Le
05:09 PM Feature #18004: Add Async to the stdlib
Or I can just close it and be patient, since I assume a scheduler will be added eventually. :)
It really would be nice to have a minimalist scheduler at some point, since the test implementations in ruby/ruby and ruby/io-wait aren't t...
shan (Shannon Skipper)
05:06 PM Feature #18004: Add Async to the stdlib
Is it better to retitle this issue to align with larskanis's proposal or close this and start a new issue? Happy to do either! shan (Shannon Skipper)
05:05 PM Feature #18004: Add Async to the stdlib
larskanis (Lars Kanis) wrote in #note-4:
> Adding the core Async gem to stdlib requires to add 4 more dependent gems. Async is a big library with a lot of supplemental gems. It makes things more complicated if some gems are in stdlib an...
shan (Shannon Skipper)
03:45 PM Revision f681f9ae (git): Adjust indents [ci skip]
nobu (Nobuyoshi Nakada)
03:32 PM Revision d4f5c012 (git): Set `SDKROOT` to empty value [ci skip]
So `RbConfig::CONFIG["includedir"]` does not start with double slash. nobu (Nobuyoshi Nakada)
03:23 PM Revision c21965b2 (git): * 2022-07-06 [ci skip]
git[bot]
03:22 PM Revision 68c1a03f (git): Suppress msys2 pathname conversion also at single test runs [ci skip]
nobu (Nobuyoshi Nakada)
08:55 AM Bug #18893: Don't redefine memcpy(3)
shyouhei (Shyouhei Urabe) wrote in #note-4:
> alx (Alejandro Colomar) wrote in #note-2:
> ...
[...]
>
> ...
:-)
I'm happy to help!
alx (Alejandro Colomar)
08:52 AM Bug #18893: Don't redefine memcpy(3)
nobu (Nobuyoshi Nakada) wrote in #note-5:
> Do we need to force the function to be inlined?
You can, but it's not the best solution.
I suggest the following patches (if you like them, I'll send them to the mailing list):
```diff
com...
alx (Alejandro Colomar)
05:37 AM Bug #18893: Don't redefine memcpy(3)
Do we need to force the function to be inlined?
```patch
diff --git a/include/ruby/internal/memory.h b/include/ruby/internal/memory.h
index aa3464465da..0c9fa17ee92 100644
--- a/include/ruby/internal/memory.h
+++ b/include/ruby/i...
nobu (Nobuyoshi Nakada)
01:00 AM Bug #18893 (Open): Don't redefine memcpy(3)
alx (Alejandro Colomar) wrote in #note-2:
> Actually, ISO C specifies (indirectly) that `memcpy(dest, NULL, 0)` is Undefined Behavior.
> ...
Oh, didn't know this. Thank you.
> However, I can see reasons for calling `memcpy(dest, NU...
shyouhei (Shyouhei Urabe)
05:40 AM Revision 5921bfc7 (git): Add `--stdout-on-failure`, the reverse of `--stderr-on-failure`
nobu (Nobuyoshi Nakada)
05:40 AM Revision 1b34bd07 (git): Separate failed output option
It is unrelated to `GlobOption` at all. nobu (Nobuyoshi Nakada)
04:50 AM Revision babdb158 (git): Synchronize the test thread not to die before assertions
nobu (Nobuyoshi Nakada)
02:35 AM Revision 3a9ff945 (git): CI: skip the failing test only
nobu (Nobuyoshi Nakada)
02:33 AM Revision b5f87188 (git): CI: skip objspace test on MinGW for now
nobu (Nobuyoshi Nakada)
12:45 AM Revision ed76ba35 (git): [rubygems/rubygems] Bump rb-sys in /test/rubygems/test_gem_ext_cargo_builder/custom_name
Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.15 to 0.9.18.
- [Release notes](https://github.com/oxidize-rb/rb-sys/releases)
- [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.15...v0.9.18)
---
updated-depende...
dependabot[bot]
12:45 AM Revision 94aff13f (git): [rubygems/rubygems] Bump rb-sys
Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.15 to 0.9.18.
- [Release notes](https://github.com/oxidize-rb/rb-sys/releases)
- [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.15...v0.9.18)
---
updated-depende...
dependabot[bot]
12:30 AM Revision a070d4cc (git): Local functions should be `static`
nobu (Nobuyoshi Nakada)
 

Also available in: Atom