Releases: tzinfo/tzinfo
Releases · tzinfo/tzinfo
v0.3.4
- Updated to tzdata version 2007g (https://mm.icann.org/pipermail/tz/2007-August/014499.html).
v0.3.3
- Updated to tzdata version 2006p (https://mm.icann.org/pipermail/tz/2006-November/013999.html).
v0.3.2
- Updated to tzdata version 2006n (https://mm.icann.org/pipermail/tz/2006-October/013911.html). Note that this release of tzdata removes the country Serbia and Montenegro (CS) and replaces it with separate Serbia (RS) and Montenegro (ME) entries.
v0.3.1
- Remove colon from case statements to avoid warning in Ruby 1.8.5. #5198.
- Use temporary variable to avoid dynamic string warning from rdoc.
- Updated to tzdata version 2006j (https://mm.icann.org/pipermail/tz/2006-August/013767.html).
v0.3.0
- New timezone data format. Timezone data now occupies less space on disk and takes less memory once loaded. #4142, #4144.
- Timezone data is defined in modules rather than classes.
Timezone
instances returned byTimezone.get
are no longer instances of data classes, but are instead instances of newDataTimezone
andLinkedTimezone
classes. Timezone
instances can now be used withMarshal.dump
andMarshal.load
. #4240.- Added a
Timezone.get_proxy
method that returns aTimezoneProxy
object for a given identifier. - Country index data is now defined in a single module that is independent of the
Country
class implementation. Country
instances can now be used withMarshal.dump
andMarshal.load
. #4240.Country
has a newzone_info
method that returnsCountryTimezone
objects containing additional information (latitude, longitude and a description) relating to eachTimezone
. #4140.- Time zones within a
Country
are now returned in an order that makes geographic sense. - The zdumptest utility now checks local to utc conversions in addition to utc to local conversions.
eql?
method defined onCountry
andTimezone
that is equivalent to==
.==
method ofTimezone
no longer raises an exception when passed an object with no identifier method.==
method ofCountry
no longer raises an exception when passed an object with no code method.hash
method defined onCountry
that returns the hash of the code.hash
method defined onTimezone
that returns the hash of the identifier.- Miscellaneous API documentation corrections and improvements.
- Timezone definition and indexes are now excluded from rdoc (the contents were previously ignored with
#:nodoc:
anyway). - Removed no longer needed
#:nodoc:
directives from timezone data files (which are now excluded from the rdoc build). - Installation of the gem now causes rdoc API documentation to be generated. #4905.
- When optimizing transitions to generate zone definitions, check the UTC and standard offsets separately rather than just the total offset to UTC. Fixes an incorrect abbreviation issue with Europe/London, Europe/Dublin and Pacific/Auckland.
- Eliminated unnecessary
.nil?
calls to give a minor performance gain. Timezone.all
andTimezone.all_identifiers
now return all theTimezone
instances/identifiers rather than just those associated with countries. #4146.- Added
all_data_zones
,all_data_zone_identifiers
,all_linked_zones
andall_linked_zone_identifiers
class methods toTimezone
. - Added a
strftime
method toTimezone
that converts a time in UTC to local time and then returns it formatted.%Z
is replaced with the timezone abbreviation for the given time (for example, EST or EDT). #4143. - Fix escaping of quotes in
TZDataParser
. This affected country names and descriptions of time zones within countries.
v0.2.2
- Use class-scoped instance variables to store the Timezone identifier and singleton instance. Loading a linked zone no longer causes the parent zone's identifier to be changed. The instance method of a linked zone class also now returns an instance of the linked zone class rather than the parent class. Closes #4502.
- The zdumptest utility now compares the TZInfo zone identifier with the zdump zone identifier.
- The zdumptestall utility now exits if not supplied with enough parameters.
- Updated to tzdata version 2006g (https://mm.icann.org/pipermail/tz/2006-May/013590.html).
v0.2.1
- Fix a performance issue caused in 0.2.0 with
Timezone.local_to_utc
. Conversions performed onTimeOrDateTime
instances passed to<=>
are now cached as originally intended. Thanks to Michael Smedberg for spotting this. - Fix a performance issue with the
local_to_utc
period search algorithm originally implemented in 0.1.0. The condition that was supposed to cause the search to terminate when enough periods had been found was only being evaluated in a small subset of cases. Thanks to Michael Smedberg and Jamis Buck for reporting this. - Added abbreviation as an alias for
TimezonePeriod.zone_identifier
. - Updated to tzdata version 2006d (https://mm.icann.org/pipermail/tz/2006-April/013517.html).
- Ignore any offset in
DateTime
instances passed in (as is already done forTime
instances). All of the following now refer to the same UTC time (15:40 on 17 April 2006). Previously, theDateTime
in the second line would have been interpreted as 20:40.
tz.utc_to_local(DateTime.new(2006, 4, 17, 15, 40, 0))
tz.utc_to_local(DateTime.new(2006, 4, 17, 15, 40, 0).new_offset(Rational(5, 24)))
tz.utc_to_local(Time.utc(2006, 4, 17, 15, 40, 0))
tz.utc_to_local(Time.local(2006, 4, 17, 15, 40, 0))
v0.2.0
- Use timestamps rather than
DateTime
objects in zone files for times between 1970 and 2037 (the range ofTime
). - Don't convert passed in
Time
objects toDateTime
in most cases (provides a substantial performance improvement). - Allow integer timestamps (time in seconds since 1970-1-1) to be used as well as
Time
andDateTime
objects in all public methods that take times as parameters. - Tool to compare TZInfo conversions with output from zdump.
TZDataParser
zone generation algorithm rewritten. Now based on the zic code. TZInfo is now 100% compatible with zic/zdump output.- Riyadh Solar Time zones now included again (generation time has been reduced with
TZDataParser
changes). - Use binary mode when writing zone and country files to get Unix (\n) new lines.
- Omit unnecessary quotes in zone identifier symbols.
- Omit the final transition to DST if there is a prior transition in the last year processed to standard time.
- Updated to tzdata version 2006c (https://mm.icann.org/pipermail/tz/2006-April/013500.html).
v0.1.2
- Add lib directory to the load path when tzinfo is required. Makes it easier to use tzinfo gem when unpacked to vendor directory in rails.
- Updated to tzdata version 2006a (https://mm.icann.org/pipermail/tz/2006-January/013311.html).
build_tz_classes
rake task now handles running svn add and svn delete as new time zones and countries are added and old ones are removed.- Return a better error when attempting to use a
Timezone
instance that was constructed withTimezone.new(nil)
. This will occur when using Rails'composed_of
. When the timezone identifier in the database is null, attempting to use theTimezone
will now result in anUnknownTimezone
exception rather than aNameError
.
v0.1.1
- Time zones that are defined by a single unbounded period (e.g. UTC) now work again.
- Updated to tzdata version 2005q.