Date::M...::TZdata(3)

✨ Date::M...::TZdata β€” the manual, but make it cute πŸ’–

okay bestie, gather round, because this is the user-contributed Perl documentation for Date::M...::TZdata(3), aka the little gremlin module that lives inside Date::Manip and does the time zone database wrangling. it's giving "backstage pass, not the main stage" πŸŽ€


🌸 NAME 🌸

Date::Manip::TZdata β€” an internal module for working with the tzdata files. that's it, that's the name, no notes πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

use Date::Manip::TZdata;

$tzd  = new Date::Manip::TZdata($dir);

look at that. two lines. iconic. ✨


πŸ’œ DESCRIPTION πŸ’œ

this module is not intended for public use. like, at all. it's the behind-the-scenes crew 🫢 β€” it gets used internally by the scripts that analyze the time zone database and generate the modules for each time zone. the module is included in the distribution solely for the sake of completeness, which is such a vibe honestly.

currently, no support is offered for this module, and it can (and may) change without notice. no cap. it will simply do that. 😭

so what actually is it? this module consists of routines for working with the tzdata files. those files get updated several times a year and they're the basis for time zone descriptions for most computer systems. so yeah, lowkey important, highkey unserious about it 🌈


πŸŽ€ ROUTINES πŸŽ€

🌟 new

use Date::Manip::TZdata;

$tzd  = new Date::Manip::TZdata($dir);

this one finds and reads in all the tzdata. obsessed. 🫢

  • if $dir is passed in, it's the directory where a tzdata directory is located.
  • it defaults to the current directory.

that's the whole routine. short king πŸ‘‘


🧚 KNOWN LIMITATIONS 🧚

some assumptions and limitations are baked into the logic of this module, bestie. let's go through them πŸ’€

when a time change occurs, the time may change backwards or forwards. time changes rules are listed on a per-year basis. it is assumed that time changes will not occur so close to the end or start of the year as to cross the year boundary β€” in other words, the year will not change as a result of the time change. this is not accounted for, and it is hoped that this situation will never occur πŸ™ˆ (praying hands fr fr)

also β€” and this is the big one β€” because this module is strictly limited to 4 digit positive years (regardless of whether it's wall clock or universal time), and because various parts of the module switch back and forth, valid times for this module are from Jan 2, 0001 to Dec 30, 9999. this ensures that conversions from wall clock to universal or vice versa will never make dates occur in the year 0000 or 10000. periodt. πŸ’…


πŸ’€ KNOWN BUGS πŸ’€

none known. not a single one. the vibe check passed βœ…πŸ‘‘


πŸ“ BUGS AND QUESTIONS πŸ“

please refer to the Date::Manip man page for information on submitting bug reports or questions to the author. that's where the whole process lives, iykyk 🫢


πŸ‘‘ AUTHOR πŸ‘‘

Sullivan Beck (https://github.com/SBECK-github/) β€” the main character who built all this ✨🌸


and that's a wrap, bestie! this page was brought to you by perl v5.42.3, dated 2026-09-01, filed under Date::M...::TZdata(3) in the User Contributed Perl Documentation section. slay, stay hydrated, and don't use internal modules in prod πŸ’–πŸ¦‹πŸŽ€

πŸ“¦ where this page comes from