Eclipse Handly 0.5 Release Review

Type: 
Release
State: 
Successful
End Date of the Review Period: 

Reviews run for a minimum of one week. The outcome of the review is decided on this date. This is the last day to make comments or ask questions about this review.

Wednesday, June 1, 2016
Project: 
Release: 

0.5

Description: 

Handly is breaking new ground with the 0.5 release, a true "2.0" version in spirit. This release, scheduled to coincide with Eclipse Neon, introduces an entirely new design that gives the implementor of a Handly-based model complete control over the model API. Among other things, this should make it possible to use Handly for (re-)implementing handle-based models where the model API is a given, just as in the case of a preexisting model API that needs to be preserved for backward compatibility. Many of the core APIs have been revised in this release to make Handly even more flexible and robust.

New and Noteworthy
Migration Guide
Downloads

Architectural Issues: 

There is no declared API in this release as both the API and the API policy may still evolve.

That being said, this release is heavily focused on API quality and takes a significant step further towards finalizing core Handly APIs.

Due to the API rework involved, this release introduces a number of breaking changes and is expected to be more disruptive than previous releases. We'll guide early adopters through necessary migration steps.

Non-Code Aspects: 

We still have a PMI-based website [1], CBI-based build [2], an architectural overview [3], the contributor guide [4], committer FAQ [5], and a number of exemplary implementations including a basic Xtext-based example and a more advanced Java model example (Handly Examples).

All existing artifacts are kept up-to-date, in particular the architectural overview [3] has been thoroughly revised to reflect the new design introduced in this release. The project's web page [1] has been restructured to enhance readability as suggested by Vlad Dumitrescu and has been updated content-wise while preparing for this release.

The Java model example has been enhanced in this release with the addition of the following UI parts:

  • Example Java editor, with Handly-based reconciling and outline,
  • Example Java navigator view (kindly contributed by Ondrej Ilcik, Codasip),

and has been updated to demonstrate flexibility the model implementor now has in defining the model API.

Also available (and updated for the 0.5 release) is a step-by-step guide to getting started with Handly [6] (hosted on GitHub and made available under the EPL v1.0), which has enjoyed some encouraging feedback from early adopters.

Communities: 

All discussion happens on open channels of developer mailing list [1], adopter forum [2] and bugzilla [3]. The project lead's blog posts on topics surrounding Handly [4] are syndicated to Planet Eclipse.

The project's community was promptly informed about the scope of ensuing changes in this release [5]. To provide current adopters with an opportunity to give it an early try, leave feedback or raise concerns, a milestone build (corresponding to an attempt at API freeze towards this release) was made available [6].

The first significant contribution to the project by a non-committer made its way into this release [7]. It was kindly provided by Ondrej Ilcik, head of IDE development at Codasip. Codasip Studio is one of the earliest adopters of Handly, and Ondrej has been so kind as to share a great success story [8] besides being vocal on the developer mailing list and adopter forum. Thanks a lot for all your help, Ondrej!

Vlad Dumitrescu, the project lead of erlide, was actively participating in discussions on the developer mailing list about the entirely new design introduced in this release (his earlier feedback helped inspire the new design), and also contributed great ideas about restructuring the project's web page to make it more readable [9]. Thank you very much, Vlad!