Hi everybody.
Just to let people know - as this might also be of interest to other IDEs out there - I've submitted a Gerrit patch with my first draft of an asynchronous Auto-Save implementation I've been working on:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=487653#c16To recap from the last discussion on Auto-Save, I mentioned I was looking specifically at the ability to automatically save editor buffers *immediately* after the editor is modified. This in turn implied that such an auto-save needed to be done asynchronously: the UI-thread could not block on the save, as it currently does. The motivation for this was to be able to use external tools for on-the-fly compilation (in IDEs such as RustDT, Goclipse, DDT, etc). You can see an example demo this on-the-fly external compilation here:
https://twitter.com/brunodomedeiros/status/712327368157876225(note that even though the editor shows the dirty sign, it is actually being saved to the disk automatically)
I'm hoping to get feedback on the patch, so that any issues can be addressed. It is a very complex patch, it changes a lot of core Eclipse code, and potentially breaks things (even if auto-save is not enabled), but there is no way this functionality could be implemented without big changes. I've made sure the current Platform Text tests pass on it, and also added my own tests, but for more than that, I need feedback and other people trying/testing it. The patch will also need some very simple follow-up changes to PlatformUI projects, but I want get started on validating the core implementation.
Cheers