From 962589a40f6a82b3b0023aac0979ca3f62fe41b6 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 15 Jul 2026 14:00:29 +0000 Subject: [PATCH 1/3] Releasing 0.25.82 --- manifest.json | 2 +- package-lock.json | 10 +++++----- package.json | 2 +- src/apps/cli/package.json | 4 ++-- src/apps/webapp/package.json | 4 ++-- src/apps/webpeer/package.json | 4 ++-- updates.md | 4 ++++ versions.json | 3 ++- 8 files changed, 19 insertions(+), 14 deletions(-) diff --git a/manifest.json b/manifest.json index 7ab27c39..ac5881a8 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "id": "obsidian-livesync", "name": "Self-hosted LiveSync", - "version": "0.25.81", + "version": "0.25.82", "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 0590f3d8..80bf7295 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "obsidian-livesync", - "version": "0.25.81", + "version": "0.25.82", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "obsidian-livesync", - "version": "0.25.81", + "version": "0.25.82", "license": "MIT", "workspaces": [ "src/apps/cli", @@ -16226,7 +16226,7 @@ }, "src/apps/cli": { "name": "self-hosted-livesync-cli", - "version": "0.25.81-cli", + "version": "0.25.82-cli", "dependencies": { "chokidar": "^4.0.0", "minimatch": "^10.2.5", @@ -16252,7 +16252,7 @@ }, "src/apps/webapp": { "name": "livesync-webapp", - "version": "0.25.81-webapp", + "version": "0.25.82-webapp", "dependencies": { "octagonal-wheels": "^0.1.50" }, @@ -16267,7 +16267,7 @@ } }, "src/apps/webpeer": { - "version": "0.25.81-webpeer", + "version": "0.25.82-webpeer", "dependencies": { "octagonal-wheels": "^0.1.50" }, diff --git a/package.json b/package.json index 1c2826e7..e4a854a5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "obsidian-livesync", - "version": "0.25.81", + "version": "0.25.82", "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 5219f2fb..b12133f9 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": "0.25.81-cli", + "version": "0.25.82-cli", "main": "dist/index.cjs", "type": "module", "scripts": { @@ -41,7 +41,7 @@ "dependencies": { "chokidar": "^4.0.0", "minimatch": "^10.2.5", - "octagonal-wheels": "^0.1.50", + "octagonal-wheels": "^0.1.51", "pouchdb-adapter-http": "^9.0.0", "pouchdb-adapter-leveldb": "^9.0.0", "pouchdb-core": "^9.0.0", diff --git a/src/apps/webapp/package.json b/src/apps/webapp/package.json index 343bc2ea..785d808c 100644 --- a/src/apps/webapp/package.json +++ b/src/apps/webapp/package.json @@ -1,7 +1,7 @@ { "name": "livesync-webapp", "private": true, - "version": "0.25.81-webapp", + "version": "0.25.82-webapp", "type": "module", "description": "Browser-based Self-hosted LiveSync using FileSystem API", "scripts": { @@ -12,7 +12,7 @@ "preview": "vite preview" }, "dependencies": { - "octagonal-wheels": "^0.1.50" + "octagonal-wheels": "^0.1.51" }, "devDependencies": { "@playwright/test": "^1.58.2", diff --git a/src/apps/webpeer/package.json b/src/apps/webpeer/package.json index f71d0958..ecf7a2b3 100644 --- a/src/apps/webpeer/package.json +++ b/src/apps/webpeer/package.json @@ -1,7 +1,7 @@ { "name": "webpeer", "private": true, - "version": "0.25.81-webpeer", + "version": "0.25.82-webpeer", "type": "module", "scripts": { "dev": "vite", @@ -12,7 +12,7 @@ "check": "svelte-check --tsconfig ./tsconfig.app.json && tsc -p tsconfig.node.json" }, "dependencies": { - "octagonal-wheels": "^0.1.50" + "octagonal-wheels": "^0.1.51" }, "devDependencies": { "eslint-plugin-svelte": "^3.19.0", diff --git a/updates.md b/updates.md index db509bc8..4a1d2422 100644 --- a/updates.md +++ b/updates.md @@ -5,6 +5,10 @@ The head note of 0.25 is now in [updates_old.md](https://github.com/vrtmrz/obsid ## Unreleased +## 0.25.82 + +15th July, 2026 + ### Fixed - Refresh the remote Security Seed before each replication, preventing a client that remained open during a remote database rebuild from uploading data encrypted with the previous seed (#1018). diff --git a/versions.json b/versions.json index 3097b78a..fc900972 100644 --- a/versions.json +++ b/versions.json @@ -3,5 +3,6 @@ "0.25.60": "1.7.2", "1.0.1": "0.9.12", "1.0.0": "0.9.7", - "0.25.81": "1.7.2" + "0.25.81": "1.7.2", + "0.25.82": "1.7.2" } From f44dc760872d8a2e2df216b8818b35a9a2158b43 Mon Sep 17 00:00:00 2001 From: vorotamoroz Date: Wed, 15 Jul 2026 14:03:15 +0000 Subject: [PATCH 2/3] Polish 0.25.82 release notes --- updates.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/updates.md b/updates.md index 4a1d2422..231ca742 100644 --- a/updates.md +++ b/updates.md @@ -9,9 +9,11 @@ The head note of 0.25 is now in [updates_old.md](https://github.com/vrtmrz/obsid 15th July, 2026 +Recently, I created a repository called Fancy Kit and have been trying to build some proper infrastructure around it. Does any of this look like cumbersome bureaucracy? No need to worry: you can carry on as usual. Codex is simply tidying up my usual rambling prose, terrible pull requests, and disjointed remarks. + ### Fixed -- Refresh the remote Security Seed before each replication, preventing a client that remained open during a remote database rebuild from uploading data encrypted with the previous seed (#1018). +- Refreshed the remote Security Seed before each replication, preventing a client that remained open during a remote database rebuild from uploading data encrypted with the previous seed (#1018). - The P2P **Start Sync & Close** action now waits for synchronisation to settle before closing the dialogue, avoiding premature release of screen-awake protection while work remains in flight. ### Improved @@ -19,6 +21,14 @@ The head note of 0.25 is now in [updates_old.md](https://github.com/vrtmrz/obsid - On supported mobile and desktop devices, one-shot replication, P2P peer discovery and selection, database rebuild and fetch operations, and remote chunk fetching now keep the screen awake for the duration of these finite remote operations. LiveSync also postpones its normal visibility suspension until the operation finishes, although platform restrictions may still pause or terminate background work. - The 📲 status-bar indicator now covers finite remote work as well as HTTP requests. It reports broad remote activity, such as P2P peer selection and remote chunk fetching, rather than an exact physical connection count. +### Improved (CLI) + +- CLI container images are now published for both AMD64 and ARM64 platforms. + +### Testing + +- Added a local real-Obsidian compatibility test that writes an encrypted, path-obfuscated note through the LiveSync CLI and verifies that the plug-in materialises the same content. + ## 0.25.81 14th July, 2026 From 9d70ac80646d6be863bcc4f1461ee50b7d6daed4 Mon Sep 17 00:00:00 2001 From: vorotamoroz Date: Wed, 15 Jul 2026 14:13:43 +0000 Subject: [PATCH 3/3] Synchronise workspace lock dependencies --- package-lock.json | 6 ++--- update-workspaces.mjs | 14 +++++++++++ utils/release-process.unit.spec.ts | 37 ++++++++++++++++++++++++++---- 3 files changed, 49 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 80bf7295..890b6c01 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16230,7 +16230,7 @@ "dependencies": { "chokidar": "^4.0.0", "minimatch": "^10.2.5", - "octagonal-wheels": "^0.1.50", + "octagonal-wheels": "^0.1.51", "pouchdb-adapter-http": "^9.0.0", "pouchdb-adapter-leveldb": "^9.0.0", "pouchdb-core": "^9.0.0", @@ -16254,7 +16254,7 @@ "name": "livesync-webapp", "version": "0.25.82-webapp", "dependencies": { - "octagonal-wheels": "^0.1.50" + "octagonal-wheels": "^0.1.51" }, "devDependencies": { "@playwright/test": "^1.58.2", @@ -16269,7 +16269,7 @@ "src/apps/webpeer": { "version": "0.25.82-webpeer", "dependencies": { - "octagonal-wheels": "^0.1.50" + "octagonal-wheels": "^0.1.51" }, "devDependencies": { "@sveltejs/vite-plugin-svelte": "^7.1.2", diff --git a/update-workspaces.mjs b/update-workspaces.mjs index dfb3bd6b..a8a0f159 100644 --- a/update-workspaces.mjs +++ b/update-workspaces.mjs @@ -105,6 +105,13 @@ for (const dir of workspaceDirs) { console.log(` Dependency '${dep}': ${oldVer} -> ${newVer}`); pkg.dependencies[dep] = newVer; } + if (lockWorkspace) { + lockWorkspace.dependencies ??= {}; + if (lockWorkspace.dependencies[dep] !== newVer) { + lockWorkspace.dependencies[dep] = newVer; + packageLockChanged = true; + } + } } } } @@ -119,6 +126,13 @@ for (const dir of workspaceDirs) { console.log(` DevDependency '${dep}': ${oldVer} -> ${newVer}`); pkg.devDependencies[dep] = newVer; } + if (lockWorkspace) { + lockWorkspace.devDependencies ??= {}; + if (lockWorkspace.devDependencies[dep] !== newVer) { + lockWorkspace.devDependencies[dep] = newVer; + packageLockChanged = true; + } + } } } } diff --git a/utils/release-process.unit.spec.ts b/utils/release-process.unit.spec.ts index d934398a..859abd01 100644 --- a/utils/release-process.unit.spec.ts +++ b/utils/release-process.unit.spec.ts @@ -167,9 +167,18 @@ describe("workspace version update", () => { it("keeps workspace package and lockfile versions together", () => { const directory = makeTemporaryDirectory(); const workspaces = ["src/apps/cli", "src/apps/webpeer", "src/apps/webapp"]; - writeJson(directory, "package.json", { version: "0.25.81", workspaces }); + writeJson(directory, "package.json", { + version: "0.25.81", + workspaces, + dependencies: { "octagonal-wheels": "^0.1.51" }, + devDependencies: { typescript: "^5.9.3" }, + }); for (const workspace of ["cli", "webpeer", "webapp"]) { - writeJson(directory, `src/apps/${workspace}/package.json`, { version: `0.25.80-${workspace}` }); + writeJson(directory, `src/apps/${workspace}/package.json`, { + version: `0.25.80-${workspace}`, + dependencies: { "octagonal-wheels": "^0.1.50" }, + devDependencies: { typescript: "^5.8.0" }, + }); } writeJson(directory, "package-lock.json", { name: "obsidian-livesync", @@ -177,9 +186,21 @@ describe("workspace version update", () => { lockfileVersion: 3, packages: { "": { version: "0.25.80", workspaces }, - "src/apps/cli": { version: "0.25.80-cli" }, - "src/apps/webpeer": { version: "0.25.80-webpeer" }, - "src/apps/webapp": { version: "0.25.80-webapp" }, + "src/apps/cli": { + version: "0.25.80-cli", + dependencies: { "octagonal-wheels": "^0.1.50" }, + devDependencies: { typescript: "^5.8.0" }, + }, + "src/apps/webpeer": { + version: "0.25.80-webpeer", + dependencies: { "octagonal-wheels": "^0.1.50" }, + devDependencies: { typescript: "^5.8.0" }, + }, + "src/apps/webapp": { + version: "0.25.80-webapp", + dependencies: { "octagonal-wheels": "^0.1.50" }, + devDependencies: { typescript: "^5.8.0" }, + }, }, }); @@ -189,6 +210,8 @@ describe("workspace version update", () => { for (const workspace of ["cli", "webpeer", "webapp"]) { const packageJson = JSON.parse(readFileSync(join(directory, `src/apps/${workspace}/package.json`), "utf8")); expect(packageJson.version).toBe(`0.25.81-${workspace}`); + expect(packageJson.dependencies["octagonal-wheels"]).toBe("^0.1.51"); + expect(packageJson.devDependencies.typescript).toBe("^5.9.3"); } const packageLock = JSON.parse(readFileSync(join(directory, "package-lock.json"), "utf8")); expect(packageLock.version).toBe("0.25.81"); @@ -196,5 +219,9 @@ describe("workspace version update", () => { expect(packageLock.packages["src/apps/cli"].version).toBe("0.25.81-cli"); expect(packageLock.packages["src/apps/webpeer"].version).toBe("0.25.81-webpeer"); expect(packageLock.packages["src/apps/webapp"].version).toBe("0.25.81-webapp"); + for (const workspace of workspaces) { + expect(packageLock.packages[workspace].dependencies["octagonal-wheels"]).toBe("^0.1.51"); + expect(packageLock.packages[workspace].devDependencies.typescript).toBe("^5.9.3"); + } }); });