Skip to content

Commit 98c4001

Browse files
committed
Merge branch 'maintenance/mps20213' into bugfix/MessageHandlerSupportIdentifierConfiguration
# Conflicts: # CHANGELOG.md # code/languages/org.iets3.opensource/tests/test.in.expr.os/test.in.expr.os.msd
2 parents e415f74 + 7961b38 commit 98c4001

File tree

138 files changed

+46309
-15072
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

138 files changed

+46309
-15072
lines changed
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
name: PR to merge into the next version
2+
3+
on:
4+
push:
5+
branches:
6+
- 'maintenance/mps*'
7+
8+
jobs:
9+
create-pr:
10+
uses: specificlanguages/cascading-merge/.github/workflows/workflow.yml@v1
11+
with:
12+
exclude_branch_prefix: maintenance/mps3

CHANGELOG.md

Lines changed: 80 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,90 @@ All notable changes to this project are documented in this file.
55
Format of the log is _loosely_ based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
66
The project does _not_ follow Semantic Versioning and the changes are documented in reverse chronological order, grouped by calendar month.
77

8-
##October
8+
## March 2024
99

10-
## Fixed with BREAKING CHANGE
1110
- *MessageDefiniton* uses *extensionPoint/IdentifierConfigurator/* that allows the user to decide to use german umlauts and paragraphs in it.
12-
- This extensionPoint got a new method. **Any old implementation not having this method will cause an error.**
11+
- This extensionPoint got a new method to select which implementation will be chosen.
12+
13+
14+
## February 2024
15+
16+
### Added
17+
18+
- Enumerations can have an order by declaration, by literal or by value ascociated with the literal
19+
20+
## January 2024
21+
22+
### Changed
23+
24+
- The PCollections library was updated to version 4.0.1.
25+
26+
### Fixed
27+
28+
- Uncatched `DateTimeException` during check DateLiteral.
29+
- IntHelper.equals now correctly deals with the combination of 0.0,-0.0,0 and -0.
30+
31+
### Added
32+
33+
- `NumberLiteral` can now be converted to a `BigDecimal` with the method `toBigDecimal`.
34+
- Named based access of result columns of multi decision tables were added. Columns can be referenced by name and coexist with the index based access.
35+
36+
## December 2023
37+
38+
### Fixed
39+
40+
- The `index` expression in collections operations now works correctly in nested expressions in the interpreter and generator.
41+
- Generation of nested short lambda expression now use the correct type for "it" as a variable.
42+
- Collections: The index expression now works with collection types in the generator.
43+
44+
### Added
45+
46+
- The `all` and `any` operation of collections now also support the `index` expression. The concepts `AllWithIndexOp` and `AnyWithIndexOp` are therefore deprecated.
47+
48+
### Changed
49+
50+
- The class `IETS3ExprEvalHelper` was deprecated and a new class `IETS3ExprEvaluator` was introduced that can also influence the creation of the computation trace.
51+
52+
## November 2023
53+
54+
### Added
55+
56+
- The `sort` method of collections now supports more types: all primitive types, the option type, all datetime types, the temporal type and the record type
57+
- Records: The sorting order can be added through the intention `Add a Comparison Order`, otherwise, the records are sorted based on the declaration order of the members
58+
- Option: Sorting removes all `none` values since the underlying data structure of collections doesn't support null values.
59+
60+
### Changed
61+
62+
- The comparison helper in org.iets3.core.expr.simpleTypes.runtime and the equals helper in the test language where merged into a new class EqualsHelper inside the first runtime solution to return the same values.
63+
64+
### Fixed
65+
66+
- String validation: A bug in the number detection logic was fixed
67+
- String validation: A bug in the successor execution logic was fixed
68+
-
69+
## October 2023
70+
71+
### Fixed
72+
73+
- Generation of nested short lambda expression now use the correct type for "it" as a variable.
1374

1475
## September 2023
1576

77+
### Added
78+
79+
- Temporal Literal shows an error if two slices use the same point in time. The check can handle date literals and (nested) references to constants with a date literal. (See [PR 707](https://github.com/IETS3/iets3.opensource/pull/707))
80+
- Temporal Literal shows a warning if the point in time of a slice cannot be unwrapped to a date literal, rendering the duplicates-check mentioned above ineffective. (See [PR 707](https://github.com/IETS3/iets3.opensource/pull/707))
81+
82+
### New language org.iets3.core.expr.typetags.bindingtime
83+
84+
The language extends typetags with support for different binding times of values. Consistency checks ensure that information is passed on at appropriate levels.
85+
1686
### Fixed
1787

1888
- Unit comparisons for the **same** unit defined in **different** packages now lead to an error message for compatibility
89+
- `SliceValue` can now correctly be checked for equality: `SliceValue.equals()` and `SliceValue.hashCode()` are overwritten.
90+
- `TemporalValue.hashCode()` was overwritten, thus `equals` and `hashCode()` are in sync now.
91+
- Generation of nested short lambda expression now use the correct type for "it" as a variable.
1992

2093
### Removed
2194

@@ -34,3 +107,7 @@ The project does _not_ follow Semantic Versioning and the changes are documented
34107
- Tuples are now handled within the typesystem.
35108
Instead of allowing JoinTypes within tuples we merge different tuple types by JoinTypes.
36109
- Each subconcept of IValidNamedConcept can now contribute and customize naming constraints
110+
111+
### Changed
112+
113+
- `IETS3ExprEvalHelper` methods no longer log exceptions that they re-throw. Some callers may ignore exceptions thrown by the interpreter, and having them logged unnecessarily clutters the logs. It is now the caller's responsibility to log exceptions where needed.

build.gradle

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ apply plugin: 'download-jbr'
3939

4040
// configure jbr download
4141
downloadJbr {
42-
jbrVersion = '11_0_11-b1341.60'
42+
jbrVersion = '11_0_14_1-b1751.46'
4343
}
4444

4545
// detect if we are in a CI build
@@ -56,7 +56,7 @@ def major = "2021"
5656
def minor = "3"
5757

5858
// Dependency versions
59-
ext.mpsVersion = '2021.3.3'
59+
ext.mpsVersion = '2021.3.5'
6060

6161
def mbeddrVersion = "2021.3+"
6262

@@ -116,7 +116,7 @@ ext.incrementalBuild = !project.hasProperty("disableIncrementalBuild")
116116

117117

118118
wrapper {
119-
gradleVersion '5.5.1'
119+
gradleVersion '8.5'
120120
distributionType Wrapper.DistributionType.ALL
121121
}
122122

@@ -131,7 +131,7 @@ dependencies {
131131
mps "com.jetbrains:mps:$mpsVersion"
132132
languageLibs "com.mbeddr:platform:$mbeddrVersionSelector"
133133
junitAnt 'org.apache.ant:ant-junit:1.10.6'
134-
pcollections 'org.pcollections:pcollections:3.1.4'
134+
pcollections 'org.pcollections:pcollections:4.0.1'
135135
}
136136

137137

build/scripts/build-allScripts.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,7 @@
225225
<library file="${artifacts.mps}/languages/runtimes/jetbrains.mps.lang.constraints.rules.runtime.jar" />
226226
<library file="${artifacts.mps}/languages/runtimes/jetbrains.mps.lang.feedback.api.jar" />
227227
<library file="${artifacts.mps}/languages/runtimes/jetbrains.mps.lang.feedback.context.jar" />
228+
<library file="${artifacts.mps}/languages/runtimes/jetbrains.mps.lang.feedback.problem.legacy-constraints.jar" />
228229
<library file="${artifacts.mps}/languages/runtimes/jetbrains.mps.lang.feedback.problem.rt.jar" />
229230
<library file="${artifacts.mps}/languages/runtimes/jetbrains.mps.lang.feedback.problem.rules.jar" />
230231
<library file="${artifacts.mps}/languages/runtimes/jetbrains.mps.lang.messages.api.jar" />

code/languages/org.iets3.opensource/.mps/libraries.xml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<project version='4'>
3-
<component name='ProjectLibraryManager'>
4-
<option name='libraries'>
2+
<project version="4">
3+
<component name="ProjectLibraryManager">
4+
<option name="libraries">
55
<map>
6-
<entry key='mbeddr.plattform'>
6+
<entry key="mbeddr.plattform">
77
<value>
88
<Library>
9-
<option name='name' value='mbeddr.plattform' />
10-
<option name='path' value='$PROJECT_DIR$/../../../build/dependencies/com.mbeddr.platform' />
11-
</Library>
9+
<option name="name" value="mbeddr.plattform" />
10+
<option name='path' value='$PROJECT_DIR$/../../../build/dependencies/com.mbeddr.platform' />
11+
</Library>
1212
</value>
1313
</entry>
1414
</map>

code/languages/org.iets3.opensource/.mps/modules.xml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.doc/org.iets3.core.expr.doc.mpl" folder="expr.lang-advanced" />
3030
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.genjava.base/org.iets3.core.expr.genjava.base.mpl" folder="expr.genjava" />
3131
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.genjava.contracts/org.iets3.core.expr.genjava.contracts.mpl" folder="expr.genjava" />
32+
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.genjava.data/org.iets3.core.expr.genjava.data.mpl" folder="expr.genjava" />
3233
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.genjava.datetime/org.iets3.core.expr.genjava.datetime.mpl" folder="expr.genjava" />
3334
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.genjava.messages/org.iets3.core.expr.genjava.messages.mpl" folder="expr.genjava" />
3435
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.genjava.simpleTypes/org.iets3.core.expr.genjava.simpleTypes.mpl" folder="expr.genjava" />
@@ -60,6 +61,7 @@
6061
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.tests/org.iets3.core.expr.tests.mpl" folder="expr.lang-core" />
6162
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.toplevel/org.iets3.core.expr.toplevel.mpl" folder="expr.lang-core" />
6263
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.tracing/org.iets3.core.expr.tracing.mpl" folder="expr.lang-core" />
64+
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.typetags.bindingtime/org.iets3.core.expr.typetags.bindingtime.mpl" folder="expr.lang-advanced" />
6365
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.typetags.lib/org.iets3.core.expr.typetags.lib.mpl" folder="expr.lang-advanced" />
6466
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.typetags.units.quantity/org.iets3.core.expr.typetags.units.quantity.mpl" folder="expr.lang-advanced" />
6567
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.typetags.units/org.iets3.core.expr.typetags.units.mpl" folder="expr.lang-advanced" />

code/languages/org.iets3.opensource/_spreferences/TestExecutionPreferences/models/org.iets3.opensource.__spreferences.TestExecutionPreferences.mps

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,12 @@
1515
<concept id="4473287864570292399" name="org.iets3.core.expr.testExecution.structure.TestExecutionConfig" flags="ng" index="3ZOQsN">
1616
<child id="4473287864570320758" name="executionMode" index="3ZOXzE" />
1717
</concept>
18-
<concept id="4473287864570320840" name="org.iets3.core.expr.testExecution.structure.InterpreterExecutionMode" flags="ng" index="3ZOXxk" />
18+
<concept id="4473287864570320810" name="org.iets3.core.expr.testExecution.structure.GeneratorExecutionMode" flags="ng" index="3ZOXwQ" />
1919
</language>
2020
</registry>
2121
<node concept="3ZOQsN" id="6pNCASbHXH8">
2222
<property role="TrG5h" value="KernelFTestExecution" />
23-
<node concept="3ZOXxk" id="2R7vP7hzmjd" role="3ZOXzE" />
23+
<node concept="3ZOXwQ" id="6wzrxL2Tnzf" role="3ZOXzE" />
2424
</node>
2525
</model>
2626

code/languages/org.iets3.opensource/devkits/org.iets3.core.expr.advanced.devkit/org.iets3.core.expr.advanced.devkit.devkit

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
<exported-language name="cb91a38e-738a-4811-a96d-448d08f526fa(org.iets3.core.expr.typetags.units)" />
1515
<exported-language name="8bb1251e-eae5-47ab-9843-33adfae8edaa(org.iets3.core.expr.util)" />
1616
<exported-language name="cee4aa62-aca9-4f26-9602-75129cd457c9(org.iets3.core.expr.dataflow)" />
17+
<exported-language name="9c3cc6fb-ae5e-46d1-ace2-1e08bb47d03d(org.iets3.core.expr.typetags.bindingtime)" />
1718
<exported-solutions>
1819
<exported-solution>79d5345e-e919-477c-b448-d9d5f36e2f92(org.iets3.core.expr.adt.interpreter)</exported-solution>
1920
<exported-solution>3a79aca0-f4b1-40f1-a3e9-259162afa77b(org.iets3.core.expr.dataflow.interpreter)</exported-solution>

code/languages/org.iets3.opensource/devkits/org.iets3.core.expr.genjava.advanced.devkit/org.iets3.core.expr.genjava.advanced.devkit.devkit

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
<exported-language name="15d858db-2d21-4ae9-90c4-f595086d0bdf(org.iets3.core.expr.genjava.util)" />
66
<exported-language name="752cf1d3-84d1-4f2b-bbf5-4ef076a62ec7(org.iets3.core.expr.genjava.messages)" />
77
<exported-language name="f9bb00ab-1f7e-40ab-9ec0-b11e02d84d0f(org.iets3.core.expr.genjava.stringvalidation)" />
8+
<exported-language name="98560bc9-b823-4181-83c6-33c39e2f5e9b(org.iets3.core.expr.genjava.data)" />
89
<extendedDevKits>
910
<extendedDevKit>da9c5738-b245-4e38-b52f-e6ee76cadd7f(org.iets3.core.expr.genjava.core.devkit)</extendedDevKit>
1011
</extendedDevKits>

code/languages/org.iets3.opensource/languages/org.iets3.components.core/models/editor.mps

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@
5555
<import index="tpco" ref="r:00000000-0000-4000-0000-011c89590284(jetbrains.mps.lang.core.editor)" implicit="true" />
5656
<import index="itrz" ref="r:80fb0853-eb3b-4e84-aebd-cc7fdb011d97(org.iets3.core.base.editor)" implicit="true" />
5757
<import index="tpce" ref="r:00000000-0000-4000-0000-011c89590292(jetbrains.mps.lang.structure.structure)" implicit="true" />
58+
<import index="hm2y" ref="r:66e07cb4-a4b0-4bf3-a36d-5e9ed1ff1bd3(org.iets3.core.expr.base.structure)" implicit="true" />
5859
<import index="138" ref="r:2c1007f3-e814-47ba-b729-c3ea0297f627(org.iets3.core.attributes.structure)" implicit="true" />
5960
</imports>
6061
<registry>
@@ -110,12 +111,18 @@
110111
<property id="5944657839012629576" name="presentation" index="2BUmq6" />
111112
</concept>
112113
<concept id="1239814640496" name="jetbrains.mps.lang.editor.structure.CellLayout_VerticalGrid" flags="nn" index="2EHx9g" />
114+
<concept id="1164824717996" name="jetbrains.mps.lang.editor.structure.CellMenuDescriptor" flags="ng" index="OXEIz">
115+
<child id="1164824815888" name="cellMenuPart" index="OY2wv" />
116+
</concept>
113117
<concept id="1078938745671" name="jetbrains.mps.lang.editor.structure.EditorComponentDeclaration" flags="ig" index="PKFIW">
114118
<child id="7033942394258392116" name="overridenEditorComponent" index="1PM95z" />
115119
</concept>
116120
<concept id="1078939183254" name="jetbrains.mps.lang.editor.structure.CellModel_Component" flags="sg" stub="3162947552742194261" index="PMmxH">
117121
<reference id="1078939183255" name="editorComponent" index="PMmxG" />
118122
</concept>
123+
<concept id="1164914519156" name="jetbrains.mps.lang.editor.structure.CellMenuPart_ReplaceNode_CustomNodeConcept" flags="ng" index="UkePV">
124+
<reference id="1164914727930" name="replacementConcept" index="Ul1FP" />
125+
</concept>
119126
<concept id="1186402211651" name="jetbrains.mps.lang.editor.structure.StyleSheet" flags="ng" index="V5hpn">
120127
<child id="1186402402630" name="styles" index="V601i" />
121128
</concept>
@@ -177,6 +184,7 @@
177184
<concept id="1073389214265" name="jetbrains.mps.lang.editor.structure.EditorCellModel" flags="ng" index="3EYTF0">
178185
<reference id="1139959269582" name="actionMap" index="1ERwB7" />
179186
<child id="1142887637401" name="renderingCondition" index="pqm2j" />
187+
<child id="1164826688380" name="menuDescriptor" index="P5bDN" />
180188
</concept>
181189
<concept id="1073389446423" name="jetbrains.mps.lang.editor.structure.CellModel_Collection" flags="sn" stub="3013115976261988961" index="3EZMnI">
182190
<property id="1160590353935" name="usesFolding" index="S$Qs1" />
@@ -11933,6 +11941,11 @@
1193311941
<node concept="11LMrY" id="1WAg9Tzrz8T" role="3F10Kt">
1193411942
<property role="VOm3f" value="true" />
1193511943
</node>
11944+
<node concept="OXEIz" id="yfp7edvEmW" role="P5bDN">
11945+
<node concept="UkePV" id="yfp7edvEmX" role="OY2wv">
11946+
<ref role="Ul1FP" to="hm2y:6sdnDbSlaok" resolve="Type" />
11947+
</node>
11948+
</node>
1193611949
</node>
1193711950
<node concept="3F1sOY" id="1WAg9Tzrz6S" role="3EZMnx">
1193811951
<ref role="1NtTu8" to="w9y2:1WAg9Tzrz6g" resolve="portType" />

0 commit comments

Comments
 (0)