tzinfo 1.2.9 → 2.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +1 -3
- data.tar.gz.sig +0 -0
- data/.yardopts +3 -0
- data/CHANGES.md +535 -386
- data/LICENSE +12 -12
- data/README.md +368 -114
- data/lib/tzinfo.rb +70 -40
- data/lib/tzinfo/annual_rules.rb +32 -12
- data/lib/tzinfo/country.rb +141 -129
- data/lib/tzinfo/country_timezone.rb +70 -112
- data/lib/tzinfo/data_source.rb +389 -144
- data/lib/tzinfo/data_sources.rb +8 -0
- data/lib/tzinfo/data_sources/constant_offset_data_timezone_info.rb +56 -0
- data/lib/tzinfo/data_sources/country_info.rb +42 -0
- data/lib/tzinfo/data_sources/data_timezone_info.rb +91 -0
- data/lib/tzinfo/data_sources/linked_timezone_info.rb +33 -0
- data/lib/tzinfo/data_sources/posix_time_zone_parser.rb +181 -0
- data/lib/tzinfo/data_sources/ruby_data_source.rb +145 -0
- data/lib/tzinfo/data_sources/timezone_info.rb +47 -0
- data/lib/tzinfo/data_sources/transitions_data_timezone_info.rb +214 -0
- data/lib/tzinfo/data_sources/zoneinfo_data_source.rb +580 -0
- data/lib/tzinfo/data_sources/zoneinfo_reader.rb +486 -0
- data/lib/tzinfo/data_timezone.rb +33 -47
- data/lib/tzinfo/datetime_with_offset.rb +153 -0
- data/lib/tzinfo/format1.rb +10 -0
- data/lib/tzinfo/format1/country_definer.rb +17 -0
- data/lib/tzinfo/format1/country_index_definition.rb +64 -0
- data/lib/tzinfo/format1/timezone_definer.rb +64 -0
- data/lib/tzinfo/format1/timezone_definition.rb +39 -0
- data/lib/tzinfo/format1/timezone_index_definition.rb +77 -0
- data/lib/tzinfo/format2.rb +10 -0
- data/lib/tzinfo/format2/country_definer.rb +68 -0
- data/lib/tzinfo/format2/country_index_definer.rb +68 -0
- data/lib/tzinfo/format2/country_index_definition.rb +46 -0
- data/lib/tzinfo/format2/timezone_definer.rb +94 -0
- data/lib/tzinfo/format2/timezone_definition.rb +73 -0
- data/lib/tzinfo/format2/timezone_index_definer.rb +45 -0
- data/lib/tzinfo/format2/timezone_index_definition.rb +55 -0
- data/lib/tzinfo/info_timezone.rb +26 -21
- data/lib/tzinfo/linked_timezone.rb +33 -52
- data/lib/tzinfo/offset_timezone_period.rb +42 -0
- data/lib/tzinfo/string_deduper.rb +118 -0
- data/lib/tzinfo/time_with_offset.rb +154 -0
- data/lib/tzinfo/timestamp.rb +548 -0
- data/lib/tzinfo/timestamp_with_offset.rb +85 -0
- data/lib/tzinfo/timezone.rb +989 -502
- data/lib/tzinfo/timezone_offset.rb +84 -74
- data/lib/tzinfo/timezone_period.rb +151 -217
- data/lib/tzinfo/timezone_proxy.rb +70 -79
- data/lib/tzinfo/timezone_transition.rb +77 -109
- data/lib/tzinfo/transition_rule.rb +207 -77
- data/lib/tzinfo/transitions_timezone_period.rb +63 -0
- data/lib/tzinfo/untaint_ext.rb +18 -0
- data/lib/tzinfo/version.rb +7 -0
- data/lib/tzinfo/with_offset.rb +61 -0
- metadata +49 -103
- metadata.gz.sig +0 -0
- data/Rakefile +0 -107
- data/lib/tzinfo/country_index_definition.rb +0 -31
- data/lib/tzinfo/country_info.rb +0 -42
- data/lib/tzinfo/data_timezone_info.rb +0 -55
- data/lib/tzinfo/linked_timezone_info.rb +0 -26
- data/lib/tzinfo/offset_rationals.rb +0 -77
- data/lib/tzinfo/posix_time_zone_parser.rb +0 -136
- data/lib/tzinfo/ruby_core_support.rb +0 -169
- data/lib/tzinfo/ruby_country_info.rb +0 -74
- data/lib/tzinfo/ruby_data_source.rb +0 -140
- data/lib/tzinfo/time_or_datetime.rb +0 -351
- data/lib/tzinfo/timezone_definition.rb +0 -36
- data/lib/tzinfo/timezone_index_definition.rb +0 -54
- data/lib/tzinfo/timezone_info.rb +0 -30
- data/lib/tzinfo/timezone_transition_definition.rb +0 -104
- data/lib/tzinfo/transition_data_timezone_info.rb +0 -274
- data/lib/tzinfo/zoneinfo_country_info.rb +0 -37
- data/lib/tzinfo/zoneinfo_data_source.rb +0 -497
- data/lib/tzinfo/zoneinfo_timezone_info.rb +0 -520
- data/test/tc_annual_rules.rb +0 -95
- data/test/tc_country.rb +0 -238
- data/test/tc_country_index_definition.rb +0 -69
- data/test/tc_country_info.rb +0 -16
- data/test/tc_country_timezone.rb +0 -173
- data/test/tc_data_source.rb +0 -218
- data/test/tc_data_timezone.rb +0 -99
- data/test/tc_data_timezone_info.rb +0 -18
- data/test/tc_info_timezone.rb +0 -34
- data/test/tc_linked_timezone.rb +0 -155
- data/test/tc_linked_timezone_info.rb +0 -23
- data/test/tc_offset_rationals.rb +0 -23
- data/test/tc_posix_time_zone_parser.rb +0 -261
- data/test/tc_ruby_core_support.rb +0 -168
- data/test/tc_ruby_country_info.rb +0 -110
- data/test/tc_ruby_data_source.rb +0 -167
- data/test/tc_time_or_datetime.rb +0 -674
- data/test/tc_timezone.rb +0 -1361
- data/test/tc_timezone_definition.rb +0 -113
- data/test/tc_timezone_index_definition.rb +0 -73
- data/test/tc_timezone_info.rb +0 -11
- data/test/tc_timezone_london.rb +0 -143
- data/test/tc_timezone_melbourne.rb +0 -142
- data/test/tc_timezone_new_york.rb +0 -142
- data/test/tc_timezone_offset.rb +0 -126
- data/test/tc_timezone_period.rb +0 -555
- data/test/tc_timezone_proxy.rb +0 -136
- data/test/tc_timezone_transition.rb +0 -366
- data/test/tc_timezone_transition_definition.rb +0 -295
- data/test/tc_timezone_utc.rb +0 -27
- data/test/tc_transition_data_timezone_info.rb +0 -433
- data/test/tc_transition_rule.rb +0 -663
- data/test/tc_zoneinfo_country_info.rb +0 -78
- data/test/tc_zoneinfo_data_source.rb +0 -1204
- data/test/tc_zoneinfo_timezone_info.rb +0 -2153
- data/test/test_utils.rb +0 -192
- data/test/ts_all.rb +0 -7
- data/test/ts_all_ruby.rb +0 -5
- data/test/ts_all_zoneinfo.rb +0 -9
- data/test/tzinfo-data/tzinfo/data.rb +0 -8
- data/test/tzinfo-data/tzinfo/data/definitions/America/Argentina/Buenos_Aires.rb +0 -89
- data/test/tzinfo-data/tzinfo/data/definitions/America/New_York.rb +0 -327
- data/test/tzinfo-data/tzinfo/data/definitions/Australia/Melbourne.rb +0 -230
- data/test/tzinfo-data/tzinfo/data/definitions/EST.rb +0 -19
- data/test/tzinfo-data/tzinfo/data/definitions/Etc/GMT__m__1.rb +0 -21
- data/test/tzinfo-data/tzinfo/data/definitions/Etc/GMT__p__1.rb +0 -21
- data/test/tzinfo-data/tzinfo/data/definitions/Etc/UTC.rb +0 -21
- data/test/tzinfo-data/tzinfo/data/definitions/Europe/Amsterdam.rb +0 -273
- data/test/tzinfo-data/tzinfo/data/definitions/Europe/Andorra.rb +0 -198
- data/test/tzinfo-data/tzinfo/data/definitions/Europe/London.rb +0 -333
- data/test/tzinfo-data/tzinfo/data/definitions/Europe/Paris.rb +0 -277
- data/test/tzinfo-data/tzinfo/data/definitions/Europe/Prague.rb +0 -235
- data/test/tzinfo-data/tzinfo/data/definitions/UTC.rb +0 -16
- data/test/tzinfo-data/tzinfo/data/indexes/countries.rb +0 -940
- data/test/tzinfo-data/tzinfo/data/indexes/timezones.rb +0 -609
- data/test/tzinfo-data/tzinfo/data/version.rb +0 -20
- data/test/zoneinfo/America/Argentina/Buenos_Aires +0 -0
- data/test/zoneinfo/America/New_York +0 -0
- data/test/zoneinfo/Australia/Melbourne +0 -0
- data/test/zoneinfo/EST +0 -0
- data/test/zoneinfo/Etc/UTC +0 -0
- data/test/zoneinfo/Europe/Amsterdam +0 -0
- data/test/zoneinfo/Europe/Andorra +0 -0
- data/test/zoneinfo/Europe/London +0 -0
- data/test/zoneinfo/Europe/Paris +0 -0
- data/test/zoneinfo/Europe/Prague +0 -0
- data/test/zoneinfo/Factory +0 -0
- data/test/zoneinfo/iso3166.tab +0 -274
- data/test/zoneinfo/leapseconds +0 -78
- data/test/zoneinfo/posix/Europe/London +0 -0
- data/test/zoneinfo/posixrules +0 -0
- data/test/zoneinfo/right/Europe/London +0 -0
- data/test/zoneinfo/zone.tab +0 -452
- data/test/zoneinfo/zone1970.tab +0 -384
- data/tzinfo.gemspec +0 -21
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 7546cb5c3ebb595feafce0630fc925d58abba65b66bbd72f2f84e9a67128b7f1
|
|
4
|
+
data.tar.gz: 11a8bacf90d980fb3e278f95cf6090d9dc54da7dacaaed4e4c59f30bdbcc8b8e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 40bc69496e52eff6e8790e3c03ba3df3c6915daec5ea182d630cfe820bd5e52b83bde35b21240e1482460e8bc3176c75782374376a96ce7e7cd27d4c0aa62c6c
|
|
7
|
+
data.tar.gz: e3b19c05c5d47e648f6986092e8acca5fe5a3f95420287ab06b5c68dfefa8993b2996767323cf212e705b0cbe20062cfdf98fcfdd9120219075e9a01dab16d60
|
checksums.yaml.gz.sig
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
|
|
2
|
-
4�ِ�qjJ�i> f쉾�|���u�#��՞�I�O0G4�&|���b�o�
|
|
3
|
-
A���f���X}�`o��n;>J�iHx�@?���po���CC
|
|
1
|
+
"�/ޗS��{����2Eq&[����ABE/���V%:[ʏ%D_������ �q����!]��O�6�*��P�1j}�b���5$0��Ξc�1 ��f�vU����d�=(����AG���NȖ�����J4�W{���D��l1�m�N��������?$,�=r��F��Ř�29��$ǒ�'(��u*~��2}^a<g��y>�e�������ۆW�}w�\wy��=�}`~���%��4*�2r���oo.D��+O�
|
data.tar.gz.sig
CHANGED
|
Binary file
|
data/.yardopts
CHANGED
data/CHANGES.md
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
# Changes
|
|
2
|
+
|
|
3
|
+
## Version 2.0.4 - 16-Dec-2020
|
|
3
4
|
|
|
4
5
|
* Fixed an incorrect InvalidTimezoneIdentifier exception raised when loading a
|
|
5
6
|
zoneinfo file that includes rules specifying an additional transition to the
|
|
@@ -7,8 +8,189 @@ Version 1.2.9 - 16-Dec-2020
|
|
|
7
8
|
Time Zone Database). #123.
|
|
8
9
|
|
|
9
10
|
|
|
10
|
-
Version
|
|
11
|
-
|
|
11
|
+
## Version 2.0.3 - 8-Nov-2020
|
|
12
|
+
|
|
13
|
+
* Added support for handling "slim" format zoneinfo files that are produced by
|
|
14
|
+
default by zic version 2020b and later. The POSIX-style TZ string is now used
|
|
15
|
+
calculate DST transition times after the final defined transition in the file.
|
|
16
|
+
#120.
|
|
17
|
+
* Fixed `TimeWithOffset#getlocal` returning a `TimeWithOffset` with the
|
|
18
|
+
`timezone_offset` still assigned when called with an offset argument on JRuby
|
|
19
|
+
9.3.
|
|
20
|
+
* Rubinius is no longer supported.
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
## Version 2.0.2 - 2-Apr-2020
|
|
24
|
+
|
|
25
|
+
* Fixed 'wrong number of arguments' errors when running on JRuby 9.0. #114.
|
|
26
|
+
* Fixed warnings when running on Ruby 2.8. #113.
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
## Version 2.0.1 - 24-Dec-2019
|
|
30
|
+
|
|
31
|
+
* Fixed "SecurityError: Insecure operation - require" exceptions when loading
|
|
32
|
+
data with recent Ruby releases in safe mode. #100.
|
|
33
|
+
* Fixed warnings when running on Ruby 2.7. #109.
|
|
34
|
+
* Added a `TZInfo::Timezone#=~` method that performs a regex match on the time
|
|
35
|
+
zone identifier. #99.
|
|
36
|
+
* Added a `TZInfo::Country#=~` method that performs a regex match on the country
|
|
37
|
+
code.
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
## Version 2.0.0 - 26-Dec-2018
|
|
41
|
+
|
|
42
|
+
### Added
|
|
43
|
+
|
|
44
|
+
* `to_local` and `period_for` instance methods have been added to
|
|
45
|
+
`TZInfo::Timezone`. These are similar to `utc_to_local` and `period_for_utc`,
|
|
46
|
+
but take the UTC offset of the given time into account.
|
|
47
|
+
* `abbreviation`, `dst?`, `base_utc_offset` and `observed_utc_offset` instance
|
|
48
|
+
methods have been added to `TZInfo::Timezone`, returning the abbreviation,
|
|
49
|
+
whether daylight savings time is in effect and the UTC offset of the time zone
|
|
50
|
+
at a specified time.
|
|
51
|
+
* A `TZInfo::Timestamp` class has been added. It can be used with
|
|
52
|
+
`TZInfo::Timezone` in place of a `Time` or `DateTime`.
|
|
53
|
+
* `local_time`, `local_datetime` and `local_timestamp` instance methods have
|
|
54
|
+
been added to `TZInfo::Timezone`. These methods construct local `Time`,
|
|
55
|
+
`DateTime` and `TZInfo::Timestamp` instances with the correct UTC offset and
|
|
56
|
+
abbreviation for the time zone.
|
|
57
|
+
* Support for a (yet to be released) version 2 of tzinfo-data has been added, in
|
|
58
|
+
addition to support for version 1. The new version will remove the (no longer
|
|
59
|
+
needed) `DateTime` parameters from transition times, reduce memory consumption
|
|
60
|
+
and improve the efficiency of loading timezone and country indexes.
|
|
61
|
+
* A `TZInfo::VERSION` constant has been added, indicating the TZInfo version
|
|
62
|
+
number.
|
|
63
|
+
|
|
64
|
+
### Changed
|
|
65
|
+
|
|
66
|
+
* The minimum supported Ruby versions are now Ruby MRI 1.9.3, JRuby 1.7 (in 1.9
|
|
67
|
+
or later mode) and Rubinius 3.
|
|
68
|
+
* Local times are now returned using the correct UTC offset (instead of using
|
|
69
|
+
UTC). #49 and #52.
|
|
70
|
+
* Local times are returned as instances of `TimeWithOffset`,
|
|
71
|
+
`DateTimeWithOffset` or `TZInfo::TimestampWithOffset`. These classes subclass
|
|
72
|
+
`Time`, `DateTime` and `TZInfo::Timestamp` respectively. They override the
|
|
73
|
+
default behaviour of the base classes to return information about the observed
|
|
74
|
+
offset at the indicated time. For example, the zone abbreviation is returned
|
|
75
|
+
when using the `%Z` directive with `strftime`.
|
|
76
|
+
* The `transitions_up_to`, `offsets_up_to` and `strftime` instance methods of
|
|
77
|
+
`TZInfo::Timezone` now take the UTC offsets of given times into account
|
|
78
|
+
(instead of ignoring them as was previously the case).
|
|
79
|
+
* The `TZInfo::TimezonePeriod` class has been split into two subclasses:
|
|
80
|
+
`TZInfo::OffsetTimezonePeriod` and `TZInfo::TransitionsTimezonePeriod`.
|
|
81
|
+
`TZInfo::OffsetTimezonePeriod` is returned for time zones that only have a
|
|
82
|
+
single offset. `TZInfo::TransitionsTimezonePeriod` is returned for periods
|
|
83
|
+
that start or end with a transition.
|
|
84
|
+
* `TZInfo::TimezoneOffset#abbreviation`, `TZInfo::TimezonePeriod#abbreviation`
|
|
85
|
+
and `TZInfo::TimezonePeriod#zone_identifier` now return frozen `String`
|
|
86
|
+
instances instead of instances of `Symbol`.
|
|
87
|
+
* The `utc_offset` and `utc_total_offset` attributes of `TZInfo::TimezonePeriod`
|
|
88
|
+
and `TZInfo::TimezoneOffset` have been renamed `base_utc_offset` and
|
|
89
|
+
`observed_utc_offset` respectively. The former names have been retained as
|
|
90
|
+
aliases.
|
|
91
|
+
* `TZInfo::Timezone.get`, `TZInfo::Timezone.get_proxy` and `TZInfo::Country.get`
|
|
92
|
+
can now be used with strings having any encoding. Previously, only encodings
|
|
93
|
+
that are directly comparable with UTF-8 were supported.
|
|
94
|
+
* The requested identifier is included in `TZInfo::InvalidTimezoneIdentifier`
|
|
95
|
+
exception messages.
|
|
96
|
+
* The requested country code is included in `TZInfo::InvalidCountryCode`
|
|
97
|
+
exception messages.
|
|
98
|
+
* The full range of transitions is now loaded from zoneinfo files. Zoneinfo
|
|
99
|
+
files produced with version 2014c of the `zic` tool contain an initial
|
|
100
|
+
transition `2**63` seconds before the epoch. Zoneinfo files produced with
|
|
101
|
+
version 2014d or later of `zic` contain an initial transition `2**59` seconds
|
|
102
|
+
before the epoch. These transitions would previously have been ignored, but
|
|
103
|
+
are now returned in methods such as `TZInfo::Timezone#transitions_up_to`.
|
|
104
|
+
* The `TZInfo::RubyDataSource` and `TZInfo::ZoneinfoDataSource` classes have
|
|
105
|
+
been moved into a new `TZInfo::DataSources` module. Code that is setting
|
|
106
|
+
`TZInfo::ZoneinfoDataSource.search_path` or
|
|
107
|
+
`TZInfo::ZoneinfoDataSource.alternate_iso3166_tab_search_path` will need to be
|
|
108
|
+
updated accordingly.
|
|
109
|
+
* The `TZInfo::InvalidZoneinfoDirectory` and `TZInfo::ZoneinfoDirectoryNotFound`
|
|
110
|
+
exception classes raised by `TZInfo::DataSources::ZoneinfoDataSource` have
|
|
111
|
+
been moved into the `TZInfo::DataSources` module.
|
|
112
|
+
* Setting the data source to `:ruby` or instantiating
|
|
113
|
+
`TZInfo::DataSources::RubyDataSource` will now immediately raise a
|
|
114
|
+
`TZInfo::DataSources::TZInfoDataNotFound` exception if `require 'tzinfo/data'`
|
|
115
|
+
fails. Previously, a failure would only occur later when accessing an index or
|
|
116
|
+
loading a timezone or country.
|
|
117
|
+
* The `DEFAULT_SEARCH_PATH` and `DEFAULT_ALTERNATE_ISO3166_TAB_SEARCH_PATH`
|
|
118
|
+
constants of `TZInfo::DataSources::ZoneinfoDataSource` have been made private.
|
|
119
|
+
* The `TZInfo::Country.data_source`,
|
|
120
|
+
`TZInfo::DataSource.create_default_data_source`,
|
|
121
|
+
`TZInfo::DataSources::ZoneinfoDataSource.process_search_path`,
|
|
122
|
+
`TZInfo::Timezone.get_proxies` and `TZInfo::Timezone.data_source` methods have
|
|
123
|
+
been made private.
|
|
124
|
+
* The performance of loading zoneinfo files and the associated indexes has been
|
|
125
|
+
improved.
|
|
126
|
+
* Memory use has been decreased by deduplicating `String` instances when loading
|
|
127
|
+
country and time zone data.
|
|
128
|
+
* The dependency on the deprecated thread_safe gem as been removed and replaced
|
|
129
|
+
by concurrent-ruby.
|
|
130
|
+
* The Info classes used to return time zone and country information from
|
|
131
|
+
`TZInfo::DataSource` implementations have been moved into the
|
|
132
|
+
`TZInfo::DataSources` module.
|
|
133
|
+
* The `TZInfo::TransitionDataTimezoneInfo` class has been removed and replaced
|
|
134
|
+
with `TZInfo::DataSources::TransitionsDataTimezoneInfo` and
|
|
135
|
+
`TZInfo::DataSources::ConstantOffsetDataTimezoneInfo`.
|
|
136
|
+
`TZInfo::DataSources::TransitionsDataTimezoneInfo` is constructed with an
|
|
137
|
+
`Array` of `TZInfo::TimezoneTransition` instances representing times when the
|
|
138
|
+
offset changes. `TZInfo::DataSources::ConstantOffsetDataTimezoneInfo` is
|
|
139
|
+
constructed with a `TZInfo::TimezoneOffset` instance representing the offset
|
|
140
|
+
constantly observed in a time zone.
|
|
141
|
+
* The `TZInfo::DataSource#timezone_identifiers` method should no longer be
|
|
142
|
+
overridden in custom data source implementations. The implementation in the
|
|
143
|
+
base class now calculates a result from
|
|
144
|
+
`TZInfo::DataSource#data_timezone_identifiers` and
|
|
145
|
+
`TZInfo::DataSource#linked_timezone_identifiers`.
|
|
146
|
+
* The results of the `TZInfo::DataSources::RubyDataSource` `to_s` and `inspect`
|
|
147
|
+
methods now include the time zone database and tzinfo-data versions.
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
### Removed
|
|
151
|
+
|
|
152
|
+
* Methods of `TZInfo::Timezone` that accept time arguments no longer allow
|
|
153
|
+
`Integer` timestamp values. `Time`, `DateTime` or `TZInfo::Timestamp` values
|
|
154
|
+
or objects that respond to `to_i`, `subsec` and optionally `utc_offset` must
|
|
155
|
+
be used instead.
|
|
156
|
+
* The `%:::z` format directive can now only be used with
|
|
157
|
+
`TZInfo::Timezone#strftime` if it is supported by `Time#strftime` on the
|
|
158
|
+
runtime platform.
|
|
159
|
+
* Using `TZInfo::Timezone.new(identifier)` and `TZInfo::Country.new(code)` to
|
|
160
|
+
obtain a specific `TZInfo::Timezone` or `TZInfo::Country` will no longer work.
|
|
161
|
+
`TZInfo::Timezone.get(identifier)` and `TZInfo::Country.get(code)` should be
|
|
162
|
+
used instead.
|
|
163
|
+
* The `TZInfo::TimeOrDateTime` class has been removed.
|
|
164
|
+
* The `valid_for_utc?`, `utc_after_start?`, `utc_before_end?`,
|
|
165
|
+
`valid_for_local?`, `local_after_start?` and `local_before_end?` instance
|
|
166
|
+
methods of `TZInfo::TimezonePeriod` have been removed. Comparisons can be
|
|
167
|
+
performed with the results of the `starts_at`, `ends_at`, `local_starts_at`
|
|
168
|
+
and `local_ends_at` methods instead.
|
|
169
|
+
* The `to_local` and `to_utc` instance methods of `TZInfo::TimezonePeriod` and
|
|
170
|
+
`TZInfo::TimezoneOffset` have been removed. Conversions should be performed
|
|
171
|
+
using the `TZInfo::Timezone` class instead.
|
|
172
|
+
* The `TZInfo::TimezonePeriod#utc_total_offset_rational` method has been
|
|
173
|
+
removed. Equivalent information can be obtained using the
|
|
174
|
+
`TZInfo::TimezonePeriod#observed_utc_offset` method.
|
|
175
|
+
* The `datetime`, `time`, `local_end`, `local_end_time`, `local_start` and
|
|
176
|
+
`local_start_time` instance methods of `TZInfo::TimezoneTransition` have been
|
|
177
|
+
removed. The `at`, `local_end_at` and `local_start_at` methods should be used
|
|
178
|
+
instead and the result (a `TZInfo::TimestampWithOffset`) converted to either a
|
|
179
|
+
`DateTime` or `Time` by calling `to_datetime` or `to_time` on the result.
|
|
180
|
+
* The `us_zones` and `us_zone_identifiers` class methods of `TZInfo::Timezone`
|
|
181
|
+
have been removed. `TZInfo::Country.get('US').zones` and
|
|
182
|
+
`TZInfo::Country.get('US').zone_identifiers` should be used instead.
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
## Version 1.2.9 - 16-Dec-2020
|
|
186
|
+
|
|
187
|
+
* Fixed an incorrect InvalidTimezoneIdentifier exception raised when loading a
|
|
188
|
+
zoneinfo file that includes rules specifying an additional transition to the
|
|
189
|
+
final defined offset (for example, Africa/Casablanca in version 2018e of the
|
|
190
|
+
Time Zone Database). #123.
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
## Version 1.2.8 - 8-Nov-2020
|
|
12
194
|
|
|
13
195
|
* Added support for handling "slim" format zoneinfo files that are produced by
|
|
14
196
|
default by zic version 2020b and later. The POSIX-style TZ string is now used
|
|
@@ -18,74 +200,68 @@ Version 1.2.8 - 8-Nov-2020
|
|
|
18
200
|
* Rubinius is no longer supported.
|
|
19
201
|
|
|
20
202
|
|
|
21
|
-
Version 1.2.7 - 2-Apr-2020
|
|
22
|
-
--------------------------
|
|
203
|
+
## Version 1.2.7 - 2-Apr-2020
|
|
23
204
|
|
|
24
205
|
* Fixed 'wrong number of arguments' errors when running on JRuby 9.0. #114.
|
|
25
206
|
* Fixed warnings when running on Ruby 2.8. #112.
|
|
26
207
|
|
|
27
208
|
|
|
28
|
-
Version 1.2.6 - 24-Dec-2019
|
|
29
|
-
---------------------------
|
|
209
|
+
## Version 1.2.6 - 24-Dec-2019
|
|
30
210
|
|
|
31
|
-
* Timezone#strftime('%s', time) will now return the correct number of seconds
|
|
211
|
+
* `Timezone#strftime('%s', time)` will now return the correct number of seconds
|
|
32
212
|
since the epoch. #91.
|
|
33
|
-
* Removed the unused TZInfo::RubyDataSource::REQUIRE_PATH constant.
|
|
213
|
+
* Removed the unused `TZInfo::RubyDataSource::REQUIRE_PATH` constant.
|
|
34
214
|
* Fixed "SecurityError: Insecure operation - require" exceptions when loading
|
|
35
215
|
data with recent Ruby releases in safe mode.
|
|
36
216
|
* Fixed warnings when running on Ruby 2.7. #106 and #111.
|
|
37
217
|
|
|
38
218
|
|
|
39
|
-
Version 1.2.5 - 4-Feb-2018
|
|
40
|
-
--------------------------
|
|
219
|
+
## Version 1.2.5 - 4-Feb-2018
|
|
41
220
|
|
|
42
|
-
* Support recursively (deep) freezing Country and Timezone instances. #80.
|
|
221
|
+
* Support recursively (deep) freezing `Country` and `Timezone` instances. #80.
|
|
43
222
|
* Allow negative daylight savings time offsets to be derived when reading from
|
|
44
223
|
zoneinfo files. The utc_offset and std_offset are now derived correctly for
|
|
45
224
|
Europe/Dublin in the 2018a and 2018b releases of the Time Zone Database.
|
|
46
225
|
|
|
47
226
|
|
|
48
|
-
Version 1.2.4 - 26-Oct-2017
|
|
49
|
-
---------------------------
|
|
227
|
+
## Version 1.2.4 - 26-Oct-2017
|
|
50
228
|
|
|
51
229
|
* Ignore the leapseconds file that is included in zoneinfo directories installed
|
|
52
230
|
with version 2017c and later of the Time Zone Database.
|
|
53
231
|
|
|
54
232
|
|
|
55
|
-
Version 1.2.3 - 25-Mar-2017
|
|
56
|
-
---------------------------
|
|
233
|
+
## Version 1.2.3 - 25-Mar-2017
|
|
57
234
|
|
|
58
|
-
* Reduce the number of String objects allocated when loading zoneinfo files.
|
|
235
|
+
* Reduce the number of `String` objects allocated when loading zoneinfo files.
|
|
59
236
|
#54.
|
|
60
|
-
* Make Timezone#friendly_identifier compatible with frozen string literals.
|
|
61
|
-
* Improve the algorithm for deriving the utc_offset from zoneinfo files. This
|
|
237
|
+
* Make `Timezone#friendly_identifier` compatible with frozen string literals.
|
|
238
|
+
* Improve the algorithm for deriving the `utc_offset` from zoneinfo files. This
|
|
62
239
|
now correctly handles Pacific/Apia switching from one side of the
|
|
63
240
|
International Date Line to the other whilst observing daylight savings time.
|
|
64
241
|
#66.
|
|
65
|
-
* Fix an UnknownTimezone exception when calling transitions_up_to or
|
|
66
|
-
offsets_up_to on a TimezoneProxy instance obtained from
|
|
242
|
+
* Fix an `UnknownTimezone` exception when calling transitions_up_to or
|
|
243
|
+
offsets_up_to on a `TimezoneProxy` instance obtained from
|
|
244
|
+
`Timezone.get_proxy`.
|
|
67
245
|
* Allow the Factory zone to be obtained from the Zoneinfo data source.
|
|
68
246
|
* Ignore the /usr/share/zoneinfo/timeconfig symlink included in Slackware
|
|
69
247
|
distributions. #64.
|
|
70
|
-
* Fix Timezone#strftime handling of
|
|
71
|
-
than one percent. #31.
|
|
72
|
-
* Support expansion of
|
|
73
|
-
zone in Timezone#strftime
|
|
248
|
+
* Fix `Timezone#strftime` handling of `%Z` expansion when `%Z` is prefixed with
|
|
249
|
+
more than one percent. #31.
|
|
250
|
+
* Support expansion of `%z`, `%:z`, `%::z` and `%:::z` to the UTC offset of the
|
|
251
|
+
time zone in `Timezone#strftime`. #31 and #67.
|
|
74
252
|
|
|
75
253
|
|
|
76
|
-
Version 1.2.2 - 8-Aug-2014
|
|
77
|
-
--------------------------
|
|
254
|
+
## Version 1.2.2 - 8-Aug-2014
|
|
78
255
|
|
|
79
|
-
* Fix an error with duplicates being returned by Timezone#all_country_zones
|
|
80
|
-
and Timezone#all_country_zone_identifiers when used with tzinfo-data
|
|
256
|
+
* Fix an error with duplicates being returned by `Timezone#all_country_zones`
|
|
257
|
+
and `Timezone#all_country_zone_identifiers` when used with tzinfo-data
|
|
81
258
|
v1.2014.6 or later.
|
|
82
259
|
* Use the zone1970.tab file for country timezone data if it is found in the
|
|
83
260
|
zoneinfo directory (and fallback to zone.tab if not). zone1970.tab was added
|
|
84
261
|
in tzdata 2014f. zone.tab is now deprecated.
|
|
85
262
|
|
|
86
263
|
|
|
87
|
-
Version 1.2.1 - 1-Jun-2014
|
|
88
|
-
--------------------------
|
|
264
|
+
## Version 1.2.1 - 1-Jun-2014
|
|
89
265
|
|
|
90
266
|
* Support zoneinfo files generated with zic version 2014c and later.
|
|
91
267
|
* On platforms that only support positive 32-bit timestamps, ensure that
|
|
@@ -94,55 +270,52 @@ Version 1.2.1 - 1-Jun-2014
|
|
|
94
270
|
* Minor documentation improvements.
|
|
95
271
|
|
|
96
272
|
|
|
97
|
-
Version 1.2.0 - 26-May-2014
|
|
98
|
-
---------------------------
|
|
273
|
+
## Version 1.2.0 - 26-May-2014
|
|
99
274
|
|
|
100
275
|
* Raise the minimum supported Ruby version to 1.8.7.
|
|
101
276
|
* Support loading system zoneinfo data on FreeBSD, OpenBSD and Solaris.
|
|
102
277
|
Resolves #15.
|
|
103
|
-
* Add canonical_identifier and canonical_zone methods to Timezone
|
|
104
|
-
|
|
105
|
-
|
|
278
|
+
* Add `canonical_identifier` and `canonical_zone` methods to `Timezone`.
|
|
279
|
+
Resolves #16.
|
|
280
|
+
* Add a link to a `DataSourceNotFound` help page in the
|
|
281
|
+
`TZInfo::DataSourceNotFound` exception message.
|
|
106
282
|
* Load iso3166.tab and zone.tab files as UTF-8.
|
|
107
|
-
* Fix Timezone#local_to_utc returning local Time instances on systems using
|
|
108
|
-
as the local time zone. Resolves #13.
|
|
109
|
-
* Fix
|
|
110
|
-
class by making
|
|
111
|
-
* Eliminate
|
|
283
|
+
* Fix `Timezone#local_to_utc` returning local `Time` instances on systems using
|
|
284
|
+
UTC as the local time zone. Resolves #13.
|
|
285
|
+
* Fix `==` methods raising an exception when passed an instance of a different
|
|
286
|
+
class by making `<=>` return `nil` if passed a non-comparable argument.
|
|
287
|
+
* Eliminate `require 'rational'` warnings. Resolves #10.
|
|
112
288
|
* Eliminate "assigned but unused variable - info" warnings. Resolves #11.
|
|
113
289
|
* Switch to minitest v5 for unit tests. Resolves #18.
|
|
114
290
|
|
|
115
291
|
|
|
116
|
-
Version 1.1.0 - 25-Sep-2013
|
|
117
|
-
---------------------------
|
|
292
|
+
## Version 1.1.0 - 25-Sep-2013
|
|
118
293
|
|
|
119
|
-
* TZInfo is now thread safe. ThreadSafe::Cache is now used instead of Hash
|
|
120
|
-
to cache Timezone and Country instances returned by Timezone.get and
|
|
121
|
-
Country.get
|
|
122
|
-
* Added a transitions_up_to method to Timezone that returns a list of the
|
|
123
|
-
where the UTC offset of the timezone changes.
|
|
124
|
-
* Added an offsets_up_to method to Timezone that returns the set of offsets
|
|
294
|
+
* TZInfo is now thread safe. `ThreadSafe::Cache` is now used instead of `Hash`
|
|
295
|
+
to cache `Timezone` and `Country` instances returned by `Timezone.get` and
|
|
296
|
+
`Country.get`. The tzinfo gem now depends on thread_safe ~> 0.1.
|
|
297
|
+
* Added a `transitions_up_to` method to `Timezone` that returns a list of the
|
|
298
|
+
times where the UTC offset of the timezone changes.
|
|
299
|
+
* Added an `offsets_up_to` method to `Timezone` that returns the set of offsets
|
|
125
300
|
that have been observed in a defined timezone.
|
|
126
|
-
* Fixed a "can't modify frozen String" error when loading a Timezone from a
|
|
127
|
-
zoneinfo file using an identifier String that is both tainted and frozen.
|
|
301
|
+
* Fixed a "can't modify frozen String" error when loading a `Timezone` from a
|
|
302
|
+
zoneinfo file using an identifier `String` that is both tainted and frozen.
|
|
128
303
|
Resolves #3.
|
|
129
304
|
* Support TZif3 format zoneinfo files (now produced by zic from tzcode version
|
|
130
305
|
2013e onwards).
|
|
131
306
|
* Support using YARD to generate documentation (added a .yardopts file).
|
|
132
307
|
* Ignore the +VERSION file included in the zoneinfo directory on Mac OS X.
|
|
133
|
-
* Added a note to the documentation concerning 32-bit zoneinfo files (as
|
|
308
|
+
* Added a note to the documentation concerning 32-bit zoneinfo files (as
|
|
134
309
|
included with Mac OS X).
|
|
135
310
|
|
|
136
311
|
|
|
137
|
-
Version 1.0.1 - 22-Jun-2013
|
|
138
|
-
---------------------------
|
|
312
|
+
## Version 1.0.1 - 22-Jun-2013
|
|
139
313
|
|
|
140
314
|
* Fix a test case failure when tests are run from a directory that contains a
|
|
141
315
|
dot in the path (issue #29751).
|
|
142
316
|
|
|
143
317
|
|
|
144
|
-
Version 1.0.0 - 2-Jun-2013
|
|
145
|
-
--------------------------
|
|
318
|
+
## Version 1.0.0 - 2-Jun-2013
|
|
146
319
|
|
|
147
320
|
* Allow TZInfo to be used with different data sources instead of just the
|
|
148
321
|
built-in Ruby module data files.
|
|
@@ -151,73 +324,95 @@ Version 1.0.0 - 2-Jun-2013
|
|
|
151
324
|
distributions.
|
|
152
325
|
* Remove the definition and index Ruby modules from TZInfo and move them into
|
|
153
326
|
a separate TZInfo::Data library (available as the tzinfo-data gem).
|
|
154
|
-
* Default to using the TZInfo::Data library as the data source if it is
|
|
327
|
+
* Default to using the TZInfo::Data library as the data source if it is
|
|
155
328
|
installed, otherwise use zoneinfo files instead.
|
|
156
|
-
* Preserve the nanoseconds of local timezone Time objects when performing
|
|
329
|
+
* Preserve the nanoseconds of local timezone Time objects when performing
|
|
157
330
|
conversions (issue #29705).
|
|
158
331
|
* Don't add the tzinfo lib directory to the search path when requiring 'tzinfo'.
|
|
159
332
|
The tzinfo lib directory must now be in the search path before 'tzinfo' is
|
|
160
333
|
required.
|
|
161
|
-
* Add utc_start_time
|
|
162
|
-
methods to TimezonePeriod
|
|
163
|
-
utc_start
|
|
164
|
-
instances instead of DateTime
|
|
165
|
-
* Make the start_transition
|
|
166
|
-
TimezonePeriod protected. To access properties of the period, callers should
|
|
167
|
-
use other TimezonePeriod instance methods instead (issue #7655).
|
|
334
|
+
* Add `utc_start_time`, `utc_end_time`, `local_start_time` and `local_end_time`
|
|
335
|
+
instance methods to `TimezonePeriod`. These return an identical value as the
|
|
336
|
+
existing `utc_start`, `utc_end`, `local_start` and `local_end` methods, but
|
|
337
|
+
return `Time` instances instead of `DateTime`.
|
|
338
|
+
* Make the `start_transition`, `end_transition` and `offset` properties of
|
|
339
|
+
`TimezonePeriod` protected. To access properties of the period, callers should
|
|
340
|
+
use other `TimezonePeriod` instance methods instead (issue #7655).
|
|
341
|
+
|
|
342
|
+
|
|
343
|
+
## Version 0.3.58 (tzdata v2020d) - 8-Nov-2020
|
|
168
344
|
|
|
345
|
+
* Updated to tzdata version 2020d
|
|
346
|
+
(https://mm.icann.org/pipermail/tz-announce/2020-October/000062.html).
|
|
169
347
|
|
|
170
|
-
|
|
171
|
-
|
|
348
|
+
|
|
349
|
+
## Version 0.3.57 (tzdata v2020a) - 17-May-2020
|
|
350
|
+
|
|
351
|
+
* Updated to tzdata version 2020a
|
|
352
|
+
(<https://mm.icann.org/pipermail/tz-announce/2020-April/000058.html>).
|
|
353
|
+
|
|
354
|
+
|
|
355
|
+
## Version 0.3.56 (tzdata v2019c) - 1-Nov-2019
|
|
356
|
+
|
|
357
|
+
* Updated to tzdata version 2019c
|
|
358
|
+
(<https://mm.icann.org/pipermail/tz-announce/2019-September/000057.html>).
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
## Version 0.3.55 (tzdata v2018g) - 27-Oct-2018
|
|
362
|
+
|
|
363
|
+
* Updated to tzdata version 2018g
|
|
364
|
+
(<https://mm.icann.org/pipermail/tz-announce/2018-October/000052.html>).
|
|
365
|
+
|
|
366
|
+
|
|
367
|
+
## Version 0.3.54 (tzdata v2018d) - 25-Mar-2018
|
|
368
|
+
|
|
369
|
+
* Updated to tzdata version 2018d
|
|
370
|
+
(<https://mm.icann.org/pipermail/tz-announce/2018-March/000049.html>).
|
|
371
|
+
|
|
372
|
+
|
|
373
|
+
## Version 0.3.53 (tzdata v2017b) - 23-Mar-2017
|
|
172
374
|
|
|
173
375
|
* Updated to tzdata version 2017b
|
|
174
|
-
(https://mm.icann.org/pipermail/tz-announce/2017-March/000046.html).
|
|
376
|
+
(<https://mm.icann.org/pipermail/tz-announce/2017-March/000046.html>).
|
|
175
377
|
|
|
176
378
|
|
|
177
|
-
Version 0.3.52 (tzdata v2016h) - 28-Oct-2016
|
|
178
|
-
--------------------------------------------
|
|
379
|
+
## Version 0.3.52 (tzdata v2016h) - 28-Oct-2016
|
|
179
380
|
|
|
180
381
|
* Updated to tzdata version 2016h
|
|
181
|
-
(https://mm.icann.org/pipermail/tz-announce/2016-October/000042.html).
|
|
382
|
+
(<https://mm.icann.org/pipermail/tz-announce/2016-October/000042.html>).
|
|
182
383
|
|
|
183
384
|
|
|
184
|
-
Version 0.3.51 (tzdata v2016f) - 5-Jul-2016
|
|
185
|
-
-------------------------------------------
|
|
385
|
+
## Version 0.3.51 (tzdata v2016f) - 5-Jul-2016
|
|
186
386
|
|
|
187
387
|
* Updated to tzdata version 2016f
|
|
188
|
-
(https://mm.icann.org/pipermail/tz-announce/2016-July/000040.html).
|
|
388
|
+
(<https://mm.icann.org/pipermail/tz-announce/2016-July/000040.html>).
|
|
189
389
|
|
|
190
390
|
|
|
191
|
-
Version 0.3.50 (tzdata v2016e) - 14-Jun-2016
|
|
192
|
-
--------------------------------------------
|
|
391
|
+
## Version 0.3.50 (tzdata v2016e) - 14-Jun-2016
|
|
193
392
|
|
|
194
393
|
* Updated to tzdata version 2016e
|
|
195
|
-
(https://mm.icann.org/pipermail/tz-announce/2016-June/000039.html).
|
|
394
|
+
(<https://mm.icann.org/pipermail/tz-announce/2016-June/000039.html>).
|
|
196
395
|
|
|
197
396
|
|
|
198
|
-
Version 0.3.49 (tzdata v2016d) - 18-Apr-2016
|
|
199
|
-
--------------------------------------------
|
|
397
|
+
## Version 0.3.49 (tzdata v2016d) - 18-Apr-2016
|
|
200
398
|
|
|
201
399
|
* Updated to tzdata version 2016d
|
|
202
|
-
(https://mm.icann.org/pipermail/tz-announce/2016-April/000038.html).
|
|
400
|
+
(<https://mm.icann.org/pipermail/tz-announce/2016-April/000038.html>).
|
|
203
401
|
|
|
204
402
|
|
|
205
|
-
Version 0.3.48 (tzdata v2016c) - 23-Mar-2016
|
|
206
|
-
--------------------------------------------
|
|
403
|
+
## Version 0.3.48 (tzdata v2016c) - 23-Mar-2016
|
|
207
404
|
|
|
208
405
|
* Updated to tzdata version 2016c
|
|
209
|
-
(https://mm.icann.org/pipermail/tz-announce/2016-March/000037.html).
|
|
406
|
+
(<https://mm.icann.org/pipermail/tz-announce/2016-March/000037.html>).
|
|
210
407
|
|
|
211
408
|
|
|
212
|
-
Version 0.3.47 (tzdata v2016b) - 15-Mar-2016
|
|
213
|
-
--------------------------------------------
|
|
409
|
+
## Version 0.3.47 (tzdata v2016b) - 15-Mar-2016
|
|
214
410
|
|
|
215
411
|
* Updated to tzdata version 2016b
|
|
216
|
-
(https://mm.icann.org/pipermail/tz-announce/2016-March/000036.html).
|
|
412
|
+
(<https://mm.icann.org/pipermail/tz-announce/2016-March/000036.html>).
|
|
217
413
|
|
|
218
414
|
|
|
219
|
-
Version 0.3.46 (tzdata v2015g) - 2-Dec-2015
|
|
220
|
-
-------------------------------------------
|
|
415
|
+
## Version 0.3.46 (tzdata v2015g) - 2-Dec-2015
|
|
221
416
|
|
|
222
417
|
* From version 2015e, the IANA time zone database uses non-ASCII characters in
|
|
223
418
|
country names. Backport the encoding handling from TZInfo::Data to allow
|
|
@@ -225,425 +420,382 @@ Version 0.3.46 (tzdata v2015g) - 2-Dec-2015
|
|
|
225
420
|
byte sequence error when loading the countries index). Resolves #41.
|
|
226
421
|
|
|
227
422
|
|
|
228
|
-
Version 0.3.45 (tzdata v2015g) - 3-Oct-2015
|
|
229
|
-
-------------------------------------------
|
|
423
|
+
## Version 0.3.45 (tzdata v2015g) - 3-Oct-2015
|
|
230
424
|
|
|
231
425
|
* Updated to tzdata version 2015g
|
|
232
|
-
(https://mm.icann.org/pipermail/tz-announce/2015-October/000034.html).
|
|
426
|
+
(<https://mm.icann.org/pipermail/tz-announce/2015-October/000034.html>).
|
|
233
427
|
|
|
234
428
|
|
|
235
|
-
Version 0.3.44 (tzdata v2015d) - 24-Apr-2015
|
|
236
|
-
--------------------------------------------
|
|
429
|
+
## Version 0.3.44 (tzdata v2015d) - 24-Apr-2015
|
|
237
430
|
|
|
238
431
|
* Updated to tzdata version 2015d
|
|
239
|
-
(https://mm.icann.org/pipermail/tz-announce/2015-April/000031.html).
|
|
432
|
+
(<https://mm.icann.org/pipermail/tz-announce/2015-April/000031.html>).
|
|
240
433
|
|
|
241
434
|
|
|
242
|
-
Version 0.3.43 (tzdata v2015a) - 31-Jan-2015
|
|
243
|
-
--------------------------------------------
|
|
435
|
+
## Version 0.3.43 (tzdata v2015a) - 31-Jan-2015
|
|
244
436
|
|
|
245
437
|
* Updated to tzdata version 2015a
|
|
246
|
-
(https://mm.icann.org/pipermail/tz-announce/2015-January/000028.html).
|
|
438
|
+
(<https://mm.icann.org/pipermail/tz-announce/2015-January/000028.html>).
|
|
247
439
|
|
|
248
440
|
|
|
249
|
-
Version 0.3.42 (tzdata v2014i) - 23-Oct-2014
|
|
250
|
-
--------------------------------------------
|
|
441
|
+
## Version 0.3.42 (tzdata v2014i) - 23-Oct-2014
|
|
251
442
|
|
|
252
443
|
* Updated to tzdata version 2014i
|
|
253
|
-
(https://mm.icann.org/pipermail/tz-announce/2014-October/000026.html).
|
|
444
|
+
(<https://mm.icann.org/pipermail/tz-announce/2014-October/000026.html>).
|
|
254
445
|
|
|
255
446
|
|
|
256
|
-
Version 0.3.41 (tzdata v2014f) - 8-Aug-2014
|
|
257
|
-
-------------------------------------------
|
|
447
|
+
## Version 0.3.41 (tzdata v2014f) - 8-Aug-2014
|
|
258
448
|
|
|
259
449
|
* Updated to tzdata version 2014f
|
|
260
|
-
(https://mm.icann.org/pipermail/tz-announce/2014-August/000023.html).
|
|
450
|
+
(<https://mm.icann.org/pipermail/tz-announce/2014-August/000023.html>).
|
|
261
451
|
|
|
262
452
|
|
|
263
|
-
Version 0.3.40 (tzdata v2014e) - 10-Jul-2014
|
|
264
|
-
--------------------------------------------
|
|
453
|
+
## Version 0.3.40 (tzdata v2014e) - 10-Jul-2014
|
|
265
454
|
|
|
266
455
|
* Updated to tzdata version 2014e
|
|
267
|
-
(https://mm.icann.org/pipermail/tz-announce/2014-June/000022.html).
|
|
456
|
+
(<https://mm.icann.org/pipermail/tz-announce/2014-June/000022.html>).
|
|
268
457
|
|
|
269
458
|
|
|
270
|
-
Version 0.3.39 (tzdata v2014a) - 9-Mar-2014
|
|
271
|
-
-------------------------------------------
|
|
459
|
+
## Version 0.3.39 (tzdata v2014a) - 9-Mar-2014
|
|
272
460
|
|
|
273
461
|
* Updated to tzdata version 2014a
|
|
274
|
-
(https://mm.icann.org/pipermail/tz-announce/2014-March/000018.html).
|
|
462
|
+
(<https://mm.icann.org/pipermail/tz-announce/2014-March/000018.html>).
|
|
275
463
|
|
|
276
464
|
|
|
277
|
-
Version 0.3.38 (tzdata v2013g) - 8-Oct-2013
|
|
278
|
-
-------------------------------------------
|
|
465
|
+
## Version 0.3.38 (tzdata v2013g) - 8-Oct-2013
|
|
279
466
|
|
|
280
467
|
* Updated to tzdata version 2013g
|
|
281
|
-
(https://mm.icann.org/pipermail/tz-announce/2013-October/000015.html).
|
|
468
|
+
(<https://mm.icann.org/pipermail/tz-announce/2013-October/000015.html>).
|
|
282
469
|
|
|
283
470
|
|
|
284
|
-
Version 0.3.37 (tzdata v2013b) - 11-Mar-2013
|
|
285
|
-
--------------------------------------------
|
|
471
|
+
## Version 0.3.37 (tzdata v2013b) - 11-Mar-2013
|
|
286
472
|
|
|
287
473
|
* Updated to tzdata version 2013b
|
|
288
|
-
(https://mm.icann.org/pipermail/tz-announce/2013-March/000010.html).
|
|
474
|
+
(<https://mm.icann.org/pipermail/tz-announce/2013-March/000010.html>).
|
|
289
475
|
|
|
290
476
|
|
|
291
|
-
Version 0.3.36 (tzdata v2013a) - 3-Mar-2013
|
|
292
|
-
-------------------------------------------
|
|
477
|
+
## Version 0.3.36 (tzdata v2013a) - 3-Mar-2013
|
|
293
478
|
|
|
294
479
|
* Updated to tzdata version 2013a
|
|
295
|
-
(https://mm.icann.org/pipermail/tz-announce/2013-March/000009.html).
|
|
296
|
-
* Fix TimezoneTransitionInfo#eql
|
|
480
|
+
(<https://mm.icann.org/pipermail/tz-announce/2013-March/000009.html>).
|
|
481
|
+
* Fix `TimezoneTransitionInfo#eql?` incorrectly returning false when running on
|
|
297
482
|
Ruby 2.0.
|
|
298
|
-
* Change eql
|
|
299
|
-
instead of checking individual properties with
|
|
483
|
+
* Change `eql?` and `==` implementations to test the class of the passed in
|
|
484
|
+
object instead of checking individual properties with `respond_to?`.
|
|
300
485
|
|
|
301
486
|
|
|
302
|
-
Version 0.3.35 (tzdata v2012i) - 4-Nov-2012
|
|
303
|
-
-------------------------------------------
|
|
487
|
+
## Version 0.3.35 (tzdata v2012i) - 4-Nov-2012
|
|
304
488
|
|
|
305
489
|
* Updated to tzdata version 2012i
|
|
306
|
-
(https://mm.icann.org/pipermail/tz-announce/2012-November/000007.html).
|
|
490
|
+
(<https://mm.icann.org/pipermail/tz-announce/2012-November/000007.html>).
|
|
307
491
|
|
|
308
492
|
|
|
309
|
-
Version 0.3.34 (tzdata v2012h) - 27-Oct-2012
|
|
310
|
-
--------------------------------------------
|
|
493
|
+
## Version 0.3.34 (tzdata v2012h) - 27-Oct-2012
|
|
311
494
|
|
|
312
495
|
* Updated to tzdata version 2012h
|
|
313
|
-
(https://mm.icann.org/pipermail/tz-announce/2012-October/000006.html).
|
|
496
|
+
(<https://mm.icann.org/pipermail/tz-announce/2012-October/000006.html>).
|
|
314
497
|
|
|
315
498
|
|
|
316
|
-
Version 0.3.33 (tzdata v2012c) - 8-Apr-2012
|
|
317
|
-
-------------------------------------------
|
|
499
|
+
## Version 0.3.33 (tzdata v2012c) - 8-Apr-2012
|
|
318
500
|
|
|
319
501
|
* Updated to tzdata version 2012c
|
|
320
|
-
(https://mm.icann.org/pipermail/tz/2012-April/017627.html).
|
|
502
|
+
(<https://mm.icann.org/pipermail/tz/2012-April/017627.html>).
|
|
321
503
|
|
|
322
504
|
|
|
323
|
-
Version 0.3.32 (tzdata v2012b) - 4-Mar-2012
|
|
324
|
-
-------------------------------------------
|
|
505
|
+
## Version 0.3.32 (tzdata v2012b) - 4-Mar-2012
|
|
325
506
|
|
|
326
507
|
* Updated to tzdata version 2012b
|
|
327
|
-
(https://mm.icann.org/pipermail/tz/2012-March/017524.html).
|
|
508
|
+
(<https://mm.icann.org/pipermail/tz/2012-March/017524.html>).
|
|
328
509
|
|
|
329
510
|
|
|
330
|
-
Version 0.3.31 (tzdata v2011n) - 6-Nov-2011
|
|
331
|
-
-------------------------------------------
|
|
511
|
+
## Version 0.3.31 (tzdata v2011n) - 6-Nov-2011
|
|
332
512
|
|
|
333
513
|
* Updated to tzdata version 2011n
|
|
334
|
-
(https://mm.icann.org/pipermail/tz/2011-October/017201.html).
|
|
514
|
+
(<https://mm.icann.org/pipermail/tz/2011-October/017201.html>).
|
|
335
515
|
|
|
336
516
|
|
|
337
|
-
Version 0.3.30 (tzdata v2011k) - 29-Sep-2011
|
|
338
|
-
--------------------------------------------
|
|
517
|
+
## Version 0.3.30 (tzdata v2011k) - 29-Sep-2011
|
|
339
518
|
|
|
340
519
|
* Updated to tzdata version 2011k
|
|
341
|
-
(https://mm.icann.org/pipermail/tz/2011-September/008889.html).
|
|
520
|
+
(<https://mm.icann.org/pipermail/tz/2011-September/008889.html>).
|
|
342
521
|
|
|
343
522
|
|
|
344
|
-
Version 0.3.29 (tzdata v2011h) - 27-Jun-2011
|
|
345
|
-
--------------------------------------------
|
|
523
|
+
## Version 0.3.29 (tzdata v2011h) - 27-Jun-2011
|
|
346
524
|
|
|
347
525
|
* Updated to tzdata version 2011h
|
|
348
|
-
(https://mm.icann.org/pipermail/tz/2011-June/008576.html).
|
|
349
|
-
* Allow the default value of the local_to_utc and period_for_local dst
|
|
350
|
-
parameter to be specified globally with a Timezone.default_dst attribute.
|
|
526
|
+
(<https://mm.icann.org/pipermail/tz/2011-June/008576.html>).
|
|
527
|
+
* Allow the default value of the `local_to_utc` and `period_for_local` `dst`
|
|
528
|
+
parameter to be specified globally with a `Timezone.default_dst` attribute.
|
|
351
529
|
Thanks to Kurt Werle for the suggestion and patch.
|
|
352
530
|
|
|
353
531
|
|
|
354
|
-
Version 0.3.28 (tzdata v2011g) - 13-Jun-2011
|
|
355
|
-
---------------------------------------------
|
|
532
|
+
## Version 0.3.28 (tzdata v2011g) - 13-Jun-2011
|
|
356
533
|
|
|
357
|
-
* Add support for Ruby 1.9.3 (trunk revision 31668 and later). Thanks to
|
|
534
|
+
* Add support for Ruby 1.9.3 (trunk revision 31668 and later). Thanks to
|
|
358
535
|
Aaron Patterson for reporting the problems running on the new version.
|
|
359
536
|
Closes #29233.
|
|
360
537
|
|
|
361
538
|
|
|
362
|
-
Version 0.3.27 (tzdata v2011g) - 26-Apr-2011
|
|
363
|
-
--------------------------------------------
|
|
539
|
+
## Version 0.3.27 (tzdata v2011g) - 26-Apr-2011
|
|
364
540
|
|
|
365
541
|
* Updated to tzdata version 2011g
|
|
366
|
-
(https://mm.icann.org/pipermail/tz/2011-April/016875.html).
|
|
542
|
+
(<https://mm.icann.org/pipermail/tz/2011-April/016875.html>).
|
|
367
543
|
|
|
368
544
|
|
|
369
|
-
Version 0.3.26 (tzdata v2011e) - 2-Apr-2011
|
|
370
|
-
-------------------------------------------
|
|
545
|
+
## Version 0.3.26 (tzdata v2011e) - 2-Apr-2011
|
|
371
546
|
|
|
372
547
|
* Updated to tzdata version 2011e
|
|
373
|
-
(https://mm.icann.org/pipermail/tz/2011-April/016809.html).
|
|
548
|
+
(<https://mm.icann.org/pipermail/tz/2011-April/016809.html>).
|
|
374
549
|
|
|
375
550
|
|
|
376
|
-
Version 0.3.25 (tzdata v2011d) - 14-Mar-2011
|
|
377
|
-
--------------------------------------------
|
|
551
|
+
## Version 0.3.25 (tzdata v2011d) - 14-Mar-2011
|
|
378
552
|
|
|
379
553
|
* Updated to tzdata version 2011d
|
|
380
|
-
(https://mm.icann.org/pipermail/tz/2011-March/016746.html).
|
|
554
|
+
(<https://mm.icann.org/pipermail/tz/2011-March/016746.html>).
|
|
381
555
|
|
|
382
556
|
|
|
383
|
-
Version 0.3.24 (tzdata v2010o) - 15-Jan-2011
|
|
384
|
-
--------------------------------------------
|
|
557
|
+
## Version 0.3.24 (tzdata v2010o) - 15-Jan-2011
|
|
385
558
|
|
|
386
559
|
* Updated to tzdata version 2010o
|
|
387
|
-
(https://mm.icann.org/pipermail/tz/2010-November/016517.html).
|
|
560
|
+
(<https://mm.icann.org/pipermail/tz/2010-November/016517.html>).
|
|
388
561
|
|
|
389
562
|
|
|
390
|
-
Version 0.3.23 (tzdata v2010l) - 19-Aug-2010
|
|
391
|
-
--------------------------------------------
|
|
563
|
+
## Version 0.3.23 (tzdata v2010l) - 19-Aug-2010
|
|
392
564
|
|
|
393
565
|
* Updated to tzdata version 2010l
|
|
394
|
-
(https://mm.icann.org/pipermail/tz/2010-August/016360.html).
|
|
566
|
+
(<https://mm.icann.org/pipermail/tz/2010-August/016360.html>).
|
|
395
567
|
|
|
396
568
|
|
|
397
|
-
Version 0.3.22 (tzdata v2010j) - 29-May-2010
|
|
398
|
-
--------------------------------------------
|
|
569
|
+
## Version 0.3.22 (tzdata v2010j) - 29-May-2010
|
|
399
570
|
|
|
400
571
|
* Corrected file permissions issue with 0.3.21 release.
|
|
401
572
|
|
|
402
573
|
|
|
403
|
-
Version 0.3.21 (tzdata v2010j) - 28-May-2010
|
|
404
|
-
--------------------------------------------
|
|
574
|
+
## Version 0.3.21 (tzdata v2010j) - 28-May-2010
|
|
405
575
|
|
|
406
576
|
* Updated to tzdata version 2010j
|
|
407
|
-
(https://mm.icann.org/pipermail/tz/2010-May/016211.html).
|
|
577
|
+
(<https://mm.icann.org/pipermail/tz/2010-May/016211.html>).
|
|
408
578
|
* Change invalid timezone check to exclude characters not used in timezone
|
|
409
579
|
identifiers and avoid 'character class has duplicated range' warnings with
|
|
410
580
|
Ruby 1.9.2.
|
|
411
|
-
* Ruby 1.9.2 has deprecated
|
|
581
|
+
* Ruby 1.9.2 has deprecated `require 'rational'`, but older versions of
|
|
412
582
|
Ruby need rational to be required. Require rational only when the Rational
|
|
413
583
|
module has not already been loaded.
|
|
414
584
|
* Remove circular requires (now a warning in Ruby 1.9.2). Instead of using
|
|
415
|
-
requires in each file for dependencies, tzinfo.rb now requires all tzinfo
|
|
585
|
+
requires in each file for dependencies, `tzinfo.rb` now requires all tzinfo
|
|
416
586
|
files. If you were previously requiring files within the tzinfo directory
|
|
417
|
-
(e.g. require 'tzinfo/timezone'), then you will now have to
|
|
418
|
-
require 'tzinfo' instead.
|
|
587
|
+
(e.g. `require 'tzinfo/timezone'`), then you will now have to
|
|
588
|
+
`require 'tzinfo'` instead.
|
|
419
589
|
|
|
420
590
|
|
|
421
|
-
Version 0.3.20 (tzdata v2010i) - 19-Apr-2010
|
|
422
|
-
--------------------------------------------
|
|
591
|
+
## Version 0.3.20 (tzdata v2010i) - 19-Apr-2010
|
|
423
592
|
|
|
424
593
|
* Updated to tzdata version 2010i
|
|
425
|
-
(https://mm.icann.org/pipermail/tz/2010-April/016184.html).
|
|
594
|
+
(<https://mm.icann.org/pipermail/tz/2010-April/016184.html>).
|
|
426
595
|
|
|
427
596
|
|
|
428
|
-
Version 0.3.19 (tzdata v2010h) - 5-Apr-2010
|
|
429
|
-
-------------------------------------------
|
|
597
|
+
## Version 0.3.19 (tzdata v2010h) - 5-Apr-2010
|
|
430
598
|
|
|
431
599
|
* Updated to tzdata version 2010h
|
|
432
|
-
(https://mm.icann.org/pipermail/tz/2010-April/016161.html).
|
|
600
|
+
(<https://mm.icann.org/pipermail/tz/2010-April/016161.html>).
|
|
433
601
|
|
|
434
602
|
|
|
435
|
-
Version 0.3.18 (tzdata v2010g) - 29-Mar-2010
|
|
436
|
-
--------------------------------------------
|
|
603
|
+
## Version 0.3.18 (tzdata v2010g) - 29-Mar-2010
|
|
437
604
|
|
|
438
605
|
* Updated to tzdata version 2010g
|
|
439
|
-
(https://mm.icann.org/pipermail/tz/2010-March/016140.html).
|
|
606
|
+
(<https://mm.icann.org/pipermail/tz/2010-March/016140.html>).
|
|
440
607
|
|
|
441
608
|
|
|
442
|
-
Version 0.3.17 (tzdata v2010e) - 8-Mar-2010
|
|
443
|
-
-------------------------------------------
|
|
609
|
+
## Version 0.3.17 (tzdata v2010e) - 8-Mar-2010
|
|
444
610
|
|
|
445
611
|
* Updated to tzdata version 2010e
|
|
446
|
-
(https://mm.icann.org/pipermail/tz/2010-March/016088.html).
|
|
612
|
+
(<https://mm.icann.org/pipermail/tz/2010-March/016088.html>).
|
|
447
613
|
|
|
448
614
|
|
|
449
|
-
Version 0.3.16 (tzdata v2009u) - 5-Jan-2010
|
|
450
|
-
-------------------------------------------
|
|
615
|
+
## Version 0.3.16 (tzdata v2009u) - 5-Jan-2010
|
|
451
616
|
|
|
452
617
|
* Support the use of '-' to denote '0' as an offset in the tz data files.
|
|
453
618
|
Used for the first time in the SAVE field in tzdata v2009u.
|
|
454
619
|
* Updated to tzdata version 2009u
|
|
455
|
-
(https://mm.icann.org/pipermail/tz/2009-December/016001.html).
|
|
620
|
+
(<https://mm.icann.org/pipermail/tz/2009-December/016001.html>).
|
|
456
621
|
|
|
457
622
|
|
|
458
|
-
Version 0.3.15 (tzdata v2009p) - 26-Oct-2009
|
|
459
|
-
--------------------------------------------
|
|
623
|
+
## Version 0.3.15 (tzdata v2009p) - 26-Oct-2009
|
|
460
624
|
|
|
461
625
|
* Updated to tzdata version 2009p
|
|
462
|
-
(https://mm.icann.org/pipermail/tz/2009-October/015889.html).
|
|
626
|
+
(<https://mm.icann.org/pipermail/tz/2009-October/015889.html>).
|
|
463
627
|
* Added a description to the gem spec.
|
|
464
628
|
* List test files in test_files instead of files in the gem spec.
|
|
465
629
|
|
|
466
630
|
|
|
467
|
-
Version 0.3.14 (tzdata v2009l) - 19-Aug-2009
|
|
468
|
-
--------------------------------------------
|
|
631
|
+
## Version 0.3.14 (tzdata v2009l) - 19-Aug-2009
|
|
469
632
|
|
|
470
633
|
* Updated to tzdata version 2009l
|
|
471
|
-
(https://mm.icann.org/pipermail/tz/2009-August/015729.html).
|
|
634
|
+
(<https://mm.icann.org/pipermail/tz/2009-August/015729.html>).
|
|
472
635
|
* Include current directory in load path to allow running tests on
|
|
473
636
|
Ruby 1.9.2, which doesn't include it by default any more.
|
|
474
637
|
|
|
475
638
|
|
|
476
|
-
Version 0.3.13 (tzdata v2009f) - 15-Apr-2009
|
|
477
|
-
--------------------------------------------
|
|
639
|
+
## Version 0.3.13 (tzdata v2009f) - 15-Apr-2009
|
|
478
640
|
|
|
479
641
|
* Updated to tzdata version 2009f
|
|
480
|
-
(https://mm.icann.org/pipermail/tz/2009-April/015544.html).
|
|
642
|
+
(<https://mm.icann.org/pipermail/tz/2009-April/015544.html>).
|
|
481
643
|
* Untaint the timezone module filename after validation to allow use
|
|
482
|
-
with
|
|
644
|
+
with `$SAFE == 1` (e.g. under mod_ruby). Thanks to Dmitry Borodaenko for
|
|
483
645
|
the suggestion. Closes #25349.
|
|
484
646
|
|
|
485
647
|
|
|
486
|
-
Version 0.3.12 (tzdata v2008i) - 12-Nov-2008
|
|
487
|
-
--------------------------------------------
|
|
648
|
+
## Version 0.3.12 (tzdata v2008i) - 12-Nov-2008
|
|
488
649
|
|
|
489
650
|
* Updated to tzdata version 2008i
|
|
490
|
-
(https://mm.icann.org/pipermail/tz/2008-October/015260.html).
|
|
651
|
+
(<https://mm.icann.org/pipermail/tz/2008-October/015260.html>).
|
|
491
652
|
|
|
492
653
|
|
|
493
|
-
Version 0.3.11 (tzdata v2008g) - 7-Oct-2008
|
|
494
|
-
-------------------------------------------
|
|
654
|
+
## Version 0.3.11 (tzdata v2008g) - 7-Oct-2008
|
|
495
655
|
|
|
496
656
|
* Updated to tzdata version 2008g
|
|
497
|
-
(https://mm.icann.org/pipermail/tz/2008-October/015139.html).
|
|
498
|
-
* Support Ruby 1.9.0-5. Rational.new
|
|
499
|
-
Only use Rational.new
|
|
657
|
+
(<https://mm.icann.org/pipermail/tz/2008-October/015139.html>).
|
|
658
|
+
* Support Ruby 1.9.0-5. `Rational.new!` has now been removed in Ruby 1.9.
|
|
659
|
+
Only use `Rational.new!` if it is available (it is preferable in Ruby 1.8
|
|
500
660
|
for performance reasons). Thanks to Jeremy Kemper and Pratik Naik for
|
|
501
661
|
reporting this. Closes #22312.
|
|
502
662
|
* Apply a patch from Pratik Naik to replace assert calls that have been
|
|
503
663
|
deprecated in the Ruby svn trunk. Closes #22308.
|
|
504
664
|
|
|
505
665
|
|
|
506
|
-
Version 0.3.10 (tzdata v2008f) - 16-Sep-2008
|
|
507
|
-
--------------------------------------------
|
|
666
|
+
## Version 0.3.10 (tzdata v2008f) - 16-Sep-2008
|
|
508
667
|
|
|
509
668
|
* Updated to tzdata version 2008f
|
|
510
|
-
(https://mm.icann.org/pipermail/tz/2008-September/015090.html).
|
|
669
|
+
(<https://mm.icann.org/pipermail/tz/2008-September/015090.html>).
|
|
511
670
|
|
|
512
671
|
|
|
513
|
-
Version 0.3.9 (tzdata v2008c) - 27-May-2008
|
|
514
|
-
-------------------------------------------
|
|
672
|
+
## Version 0.3.9 (tzdata v2008c) - 27-May-2008
|
|
515
673
|
|
|
516
674
|
* Updated to tzdata version 2008c
|
|
517
|
-
(https://mm.icann.org/pipermail/tz/2008-May/014956.html).
|
|
675
|
+
(<https://mm.icann.org/pipermail/tz/2008-May/014956.html>).
|
|
518
676
|
* Support loading timezone data in the latest trunk versions of Ruby 1.9.
|
|
519
|
-
Rational.new
|
|
520
|
-
Thanks to Jeremy Kemper and Pratik Naik for spotting this. Closes
|
|
677
|
+
`Rational.new!` is now private, so call it using `Rational.send :new!`
|
|
678
|
+
instead. Thanks to Jeremy Kemper and Pratik Naik for spotting this. Closes
|
|
679
|
+
#19184.
|
|
521
680
|
* Prevent warnings from being output when running Ruby with the -v or -w
|
|
522
681
|
command line options. Thanks to Paul McMahon for the patch. Closes #19719.
|
|
523
682
|
|
|
524
683
|
|
|
525
|
-
Version 0.3.8 (tzdata v2008b) - 24-Mar-2008
|
|
526
|
-
-------------------------------------------
|
|
684
|
+
## Version 0.3.8 (tzdata v2008b) - 24-Mar-2008
|
|
527
685
|
|
|
528
686
|
* Updated to tzdata version 2008b
|
|
529
|
-
(https://mm.icann.org/pipermail/tz/2008-March/014910.html).
|
|
530
|
-
* Support loading timezone data in Ruby 1.9.0. Use DateTime.new
|
|
531
|
-
available instead of DateTime.new0 when constructing transition times.
|
|
532
|
-
DateTime.new
|
|
687
|
+
(<https://mm.icann.org/pipermail/tz/2008-March/014910.html>).
|
|
688
|
+
* Support loading timezone data in Ruby 1.9.0. Use `DateTime.new!` if it is
|
|
689
|
+
available instead of `DateTime.new0` when constructing transition times.
|
|
690
|
+
`DateTime.new!` was added in Ruby 1.8.6. `DateTime.new0` was removed in
|
|
533
691
|
Ruby 1.9.0. Thanks to Joshua Peek for reporting this. Closes #17606.
|
|
534
692
|
* Modify some of the equality test cases to cope with the differences
|
|
535
693
|
between Ruby 1.8.6 and Ruby 1.9.0.
|
|
536
694
|
|
|
537
695
|
|
|
538
|
-
Version 0.3.7 (tzdata v2008a) - 10-Mar-2008
|
|
539
|
-
-------------------------------------------
|
|
696
|
+
## Version 0.3.7 (tzdata v2008a) - 10-Mar-2008
|
|
540
697
|
|
|
541
698
|
* Updated to tzdata version 2008a
|
|
542
|
-
(https://mm.icann.org/pipermail/tz/2008-March/014851.html).
|
|
699
|
+
(<https://mm.icann.org/pipermail/tz/2008-March/014851.html>).
|
|
543
700
|
|
|
544
701
|
|
|
545
|
-
Version 0.3.6 (tzdata v2007k) - 1-Jan-2008
|
|
546
|
-
------------------------------------------
|
|
702
|
+
## Version 0.3.6 (tzdata v2007k) - 1-Jan-2008
|
|
547
703
|
|
|
548
704
|
* Updated to tzdata version 2007k
|
|
549
|
-
(https://mm.icann.org/pipermail/tz/2007-December/014765.html).
|
|
705
|
+
(<https://mm.icann.org/pipermail/tz/2007-December/014765.html>).
|
|
550
706
|
* Removed deprecated RubyGems autorequire option.
|
|
551
707
|
|
|
552
708
|
|
|
553
|
-
Version 0.3.5 (tzdata v2007h) - 1-Oct-2007
|
|
554
|
-
------------------------------------------
|
|
709
|
+
## Version 0.3.5 (tzdata v2007h) - 1-Oct-2007
|
|
555
710
|
|
|
556
711
|
* Updated to tzdata version 2007h
|
|
557
|
-
(https://mm.icann.org/pipermail/tz/2007-October/014585.html).
|
|
712
|
+
(<https://mm.icann.org/pipermail/tz/2007-October/014585.html>).
|
|
558
713
|
|
|
559
714
|
|
|
560
|
-
Version 0.3.4 (tzdata v2007g) - 21-Aug-2007
|
|
561
|
-
-------------------------------------------
|
|
715
|
+
## Version 0.3.4 (tzdata v2007g) - 21-Aug-2007
|
|
562
716
|
|
|
563
717
|
* Updated to tzdata version 2007g
|
|
564
|
-
(https://mm.icann.org/pipermail/tz/2007-August/014499.html).
|
|
718
|
+
(<https://mm.icann.org/pipermail/tz/2007-August/014499.html>).
|
|
565
719
|
|
|
566
720
|
|
|
567
|
-
Version 0.3.3 (tzdata v2006p) - 27-Nov-2006
|
|
568
|
-
-------------------------------------------
|
|
721
|
+
## Version 0.3.3 (tzdata v2006p) - 27-Nov-2006
|
|
569
722
|
|
|
570
723
|
* Updated to tzdata version 2006p
|
|
571
|
-
(https://mm.icann.org/pipermail/tz/2006-November/013999.html).
|
|
724
|
+
(<https://mm.icann.org/pipermail/tz/2006-November/013999.html>).
|
|
572
725
|
|
|
573
726
|
|
|
574
|
-
Version 0.3.2 (tzdata v2006n) - 11-Oct-2006
|
|
575
|
-
-------------------------------------------
|
|
727
|
+
## Version 0.3.2 (tzdata v2006n) - 11-Oct-2006
|
|
576
728
|
|
|
577
729
|
* Updated to tzdata version 2006n
|
|
578
|
-
(https://mm.icann.org/pipermail/tz/2006-October/013911.html). Note that this
|
|
579
|
-
tzdata removes the country Serbia and Montenegro (CS) and replaces
|
|
580
|
-
separate Serbia (RS) and Montenegro (ME) entries.
|
|
730
|
+
(<https://mm.icann.org/pipermail/tz/2006-October/013911.html>). Note that this
|
|
731
|
+
release of tzdata removes the country Serbia and Montenegro (CS) and replaces
|
|
732
|
+
it with separate Serbia (RS) and Montenegro (ME) entries.
|
|
581
733
|
|
|
582
734
|
|
|
583
|
-
Version 0.3.1 (tzdata v2006j) - 21-Aug-2006
|
|
584
|
-
-------------------------------------------
|
|
735
|
+
## Version 0.3.1 (tzdata v2006j) - 21-Aug-2006
|
|
585
736
|
|
|
586
737
|
* Remove colon from case statements to avoid warning in Ruby 1.8.5. #5198.
|
|
587
738
|
* Use temporary variable to avoid dynamic string warning from rdoc.
|
|
588
739
|
* Updated to tzdata version 2006j
|
|
589
|
-
(https://mm.icann.org/pipermail/tz/2006-August/013767.html).
|
|
740
|
+
(<https://mm.icann.org/pipermail/tz/2006-August/013767.html>).
|
|
590
741
|
|
|
591
742
|
|
|
592
|
-
Version 0.3.0 (tzdata v2006g) - 17-Jul-2006
|
|
593
|
-
-------------------------------------------
|
|
743
|
+
## Version 0.3.0 (tzdata v2006g) - 17-Jul-2006
|
|
594
744
|
|
|
595
745
|
* New timezone data format. Timezone data now occupies less space on disk and
|
|
596
746
|
takes less memory once loaded. #4142, #4144.
|
|
597
|
-
* Timezone data is defined in modules rather than classes. Timezone instances
|
|
598
|
-
returned by Timezone.get are no longer instances of data classes, but are
|
|
599
|
-
instead instances of new DataTimezone and LinkedTimezone classes.
|
|
600
|
-
* Timezone instances can now be used with Marshal.dump and Marshal.load
|
|
601
|
-
|
|
602
|
-
|
|
747
|
+
* Timezone data is defined in modules rather than classes. `Timezone` instances
|
|
748
|
+
returned by `Timezone.get` are no longer instances of data classes, but are
|
|
749
|
+
instead instances of new `DataTimezone` and `LinkedTimezone` classes.
|
|
750
|
+
* `Timezone` instances can now be used with `Marshal.dump` and `Marshal.load`.
|
|
751
|
+
#4240.
|
|
752
|
+
* Added a `Timezone.get_proxy` method that returns a `TimezoneProxy` object for
|
|
753
|
+
a given identifier.
|
|
603
754
|
* Country index data is now defined in a single module that is independent
|
|
604
|
-
of the Country class implementation.
|
|
605
|
-
* Country instances can now be used with Marshal.dump and Marshal.load
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
755
|
+
of the `Country` class implementation.
|
|
756
|
+
* `Country` instances can now be used with `Marshal.dump` and `Marshal.load`.
|
|
757
|
+
#4240.
|
|
758
|
+
* `Country` has a new `zone_info` method that returns `CountryTimezone` objects
|
|
759
|
+
containing additional information (latitude, longitude and a description)
|
|
760
|
+
relating to each `Timezone`. #4140.
|
|
761
|
+
* Time zones within a `Country` are now returned in an order that makes
|
|
610
762
|
geographic sense.
|
|
611
763
|
* The zdumptest utility now checks local to utc conversions in addition to
|
|
612
764
|
utc to local conversions.
|
|
613
|
-
* eql
|
|
614
|
-
* The
|
|
615
|
-
with no identifier method.
|
|
616
|
-
* The
|
|
617
|
-
with no code method.
|
|
618
|
-
* hash method defined on Country that returns the hash of the code.
|
|
619
|
-
* hash method defined on Timezone that returns the hash of the identifier.
|
|
765
|
+
* `eql?` method defined on `Country` and `Timezone` that is equivalent to `==`.
|
|
766
|
+
* The `==` method of `Timezone` no longer raises an exception when passed an
|
|
767
|
+
object with no identifier method.
|
|
768
|
+
* The `==` method of `Country` no longer raises an exception when passed an
|
|
769
|
+
object with no code method.
|
|
770
|
+
* `hash` method defined on `Country` that returns the hash of the code.
|
|
771
|
+
* `hash` method defined on `Timezone` that returns the hash of the identifier.
|
|
620
772
|
* Miscellaneous API documentation corrections and improvements.
|
|
621
773
|
* Timezone definition and indexes are now excluded from rdoc (the contents were
|
|
622
|
-
previously ignored with
|
|
623
|
-
* Removed no longer needed
|
|
774
|
+
previously ignored with `#:nodoc:` anyway).
|
|
775
|
+
* Removed no longer needed `#:nodoc:` directives from timezone data files (which
|
|
624
776
|
are now excluded from the rdoc build).
|
|
625
|
-
* Installation of the gem now causes rdoc API documentation to be generated.
|
|
777
|
+
* Installation of the gem now causes rdoc API documentation to be generated.
|
|
626
778
|
#4905.
|
|
627
779
|
* When optimizing transitions to generate zone definitions, check the
|
|
628
780
|
UTC and standard offsets separately rather than just the total offset to UTC.
|
|
629
|
-
Fixes an incorrect abbreviation issue with Europe/London, Europe/Dublin and
|
|
781
|
+
Fixes an incorrect abbreviation issue with Europe/London, Europe/Dublin and
|
|
630
782
|
Pacific/Auckland.
|
|
631
|
-
* Eliminated unnecessary
|
|
632
|
-
* Timezone.all and Timezone.all_identifiers now return all the
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
783
|
+
* Eliminated unnecessary `.nil?` calls to give a minor performance gain.
|
|
784
|
+
* `Timezone.all` and `Timezone.all_identifiers` now return all the
|
|
785
|
+
`Timezone` instances/identifiers rather than just those associated with
|
|
786
|
+
countries. #4146.
|
|
787
|
+
* Added `all_data_zones`, `all_data_zone_identifiers`, `all_linked_zones` and
|
|
788
|
+
`all_linked_zone_identifiers` class methods to `Timezone`.
|
|
789
|
+
* Added a `strftime` method to `Timezone` that converts a time in UTC to local
|
|
790
|
+
time and then returns it formatted. `%Z` is replaced with the timezone
|
|
638
791
|
abbreviation for the given time (for example, EST or EDT). #4143.
|
|
639
|
-
* Fix escaping of quotes in TZDataParser
|
|
640
|
-
descriptions of
|
|
792
|
+
* Fix escaping of quotes in `TZDataParser`. This affected country names and
|
|
793
|
+
descriptions of time zones within countries.
|
|
641
794
|
|
|
642
795
|
|
|
643
|
-
Version 0.2.2 (tzdata v2006g) - 17-May-2006
|
|
644
|
-
-------------------------------------------
|
|
796
|
+
## Version 0.2.2 (tzdata v2006g) - 17-May-2006
|
|
645
797
|
|
|
646
|
-
* Use class-scoped instance variables to store the Timezone identifier and
|
|
798
|
+
* Use class-scoped instance variables to store the Timezone identifier and
|
|
647
799
|
singleton instance. Loading a linked zone no longer causes the parent
|
|
648
800
|
zone's identifier to be changed. The instance method of a linked zone class
|
|
649
801
|
also now returns an instance of the linked zone class rather than the parent
|
|
@@ -652,173 +804,170 @@ Version 0.2.2 (tzdata v2006g) - 17-May-2006
|
|
|
652
804
|
zone identifier.
|
|
653
805
|
* The zdumptestall utility now exits if not supplied with enough parameters.
|
|
654
806
|
* Updated to tzdata version 2006g
|
|
655
|
-
(https://mm.icann.org/pipermail/tz/2006-May/013590.html).
|
|
807
|
+
(<https://mm.icann.org/pipermail/tz/2006-May/013590.html>).
|
|
656
808
|
|
|
657
809
|
|
|
658
|
-
Version 0.2.1 (tzdata v2006d) - 17-Apr-2006
|
|
659
|
-
-------------------------------------------
|
|
810
|
+
## Version 0.2.1 (tzdata v2006d) - 17-Apr-2006
|
|
660
811
|
|
|
661
|
-
* Fix a performance issue caused in 0.2.0 with Timezone.local_to_utc
|
|
662
|
-
Conversions performed on TimeOrDateTime instances passed to
|
|
812
|
+
* Fix a performance issue caused in 0.2.0 with `Timezone.local_to_utc`.
|
|
813
|
+
Conversions performed on `TimeOrDateTime` instances passed to `<=>` are now
|
|
663
814
|
cached as originally intended. Thanks to Michael Smedberg for spotting this.
|
|
664
|
-
* Fix a performance issue with the local_to_utc period search algorithm
|
|
815
|
+
* Fix a performance issue with the `local_to_utc` period search algorithm
|
|
665
816
|
originally implemented in 0.1.0. The condition that was supposed to cause
|
|
666
817
|
the search to terminate when enough periods had been found was only being
|
|
667
|
-
evaluated in a small subset of cases. Thanks to Michael Smedberg and
|
|
818
|
+
evaluated in a small subset of cases. Thanks to Michael Smedberg and
|
|
668
819
|
Jamis Buck for reporting this.
|
|
669
|
-
* Added abbreviation as an alias for TimezonePeriod.zone_identifier
|
|
820
|
+
* Added abbreviation as an alias for `TimezonePeriod.zone_identifier`.
|
|
670
821
|
* Updated to tzdata version 2006d
|
|
671
|
-
(https://mm.icann.org/pipermail/tz/2006-April/013517.html).
|
|
672
|
-
* Ignore any offset in
|
|
673
|
-
All of the following now refer to the same UTC time (15:40 on 17 April 2006).
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
822
|
+
(<https://mm.icann.org/pipermail/tz/2006-April/013517.html>).
|
|
823
|
+
* Ignore any offset in `DateTime` instances passed in (as is already done for
|
|
824
|
+
`Time` instances). All of the following now refer to the same UTC time (15:40 on 17 April 2006). Previously, the `DateTime` in the second line would have been interpreted as 20:40.
|
|
825
|
+
|
|
826
|
+
```ruby
|
|
677
827
|
tz.utc_to_local(DateTime.new(2006, 4, 17, 15, 40, 0))
|
|
678
828
|
tz.utc_to_local(DateTime.new(2006, 4, 17, 15, 40, 0).new_offset(Rational(5, 24)))
|
|
679
829
|
tz.utc_to_local(Time.utc(2006, 4, 17, 15, 40, 0))
|
|
680
830
|
tz.utc_to_local(Time.local(2006, 4, 17, 15, 40, 0))
|
|
831
|
+
```
|
|
681
832
|
|
|
682
833
|
|
|
683
|
-
Version 0.2.0 (tzdata v2006c) - 3-Apr-2006
|
|
684
|
-
------------------------------------------
|
|
834
|
+
## Version 0.2.0 (tzdata v2006c) - 3-Apr-2006
|
|
685
835
|
|
|
686
|
-
* Use timestamps rather than DateTime objects in zone files for times between
|
|
687
|
-
1970 and 2037 (the range of Time).
|
|
688
|
-
* Don't convert passed in Time objects to DateTime in most cases (provides
|
|
836
|
+
* Use timestamps rather than `DateTime` objects in zone files for times between
|
|
837
|
+
1970 and 2037 (the range of `Time`).
|
|
838
|
+
* Don't convert passed in `Time` objects to `DateTime` in most cases (provides
|
|
689
839
|
a substantial performance improvement).
|
|
690
|
-
* Allow integer timestamps (time in seconds since 1970-1-1) to be used as well
|
|
691
|
-
as Time and DateTime objects in all public methods that take times as
|
|
840
|
+
* Allow integer timestamps (time in seconds since 1970-1-1) to be used as well
|
|
841
|
+
as `Time` and `DateTime` objects in all public methods that take times as
|
|
692
842
|
parameters.
|
|
693
843
|
* Tool to compare TZInfo conversions with output from zdump.
|
|
694
|
-
* TZDataParser zone generation algorithm rewritten. Now based on the zic code.
|
|
844
|
+
* `TZDataParser` zone generation algorithm rewritten. Now based on the zic code.
|
|
695
845
|
TZInfo is now 100% compatible with zic/zdump output.
|
|
696
846
|
* Riyadh Solar Time zones now included again (generation time has been reduced
|
|
697
|
-
with TZDataParser changes).
|
|
847
|
+
with `TZDataParser` changes).
|
|
698
848
|
* Use binary mode when writing zone and country files to get Unix (\n) new
|
|
699
849
|
lines.
|
|
700
850
|
* Omit unnecessary quotes in zone identifier symbols.
|
|
701
851
|
* Omit the final transition to DST if there is a prior transition in the last
|
|
702
852
|
year processed to standard time.
|
|
703
853
|
* Updated to tzdata version 2006c
|
|
704
|
-
(https://mm.icann.org/pipermail/tz/2006-April/013500.html).
|
|
854
|
+
(<https://mm.icann.org/pipermail/tz/2006-April/013500.html>).
|
|
705
855
|
|
|
706
856
|
|
|
707
|
-
Version 0.1.2 (tzdata v2006a) - 5-Feb-2006
|
|
708
|
-
------------------------------------------
|
|
857
|
+
## Version 0.1.2 (tzdata v2006a) - 5-Feb-2006
|
|
709
858
|
|
|
710
859
|
* Add lib directory to the load path when tzinfo is required. Makes it easier
|
|
711
|
-
to use tzinfo gem when unpacked to vendor directory in rails.
|
|
712
|
-
* Updated to tzdata version 2006a
|
|
713
|
-
(https://mm.icann.org/pipermail/tz/2006-January/013311.html).
|
|
714
|
-
* build_tz_classes rake task now handles running svn add and svn delete as new
|
|
715
|
-
|
|
716
|
-
* Return a better error when attempting to use a Timezone instance that was
|
|
717
|
-
constructed with Timezone.new(nil)
|
|
718
|
-
composed_of
|
|
719
|
-
to use the Timezone will now result in an UnknownTimezone
|
|
720
|
-
than a NameError
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
Version 0.1.1 (tzdata v2005q) - 18-Dec-2005
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
* Timezones that are defined by a single unbounded period (e.g. UTC) now
|
|
860
|
+
to use tzinfo gem when unpacked to vendor directory in rails.
|
|
861
|
+
* Updated to tzdata version 2006a
|
|
862
|
+
(<https://mm.icann.org/pipermail/tz/2006-January/013311.html>).
|
|
863
|
+
* `build_tz_classes` rake task now handles running svn add and svn delete as new
|
|
864
|
+
time zones and countries are added and old ones are removed.
|
|
865
|
+
* Return a better error when attempting to use a `Timezone` instance that was
|
|
866
|
+
constructed with `Timezone.new(nil)`. This will occur when using Rails'
|
|
867
|
+
`composed_of`. When the timezone identifier in the database is null,
|
|
868
|
+
attempting to use the `Timezone` will now result in an `UnknownTimezone`
|
|
869
|
+
exception rather than a `NameError`.
|
|
870
|
+
|
|
871
|
+
|
|
872
|
+
## Version 0.1.1 (tzdata v2005q) - 18-Dec-2005
|
|
873
|
+
|
|
874
|
+
* Time zones that are defined by a single unbounded period (e.g. UTC) now
|
|
727
875
|
work again.
|
|
728
876
|
* Updated to tzdata version 2005q.
|
|
729
877
|
|
|
730
878
|
|
|
731
|
-
Version 0.1.0 (tzdata v2005n) - 27-Nov-2005
|
|
732
|
-
-------------------------------------------
|
|
879
|
+
## Version 0.1.0 (tzdata v2005n) - 27-Nov-2005
|
|
733
880
|
|
|
734
|
-
* period_for_local and local_to_utc now allow resolution of ambiguous
|
|
735
|
-
times (e.g. when switching from daylight savings to standard time).
|
|
881
|
+
* `period_for_local` and `local_to_utc` now allow resolution of ambiguous
|
|
882
|
+
times (e.g. when switching from daylight savings to standard time).
|
|
736
883
|
The behaviour of these methods when faced with an ambiguous local time
|
|
737
884
|
has now changed. If you are using these methods you should check
|
|
738
885
|
the documentation. Thanks to Cliff Matthews for suggesting this change.
|
|
739
|
-
* Added require 'date' to timezone.rb (date isn't loaded by default in all
|
|
886
|
+
* Added `require 'date'` to `timezone.rb` (date isn't loaded by default in all
|
|
740
887
|
environments).
|
|
741
888
|
* Use rake to build packages and documentation.
|
|
742
889
|
* License file is now included in gem distribution.
|
|
743
890
|
* Dates in definitions stored as Astronomical Julian Day numbers rather than
|
|
744
|
-
as civil dates (improves performance creating DateTime instances).
|
|
745
|
-
* Added options to TZDataParser to allow generation of specific zones and
|
|
891
|
+
as civil dates (improves performance creating `DateTime` instances).
|
|
892
|
+
* Added options to `TZDataParser` to allow generation of specific zones and
|
|
746
893
|
countries.
|
|
747
|
-
* Moved TimezonePeriod class to timezone_period.rb
|
|
748
|
-
* New TimezonePeriodList class to store
|
|
749
|
-
perform searches for periods.
|
|
750
|
-
*
|
|
751
|
-
when they are needed. Thanks to Jamis Buck for the suggestion.
|
|
752
|
-
* Add options to TZDataParser to allow exclusion of specific zones and
|
|
894
|
+
* Moved `TimezonePeriod` class to `timezone_period.rb`.
|
|
895
|
+
* New `TimezonePeriodList` class to store `TimezonePeriod` instances for a
|
|
896
|
+
timezone and perform searches for periods.
|
|
897
|
+
* Time zones are now defined using blocks. `TimezonePeriod` instances are only
|
|
898
|
+
created when they are needed. Thanks to Jamis Buck for the suggestion.
|
|
899
|
+
* Add options to `TZDataParser` to allow exclusion of specific zones and
|
|
753
900
|
countries.
|
|
754
901
|
* Exclude the Riyadh Solar Time zones. The rules are only for 1987 to 1989 and
|
|
755
902
|
take a long time to generate and process. Riyadh Solar Time is no longer
|
|
756
903
|
observed.
|
|
757
|
-
* The last TimezonePeriod for each Timezone is now written out with an
|
|
904
|
+
* The last `TimezonePeriod` for each `Timezone` is now written out with an
|
|
758
905
|
unbounded rather than arbitrary end time.
|
|
759
|
-
* Construct the Rational offset in TimezonePeriod once when the
|
|
760
|
-
is constructed rather than each time it is needed.
|
|
761
|
-
* Timezone and Country now keep a cache of loaded instances to avoid running
|
|
762
|
-
require which can be slow on some platforms.
|
|
906
|
+
* Construct the `Rational` offset in `TimezonePeriod` once when the
|
|
907
|
+
`TimezonePeriod` is constructed rather than each time it is needed.
|
|
908
|
+
* `Timezone` and `Country` now keep a cache of loaded instances to avoid running
|
|
909
|
+
`require` which can be slow on some platforms.
|
|
763
910
|
* Updated to tzdata version 2005n.
|
|
764
911
|
|
|
765
912
|
|
|
766
|
-
Version 0.0.4 (tzdata v2005m) - 18-Sep-2005
|
|
767
|
-
-------------------------------------------
|
|
913
|
+
## Version 0.0.4 (tzdata v2005m) - 18-Sep-2005
|
|
768
914
|
|
|
769
915
|
* Removed debug output accidentally included in the previous release.
|
|
770
916
|
* Fixed a bug in the generation of friendly zone identifiers (was inserting
|
|
771
917
|
apostrophes into UTC, GMT, etc).
|
|
772
|
-
* Fixed Country
|
|
773
|
-
* Fixed Timezone.period_for_local error when period not found.
|
|
774
|
-
* Added
|
|
775
|
-
some selected
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
Version 0.0.3 (tzdata v2005m) - 17-Sep-2005
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
* Added name method to Timezone (returns the identifier).
|
|
783
|
-
* Added friendly_identifier method to Timezone
|
|
784
|
-
of the identifier.
|
|
785
|
-
* Added to_s method to Timezone
|
|
786
|
-
* Added
|
|
787
|
-
* Timezone now includes Comparable
|
|
788
|
-
* Added to_s method to Country
|
|
789
|
-
* Added
|
|
790
|
-
* Country now includes Comparable
|
|
791
|
-
* New TimezoneProxy class that behaves the same as a Timezone but doesn't
|
|
918
|
+
* Fixed `Country` `<=>` operator (was comparing non-existent attribute)
|
|
919
|
+
* Fixed `Timezone.period_for_local` error when period not found.
|
|
920
|
+
* Added test cases for `Timezone`, `TimezoneProxy`, `TimezonePeriod`, `Country`
|
|
921
|
+
and some selected time zones.
|
|
922
|
+
|
|
923
|
+
|
|
924
|
+
## Version 0.0.3 (tzdata v2005m) - 17-Sep-2005
|
|
925
|
+
|
|
926
|
+
* Reduced visibility of some methods added in `Timezone#setup` and
|
|
927
|
+
`Country#setup`.
|
|
928
|
+
* Added `name` method to `Timezone` (returns the identifier).
|
|
929
|
+
* Added `friendly_identifier` method to `Timezone`. Returns a more friendly
|
|
930
|
+
version of the identifier.
|
|
931
|
+
* Added `to_s` method to `Timezone`. Returns the friendly identifier.
|
|
932
|
+
* Added `==` and `<=>` operators to `Timezone` (compares identifiers).
|
|
933
|
+
* `Timezone` now includes `Comparable`.
|
|
934
|
+
* Added `to_s` method to `Country`.
|
|
935
|
+
* Added `==` and `<=>` operators to `Country` (compares ISO 3166 country codes).
|
|
936
|
+
* `Country` now includes `Comparable`.
|
|
937
|
+
* New `TimezoneProxy` class that behaves the same as a `Timezone` but doesn't
|
|
792
938
|
actually load in its definition until it is actually required.
|
|
793
|
-
* Modified Timezone and Country methods that return
|
|
794
|
-
TimezoneProxy instances instead. This makes these methods much
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
939
|
+
* Modified `Timezone` and `Country` methods that return `Timezone` instances to
|
|
940
|
+
return `TimezoneProxy` instances instead. This makes these methods much
|
|
941
|
+
quicker.
|
|
942
|
+
|
|
943
|
+
In Ruby on Rails, you can now show a drop-down list of all time zones using the
|
|
944
|
+
Rails `time_zone_select` helper method:
|
|
945
|
+
|
|
946
|
+
```ruby
|
|
947
|
+
<%= time_zone_select 'user', 'time_zone', TZInfo::Timezone.all.sort, :model => TZInfo::Timezone %>
|
|
948
|
+
```
|
|
949
|
+
|
|
950
|
+
|
|
951
|
+
## Version 0.0.2 (tzdata v2005m) - 13-Sep-2005
|
|
952
|
+
|
|
953
|
+
* `Country` and `Timezone` data is now loaded into class rather than instance
|
|
954
|
+
variables. This makes `Timezone` links more efficient and saves memory if
|
|
955
|
+
creating specific `Timezone` and `Country` classes directly.
|
|
956
|
+
* `TimezonePeriod` `zone_identifier` is now defined as a symbol to save memory
|
|
809
957
|
(was previously a string).
|
|
810
|
-
* TimezonePeriod
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
958
|
+
* `TimezonePeriod` `zone_identifier`s that were previously `''` are now
|
|
959
|
+
`:Unknown`.
|
|
960
|
+
* `Timezone` and `Country` instances can now be returned using
|
|
961
|
+
`Timezone.new(identifier)` and `Country.new(identifier)`. When passed an
|
|
962
|
+
identifier, the `new` method calls `get` to return an instance of the
|
|
963
|
+
specified timezone or country.
|
|
964
|
+
* Added new class methods to `Timezone` to return sets of zones and identifiers.
|
|
815
965
|
|
|
816
966
|
Thanks to Scott Barron of Lunchbox Software for the suggestions in his
|
|
817
|
-
article about using TZInfo with Rails
|
|
818
|
-
(https://web.archive.org/web/20060425190845/http://lunchroom.lunchboxsoftware.com/pages/tzinfo_rails)
|
|
967
|
+
article about using TZInfo with Rails
|
|
968
|
+
(<https://web.archive.org/web/20060425190845/http://lunchroom.lunchboxsoftware.com/pages/tzinfo_rails>)
|
|
819
969
|
|
|
820
970
|
|
|
821
|
-
Version 0.0.1 (tzdata v2005m) - 29-Aug-2005
|
|
822
|
-
-------------------------------------------
|
|
971
|
+
## Version 0.0.1 (tzdata v2005m) - 29-Aug-2005
|
|
823
972
|
|
|
824
973
|
* First release.
|