timezone-series: Enhanced timezone handling for Data.Time

[ bsd3, data, library ] [ Propose Tags ]

This package endows Data.Time, from the time package, with several data types and functions for enhanced processing of timezones. For one way to create timezone series, see the timezone-olson package.

[Skip to Readme]
Versions [RSS] [faq] 0.1.0, 0.1.1, 0.1.2, 0.1.3, 0.1.4, 0.1.5,, 0.1.6,, 0.1.8, 0.1.9, 0.1.13 (info)
Dependencies base (>=3.0 && <5), time (>=1.1.4 && <1.3) [details]
License BSD-3-Clause
Copyright Copyright (c) 2010 Yitzchak Gale. All rights reserved.
Author Yitzchak Gale
Maintainer yitz@community.haskell.org
Category Data
Home page http://projects.haskell.org/time-ng/
Uploaded by YitzGale at 2010-08-25T21:03:39Z
Distributions Arch:0.1.9, FreeBSD:, LTSHaskell:0.1.13, NixOS:0.1.9, Stackage:0.1.13, openSUSE:0.1.9
Downloads 18453 total (350 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs uploaded by user
Build status unknown [no reports yet]




Maintainer's Corner

For package maintainers and hackage trustees


Readme for timezone-series-0.1.1

[back to package description]
timezone-series version 0.1.0

This package endows Data.Time, from the time package, with several
additional data types for enhanced processing of timezones.

A TimeZoneSeries represents a timezone. It describes the timezone with
a set of Data.Time.TimeZone objects, each describing the clock setting
in the timezone for a specific period of history during which the
clocks do not change.  The TimeZoneSeries as a whole describes what
clock setting was in effect in the timezone at any given time during
the period it covers.

A ZoneSeriesTime is a moment in time within a specific timezone.  It
is different than a Data.Time.ZonedTime in that a ZonedTime specifies
a moment in time for a specific way that the clocks were set in a
timezone. It is the responsibilty of the creator of a ZonedTime to
verify that given clock setting was actually in effect at the given
moment in time. A ZonedTime for one moment in time cannot be used
reliably on its own to create another ZonedTime for a different moment
in the same timezone - information is needed about what clock setting
was in effect in the timezone at the new moment.

This package also provides variants for the functions in Data.Time
that convert between UTC time and local time. These variants take
a TimeZoneSeries, representing a timezone, not just a specific
clock setting with the timezone, so the correctness of their results
does not depend on independent knowledge of what clock setting
was in effect at the given time.

Most operating systems provide information about timezone series for
the local timezone and for many other timezones of the world.  On MS
Windows systems, this information can be read from the registry. On
other systems, this information is typically provided in the form of
Olson timezone files: /etc/localtime (or some other file) for the
local timezone, and files located in /usr/share/zoneinfo/ or
/etc/zoneinfo/ (or some other directory) for other timezones.
See the timezone-olson package for more information about reading
and creating Olson timezone files.

This version of timezone-series is highly experimental.  Expect there
to be bugs, and do not rely on any stability of the exposed

Copyright (c) 2010 Yitzchak Gale. All rights reserved.
For licensing information, see the BSD3-style license in the file
LICENSE that was originally distributed by the author together with
this file.

This package is part of the time-ng project:

Send suggestions, bug reports, and patches to:


To install the latest version of this package, make sure that
cabal-install is installed on your system (it is if you have installed
the Haskell Platform) and type the commands:

cabal update
cabal install timezone-series