Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1362 from eclipse/website-master
Website master
- Loading branch information
Showing
5 changed files
with
179 additions
and
6 deletions.
There are no files selected for viewing
37 changes: 37 additions & 0 deletions
37
xtend-website/_posts/releasenotes/2018-12-04-version-2-16-0.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
--- | ||
layout: post | ||
title: Xtend 2.16.0 Release Notes | ||
date: 2018-12-04 | ||
categories: releasenotes | ||
published: true | ||
--- | ||
|
||
This release focuses on stability, performance and the compatibility with Eclipse 2018-12. | ||
|
||
## Hover and Hyperlink on links in Javadoc comments | ||
|
||
Inside Xtend source files, hovering over a link inside a Javadoc will now display the Javadoc comments in a hover pop-up. F3 is also supported on these links. | ||
|
||
![Hover Example]({{site.baseurl}}/images/releasenotes/2_16_hover_javadoc_link.png) | ||
|
||
## Triple-equals quickfix is now a multifix | ||
|
||
Warnings of the type `The operator '!=' should be replaced by '!==' when null is one of the arguments.` could only be fixed one by one. The quickfix has been extended to allow fixing multiple issues at once. | ||
|
||
## Deprecation of GWT | ||
|
||
We will no longer maintain the GWT versions of Xbase and Xtend Lib. The corresponding jars will be no longer published with future versions of Xtext (likely from 2.17 on). | ||
|
||
## Outlook for 2.17 | ||
|
||
Java 11 Support, a Maven BOM and a new MWE version are planned for 2.17. | ||
|
||
## Fixed Issues | ||
|
||
As in every release cycle we were eagerly hunting down bugs, and reviewed and integrated plenty of contributions. More than 90 issues and almost 300 pull requests have made it into this release. For further details please refer to the following lists: | ||
|
||
* [Fixed GitHub issues](https://github.com/search?utf8=%E2%9C%93&q=is%3Aissue+milestone%3ARelease_2.16+is%3Aclosed+repo%3Aeclipse%2Fxtext+repo%3Aeclipse%2Fxtext-core+repo%3Aeclipse%2Fxtext-lib+repo%3Aeclipse%2Fxtext-extras+repo%3Aeclipse%2Fxtext-eclipse+repo%3Aeclipse%2Fxtext-idea+repo%3Aeclipse%2Fxtext-web+repo%3Aeclipse%2Fxtext-maven+repo%3Aeclipse%2Fxtext-xtend&type=Issues&ref=searchresults) | ||
|
||
* [Closed Pull Requests](https://github.com/search?utf8=%E2%9C%93&q=is%3Apr+milestone%3ARelease_2.16+is%3Aclosed+repo%3Aeclipse%2Fxtext+repo%3Aeclipse%2Fxtext-core+repo%3Aeclipse%2Fxtext-lib+repo%3Aeclipse%2Fxtext-extras+repo%3Aeclipse%2Fxtext-eclipse+repo%3Aeclipse%2Fxtext-idea+repo%3Aeclipse%2Fxtext-web+repo%3Aeclipse%2Fxtext-maven+repo%3Aeclipse%2Fxtext-xtend&type=Issues&ref=searchresults) | ||
|
||
* [Fixed Eclipse Bugzilla tickets](https://bugs.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&classification=Modeling&classification=Tools&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cshort_desc%2Cchangeddate%2Ckeywords&f0=OP&f1=OP&f3=CP&f4=CP&known_name=Xtext%202.16&list_id=16618269&product=TMF&product=Xtend&query_based_on=Xtext%202.16&query_format=advanced&status_whiteboard=v2.16&status_whiteboard_type=allwordssubstr) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
136 changes: 136 additions & 0 deletions
136
xtext-website/_posts/releasenotes/2018-12-04-version-2-16-0.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,136 @@ | ||
--- | ||
layout: post | ||
title: Xtext 2.16.0 Release Notes | ||
date: 2018-12-04 | ||
categories: releasenotes | ||
published: true | ||
--- | ||
|
||
This release focuses on stability, performance and the compatibility with Eclipse 2018-12. | ||
|
||
## Java 11 preparation | ||
|
||
Java 11 has been released in September 2018 and [Xtext is in preparation](https://github.com/eclipse/xtext/issues/1182) for full support. Xtext relies on plenty of different components, each of which need to work with Java 11. So far, not all of these are available themselves. Other parties have released new versions that could not be integrated yet. As a result we had to reschedule Java 11 support for Xtext 2.17. However, some preparational work has already been included into Xtext 2.16: | ||
|
||
* ASM 7: The ASM bytecode analysis and manipulation framework has been upgraded to the latest version 7.0. | ||
* Tycho 1.3: Tycho 1.3 is built against latest JDT, which is required to use Java 11. All projects and wizards have been upgraded to Tycho 1.3. | ||
* Gradle: Xtext 2.16 builds against and uses Gradle 4.10.2 now. | ||
|
||
## Testing | ||
|
||
### Quickfix testing API | ||
|
||
A new base class [`AbstractQuickfixTest`](https://github.com/eclipse/xtext-eclipse/blob/master/org.eclipse.xtext.ui.testing/src/org/eclipse/xtext/ui/testing/AbstractQuickfixTest.xtend) allows the definition of test cases for quickfixes. Quickfixes can be tested by using the method | ||
|
||
```java | ||
public void testQuickfixesOn(CharSequence model, String issueCode, Quickfix... quickfixes) | ||
``` | ||
|
||
This method takes the original DSL text as its first argument. The second argument is the issue code of the problem that can be fixed by the quickfixes under test. Finally the third argument is an array of `Quickfix` testing instances. A testable Quickfix defines a label, a description and the expected resulting DSL text. | ||
|
||
```xtend | ||
@Data | ||
protected static class Quickfix { | ||
String label | ||
String description | ||
String result | ||
} | ||
``` | ||
|
||
The Xtext example projects Domainmodel, Statemachine and Home Automation do include exemplary tests to demonstrate its usage. The Domainmodel example's quickfix test looks like this: | ||
|
||
```xtend | ||
class QuickfixTest extends AbstractQuickfixTest { | ||
@Before | ||
def void setup() { | ||
} | ||
@Test | ||
def fix_invalid_entity_name() { | ||
''' | ||
entity blog { | ||
} | ||
'''.testQuickfixesOn(INVALID_TYPE_NAME, new Quickfix("Capitalize name", "Capitalize name of 'blog'", ''' | ||
entity Blog { | ||
} | ||
''') | ||
) | ||
} | ||
.. | ||
}} | ||
``` | ||
|
||
## New Project Wizard | ||
|
||
* The New Xtext Project wizard selects JUnit 5 as default now. | ||
* _Maven_ build support: the `maven-clean-plugin` configuration in the parent `pom.xml` has been fixed. | ||
* _Gradle_ build support: Upgrade to Gradle wrapper 4.10.2. | ||
|
||
## Xbase Library | ||
|
||
The Xbase library supports now accessors for two-dimensional arrays. | ||
|
||
## Parallel Project Build Support | ||
|
||
With Eclipse 4.8 (Photon) the Eclipse Platform is supporting parallel build of projects in the workspace. Enabling this feature requires that all configured builders of a project are defining a fine grained scheduling rule. For the XtextBuilder the scheduling rule is configurable by preference now. | ||
|
||
The preference is not configurable through preference pages. To enable it, set the `org.eclipse.xtext.builder/schedulingrule` preference option programmatically or by providing a preference file. The supported values are: | ||
|
||
* `WORKSPACE`: Workspace root scheduling. This is the default value. | ||
* `ALL_XTEXT_PROJECTS`: Lock all projects with Xtext nature configured. Allows projects of other natures to be built in parallel. | ||
* `PROJECT`: Locks the currently built project. | ||
* `NULL`: No locking | ||
|
||
This feature is _experimental_ for now. | ||
|
||
## Language Server Support | ||
|
||
### Upgrade to Eclipse LSP4J 0.6.0 | ||
|
||
Xtext 2.16 integrates Eclipse LSP4J version 0.6.0. | ||
|
||
### Hierarchical Document Symbols | ||
|
||
Xtext now supports the _hierarchical document symbols_ as a response to the `textDocument/documentSymbol` request (introduced in [LSP 3.10.0](https://microsoft.github.io/language-server-protocol/specification#version_3_10_0)). For this support a new interface [`IDocumentSymbolService`](https://github.com/eclipse/xtext-core/blob/9e46f302bb7bfd68b61f1a05f1c9bb5d830b7fa1/org.eclipse.xtext.ide/src/org/eclipse/xtext/ide/server/symbol/IDocumentSymbolService.xtend) has been added to the bundle `org.eclipse.xtext.ide`. By default it binds to a no-op implementation. Hierarchical symbols can be activated by binding the interface to the [`HierarchicalDocumentSymbolService`](https://github.com/eclipse/xtext-core/blob/9e46f302bb7bfd68b61f1a05f1c9bb5d830b7fa1/org.eclipse.xtext.ide/src/org/eclipse/xtext/ide/server/symbol/HierarchicalDocumentSymbolService.xtend) implementation. | ||
|
||
### Configurable Server Exit Behavior | ||
|
||
The default behavior on receiving the `exit` command of Xtext language servers was to call `System.exit` and thus terminate the JVM. While this is desirable when a host process is shut down (like termination of the editing tool), it harms [scenarios](https://github.com/eclipse/xtext-core/issues/885) where the language server and client run on the same JVM. | ||
|
||
To support both use cases, the `exit` command is now delegated to the `ILanguageServerShutdownAndExitHandler`. Its default implementation `ILanguageServerShutdownAndExitHandler.DefaultImpl` preserves the existing behavior and invokes `System.exit()`. For embedded scenarios, the interface can be bound to `ILanguageServerShutdownAndExitHandler.NullImpl` instead, which ignores the exit request and keeps the JVM alive. | ||
|
||
## Minimal Target Platform | ||
|
||
The Eclipse Platform has changed the release cadence after its Photon release (4.9) to quartely major releases. This increases the speed of changes to the platform that Xtext relies on. Since Xtext integrates deeply with the platform, its becoming harder to to support a wide range of releases. Therefore we decided to cut off the supported Eclipse releases and require at least Eclipse 4.7.3a (Oxygen.3a, latest Oxygen release). | ||
|
||
This has now been enforced by constraining the lower bound of all bundles of the Eclipse Platform. As a consequence, Xtext 2.16 can no longer be installed on an older Eclipse release. | ||
|
||
## Deprecation of GWT | ||
|
||
We will no longer maintain the GWT versions of Xbase and Xtend Lib. The corresponding jars will be no longer published with future versions of Xtext (likely from 2.17 on). | ||
|
||
## Outlook for 2.17 | ||
|
||
Java 11 Support, a Maven BOM and a new MWE version are planned for 2.17 | ||
|
||
## A word on Tycho 1.3 | ||
|
||
Tycho 1.3 will be released a few days after the Xtext. So if you are keen on using it you can add `1.3.0-SNAPSHOT` as tycho version to your pom file and the tycho snapshot repository as well. | ||
|
||
```xml | ||
<pluginRepository> | ||
<id>tycho-snapshots</id> | ||
<url>https://repo.eclipse.org/content/repositories/tycho-snapshots/</url> | ||
</pluginRepository> | ||
``` | ||
|
||
## Fixed Issues | ||
|
||
As in every release cycle we were eagerly hunting down bugs, and reviewed and integrated plenty of contributions. Almost 100 issues and 300 pull requests have made it into this release. For further details please refer to the following lists: | ||
|
||
* [Fixed GitHub issues](https://github.com/search?utf8=%E2%9C%93&q=is%3Aissue+milestone%3ARelease_2.16+is%3Aclosed+repo%3Aeclipse%2Fxtext+repo%3Aeclipse%2Fxtext-core+repo%3Aeclipse%2Fxtext-lib+repo%3Aeclipse%2Fxtext-extras+repo%3Aeclipse%2Fxtext-eclipse+repo%3Aeclipse%2Fxtext-idea+repo%3Aeclipse%2Fxtext-web+repo%3Aeclipse%2Fxtext-maven+repo%3Aeclipse%2Fxtext-xtend&type=Issues&ref=searchresults) | ||
|
||
* [Closed Pull Requests](https://github.com/search?utf8=%E2%9C%93&q=is%3Apr+milestone%3ARelease_2.16+is%3Aclosed+repo%3Aeclipse%2Fxtext+repo%3Aeclipse%2Fxtext-core+repo%3Aeclipse%2Fxtext-lib+repo%3Aeclipse%2Fxtext-extras+repo%3Aeclipse%2Fxtext-eclipse+repo%3Aeclipse%2Fxtext-idea+repo%3Aeclipse%2Fxtext-web+repo%3Aeclipse%2Fxtext-maven+repo%3Aeclipse%2Fxtext-xtend&type=Issues&ref=searchresults) | ||
|
||
* [Fixed Eclipse Bugzilla tickets](https://bugs.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&classification=Modeling&classification=Tools&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cshort_desc%2Cchangeddate%2Ckeywords&f0=OP&f1=OP&f3=CP&f4=CP&known_name=Xtext%202.16&list_id=16618269&product=TMF&product=Xtend&query_based_on=Xtext%202.16&query_format=advanced&status_whiteboard=v2.16&status_whiteboard_type=allwordssubstr) |