PR #15822 fixed the warning for direct hyphenated gem requires like `benchmark/ips` → `benchmark-ips`. However, hyphenated gems often provide multiple files under their namespace. For example, `benchmark-ips` provides: - benchmark/ips.r...khasinski (Chris Hasiński)
PR #15822 fixed the warning for direct hyphenated gem requires like `benchmark/ips` → `benchmark-ips`. However, hyphenated gems often provide multiple files under their namespace. For example, `benchmark-ips` provides: - benchmark/ips.r...khasinski (Chris Hasiński)
Applied in changeset commit:git|5add7c3ea9a13e657fc7cba78b2633b9548a55aa. ---------- Fix RUBY_MN_THREADS sleep returning prematurely (#15868) timer_thread_check_exceed() was returning true when the remaining time was less than 1ms, tre...khasinski (Chris Hasiński)
timer_thread_check_exceed() was returning true when the remaining time was less than 1ms, treating it as "too short time". This caused sub-millisecond sleeps (like sleep(0.0001)) to return immediately instead of actually sleeping. The f...khasinski (Chris Hasiński)
io.c: pre-allocate IO.select result arrays based on input size The ternary (rp?rb_ary_new():rb_ary_new2(0)) became pointless after commit a51f30c671 (Variable Width Allocation, Mar 2022) made both rb_ary_new() and rb_ary_new2(0) equival...khasinski (Chris Hasiński)
Applied in changeset commit:git|5de4cc56086493689701e86aa0ccf6a4a4a87d75. ---------- Fix regexp performance regression for patterns starting with s/k Commit 981ee02c7c ("Fix performance problem with /k/i and /s/i") was merged for Ruby ...khasinski (Chris Hasiński)
Commit 981ee02c7c ("Fix performance problem with /k/i and /s/i") was merged for Ruby 4.0 to enable partial Boyer-Moore optimization for patterns containing 's' or 'k' by using the prefix before those characters. However, when 's' or 'k'...khasinski (Chris Hasiński)
The 'w' format (BER compressed integer) was allocating an empty string with rb_str_new(0, 0) then immediately overwriting it with the correctly-sized allocation. Remove the wasted first allocation. ~50% improvement on BER pack benchmarks.khasinski (Chris Hasiński)
When requiring a file like "benchmark/ips", the warning system would incorrectly warn about the "benchmark" gem not being a default gem, even when the user has "benchmark-ips" (a separate third-party gem) in their Gemfile. The fix check...khasinski (Chris Hasiński)
Applied in changeset commit:git|768862868472fb1800e556effb0e37be2fbaec52. ---------- Fix incorrect bundled gems warning for hyphenated gem names When requiring a file like "benchmark/ips", the warning system would incorrectly warn abou...khasinski (Chris Hasiński)