File: Changes6.pod

package info (click to toggle)
libdate-manip-perl 6.57-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 14,692 kB
  • ctags: 1,533
  • sloc: perl: 217,600; sh: 54; makefile: 11
file content (1520 lines) | stat: -rw-r--r-- 37,778 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
# Copyright (c) 2009-2016 Sullivan Beck. All rights reserved.
# This program is free software; you can redistribute it and/or modify it
# under the same terms as Perl itself.

# Changes are listed in the order:
#
#   =item SPECIFIC IMPORTANT CHANGE
#   =item New features
#   =item Bug fixes
#   =item Time zone fixes
#   =item Language fixes
#   =item Test fixes
#   =item Documentation fixes

=pod

=head1 NAME

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

=head1 SYNOPSIS

This describes the changes made to the Date::Manip module in the 6.xx
series of releases.  Major changes are marked with asterisks (*).

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 (!).

=head1 VERSION 6.61  (planned 2017-12-01)

=head1 VERSION 6.60  (planned 2017-09-01)

=head1 VERSION 6.59  (planned 2017-06-01)

=head1 VERSION 6.58  (planned 2017-03-01)

=head1 VERSION 6.57  2016-12-01

=over 4

=item Time zone fixes

Newest zoneinfo data (tzdata 2016j)

=item Test fixes

A faulty test was failing in a few places.  RT 118705

Another test was failing due to a perl bug that popped up in 5.25.7.  Tweaked
the test to bypass the bug.  RT 118862

=back

=head1 VERSION 6.56  2016-09-09

=over 4

=item Test fixes

A faulty test was failing most places.  New release to correct that problem.
RT 117404

=back

=head1 VERSION 6.55  2016-09-01

=over 4

=item Fixed bug where C<$::TZ> wasn't used

The C<$::TZ> variable was not getting interpreted correctly when searching
for a timezone.  RT 114949.

=item Fixed bug where recurrences were not parsed correctly

Passing in incorrect values for a field was not trapped in all cases
and it led to problems.  All values passed in to a recurrence are now
correctly checked.  Albert Hilazo

=item Fixed a bug in some methods of creating new objects

Some methods of creating new objects based on existing objects did not
correctly use the existing object.  Bug has never been reported, but was
discovered when adding tests to get 100% coverage.

=item Time zone fixes

Newest zoneinfo data (tzdata 2016f)

=item Test fixes

Added a number of new tests based on Devel::Cover.

=back

=head1 VERSION 6.54  2016-05-31

=over 4

=item Deprecation of Date::Manip 5.xx tests

By default, the Date::Manip 5.xx tests will no longer run.  Changes to
the timezone data can cause failures.  Since Date::Manip 5.xx is no longer
supported in any way, these tests will no longer run on a system where
6.xx can be run.  Richard Jelinek.

=item Deprecation of TZ postponed

