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/2024-03"

(Milestone 3)
(Release Overview)
 
(5 intermediate revisions by the same user not shown)
Line 2: Line 2:
  
 
==Release Overview==
 
==Release Overview==
This minor release fixes a few minor bugs and one howler through introduction of a local validation registry.
+
This minor release fixes a few minor bugs particular in regard to the new-in-2023-12 declarative text formatter/serializer.
  
Behind the scenes development of a new model-to-text formatter/serializer allows migration to the 'new' Xtext generator framework while retaining compatibility for Eclipse platforms from Oxygen onwards.
+
A bad regrssion making the Validity View unusable in 2023-12 is fixed.
  
 
===Eclipse versions===
 
===Eclipse versions===
  
The prevailing Eclipse OCL release candidate is auto-tested every week on Oxygen, Photon, 2018-09, 2018-12, 2019-03, 2019-06, 2019-09, 2019-12, 2020-03, 2020-06, 2020-09, 2020-12, 2021-03, 2021-06 and 2021-09 platforms using Jenkins on Linux and the prevailing Java/project versions for the release.  
+
The prevailing Eclipse OCL release candidate is auto-tested every week on Oxygen, Photon, 2018-09, 2018-12, 2019-03, 2019-06, 2019-09, 2019-12, 2020-03, 2020-06, 2020-09, 2020-12, 2021-03, 2021-06, 2021-09, 2021-12, 2022-03, 2022-06, 2022-09, 2022-12, 2023-03, 2023-06, 2023-09 and 2023-12 platforms using Jenkins on Linux
 +
and the prevailing Java/project versions for the release.  
  
2023-12 release should be installable on Mars and Neon platforms provided Xtext 2.9 or greater is also installed.
+
2024-03 release should be installable on Mars and Neon platforms provided Xtext 2.9 or greater is also installed.
  
The 2023-12 sources may only be buildable on 2023-12.
+
The 2024-03 sources may only be buildable on 2024-03.
  
 
===Java versions===
 
===Java versions===
Line 24: Line 25:
 
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.
 
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==
+
==Milestone 3==
  
===local validation registry===
+
* [https://bugs.eclipse.org/563046 563046] Improve comment and expression formatting
 +
* [https://bugs.eclipse.org/582722 582722] Validation View shows content again
 +
* [https://bugs.eclipse.org/582877 582877] Validation View hover text preserves source expression formatting
 +
* [https://bugs.eclipse.org/582948 582948] HTML Validation log preserves source expression formatting
  
Since EMF provides only a global/static validation registry, previous OCL releases used it for local/dynamic requirements and attempted with limited success to mitigate leakage/concurrency problems.
+
==RC 1==
 
+
The new OCL release introduces a local/dynamic validation registry as an adapter on a ResourceSet; the global validation registry is no longer abused. Problems solved, provided Java code is migrated to use the new ValidationRegistryAdapter.
+
 
+
Initialization must use the appropriate ResourceSet containing the model elements to be validated. Use
+
 
+
  ValidationRegistryAdapter.getAdapter(myResourceSet).put(myEPackage, myEValidator);
+
 
+
rather than
+
 
+
  EValidator.Registry.INSTANCE.put(myEPackage, myEValidator);
+
 
+
Validation should use the local validation registry. Use
+
 
+
  Diagnostician diagnostician = new Diagnostician(ValidationRegistryAdapter.getAdapter(myResourceSet));
+
 
+
rather than
+
 
+
  Diagnostician diagnostician = Diagnostician.INSTANCE;
+
 
+
The new ValidationContext can make the usage a bit more readable:
+
 
+
  ValidationRegistryAdapter validationRegistry = ValidationRegistryAdapter.getAdapter(myEObject);
+
  ValidationContext validationContext = new ValidationContext(validationRegistry);
+
  Diagnostician diagnostician = validationContext.getDiagnostician();
+
  Diagnostic diagnostics = diagnostician.validate(myEObject, validationContext);
+
 
+
Failure to use the local validation registry may lose validations.
+
 
+
===Pivot===
+
 
+
* [https://bugs.eclipse.org/582494 582494] Use local validation registry
+
 
+
===Pivot-UML===
+
 
+
===Releng===
+
 
+
Migrate to Java 17 when using the platform but continue to test Java 5 and Java 8 compatibility on legacy platforms.
+
 
+
Accommodate package migrations such as javax.annotation.
+
 
+
Accommodate restructuring/reduced Orbit content.
+
 
+
==Milestone 2==
+
 
+
===Releng===
+
 
+
Avoid redistributing a duplicate LPG now that Orbit provides a SimRel distribution.
+
 
+
==Milestone 3==
+
  
* [https://bugs.eclipse.org/563046 563046] IMprove comment and expression formatting
+
* [https://bugs.eclipse.org/582958 582958] Persisted AS resources no longer confuse Sirius
  
==RC1==
+
==RC 2==
  
==RC2==
+
* [https://bugs.eclipse.org/582988 582988] Use JustJ to format OCL build pages

Latest revision as of 17:09, 9 March 2024

Eclipse OCL New and Noteworthy items for the 2024-03 (6.20.0) release.

Release Overview

This minor release fixes a few minor bugs particular in regard to the new-in-2023-12 declarative text formatter/serializer.

A bad regrssion making the Validity View unusable in 2023-12 is fixed.

Eclipse versions

The prevailing Eclipse OCL release candidate is auto-tested every week on Oxygen, Photon, 2018-09, 2018-12, 2019-03, 2019-06, 2019-09, 2019-12, 2020-03, 2020-06, 2020-09, 2020-12, 2021-03, 2021-06, 2021-09, 2021-12, 2022-03, 2022-06, 2022-09, 2022-12, 2023-03, 2023-06, 2023-09 and 2023-12 platforms using Jenkins on Linux and the prevailing Java/project versions for the release.

2024-03 release should be installable on Mars and Neon platforms provided Xtext 2.9 or greater is also installed.

The 2024-03 sources may only be buildable on 2024-03.

Java versions

Java 11 on Windows was used to develop and test the milestones of this release. Following the Eclipse platform migration to a Java 17 minimum, development now uses Java 17, although standalone tests continue to use Java 8.

Java 17 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 3

  • 563046 Improve comment and expression formatting
  • 582722 Validation View shows content again
  • 582877 Validation View hover text preserves source expression formatting
  • 582948 HTML Validation log preserves source expression formatting

RC 1

  • 582958 Persisted AS resources no longer confuse Sirius

RC 2

  • 582988 Use JustJ to format OCL build pages

Back to the top