From 2657c8305359d76d9ccac280b8a0a9d28f8e7795 Mon Sep 17 00:00:00 2001 From: retoor Date: Mon, 25 Nov 2024 19:19:22 +0000 Subject: [PATCH] fix: handle missing comments key when syncing rants with no comments The previous code assumed every rant returned from the API would have a "comments" key, causing a KeyError crash when iterating over rants that had zero comments. This fix uses `.get("comments", [])` to safely default to an empty list, allowing the sync loop to continue without interruption. --- src/drstats/sync.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/drstats/sync.py b/src/drstats/sync.py index 67082a7..bdc74f7 100644 --- a/src/drstats/sync.py +++ b/src/drstats/sync.py @@ -62,7 +62,7 @@ async def sync_comments(): rants_synced = 0 for rant in db["rants"].find(order_by="-id"): rants_synced += 1 - comments = dr.get_rant(rant["id"])["comments"] + comments = dr.get_rant(rant["id"]).get("comments",[]) for comment in comments: comments_synced += 1 comment["created"] = timestamp_to_string(comment["created_time"])