The deprecation of the TZ variable has been postponed to March 2017.  I
decided that 1 year was not enough notice (especially since not everyone
will have updated Date::Manip since March 2015 when the warning was added.

=item Bug fixes

Changed requirement for ExtUtils::MakeMaker to 6.67_01.  RT 112286

Fixed a bug where a timezone abbreviation was not parsed correctly when
passed in as a value to the SetDate, ForceDate, or TZ config variables.
Based on a report in perlmonks.org.

=item Time zone fixes

Newest zoneinfo data (tzdata 2016d)

Made some improvements to how I handled the timezone data which resulted
in a few of the default timezones being changed.

=item Documentation fixes

Fixed one more typo.  RT 114095

Clarified the Config document.  Based on a report in perlmonks.org.

=back

=head1 VERSION 6.53  2016-03-02

=over 4

=item Bug fixes

Date::Manip::Delta::cmp had a bug in it's comparison.  Ian Gibbs.

The secs_since_1970_GMT method was missing a test to see if it was
a valid object.  RT 111915

=item Time zone fixes

Newest zoneinfo data (tzdata 2016a)

=item Documentation fixes

Lots of typos fixed.  I was using podspell to do spell checking, but it was
discarding too much real text (which wasn't getting checked as a result).
Switched to pod2text which does a better job.  RT 110025

=back

=head1 VERSION 6.52  2015-12-01

=over 4

=item B<Added date ranges on unmodified dates in Recur>

The date range can now be specified for either the fully modified dates, or
the unmodified dates.  This will make it easier to work with holidays in some
instances.  Based on L<http://perlmonks.org/?node_id=1148735>.

=item B<Added IWn and NWn recurrence modifiers>

Based on L<http://perlmonks.org/?node_id=1148735>.

=item B<(!) Reworked holidays slightly>

Previously, every line in the Holidays section defined a unique holiday.
Now, the names determine the list of holidays.

It is not allowed to have two separate holidays named exactly the same.
It IS allowed to have complex holidays that require two (or more) lines
in the Holidays section to define them completely.

Based on L<http://perlmonks.org/?node_id=1148735>.

=item Bug fixes

Fixed a bug where the RecurRange config variable wasn't getting used.

Fixed a bug where some deltas were not parsed correctly as dates.
RT 109600

=item Time zone fixes

Newest zoneinfo data (tzdata 2015g)

=item Test fixes

Added a number of new tests based on Devel::Cover.

=back

=head1 VERSION 6.51  2015-09-01

=over 4

=item Changes suggested by perlcritic

Played with perlcritic and made a few minor changes based on it's suggestions.
I doubt I will use perlcritic significantly.

=item B<(!) Date::Manip::Delta::value now returns an empty string>

If a delta has an error, or no valid delta in it, the value method returns
an empty string instead of undef.  This is to be consistent with the
Date::Manip::Date::value method which returns an empty string.

=item Bug fixes

Fixed a bug where date/delta calculations with deltas that are too
large was not working correctly.  They now set an error condition
and fail.  RT 105737

Fixed a bug introduced by the previous patch and luckily discovered
pre-release by Tom Wyant.

Fixed code that produced a warning in 5.22.0.  Tom Wyant

=item Improved DM6 ParseDate and ParseDateString

Added C<@opts> argument.  Based on RT 105622.

=item Time zone fixes

Newest zoneinfo data (tzdata 2015f)

Now uses /etc/localtime as a method to determine the local timezone.
Patch supplied in RT 105159 (modified by me).  The patch uses some
code derived from DateTime::TimeZone .

Clearer message when the date is not valid in the timezone.

=item Test fixes

Added a number of new tests based on Devel::Cover.  Over the next several
releases, I intend to continue to add tests until coverage is 100%.

=item Documentation fixes

Fixed a typo.  RT 105546

=back

=head1 VERSION 6.50  2015-06-01

=over 4

=item Bug fixes

Not really a bug, but 6.49 got a bunch of NYTprof data bundled with it
by mistake.  It's been removed.  RT 103252

Fixed a bug where information about whether a date was complete or
truncated was discarded.  Jim Avera

Fixed a bug where SetDate with a zone alias failed.

Added the Format_MMMYYYY config variable to allow the truncated format
mmmYYYY to be parsed instead of mmmDDYY.  David W. Morganwalp and RT 103142

Fixed Makefile.PL/Build.PL to correct for a change on perl on windows
which changes a module prereq requirement.  Alexandr Ciornii

=item Time zone fixes

Newest zoneinfo data (tzdata 2015d)

Added aliases for older HP-UX time zones.  RT 104141

=item Documentation fixes

Fixed URL for tzdata.  Mohammad S Anwar

Better POD formats.

Fixed a documentation error.  RT 103966

=back

=head1 VERSION 6.49  2015-03-01

=over 4

=item Added a deprecation warning

The TZ config variable is going away.  Added a deprecation warning.

=item Some speedups for timezone handling

Based on RT 102284, I have done some optimization of the timezone handling
code.

=item Bug fixes

Added the missing is_date base method to Date::Manip::Base.  Mario Domgoergen.

=item Time zone fixes

Newest zoneinfo data (tzdata 2015a)

=item Language fixes

A number of corrections by Nicholas Riley

=back

=head1 VERSION 6.48  2014-12-01

=over 4

=item Put repository on GitHub

Suggested by Gabor Szabo

=item parse_time now parses ISO 8601 times

The parse_time routine wouldn't correctly parse ISO 8601 times.  This
is now fixed.

=item Parsing special dates with timezones now works

Parsing special date formats with timezones is now supported such as:

   Christmas at noon PST
   in 3 days at noon PST
   now PST
   epoch 3000000 PST

=item dm_zdump modified

To match the newest version of zdump, the gmtoff is now added at the end
of each line.

=item Bug fixes

Fixed a bug in the printf method that would not handle embedded newlines
correctly (and resulted in an infinite loop if it were preceded by a '%').
Henrique Martins

Fixed a bug where '24:00' was not parsed correctly (though '24:00:00' was).

Fixed a bug where fractional values separated by a comma weren't parsed
correctly.

=item Time zone fixes

Newest zoneinfo data (tzdata 2014j)

=back

=head1 VERSION 6.47  2014-09-01

=over 4

=item Time zone fixes

Newest zoneinfo data (tzdata 2014f)

=item Language fixes

Fixed some encoding errors in the language pod documentation.

=back

=head1 VERSION 6.46  2014-07-08

=over 4

=item Broken distribution

The distribution contained an temporary edit file that caused problems.
RT 96459

=item Time zone fixes

Newest zoneinfo data (tzdata 2014e)

=item Language fixes

Added some plural abbreviations that were missing.  RT 96944

=back

=head1 VERSION 6.45  2014-06-05

=over 4

=item Fixed a test

One test was failing (reported in RT 96249 as well as several CPAN Tester
reports).

=back

=head1 VERSION 6.44  2014-06-01

=over 4

=item B<(*) Improvements to UTF8 handling>

A number of changes based on RT 93545 and other discussion with Yuri Nikulin
including:

Case insensitive matching of UTF8 strings should work all the time.

Fixed two significant bugs in regexps for parsing dates.

Improvements to UTF8 handling.

Corrected some problems with Russian and added the cp1251 encoding.

One correction to Romanian.

Added several new test scripts.

Preliminary patches were supplied by Yuri.

=item New features

Modified the parse_format function to return %+ if desired.  Mike Cappella

=item Time zone fixes

Newest zoneinfo data (tzdata 2014c)

=item Documentation fixes

Clarified some DM6 functions.  David Close.

Fixed a typo.  RT 95619

=back

=head1 VERSION 6.43  (2014-03-03)

=over 4

=item Several changes to distribution files

I made several changes to Build.PL, Makefile.PL, META.yml in order to
improve the quality (or kwalitee) of the module.  None of these should
impact anyone using the module.

=item Time zone fixes

Newest zoneinfo data (tzdata 2013i)

=item Documentation fixes

Cleaned up some of the Recur documentation.  Suggested by RT 92794

=back

=head1 VERSION 6.42  (2013-12-02)

=over 4

=item Added ParseDateFormat function

Added the ParseDateFormat function to the DM6 functional interface
in response to RT 89286.

=item Added Common Log format

Added the date format used in apache logs: 11/Oct/2000:13:55:36 -0700
RT 89286.

=item Time zone fixes

Newest zoneinfo data (tzdata 2013h)

=item Bug fixes

Fixed a bug where dates of the form of a delta with a timezone attached
(i.e. "1 day ago at midnight UTC") failed.  RT 89256

Fixed a bug where events handling gave a warning if there were no events
that applied.  RT 90344

=back

=head1 VERSION 6.41  (2013-09-05)

=over 4

=item Bug fixes

Removed a .swp file accidentally left in the package.  RT 85845

Fixed a bug in parse_format where times between 00:00:00 and 01:00:00 weren't
parsed correctly.  Ole Nomann Thomsen

Fixed generated META.* files to not require Module::Build 0.39.  RT 86137

Fixed a bug where parse_format did not work with a '%s' format.  RT 87498

Fixed a bug where find_encoding wasn't imported from the Encode module.  RT 87665

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

=item Time zone fixes

Newest zoneinfo data (tzdata 2013d)

=back

=head1 VERSION 6.40  (2013-06-01)

=over 4

=item Removed PODs

POD documentation is no longer generated for Date::Manip::TZ::* and
Date::Manip::Offset::* modules.

=item Time zone fixes

Newest zoneinfo data (tzdata 2013c)

=back

=head1 VERSION 6.39  (2013-03-01)

=over 4

=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 RT 82991).

=item Added get_config method

The get_config method was added to all classes.  Suggested by Philippe Poilbarbe.

=item Language fixes

Fixed a German language problem.  Gosta Oelstrom

=item Documentation fixes

Documented workaround for dmake problem in strawberry perl.  Discussed on
perlmonks and RT 79837.

Clarified the Examples page.  Winston Heng

=back

=head1 VERSION 6.38  (2013-01-08)

=over 4

=item B<(*) 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 OSX, Windows, and SunOS.  Future versions of
Date::Manip will be explicitly distributed in the 'gnu' tar archive format.

Reported by Jay Allen and RT 80594.

=item B<(*) 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.

If at all possible, please use Date::Manip 6.xx instead.

=item B<(!) Removed some deprecated config variables>

The following config variables have been removed.

   IntCharSet
   RecurNumFudgeDays

=back

=head1 VERSION 6.37  (2012-12-01)

=over 4

=item Bug fixes

Fixed a bug where ISO 8601 format YYYY-WXX-D didn't work if the week ended
up in December.  Gordon Lugauer.

=item Time zone fixes

Newest zoneinfo data (tzdata 2012j)

=item Documentation fixes

Spelling error fixed.  RT 80621

=back

=head1 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).

