github vrtmrz/obsidian-livesync 1.0.23

4 hours ago

1.0.23

2nd September, 2026

I am sorry to make this release while several pull requests are still awaiting merge, but I believe that the safeguards provided by this work are significant, so I have decided to release it. I will merge the remaining pull requests in turn. Thank you for bearing with me while I have been less active recently.

Synchronisation and storage

Fixed

  • Sync on Startup now runs an immediate Object Storage synchronisation after start-up or resume, including migrated profiles which retain a Continuous setting that Object Storage cannot use.
  • A temporarily unavailable Object Storage synchronisation-parameter read is no longer treated as a missing object and cannot regenerate the shared Security Seed. Flow-specific Security Seed checks also bypass an earlier process-cached result.
  • Local database reset and plug-in unload now retire active replication through its owner before closing the database, without reporting a missing active Replicator or describing unload as a database reset.
  • Fresh Start Wipe now reports an incomplete Object Storage deletion instead of announcing success, and releases its temporary storage client after each attempt.
  • Sync now once again keeps routine progress quiet, while still opening recovery dialogues when a decision is required. Repeated OneShot Sync requests received while an earlier attempt is running are now ignored instead of starting overlapping work.

Peer-to-peer synchronisation

Fixed

  • The P2P Setup connection test no longer interrupts an active P2P room. It observes an active compatible relay binding, blocks a test which would add another relay until P2P is disconnected, and uses a short-lived trial only while P2P is idle.
  • User-initiated P2P synchronisation now reports success only after the requested target transfer completes.
  • Optional WebApp P2P synchronisation now becomes ready after a successful local-file scan even when CouchDB remains unconfigured; failed preparation is not reported as ready.
  • Unattended P2P synchronisation no longer raises Notice-level messages for missing configured targets, authentication rejection, configuration mismatch, or an overlapping transfer. User-initiated operations retain their existing feedback.
  • P2P replication failure reasons now survive the JSON RPC boundary instead of reaching the requesting device as an empty object.

Command-line interface

Fixed

  • mark-resolved, lock-remote, and unlock-remote now return a non-zero exit code when the selected provider cannot verify the requested remote state. Use --compat-remote-admin-exit-zero to retain the former exit code for returned verification failures; unknown remote IDs and mutation errors still fail.

Don't miss a new obsidian-livesync release

NewReleases is sending notifications on new releases.