From 4dd69a1dffd158f03da7e33c0be28f2b98a9ccea Mon Sep 17 00:00:00 2001 From: Mehmet Samet Duman Date: Sun, 5 Apr 2026 12:38:10 +0300 Subject: NOISSUE add releasedate fallback in metadata generators for optifine etc. Signed-off-by: Mehmet Samet Duman --- meta/meta/run/generate_modloadermp.py | 11 +++++++++++ meta/meta/run/generate_optifine.py | 7 ++++--- meta/meta/run/generate_risugami.py | 11 +++++++++++ meta/meta/run/generate_stationloader.py | 8 +++++--- 4 files changed, 31 insertions(+), 6 deletions(-) diff --git a/meta/meta/run/generate_modloadermp.py b/meta/meta/run/generate_modloadermp.py index f4ea0d4db5..85e4004049 100644 --- a/meta/meta/run/generate_modloadermp.py +++ b/meta/meta/run/generate_modloadermp.py @@ -1,5 +1,6 @@ import os import json +from datetime import datetime, timezone from meta.common import ensure_component_dir, launcher_path, upstream_path from meta.common.modloadermp import MODLOADERMP_COMPONENT, VERSIONS_FILE @@ -47,6 +48,16 @@ def main(): order=11, ) + # Release date fallback to epoch so index.py doesn't reject None + date = data.get("date") + if date: + try: + v.release_time = datetime.fromisoformat(date.replace("Z", "+00:00")) + except Exception: + v.release_time = datetime(1970, 1, 1, tzinfo=timezone.utc) + else: + v.release_time = datetime(1970, 1, 1, tzinfo=timezone.utc) + # Dependencies: Minecraft + Risugami ModLoader deps = [] if mc_version: diff --git a/meta/meta/run/generate_optifine.py b/meta/meta/run/generate_optifine.py index 3c77718930..18ae10a200 100644 --- a/meta/meta/run/generate_optifine.py +++ b/meta/meta/run/generate_optifine.py @@ -105,12 +105,13 @@ def main(): if label: v.name = label - # Parse release date + # Parse release date, fallback to epoch so index.py doesn't reject None date = data.get("date") if date: dt = _parse_date(date) - if dt: - v.release_time = dt + v.release_time = dt if dt else datetime(1970, 1, 1) + else: + v.release_time = datetime(1970, 1, 1) # Build jar mod artifact — use stable download?f= URL filename = data.get("filename") diff --git a/meta/meta/run/generate_risugami.py b/meta/meta/run/generate_risugami.py index f61370d90c..bc6293609c 100644 --- a/meta/meta/run/generate_risugami.py +++ b/meta/meta/run/generate_risugami.py @@ -1,5 +1,6 @@ import os import json +from datetime import datetime, timezone from meta.common import ensure_component_dir, launcher_path, upstream_path from meta.common.risugami import RISUGAMI_COMPONENT, VERSIONS_FILE @@ -48,6 +49,16 @@ def main(): if mc_version: v.requires = [Dependency(uid=MINECRAFT_COMPONENT, equals=mc_version)] + # Parse release date, fallback to epoch so index.py doesn't reject None + date = data.get("date") + if date: + try: + v.release_time = datetime.fromisoformat(date.replace("Z", "+00:00")) + except Exception: + v.release_time = datetime(1970, 1, 1, tzinfo=timezone.utc) + else: + v.release_time = datetime(1970, 1, 1, tzinfo=timezone.utc) + # Attach download artifact if available url = data.get("url") or data.get("download_url") if url: diff --git a/meta/meta/run/generate_stationloader.py b/meta/meta/run/generate_stationloader.py index 26f79614c0..e4e8b8c542 100644 --- a/meta/meta/run/generate_stationloader.py +++ b/meta/meta/run/generate_stationloader.py @@ -1,6 +1,6 @@ import os import json -from datetime import datetime +from datetime import datetime, timezone from meta.common import ensure_component_dir, launcher_path, upstream_path from meta.common.stationloader import STATIONLOADER_COMPONENT, VERSIONS_FILE @@ -49,13 +49,15 @@ def main(): v.requires = [Dependency(uid=MINECRAFT_COMPONENT, equals=mc_version)] - # Parse release date (ISO 8601 from GitHub) + # Parse release date (ISO 8601 from GitHub), fallback to epoch date = data.get("date") if date: try: v.release_time = datetime.fromisoformat(date.replace("Z", "+00:00")) except Exception: - pass + v.release_time = datetime(1970, 1, 1, tzinfo=timezone.utc) + else: + v.release_time = datetime(1970, 1, 1, tzinfo=timezone.utc) # Attach download artifact if available url = data.get("url") -- cgit 0.0.5-2-1-g0f52