=head1 VERSION 6.35  (2012-10-31)

This was an interim release to fix the problem with the PATH being
replaced.

=over 4

=item Removed dependency on YAML

I've reverted the language data files to perl literals instead of YAML.  Though
not quite as easy to maintain, it solves a few problems.  Patch provided by
Christopher Madsen.

=item Bug fixes

Last versions fix for RT 78566 overrode the PATH even when that wasn't
appropriate.  This is fixed.  Report and patch supplied by RT 80435.

=back

=head1 VERSION 6.34  (2012-09-04)

This is a bug fix so that the PATH won't break non-unix installs.

=over 4

=item Bug fixes

Put the PATH inside the Unix section so it doesn't affect non-unix
environments.  Geoff Rowell

=back

=head1 VERSION 6.33  (2012-09-01)

=over 5

=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.

Cleaned up handling of delta field lengths (they are now only calculated
once.

Added cmp method.  Henrique Martins

=item Bug fixes

The language modules read from the DATA section, but I never closed the
filehandle.  This is fixed now.  Patch by Doru Theodor Petrescu

Added better loading of DM5/DM6 modules.  RT 78512

Added a secure PATH to TZ.pm for taint reasons.  In response to RT 78566

=item Time zone fixes

Now supports timezones in files with spaces where there should be
underscores.  This occurs in RHEL desktop.  RT 78566

Newest zoneinfo data (tzdata 2012e)

=item Documentation fixes

Minor fix.  Henrique Martins

=back

=head1 VERSION 6.32  (2012-06-01)

=over 4

=item Modified Build.PL

Build.PL now has better support for building (or not building) HTML files.
Apparently this is slow on Windows.  Patch provide in RT 75118.

=item Bug fixes

Fixed a bug in business day calculations.  RT 76336

Fixed a bug where Delta/Recur objects weren't correctly created.  Zsban Ambrus

Fixed a bug where SetDate/ForceDate config variables could not be included
in a file.  Jerry Wilcox

=item Time zone fixes

Newest zoneinfo data (tzdata 2012c).

=item Documentation fixes

Better support for UTF-8 in autogenerated language module pod files.

=back

=head1 VERSION 6.31  (2012-03-01)

=over 4

=item Added extended formats to printf method.

These include the %<A=NUM>, %<a=NUM>, %<v=NUM>, %<B=NUM>, %<b=NUM>,
%<p=NUM>, and %<E=NUM> formats.  Chris Jackson

=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).

