Update 1676597211079, Mobile 1676598630796:
This update is the New Sync System that we’ve been working on for quite a while now! I initially started it almost 1.5 years ago, then because it was a huge project I paused it to focus on smaller bugs/features, then I started it over in a better way, in open source.
As opposed to the earlier plan, this fits right into the same backend database so there’s no migration or major changes. It will just work better. You should not even notice a difference, except that you’ll see a “Loading documents…” message on the first load while it updates the local cache.
This new system is more consistent, using one state/sync method for everything: documents, boards, settings, and even UI state. We built it in partnership with the Bravely team, and it’s already used in their web and mobile apps. The sync system is a plugin for our open source Legend-State library, which we will also open source later this month. That way other developers can use it, which hopefully will help the community as well as help find bugs and improve Legend.
The main new feature is just that it will work better. But also:
- Offline <-> Offline sync is more correct and consistent. There were some tough-to-solve edge cases (creating documents offline, moving between documents, sync failures with massive documents) that are fully fixed in this new system.
- The desktop app syncs to files (see the path in the Desktop section of settings). So now you can back up Legend’s files yourself.
- Boards also sync to files. We don’t have a way to restore Board backups just yet, but we can now explore that.
- This reduced a ton of code and complexity in Legend’s core, so it will be much easier to iterate new features/fixes quickly.
Please put your thoughts/bug reports/comments in the new system system thread to keep it all together. Thanks!