Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "MDT/OCL 3.0.0 API Changes"
Line 6: | Line 6: | ||
{| border="1" | {| border="1" | ||
− | !Summary of probable OCL 2.2 change!! Related spec. sections !! Related bug/s !! Adopting Milestone | + | !Summary of probable OCL 2.2 change!! Related spec. sections !! Related bug/s !! Owner !! Adopting Milestone |
|- | |- | ||
− | | Introduce static keyword and operations || 7.4.4, 7.4.9, 12.12.6 ||[https://bugs.eclipse.org/285633 285633] || In HEAD for M2 | + | | Introduce static keyword and operations || 7.4.4, 7.4.9, 12.12.6 ||[https://bugs.eclipse.org/285633 285633] || EDW || In HEAD for M2 |
|- | |- | ||
− | | OrderedSet is not a subtype of Set. || 7.4.5, 11.6.3 || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=246962 246962] || -- | + | | OrderedSet is not a subtype of Set. || 7.4.5, 11.6.3 || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=246962 246962] || || -- |
|- | |- | ||
− | | Give message-expression operators precedence || 7.4.7, 9.3.2 || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=288040 288040] || Issue pending | + | | Give message-expression operators precedence || 7.4.7, 9.3.2 || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=288040 288040] || EDW || Issue pending |
|- | |- | ||
− | | Give and/or/xor distinct precedence || 7.4.7, 9.3.2 || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=288040 288040] || Patch ready | + | | Give and/or/xor distinct precedence || 7.4.7, 9.3.2 || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=288040 288040] || EDW || Patch ready |
|- | |- | ||
− | | Remove attr, oper keywords || 7.4.9 || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=184048 184048] || Patch ready | + | | Remove attr, oper keywords || 7.4.9 || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=184048 184048] || EDW || Patch ready |
|- | |- | ||
− | | Add body, init, derive keywords || 7.4.9 || || No change | + | | Add body, init, derive keywords || 7.4.9 || || -- || No change |
|- | |- | ||
− | | Add qualified navigation paths || 7.5.3, 9.3 || [https://bugs.eclipse.org/288575 288575] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=184048 184048] || | + | | Add qualified navigation paths || 7.5.3, 9.3 || [https://bugs.eclipse.org/288575 288575] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=184048 184048] || EDW || Parser Patch Ready |
|- | |- | ||
− | | exists iterator may have multiple iterators || 7.6.4 || [https://bugs.eclipse.org/288573 288573] || No change | + | | exists iterator may have multiple iterators || 7.6.4 || [https://bugs.eclipse.org/288573 288573] || -- || No change |
|- | |- | ||
− | | Special types (ElementType, TypeType) don't exist anymore. Consequently, their instances (OclElement, OclType) do not exist either || 8.2, 13.3, 11.3 || [https://bugs.eclipse.org/190150 190150], [https://bugs.eclipse.org/259031 259031] || -- | + | | Special types (ElementType, TypeType) don't exist anymore. Consequently, their instances (OclElement, OclType) do not exist either || 8.2, 13.3, 11.3 || [https://bugs.eclipse.org/190150 190150], [https://bugs.eclipse.org/259031 259031] || || -- |
|- | |- | ||
− | | Introduce TemplateParameterType || 8.2 || || -- | + | | Introduce TemplateParameterType || 8.2 || || || -- |
|- | |- | ||
− | | Make CollectionType concrete || 8.2 || || No change | + | | Make CollectionType concrete || 8.2 || || -- || No change |
|- | |- | ||
− | | OclAny is the type to which all other types conform (including Collections) || 8.2 || [https://bugs.eclipse.org/189657 189657] [https://bugs.eclipse.org/191819 191819] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=259031 259031] || Issue under discussion | + | | OclAny is the type to which all other types conform (including Collections) || 8.2 || [https://bugs.eclipse.org/189657 189657] [https://bugs.eclipse.org/191819 191819] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=259031 259031] || || Issue under discussion |
|- | |- | ||
− | | Introduce FeatureCallexp.isPre (rename markedPre) || 8.3.1, 9.3 || || -- | + | | Introduce FeatureCallexp.isPre (rename markedPre) || 8.3.1, 9.3 || || || -- |
|- | |- | ||
− | | Add CollectionKind::Collection || 8.3.5 || || No change | + | | Add CollectionKind::Collection || 8.3.5 || || -- || No change |
|- | |- | ||
− | | Renames for *CallExpCS || 9.3 || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=184048 184048] || -- | + | | Renames for *CallExpCS || 9.3 || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=184048 184048] || || -- |
|- | |- | ||
− | | OclInvalid and invalid confusion (OclInvalid must be a type, invalid must be a literal) || 11.2.4 || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=281849 281849] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=282882 282882] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=288526 288526] || In HEAD for M2 | + | | OclInvalid and invalid confusion (OclInvalid must be a type, invalid must be a literal) || 11.2.4 || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=281849 281849] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=282882 282882] [https://bugs.eclipse.org/bugs/show_bug.cgi?id=288526 288526] || EDW || In HEAD for M2 |
|- | |- | ||
− | | OclVoid doesn't conform to OclInvalid || 11.2.3 || || Issue under discussion | + | | OclVoid doesn't conform to OclInvalid || 11.2.3 || || || Issue under discussion |
|- | |- | ||
− | | OclInvalid doesn't conform to OclVoid || 11.2.4 || || Issue under discussion | + | | OclInvalid doesn't conform to OclVoid || 11.2.4 || || || Issue under discussion |
|- | |- | ||
− | | EMOF Reflection is not merged || 13.2 || || -- | + | | EMOF Reflection is not merged || 13.2 || || || -- |
|} | |} | ||
Line 53: | Line 53: | ||
{| border="1" | {| border="1" | ||
− | !Summary of change !! Related bug/s !! Adopting Milestone | + | !Summary of change !! Related bug/s !! Owner !! Adopting Milestone |
|- | |- | ||
− | | Add TemplateParameterType || || -- | + | | Add TemplateParameterType || || || -- |
|- | |- | ||
− | | Rename FeatureCallExp.withAtPre as isPre || || -- | + | | Rename FeatureCallExp.withAtPre as isPre || || || -- |
|- | |- | ||
− | | Eliminate EMOF reflection || || -- | + | | Eliminate EMOF reflection || || || -- |
|- | |- | ||
− | | Introduce OCL_2_0.uml more closely matching OCL 2.0 (excluding TemplateParameterType) || || -- | + | | Introduce OCL_2_0.uml more closely matching OCL 2.0 (excluding TemplateParameterType) || || || -- |
|- | |- | ||
− | | Introduce OCL_2_2.uml more closely matching OCL 2.2 (excluding ElementType, TypeType) || || -- | + | | Introduce OCL_2_2.uml more closely matching OCL 2.2 (excluding ElementType, TypeType) || || || -- |
|} | |} | ||
Line 72: | Line 72: | ||
{| border="1" | {| border="1" | ||
− | !Summary of change !! Related bug/s !! Adopting Milestone | + | !Summary of change !! Related bug/s !! Owner !! Adopting Milestone |
|- | |- | ||
− | | Migrate OCL grammars and parsing infrastructure to exploit LPG v2 || [https://bugs.eclipse.org/242153 242153] || In progress (Branch) | + | | Migrate OCL grammars and parsing infrastructure to exploit LPG v2 || [https://bugs.eclipse.org/242153 242153] || ASBH || In progress (Branch) |
|- | |- | ||
− | | Eliminate PrsStream, LexStream inheritance || [https://bugs.eclipse.org/242153 242153] || In progress (Branch) | + | | Eliminate PrsStream, LexStream inheritance || [https://bugs.eclipse.org/242153 242153] || ASBH || In progress (Branch) |
|- | |- | ||
− | | Replace IsMarkedAtPreCS.isPre true/false usage by not-null/null IsMarkedAtPreCS || [https://bugs.eclipse.org/287993 287993] || In HEAD for M2 | + | | Replace IsMarkedAtPreCS.isPre true/false usage by not-null/null IsMarkedAtPreCS || [https://bugs.eclipse.org/287993 287993] || EDW || In HEAD for M2 |
|- | |- | ||
− | | Eliminate redundant ClassifierContextDeclCS.invOrDefCS daisy chain, retaining just constraints array || [https://bugs.eclipse.org/287993 287993] || In HEAD for M2 | + | | Eliminate redundant ClassifierContextDeclCS.invOrDefCS daisy chain, retaining just constraints array || [https://bugs.eclipse.org/287993 287993] || EDW || In HEAD for M2 |
|- | |- | ||
− | | Replace PropertyContextCS.initOrDerCS daisy chain by constraints array || [https://bugs.eclipse.org/287993 287993] || In HEAD for M2 | + | | Replace PropertyContextCS.initOrDerCS daisy chain by constraints array || [https://bugs.eclipse.org/287993 287993] || EDW || In HEAD for M2 |
|- | |- | ||
− | | Change PathNameCS.sequenceOfNames to simpleNames retaining CST context || [https://bugs.eclipse.org/287993 287993] || In HEAD for M2 | + | | Change PathNameCS.sequenceOfNames to simpleNames retaining CST context || [https://bugs.eclipse.org/287993 287993] || EDW || In HEAD for M2 |
|- | |- | ||
− | | Change StateExpCS.sequenceOfNames to simpleNames retaining CST context || [https://bugs.eclipse.org/287993 287993] || In HEAD for M2 | + | | Change StateExpCS.sequenceOfNames to simpleNames retaining CST context || [https://bugs.eclipse.org/287993 287993] || EDW || In HEAD for M2 |
|- | |- | ||
− | | Eliminate CSTToken.startOffset/endOffset || || -- | + | | Eliminate CSTToken.startOffset/endOffset || || || -- |
|- | |- | ||
− | | Use PathNameCS rather than List<String> in numerous internal calls || || -- | + | | Use PathNameCS rather than List<String> in numerous internal calls || || || -- |
|- | |- | ||
− | | Use the tryLookupXXX methods rather than lookupXXX methods wherever possible || || -- | + | | Use the tryLookupXXX methods rather than lookupXXX methods wherever possible || || || -- |
|- | |- | ||
− | | Introduce File/Root/Child environments from QVT Declarative || || -- | + | | Introduce File/Root/Child environments from QVT Declarative || || || -- |
|- | |- | ||
− | | Use a Child rather than dynamic environment for LetExp and IteratorExp parsing || || -- | + | | Use a Child rather than dynamic environment for LetExp and IteratorExp parsing || || || -- |
|- | |- | ||
− | | Rename closure as transitiveClosure valid for any Collection || || -- | + | | Rename closure as transitiveClosure valid for any Collection || || || -- |
|} | |} | ||
Line 107: | Line 107: | ||
{| border="1" | {| border="1" | ||
− | !Summary of change !! Related bug/s !! Adopting Milestone | + | !Summary of change !! Related bug/s !! Owner !! Adopting Milestone |
|- | |- | ||
− | | OrderedSet is not a subtype of Set. Set operations defined for OrderedSet (union, intersection, including, etc.) must be dropped || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=246962 246962] || -- | + | | OrderedSet is not a subtype of Set. Set operations defined for OrderedSet (union, intersection, including, etc.) must be dropped || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=246962 246962] || || -- |
|- | |- | ||
− | | Implement oclType() || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=259031 259031] || Patch Pending | + | | Implement oclType() || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=259031 259031] || EDW || Patch Pending |
|- | |- | ||
− | | Implement toString() || || -- | + | | Implement toString() || || || -- |
|} | |} | ||
Line 122: | Line 122: | ||
{| border="1" | {| border="1" | ||
− | !Bug fix !! Related bug/s !! Adopting Milestone | + | !Bug fix !! Related bug/s !! Owner !! Adopting Milestone |
|- | |- | ||
− | | Give if atomic precedence || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=184048 184048] || Patch ready | + | | Give if atomic precedence || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=184048 184048] || EDW || Patch ready |
+ | |} | ||
+ | |||
+ | |||
+ | === Enhancements (endorsed) === | ||
+ | |||
+ | The following enhancements are planned for MDT-OCL 3.0.0. | ||
+ | |||
+ | {| border="1" | ||
+ | !Enhancement !! Dependency !! Related bug/s !! Owner !! Adopting Milestone | ||
+ | |- | ||
+ | | Support Ecore constraint annotations || EMF 2.6M1 || [https://bugs.eclipse.org/bugs/show_bug.cgi?id=255786 255786] || KH || | ||
+ | |} | ||
+ | |||
+ | |||
+ | === Enhancements (unendorsed) === | ||
+ | |||
+ | The following enhancements for MDT-OCL 3.0.0 have not yet been endorsed by the OCL committer team. You are welcome to add your own contributions here provided you have raised the contribution via a Bugzilla. | ||
+ | |||
+ | {| border="1" | ||
+ | !Enhancement !! Dependency !! Related bug/s !! Contributor | ||
+ | |- | ||
+ | | || || || | ||
|} | |} |
Revision as of 02:33, 18 September 2009
Contents
OCL 2.1/2.2 changes
The OCL 2.2 language changes under discussion for MDT-OCL 3.0.0.
Some changes are marked as no change since MDT-OCL 1.x anticipated them.
Summary of probable OCL 2.2 change | Related spec. sections | Related bug/s | Owner | Adopting Milestone |
---|---|---|---|---|
Introduce static keyword and operations | 7.4.4, 7.4.9, 12.12.6 | 285633 | EDW | In HEAD for M2 |
OrderedSet is not a subtype of Set. | 7.4.5, 11.6.3 | 246962 | -- | |
Give message-expression operators precedence | 7.4.7, 9.3.2 | 288040 | EDW | Issue pending |
Give and/or/xor distinct precedence | 7.4.7, 9.3.2 | 288040 | EDW | Patch ready |
Remove attr, oper keywords | 7.4.9 | 184048 | EDW | Patch ready |
Add body, init, derive keywords | 7.4.9 | -- | No change | |
Add qualified navigation paths | 7.5.3, 9.3 | 288575 184048 | EDW | Parser Patch Ready |
exists iterator may have multiple iterators | 7.6.4 | 288573 | -- | No change |
Special types (ElementType, TypeType) don't exist anymore. Consequently, their instances (OclElement, OclType) do not exist either | 8.2, 13.3, 11.3 | 190150, 259031 | -- | |
Introduce TemplateParameterType | 8.2 | -- | ||
Make CollectionType concrete | 8.2 | -- | No change | |
OclAny is the type to which all other types conform (including Collections) | 8.2 | 189657 191819 259031 | Issue under discussion | |
Introduce FeatureCallexp.isPre (rename markedPre) | 8.3.1, 9.3 | -- | ||
Add CollectionKind::Collection | 8.3.5 | -- | No change | |
Renames for *CallExpCS | 9.3 | 184048 | -- | |
OclInvalid and invalid confusion (OclInvalid must be a type, invalid must be a literal) | 11.2.4 | 281849 282882 288526 | EDW | In HEAD for M2 |
OclVoid doesn't conform to OclInvalid | 11.2.3 | Issue under discussion | ||
OclInvalid doesn't conform to OclVoid | 11.2.4 | Issue under discussion | ||
EMOF Reflection is not merged | 13.2 | -- |
OCL.uml meta-model changes
The OCL.uml meta-model changes under discussion for MDT-OCL 3.0.0.
Summary of change | Related bug/s | Owner | Adopting Milestone |
---|---|---|---|
Add TemplateParameterType | -- | ||
Rename FeatureCallExp.withAtPre as isPre | -- | ||
Eliminate EMOF reflection | -- | ||
Introduce OCL_2_0.uml more closely matching OCL 2.0 (excluding TemplateParameterType) | -- | ||
Introduce OCL_2_2.uml more closely matching OCL 2.2 (excluding ElementType, TypeType) | -- |
Parsing and Environment API changes
The parsing and environment API changes under discussion for MDT-OCL 3.0.0
Summary of change | Related bug/s | Owner | Adopting Milestone |
---|---|---|---|
Migrate OCL grammars and parsing infrastructure to exploit LPG v2 | 242153 | ASBH | In progress (Branch) |
Eliminate PrsStream, LexStream inheritance | 242153 | ASBH | In progress (Branch) |
Replace IsMarkedAtPreCS.isPre true/false usage by not-null/null IsMarkedAtPreCS | 287993 | EDW | In HEAD for M2 |
Eliminate redundant ClassifierContextDeclCS.invOrDefCS daisy chain, retaining just constraints array | 287993 | EDW | In HEAD for M2 |
Replace PropertyContextCS.initOrDerCS daisy chain by constraints array | 287993 | EDW | In HEAD for M2 |
Change PathNameCS.sequenceOfNames to simpleNames retaining CST context | 287993 | EDW | In HEAD for M2 |
Change StateExpCS.sequenceOfNames to simpleNames retaining CST context | 287993 | EDW | In HEAD for M2 |
Eliminate CSTToken.startOffset/endOffset | -- | ||
Use PathNameCS rather than List<String> in numerous internal calls | -- | ||
Use the tryLookupXXX methods rather than lookupXXX methods wherever possible | -- | ||
Introduce File/Root/Child environments from QVT Declarative | -- | ||
Use a Child rather than dynamic environment for LetExp and IteratorExp parsing | -- | ||
Rename closure as transitiveClosure valid for any Collection | -- |
Standard library API changes
The standard library API changes under discussion for MDT-OCL 3.0.0
Summary of change | Related bug/s | Owner | Adopting Milestone |
---|---|---|---|
OrderedSet is not a subtype of Set. Set operations defined for OrderedSet (union, intersection, including, etc.) must be dropped | 246962 | -- | |
Implement oclType() | 259031 | EDW | Patch Pending |
Implement toString() | -- |
Bug fix changes
The following MDT-OCL 3.0.0 bug fixes obviously change behaviour slightly.
Bug fix | Related bug/s | Owner | Adopting Milestone |
---|---|---|---|
Give if atomic precedence | 184048 | EDW | Patch ready |
Enhancements (endorsed)
The following enhancements are planned for MDT-OCL 3.0.0.
Enhancement | Dependency | Related bug/s | Owner | Adopting Milestone |
---|---|---|---|---|
Support Ecore constraint annotations | EMF 2.6M1 | 255786 | KH |
Enhancements (unendorsed)
The following enhancements for MDT-OCL 3.0.0 have not yet been endorsed by the OCL committer team. You are welcome to add your own contributions here provided you have raised the contribution via a Bugzilla.
Enhancement | Dependency | Related bug/s | Contributor |
---|---|---|---|