=item Added PeriodTimeSep config variable.

This allows you to use a period as a time separator.  Ed Avis

=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.

=item Added new recur modifiers

Added WDn, IBD, and NBD modifiers.

=item Added a new date format

You can now parse '2nd day in May' formats. Randy Harmon

=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:

   -04:00 (EDT)
   -04:00 EDT

Requested by Steven Melendez.

=item Deltas now support fractional values.

You can now use a delta of 1.5 days.  RT 42699

=item Multiple holidays supported

A date may now have multiple holidays.  Keith Minkler

=item Bug fixes

Fixed a bug where abbreviations were not being examined case insensitively.
Jurgen Muck

The Holidays section may be safely split across multiple config files.
A bug prevented this from working before.

=item Language fixes

The Norwegian translation was broken due to a typo in the language module.

Included complete documentation for each language.

Fixed a couple problems with Danish.  Nicholas Oxhaj

Added Finnish (from a VERY old mail that I overlooked somehow).  Iikka
Virkkunen

Cleaned up the values used by printf directives to give the expected
result.

=item Documentation fixes

Fixed a typo.  Nicholas Bamber

=back

=head1 VERSION 6.30  (2012-01-11)

=over 4

=item B<(*) (!) Reworked deltas>

Much of the delta code was reworked.

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.

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.

