From 37928d8b19e097f26d171fc6042bc4b65a2b31c7 Mon Sep 17 00:00:00 2001 From: Vasanthdev2004 Date: Mon, 7 Sep 2026 22:19:16 +0530 Subject: [PATCH] chore(release): prepare v0.9.0 --- CHANGELOG.md | 15 ++++++++++++++- pyproject.toml | 2 +- src/game_save_genie/__init__.py | 2 +- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 264ed8e..354d126 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Changelog -## Unreleased +## 0.9.0 — 2026-09-07 ### Added @@ -25,6 +25,8 @@ ### Fixed +- A queued dashboard selection event no longer crashes during shutdown after + its widgets have been removed. Normal startup selection is unchanged. - A busy writer no longer drops an automatic game-close backup. Deferred backup requests survive restart and retry before uploads; their health warning stays visible until a regular backup succeeds. Paused/removed games are rechecked @@ -49,6 +51,17 @@ then use `gsg retry` or dashboard **u** to revalidate it; new healthy snapshots can still upload while historical snapshots are blocked. +### Upgrade notes + +- Quit older watcher processes before upgrading, then restart `gsg auto` or + `gsg watch` so every process uses the new writer lock. Automatic retries need + a watcher running; `gsg retry` and dashboard **u** also work on demand. +- Existing save records migrate automatically without changing your cloud + settings or inventing historical upload timestamps. Older uploads may show + "not recorded" for their upload time until a new upload completes. +- Pending or blocked snapshots can temporarily exceed `max_versions`. Their + files and history are retained so an outage cannot prune an unsent save. + ## 0.8.4 — 2026-09-07 ### Added diff --git a/pyproject.toml b/pyproject.toml index 5bb2477..21162c0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "game-save-genie" -version = "0.8.4" +version = "0.9.0" description = "Self-hosted cloud save sync for the games that don't have it - auto-backup, versioning, and cross-machine restore built on Ludusavi + rclone" readme = "README.md" license = {text = "MIT"} diff --git a/src/game_save_genie/__init__.py b/src/game_save_genie/__init__.py index 613a86b..c6ae770 100644 --- a/src/game_save_genie/__init__.py +++ b/src/game_save_genie/__init__.py @@ -1,3 +1,3 @@ """Game Save Genie - Self-hosted cloud save sync for games.""" -__version__ = "0.8.4" +__version__ = "0.9.0"