Reference Source

What changed — Software end-of-life date changes — which dates moved and what they were before

The change history of Software end-of-life date changes — which dates moved and what they were before: A change log of software end-of-life and end-of-support dates across 462 products, built by diffing the endoflife.date API between snapshots: for each changed date, the product, release cycle, which field moved, the old value and the new value. Answers 'did the Python 3.9 EOL date change?', 'which Node.js support dates were extended this month?', and 'what EOL dates moved in July 2026?' — the question shape nobody publishes. endoflife.date tracks current state; endoflife.ai publishes a free monthly digest of what is critical now; neither publishes the before-and-after diff. New product additions are also captured. This is a parser case: the API returns structured JSON, no model supplies values.

Change dates6
Tracked since
Last change

Since the initial snapshot of , this register has changed on 5 further dates. This register is re-checked against its sources on a schedule; a date appears below only when records were added or their values changed, so a quiet stretch means the register itself was quiet, not that nobody looked.

We keep the current verified state of each record, not the value it replaced — so each entry says which records changed and what they now state, never what they said before. Machine subscribers: poll changes.xml (Atom) or changes.json instead of re-fetching the dataset.

— 36 records added or updated

… and 16 more records on this date. The full current state of every record is in data.json.

— 351 records added or updated

… and 331 more records on this date. The full current state of every record is in data.json.

— 2 records added or updated

— 69 records added or updated

… and 49 more records on this date. The full current state of every record is in data.json.

— 79 records added or updated

… and 59 more records on this date. The full current state of every record is in data.json.

— Initial snapshot — 208 records

The first verified snapshot: every record was new on this date. The full register is on the dataset page.

… and 188 more records on this date. The full current state of every record is in data.json.