1Date::Manip::Changes6(3U)ser Contributed Perl DocumentatiDoante::Manip::Changes6(3)
2
3
4

NAME

6       Date::Manip::Changes6 - changes in Date::Manip 6.xx
7

SYNOPSIS

9       This describes the changes made to the Date::Manip module in the 6.xx
10       series of releases.  Major changes are marked with asterisks (*).
11
12       For the most part, Date::Manip has remained backward compatible at
13       every release, but occasionally, a change is made which is backward
14       incompatible. These are marked with an exclamation mark (!).
15

VERSION 6.84 (planned 2020-12-01)

VERSION 6.83 (planned 2020-09-01)

VERSION 6.82 (planned 2020-06-01)

VERSION 6.81 (2020-03-01)

20       Messed up the 6.80 package.  This release fixes it.
21

VERSION 6.80 (2020-03-01)

23       Missed Changes entry for previous version.
24            Reported by Tina Muller (GitHub #31)
25

VERSION 6.79 (2019-12-01)

27       Time zone fixes
28            Newest zoneinfo data (tzdata 2019c).
29

VERSION 6.78 (2019-08-29)

31       Time zone fixes
32            Newest zoneinfo data (tzdata 2019b).
33
34       Documentation fixes
35            Fixed a broken link.  Mohammad S Anwar (GitHub #29)
36

VERSION 6.77 (2019-06-01)

38       Time zone fixes
39            Newest zoneinfo data (tzdata 2019a).
40

VERSION 6.76 (2019-03-01)

42       Fixed bug in Date::Manip::Date::list_holidays.
43           It was using 'now' instead of the stored date.  Douglas DeStafeno
44
45       Reordered TZ detection methods
46           Moved checking the tzdata files to lower priority to avoid a pretty
47           unusual situation in docker.  Sven Nierlein (GitHub #20)
48
49       Time zone fixes
50           Newest zoneinfo data (tzdata 2018i).  Requested by Shawn C Carroll
51           (GitHub #28)
52

VERSION 6.75 (2018-12-03)

54       Fixed packaging problems
55           Version 6.74 was not packaged correctly.  Version wasn't set
56           correctly in a few files and there were invalid entries in
57           Makefile.PL.  RT 127870.
58

VERSION 6.74 (2018-12-01)

60       Removed travis file from the tarball
61           The tarball had a .travis.yml file in it that wasn't in the
62           MANIFEST file.  Since the MANIFEST file is automatically generated
63           by the perl mkmanifest tool, since it didn't see the .travis.yml
64           file, I have excluded it from the tarball.  Reported by Mohammad S
65           Anwar on GitHub (#23)
66
67       Time zone fixes
68           Newest zoneinfo data (tzdata 2018e)
69

VERSION 6.73 (2018-09-01)

71       Fixed math on non-64-bit architectures
72           Much of the math in Date::Manip::Base is in a 'use integer'
73           section.  This math can overflow in some cases in non-64-bit
74           architectures.  Fixed the cases where this would reasonably occur.
75           Reported by Daniel Albers (GitHub #22).  Also reported and tested
76           in RT 126052.
77
78       Bug in normalizing estimated business deltas
79           While working on the non-64-bit issue, it uncovered a bug where
80           normalizing estimated business deltas was wrong.  It had never been
81           reported, and it was only off by a couple seconds in some rare
82           situations.
83

VERSION 6.72 (2018-06-06)

85       Fixed recurrence bug
86           The fix in the previous version for a rare recurrence problem broke
87           another recurrence form.  It is now corrected.  Michael Schout
88           (GitHub #20)
89
90       Fixed version problem
91           The wrong version was included in two files for some reason.  This
92           is fixed.
93
94       Documentation fixes
95           Fixed a grammatical error reported by Xavier Guimard (GitHub #19).
96

VERSION 6.71 (2018-06-01)

98       Fixed an extremely rare problem with recurrences
99           It is possible to specify a recurrence that never produces a valid
100           date.  In these cases, looking for dates went into an infinite
101           loop.  The MaxRecurAttempts config variable was added which will
102           stop that from happening.  If no occurrence was found, an error
103           condition will be set.  Dean Hamstead (RT 123708)
104
105       Changes file supported
106           It was requested that I include a valid Changes file.  I wrote a
107           simple script to convert the Change6.pod file into a valid Change
108           file.  The Changes6.pod file is still the canonical source of this
109           information!  Requested by H. Merijn Brand
110
111       Fix for timezone determination
112           On MacOS X High Sierra, some of the timezone files were symlinks,
113           but not properly followed.  This was fixed by Stu Tomlinson (GitHub
114           #15).
115
116       Time zone fixes
117           Newest zoneinfo data (tzdata 2018e)
118
119       Documentation fixes
120           Minor fix provided by Mohammad S Anwar (GitHub #17)
121

VERSION 6.70 (2018-03-01)

123       (*) (!) Changes to deltas
124           Improved handling of deltas to better support the different types
125           of deltas.  Formalized how the semi-exact portions of the delta are
126           used to produce the results that most people would expect.
127
128           The type can now be specified to guarantee several behaviors.
129           Changed the arguments (in a backward compatible way) to several
130           methods.  Explicitly added a new type (estimated) which was there
131           previously, but could not be manually specified.
132
133           The convert function continues to support converting from a less
134           exact type to a more exact type, but this is deprecated and will be
135           removed in version 7.00.
136
137           This was prompted by a bug reported by Ian Gibbs.
138
139       (*) (!) Deprecated some parts of Date::Manip::Delta
140           The options passed to the set and parse methods have changed.  The
141           old style will be removed in version 7.00.
142
143           Deltas will also no longer support the 'exact' and 'approximate'
144           strings (which have not been supported for some time).  These will
145           be removed in 7.00 as well.
146
147       Deprecation of TZ postponed
148           The deprecation of the TZ variable has been postponed to version
149           7.00.
150
151       Some speed improvements
152           I converted some of the functions to use faster algorithms.
153           Previously, the steps were worked out using logical time/calendar
154           based calculations.  These were replaced with non-intuitive
155           numerical calculations that gave the same result faster.
156
157       Changed behavior if timezone not determined
158           If the system timezone cannot be determined using any of the
159           methods supplied by Date::Manip, operations will be done in the GMT
160           timezone.  Previously, Date::Manip would simply fail to load.
161           Based on a report by Kent Fredric (RT 123229).
162
163       Fixed Makefile.PL
164           The list of what what is provided did not include the path to the
165           file providing each module.  I've fixed the Makefile.PL as well as
166           the META files.  Graham Knop (GitHub #13)
167
168       Time zone fixes
169           Newest zoneinfo data (tzdata 2018c)
170
171       Documentation fixes
172           Rewrote Date::Manip::Delta page to reflect changes, and clean up
173           the documentation in general.
174

VERSION 6.60 (2017-09-01)

176       Bug fixes
177           Fixed a bug where if a recurrence had no interval, start and end
178           dates passed in to the dates method would not work.  PJ-DSI-DevOps
179           (GitHub #12).
180
181       Documentation fixes
182           Clarified Date::Manip::TZ::all_periods.  Based on discussion with
183           Peter Pfannenschmid.
184

VERSION 6.59 (2017-06-01)

186       Time zone fixes
187           Newest zoneinfo data (tzdata 2017b)
188
189       Documentation fixes
190           Improved some of the documentation.
191

VERSION 6.58 (2017-03-01)

193       Better support for $mode in DateCalc.
194           DateCalc (in DM6) did not support all values for $mode.  Now it
195           does.
196
197       Bug fixes
198           Parsing a date like 01/02/2016 and calling printf with %e gave '02'
199           instead of ' 2'.  Robert Wohlfarth (RT 119787).
200
201           Fixed a problem where the tzdata method of determining the timezone
202           was producing an error which wasn't correct.  John (GitHub #8)
203
204       Time zone fixes
205           Newest zoneinfo data (tzdata 2017a)
206

VERSION 6.57 (2016-12-01)

208       Time zone fixes
209           Newest zoneinfo data (tzdata 2016j)
210
211       Test fixes
212           A faulty test was failing in a few places.  RT 118705
213
214           Another test was failing due to a perl bug that popped up in
215           5.25.7.  Tweaked the test to bypass the bug.  Kent Fredric (RT
216           118862)
217

VERSION 6.56 (2016-09-09)

219       Test fixes
220           A faulty test was failing most places.  New release to correct that
221           problem.  Slaven Rezic (RT 117404)
222

VERSION 6.55 (2016-09-01)

224       Fixed bug where $::TZ wasn't used
225           The $::TZ variable was not getting interpreted correctly when
226           searching for a timezone.  Steven Hartland (RT 114949)
227
228       Fixed bug where recurrences were not parsed correctly
229           Passing in incorrect values for a field was not trapped in all
230           cases and it led to problems.  All values passed in to a recurrence
231           are now correctly checked.  Albert Hilazo (GitHub #7).
232
233       Fixed a bug in some methods of creating new objects
234           Some methods of creating new objects based on existing objects did
235           not correctly use the existing object.  Bug has never been
236           reported, but was discovered when adding tests to get 100%
237           coverage.
238
239       Time zone fixes
240           Newest zoneinfo data (tzdata 2016f)
241
242       Test fixes
243           Added a number of new tests based on Devel::Cover.
244

VERSION 6.54 (2016-05-31)

246       Deprecation of Date::Manip 5.xx tests
247           By default, the Date::Manip 5.xx tests will no longer run.  Changes
248           to the timezone data can cause failures.  Since Date::Manip 5.xx is
249           no longer supported in any way, these tests will no longer run on a
250           system where 6.xx can be run.  Richard Jelinek.
251
252       Deprecation of TZ postponed
253           The deprecation of the TZ variable has been postponed to March
254           2017.  I decided that 1 year was not enough notice (especially
255           since not everyone will have updated Date::Manip since March 2015
256           when the warning was added.
257
258       Bug fixes
259           Changed requirement for ExtUtils::MakeMaker to 6.67_01.  Quin
260           Arnold (RT 112286)
261
262           Fixed a bug where a timezone abbreviation was not parsed correctly
263           when passed in as a value to the SetDate, ForceDate, or TZ config
264           variables.  Based on a report in perlmonks.org.
265
266       Time zone fixes
267           Newest zoneinfo data (tzdata 2016d)
268
269           Made some improvements to how I handled the timezone data which
270           resulted in a few of the default timezones being changed.
271
272       Documentation fixes
273           Fixed one more typo.  Gregor Herrmann (RT 114095)
274
275           Clarified the Config document.  Based on a report in perlmonks.org.
276

VERSION 6.53 (2016-03-02)

278       Bug fixes
279           Date::Manip::Delta::cmp had a bug in it's comparison.  Ian Gibbs.
280
281           The secs_since_1970_GMT method was missing a test to see if it was
282           a valid object.  Michael Stevens (RT 111915)
283
284       Time zone fixes
285           Newest zoneinfo data (tzdata 2016a)
286
287       Documentation fixes
288           Lots of typos fixed.  I was using podspell to do spell checking,
289           but it was discarding too much real text (which wasn't getting
290           checked as a result).  Switched to pod2text which does a better
291           job.  Gregor Herrmann (RT 110025)
292

VERSION 6.52 (2015-12-01)

294       Added date ranges on unmodified dates in Recur
295           The date range can now be specified for either the fully modified
296           dates, or the unmodified dates.  This will make it easier to work
297           with holidays in some instances.  Based on
298           <http://perlmonks.org/?node_id=1148735>.
299
300       Added IWn and NWn recurrence modifiers
301           Based on <http://perlmonks.org/?node_id=1148735>.
302
303       (!) Reworked holidays slightly
304           Previously, every line in the Holidays section defined a unique
305           holiday.  Now, the names determine the list of holidays.
306
307           It is not allowed to have two separate holidays named exactly the
308           same.  It IS allowed to have complex holidays that require two (or
309           more) lines in the Holidays section to define them completely.
310
311           Based on <http://perlmonks.org/?node_id=1148735>.
312
313       Bug fixes
314           Fixed a bug where the RecurRange config variable wasn't getting
315           used.
316
317           Fixed a bug where some deltas were not parsed correctly as dates.
318           Salvatore Bonaccorso (RT 109600)
319
320       Time zone fixes
321           Newest zoneinfo data (tzdata 2015g)
322
323       Test fixes
324           Added a number of new tests based on Devel::Cover.
325

VERSION 6.51 (2015-09-01)

327       Changes suggested by perlcritic
328           Played with perlcritic and made a few minor changes based on it's
329           suggestions.  I doubt I will use perlcritic significantly.
330
331       (!) Date::Manip::Delta::value now returns an empty string
332           If a delta has an error, or no valid delta in it, the value method
333           returns an empty string instead of undef.  This is to be consistent
334           with the Date::Manip::Date::value method which returns an empty
335           string.
336
337       Bug fixes
338           Fixed a bug where date/delta calculations with deltas that are too
339           large was not working correctly.  They now set an error condition
340           and fail.  Jared Selengut (RT 105737)
341
342           Fixed a bug introduced by the previous patch and luckily discovered
343           pre-release by Tom Wyant.
344
345           Fixed code that produced a warning in 5.22.0.  Tom Wyant
346
347       Improved DM6 ParseDate and ParseDateString
348           Added @opts argument.  Based on report by Vitaly Shupak (RT
349           105622).
350
351       Time zone fixes
352           Newest zoneinfo data (tzdata 2015f)
353
354           Now uses /etc/localtime as a method to determine the local
355           timezone.  Patch supplied by Tom Wyant (RT 105159) (modified by
356           me).  The patch uses some code derived from DateTime::TimeZone .
357
358           Clearer message when the date is not valid in the timezone.
359
360       Test fixes
361           Added a number of new tests based on Devel::Cover.  Over the next
362           several releases, I intend to continue to add tests until coverage
363           is 100%.
364
365       Documentation fixes
366           Fixed a typo.  Gregor Herrmann (RT 105546)
367

VERSION 6.50 (2015-06-01)

369       Bug fixes
370           Not really a bug, but 6.49 got a bunch of NYTprof data bundled with
371           it by mistake.  It's been removed.  Olivier Mengue (RT 103252)
372
373           Fixed a bug where information about whether a date was complete or
374           truncated was discarded.  Jim Avera
375
376           Fixed a bug where SetDate with a zone alias failed.
377
378           Added the Format_MMMYYYY config variable to allow the truncated
379           format mmmYYYY to be parsed instead of mmmDDYY.  David W.
380           Morganwalp and Glenn Golden (RT 103142)
381
382           Fixed Makefile.PL/Build.PL to correct for a change on perl on
383           windows which changes a module prereq requirement.  Alexandr
384           Ciornii
385
386       Time zone fixes
387           Newest zoneinfo data (tzdata 2015d)
388
389           Added aliases for older HP-UX time zones.  H. Merijn Brand (RT
390           104141)
391
392       Documentation fixes
393           Fixed URL for tzdata.  Mohammad S Anwar (GitHub #3).
394
395           Better POD formats.
396
397           Fixed a documentation error.  Glenn Golden (RT 103966)
398

VERSION 6.49 (2015-03-01)

400       Added a deprecation warning
401           The TZ config variable is going away.  Added a deprecation warning.
402
403       Some speedups for timezone handling
404           Based on a report by Glenn Golden (RT 102284), I have done some
405           optimization of the timezone handling code.
406
407       Bug fixes
408           Added the missing is_date base method to Date::Manip::Base.  Mario
409           Domgoergen.
410
411       Time zone fixes
412           Newest zoneinfo data (tzdata 2015a)
413
414       Language fixes
415           A number of corrections by Nicholas Riley
416

VERSION 6.48 (2014-12-01)

418       Put repository on GitHub
419           Suggested by Gabor Szabo
420
421       parse_time now parses ISO 8601 times
422           The parse_time routine wouldn't correctly parse ISO 8601 times.
423           This is now fixed.
424
425       Parsing special dates with timezones now works
426           Parsing special date formats with timezones is now supported such
427           as:
428
429              Christmas at noon PST
430              in 3 days at noon PST
431              now PST
432              epoch 3000000 PST
433
434       dm_zdump modified
435           To match the newest version of zdump, the gmtoff is now added at
436           the end of each line.
437
438       Bug fixes
439           Fixed a bug in the printf method that would not handle embedded
440           newlines correctly (and resulted in an infinite loop if it were
441           preceded by a '%').  Henrique Martins
442
443           Fixed a bug where '24:00' was not parsed correctly (though
444           '24:00:00' was).
445
446           Fixed a bug where fractional values separated by a comma weren't
447           parsed correctly.
448
449       Time zone fixes
450           Newest zoneinfo data (tzdata 2014j)
451

VERSION 6.47 (2014-09-01)

453       Time zone fixes
454           Newest zoneinfo data (tzdata 2014f)
455
456       Language fixes
457           Fixed some encoding errors in the language pod documentation.
458

VERSION 6.46 (2014-07-08)

460       Broken distribution
461           The distribution contained an temporary edit file that caused
462           problems.  Alexandr Ciornii (RT 96459)
463
464       Time zone fixes
465           Newest zoneinfo data (tzdata 2014e)
466
467       Language fixes
468           Added some plural abbreviations that were missing.  Glenn Golden
469           (RT 96944)
470

VERSION 6.45 (2014-06-05)

472       Fixed a test
473           One test was failing (reported by Constantine Peresypkin (RT 96249)
474           as well as several CPAN Tester reports).
475

VERSION 6.44 (2014-06-01)

477       (*) Improvements to UTF8 handling
478           A number of changes based on a report and other discussion with
479           Yuri Nikulin (RT 93545) including:
480
481           Case insensitive matching of UTF8 strings should work all the time.
482
483           Fixed two significant bugs in regexps for parsing dates.
484
485           Improvements to UTF8 handling.
486
487           Corrected some problems with Russian and added the cp1251 encoding.
488
489           One correction to Romanian.
490
491           Added several new test scripts.
492
493           Preliminary patches were supplied by Yuri.
494
495       New features
496           Modified the parse_format function to return %+ if desired.  Mike
497           Cappella
498
499       Time zone fixes
500           Newest zoneinfo data (tzdata 2014c)
501
502       Documentation fixes
503           Clarified some DM6 functions.  David Close.
504
505           Fixed a typo.  Mike Cappella (RT 95619)
506

VERSION 6.43 (2014-03-03)

508       Several changes to distribution files
509           I made several changes to Build.PL, Makefile.PL, META.yml in order
510           to improve the quality (or kwalitee) of the module.  None of these
511           should impact anyone using the module.
512
513       Time zone fixes
514           Newest zoneinfo data (tzdata 2013i)
515
516       Documentation fixes
517           Cleaned up some of the Recur documentation.  Suggested by Warren
518           Young (RT 92794)
519

VERSION 6.42 (2013-12-02)

521       Added ParseDateFormat function
522           Added the ParseDateFormat function to the DM6 functional interface
523           in response to Eli Lindsey (RT 89286).
524
525       Added Common Log format
526           Added the date format used in apache logs: 11/Oct/2000:13:55:36
527           -0700 Eli Lindsey (RT 89286).
528
529       Time zone fixes
530           Newest zoneinfo data (tzdata 2013h)
531
532       Bug fixes
533           Fixed a bug where dates of the form of a delta with a timezone
534           attached (i.e. "1 day ago at midnight UTC") failed.  Ludovic Lange
535           (RT 89256)
536
537           Fixed a bug where events handling gave a warning if there were no
538           events that applied.  RT 90344
539

VERSION 6.41 (2013-09-05)

541       Bug fixes
542           Removed a .swp file accidentally left in the package.  RT 85845
543
544           Fixed a bug in parse_format where times between 00:00:00 and
545           01:00:00 weren't parsed correctly.  Ole Nomann Thomsen
546
547           Fixed generated META.* files to not require Module::Build 0.39.
548           Carsten Wolff (RT 86137)
549
550           Fixed a bug where parse_format did not work with a '%s' format.
551           Mark Keisler (RT 87498)
552
553           Fixed a bug where find_encoding wasn't imported from the Encode
554           module.  Krishna Subramanian (RT 87665)
555
556           Fixed a bug where recurrences with no interval did not work if a
557           start and end date were specified, and no dates fell in that range.
558           Jan Pradac
559
560       Time zone fixes
561           Newest zoneinfo data (tzdata 2013d)
562

VERSION 6.40 (2013-06-01)

564       Removed PODs
565           POD documentation is no longer generated for Date::Manip::TZ::* and
566           Date::Manip::Offset::* modules.
567
568       Time zone fixes
569           Newest zoneinfo data (tzdata 2013c)
570

VERSION 6.39 (2013-03-01)

572       Added the $mode argument to ParseDateDelta
573           The ParseDateDelta function (in functional interface) did not allow
574           you to force a parsed delta to semi or approx where appropriate.
575           This was added.  Based on RT 82991.
576
577       Added get_config method
578           The get_config method was added to all classes.  Suggested by
579           Philippe Poilbarbe.
580
581       Language fixes
582           Fixed a German language problem.  Gosta Oelstrom
583
584       Documentation fixes
585           Documented workaround for dmake problem in strawberry perl.
586           Discussed on perlmonks and Martin Thurn (RT 79837).
587
588           Clarified the Examples page.  Winston Heng
589

VERSION 6.38 (2013-01-08)

591       (*) Tar file format corrected
592           Problems were reported on several OSes by people unable to install
593           Date::Manip (and other modules).  It turns out that the version of
594           tar distributed by my linux distro (OpenSuSE) uses the 'posix'
595           format instead of the traditional 'gnu' format by default.  This
596           causes problems for some versions of tar.  I have had reports from
597           OSX, Windows, and SunOS.  Future versions of Date::Manip will be
598           explicitly distributed in the 'gnu' tar archive format.
599
600           Reported by Jay Allen and John Ralls (RT 80594).
601
602       (*) Date::Manip 5.xx end-of-life
603           Date::Manip 5.xx is now officially out of support.  I will not be
604           doing any further work on it.  The only exception is that I will
605           consider adding user supplied patches on a case-by-case basis.
606
607           If at all possible, please use Date::Manip 6.xx instead.
608
609       (!) Removed some deprecated config variables
610           The following config variables have been removed.
611
612              IntCharSet
613              RecurNumFudgeDays
614

VERSION 6.37 (2012-12-01)

616       Bug fixes
617           Fixed a bug where ISO 8601 format YYYY-WXX-D didn't work if the
618           week ended up in December.  Gordon Lugauer.
619
620       Time zone fixes
621           Newest zoneinfo data (tzdata 2012j)
622
623       Documentation fixes
624           Spelling error fixed.  RT 80621
625

VERSION 6.36 (2012-10-31)

627       Fix version numbers
628           This was an interim release to fix the version numbers (6.35 was
629           released with all of the version numbers 6.34).
630

VERSION 6.35 (2012-10-31)

632       Fix PATH
633           This version was an interim release to fix the problem with the
634           PATH being replaced.
635
636       Removed dependency on YAML
637           I've reverted the language data files to perl literals instead of
638           YAML.  Though not quite as easy to maintain, it solves a few
639           problems.  Patch provided by Christopher Madsen.
640
641       Bug fixes
642           Last versions fix for RT 78566 overrode the PATH even when that
643           wasn't appropriate.  This is fixed.  Report and patch supplied by
644           Tom Wyant (RT 80435).
645

VERSION 6.34 (2012-09-04)

647       This is a bug fix so that the PATH won't break non-unix installs.
648
649       Bug fixes
650           Put the PATH inside the Unix section so it doesn't affect non-unix
651           environments.  Geoff Rowell
652

VERSION 6.33 (2012-09-01)

654       Improvements to Date::Manip::Delta
655            Added convert method.  This had been planned since 6.30, but based
656            on a discussion with Henrique Martins, I moved it up in priority.
657
658            Cleaned up handling of delta field lengths (they are now only
659            calculated once.
660
661            Added cmp method.  Henrique Martins
662
663       Bug fixes
664            The language modules read from the DATA section, but I never
665            closed the filehandle.  This is fixed now.  Patch by Doru Theodor
666            Petrescu
667
668            Added better loading of DM5/DM6 modules.  Evan Carroll (RT 78152)
669
670            Added a secure PATH to TZ.pm for taint reasons.  In response to
671            Dan Pritts (RT 78566)
672
673       Time zone fixes
674            Now supports timezones in files with spaces where there should be
675            underscores.  This occurs in RHEL desktop.  Dan Pritts (RT 78566)
676
677            Newest zoneinfo data (tzdata 2012e)
678
679       Documentation fixes
680            Minor fix.  Henrique Martins
681

VERSION 6.32 (2012-06-01)

683       Modified Build.PL
684           Build.PL now has better support for building (or not building) HTML
685           files.  Apparently this is slow on Windows.  Patch provide by Manoj
686           Kumar (RT 75118)
687
688       Bug fixes
689           Fixed a bug in business day calculations.  Frederic Briere (RT
690           76336)
691
692           Fixed a bug where Delta/Recur objects weren't correctly created.
693           Zsban Ambrus
694
695           Fixed a bug where SetDate/ForceDate config variables could not be
696           included in a file.  Jerry Wilcox
697
698       Time zone fixes
699           Newest zoneinfo data (tzdata 2012c).
700
701       Documentation fixes
702           Better support for UTF-8 in autogenerated language module pod
703           files.
704

VERSION 6.31 (2012-03-01)

706       Added extended formats to printf method.
707           These include the %<A=NUM>, %<a=NUM>, %<v=NUM>, %<B=NUM>, %<b=NUM>,
708           %<p=NUM>, and %<E=NUM> formats.  Chris Jackson
709
710       Can now parse formats where the time and zone are not adjacent
711           A string like 'Jan 21 17:13:27 2010 -0400' can now be parsed.
712           Requested on perlmonks ('Can Date::Manip parse a unix timestamp'
713           thread).
714
715       Added PeriodTimeSep config variable.
716           This allows you to use a period as a time separator.  Ed Avis
717
718       Holidays can be used as date strings
719           You can now parse a holiday name in the Date::Manip::Date::parse
720           method.  For example, parse('Christmas').  Requested by Abigail.
721
722       Added new recur modifiers
723           Added WDn, IBD, and NBD modifiers.
724
725       Added a new date format
726           You can now parse '2nd day in May' formats. Randy Harmon
727
728       More flexibility in parsing timezones with both offset and abbrev
729           If you include both the offset and abbreviation in the timezone
730           portion of a date, the parenthesis around the abbreviation are now
731           optional, so you can parse both:
732
733              -04:00 (EDT)
734              -04:00 EDT
735
736           Requested by Steven Melendez.
737
738       Deltas now support fractional values.
739           You can now use a delta of 1.5 days.  Martin Thurn (RT 42699)
740
741       Multiple holidays supported
742           A date may now have multiple holidays.  Keith Minkler
743
744       Bug fixes
745           Fixed a bug where abbreviations were not being examined case
746           insensitively.  Jurgen Muck
747
748           The Holidays section may be safely split across multiple config
749           files.  A bug prevented this from working before.
750
751       Language fixes
752           The Norwegian translation was broken due to a typo in the language
753           module.
754
755           Included complete documentation for each language.
756
757           Fixed a couple problems with Danish.  Nicholas Oxhaj
758
759           Added Finnish (from a VERY old mail that I overlooked somehow).
760           Iikka Virkkunen
761
762           Cleaned up the values used by printf directives to give the
763           expected result.
764
765       Documentation fixes
766           Fixed a typo.  Nicholas Bamber
767

VERSION 6.30 (2012-01-11)

769       (*) (!) Reworked deltas
770           Much of the delta code was reworked.
771
772           The constraint that a day is treated as 24 hours was removed (by
773           adding the concept of semi-exact deltas) to better handle daylight
774           saving time calculations.
775
776           Made cosmetic changes to which signs will be included in a delta to
777           make the deltas more readable.  Signs which are the same as the
778           next higher field will be omitted, even if they cross set
779           boundaries.
780
781           Added support for non-normalized deltas.  See the $no_normalize
782           option for the parse and set methods.
783
784           Removed limitations on subtract=2 not working with business
785           calculations.
786
787           Thanks to discussion on perlmonks, and RT 65774 that prompted me to
788           do this.  I'd been wanting to do it for some time, but the
789           discussion on perlmonks made me realize that this needed to be much
790           higher priority.
791
792       (!) Modified Delta_Format
793           In conjunction with the above work, added the 'semi' mode to
794           Delta_Format.
795
796       (!) Removed some deprecated config variables
797           The following config variables have been removed.
798
799              GlobalCnf
800              IgnoreGlobalCnf
801              PersonalCnf
802              PersonalCnfPath
803              PathSep
804
805              Internal
806              DeltaSigns
807              UpdateCurrTZ
808              ConvTZ
809              OldConfigFiles
810              ResetWorkDay
811
812       Time zone fixes
813           Newest zoneinfo data (tzdata 2011n).  RT 71595
814
815           Corrects a bug where +0000 and -0000 offsets were not parsed
816           correctly.  Aaron Hall
817
818           The zoneinfo data includes rules more than 20 years in the future,
819           so we now store 30 years of future dates instead of 20 to catch
820           these rules.
821
822           When parsing the timezone portion of the date, timezone
823           abbreviations now take higher precedence than zone names (since
824           that is how timezone information is typically specified).  That
825           only impacts dates where the a timezone name is the same as an
826           abbreviation, such as 'CET'.
827
828           Previously, a date with CET in it was interpreted as in the CET
829           timezone.  Now it is interpreted as in a timezone with the CET
830           abbreviation.
831
832       Better handling of undef in DM6
833           The date/delta parsing routines in DM6 will now handle an undef
834           argument without issuing a warning.  Earl C. Ruby III
835
836       Bug fixes
837           Fixed a bug with the parse_format %f and %i formats.  Tommi Rintala
838
839           Fixed a bug where the Date::Manip::Delta::set function didn't work
840           to set the month value.
841
842           Fixed a bug where parsing some dates near during a DST change
843           failed.
844
845           Minor bug fix when using Delta_Format.  Prompted while
846           investigating RT 41095.
847

VERSION 6.25 (2011-08-31)

849       Relaxed one constraint in ISO 8601 dates
850           A time separated by whitespace from the date can use a single digit
851           hour.  Yuming Philip Xiang
852
853       (*) Set official removal dates for old config variables
854           Config variables will be removed 2 years after they are deprecated
855           (except for the TZ variable which, due to it's wide use, will be
856           kept for 4 years).
857
858       Time zone fixes
859           Newest zoneinfo data (tzdata 2011i)
860

VERSION 6.24 (2011-06-13)

862       New features
863           Spaces are ignored in the SetDate/ForceDate config values.  Zsban
864           Ambrus
865
866       Bug fixes
867           Fixed a bug where 'in one week' wasn't correctly parsed.  E. M.
868           Shtern
869
870           Fixed a bug where options passed in to the 'new' as a listref
871           weren't handled properly.  Zsban Ambrus
872
873       Time zone fixes
874           Newest zoneinfo data (tzdata 2011g)
875

VERSION 6.23 (2011-04-15)

877       (!) Renamed one Date::Manip::Recur method
878           The Date::Manip::Recur::base method has been renamed to basedate .
879           The Date::Manip::Recur::base method should return the
880           Date::Manip::Base object like all the other Date::Manip modules.
881
882       (*) Reworked holidays defined as recurrences
883           Improved dealing with the bootstrap problem of defining holidays,
884           especially those that contain business day flags.  Mike Tonks
885
886       New features
887           The printf function will now take multiple format strings and
888           return a list of values.  Zsban Ambrus
889
890       Bug fixes
891           Fixed a bug where GlobalCnf wasn't working.  Peter Edwards
892
893           Improved error messages in a few cases.
894
895           Fixed a bug where one invalid date/timezone check was ignored.
896           Morten Bjornsvik
897
898           Fixed a bug where '$base2 = new Date::Manip::Base $base1' wasn't
899           working.  RT 67143
900
901           Fixed a bug where passing dates in to the Recur->dates method
902           failed.  RT 67144
903
904           Fixed a bug where the mode wasn't being preserved correctly for a
905           delta.  RT 67150
906
907           Fixed a bug in recurrences where a base date outside of a date
908           range with a very uncommon recurrence format would not work
909           correctly.
910
911           Fixed a problem where the '%s' printf option didn't work in GMT.
912           Jean-Michel Hiver
913
914       Time zone fixes
915           Newest zoneinfo data (tzdata 2011f)
916
917       Documentation fixes
918           Fixed two bad recurrence examples in the documentation.  Peter
919           Edwards and Mike Tonks
920

VERSION 6.22 (2011-03-07)

922       Time zone fixes
923           Newest zoneinfo data (tzdata 2011b)
924
925           Fixed a bug where the gmtoff method of getting the local timezone
926           was broken.  Martin Zinser.
927
928           Fixed the 'env' method of determining the local time zone to allow
929           the value to be an offset of seconds since UTC.  This allows the
930           VMS SYS$TIMEZONE_DIFFERENTIAL variable to work correctly.  Martin
931           Zinser.
932
933           Removed the SYS$TIMEZONE_RULE method from VMS since the value
934           stored there is not the name of a timezone (it's a rule in a non-
935           standard format).  Based on discussion with Martin Zinser.
936
937           Improved the order in which aliases, abbreviations, etc., are
938           tested to test current usage before non-current usage (there were a
939           few cases where old usages were getting tested before current
940           usage.
941
942       Language fixes
943           The module will now die if a language module cannot be loaded (most
944           likely due to a YAML::Syck issue).  Based on discussion with Martin
945           Zinser.
946
947       Documentation fixes
948           Added a sample config file document.  Based on discussion with Rich
949           Duzenbury.
950

VERSION 6.21 (2011-01-10)

952       New features
953           Deltas may now contain spelled out numbers, so 'in 2 weeks' and 'in
954           two weeks' will both work.  Daniel Shahaf
955
956       Bug fixes
957           Fixed a bug where week_of_year didn't work in some cases.  Chris
958           Eveland.
959
960           Fixed a minor potential bug.  Geraint Edwards.
961
962       Time zone fixes
963           Updated windows time zone aliases.  Daniel Harding
964
965       Language fixes
966           Added Norwegian.  Glenn Sogn
967

VERSION 6.20 (2010-12-01)

969       (*) (!) Reworked recurrences
970           Recurrences were reworked in a (slightly) backward incompatible way
971           to improve their usefulness (and to make them conform to the
972           expected results). Most recurrences will work the same as
973           previously, but a few will differ. Most of this was suggested by
974           Jay Jacobs.
975
976           A recurring event is now calculated relative to the base date, NOT
977           relative to a previous event. For example, if a recurrence occurs
978           every month, and the base date was Jan 31, then previously,
979           recurring events would have been (in a non-leap year):
980
981              D(0)                   = Jan 31
982              D(1)  = D(0) + 1 month = Feb 28
983              D(2)  = D(1) + 1 month = Mar 28
984              ...
985
986           The new behavior is:
987
988              D(0)                       = Jan 31
989              D(1)  = D(0) + 1*(1 month) = Feb 28
990              D(2)  = D(0) + 2*(1 month) = Mar 31
991              ...
992
993           Previously, if a base date were not specified, it was not
994           determined from the date range. Now, the start date of the date
995           range acts as the base date.
996
997           The meaning of the base date has changed slightly. It is much more
998           meaningful and useful now.
999
1000           Added iterator functions.  Daniel LaLiberte
1001
1002           The RecurNumFudgeDays variable is no longer used and is deprecated.
1003
1004       Time zone fixes
1005           Newest zoneinfo data (tzdata 2010o)
1006

VERSION 6.14 (2010-10-20)

1008       (*) Date::Manip 5.xx fully integrated with 6.xx
1009           Date::Manip 5.xx and 6.xx are both installed automatically, and the
1010           correct one will be chosen.
1011
1012       Bug fixes
1013           Fixed a bug where recurrence handling was broken.  RT 62128
1014
1015       Documentation fixes
1016           A lot of documentation was cleaned up to be easier to read, and
1017           better organized.
1018

VERSION 6.13 (2010-10-13)

1020       New features
1021           Added the input methods to Date::Manip::Date and
1022           Date::Manip::Delta.  Ed Avis.
1023
1024           The 'date +%z' command will also be used to determine the timezone.
1025           Oliver Schulze
1026
1027       Bug fixes
1028           Several changes to try to get rid of a memory leaks reported in RT
1029           54937.  Huge thanks to BrowserUK on perlmonks for help.
1030           Unfortunately, it ended up being a bug in perl, and will only be
1031           resolved when that bug is fixed. See the Date::Manip::Problems
1032           document for more information.
1033
1034              Reorganized Base/TZ to get rid of circular references.
1035              Added end blocks to clean some global variables.
1036              Got rid of switch/given structures.
1037
1038           Fixed a bug where an incomplete date with 'last' in it was causing
1039           an error.  RT 60138
1040
1041           Fixed a bug where 'Sunday, 9th Jan 1972' wasn't parsed correctly.
1042           RT 57832
1043
1044       Time zone fixes
1045           Fixed a bug where Zones.pm was generated with the abbreviations in
1046           the wrong order.  Amish Chana.
1047
1048       Language fixes
1049           French month abbreviations now support periods.  Bernard Haerri
1050
1051       Test fixes
1052           Added tests from RT 29655 to make sure that the problem never
1053           recurs.
1054
1055       Documentation fixes
1056           Fixed documentation problem with the new_* methods in
1057           Date::Manip::Obj.  Options must be passed in as \@opts rather than
1058           @opts.
1059
1060           Cleaned up some of the documentation.
1061

VERSION 6.12 (2010-09-27)

1063       (!) IntCharSet config variable deprecated
1064           With better support for international character sets, the old
1065           IntCharSet config variable (which was a bandaid at best) is
1066           deprecated. Currently, the functionality still exists, but it will
1067           be removed at some point.
1068
1069       New features
1070           Added the Encoding config variable.
1071
1072           Now supports parsing the EXIF date format.  Rhesa Rozendaal
1073
1074       Bug fixes
1075           Fixed Build.PL to not require perl 5.010 since the distribution as
1076           a whole does not require that (and I want that fact to be in
1077           META.yml).
1078
1079           Fixed a bug where the Date::Manip::Date::set method was broken when
1080           setting individual fields.  Helmut A. Bender
1081
1082           Fixed a bug where set didn't work in Date::Manip::Delta. Patch
1083           provided in RT 59096.
1084
1085       Time zone fixes
1086           Newest zoneinfo data (tzdata 2010m)
1087
1088       Language fixes
1089           (*) Converted all language files to UTF-8 and added rudimentary
1090           support for character encodings. Some assistance by Stephen
1091           Ostermiller.
1092
1093           Fixed problem in Polish, Dutch.  Stephen Ostermiller
1094
1095           Extended support for 'nth' up to 53rd.  Paco Regodon
1096
1097           Added some corrections to German.  Dieter Lange
1098
1099       Documentation fixes
1100           Clarified Date::Manip::Recur documentation based on RT 59132.
1101

VERSION 6.11 (2010-04-30)

1103       Bug fixes
1104           Fixed a problem in Build.PL that had an incorrect module
1105           requirement.
1106

VERSION 6.10 (2010-04-29)

1108       (*) Combined 5.xx and 6.xx releases into one distribution
1109           Because the automatic module management tools cpan/cpanp would try
1110           to upgrade Date::Manip to the most recent version, and the most
1111           recent version will only work if perl 5.10.0 or higher is
1112           installed, both the 5.xx and 6.xx releases are now combined into a
1113           single distribution.
1114
1115           This is described more fully in the Date::Manip::Problems document.
1116
1117       (!) Zones specified by offset
1118           In all operations involving time zones, the time zone must be
1119           determined.  By default, it would take all of the information
1120           available (date, ISDST, etc.) and determine the most likely time
1121           zone. It would take every time zone that matched each piece of
1122           information, starting with those that matched in a standard time
1123           followed by those that matched in a daylight saving time.
1124
1125           When zones are specified by an offset, a standard time would always
1126           match since there are standard time zones that match all year long
1127           (the military time zones A-Z and the standard time zones of the
1128           form Etc/GMT+01). As a result, a daylight saving time match would
1129           never occur.
1130
1131           Since (if the date falls during a daylight saving time period) you
1132           usually want to use a time zone that has that offset in daylight
1133           saving time, the default is now to check daylight saving time zones
1134           first, followed by standard times.
1135
1136           See the Date::Manip::TZ manual (under the zone method) for more
1137           information.
1138
1139       Bug fixes
1140           Fixed a bug where Date_ConvTZ not working correctly with time zones
1141           specified by offset.  Chris Butler
1142
1143           Fixed a bug where business mode calculations involving minutes was
1144           not handled correctly.  Damien Moore
1145
1146           Fixed a bug where business mode calculations failed in some cases.
1147           RT 56638
1148
1149       Time zone fixes
1150           Newest zoneinfo data (tzdata 2010i)
1151
1152           Changed Date::Manip::TZ::zone so "dst" is sometimes the default
1153           $dstflag.  Based on the bug report by Chris Butler.
1154
1155           OpenUNIX puts a colon at the start of some time zones. It's
1156           removed.  Jean Hassler
1157
1158       Test fixes
1159           Converted tests to Test::Inter
1160
1161       Documentation fixes
1162           Fixed a documentation bug in Date::Manip::TZ where "stdonly" was
1163           listed as the default value for $dstflag, but in actuality, "std"
1164           is the default.
1165

VERSION 6.07 (2010-02-05)

1167       Bug fixes
1168           Fixed bug in Date_TimeZone where it wasn't returning the time zone.
1169           Robert Eden
1170

VERSION 6.06 (2010-02-05)

1172       Bug fixes
1173           Minor bug where %Z printf format didn't always work.
1174
1175           Added support for 5pm back in (it was omitted accidentally).  Mark
1176           Kennedy
1177
1178           Fixed a minor warning.  Morten Bjoernsvik
1179
1180           Some additional speedups.
1181
1182       Time zone fixes
1183           Newest zoneinfo data (tzdata 2010b)
1184
1185           Added dm_zdump example script.
1186
1187           Improved TZ::periods functionality
1188
1189           Fixed bug in Date_ConvTZ where empty values weren't defaulting to
1190           local time zone.  Robert Eden
1191
1192           Fixed a couple of problems in the generated time zones for some odd
1193           cases (America/Resolute and Asia/Tehran).
1194

VERSION 6.05 (2009-12-09)

1196       (!) %z format
1197           In Date::Manip 5.xx, the %z format in UnixDate printed the offset
1198           in the form -0500. In 6.00, I changed that to -05:00:00, but this
1199           broke RFC 822 compliance.
1200
1201           I've changed %z back to -0500, and introduced a new format (%N)
1202           which returns -05:00:00.
1203
1204           Incidentally, this is the LAST unused letter, so I am now going to
1205           have to either stop adding formats, or add some extended format
1206           syntax. Not sure yet which, but this may involve a backwards
1207           incompatible change in the future.
1208
1209       (*) Significant speedups.
1210           Thanks to Moritz Lenz and BrowserUK on perlmonks for suggestions
1211           (and a number of other people on perlmonks for suggestions that I
1212           did not end up using, but which provided a great discussion).
1213
1214       Bug fixes
1215           Fixed a bug in parse_date where the current time was getting used
1216           instead of the documented 00:00:00
1217
1218           Bug fix where DateCalc didn't work with $mode in some cases.
1219
1220           Fixed Makefile.PL/Build.PL to handle Win32::TieRegistry
1221           requirement.
1222
1223           Changed %z printf behavior back to 5.xx and added %N format. Gilles
1224           Lamiral
1225
1226           Added dm_date example script.
1227
1228       Time zone fixes
1229           Fixed bug where non-English Windows versions didn't get the time
1230           zone. Thanks to Rene Schickbauer for testing.
1231
1232       Test fixes
1233           Reduced the precision of 1 test to avoid a rounding difference when
1234           using a perl compiled with uselongdouble.  Andreas Koenig
1235

VERSION 6.04 (2009-11-25)

1237       Bug fixes
1238           Fixed a bug where events were not interpreted in the correct time
1239           zone if SetDate/ForceDate used.
1240

VERSION 6.03 (2009-11-24)

1242       Bug fixes
1243           Corrects a backward incompatibility with UnixDate. Rene Schickbauer
1244
1245       Test fixes
1246           A couple more corrections to the tests.
1247

VERSION 6.02 (2009-11-24)

1249       Bug fixes
1250           Disabled curr_zone_methods when taint checking on. I believe that
1251           Date::Manip is completely taint friendly at this point.
1252
1253       Test fixes
1254           A quick fix to make sure that the tests run correctly in other time
1255           zones.
1256

VERSION 6.01 (2009-11-23)

1258       Bug fixes
1259           (*) Fixed a bug where dates were sometimes getting the wrong time
1260           zone when SetDate/ForceDate in effect.
1261

VERSION 6.00 (2009-11-23)

1263       First release of the 6.xx series
1264           Date::Manip 6.00 is a total rethink of the module, and a nearly
1265           complete rewrite. Please refer to the Date::Manip::Changes5to6
1266           document for a list of incompatible changes.
1267
1268       Reorganization
1269           (*) Massive reorganization and near total rewrite.
1270
1271           (*) Broke into several smaller modules
1272
1273       New Features
1274           (*) Full time zone support (using tzdata 2009s)
1275
1276           Added some functionality (suggested by James Elson to improve
1277           setting the "current time".  Done with the ForceDate config
1278           variable.
1279
1280           (*) Converted languages to YAML for much easier maintenance. Patch
1281           and suggestion provided by Evan Carroll
1282
1283           Added much better formats for deltas. Suggested by Jim Hranicky.
1284
1285           Borrowed the _FindWindowsTZName function from the DateTime-TimeZone
1286           module.
1287
1288           Added SetDate config variable (based on a suggestion by Christian
1289           Campbell).
1290
1291           Added parse_format which was first suggested by Kim Ryan.
1292
1293       Other changes
1294           Several config variables deprecated
1295
1296           Thanks to Jonathan Hogue for helping test Windows additions.
1297
1298       Bug fixes (correcting problems in the 5.xx releases)
1299           Fixed a bug where "YYtoYYYY=c" wouldn't work.
1300
1301           VMS bugfix to not call `date` command.  Lane
1302
1303           New Year's Day defined using a recurrence which might push the
1304           observed day to the previous year was broken. Reported by Jerry
1305           Wilcox.
1306
1307       Language fixes
1308           Fixed typo in Turkish translation.
1309
1310           Spelling fix in Dutch. Bart Van Loon
1311
1312       Additional credits
1313           I have received many suggestions over time which were automatically
1314           handled during the 6.00 rewrite. Although the changes weren't made
1315           because of the suggestions specifically, I wanted to acknowledge
1316           them since I appreciate the suggestions.
1317
1318           I believe the first person to suggest writing Date::Manip as an OO
1319           module was Eduard Derksen.
1320
1321           Delta_Format initialization done outside of the function.  Eric
1322           Boehm
1323
1324           Added $subtract to calculation routines. First suggested by Steve
1325           Berlage.
1326
1327           Added ability to set individual parts of the date
1328           (Date::Manip::Date::set).  First suggested by Martin Thurn.
1329
1330           UnixDate (i.e. Date::Manip::Date::printf) only calculates formats
1331           when they are needed.  Eduard Derksen
1332
1333           Parsing will skip some date/time formats if requested. This was
1334           first suggested by Eduard Derksen.
1335
1336           It has been suggested several times to support multiple languages,
1337           multiple config files, or multiple sets of Date_Init options. These
1338           suggestions (by Meng Fang, Ed Avis, Christian Campbell, and perhaps
1339           others) were at the back of my mind as I developed the
1340           Date::Manip::Base class.
1341
1342           The regular expressions are all i18n friendly in anticipation of
1343           much better support for localization. First suggested by Alex
1344           Kapranoff.
1345
1346           Parsing a date ('today', 'Monday') gives a time of '00:00:00'.
1347           Suggested by Mark Aitchison.
1348
1349           Working with fractional days was suggested by Peter van Hardenberg.
1350           This is implemented in Date::Manip::Base::day_of_year method.
1351

BUGS AND QUESTIONS

1353       Please refer to the Date::Manip::Problems documentation for information
1354       on submitting bug reports or questions to the author.
1355

SEE ALSO

1357       Date::Manip       - main module documentation
1358

LICENSE

1360       This script is free software; you can redistribute it and/or modify it
1361       under the same terms as Perl itself.
1362

AUTHOR

1364       Sullivan Beck (sbeck@cpan.org)
1365
1366
1367
1368perl v5.30.2                      2020-04-27          Date::Manip::Changes6(3)
Impressum