in reply to Strange Params::Validate Error

Perl version 5.8.5 is very old. Perhaps you have old versions of the modules as well, and those old versions have bugs which have been fixed. Try to update.

Replies are listed 'Best First'.
Re^2: Strange Params::Validate Error
by Monk::Thomas (Friar) on Aug 26, 2015 at 14:38 UTC

    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; }