[handly-dev] A milestone build of Handly 0.6
I'm pleased to announce the availability of a milestone build that our early adopters are most welcome to check out and comment on. This build represents an attempt at API freeze towards the upcoming Handly 0.6 release.
Issues targeted by the 0.6 release:
Here's a summary of the milestone main features, some of which have been announced earlier on this list:
* A context API has been introduced (Bug 499220), which made it possible, among other things, to generalize and unify signatures of a number of core overridable methods (Bug 500407).
* A model API has been introduced (Bug 500653). Together with the context API, this enabled, among other things, generalized notification management in working copies (Bug 505777).
* Support for files external to the workspace has been implemented on top of the Eclipse File System (EFS) API (Bug 500893, Bug 502000). In addition, the workspace-related functionality has been extracted from SourceFile to a new subclass, WorkspaceSourceFile (Bug 500676). We now also support non-local file systems, just as the workspace itself does (Bug 506453 and Bug 506717).
* Last but not least, the buffer and working copy related APIs have been revised and streamlined (Bug 505714 and Bug 506332).
Unfortunately, the scope of this work means there are breaking changes that existing model implementations will need to accommodate to. However, I think we are now quite in a good shape regarding the core Handly API. Essentially, this nearly completes the serious API (re-)work started a year ago in the 0.4 release. I'm deeply thankful for the patience and understanding of our early adopters and hope to avoid such drastic changes in the future (that's what it was all about, after all).
I'll come up with a more detailed N&N list and a migration guide before the 0.6 release date (December 7, 2016). In the meantime, please let me know if there are any questions or comments.