Added support for non-normalized deltas.  See the $no_normalize
option for the parse and set methods.

Removed limitations on subtract=2 not working with business
calculations.

Thanks to discussion on perlmonks, and RT 65774 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.

=item B<(!) Modified Delta_Format>

In conjunction with the above work, added the 'semi' mode to
Delta_Format.

=item B<(!) Removed some deprecated config variables>

The following config variables have been removed.

   GlobalCnf
   IgnoreGlobalCnf
   PersonalCnf
   PersonalCnfPath
   PathSep

   Internal
   DeltaSigns
   UpdateCurrTZ
   ConvTZ
   OldConfigFiles
   ResetWorkDay

=item Time zone fixes

Newest zoneinfo data (tzdata 2011n).  RT 71595

Corrects a bug where +0000 and -0000 offsets were not parsed correctly.
Aaron Hall

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.

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 'CET'.

Previously, a date with CET in it was interpreted as in the CET timezone.
Now it is interpreted as in a timezone with the CET abbreviation.

=item Better handling of undef in DM6

The date/delta parsing routines in DM6 will now handle an undef argument
without issuing a warning.  Earl C. Ruby III

=item Bug fixes

Fixed a bug with the parse_format %f and %i formats.  Tommi Rintala

Fixed a bug where the Date::Manip::Delta::set function didn't work
to set the month value.

Fixed a bug where parsing some dates near during a DST change failed.

Minor bug fix when using Delta_Format.  Prompted while investigating
RT 41095.

=back

=head1 VERSION 6.25 (2011-08-31)

=over 4

=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

=item B<(*) Set official removal dates for old config variables>

