Orion 3.0 M1 – New and Noteworthy

This week the Orion project released its latest milestone, 3.0 M1. Check it out now on OrionHub, or download your own server. Find out below what the Orion development team has been up to.

EclipseCon experience

The Orion team had a great week at EclipseCon 2013, where we gave several talks and a tutorial, and attended several other great talks about what other people are building with Orion. Based on that experience, it is clear the biggest recent feature of Orion is adoption. While we had some significant early adopters, mostly notably by Firefox, there is clearly now a bigger adoption wave going on, with several major companies showing compelling prototypes of Orion-based tools. The variety of projects is also quite interesting, from business process tools to agile developer tools. In the Orion symposium, we saw examples of both the Java and JavaScript Orion servers in action, early exploration of Xtext integration, and even embedding of Orion in a JavaFX application.


Orion Java server scalability

Orion continues to ship both Java and JavaScript variants of the server side infrastructure. We believe both server implementations are important, as each one has quite different characteristics and excels in particular use cases. Having multiple servers also helps to prove that our Orion client architecture is flexible and doesn’t build in any assumptions about server side technologies.

While much of our focus in 2.0 was on the new JavaScript server, in the 3.0 release we are doing extensive work on the Java server. In particular we are investigating what it will take to scale it out to much larger deployments, identifying bottlenecks and weak points in the architecture and implementation. In 3.0 M1 we have been working on a scalability roadmap for the Orion server, and have started work on tackling some of the most pressing scalability problems.

We have also embarked on enabling deployment of the Orion server as a WAR file, and rewriting our Orion server build to use Maven/Tycho. These are all long-running work areas that will carry forward into future milestones and releases.

Standalone compare widget

The Orion compare editor is now available as a separately consumable build for easier deployment into your web pages. This follows the same pattern we introduced with the standalone editor earlier this year. The built compare editor is not yet available directly from the Orion download page, but for now you can see directions and a download on the Orion wiki. There is more information on compare editor embedding in Libing Wang’s blog post.

Editing groups in linked mode

Support has been added to the Orion editor to allow editing groups in linked mode. This is useful for users who need to edit multiple locations at the same time.


You can try this out below by requesting a content assist on for (select for – iterate over array with local var) and then renaming the i variable:

/* Type for and hit control space for content assist*/

Generic template content assist support

Generic template support has been implemented for content assist. Templates support variable editing where each variable is enclosed in ${}.


Shell page custom types

Work has been done to enable plug-ins to contribute custom parameter types to the Shell page, which can then be used in commands. This improves command semantics and enables dynamic computation of content assist proposals (see current example, subject to refinement in 3.0 M2).


Shell page delegated UI

Commands contributed to the Shell page can now provide a delegated UI to interact with the user during execution. In the example below, a login command is prompting the user for credentials with a custom input field.


That’s all for this milestone! Enjoy.

This entry was posted in New & Noteworthy. Bookmark the permalink.