Skip to content

feat: add webdav sync#307

Merged
suziwen merged 2 commits into
zero-peak:masterfrom
foresee-io:merge/sync-dav
May 9, 2026
Merged

feat: add webdav sync#307
suziwen merged 2 commits into
zero-peak:masterfrom
foresee-io:merge/sync-dav

Conversation

@foresee-io
Copy link
Copy Markdown

What does this PR do?

  • New feature

(Note: Translations and typo fixes should be done on https://hosted.weblate.org/projects/switchyomega/ instead of PR.)

  • Support multiple network backends
    • Refactored SyncBackend into standalone GistBackend and WebDAVBackend.
    • Split sync_storage.coffee into {sync,gist,webdav}_backend.coffee.
    • Added syncUsername and syncBackendType to Chrome browser sync settings.
  • Maximize logic reuse from the original sync_storage.coffee, particularly for Git commit ID handling and conflict resolution.
    • For WebDAVBackend, emulated the Git commit ID mechanism by using zeroomega-commit.txt and corresponding zeroomega-<commit_id>.json files to maintain consistency with GistBackend.

Compatibility

No breaking changes, users are able to seamlessly upgrade to this newer version.

Tested on Microsoft Edge 147.0.3912.98 , from commit af79d9e to 1c0c95d

  • Inherit data from older version
  • Cloud sync
  • Functions from origin still working

Minor UI changes. Added a drop-down menu to allow users select preferred sync backend, currently GitHub Gist and WebDAV.

Screenshots

Seamless Upgrade WebDAV
screenshot-20260505-021647 screenshot-20260505-031557

Drawbacks

  • No support for WWW-Authenticate digest authentication.

- Multi network protocol backends, extends SyncBackend to GistBackend and WebDAVBackend
- Drop support for www-authenticate digest auth

(cherry picked from commit 83f4ae2)
@foresee-io foresee-io marked this pull request as ready for review May 5, 2026 01:32
@foresee-io
Copy link
Copy Markdown
Author

@suziwen
Copy link
Copy Markdown
Member

suziwen commented May 9, 2026

Many thanks for your contribution.

This is a feature we've long wanted to add but never had the chance. I believe it will be well received by many users.

Much appreciated!

@suziwen suziwen merged commit 0b50b39 into zero-peak:master May 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants