Merge pull request #1248 from vrtmrz/1_0_36

Release 1.0.36
This commit is contained in:
vorotamoroz
2026-10-13 23:33:47 +09:00
committed by GitHub
9 changed files with 44 additions and 35 deletions
+14
View File
@@ -2,6 +2,20 @@
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.31
26th September, 2026
### Synchronisation and storage
#### Fixed
- Files with colons in their names now retain their full paths in synchronisation data instead of appearing as incorrectly named copies at the Vault root. (#1206)
- Obsidian may refuse to create a missing file with such a name. LiveSync also treats these names as invalid on Windows and Android, so the file may not appear in those devices' Vaults. Existing misplaced copies are left for you to review; this change does not remove them automatically.
- Received changes within the configured modification-time limit are applied to the Vault again while remediation mode is active. Changes newer than the limit remain blocked; changes arriving while a fetch makes the local database unavailable are kept for a later attempt.
- A scheduled fetch no longer offers Simple Fetch while remediation mode is active. This prevents the fetch from bypassing the modification-time limit; the detailed flow explains the restriction and offers to clear it first (#1202). Thank you to @kimjansheden for both fixes and the regression tests in PR #1208!
- On start-up, an unchanged file with a missing local revision record can be recognised before newer content arrives, avoiding an unnecessary conflict. Files with actual local edits still require conflict review. (#1207)
## 1.0.30
18th September, 2026
+1 -1
View File
@@ -1,7 +1,7 @@
{
"id": "obsidian-livesync",
"name": "Self-hosted LiveSync",
"version": "1.0.35",
"version": "1.0.36",
"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",
+8 -8
View File
@@ -1,12 +1,12 @@
{
"name": "obsidian-livesync",
"version": "1.0.35",
"version": "1.0.36",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "obsidian-livesync",
"version": "1.0.35",
"version": "1.0.36",
"license": "MIT",
"workspaces": [
"src/apps/cli",
@@ -11862,11 +11862,11 @@
},
"src/apps/cli": {
"name": "self-hosted-livesync-cli",
"version": "1.0.35-cli",
"version": "1.0.36-cli",
"dependencies": {
"chokidar": "^4.0.0",
"minimatch": "^10.2.5",
"octagonal-wheels": "^0.1.54",
"octagonal-wheels": "^0.1.55",
"pouchdb-adapter-http": "^9.0.0",
"pouchdb-adapter-leveldb": "^9.0.0",
"pouchdb-core": "^9.0.0",
@@ -11887,9 +11887,9 @@
},
"src/apps/webapp": {
"name": "livesync-webapp",
"version": "1.0.35-webapp",
"version": "1.0.36-webapp",
"dependencies": {
"octagonal-wheels": "^0.1.54"
"octagonal-wheels": "^0.1.55"
},
"devDependencies": {
"@sveltejs/vite-plugin-svelte": "^7.1.2",
@@ -11899,9 +11899,9 @@
}
},
"src/apps/webpeer": {
"version": "1.0.35-webpeer",
"version": "1.0.36-webpeer",
"dependencies": {
"octagonal-wheels": "^0.1.54"
"octagonal-wheels": "^0.1.55"
},
"devDependencies": {
"@sveltejs/vite-plugin-svelte": "^7.1.2",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "obsidian-livesync",
"version": "1.0.35",
"version": "1.0.36",
"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",
+2 -2
View File
@@ -1,7 +1,7 @@
{
"name": "self-hosted-livesync-cli",
"private": true,
"version": "1.0.35-cli",
"version": "1.0.36-cli",
"main": "dist/index.cjs",
"type": "module",
"scripts": {
@@ -37,7 +37,7 @@
"dependencies": {
"chokidar": "^4.0.0",
"minimatch": "^10.2.5",
"octagonal-wheels": "^0.1.54",
"octagonal-wheels": "^0.1.55",
"pouchdb-adapter-http": "^9.0.0",
"pouchdb-adapter-leveldb": "^9.0.0",
"pouchdb-core": "^9.0.0",
+2 -2
View File
@@ -1,7 +1,7 @@
{
"name": "livesync-webapp",
"private": true,
"version": "1.0.35-webapp",
"version": "1.0.36-webapp",
"type": "module",
"description": "Browser-based Self-hosted LiveSync using FileSystem API",
"scripts": {
@@ -15,7 +15,7 @@
"test:browser": "deno test -A --no-check --frozen --config ../../../test/browser-apps/deno.json --lock ../../../test/browser-apps/deno.lock ../../../test/browser-apps/webapp/browser-smoke.test.ts"
},
"dependencies": {
"octagonal-wheels": "^0.1.54"
"octagonal-wheels": "^0.1.55"
},
"devDependencies": {
"@sveltejs/vite-plugin-svelte": "^7.1.2",
+2 -2
View File
@@ -1,7 +1,7 @@
{
"name": "webpeer",
"private": true,
"version": "1.0.35-webpeer",
"version": "1.0.36-webpeer",
"type": "module",
"scripts": {
"dev": "vite",
@@ -15,7 +15,7 @@
"test:browser": "deno test -A --no-check --frozen --config ../../../test/browser-apps/deno.json --lock ../../../test/browser-apps/deno.lock ../../../test/browser-apps/webpeer/browser-smoke.test.ts"
},
"dependencies": {
"octagonal-wheels": "^0.1.54"
"octagonal-wheels": "^0.1.55"
},
"devDependencies": {
"eslint-plugin-svelte": "^3.19.0",
+12 -18
View File
@@ -12,12 +12,18 @@ Earlier releases remain available in the 1.0 release history, the 1.0 preview hi
## Unreleased
## 1.0.36
13th October, 2026
### Configuration Encryption
#### Fixed
- We now apply the settings for protecting sensitive configuration together, so a successful Apply keeps the saved settings under the selected passphrase. If Apply fails, the edits remain available to retry. (#1238)
- We can now enter a missing or unusable custom configuration passphrase at start-up to unlock protected settings. Cancelling the custom-key recovery prompt preserves the encrypted configuration and stops that start-up attempt; headless command-line start-up cannot complete that prompt when recovery input is required. (#1239)
- We can change the protection of sensitive configuration with Apply and keep our saved settings readable after a restart. (#1238, #1245)
- The selected protection mode and passphrase are saved together. If Apply fails, our edits remain available to retry.
- We can enter a missing or unusable custom configuration passphrase at start-up to unlock our protected settings. (#1239, #1245)
- Cancelling the recovery dialogue preserves the encrypted configuration and stops that start-up attempt. Headless command-line start-up cannot complete the dialogue when recovery input is required.
### Localisation
@@ -26,17 +32,19 @@ Earlier releases remain available in the 1.0 release history, the 1.0 preview hi
- We can read more settings, maintenance controls, and Fast Setup instructions in Spanish. (#1213, #1214)
- Remote database lock warnings now use the existing translations consistently.
- Fast Setup follows the selected display language while preserving saved choices across restarts and language changes.
- We can read more settings, setup instructions, and messages in Simplified Chinese. (#1242)
### Maintenance
- Build copying and import alias checks now use repository-owned helpers, removing the vulnerable `braces` dependency from development tooling.
- Updated compatible development dependencies with available security fixes.
- Development tooling now uses compatible dependency versions with available security fixes. (#1245)
- Repository-owned build and import alias helpers remove the vulnerable `braces` dependency.
### Acknowledgements
Thank you for your contributions!
- @zeedif (#1213, #1214)
- @lingting0 (#1242)
## 1.0.35
@@ -171,17 +179,3 @@ The 1.0.31 pre-release was not promoted after validation found that a receiving
- Received changes within the configured modification-time limit are applied to the Vault again while remediation mode is active. Changes newer than the limit remain blocked; changes arriving while a fetch makes the local database unavailable are kept for a later attempt.
- A scheduled fetch no longer offers Simple Fetch while remediation mode is active. This prevents the fetch from bypassing the modification-time limit; the detailed flow explains the restriction and offers to clear it first (#1202). Thank you to @kimjansheden for both fixes and the regression tests in PR #1208!
- On start-up, an unchanged file with a missing local revision record can be recognised before newer content arrives, avoiding an unnecessary conflict. Files with actual local edits still require conflict review. (#1207)
## 1.0.31
26th September, 2026
### Synchronisation and storage
#### Fixed
- Files with colons in their names now retain their full paths in synchronisation data instead of appearing as incorrectly named copies at the Vault root. (#1206)
- Obsidian may refuse to create a missing file with such a name. LiveSync also treats these names as invalid on Windows and Android, so the file may not appear in those devices' Vaults. Existing misplaced copies are left for you to review; this change does not remove them automatically.
- Received changes within the configured modification-time limit are applied to the Vault again while remediation mode is active. Changes newer than the limit remain blocked; changes arriving while a fetch makes the local database unavailable are kept for a later attempt.
- A scheduled fetch no longer offers Simple Fetch while remediation mode is active. This prevents the fetch from bypassing the modification-time limit; the detailed flow explains the restriction and offers to clear it first (#1202). Thank you to @kimjansheden for both fixes and the regression tests in PR #1208!
- On start-up, an unchanged file with a missing local revision record can be recognised before newer content arrives, avoiding an unnecessary conflict. Files with actual local edits still require conflict review. (#1207)
+2 -1
View File
@@ -46,5 +46,6 @@
"1.0.32": "1.7.2",
"1.0.33": "1.7.2",
"1.0.34": "1.7.2",
"1.0.35": "1.7.2"
"1.0.35": "1.7.2",
"1.0.36": "1.7.2"
}