[TZInfo-announce] TZInfo v0.3.0 Released

Philip Ross philip at ross.org.uk
Mon Jul 17 16:39:45 EDT 2006

TZInfo version 0.3.0 has been released (based on version 2006g of the 
underlying tz data).

Gem, zip and tar.gz files can be found at 
http://rubyforge.org/frs/?group_id=894. You can use 'gem update' to 
upgrade if you already have the tzinfo gem installed.

Changes in this release:

* 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 by Timezone.get are no longer instances of data 
classes, but are instead instances of new DataTimezone and 
LinkedTimezone classes.

* Timezone instances can now be used with Marshal.dump and Marshal.load. 

* Added a Timezone.get_proxy method that returns a TimezoneProxy 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 with Marshal.dump and Marshal.load. 

* Country has a new zone_info method that returns CountryTimezone 
objects containing additional information (latitude, longitude and a 
description) relating to each Timezone. #4140.

* Timezones 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 on Country and Timezone that is equivalent to ==.

* == method of Timezone no longer raises an exception when passed an 
object with no identifier method.

* == method of Country no longer raises an exception when passed an 
object with no code method.

* hash method defined on Country that returns the hash of the code.

* hash method defined on Timezone 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 and Timezone.all_identifiers now return all the 
Timezones/identifiers rather than just those associated with countries. 

* Added all_data_zones, all_data_zone_identifiers, all_linked_zones and 
all_linked_zone_identifiers class methods to Timezone.

* Added a strftime method to Timezone 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 timezones within countries.

Philip Ross
http://tzinfo.rubyforge.org/ -- DST-aware timezone library for Ruby

More information about the TZInfo-announce mailing list