Skip to content

feat: support all IANA timezones in sync schedule - #82

Open
renoviana wants to merge 1 commit into
Woahai321:mainfrom
renoviana:feature/full-timezone-support
Open

feat: support all IANA timezones in sync schedule#82
renoviana wants to merge 1 commit into
Woahai321:mainfrom
renoviana:feature/full-timezone-support

Conversation

@renoviana

Copy link
Copy Markdown

Description

Adds full IANA timezone support to the sync schedule. The dashboard timezone
dropdown expected a timezones field from /api/timezone/supported that the
API never returned, so the UI always fell back to a small hardcoded list.
The endpoint now returns all IANA timezones (with current UTC offset), and
both the Sync Settings dropdown and the setup wizard load the list
automatically instead of using hardcoded values. Also adds Brazilian
abbreviations (AMT, ACT, FNT) with a BR regional preference for TZ
resolution, and fixes the regional categorization of abbreviations
(the South America bucket was unreachable and military codes leaked into
continent buckets).

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change
  • Documentation update

Testing

  • Unit tests added/updated (tests/unit/test_timezone_utils.py — 24 tests passing)
  • Integration tests added/updated
  • Manual testing completed (endpoint output and normalization verified)

Note: npm test is referenced in CONTRIBUTING.md but the frontend has no
test script configured, so no frontend tests were run.

Checklist

  • Code follows the style guidelines
  • Self-review of code completed
  • Documentation updated (docs/api.md, docs/configuration.md)
  • No new warnings introduced

- Add get_all_timezones() utility listing every IANA timezone with
  label and current UTC offset, sorted by offset then name
- Return the full timezone list from /api/timezone/supported (the
  dashboard expected a "timezones" field that was never returned,
  so the UI always fell back to a hardcoded list)
- Load timezones automatically in Sync Settings and in the setup
  wizard, removing hardcoded lists (browser Intl fallback if the
  API is unavailable)
- Add Brazilian abbreviations (AMT, ACT, FNT) and BR regional
  preferences for TZ environment variable resolution
- Fix regional categorization of abbreviations: the South America
  bucket was unreachable and military codes leaked into continent
  buckets
- Add unit tests and update API and configuration docs
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