Config variables will be removed 2 years after they are deprecated (except
for the TZ variable which, due to it's wide use, will be kept for 4 years).

=item Time zone fixes

Newest zoneinfo data (tzdata 2011i)

=back

=head1 VERSION 6.24 (2011-06-13)

=over 4

=item New features

Spaces are ignored in the SetDate/ForceDate config values.  Zsban Ambrus

=item Bug fixes

Fixed a bug where 'in one week' wasn't correctly parsed.  E. M. Shtern

Fixed a bug where options passed in to the 'new' as a listref weren't handled
properly.  Zsban Ambrus

=item Time zone fixes

Newest zoneinfo data (tzdata 2011g)

=back

=head1 VERSION 6.23 (2011-04-15)

=over 4

=item B<(!) 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.

=item B<(*) Reworked holidays defined as recurrences>

Improved dealing with the bootstrap problem of defining holidays, especially
those that contain business day flags.  Mike Tonks

=item New features

The printf function will now take multiple format strings and return a list
of values.  Zsban Ambrus

=item Bug fixes

Fixed a bug where GlobalCnf wasn't working.  Peter Edwards

Improved error messages in a few cases.

Fixed a bug where one invalid date/timezone check was ignored.  Morten Bjornsvik

Fixed a bug where '$base2 = new Date::Manip::Base $base1' wasn't working.  RT 67143

Fixed a bug where passing dates in to the Recur->dates method failed.  RT 67144

Fixed a bug where the mode wasn't being preserved correctly for a delta.  RT 67150

Fixed a bug in recurrences where a base date outside of a date range with a very
uncommon recurrence format would not work correctly.

Fixed a problem where the '%s' printf option didn't work in GMT.
Jean-Michel Hiver

=item Time zone fixes

Newest zoneinfo data (tzdata 2011f)

=item Documentation fixes

Fixed two bad recurrence examples in the documentation.  Peter Edwards
and Mike Tonks

=back

=head1 VERSION 6.22 (2011-03-07)

=over 4

=item Time zone fixes

Newest zoneinfo data (tzdata 2011b)

Fixed a bug where the gmtoff method of getting the local timezone was broken.
Martin Zinser.

Fixed the 'env' method of determining the local time zone to allow the
value to be an offset of seconds since UTC.  This allows the VMS
SYS$TIMEZONE_DIFFERENTIAL variable to work correctly.  Martin Zinser.

Removed the SYS$TIMEZONE_RULE method from VMS 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.

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.

=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.

=item Documentation fixes

Added a sample config file document.  Based on discussion with Rich Duzenbury.

=back

=head1 VERSION 6.21 (2011-01-10)

=over 4

=item New features

Deltas may now contain spelled out numbers, so 'in 2 weeks' and 'in two weeks'
will both work.  Daniel Shahaf

=item Bug fixes

Fixed a bug where week_of_year didn't work in some cases.  Chris Eveland.

Fixed a minor potential bug.  Geraint Edwards.

=item Time zone fixes

Updated windows time zone aliases.  Daniel Harding

=item Language fixes

Added Norwegian.  Glenn Sogn

=back

=head1 VERSION 6.20 (2010-12-01)

=over 4

=item B<(*) (!) 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.

A recurring event is now calculated relative to the base date, NOT 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):

   D(0)                   = Jan 31
   D(1)  = D(0) + 1 month = Feb 28
   D(2)  = D(1) + 1 month = Mar 28
   ...

The new behavior is:

   D(0)                       = Jan 31
   D(1)  = D(0) + 1*(1 month) = Feb 28
   D(2)  = D(0) + 2*(1 month) = Mar 31
   ...

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.

The meaning of the base date has changed slightly. It is much more
meaningful and useful now.

Added iterator functions.  Daniel LaLiberte

The RecurNumFudgeDays variable is no longer used and is deprecated.

=item Time zone fixes

Newest zoneinfo data (tzdata 2010o)

=back

=head1 VERSION 6.14 (2010-10-20)

=over 4

=item B<(*) 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.

=item Bug fixes

Fixed a bug where recurrence handling was broken.  RT 62128

=item Documentation fixes

A lot of documentation was cleaned up to be easier to read, and better
organized.

=back

=head1 VERSION 6.13 (2010-10-13)

=over 4

=item New features

Added the input methods to Date::Manip::Date and Date::Manip::Delta.  Ed Avis.

The 'date +%z' command will also be used to determine the timezone.  Oliver Schulze

=item Bug fixes

Several changes to try to get rid of a memory leaks reported in RT
54937.  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.

   Reorganized Base/TZ to get rid of circular references.
   Added end blocks to clean some global variables.
   Got rid of switch/given structures.

Fixed a bug where an incomplete date with 'last' in it was causing an
error.  RT 60138

Fixed a bug where 'Sunday, 9th Jan 1972' wasn't parsed correctly.  RT 57832

