Bug #19292
closedTime object's wday, yday, and isdst returns broken value (and so does to_a) when kwarg in: 'UTC' was given
Description
$ ruby -e "p Time.new(2023, 1, 1, 0, 0, 0, in: 'UTC').wday"
7
$ ruby -e "p Time.new(2023, 1, 1, 0, 0, 0, in: 'UTC').yday"
0
$ ruby -e "p Time.new(2023, 1, 1, 0, 0, 0, in: 'UTC').isdst"
-e:1:in isdst': isdst is not set yet (RuntimeError) from -e:1:in
'
$ ruby -e "p Time.new(2023, 1, 1, 0, 0, 0, in: 'UTC').to_a"
[0, 0, 0, 1, 1, 2023, 7, 0, true, "UTC"]
where the expected to_a
value should be:
[0, 0, 0, 1, 1, 2023, 0, 1, false, "UTC"]
This bug seems to be happening on the following conditions:
- On any given date and time, regardless of past or future
- Either on
Time.new(Integer, Integer, ...)
style orTime.new(String)
style - Only when
in: 'UTC'
kwarg was given. Other formats likein: '+0000'
orin: 0
seems to be OK - On all Ruby versions that accept kwarg
in:
(3.1, 3.2, and 3.3)
Updated by nobu (Nobuyoshi Nakada) almost 2 years ago
- Backport changed from 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN to 2.7: DONTNEED, 3.0: DONTNEED, 3.1: UNKNOWN, 3.2: REQUIRED
Updated by nobu (Nobuyoshi Nakada) almost 2 years ago
Updated by nobu (Nobuyoshi Nakada) almost 2 years ago
- Backport changed from 2.7: DONTNEED, 3.0: DONTNEED, 3.1: UNKNOWN, 3.2: REQUIRED to 2.7: DONTNEED, 3.0: DONTNEED, 3.1: REQUIRED, 3.2: REQUIRED
Updated by nobu (Nobuyoshi Nakada) almost 2 years ago
- Status changed from Open to Closed
Applied in changeset git|542e984d82fa25098eb15398d716d907acc52b93.
[Bug #19292] Re-initialize tm when wday or yday is not set
Updated by matsuda (Akira Matsuda) almost 2 years ago
Confirmed the fix. Thank you, @nobu (Nobuyoshi Nakada)!
Updated by nobu (Nobuyoshi Nakada) almost 2 years ago
- Has duplicate Bug #19295: Time#wday returns 7 added
Updated by nobu (Nobuyoshi Nakada) almost 2 years ago
- Backport changed from 2.7: DONTNEED, 3.0: DONTNEED, 3.1: REQUIRED, 3.2: REQUIRED to 2.7: REQUIRED, 3.0: REQUIRED, 3.1: REQUIRED, 3.2: REQUIRED
Updated by naruse (Yui NARUSE) almost 2 years ago
- Backport changed from 2.7: REQUIRED, 3.0: REQUIRED, 3.1: REQUIRED, 3.2: REQUIRED to 2.7: REQUIRED, 3.0: REQUIRED, 3.1: REQUIRED, 3.2: DONE
ruby_3_2 89cd61890fe78e0491708f87a5df678b03fda8a3 merged revision(s) 542e984d82fa25098eb15398d716d907acc52b93.
Updated by nagachika (Tomoyuki Chikanaga) almost 2 years ago
- Backport changed from 2.7: REQUIRED, 3.0: REQUIRED, 3.1: REQUIRED, 3.2: DONE to 2.7: REQUIRED, 3.0: REQUIRED, 3.1: DONE, 3.2: DONE
ruby_3_1 3efc43aace4e051f618b10e82bd82e93076dc757 merged revision(s) 542e984d82fa25098eb15398d716d907acc52b93.