Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "OCL/New and Noteworthy/2019-03"

(Milestone 1)
(CG)
Line 46: Line 46:
  
 
===CG===
 
===CG===
 +
* [https://bugs.eclipse.org/543143 543143] Many warnings fixed in generated model code
 
* [https://bugs.eclipse.org/543334 543334] Pivot expression annotations no longer stripped from XXXPackageImpl
 
* [https://bugs.eclipse.org/543334 543334] Pivot expression annotations no longer stripped from XXXPackageImpl
  

Revision as of 14:25, 14 January 2019

Eclipse OCL New and Noteworthy items for the 2019-03 (6.7.0) release.

Release Overview

This minor release fixes a few bugs and provides enhanced extensibility for OCL-based applications such as QVT.

The significant changes for the Pivot-based OCL are:

  • Addition of persistence of the Map type as an Ecore EMap

This change fixes a bug whereby EMap declarations such as EAnnotation.details were treated as an OrderedSet(EStringToStringMapEntry) rather than as Map(String,String). Code using the erroneous interpretaion such as

eAnnotation.details->select(e | e.key = 'wanted' and e.value <> null)

must be recoded as

eAnnotation.details->select(k <- v | k = 'wanted' and v <> null)

Eclipse versions

The 2019-03 release is installable on Mars, Neon, Oxygen and Photon platforms provided Xtext 2.9 or greater is also installed.

The 2019-03 sources are buildable on Photon or 2018-09 or 2018-12 or 2019-03.

Java versions

Java 8 on Windows was used to develop and test the milestones of this release.

Java 11 on Windows was briefly used to maintain and test the 2019-03 release candidates. It appears to work although Java code generation/compilation is nearly three times slower.

Java 8 on Jenkins, Linux was used to build and test the release candidates.

The Classic Ecore/UML plugins have been tested on Mars, Neon, Oxygen and Photon and on a Java 5 Virtual Machine. Standalone execution requires only the org.eclipse.osgi plugin from Eclipse Kepler or a spoof of org.eclipse.osgi.util.NLS and org.eclipse.osgi.framework.

The Pivot plugins require at least a Java 8 Virtual Machine and at least Xtext 2.9.1. Testing on Oxygen has a couple of test failures. Testing on Mars and Neon has a few editor/console startup failures.

Milestone 1

The fix for ineffective caching may have an undesirable side effect if OCL evaluations occur before and after some significant model change. This may be avoided by invoking PivotUtil.removeAdapter(resourceSet) to remove the stale caches.

Pivot

  • 443003 Ecore EMap idiom supported as an OCL Map / MapValue
  • 543173 A TemplateParameter-typed Property no longer fails to parse
  • 543178 A Java Exception during a validation no longer terminates residual validations
  • 543187 The lowerbound of a TemplateParameter no determines available opposite Properties
  • 543221 allInstances and opposites now cached effectively during a validation and nested evaluations

CG

  • 543143 Many warnings fixed in generated model code
  • 543334 Pivot expression annotations no longer stripped from XXXPackageImpl

Milestone 2

Milestone 3

RC1

RC2

Back to the top