=item Time zone fixes

Fixed a bug where Zones.pm was generated with the abbreviations in the wrong
order.  Amish Chana.

=item Language fixes

French month abbreviations now support periods.  Bernard Haerri

=item Test fixes

Added tests from RT 29655 to make sure that the problem never recurs.

=item Documentation fixes

Fixed documentation problem with the new_* methods in Date::Manip::Obj.  Options
must be passed in as \@opts rather than @opts.

Cleaned up some of the documentation.

=back

=head1 VERSION 6.12 (2010-09-27)

=over 4

=item B<(!) 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.

=item New features

Added the Encoding config variable.

Now supports parsing the EXIF date format.  Rhesa Rozendaal

=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 META.yml).

Fixed a bug where the Date::Manip::Date::set method was broken when setting
individual fields.  Helmut A. Bender

Fixed a bug where set didn't work in Date::Manip::Delta. Patch provided in
RT 59096.

=item Time zone fixes

Newest zoneinfo data (tzdata 2010m)

=item Language fixes

B<(*) Converted all language files to UTF-8 and added rudimentary support for
character encodings. Some assistance by Stephen Ostermiller.>

Fixed problem in Polish, Dutch.  Stephen Ostermiller

Extended support for 'nth' up to 53rd.  Paco Regodon

Added some corrections to German.  Dieter Lange

=item Documentation fixes

Clarified Date::Manip::Recur documentation based on RT 59132.

=back

=head1 VERSION 6.11 (2010-04-30)

=over 4

=item Bug fixes

Fixed a problem in Build.PL that had an incorrect module requirement.

=back

=head1 VERSION 6.10 (2010-04-29)

=over 4

=item B<(*) 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.

This is described more fully in the Date::Manip::Problems document.

=item B<(!) 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, ISDST,
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.

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.

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.

See the Date::Manip::TZ manual (under the zone method) for more
information.

=item Bug fixes

Fixed a bug where Date_ConvTZ not working correctly with time zones
specified by offset.  Chris Butler

Fixed a bug where business mode calculations involving minutes was not
handled correctly.  Damien Moore

Fixed a bug where business mode calculations failed in some cases.  RT
56638

=item Time zone fixes

Newest zoneinfo data (tzdata 2010i)

Changed Date::Manip::TZ::zone so "dst" is sometimes the default
$dstflag.  Based on the bug report by Chris Butler.

OpenUNIX puts a colon at the start of some time zones. It's removed.
Jean Hassler

=item Test fixes

Converted tests to Test::Inter

=item Documentation fixes

Fixed a documentation bug in Date::Manip::TZ where "stdonly" was
listed as the default value for $dstflag, but in actuality, "std" is
the default.

=back

=head1 VERSION 6.07 (2010-02-05)

=over 4

=item Bug fixes

Fixed bug in Date_TimeZone where it wasn't returning the time zone.
Robert Eden

=back

=head1 VERSION 6.06 (2010-02-05)

=over 4

=item Bug fixes

Minor bug where %Z printf format didn't always work.

Added support for 5pm back in (it was omitted accidentally).  Mark Kennedy

Fixed a minor warning.  Morten Bjoernsvik

Some additional speedups.

=item Time zone fixes

Newest zoneinfo data (tzdata 2010b)

Added dm_zdump example script.

Improved TZ::periods functionality

Fixed bug in Date_ConvTZ where empty values weren't defaulting to local time zone.
Robert Eden

Fixed a couple of problems in the generated time zones for some odd
cases (America/Resolute and Asia/Tehran).

=back

=head1 VERSION 6.05 (2009-12-09)

=over 4

=item B<(!) %z format>

In Date::Manip 5.xx, the %z format in UnixDate printed the offset in
the form -0500. In 6.00, I changed that to -05:00:00, but this broke
RFC 822 compliance.

I've changed %z back to -0500, and introduced a new format (%N) which
returns -05:00:00.

Incidentally, this is the LAST 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.

=item B<(*) 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).

=item Bug fixes

