Skip to content

Photos Backup 0.3.3

Choose a tag to compare

@g8row g8row released this 08 Sep 19:03
· 16 commits to main since this release

Fixed

  • Stop Backup no longer freezes the app. (#1)

    Stopping a backup cancelled the queue one row at a time, and every one of those rows rewrote the entire saved queue to disk — on the main thread. A queue of a few hundred rows therefore made a few hundred full rewrites of a file that was itself a few hundred rows long, and the app stayed unresponsive for the whole thing. Stopping 1,000 rows took 6.15s on the Simulator; it now takes 0.068s, and the difference grows with the size of the queue.

    Stop now clears the queue in a single pass with a single save. Retry Failed Uploads worked the same way and had the same stall, so it was fixed alongside.

  • A Stop with nothing currently uploading no longer breaks the next single-row cancel. The flag that tells Stop to discard its rows was left switched on, so the next photo cancelled by swiping was quietly dropped from the queue instead of staying there as a "don't back this up" marker — which meant the next automatic scan picked it straight back up.

Notes

  • 105 tests, 102 passing (2 opt-in live tests and 1 Simulator Keychain test skipped).
  • The Simulator cannot run background uploads or schedule background tasks. Use a device to exercise real backup behaviour.