Skip to content

fix(filter)!: read the zone of a date and time value only after the fraction - #165

Open
pdevito3 wants to merge 1 commit into
mainfrom
fm/qk-breaking-zone-after-fraction
Open

pdevito3 wants to merge 1 commit into
mainfrom
fm/qk-breaking-zone-after-fraction

Conversation

@pdevito3

@pdevito3 pdevito3 commented Oct 1, 2026 •

Copy link
Copy Markdown
Owner

For later consideration in a major version. Do not merge now. This PR is one of two PRs that replace #144. Each PR has one breaking change. The captain decides on each PR separately.

#134 restored the v1.14.2 rule (restore commit b49ad2b). This PR re-applies this part of 5c84ef6.

What breaks

An unquoted date and time value with the zone before the fraction throws ParsingException. On v1.14.2 and main, the value parses.

Example

Input v1.14.2 and main This PR
SpecificDateTime == 2024-01-15T08:00:00Z.5 parses ParsingException
SpecificDate == 2024-01-15T10:00:00+02:00.500 parses ParsingException
SpecificDateTime == 2024-01-15T08:00:00.5Z parses parses (no change)

Justification

A zone before the fraction is not an ISO 8601 format. The README shows only ISO 8601 values. The date parser now reads the date, the time, the fraction, and then the zone.

Migration

Write the zone after the fraction: 2024-01-15T08:00:00.5Z.

README

The date and time format list says that the zone comes after the fraction. It also says that an unquoted value with the zone before the fraction throws a ParsingException.

Tests

  • New unit test: zone_before_the_fraction_throws (2 cases).
  • The v1.14.2 cases Z.5 and +02:00.500 are removed from the date tests.
  • dotnet test on this branch: 470 unit tests and 296 Postgres integration tests (Testcontainers) pass, 0 failures.

…raction

The date and time parser accepted the zone before the fraction, for example 2024-01-15T08:00:00Z.5. Read the zone only after the fraction, like ISO 8601.

BREAKING CHANGE: an unquoted date and time value with the zone before the fraction (for example 2024-01-15T08:00:00Z.5) now throws ParsingException. Write the zone after the fraction: 2024-01-15T08:00:00.5Z.
@pdevito3
pdevito3 force-pushed the fm/qk-breaking-zone-after-fraction branch from 47f8e8f to 4d9a1b7 Compare October 1, 2026 21:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant