Yuvomi logo

Yuvomi

Self-hosted family planner for tasks, calendar, shopping, meals, and budget

Alternative to: cozi, familywall, skylight

Yuvomi screenshotYuvomi screenshot

About Versions (345)

v2.33.1

2026-08-23

Fixed

  • Google Calendar sync imports nothing once the installation’s first user is deleted (#839, thanks @Ennosuke). The owner of an imported event was written as the literal ID 1, and created_by is a foreign key on users. Delete the account the installer created and every insert comes back as FOREIGN KEY constraint failed: the sync itself reports success, the log fills with one error per event, and not a single appointment arrives. The same fault was found and fixed for CalDAV and Apple earlier; Google was the last place still carrying it. The owner is now the first user that actually exists, resolved once per run rather than once per event.

    Where no user exists at all, new events are skipped with a single warning instead of one failed insert per event. Updates and deletions do not need an owner and keep running.

    The appointments missed in the meantime come back (migration v158). Stopping the failure was not enough on its own: the sync stored its sync token after every run, including the runs where every single insert had failed. To Google those events are delivered, and an incremental run only ever asks for changes since that token - so the gap would have been permanent. Where the user with ID 1 is absent, which is exactly the condition the fault needed, the token is dropped and the next run is a full resync. Everywhere else it stays: nothing was ever missing there, and a full resync costs Google API quota for nothing. The resync itself is harmless either way - the upsert compares values and does not touch a row that has not changed.