Fixed a bug in parse_date where the current time was getting used
instead of the documented 00:00:00

Bug fix where DateCalc didn't work with $mode in some cases.

Fixed Makefile.PL/Build.PL to handle Win32::TieRegistry requirement.

Changed %z printf behavior back to 5.xx and added %N format. Gilles
Lamiral

Added dm_date example script.

=item Time zone fixes

Fixed bug where non-English Windows versions didn't get the
time zone. Thanks to Rene Schickbauer for testing.

=item Test fixes

Reduced the precision of 1 test to avoid a rounding difference when
using a perl compiled with uselongdouble.  Andreas Koenig

=back

=head1 VERSION 6.04 (2009-11-25)

=over 4

=item Bug fixes

Fixed a bug where events were not interpreted in the correct time zone
if SetDate/ForceDate used.

=back

=head1 VERSION 6.03 (2009-11-24)

=over 4

=item Bug fixes

Corrects a backward incompatibility with UnixDate. Rene Schickbauer

=item Test fixes

A couple more corrections to the tests.

=back

=head1 VERSION 6.02 (2009-11-24)

=over 4

=item Bug fixes

Disabled curr_zone_methods when taint checking on. I believe that Date::Manip
is completely taint friendly at this point.

=item Test fixes

A quick fix to make sure that the tests run correctly in other time zones.

=back

=head1 VERSION 6.01 (2009-11-23)

=over 4

=item Bug fixes

B<(*) Fixed a bug where dates were sometimes getting the wrong time zone when
SetDate/ForceDate in effect.>

=back

=head1 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.

=over 4

=item Reorganization

B<(*) Massive reorganization and near total rewrite.>

B<(*) Broke into several smaller modules>

=item New Features

B<(*) Full time zone support (using tzdata 2009s)>

Added some functionality (suggested by James Elson to improve setting
the "current time".  Done with the ForceDate config variable.

B<(*) Converted languages to YAML for much easier maintenance. Patch and
suggestion provided by Evan Carroll>

Added much better formats for deltas. Suggested by Jim Hranicky.

Borrowed the _FindWindowsTZName function from the DateTime-TimeZone
module.

Added SetDate config variable (based on a suggestion by Christian Campbell).

Added parse_format which was first suggested by Kim Ryan.

=item Other changes

Several config variables deprecated

Thanks to Jonathan Hogue for helping test Windows additions.

=item Bug fixes (correcting problems in the 5.xx releases)

Fixed a bug where "YYtoYYYY=c" wouldn't work.

VMS bugfix to not call `date` command.  Lane

New Year's Day defined using a recurrence which might push the observed
day to the previous year was broken. Reported by Jerry Wilcox.

=item Language fixes

Fixed typo in Turkish translation.

Spelling fix in Dutch. Bart Van Loon

=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.

I believe the first person to suggest writing Date::Manip as an OO
module was Eduard Derksen.

Delta_Format initialization done outside of the function.  Eric Boehm

Added $subtract to calculation routines. First suggested by Steve Berlage.

Added ability to set individual parts of the date (Date::Manip::Date::set).
First suggested by Martin Thurn.

UnixDate (i.e. Date::Manip::Date::printf) only calculates formats when
they are needed.  Eduard Derksen

Parsing will skip some date/time formats if requested. This was first
suggested by Eduard Derksen.

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.

The regular expressions are all i18n friendly in anticipation of much
better support for localization. First suggested by Alex Kapranoff.

Parsing a date ('today', 'Monday') gives a time of '00:00:00'. Suggested
by Mark Aitchison.

Working with fractional days was suggested by Peter van Hardenberg.
This is implemented in Date::Manip::Base::day_of_year method.

=back

=head1 BUGS AND QUESTIONS

Please refer to the L<Date::Manip::Problems> documentation for
information on submitting bug reports or questions to the author.

=head1 SEE ALSO

L<Date::Manip>       - main module documentation

=head1 LICENSE

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

=head1 AUTHOR

Sullivan Beck (sbeck@cpan.org)

=cut