Skip to content

Commit 15cf5d2

Browse files
committed
feat: overwrite outdated plugins using Discord message ID
1 parent 23aa2cf commit 15cf5d2

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

scripts/discord_sync.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,8 +139,14 @@ def main() -> None:
139139
filename += ".iy"
140140

141141
if filename in existing_names:
142-
print(f" ⚠️ {filename} already in plugins.json — skipping.")
143-
continue
142+
existing = next(e for e in entries if e["name"] == filename)
143+
existing_msg_id = int(existing.get("message_id", 0))
144+
if int(msg_id) <= existing_msg_id:
145+
print(f" ⏭ {filename} already up to date — skipping.")
146+
continue
147+
print(f" 🔄 {filename} has a newer version — overwriting…")
148+
entries[:] = [e for e in entries if e["name"] != filename]
149+
existing_names.discard(filename)
144150

145151
dest = PLUGINS_DIR / filename
146152
print(f" ⬇️ Downloading {filename} (by {author}, {msg_datetime.date()})…")
@@ -171,6 +177,7 @@ def main() -> None:
171177
"name": filename,
172178
"description": description,
173179
"url": url,
180+
"message_id": msg_id,
174181
}
175182

176183
entries.insert(0, entry)

0 commit comments

Comments
 (0)