diff --git a/releases/silverstripe.json b/releases/silverstripe.json index f1e2aeb1..a18d7478 100644 --- a/releases/silverstripe.json +++ b/releases/silverstripe.json @@ -2,78 +2,39 @@ "releases": { "6.1": { "name": "6.1", - "releaseDate": "2025-10-31", + "releaseDate": "2025-10-13", "eoas": "2026-04-30", "eol": "2026-10-31" }, "6.0": { "name": "6.0", "releaseDate": "2025-06-10", - "eoas": "2025-10-31", - "eol": "2026-04-30" + "eoas": "2025-10-13", + "eol": "2026-04-14" }, "5.4": { "name": "5.4", "releaseDate": "2025-04-10", - "eoas": "2026-04-30" + "eoas": "2026-04-11", + "eol": "2027-04-30" }, "5.3": { "name": "5.3", "releaseDate": "2024-11-04", - "eoas": "2025-04-30", - "eol": "2025-10-31" + "eoas": "2025-04-10", + "eol": "2025-10-11" }, "5.2": { "name": "5.2", "releaseDate": "2024-04-15", - "eoas": "2024-11-30", - "eol": "2025-05-31" - }, - "5.1": { - "name": "5.1", - "releaseDate": "2023-10-17" - }, - "5.0": { - "name": "5.0", - "releaseDate": "2023-05-08" + "eoas": "2024-11-04", + "eol": "2025-05-05" }, "4.13": { "name": "4.13", "releaseDate": "2023-04-26", - "eoas": "2024-04-30", - "eol": "2025-06-30" - }, - "4.12": { - "name": "4.12", - "releaseDate": "2022-12-19" - }, - "4.11": { - "name": "4.11", - "releaseDate": "2022-06-28" - }, - "4.10": { - "name": "4.10", - "releaseDate": "2022-01-27" - }, - "3.7": { - "name": "3.7", - "releaseDate": "2018-06-08" - }, - "3.1": { - "name": "3.1", - "releaseDate": "2013-10-01" - }, - "3.0": { - "name": "3.0", - "releaseDate": "2012-06-28" - }, - "2.4": { - "name": "2.4", - "releaseDate": "2011-02-02" - }, - "2.3": { - "name": "2.3", - "releaseDate": "2009-02-23" + "eoas": "2024-04-27", + "eol": "2025-06-10" } }, "versions": { diff --git a/releases/ubuntu.json b/releases/ubuntu.json index 83a258f2..06428b2e 100644 --- a/releases/ubuntu.json +++ b/releases/ubuntu.json @@ -356,6 +356,10 @@ "5.04": { "name": "5.04", "date": "2005-04-08" + }, + "4.10": { + "name": "4.10", + "date": "2004-10-20" } } } \ No newline at end of file diff --git a/src/silverstripe.py b/src/silverstripe.py new file mode 100644 index 00000000..1973207c --- /dev/null +++ b/src/silverstripe.py @@ -0,0 +1,20 @@ +from common import dates, http +from common.releasedata import ProductData, config_from_argv + +"""Fetches Silverstripe releases from https://www.silverstripe.org/software/roadmap/ JSON data.""" + +config = config_from_argv() +with ProductData(config.product) as product_data: + json = http.fetch_json(config.url) + for release_data in json["data"]: + release_name = release_data["version"] + release = product_data.get_release(release_name) + + release_date_str = release_data.get("releaseDate") + release.set_release_date(dates.parse_date_or_month_year_date(release_date_str)) + + eoas_date_str = release_data.get("partialSupport") + release.set_eoas(dates.parse_date_or_month_year_date(eoas_date_str)) + + eol_date_str = release_data.get("supportEnds") + release.set_eol(dates.parse_date_or_month_year_date(eol_date_str))