julman99/gson-fire

RFC3339 Parser is wrong

crystalin opened this issue · 2 comments

Hi sir,

When looking at your code, I notice that your RFC3339 Parser (https://github.com/julman99/gson-fire/blob/master/src/main/java/io/gsonfire/util/RFC3339DateFormat.java#L93) is considering the fraction of a second as milliseconds, which is incorrect according to the RFC3339 specs.

It should be a fraction of a second, made of 1 or more digits
see (https://tools.ietf.org/html/rfc3339#section-5.6)

this would be a valid rfc3339: 2017-01-01T01:01:01.123456789Z

Alan

That is correct, but the Date class in Java can't have more precision than milliseconds. The question would be if 2017-01-01T01:01:01.123999999Z should interpreted as 2017-01-01T01:01:01.123Z or 2017-01-01T01:01:01.124Z