@vrtmrz/livesync-commonlib 0.1.35 → 0.1.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -226,7 +226,7 @@ class RemoteService extends ServiceBase {
226
226
  const signal = connectionScope.combine(opts?.signal);
227
227
  const response = await this.performFetch(
228
228
  requestSrc,
229
- { ...opts, headers, signal },
229
+ { ...opts, headers, signal, cache: "no-store" },
230
230
  useRequestAPI ? FetchMethod.native : FetchMethod.webCompat
231
231
  );
232
232
  return response;
@@ -242,7 +242,11 @@ class RemoteService extends ServiceBase {
242
242
  this._log(
243
243
  "Failed to fetch by native fetch API. Trying to fetch by API to get more information."
244
244
  );
245
- const resp2 = await this.performFetch(requestSrc, { ...opts, headers }, FetchMethod.native);
245
+ const resp2 = await this.performFetch(
246
+ requestSrc,
247
+ { ...opts, headers, cache: "no-store" },
248
+ FetchMethod.native
249
+ );
246
250
  if (resp2.status / 100 == 2) {
247
251
  this.showError(
248
252
  "The request was successful by API. But the native fetch API failed! Please check CORS settings on the remote database!. While this condition, you cannot enable LiveSync",
@@ -8,6 +8,8 @@ The code paths below identify the maintained Self-hosted LiveSync composition po
8
8
 
9
9
  ## Obsidian plug-in
10
10
 
11
+ The CouchDB connection fix bypasses browser HTTP caching so encrypted replication can continue after a remote Rebuild preserves document IDs and revisions. Commonlib's regression tests cover Metadata and Chunks encrypted with a replacement Security Seed while an earlier response remains cached. Self-hosted LiveSync's `couchdb-http-cache` scenario additionally populates the real browser HTTP cache before rebuilding, confirms that the Seed and ciphertext change while the revision remains unchanged, and requires subsequent replication to succeed without clearing that cache. The released LiveSync 1.0.34 fails this scenario; a local checked Commonlib artefact passes in the maintained LiveSync 1.0.34 composition on Linux Obsidian 1.12.7. This establishes the tested build's behaviour, with the reporter's Windows and Obsidian 1.13.7 environment still unverified.
12
+
11
13
  Unreleased settings tests verify that Object Storage-only credentials, JWT values, and authentication headers reach the host persistence handler only after connection encryption, and that unavailable or failed required encryption preserves the previous persisted settings. The focused `/settings` entry also supplies conditional whole-profile Markdown preparation and import preservation. A clean packed consumer checks the exhaustive property policy and prepared output types with an ES2018 compile fixture. Commonlib owns these result and type contracts; Self-hosted LiveSync owns Markdown file writes, its settings interface, and restoration through a real Obsidian restart.
12
14
 
13
15
  Unreleased colon-path regression tests establish that Commonlib preserves ordinary file paths through Metadata storage, Chunk retrieval, and storage reflection, with path obfuscation enabled or disabled. They use real PouchDB with injected storage. This result does not establish which filenames a host's file-creation API accepts; that boundary requires host runtime verification.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vrtmrz/livesync-commonlib",
3
- "version": "0.1.35",
3
+ "version": "0.1.36",
4
4
  "description": "Shared data, storage, and replication primitives for Self-hosted LiveSync clients.",
5
5
  "type": "module",
6
6
  "types": "./dist/index.d.ts",