- Fix sync issues (regression in 0.18.0)
- Fix database is locked errors that were showing in some cases
- Open the default web browser to the web UI on first run
- Update Radicale to 3.0.0 and adjust the code accordingly
- Add a way to shutdown etesync-dav from the web UI
- Prevent Radicale from loading the default config (and confuse etesync-dav)
- Fix error message for wrong encryption passwords
- Make it possible to bind to multiple hosts + bind to both ipv4 and 6 by default
- Fix address book collections reporting they are also CalDAV collections
- Web UI: correctly redirect using https when ssl is on.
- Add application icon to macOS and Windows binaries
- Update pyetesync version to improve sync time and set the user agent when making requests.
- Update pyetesync version to fix database locking issue
- Webui: move it under /.web instead of a separate thread + port.
- Make permissions to config dir more restrictive.
- Move the app's data to user_data_dir from user_config_dir
- Provide more explicit copyright and licensing information.
- Fix "database is locked" errors
- Fix issue with high CPU usage when there's no connection.
- Initialise new accounts and verify encryption keys when adding users
- Significantly improve sync speed by changing the transaction locking mechanism
- Sync on client requests even if sync period hasn't passed (but only if two minutes have passed)
- Add support for contact PHOTOS
- Webui: add a version string to the UI so it's easier for people to know what version they are running.
- Sync with etesync periodically: makes it much more responsive and fixes timeout issues
- Webui: respect the ETESYNC_LISTEN_ADDRESS env var (fixes web ui access from docker)
- Transparently transform vCard 4.0 to 3.0 which should fix sync on macOS (which doesn't support 4.0)
- Webui: fix links to journals when SSL is enabled
- Webui: fix empty journal list when just adding an account.
- Add ETESYNC_DAV_URL to be able to override the DAV url from the environment.
- Fix pip setup.
- Move certgen into the main script (and generated binaries)
- Simplify and fixed issues with certgen
- Automatically use SSL if certificate and key exist.
- macOS: add a warning in the webui when missing SSL and add a button to set it up.
- Make it possible to override the etesync database filename from the env.
- Docker: expose web management port
- UI: add a web UI to manage etesync-dav
- Get rid of the need for radicale.conf (pass the needed settings directly)
- Move the radicale_storage_etesync module into the etesync_dav module
- Filter out the PHOTO field from contacts to fix sync (see #65 for details).
- Fixed bulk item uploading for newly created collections.
- Fixed filename generation when creating items.
- Merge radicale-storage-etesync into this package
- Upgrade radicale_etesync.
- Print correct version when passed the --version flag.
- Merge etesync-dav-manage and etesync-dav into a single entry point
- Add support for PyInstaller (and thus building standalone binaries).
- Include the new rights module (read only journals) in the default config
- Upgrade radicale_etesync.
- Docker: make the container run as an unprivileged user.
- Fix etesync-dav-manage to not create a database (as it doesn't need to)
- Upgrade radicale_etesync.
- Upgrade radicale_etesync - fixes potential intetgrity issue
- Upgrade radicale_etesync (adds Tasks support!)
- Upgrade radicale_etesync.
- Upgrade radicale_etesync.
- Upgrade radicale_etesync.
- Added a way to override the config path from the environment
- Fix issue with the config dir not being created if more than 1 level deep.
- Fix to work with Radicale version >= 2.1.0. - Thanks to @LogicalDash for reporting.
- Remove dependency on Python 3.6 and up. Should now work on any Python 3.
- Initial release.
- Increase required pyetesync version to 0.8.4
- Stop rewriting URLs to use the UID as the path and just use whatever the DAV clients choose (instead of rewriting).
- This fixes KAddressBook and probably some other clients.
- Fix support for paths/UIDs that contain front slashes (/)
- Fix potential issues with making collections - although it's meant to be blocked in the rights module
- Improve warning about sync-tokens (state that they can be ignored)
- Make the module's version available in code
- Configuration: add support for shell expansion for paths
- Minor bug fixes
- Bring back the EteSync cache - also fixes the request throttling
- Allow overriding the API endpoint used, by setting ETESYNC_URL.
- Fix a serious race condition in multi-threaded environments (default with Radicale!) This could cause data leak when using the same etesync-dav instance with multiple EteSync credentials (not a common usecase).
- Rights management: better handle 404s
- Add a rights module to handle read only journals.
- Bump pyetesync version
- Make it possible to have a different database per user
- Make the sync throttle per user rather than instance
- Verify that the user creds haven't changed or removed before using the cached etesync.
- Creds: only reload the file if it has changed.
- Fix fetching of user info to always fetch from the server.
- Fetch user info on every sync
- Reload credentials file when trying to access credentials of a user that's not found.
- Bump pyetesync version
- Bump pyetesync version that fixes potential integrity issue
- Add support for tasks
- Correctly advertise calendars only support vevents.
- Ignore journals of unknown types
- Bump pyetesync version
- Bump pyetesync version
- Fix a few weird behaviours that should improve compatability
- Got Apple Calendar to work (but not Contacts)
- Workaround the Radicale bug in 2.1.10
- Update radicale minimum version requirements
- Upgrade pyetesync and radicale
- Upgrade pyetesync version requirement
- Fix to work with Radicale version >= 2.1.0 - Thanks to @LogicalDash for reporting.
- Credential files:
- Fix loading of empty credential files
- Fix saving of credential files
- Collections:
- Fix collection serialization
- Fix setting of owner
- Initial release. Everything should work apart of Last-Modified.