Project

General

Profile

Actions

Feature #13822

closed

Time.dst_changes(t=Time.now.year)

Added by opti (Andreas Opti) about 7 years ago. Updated almost 6 years ago.

Status:
Feedback
Assignee:
-
Target version:
-
[ruby-core:82405]

Description

output [time1,time2] of daysaving-changes of given year

I assume the result does not depend on timezone,
only the output will be in default timezone.

Updated by nobu (Nobuyoshi Nakada) about 7 years ago

  • Status changed from Open to Feedback

What are time1 and time2?
If time1 is the time when DST starts at and time2 is the time when it ends at, then time1 > time2` in the Southern Hemisphere?
And what will return in non-DST timezones?

Updated by naruse (Yui NARUSE) about 7 years ago

Usually Ruby itself doesn't have such information by itself.
It just calls localtime(3).

If you want to have information related timezone database, you should use tzinfo.gem.
https://rubygems.org/gems/tzinfo

Updated by kronikus (ANDREY KIM) almost 6 years ago

  • Tracker changed from Feature to Bug
  • Subject changed from Time.dst_changes(t=Time.now.year) to Time.dst?
  • ruby -v set to ruby 2.4.3p205 (2017-12-14 revision 61247) [x86_64-linux]
  • Backport set to 2.4: UNKNOWN, 2.5: UNKNOWN

Is it bug or feature?
Receiving same result for Time.dst? method.
I belive it suppose to base it response on date in variable, correct me if i'm wrong.
Receiving it in Rails 5.1.2, but Time class is in ruby core

gems tzinfo, tzinfo-data are in Gemfile

Time zone configured in rails config:
2.4.3 :001 > Time.zone
=> #<ActiveSupport::TimeZone:0x000055ac84e61410 @name="Eastern Time (US & Canada)", @utc_offset=nil, @tzinfo=#<TZInfo::DataTimezone: America/New_York>>

2.4.3 :013 > t
=> 2018-12-12 10:00:00 -0500
2.4.3 :014 > a
=> 2018-08-01 10:00:00 -0500
2.4.3 :015 > t.dst?
=> false
2.4.3 :016 > a.dst?
=> false
2.4.3 :017 > t.isdst
=> false
2.4.3 :018 > a.isdst
=> false

Updated by shyouhei (Shyouhei Urabe) almost 6 years ago

  • Tracker changed from Bug to Feature
  • Subject changed from Time.dst? to Time.dst_changes(t=Time.now.year)
  • ruby -v deleted (ruby 2.4.3p205 (2017-12-14 revision 61247) [x86_64-linux])
  • Backport deleted (2.4: UNKNOWN, 2.5: UNKNOWN)

Be advised: Please do not reuse existing tickets to report something completely different.

Also be advised: please do understand that this is not where ActiveSupport::TimeZone issue should be reported.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0