Try to update.
On a newer Perl version it looks fine, even without setting locale parameter:
% perl /tmp/scratch.pl
2015-08-24T17:36:47
% perl -v
This is perl 5, version 20, subversion 2 (v5.20.2) built for x86_64-linux-gnu-thread-multi
...
% dpkg -l|grep libdatetime.*perl
...
ii libdatetime-perl 2:1.20-1
ii libdatetime-locale-perl 1:0.46-1
...
/tmp/scratch.pl contains:
use warnings;
use strict;
use DateTime;
# [faked method call]
print MakeDateTime(undef, 2015, 8, 24, 17, 36, 47, 144);
sub MakeDateTime {
my $self = shift;
my ($Year, $Month, $Day, $Hour, $Minute, $Second, $MilliSecond) = @_
+;
my $DateTime = DateTime->new(
year => $Year,
month => $Month,
day => $Day,
hour => $Hour,
minute => $Minute,
second => $Second,
nanosecond => ($MilliSecond * 1000000),
time_zone => 'America/New_York',
);
return $DateTime;
}
|