tzinfo / tzinfo-data

TZInfo::Data - Timezone Data for TZInfo
MIT License
124 stars 34 forks source link

Invalid DST timestamp for America/Santiago time zone. #22

Closed alexmichailichenko closed 2 years ago

alexmichailichenko commented 2 years ago

Versions 1.2022.1, 1.2022.2 and 1.2022.3 incorrectly determine the DST timestamp for the time zone America/Santiago. This affects 2022 and 2024 years. Gem defines the timestamp as the second Sunday in September, although the correct value is the first Sunday in September. Version 1.2021.5 does not give this error. I want to note that this works correctly for 2021, 2023, 2025, and also for the spring forward.

philr commented 2 years ago

Version 2022b of the IANA Time Zone Database included a change to delay the start of DST for Chile in 2022 from 4 September to 11 September:

tzinfo-data version 1.2022.2 includes that change.

With the currently latest version 2022c of the time zone database, zdump produces the following output for me for America/Santiago in 2022 (showing the transition to DST occurring at 2022-09-11 04:00 UTC):

America/Santiago  Sun Apr  3 02:59:59 2022 UT = Sat Apr  2 23:59:59 2022 -03 isdst=1 gmtoff=-10800
America/Santiago  Sun Apr  3 03:00:00 2022 UT = Sat Apr  2 23:00:00 2022 -04 isdst=0 gmtoff=-14400
America/Santiago  Sun Sep 11 03:59:59 2022 UT = Sat Sep 10 23:59:59 2022 -04 isdst=0 gmtoff=-14400
America/Santiago  Sun Sep 11 04:00:00 2022 UT = Sun Sep 11 01:00:00 2022 -03 isdst=1 gmtoff=-10800

tzinfo v2.0.5 with tzinfo-data v1.2022.3 gives the same time for the transition to DST:

TZInfo::Timezone.get('America/Santiago').period_for(Time.utc(2022,9,1)).end_transition.at.to_time
# => 2022-09-11 04:00:00 UTC

Since this matches the time zone database, I don't think this is a bug with tzinfo or tzinfo-data. If the IANA Time Zone Database is incorrect, please raise that on the tz mailing list.

alexmichailichenko commented 2 years ago

@philr thanks a lot!