Skip to content

fix: schedule automatic updates for the Unix epoch - #389

Merged
liuliu-dev merged 1 commit into
github:mainfrom
feritcemkahraman:fix/schedule-unix-epoch-updates
Oct 19, 2026
Merged

liuliu-dev merged 1 commit into
github:mainfrom
feritcemkahraman:fix/schedule-unix-epoch-updates

Conversation

@feritcemkahraman

Copy link
Copy Markdown
Contributor

A duration with datetime="1970-01-01T00:00:00.000Z" renders its initial value but does not schedule automatic updates. The observer treats the valid timestamp 0 as a missing date.

Schedule updates for every valid date returned by the existing getter. The regression starts at five seconds after the epoch, runs the scheduled tick, and checks that the duration becomes six seconds.

Validation: the regression did not receive a scheduled tick before the fix; all 636 Chromium tests pass afterward. Full TypeScript, ESLint, ESM/bundle and element-manifest builds pass on Node 24. Tests use the repository's Dubai time zone with an explicit English browser locale. The Windows cleanup hook was skipped and the same lint/build tools were run directly; Firefox and WebKit were not run.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The focused fix preserves date validation, and the regression verifies the corrected scheduling behavior.

No open issues 🎉

What changed in this PR

Fixes automatic updates for <relative-time> elements whose date is the Unix epoch.

Changes:

  • Accepts timestamp 0 when scheduling updates while preserving invalid-date handling.
  • Adds a regression test verifying a scheduled duration update from five to six seconds.
File Description
test/​relative-time.js Tests scheduled updates for the Unix epoch.
src/​relative-time-element.ts Removes the guard that incorrectly rejects timestamp 0.

Review effort: Max

@liuliu-dev
liuliu-dev merged commit 3b3a1bc into github:main Oct 19, 2026
2 checks passed
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.

3 participants