Admittedly, the previous two releases of OpenTodoList were rather unspectacular. In exchange, v3.31 is just the more exciting 😁
Not only did we manage to finish one long awaited refactoring step, but also half a dozen other changes made it into this release, some user facing ones as well as under-the-hood changes that ready the app for the future.
- rpdev/opentodolist#198: You can see it from the issue number - this one did age quite a while. And this is also the reason why the previous versions of OpenTodoList did only bring very few changes each. The code, which is responsible to sync your libraries between devices, was hard-wired into the app. This is bad, because actually, we’d like to be able to reuse it for other apps as well. So we finally did it and started a new project - the SynqClient library. This library currently implements access to WebDAV servers (generic ones as well as special handling for NextCloud and ownCloud). However, we also improved the code quite a bit compared to what was present in OpenTodoList before. First, it is now designed such that access to other servers could be added in the future as well. And in addition, the library can make use of multiple connections to the same server as well as HTTP pipelining to speed up the sync procedure. You should notice this especially when adding a relatively large library on a new device. Before, this could take quite a bit, because OpenTodoList would load each file one after the other. With the new library, several files are downloaded in parallel, greatly speeding up the overall process.
- rpdev/opentodolist#396: But a faster sync is not all that this new version of OpenTodoList has to offer. We also revamped the settings quite a bit. You can now select to use a dense variant of the Material theme, which saves a bit of screen estate here and there. In addition, you can also opt to use a more compact form for todo and task listings. And on top, the font size handling was improved - and there is an all-new option to manually specify a scale factor for the user interface (which comes in handy if on your system for whatever reason the automatic selection of a suitable scale factor does not work well).
- rpdev/opentodolist#393: Inside todo lists you have the option to hide completed todos. For task lists (aka sub-todos) this was not possible until now. Well, emphasize on was 😉
- rpdev/opentodolist#380: Some iterations before, we introduced the functionality to move a todo into another todo list. unfortunately, a little bug sneaked in, which would cause the other todos in the list from where the todo is moved to disappear. Well, not persistently, but in the worst case you would have to restart the app for them to appear back. This little annoying bug is fixed as well! 🩹
- rpdev/opentodolist#395: Speaking of bugs… 🪲 There was another one - not as nasty, but still confusing. When you mark tasks inside a todo as done, a progress overlay over the todo item will visualize the overall state of open vs closed tasks in it. Well, except that when there were tasks you deleted from that todo, the indication would be a bit off… Well, doesn’t matter anymore, as this one is history as well.
- rpdev/opentodolist#397: This is a particularly important one, although you - as a user - won’t notice. To speed up access to your libraries of items, a cache is used. The format for representing items in this cache was based on an API, which meanwhile has been deprecated in the underlying Qt library that the app is built upon. In order to be ready to upgrade to the next major release of Qt, we also got rid of this format and switched to a new and better representation of items in that cache. Again, for you as a user, this change should be transparent.
- rpdev/opentodolist#394: And with this, we come to the last change for this release. This is again one that will be clearly visible… The app now renders completed todos and tasks a bit more prominently. So especially when scrolling through large item lists, it now should be easier for the eye to distinguish between closed and open todos/tasks.
- Please find the download links for major platforms on GitHub.
- For Android, the release is available via Google Play.
- For iOS, the release is available via the App Store.
- If you use
snap, you can install the app from the snapcraft.io.
- If you use
flatpak, you can install the app from Flathub.
- For Arch based Linux distributions, you can install the app from AUR.
There are currently no known issues. If you encounter any issues, please file a bug report in the bug tracker.