From 64063b4a2ce866b26a054b72fe93cfc6fda293bc Mon Sep 17 00:00:00 2001 From: vorotamoroz Date: Wed, 16 Sep 2026 10:14:17 +0000 Subject: [PATCH 1/2] Releasing 1.0.29 --- docs/releases/1.0.md | 12 +++++++++++ manifest.json | 2 +- package-lock.json | 10 ++++----- package.json | 2 +- src/apps/cli/package.json | 2 +- src/apps/webapp/package.json | 2 +- src/apps/webpeer/package.json | 2 +- updates.md | 39 +++++++++++++++++++++-------------- versions.json | 3 ++- 9 files changed, 48 insertions(+), 26 deletions(-) diff --git a/docs/releases/1.0.md b/docs/releases/1.0.md index 61ed6ffe..941ac6ff 100644 --- a/docs/releases/1.0.md +++ b/docs/releases/1.0.md @@ -2,6 +2,18 @@ This document contains earlier published releases from the 1.0 line of the [current Self-hosted LiveSync release history](../../updates.md). Beta and release-candidate builds published before 1.0.0 are recorded in the [1.0 preview history](1.0-previews.md). Earlier release lines continue in the [0.25 history](0.25.md) and the [legacy history](legacy.md). +## 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 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. + ## 1.0.22 1st September, 2026 diff --git a/manifest.json b/manifest.json index 7cae12be..54a3badc 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "id": "obsidian-livesync", "name": "Self-hosted LiveSync", - "version": "1.0.28", + "version": "1.0.29", "minAppVersion": "1.7.2", "description": "Community implementation of self-hosted livesync. Reflect your vault changes to some other devices immediately. Please make sure to disable other synchronize solutions to avoid content corruption or duplication.", "author": "vorotamoroz", diff --git a/package-lock.json b/package-lock.json index d94b89a9..72fcd002 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "obsidian-livesync", - "version": "1.0.28", + "version": "1.0.29", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "obsidian-livesync", - "version": "1.0.28", + "version": "1.0.29", "license": "MIT", "workspaces": [ "src/apps/cli", @@ -12665,7 +12665,7 @@ }, "src/apps/cli": { "name": "self-hosted-livesync-cli", - "version": "1.0.28-cli", + "version": "1.0.29-cli", "dependencies": { "chokidar": "^4.0.0", "minimatch": "^10.2.5", @@ -12690,7 +12690,7 @@ }, "src/apps/webapp": { "name": "livesync-webapp", - "version": "1.0.28-webapp", + "version": "1.0.29-webapp", "dependencies": { "octagonal-wheels": "^0.1.54" }, @@ -12702,7 +12702,7 @@ } }, "src/apps/webpeer": { - "version": "1.0.28-webpeer", + "version": "1.0.29-webpeer", "dependencies": { "octagonal-wheels": "^0.1.54" }, diff --git a/package.json b/package.json index 2d65911a..e711c31f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "obsidian-livesync", - "version": "1.0.28", + "version": "1.0.29", "description": "Reflect your vault changes to some other devices immediately. Please make sure to disable other synchronize solutions to avoid content corruption or duplication.", "main": "main.js", "type": "module", diff --git a/src/apps/cli/package.json b/src/apps/cli/package.json index e82ae069..bfde8dd0 100644 --- a/src/apps/cli/package.json +++ b/src/apps/cli/package.json @@ -1,7 +1,7 @@ { "name": "self-hosted-livesync-cli", "private": true, - "version": "1.0.28-cli", + "version": "1.0.29-cli", "main": "dist/index.cjs", "type": "module", "scripts": { diff --git a/src/apps/webapp/package.json b/src/apps/webapp/package.json index 4c77ed2b..c1b8c78d 100644 --- a/src/apps/webapp/package.json +++ b/src/apps/webapp/package.json @@ -1,7 +1,7 @@ { "name": "livesync-webapp", "private": true, - "version": "1.0.28-webapp", + "version": "1.0.29-webapp", "type": "module", "description": "Browser-based Self-hosted LiveSync using FileSystem API", "scripts": { diff --git a/src/apps/webpeer/package.json b/src/apps/webpeer/package.json index c11c37af..bf3b45d0 100644 --- a/src/apps/webpeer/package.json +++ b/src/apps/webpeer/package.json @@ -1,7 +1,7 @@ { "name": "webpeer", "private": true, - "version": "1.0.28-webpeer", + "version": "1.0.29-webpeer", "type": "module", "scripts": { "dev": "vite", diff --git a/updates.md b/updates.md index 2132e944..9cbdfa33 100644 --- a/updates.md +++ b/updates.md @@ -12,10 +12,31 @@ Earlier releases remain available in the 1.0 release history, the 1.0 preview hi ## Unreleased -### Fixed +## 1.0.29 -- CLI: daemon and mirror now scan the Vault during database initialisation, following the Obsidian startup sequence. The daemon completes this scan before replication; mirror runs the scan once and still exits with an error if any file cannot be processed. -- CLI: file enumeration now includes current files even after individual path lookups or earlier scans. This incorporates an adapted version of the fix proposed in PR #1188. Thank you to @YakupEmreYerli for the fix and regression tests, and to @nsanitas for the detailed report and analysis in #1143! +16th September, 2026 + +Unusually for this project, I have added a feature that relies on a particular infrastructure provider. I made this choice for the convenience it offers. + +### A note on support for individual services + +As a rule, I intend to avoid features that depend on a particular service. Still, I think there is room for them when they are entirely optional, clearly explained, and maintainable. Even then, I would want open alternatives to remain available. I will write more about this principle separately. + +### Peer-to-peer synchronisation + +#### New Feature + +- P2P synchronisation now supports **Managed (Cloudflare)** TURN to help devices connect when a direct connection is unavailable. Enter your TURN Key ID and API token, and LiveSync obtains temporary TURN credentials automatically. (#1182) + + - Managed TURN settings are saved with your encrypted P2P profile and included when you share it through a Setup URI or QR code. + - Your API token is omitted from generated reports. + +### Command-line tool + +#### Fixed + +- The CLI daemon now synchronises files already present at start-up and picks up edits and deletions made while it was stopped. +- CLI Vault scans no longer miss files after an earlier scan or file lookup. This incorporates an adapted version of the fix proposed in PR #1188. Thank you to @YakupEmreYerli for the fix and regression tests, and to @nsanitas for the detailed report and analysis in #1143! ## 1.0.28 @@ -101,15 +122,3 @@ For now, I am addressing the issues I can resolve first. I hope this helps. #### Fixed - The systemd installer now finds the repository root correctly, installs every generated bundle chunk and required production dependency, checks the installed command before activation, and reports success only when the service remains active. - -## 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 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. diff --git a/versions.json b/versions.json index fc1edb2e..5d20d2e2 100644 --- a/versions.json +++ b/versions.json @@ -39,5 +39,6 @@ "1.0.24": "1.7.2", "1.0.26": "1.7.2", "1.0.27": "1.7.2", - "1.0.28": "1.7.2" + "1.0.28": "1.7.2", + "1.0.29": "1.7.2" } From 2d00fcfb47bede2762ce1888969796063c8e328e Mon Sep 17 00:00:00 2001 From: vorotamoroz Date: Wed, 16 Sep 2026 10:22:30 +0000 Subject: [PATCH 2/2] Refine the release note structure and tone --- updates.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/updates.md b/updates.md index 9cbdfa33..261888fd 100644 --- a/updates.md +++ b/updates.md @@ -18,10 +18,6 @@ Earlier releases remain available in the 1.0 release history, the 1.0 preview hi Unusually for this project, I have added a feature that relies on a particular infrastructure provider. I made this choice for the convenience it offers. -### A note on support for individual services - -As a rule, I intend to avoid features that depend on a particular service. Still, I think there is room for them when they are entirely optional, clearly explained, and maintainable. Even then, I would want open alternatives to remain available. I will write more about this principle separately. - ### Peer-to-peer synchronisation #### New Feature @@ -38,6 +34,10 @@ As a rule, I intend to avoid features that depend on a particular service. Still - The CLI daemon now synchronises files already present at start-up and picks up edits and deletions made while it was stopped. - CLI Vault scans no longer miss files after an earlier scan or file lookup. This incorporates an adapted version of the fix proposed in PR #1188. Thank you to @YakupEmreYerli for the fix and regression tests, and to @nsanitas for the detailed report and analysis in #1143! +### Miscellaneous + +In general, I would prefer to avoid features that depend on a particular service. Still, I think there is room for them when they are entirely optional, clearly explained, and maintainable. Even then, I would want open alternatives to remain available. I will write more about this principle separately. + ## 1.0.28 9th September, 2026