mirror of
https://github.com/vrtmrz/obsidian-livesync.git
synced 2026-05-13 11:01:16 +00:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c7db8592c6 | ||
|
|
fc3617d9f9 | ||
|
|
34c1b040db | ||
|
|
6b85aecafe |
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"id": "obsidian-livesync",
|
"id": "obsidian-livesync",
|
||||||
"name": "Self-hosted LiveSync",
|
"name": "Self-hosted LiveSync",
|
||||||
"version": "0.17.5",
|
"version": "0.17.7",
|
||||||
"minAppVersion": "0.9.12",
|
"minAppVersion": "0.9.12",
|
||||||
"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.",
|
"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",
|
"author": "vorotamoroz",
|
||||||
|
|||||||
4
package-lock.json
generated
4
package-lock.json
generated
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "obsidian-livesync",
|
"name": "obsidian-livesync",
|
||||||
"version": "0.17.5",
|
"version": "0.17.7",
|
||||||
"lockfileVersion": 2,
|
"lockfileVersion": 2,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "obsidian-livesync",
|
"name": "obsidian-livesync",
|
||||||
"version": "0.17.5",
|
"version": "0.17.7",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"diff-match-patch": "^1.0.5",
|
"diff-match-patch": "^1.0.5",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "obsidian-livesync",
|
"name": "obsidian-livesync",
|
||||||
"version": "0.17.5",
|
"version": "0.17.7",
|
||||||
"description": "Reflect your vault changes to some other devices immediately. Please make sure to disable other synchronize solutions to avoid content corruption or duplication.",
|
"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",
|
"main": "main.js",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
|
|||||||
@@ -412,7 +412,6 @@ export class ObsidianLiveSyncSettingTab extends PluginSettingTab {
|
|||||||
.setButtonText("Apply")
|
.setButtonText("Apply")
|
||||||
.setWarning()
|
.setWarning()
|
||||||
.setDisabled(false)
|
.setDisabled(false)
|
||||||
.setClass("sls-btn-right")
|
|
||||||
.onClick(async () => {
|
.onClick(async () => {
|
||||||
await applyEncryption(true);
|
await applyEncryption(true);
|
||||||
})
|
})
|
||||||
@@ -422,7 +421,6 @@ export class ObsidianLiveSyncSettingTab extends PluginSettingTab {
|
|||||||
.setButtonText("Apply w/o rebuilding")
|
.setButtonText("Apply w/o rebuilding")
|
||||||
.setWarning()
|
.setWarning()
|
||||||
.setDisabled(false)
|
.setDisabled(false)
|
||||||
.setClass("sls-btn-right")
|
|
||||||
.onClick(async () => {
|
.onClick(async () => {
|
||||||
await applyEncryption(false);
|
await applyEncryption(false);
|
||||||
})
|
})
|
||||||
@@ -470,7 +468,6 @@ export class ObsidianLiveSyncSettingTab extends PluginSettingTab {
|
|||||||
.setButtonText("Send")
|
.setButtonText("Send")
|
||||||
.setWarning()
|
.setWarning()
|
||||||
.setDisabled(false)
|
.setDisabled(false)
|
||||||
.setClass("sls-btn-left")
|
|
||||||
.onClick(async () => {
|
.onClick(async () => {
|
||||||
await rebuildDB("remoteOnly");
|
await rebuildDB("remoteOnly");
|
||||||
})
|
})
|
||||||
@@ -485,7 +482,6 @@ export class ObsidianLiveSyncSettingTab extends PluginSettingTab {
|
|||||||
.setButtonText("Rebuild")
|
.setButtonText("Rebuild")
|
||||||
.setWarning()
|
.setWarning()
|
||||||
.setDisabled(false)
|
.setDisabled(false)
|
||||||
.setClass("sls-btn-left")
|
|
||||||
.onClick(async () => {
|
.onClick(async () => {
|
||||||
await rebuildDB("rebuildBothByThisDevice");
|
await rebuildDB("rebuildBothByThisDevice");
|
||||||
})
|
})
|
||||||
@@ -760,7 +756,6 @@ export class ObsidianLiveSyncSettingTab extends PluginSettingTab {
|
|||||||
.setButtonText("Fetch")
|
.setButtonText("Fetch")
|
||||||
.setWarning()
|
.setWarning()
|
||||||
.setDisabled(false)
|
.setDisabled(false)
|
||||||
.setClass("sls-btn-left")
|
|
||||||
.onClick(async () => {
|
.onClick(async () => {
|
||||||
await rebuildDB("localOnly");
|
await rebuildDB("localOnly");
|
||||||
})
|
})
|
||||||
@@ -1103,7 +1098,6 @@ export class ObsidianLiveSyncSettingTab extends PluginSettingTab {
|
|||||||
.setButtonText("Touch")
|
.setButtonText("Touch")
|
||||||
.setWarning()
|
.setWarning()
|
||||||
.setDisabled(false)
|
.setDisabled(false)
|
||||||
.setClass("sls-btn-left")
|
|
||||||
.onClick(async () => {
|
.onClick(async () => {
|
||||||
const filesAll = await this.plugin.scanInternalFiles();
|
const filesAll = await this.plugin.scanInternalFiles();
|
||||||
const targetFiles = await this.plugin.filterTargetFiles(filesAll);
|
const targetFiles = await this.plugin.filterTargetFiles(filesAll);
|
||||||
|
|||||||
2
src/lib
2
src/lib
Submodule src/lib updated: 9fe5ce421f...bfad1f86d3
@@ -1382,7 +1382,7 @@ export default class ObsidianLiveSyncPlugin extends Plugin {
|
|||||||
await this.doc2storage_modify(doc, file);
|
await this.doc2storage_modify(doc, file);
|
||||||
queueConflictCheck();
|
queueConflictCheck();
|
||||||
} else {
|
} else {
|
||||||
const d = await this.localDatabase.getDBEntryMeta(id2path(change._id), { conflicts: true })
|
const d = await this.localDatabase.getDBEntryMeta(id2path(change._id), { conflicts: true }, true);
|
||||||
if (d && !d._conflicts) {
|
if (d && !d._conflicts) {
|
||||||
await this.doc2storage_modify(doc, file);
|
await this.doc2storage_modify(doc, file);
|
||||||
} else {
|
} else {
|
||||||
@@ -2176,7 +2176,7 @@ export default class ObsidianLiveSyncPlugin extends Plugin {
|
|||||||
const conflictedRevNo = Number(conflictedRev.split("-")[0]);
|
const conflictedRevNo = Number(conflictedRev.split("-")[0]);
|
||||||
//Search
|
//Search
|
||||||
const revFrom = (await this.localDatabase.localDatabase.get(id2path(path), { revs_info: true })) as unknown as LoadedEntry & PouchDB.Core.GetMeta;
|
const revFrom = (await this.localDatabase.localDatabase.get(id2path(path), { revs_info: true })) as unknown as LoadedEntry & PouchDB.Core.GetMeta;
|
||||||
const commonBase = revFrom._revs_info.filter(e => e.status == "available" && Number(e.rev.split("-")[0]) < conflictedRevNo).first().rev ?? "";
|
const commonBase = revFrom._revs_info.filter(e => e.status == "available" && Number(e.rev.split("-")[0]) < conflictedRevNo).first()?.rev ?? "";
|
||||||
let p = undefined;
|
let p = undefined;
|
||||||
if (commonBase) {
|
if (commonBase) {
|
||||||
if (isSensibleMargeApplicable(path)) {
|
if (isSensibleMargeApplicable(path)) {
|
||||||
|
|||||||
@@ -85,13 +85,6 @@
|
|||||||
|
|
||||||
} */
|
} */
|
||||||
|
|
||||||
.sls-btn-left {
|
|
||||||
padding-right: 4px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sls-btn-right {
|
|
||||||
padding-left: 4px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sls-header-button {
|
.sls-header-button {
|
||||||
margin-left: 2em;
|
margin-left: 2em;
|
||||||
|
|||||||
@@ -28,6 +28,14 @@
|
|||||||
|
|
||||||
- 0.17.5 Now `read chunks online` had been fixed, and a new feature: `Use dynamic iteration count` to reduce the load on encryption/decryption.
|
- 0.17.5 Now `read chunks online` had been fixed, and a new feature: `Use dynamic iteration count` to reduce the load on encryption/decryption.
|
||||||
Note: `Use dynamic iteration count` is not compatible with earlier versions.
|
Note: `Use dynamic iteration count` is not compatible with earlier versions.
|
||||||
|
- 0.17.6 Now our renamed/deleted files have been surely deleted again.
|
||||||
|
- 0.17.7
|
||||||
|
- Fixed:
|
||||||
|
- Fixed merging issues.
|
||||||
|
- Fixed button styling.
|
||||||
|
- Changed:
|
||||||
|
- Conflict checking on synchronising has been enabled for every note in default.
|
||||||
|
|
||||||
### 0.16.0
|
### 0.16.0
|
||||||
- Now hidden files need not be scanned. Changes will be detected automatically.
|
- Now hidden files need not be scanned. Changes will be detected automatically.
|
||||||
- If you want it to back to its previous behaviour, please disable `Monitor changes to internal files`.
|
- If you want it to back to its previous behaviour, please disable `Monitor changes to internal files`.
|
||||||
|
|||||||
Reference in New Issue
Block a user