Skip to main content

V1.8.0 Cloud sync, save detection, and Archive V2

· 3 min read
Sworld
Game Save Manager maintainer

This release adds cloud-sync status management, Ludusavi save detection, Archive V2, and Windows registry backups. These features, together with security, performance, and architecture changes, bring the version directly to V1.8.0.

Highlights

Ludusavi save detection

  • Match save locations automatically when adding games using the Ludusavi database
  • Embed a compressed manifest through rust-embed; a smaller build without the manifest is under consideration
  • Explain batch-import failures and registry paths

Ludusavi save detection

Cloud sync

  • Add an overview of sync results, pending work, and the latest sync time
  • Track each device's position separately, supporting parallel branches and divergence on the same device
  • Run synchronization through background tasks to keep the interface responsive
  • Unify uploads and downloads through a streaming layer with hook extension points

Cloud-sync overview

Archives and backups

  • Archive V2: replace BZip2 with Zstd and offer Store, Fast, Standard, and Maximum compression presets
  • Support files with the same name
  • Integrity checks: verify archives with XXH3 before restoring to reject corrupted backups
  • Windows registry: back up and restore registry save data with source fingerprints
  • Unchanged files: skip scheduled backups when XXH3 fingerprints show no changes

Undo and extra backups

  • Add Undo last applied snapshot to the management page

Undo restore

  • Add management for extra overwrite backups

Extra-backup management

Interface improvements

  • Custom fonts and appearance settings
  • Redesigned path-variable editor with clearer status information
  • Batch deletion of selected snapshots
  • Centralized feedback and notifications with shared z-index management

Interface improvements

Fixes

  • Preserve existing files after failed cloud downloads or writes and strengthen atomic rollback
  • Fix upload protection for backends that cannot overwrite files
  • Fix ZIP timestamp compatibility
  • Prevent ZIP path traversal (Zip Slip)
  • Propagate semaphore-acquisition errors in backup_all
  • Fix unknown-backend errors when cloud sync is disabled
  • Fix the log button's position and improve log rotation
  • Remove the obsolete same-name file restriction when adding games

Performance

  • Reduce unnecessary I/O during scheduled and batch backups
  • Reduce sidebar rendering overhead and expand it during search
  • Improve snapshot-table sorting and selection

Developer changes

  • Add a typed lifecycle-hook pipeline for snapshot creation, deletion, and restoration
  • Refactor IPC around game-draft input and backend-assigned IDs; expose typed hook and sync commands
  • Add pre-commit checks with Husky, lint-staged, Clippy fixes, and typechecking
  • Update rgsm core to 1.8.0
  • Track multiple device positions in sync metadata
  • Upgrade archive metadata to V2, including compression presets and XXH3 hashes
  • Add save_unit_id to save configuration
  • Add Criterion benchmarks for compression algorithms

Download

The portable build is recommended. If it will not start, install WebView2.

Full changelog

Discussions