Skip to content

Add extensible time zone resolution - #991

Merged
sebastienros merged 1 commit into
mainfrom
sebros/time-zone-resolver
Aug 21, 2026
Merged

Add extensible time zone resolution#991
sebastienros merged 1 commit into
mainfrom
sebros/time-zone-resolver

Conversation

@sebastienros

Copy link
Copy Markdown
Owner

Modern .NET can resolve IANA time zone IDs directly when ICU is available, so Fluid should not require TimeZoneConverter on those targets. Applications still need an escape hatch for Windows configurations without ICU and for custom compatibility requirements.

Changes

  • Add TemplateOptions.TimeZoneResolver and use it for explicit time_zone filter identifiers.
  • Default to TimeZoneInfo.FindSystemTimeZoneById on modern targets while retaining TimeZoneConverter for netstandard2.0.
  • Preserve existing behavior for unknown or invalid identifiers.
  • Document Windows ICU requirements, invariant and NLS modes, and custom TimeZoneConverter configuration.
  • Cover custom resolver behavior and use platform resolution in modern-target tests.

Validation

  • Built all Fluid target frameworks.
  • Ran MiscFiltersTests with both interpreted and compiled parser configurations.

Use TimeZoneInfo on modern targets, retain TimeZoneConverter for netstandard2.0, and document custom resolver configuration.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: a2db8edf-4ed7-4f81-943f-65f98b07308d
@sebastienros
sebastienros merged commit e8fc212 into main Aug 21, 2026
3 checks passed
@sebastienros
sebastienros deleted the sebros/time-zone-resolver branch August 21, 2026 17:51
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