.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.28) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{ . if \nF \{ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "Date::Manip::Changes6 3pm" .TH Date::Manip::Changes6 3pm "2014-09-14" "perl v5.20.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Date::Manip::Changes6 \- changes in Date::Manip 6.xx .SH "SYNOPSIS" .IX Header "SYNOPSIS" This describes the changes made to the Date::Manip module in the 6.xx series of releases. Major changes are marked with asterisks (*). .PP For the most part, Date::Manip has remained backward compatible at every release, but occasionally, a change is made which is backward incompatible. These are marked with an exclamation mark (!). .SH "VERSION 6.48 (planned 2014\-12\-01)" .IX Header "VERSION 6.48 (planned 2014-12-01)" .SH "VERSION 6.47 2014\-09\-01)" .IX Header "VERSION 6.47 2014-09-01)" .IP "Time zone fixes" 5 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2014f) .IP "Language fixes" 5 .IX Item "Language fixes" Fixed some encoding errors in the language pod documentation. .SH "VERSION 6.46 2014\-07\-08" .IX Header "VERSION 6.46 2014-07-08" .IP "Broken distribution" 4 .IX Item "Broken distribution" The distribution contained an temporary edit file that caused problems. \&\s-1RT 96459\s0 .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2014e) .IP "Language fixes" 4 .IX Item "Language fixes" Added some plural abbreviations that were missing. \s-1RT 96944\s0 .SH "VERSION 6.45 2014\-06\-05" .IX Header "VERSION 6.45 2014-06-05" .IP "Fixed a test" 4 .IX Item "Fixed a test" One test was failing (reported in \s-1RT 96249\s0 as well as several \s-1CPAN\s0 Tester reports). .SH "VERSION 6.44 2014\-06\-01" .IX Header "VERSION 6.44 2014-06-01" .IP "\fB(*) Improvements to \s-1UTF8\s0 handling\fR" 4 .IX Item "(*) Improvements to UTF8 handling" A number of changes based on \s-1RT 93545\s0 and other discussion with Yuri Nikulin including: .Sp Case insensitive matching of \s-1UTF8\s0 strings should work all the time. .Sp Fixed two significant bugs in regexps for parsing dates. .Sp Improvements to \s-1UTF8\s0 handling. .Sp Corrected some problems with Russian and added the cp1251 encoding. .Sp One correction to Romanian. .Sp Added several new test scripts. .Sp Preliminary patches were supplied by Yuri. .IP "New features" 4 .IX Item "New features" Modified the parse_format function to return %+ if desired. Mike Cappella .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2014c) .IP "Documentation fixes" 4 .IX Item "Documentation fixes" Clarified some \s-1DM6\s0 functions. David Close. .Sp Fixed a typo. \s-1RT 95619\s0 .SH "VERSION 6.43 (2014\-03\-03)" .IX Header "VERSION 6.43 (2014-03-03)" .IP "Several changes to distribution files" 4 .IX Item "Several changes to distribution files" I made several changes to Build.PL, Makefile.PL, \s-1META\s0.yml in order to improve the quality (or kwalitee) of the module. None of these should impact anyone using the module. .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2013i) .IP "Documentation fixes" 4 .IX Item "Documentation fixes" Cleaned up some of the Recur documentation. Suggested by \s-1RT 92794\s0 .SH "VERSION 6.42 (2013\-12\-02)" .IX Header "VERSION 6.42 (2013-12-02)" .IP "Added ParseDateFormat function" 4 .IX Item "Added ParseDateFormat function" Added the ParseDateFormat function to the \s-1DM6\s0 functional interface in response to \s-1RT 89286.\s0 .IP "Added Common Log format" 4 .IX Item "Added Common Log format" Added the date format used in apache logs: 11/Oct/2000:13:55:36 \-0700 \&\s-1RT 89286.\s0 .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2013h) .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed a bug where dates of the form of a delta with a timezone attached (i.e. \*(L"1 day ago at midnight \s-1UTC\*(R"\s0) failed. \s-1RT 89256\s0 .Sp Fixed a bug where events handling gave a warning if there were no events that applied. \s-1RT 90344\s0 .SH "VERSION 6.41 (2013\-09\-05)" .IX Header "VERSION 6.41 (2013-09-05)" .IP "Bug fixes" 4 .IX Item "Bug fixes" Removed a .swp file accidentally left in the package. \s-1RT 85845\s0 .Sp Fixed a bug in parse_format where times between 00:00:00 and 01:00:00 weren't parsed correctly. Ole Nomann Thomsen .Sp Fixed generated \s-1META\s0.* files to not require Module::Build 0.39. \s-1RT 86137\s0 .Sp Fixed a bug where parse_format did not work with a '%s' format. \s-1RT 87498\s0 .Sp Fixed a bug where find_encoding wasn't imported from the Encode module. \s-1RT 87665\s0 .Sp Fixed a bug where recurrences with no interval did not work if a start and end date were specified, and no dates fell in that range. Jan Pradac .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2013d) .SH "VERSION 6.40 (2013\-06\-01)" .IX Header "VERSION 6.40 (2013-06-01)" .IP "Removed PODs" 4 .IX Item "Removed PODs" \&\s-1POD\s0 documentation is no longer generated for Date::Manip::TZ::* and Date::Manip::Offset::* modules. .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2013c) .SH "VERSION 6.39 (2013\-03\-01)" .IX Header "VERSION 6.39 (2013-03-01)" .ie n .IP "Added the $mode argument to ParseDateDelta" 4 .el .IP "Added the \f(CW$mode\fR argument to ParseDateDelta" 4 .IX Item "Added the $mode argument to ParseDateDelta" The ParseDateDelta function (in functional interface) did not allow you to force a parsed delta to semi or approx where appropriate. This was added. Based on \s-1RT 82991\s0). .IP "Added get_config method" 4 .IX Item "Added get_config method" The get_config method was added to all classes. Suggested by Philippe Poilbarbe. .IP "Language fixes" 4 .IX Item "Language fixes" Fixed a German language problem. Gosta Oelstrom .IP "Documentation fixes" 4 .IX Item "Documentation fixes" Documented workaround for dmake problem in strawberry perl. Discussed on perlmonks and \s-1RT 79837.\s0 .Sp Clarified the Examples page. Winston Heng .SH "VERSION 6.38 (2013\-01\-08)" .IX Header "VERSION 6.38 (2013-01-08)" .IP "\fB(*) Tar file format corrected\fR" 4 .IX Item "(*) Tar file format corrected" Problems were reported on several OSes by people unable to install Date::Manip (and other modules). It turns out that the version of tar distributed by my linux distro (OpenSuSE) uses the 'posix' format instead of the traditional \&'gnu' format by default. This causes problems for some versions of tar. I have had reports from \s-1OSX,\s0 Windows, and SunOS. Future versions of Date::Manip will be explicitly distributed in the 'gnu' tar archive format. .Sp Reported by Jay Allen and \s-1RT 80594.\s0 .IP "\fB(*) Date::Manip 5.xx end-of-life\fR" 4 .IX Item "(*) Date::Manip 5.xx end-of-life" Date::Manip 5.xx is now officially out of support. I will not be doing any further work on it. The only exception is that I will consider adding user supplied patches on a case-by-case basis. .Sp If at all possible, please use Date::Manip 6.xx instead. .IP "\fB(!) Removed some deprecated config variables\fR" 4 .IX Item "(!) Removed some deprecated config variables" The following config variables have been removed. .Sp .Vb 2 \& IntCharSet \& RecurNumFudgeDays .Ve .SH "VERSION 6.37 (2012\-12\-01)" .IX Header "VERSION 6.37 (2012-12-01)" .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed a bug where \s-1ISO 8601\s0 format YYYY-WXX-D didn't work if the week ended up in December. Gordon Lugauer. .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2012j) .IP "Documentation fixes" 4 .IX Item "Documentation fixes" Spelling error fixed. \s-1RT 80621\s0 .SH "VERSION 6.36 (2012\-10\-31)" .IX Header "VERSION 6.36 (2012-10-31)" This was an interim release to fix the version numbers (6.35 was released with all of the version numbers 6.34). .SH "VERSION 6.35 (2012\-10\-31)" .IX Header "VERSION 6.35 (2012-10-31)" This was an interim release to fix the problem with the \s-1PATH\s0 being replaced. .IP "Removed dependency on \s-1YAML\s0" 4 .IX Item "Removed dependency on YAML" I've reverted the language data files to perl literals instead of \s-1YAML. \s0 Though not quite as easy to maintain, it solves a few problems. Patch provided by Christopher Madsen. .IP "Bug fixes" 4 .IX Item "Bug fixes" Last versions fix for \s-1RT 78566\s0 overrode the \s-1PATH\s0 even when that wasn't appropriate. This is fixed. Report and patch supplied by \s-1RT 80435.\s0 .SH "VERSION 6.34 (2012\-09\-04)" .IX Header "VERSION 6.34 (2012-09-04)" This is a bug fix so that the \s-1PATH\s0 won't break non-unix installs. .IP "Bug fixes" 4 .IX Item "Bug fixes" Put the \s-1PATH\s0 inside the Unix section so it doesn't affect non-unix environments. Geoff Rowell .SH "VERSION 6.33 (2012\-09\-01)" .IX Header "VERSION 6.33 (2012-09-01)" .IP "Improvements to Date::Manip::Delta" 5 .IX Item "Improvements to Date::Manip::Delta" Added convert method. This had been planned since 6.30, but based on a discussion with Henrique Martins, I moved it up in priority. .Sp Cleaned up handling of delta field lengths (they are now only calculated once. .Sp Added cmp method. Henrique Martins .IP "Bug fixes" 5 .IX Item "Bug fixes" The language modules read from the \s-1DATA\s0 section, but I never closed the filehandle. This is fixed now. Patch by Doru Theodor Petrescu .Sp Added better loading of \s-1DM5/DM6\s0 modules. \s-1RT 78512\s0 .Sp Added a secure \s-1PATH\s0 to \s-1TZ\s0.pm for taint reasons. In response to \s-1RT 78566\s0 .IP "Time zone fixes" 5 .IX Item "Time zone fixes" Now supports timezones in files with spaces where there should be underscores. This occurs in \s-1RHEL\s0 desktop. \s-1RT 78566\s0 .Sp Newest zoneinfo data (tzdata 2012e) .IP "Documentation fixes" 5 .IX Item "Documentation fixes" Minor fix. Henrique Martins .SH "VERSION 6.32 (2012\-06\-01)" .IX Header "VERSION 6.32 (2012-06-01)" .IP "Modified Build.PL" 4 .IX Item "Modified Build.PL" Build.PL now has better support for building (or not building) \s-1HTML\s0 files. Apparently this is slow on Windows. Patch provide in \s-1RT 75118.\s0 .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed a bug in business day calculations. \s-1RT 76336\s0 .Sp Fixed a bug where Delta/Recur objects weren't correctly created. Zsban Ambrus .Sp Fixed a bug where SetDate/ForceDate config variables could not be included in a file. Jerry Wilcox .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2012c). .IP "Documentation fixes" 4 .IX Item "Documentation fixes" Better support for \s-1UTF\-8\s0 in autogenerated language module pod files. .SH "VERSION 6.31 (2012\-03\-01)" .IX Header "VERSION 6.31 (2012-03-01)" .IP "Added extended formats to printf method." 4 .IX Item "Added extended formats to printf method." These include the %, %, %, %, %, %, and % formats. Chris Jackson .IP "Can now parse formats where the time and zone are not adjacent" 4 .IX Item "Can now parse formats where the time and zone are not adjacent" A string like 'Jan 21 17:13:27 2010 \-0400' can now be parsed. Requested on perlmonks ('Can Date::Manip parse a unix timestamp' thread). .IP "Added PeriodTimeSep config variable." 4 .IX Item "Added PeriodTimeSep config variable." This allows you to use a period as a time separator. Ed Avis .IP "Holidays can be used as date strings" 4 .IX Item "Holidays can be used as date strings" You can now parse a holiday name in the Date::Manip::Date::parse method. For example, parse('Christmas'). Requested by Abigail. .IP "Added new recur modifiers" 4 .IX Item "Added new recur modifiers" Added WDn, \s-1IBD,\s0 and \s-1NBD\s0 modifiers. .IP "Added a new date format" 4 .IX Item "Added a new date format" You can now parse '2nd day in May' formats. Randy Harmon .IP "More flexibility in parsing timezones with both offset and abbrev" 4 .IX Item "More flexibility in parsing timezones with both offset and abbrev" If you include both the offset and abbreviation in the timezone portion of a date, the parenthesis around the abbreviation are now optional, so you can parse both: .Sp .Vb 2 \& \-04:00 (EDT) \& \-04:00 EDT .Ve .Sp Requested by Steven Melendez. .IP "Deltas now support fractional values." 4 .IX Item "Deltas now support fractional values." You can now use a delta of 1.5 days. \s-1RT 42699\s0 .IP "Multiple holidays supported" 4 .IX Item "Multiple holidays supported" A date may now have multiple holidays. Keith Minkler .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed a bug where abbreviations were not being examined case insensitively. Jurgen Muck .Sp The Holidays section may be safely split across multiple config files. A bug prevented this from working before. .IP "Language fixes" 4 .IX Item "Language fixes" The Norwegian translation was broken due to a typo in the language module. .Sp Included complete documentation for each language. .Sp Fixed a couple problems with Danish. Nicholas Oxhaj .Sp Added Finnish (from a \s-1VERY\s0 old mail that I overlooked somehow). Iikka Virkkunen .Sp Cleaned up the values used by printf directives to give the expected result. .IP "Documentation fixes" 4 .IX Item "Documentation fixes" Fixed a typo. Nicholas Bamber .SH "VERSION 6.30 (2012\-01\-11)" .IX Header "VERSION 6.30 (2012-01-11)" .IP "\fB(*) (!) Reworked deltas\fR" 4 .IX Item "(*) (!) Reworked deltas" Much of the delta code was reworked. .Sp The constraint that a day is treated as 24 hours was removed (by adding the concept of semi-exact deltas) to better handle daylight saving time calculations. .Sp Made cosmetic changes to which signs will be included in a delta to make the deltas more readable. Signs which are the same as the next higher field will be omitted, even if they cross set boundaries. .Sp Added support for non-normalized deltas. See the \f(CW$no_normalize\fR option for the parse and set methods. .Sp Removed limitations on subtract=2 not working with business calculations. .Sp Thanks to discussion on perlmonks, and \s-1RT 65774\s0 that prompted me to do this. I'd been wanting to do it for some time, but the discussion on perlmonks made me realize that this needed to be much higher priority. .IP "\fB(!) Modified Delta_Format\fR" 4 .IX Item "(!) Modified Delta_Format" In conjunction with the above work, added the 'semi' mode to Delta_Format. .IP "\fB(!) Removed some deprecated config variables\fR" 4 .IX Item "(!) Removed some deprecated config variables" The following config variables have been removed. .Sp .Vb 5 \& GlobalCnf \& IgnoreGlobalCnf \& PersonalCnf \& PersonalCnfPath \& PathSep \& \& Internal \& DeltaSigns \& UpdateCurrTZ \& ConvTZ \& OldConfigFiles \& ResetWorkDay .Ve .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2011n). \s-1RT 71595\s0 .Sp Corrects a bug where +0000 and \-0000 offsets were not parsed correctly. Aaron Hall .Sp The zoneinfo data includes rules more than 20 years in the future, so we now store 30 years of future dates instead of 20 to catch these rules. .Sp When parsing the timezone portion of the date, timezone abbreviations now take higher precedence than zone names (since that is how timezone information is typically specified). That only impacts dates where the a timezone name is the same as an abbreviation, such as '\s-1CET\s0'. .Sp Previously, a date with \s-1CET\s0 in it was interpreted as in the \s-1CET\s0 timezone. Now it is interpreted as in a timezone with the \s-1CET\s0 abbreviation. .IP "Better handling of undef in \s-1DM6\s0" 4 .IX Item "Better handling of undef in DM6" The date/delta parsing routines in \s-1DM6\s0 will now handle an undef argument without issuing a warning. Earl C. Ruby \s-1III\s0 .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed a bug with the parse_format \f(CW%f\fR and \f(CW%i\fR formats. Tommi Rintala .Sp Fixed a bug where the Date::Manip::Delta::set function didn't work to set the month value. .Sp Fixed a bug where parsing some dates near during a \s-1DST\s0 change failed. .Sp Minor bug fix when using Delta_Format. Prompted while investigating \&\s-1RT 41095.\s0 .SH "VERSION 6.25 (2011\-08\-31)" .IX Header "VERSION 6.25 (2011-08-31)" .IP "Relaxed one constraint in \s-1ISO 8601\s0 dates" 4 .IX Item "Relaxed one constraint in ISO 8601 dates" A time separated by whitespace from the date can use a single digit hour. Yuming Philip Xiang .IP "\fB(*) Set official removal dates for old config variables\fR" 4 .IX Item "(*) Set official removal dates for old config variables" Config variables will be removed 2 years after they are deprecated (except for the \s-1TZ\s0 variable which, due to it's wide use, will be kept for 4 years). .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2011i) .SH "VERSION 6.24 (2011\-06\-13)" .IX Header "VERSION 6.24 (2011-06-13)" .IP "New features" 4 .IX Item "New features" Spaces are ignored in the SetDate/ForceDate config values. Zsban Ambrus .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed a bug where 'in one week' wasn't correctly parsed. E. M. Shtern .Sp Fixed a bug where options passed in to the 'new' as a listref weren't handled properly. Zsban Ambrus .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2011g) .SH "VERSION 6.23 (2011\-04\-15)" .IX Header "VERSION 6.23 (2011-04-15)" .IP "\fB(!) Renamed one Date::Manip::Recur method\fR" 4 .IX Item "(!) Renamed one Date::Manip::Recur method" The Date::Manip::Recur::base method has been renamed to basedate . The Date::Manip::Recur::base method should return the Date::Manip::Base object like all the other Date::Manip modules. .IP "\fB(*) Reworked holidays defined as recurrences\fR" 4 .IX Item "(*) Reworked holidays defined as recurrences" Improved dealing with the bootstrap problem of defining holidays, especially those that contain business day flags. Mike Tonks .IP "New features" 4 .IX Item "New features" The printf function will now take multiple format strings and return a list of values. Zsban Ambrus .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed a bug where GlobalCnf wasn't working. Peter Edwards .Sp Improved error messages in a few cases. .Sp Fixed a bug where one invalid date/timezone check was ignored. Morten Bjornsvik .Sp Fixed a bug where '$base2 = new Date::Manip::Base \f(CW$base1\fR' wasn't working. \s-1RT 67143\s0 .Sp Fixed a bug where passing dates in to the Recur\->dates method failed. \s-1RT 67144\s0 .Sp Fixed a bug where the mode wasn't being preserved correctly for a delta. \s-1RT 67150\s0 .Sp Fixed a bug in recurrences where a base date outside of a date range with a very uncommon recurrence format would not work correctly. .Sp Fixed a problem where the '%s' printf option didn't work in \s-1GMT.\s0 Jean-Michel Hiver .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2011f) .IP "Documentation fixes" 4 .IX Item "Documentation fixes" Fixed two bad recurrence examples in the documentation. Peter Edwards and Mike Tonks .SH "VERSION 6.22 (2011\-03\-07)" .IX Header "VERSION 6.22 (2011-03-07)" .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2011b) .Sp Fixed a bug where the gmtoff method of getting the local timezone was broken. Martin Zinser. .Sp Fixed the 'env' method of determining the local time zone to allow the value to be an offset of seconds since \s-1UTC. \s0 This allows the \s-1VMS SYS$TIMEZONE_DIFFERENTIAL\s0 variable to work correctly. Martin Zinser. .Sp Removed the \s-1SYS$TIMEZONE_RULE\s0 method from \s-1VMS\s0 since the value stored there is not the name of a timezone (it's a rule in a non-standard format). Based on discussion with Martin Zinser. .Sp Improved the order in which aliases, abbreviations, etc., are tested to test current usage before non-current usage (there were a few cases where old usages were getting tested before current usage. .IP "Language fixes" 4 .IX Item "Language fixes" The module will now die if a language module cannot be loaded (most likely due to a YAML::Syck issue). Based on discussion with Martin Zinser. .IP "Documentation fixes" 4 .IX Item "Documentation fixes" Added a sample config file document. Based on discussion with Rich Duzenbury. .SH "VERSION 6.21 (2011\-01\-10)" .IX Header "VERSION 6.21 (2011-01-10)" .IP "New features" 4 .IX Item "New features" Deltas may now contain spelled out numbers, so 'in 2 weeks' and 'in two weeks' will both work. Daniel Shahaf .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed a bug where week_of_year didn't work in some cases. Chris Eveland. .Sp Fixed a minor potential bug. Geraint Edwards. .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Updated windows time zone aliases. Daniel Harding .IP "Language fixes" 4 .IX Item "Language fixes" Added Norwegian. Glenn Sogn .SH "VERSION 6.20 (2010\-12\-01)" .IX Header "VERSION 6.20 (2010-12-01)" .IP "\fB(*) (!) Reworked recurrences\fR" 4 .IX Item "(*) (!) Reworked recurrences" Recurrences were reworked in a (slightly) backward incompatible way to improve their usefulness (and to make them conform to the expected results). Most recurrences will work the same as previously, but a few will differ. Most of this was suggested by Jay Jacobs. .Sp A recurring event is now calculated relative to the base date, \s-1NOT\s0 relative to a previous event. For example, if a recurrence occurs every month, and the base date was Jan 31, then previously, recurring events would have been (in a non-leap year): .Sp .Vb 4 \& D(0) = Jan 31 \& D(1) = D(0) + 1 month = Feb 28 \& D(2) = D(1) + 1 month = Mar 28 \& ... .Ve .Sp The new behavior is: .Sp .Vb 4 \& D(0) = Jan 31 \& D(1) = D(0) + 1*(1 month) = Feb 28 \& D(2) = D(0) + 2*(1 month) = Mar 31 \& ... .Ve .Sp Previously, if a base date were not specified, it was not determined from the date range. Now, the start date of the date range acts as the base date. .Sp The meaning of the base date has changed slightly. It is much more meaningful and useful now. .Sp Added iterator functions. Daniel LaLiberte .Sp The RecurNumFudgeDays variable is no longer used and is deprecated. .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2010o) .SH "VERSION 6.14 (2010\-10\-20)" .IX Header "VERSION 6.14 (2010-10-20)" .IP "\fB(*) Date::Manip 5.xx fully integrated with 6.xx\fR" 4 .IX Item "(*) Date::Manip 5.xx fully integrated with 6.xx" Date::Manip 5.xx and 6.xx are both installed automatically, and the correct one will be chosen. .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed a bug where recurrence handling was broken. \s-1RT 62128\s0 .IP "Documentation fixes" 4 .IX Item "Documentation fixes" A lot of documentation was cleaned up to be easier to read, and better organized. .SH "VERSION 6.13 (2010\-10\-13)" .IX Header "VERSION 6.13 (2010-10-13)" .IP "New features" 4 .IX Item "New features" Added the input methods to Date::Manip::Date and Date::Manip::Delta. Ed Avis. .Sp The 'date +%z' command will also be used to determine the timezone. Oliver Schulze .IP "Bug fixes" 4 .IX Item "Bug fixes" Several changes to try to get rid of a memory leaks reported in \s-1RT 54937. \s0 Huge thanks to BrowserUK on perlmonks for help. Unfortunately, it ended up being a bug in perl, and will only be resolved when that bug is fixed. See the Date::Manip::Problems document for more information. .Sp .Vb 3 \& Reorganized Base/TZ to get rid of circular references. \& Added end blocks to clean some global variables. \& Got rid of switch/given structures. .Ve .Sp Fixed a bug where an incomplete date with 'last' in it was causing an error. \s-1RT 60138\s0 .Sp Fixed a bug where 'Sunday, 9th Jan 1972' wasn't parsed correctly. \s-1RT 57832\s0 .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Fixed a bug where Zones.pm was generated with the abbreviations in the wrong order. Amish Chana. .IP "Language fixes" 4 .IX Item "Language fixes" French month abbreviations now support periods. Bernard Haerri .IP "Test fixes" 4 .IX Item "Test fixes" Added tests from \s-1RT 29655\s0 to make sure that the problem never recurs. .IP "Documentation fixes" 4 .IX Item "Documentation fixes" Fixed documentation problem with the new_* methods in Date::Manip::Obj. Options must be passed in as \e@opts rather than \f(CW@opts\fR. .Sp Cleaned up some of the documentation. .SH "VERSION 6.12 (2010\-09\-27)" .IX Header "VERSION 6.12 (2010-09-27)" .IP "\fB(!) IntCharSet config variable deprecated\fR" 4 .IX Item "(!) IntCharSet config variable deprecated" With better support for international character sets, the old IntCharSet config variable (which was a bandaid at best) is deprecated. Currently, the functionality still exists, but it will be removed at some point. .IP "New features" 4 .IX Item "New features" Added the Encoding config variable. .Sp Now supports parsing the \s-1EXIF\s0 date format. Rhesa Rozendaal .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed Build.PL to not require perl 5.010 since the distribution as a whole does not require that (and I want that fact to be in \s-1META\s0.yml). .Sp Fixed a bug where the Date::Manip::Date::set method was broken when setting individual fields. Helmut A. Bender .Sp Fixed a bug where set didn't work in Date::Manip::Delta. Patch provided in \&\s-1RT 59096.\s0 .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2010m) .IP "Language fixes" 4 .IX Item "Language fixes" \&\fB(*) Converted all language files to \s-1UTF\-8\s0 and added rudimentary support for character encodings. Some assistance by Stephen Ostermiller.\fR .Sp Fixed problem in Polish, Dutch. Stephen Ostermiller .Sp Extended support for 'nth' up to 53rd. Paco Regodon .Sp Added some corrections to German. Dieter Lange .IP "Documentation fixes" 4 .IX Item "Documentation fixes" Clarified Date::Manip::Recur documentation based on \s-1RT 59132.\s0 .SH "VERSION 6.11 (2010\-04\-30)" .IX Header "VERSION 6.11 (2010-04-30)" .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed a problem in Build.PL that had an incorrect module requirement. .SH "VERSION 6.10 (2010\-04\-29)" .IX Header "VERSION 6.10 (2010-04-29)" .IP "\fB(*) Combined 5.xx and 6.xx releases into one distribution\fR" 4 .IX Item "(*) Combined 5.xx and 6.xx releases into one distribution" Because the automatic module management tools cpan/cpanp would try to upgrade Date::Manip to the most recent version, and the most recent version will only work if perl 5.10.0 or higher is installed, both the 5.xx and 6.xx releases are now combined into a single distribution. .Sp This is described more fully in the Date::Manip::Problems document. .IP "\fB(!) Zones specified by offset\fR" 4 .IX Item "(!) Zones specified by offset" In all operations involving time zones, the time zone must be determined. By default, it would take all of the information available (date, \s-1ISDST,\s0 etc.) and determine the most likely time zone. It would take every time zone that matched each piece of information, starting with those that matched in a standard time followed by those that matched in a daylight saving time. .Sp When zones are specified by an offset, a standard time would always match since there are standard time zones that match all year long (the military time zones A\-Z and the standard time zones of the form Etc/GMT+01). As a result, a daylight saving time match would never occur. .Sp Since (if the date falls during a daylight saving time period) you usually want to use a time zone that has that offset in daylight saving time, the default is now to check daylight saving time zones first, followed by standard times. .Sp See the Date::Manip::TZ manual (under the zone method) for more information. .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed a bug where Date_ConvTZ not working correctly with time zones specified by offset. Chris Butler .Sp Fixed a bug where business mode calculations involving minutes was not handled correctly. Damien Moore .Sp Fixed a bug where business mode calculations failed in some cases. \s-1RT 56638\s0 .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2010i) .Sp Changed Date::Manip::TZ::zone so \*(L"dst\*(R" is sometimes the default \&\f(CW$dstflag\fR. Based on the bug report by Chris Butler. .Sp OpenUNIX puts a colon at the start of some time zones. It's removed. Jean Hassler .IP "Test fixes" 4 .IX Item "Test fixes" Converted tests to Test::Inter .IP "Documentation fixes" 4 .IX Item "Documentation fixes" Fixed a documentation bug in Date::Manip::TZ where \*(L"stdonly\*(R" was listed as the default value for \f(CW$dstflag\fR, but in actuality, \*(L"std\*(R" is the default. .SH "VERSION 6.07 (2010\-02\-05)" .IX Header "VERSION 6.07 (2010-02-05)" .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed bug in Date_TimeZone where it wasn't returning the time zone. Robert Eden .SH "VERSION 6.06 (2010\-02\-05)" .IX Header "VERSION 6.06 (2010-02-05)" .IP "Bug fixes" 4 .IX Item "Bug fixes" Minor bug where \f(CW%Z\fR printf format didn't always work. .Sp Added support for 5pm back in (it was omitted accidentally). Mark Kennedy .Sp Fixed a minor warning. Morten Bjoernsvik .Sp Some additional speedups. .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Newest zoneinfo data (tzdata 2010b) .Sp Added dm_zdump example script. .Sp Improved TZ::periods functionality .Sp Fixed bug in Date_ConvTZ where empty values weren't defaulting to local time zone. Robert Eden .Sp Fixed a couple of problems in the generated time zones for some odd cases (America/Resolute and Asia/Tehran). .SH "VERSION 6.05 (2009\-12\-09)" .IX Header "VERSION 6.05 (2009-12-09)" .ie n .IP "\fB(!) \fB%z\fB format\fR" 4 .el .IP "\fB(!) \f(CB%z\fB format\fR" 4 .IX Item "(!) %z format" In Date::Manip 5.xx, the \f(CW%z\fR format in UnixDate printed the offset in the form \-0500. In 6.00, I changed that to \-05:00:00, but this broke \&\s-1RFC 822\s0 compliance. .Sp I've changed \f(CW%z\fR back to \-0500, and introduced a new format (%N) which returns \-05:00:00. .Sp Incidentally, this is the \s-1LAST\s0 unused letter, so I am now going to have to either stop adding formats, or add some extended format syntax. Not sure yet which, but this may involve a backwards incompatible change in the future. .IP "\fB(*) Significant speedups.\fR" 4 .IX Item "(*) Significant speedups." Thanks to Moritz Lenz and BrowserUK on perlmonks for suggestions (and a number of other people on perlmonks for suggestions that I did not end up using, but which provided a great discussion). .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed a bug in parse_date where the current time was getting used instead of the documented 00:00:00 .Sp Bug fix where DateCalc didn't work with \f(CW$mode\fR in some cases. .Sp Fixed Makefile.PL/Build.PL to handle Win32::TieRegistry requirement. .Sp Changed \f(CW%z\fR printf behavior back to 5.xx and added \f(CW%N\fR format. Gilles Lamiral .Sp Added dm_date example script. .IP "Time zone fixes" 4 .IX Item "Time zone fixes" Fixed bug where non-English Windows versions didn't get the time zone. Thanks to Rene Schickbauer for testing. .IP "Test fixes" 4 .IX Item "Test fixes" Reduced the precision of 1 test to avoid a rounding difference when using a perl compiled with uselongdouble. Andreas Koenig .SH "VERSION 6.04 (2009\-11\-25)" .IX Header "VERSION 6.04 (2009-11-25)" .IP "Bug fixes" 4 .IX Item "Bug fixes" Fixed a bug where events were not interpreted in the correct time zone if SetDate/ForceDate used. .SH "VERSION 6.03 (2009\-11\-24)" .IX Header "VERSION 6.03 (2009-11-24)" .IP "Bug fixes" 4 .IX Item "Bug fixes" Corrects a backward incompatibility with UnixDate. Rene Schickbauer .IP "Test fixes" 4 .IX Item "Test fixes" A couple more corrections to the tests. .SH "VERSION 6.02 (2009\-11\-24)" .IX Header "VERSION 6.02 (2009-11-24)" .IP "Bug fixes" 4 .IX Item "Bug fixes" Disabled curr_zone_methods when taint checking on. I believe that Date::Manip is completely taint friendly at this point. .IP "Test fixes" 4 .IX Item "Test fixes" A quick fix to make sure that the tests run correctly in other time zones. .SH "VERSION 6.01 (2009\-11\-23)" .IX Header "VERSION 6.01 (2009-11-23)" .IP "Bug fixes" 4 .IX Item "Bug fixes" \&\fB(*) Fixed a bug where dates were sometimes getting the wrong time zone when SetDate/ForceDate in effect.\fR .SH "VERSION 6.00 (2009\-11\-23)" .IX Header "VERSION 6.00 (2009-11-23)" Date::Manip 6.00 is a total rethink of the module, and a nearly complete rewrite. Please refer to the Date::Manip::Changes5to6 document for a list of incompatible changes. .IP "Reorganization" 4 .IX Item "Reorganization" \&\fB(*) Massive reorganization and near total rewrite.\fR .Sp \&\fB(*) Broke into several smaller modules\fR .IP "New Features" 4 .IX Item "New Features" \&\fB(*) Full time zone support (using tzdata 2009s)\fR .Sp Added some functionality (suggested by James Elson to improve setting the \*(L"current time\*(R". Done with the ForceDate config variable. .Sp \&\fB(*) Converted languages to \s-1YAML\s0 for much easier maintenance. Patch and suggestion provided by Evan Carroll\fR .Sp Added much better formats for deltas. Suggested by Jim Hranicky. .Sp Borrowed the _FindWindowsTZName function from the DateTime-TimeZone module. .Sp Added SetDate config variable (based on a suggestion by Christian Campbell). .Sp Added parse_format which was first suggested by Kim Ryan. .IP "Other changes" 4 .IX Item "Other changes" Several config variables deprecated .Sp Thanks to Jonathan Hogue for helping test Windows additions. .IP "Bug fixes (correcting problems in the 5.xx releases)" 4 .IX Item "Bug fixes (correcting problems in the 5.xx releases)" Fixed a bug where \*(L"YYtoYYYY=c\*(R" wouldn't work. .Sp \&\s-1VMS\s0 bugfix to not call `date` command. Lane .Sp New Year's Day defined using a recurrence which might push the observed day to the previous year was broken. Reported by Jerry Wilcox. .IP "Language fixes" 4 .IX Item "Language fixes" Fixed typo in Turkish translation. .Sp Spelling fix in Dutch. Bart Van Loon .IP "Additional credits" 4 .IX Item "Additional credits" I have received many suggestions over time which were automatically handled during the 6.00 rewrite. Although the changes weren't made because of the suggestions specifically, I wanted to acknowledge them since I appreciate the suggestions. .Sp I believe the first person to suggest writing Date::Manip as an \s-1OO\s0 module was Eduard Derksen. .Sp Delta_Format initialization done outside of the function. Eric Boehm .Sp Added \f(CW$subtract\fR to calculation routines. First suggested by Steve Berlage. .Sp Added ability to set individual parts of the date (Date::Manip::Date::set). First suggested by Martin Thurn. .Sp UnixDate (i.e. Date::Manip::Date::printf) only calculates formats when they are needed. Eduard Derksen .Sp Parsing will skip some date/time formats if requested. This was first suggested by Eduard Derksen. .Sp It has been suggested several times to support multiple languages, multiple config files, or multiple sets of Date_Init options. These suggestions (by Meng Fang, Ed Avis, Christian Campbell, and perhaps others) were at the back of my mind as I developed the Date::Manip::Base class. .Sp The regular expressions are all i18n friendly in anticipation of much better support for localization. First suggested by Alex Kapranoff. .Sp Parsing a date ('today', 'Monday') gives a time of '00:00:00'. Suggested by Mark Aitchison. .Sp Working with fractional days was suggested by Peter van Hardenberg. This is implemented in Date::Manip::Base::day_of_year method. .SH "BUGS AND QUESTIONS" .IX Header "BUGS AND QUESTIONS" Please refer to the Date::Manip::Problems documentation for information on submitting bug reports or questions to the author. .SH "SEE ALSO" .IX Header "SEE ALSO" Date::Manip \- main module documentation .SH "LICENSE" .IX Header "LICENSE" This script is free software; you can redistribute it and/or modify it under the same terms as Perl itself. .SH "AUTHOR" .IX Header "AUTHOR" Sullivan Beck (sbeck@cpan.org)