From f84b3033b87c914d33644b76a190000700981951 Mon Sep 17 00:00:00 2001 From: Airah Yusuff Date: Sun, 21 Sep 2025 09:59:11 +0100 Subject: [PATCH] ensure events is sorted in order of event start date --- tools/meetup_import.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tools/meetup_import.py b/tools/meetup_import.py index ac6de777..1030dc3b 100644 --- a/tools/meetup_import.py +++ b/tools/meetup_import.py @@ -179,9 +179,12 @@ def get_upcoming_meetups_from_ical_file(ical_path: str) -> list[MeetupEvents]: with open(ical_path, "r", encoding="utf-8") as f: calendar = Calendar(f.read()) + # sort events to ensure order by event date + sorted_events = sorted(calendar.events, key=lambda e: e.begin) + upcoming_meetups: list[MeetupEvents] = [] - for event in calendar.events: + for event in sorted_events: title = event.name date_obj = event.begin.datetime expiration = date_obj.strftime("%Y%m%d") @@ -279,7 +282,7 @@ def fetch_events(): ical_file_path = "files/meetup.ics" yml_file_path = "../_data/imported_events.yml" - logging.info("Params: iCal URL: %s yml: %s mode: %s", ical_file_path, yml_file_path) + logging.info("Params: iCal URL: %s yml: %s", ical_file_path, yml_file_path) upcoming_meetups = get_upcoming_meetups_from_ical_file(ical_file_path) logging.info("Upcoming Meetups:")