Actions
Bug #12147
closedTime::local returns incorrect ending of US DST
Description
In 2016, US Daylight Saving Time ends at 2:00 AM on November 6. In the America/Los_Angeles timezone, this means going from an offset from UTC of -0700 to an offset of -0800. So 1:00 AM on that date is still in DST, with an offset from UTC of -0700. But Time::local begins returning the new offset at 1:00 AM instead of 2:00 AM. The offset of times at midnight and at 2:00 AM are returned correctly:
2.3.0 :020 > Time.local(2016, 11, 6, 0)
=> 2016-11-06 00:00:00 -0700
2.3.0 :021 > Time.local(2016, 11, 6, 1)
=> 2016-11-06 01:00:00 -0800
2.3.0 :022 > Time.local(2016, 11, 6, 2)
=> 2016-11-06 02:00:00 -0800
This behaves correctly in Ruby 2.2.0 and it looks possibly related to https://bugs.ruby-lang.org/issues/10698.
Actions
Like0
Like0Like0Like0Like0