From: duerst@... Date: 2016-03-08T01:14:57+00:00 Subject: [ruby-core:74211] [Ruby trunk Bug#12147][Closed] Time::local returns incorrect ending of US DST Issue #12147 has been updated by Martin D��rst. Status changed from Open to Closed Ryan Mitchell wrote: > So this isn't a bug per se and I'm happy to have it closed. ---------------------------------------- Bug #12147: Time::local returns incorrect ending of US DST https://bugs.ruby-lang.org/issues/12147#change-57348 * Author: Ryan Mitchell * Status: Closed * Priority: Normal * Assignee: Akira Tanaka * ruby -v: ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin14] * Backport: 2.1: UNKNOWN, 2.2: UNKNOWN, 2.3: UNKNOWN ---------------------------------------- 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. -- https://bugs.ruby-lang.org/ Unsubscribe: