{
  "id": 13379610,
  "title": "Node.js 26's default Temporal API fixes a one-hour DST drift that Date still has",
  "url": "https://urgent.news/2026/10/10/node-js-26s-default-temporal-api-fixes-a-one-hour-dst-drift-that-date",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-10-10T10:00:00.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/alexgeorgiev17/nodejs-26s-default-temporal-api-fixes-a-one-hour-dst-drift-that-date-still-has-16ad"
  },
  "original_language": "en",
  "account": "Node.js 26's default Temporal API addresses the one-hour daylight saving time (DST) drift that the Date object still experiences. This line, \"tomorrow = new Date(now.getTime() + 24 * 60 * 60 * 1000)\", is found in many scheduling and billing code. In most years, it works fine, but twice a year in any timezone observing DST, it's off by an hour. Node.js 26 releases the Temporal API without any flags, described in release notes as a \"modern date/time API for JavaScript that provides a more robust and feature-rich alternative to the legacy Date object\". The experiment, conducted using Node.js 26 and 24, showed the drift in the Date version compared to the Temporal API. The Date version lands an hour later due to walking straight through the skipped hour when adding 24 hours of UTC time. In contrast, Temporal keeps the wall-clock time fixed and lets the UTC offset move, providing a more accurate result. While Temporal is designed for correctness and offers strict error handling, providing a different kind of wrong compared to Date, it does not throw an error by default for out-of-range values. These changes were present in Node 24 LTS, but require a flag for usage.",
  "summary": "tomorrow = new Date(now.getTime() + 24 * 60 * 60 * 1000) is a line that turns up in a lot of scheduling and billing code. It looks harmless, and for most of the year it is. Twice a year, in any timezone that observes daylight saving, it's wrong by an hour. Node.js 26, released in May, turns on the Temporal API without a flag. The release notes describe it as a \"modern date/time API for JavaScript…",
  "key_points": [
    "Node.js 26's default Temporal API resolves one-hour DST drift in Date object.",
    "Temporal API provides robust, feature-rich alternative to legacy Date object.",
    "Temporal maintains wall-clock time, fixes UTC offset movement for accuracy."
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}