The GitHub Actions job "Dependency Review" on 
commons-lang.git/bugfix/fastdateparser-zone-colon-parse has succeeded.
Run started by GitHub user simpleqt (triggered by garydgregory).

Head commit for run:
5c9859d212d707486b8a68449ee66d09a2b8370f / simpleqt <[email protected]>
Keep FastDateFormat able to parse the '+hh:mm' offsets its own 'Z' patterns 
format

FastDatePrinter formats three or more 'Z' pattern letters as the ISO 8601
extended offset "+hh:mm" (FastDatePrinterTest#testTimeZoneAsZ pins this),
but FastDateParser only accepted the colon-less RFC 822 form "+hhmm" for
those widths. A FastDateFormat therefore failed to parse its own output:

  getInstance("yyyy-MM-ddZZZ").format(...) == "2023-10-27-04:00"
  parse("2023-10-27-04:00") -> null, error index 10

For 'Z' with three or more letters, select a TimeZoneStrategy whose numeric
offset alternative also accepts "+hh:mm"; FastTimeZone.getGmtTimeZone()
already resolves the extended form. The variant is chosen only where the
printer emits it: 'z' and one-letter 'Z' keep exact SimpleDateFormat parity
(FastDateParserSDFTest passes unmodified), and two-letter 'Z' keeps its
existing ISO 8601 strategy. The variant accepts a strict superset of the
previous inputs and is cached per locale and cleared by FastDateParser.clear().

New FastDateFormat_ZRoundTripTest fails on master and passes with this
change; the FastDate* suites (60k+ checks) pass.

Signed-off-by: simpleqt <[email protected]>

Report URL: https://github.com/apache/commons-lang/actions/runs/41391381571

With regards,
GitHub Actions via GitBox

Reply via email to