Skip to content

v2.9.1

Latest

Choose a tag to compare

@markusmobius markusmobius released this 13 Sep 22:17

Go-Dateutil v2.9.1

Native Go shared date compatibility for HtmlDate and DateParser. The upstream baseline remains python-dateutil 2.9.0.post0; CPython compatibility is separately pinned to 3.14.6.

Changes

  • Add compat/datetime.FromISOFormat with CPython calendar/week dates, midnight rollover, microsecond offsets, and rejection behavior.
  • Add compat/datetime.Timestamp with local naive gap/fold resolution and Python-compatible floating-point rounding.
  • Add explicit parser.LocalTimezone / ParseWithLocalTimezone and fold state; preserve naive wall fields through DST gaps.
  • Expose the existing Python Unicode decimal helper for consumers. No runtime dependencies or worker threads were added.
  • Update README installation and API documentation; retain source provenance, independent fixtures, and the original CPython license.

Verification

17,256 independent Python-derived comparisons across lexer, parser, relative arithmetic, ISO parsing, parser contexts, and timestamps. Passed Linux Go 1.26.0/1.27.1, native Windows Go 1.27.1, race tests, vet, module verification/tidiness, and byte-identical pinned-Python regeneration.

This is the documented shared subset, not every Dateutil or CPython API. Complete HtmlDate integration remains a separate consumer gate. Existing v2.9.0 tags and fixtures are unchanged.

go get github.com/markusmobius/go-dateutil/v2@v2.9.1