[#122973] [PATCH] Add Gem.default_install — Felipe Contreras via ruby-core <ruby-core@...>
We need a way to enable user installs by default so that tools like
3 messages
2025/08/17
[ruby-core:123061] [Ruby Bug#19461] Time.local performance tanks in forked process (on macOS only?)
From:
"catlee (Chris AtLee) via ruby-core" <ruby-core@...>
Date:
2025-08-23 15:25:55 UTC
List:
ruby-core #123061
Issue #19461 has been updated by catlee (Chris AtLee).
I ran into this myself, and implemented a workaround here:
https://github.com/ruby/ruby/pull/13968
The idea is to cache our offset from GMT, and then use that in subsequent localtime calculations.
The cache is valid for every second within the same GMT minute.
----------------------------------------
Bug #19461: Time.local performance tanks in forked process (on macOS only?)
https://bugs.ruby-lang.org/issues/19461#change-114379
* Author: ioquatix (Samuel Williams)
* Status: Closed
* Backport: 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN
----------------------------------------
The following program demonstrates a performance regression in forked child processes when invoking `Time.local`:
```ruby
require 'benchmark'
require 'time'
def sir_local_alot
result = Benchmark.measure do
10_000.times do
tm = ::Time.local(2023)
end
end
$stderr.puts result
end
sir_local_alot
pid = fork do
sir_local_alot
end
Process.wait(pid)
```
On Linux the performance is similar, but on macOS, the performance is over 100x worse on my M1 laptop.
---Files--------------------------------
localtime_test.c (1.28 KB)
localtime_test.c (1.21 KB)
clipboard-202302251716-rh6ma.png (234 KB)
--
https://bugs.ruby-lang.org/
______________________________________________
ruby-core mailing list -- ruby-core@ml.ruby-lang.org
To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org
ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/