fix strava sync rebuild: trigger before yielding done event, not after

This commit is contained in:
Davide Scaini
2026-04-12 14:55:33 +02:00
parent 78581d5487
commit e80231b442
+2 -2
View File
@@ -1003,9 +1003,9 @@ async def serve_strava_sync_stream(bincio_session: Optional[str] = Cookie(defaul
def event_stream(): def event_stream():
try: try:
for event in strava_sync_iter(dd, strava_client_id, strava_client_secret, originals_dir): for event in strava_sync_iter(dd, strava_client_id, strava_client_secret, originals_dir):
yield f"data: {json.dumps(event)}\n\n"
if event["type"] == "done": if event["type"] == "done":
_trigger_rebuild(user.handle) _trigger_rebuild(user.handle) # start before client closes connection
yield f"data: {json.dumps(event)}\n\n"
except Exception as exc: except Exception as exc:
yield f"data: {json.dumps({'type': 'error', 'message': str(exc)})}\n\n" yield f"data: {json.dumps({'type': 'error', 'message': str(exc)})}\n\n"