IMPORTANT: if you are using the web clipper you might want to hold off on using this version because it won't be compatible with the version currently on the extension stores. I want to release a new version very soon, so you shouldn't have long to wait in any case.
For now the main changes in this pre-release are the synchronisation optimisations. The goal is to optimise the first sync, which has always been quite slow, as well as save server resources and bandwidth for Joplin Server.
There are three optimisations:
-
Applies to all sync targets: The synchroniser now keeps track of items that have never been synced, and for those it skips an extra fetch per item. This is enabled by default.
-
Applies to Joplin Server: Upload queries are now uploaded in batch and, server side, also saved in batch (in a transaction). For now this is disabled behind a feature flag so that the app remains compatible with Joplin Server 2.0.
-
Applies to Joplin Server: Since the server parses the Joplin items, it can provide accurate timestamps in the metadata calls. It means it's no longer necessary to download the full item to get the timestamp, it can rely on the metadata instead (and metadata is sent in batch too). Also disabled behind a feature flag, to maintain compatibility with Joplin Server 2.0.
In my tests when doing a first sync with 8031 items with Joplin Server, it would previously take 45 min 15s. After optimisation it takes 9 min 15s, so about 5 times faster! The batching of requests and responses obviously makes a huge difference but I wasn't expecting that much. Resource upload is a bit more complicated so for now this part is not optimised so a note collection with many resources will see less of an improvement.
These improvements will be enabled by default on the final release, but in the meantime if you want to try (you'll need Joplin Server 2.1 Beta), you can set these two flags in .config/settings.json
:
"featureFlag.syncAccurateTimestamps": true,
"featureFlag.syncMultiPut": true,
Download
Changelog
- Improved: Added feature flags to disable Joplin Server sync optimisations by default, so that it still work with server 2.0 (326fef4)
- Improved: Allow uploading items in batch when synchronising with Joplin Server (0222c0f)
- Improved: Improved first sync speed when synchronising with Joplin Server (4dc1210)
- Improved: Mask auth token and password in log (0d33955)
- Improved: Optimise first synchronisation, when items have never been synced before (15ce5cd)
- Improved: Update Mermaid: 8.8.4 -> 8.10.2 (#5092 by Helmut K. C. Tessarek)
- Fixed: Plugins: Fixed saving secure settings to the keychain, and added way to store plugin settings to settings.json (ab9bbcb)