Hello, I think that the parse functions of DateTime::Format::Duration do not parse the nanoseconds correctly.
Here an example: --- use strict; use warnings; use DateTime::Duration; use DateTime::Format::Duration; my $f = DateTime::Format::Duration->new(pattern => '%M:%S,%2N', normalise => 1); my $dur = $f->parse_duration("34:48,14"); my %deltas = $f->parse_duration_as_deltas("34:48,14"); print $dur->nanoseconds; # 14 --> I'd expect 140000000 print "\n"; print $deltas{nanoseconds}; # 14 --> I'd expect 140000000 print "\n"; print $f->format_duration($dur); print "\n"; --- The parse functions store the value 14 nanoseconds in the DateTime::Duration object. But in my opinion it should be 140000000. Is this a bug or am I understanding something wrong? I also tried the parse function of "DateTime::Format::Strptime". It's the same concept but with a DateTime object instead of a DateTime::Duration object. This parse function is parsing the nanoseconds as I expect it, i.e. 140000000. --- use strict; use warnings; use DateTime::Format::Strptime; my $Strp = new DateTime::Format::Strptime(pattern => '%M:%S,%2N' ); my $dt = $Strp->parse_datetime('34:48,14'); print $dt->nanosecond; # 140000000 --> correct --- Thank you for your help Dirk