Skip to content

Commit 0bd9bd0

Browse files
committed
Merge branch 'maintenance/mps20213' into fixesMarkus20213
# Conflicts: # code/languages/org.iets3.opensource/languages/org.iets3.core.expr.base/models/behavior.mps # code/languages/org.iets3.opensource/languages/org.iets3.core.expr.genjava.datetime/generator/template/[email protected] # code/languages/org.iets3.opensource/languages/org.iets3.core.expr.toplevel/models/org/iets3/core/expr/toplevel/editor.mps
2 parents eb430e0 + 9e7d764 commit 0bd9bd0

File tree

85 files changed

+31266
-13442
lines changed

Some content is hidden

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

85 files changed

+31266
-13442
lines changed

CHANGELOG.md

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,62 @@ 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+
## December 2023
9+
10+
### Fixed
11+
12+
- The `index` expression in collections operations now works correctly in nested expressions in the interpreter and generator.
13+
- Generation of nested short lambda expression now use the correct type for "it" as a variable.
14+
- Collections: The index expression now works with collection types in the generator.
15+
16+
### Added
17+
18+
- The `all` and `any` operation of collections now also support the `index` expression. The concepts `AllWithIndexOp` and `AnyWithIndexOp` are therefore deprecated.
19+
20+
### Changed
21+
22+
- The class `IETS3ExprEvalHelper` was deprecated and a new class `IETS3ExprEvaluator` was introduced that can also influence the creation of the computation trace.
23+
24+
## November 2023
25+
26+
### Added
27+
28+
- 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
29+
- 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
30+
- Option: Sorting removes all `none` values since the underlying data structure of collections doesn't support null values.
31+
32+
### Changed
33+
34+
- 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.
35+
36+
### Fixed
37+
38+
- String validation: A bug in the number detection logic was fixed
39+
- String validation: A bug in the successor execution logic was fixed
40+
-
41+
## October 2023
42+
43+
### Fixed
44+
45+
- Generation of nested short lambda expression now use the correct type for "it" as a variable.
46+
847
## September 2023
948

1049
### Added
1150

1251
- 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))
1352
- 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))
1453

54+
### New language org.iets3.core.expr.typetags.bindingtime
55+
56+
The language extends typetags with support for different binding times of values. Consistency checks ensure that information is passed on at appropriate levels.
57+
1558
### Fixed
1659

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

1965
### Removed
2066

@@ -33,3 +79,7 @@ The project does _not_ follow Semantic Versioning and the changes are documented
3379
- Tuples are now handled within the typesystem.
3480
Instead of allowing JoinTypes within tuples we merge different tuple types by JoinTypes.
3581
- Each subconcept of IValidNamedConcept can now contribute and customize naming constraints
82+
83+
### Changed
84+
85+
- `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: 2 additions & 2 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

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@
6161
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.tests/org.iets3.core.expr.tests.mpl" folder="expr.lang-core" />
6262
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.toplevel/org.iets3.core.expr.toplevel.mpl" folder="expr.lang-core" />
6363
<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" />
6465
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.typetags.lib/org.iets3.core.expr.typetags.lib.mpl" folder="expr.lang-advanced" />
6566
<modulePath path="$PROJECT_DIR$/languages/org.iets3.core.expr.typetags.units.quantity/org.iets3.core.expr.typetags.units.quantity.mpl" folder="expr.lang-advanced" />
6667
<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/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/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" />

code/languages/org.iets3.opensource/languages/org.iets3.core.expr.adt/models/editor.mps

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,17 @@
4949
<child id="1080736633877" name="cellModel" index="2wV5jI" />
5050
</concept>
5151
<concept id="1239814640496" name="jetbrains.mps.lang.editor.structure.CellLayout_VerticalGrid" flags="nn" index="2EHx9g" />
52+
<concept id="1164824717996" name="jetbrains.mps.lang.editor.structure.CellMenuDescriptor" flags="ng" index="OXEIz">
53+
<child id="1164824815888" name="cellMenuPart" index="OY2wv" />
54+
</concept>
5255
<concept id="1078938745671" name="jetbrains.mps.lang.editor.structure.EditorComponentDeclaration" flags="ig" index="PKFIW" />
5356
<concept id="1078939183254" name="jetbrains.mps.lang.editor.structure.CellModel_Component" flags="sg" stub="3162947552742194261" index="PMmxH">
5457
<reference id="1078939183255" name="editorComponent" index="PMmxG" />
5558
</concept>
5659
<concept id="1149850725784" name="jetbrains.mps.lang.editor.structure.CellModel_AttributedNodeCell" flags="ng" index="2SsqMj" />
60+
<concept id="1164914519156" name="jetbrains.mps.lang.editor.structure.CellMenuPart_ReplaceNode_CustomNodeConcept" flags="ng" index="UkePV">
61+
<reference id="1164914727930" name="replacementConcept" index="Ul1FP" />
62+
</concept>
5763
<concept id="1186403694788" name="jetbrains.mps.lang.editor.structure.ColorStyleClassItem" flags="ln" index="VaVBg">
5864
<property id="1186403713874" name="color" index="Vb096" />
5965
</concept>
@@ -92,6 +98,7 @@
9298
</concept>
9399
<concept id="1073389214265" name="jetbrains.mps.lang.editor.structure.EditorCellModel" flags="ng" index="3EYTF0">
94100
<child id="1142887637401" name="renderingCondition" index="pqm2j" />
101+
<child id="1164826688380" name="menuDescriptor" index="P5bDN" />
95102
</concept>
96103
<concept id="1073389446423" name="jetbrains.mps.lang.editor.structure.CellModel_Collection" flags="sn" stub="3013115976261988961" index="3EZMnI">
97104
<child id="1106270802874" name="cellLayout" index="2iSdaV" />
@@ -1417,6 +1424,11 @@
14171424
<node concept="3F0ifn" id="28$LOSAcnoE" role="3EZMnx">
14181425
<property role="3F0ifm" value="quoted" />
14191426
<ref role="1k5W1q" to="itrz:7D7uZV2g_XJ" resolve="iets3Type" />
1427+
<node concept="OXEIz" id="yfp7edvEmQ" role="P5bDN">
1428+
<node concept="UkePV" id="yfp7edvEmR" role="OY2wv">
1429+
<ref role="Ul1FP" to="hm2y:6sdnDbSlaok" resolve="Type" />
1430+
</node>
1431+
</node>
14201432
</node>
14211433
<node concept="3F0ifn" id="28$LOSAflsL" role="3EZMnx">
14221434
<property role="3F0ifm" value="&lt;" />

code/languages/org.iets3.opensource/languages/org.iets3.core.expr.adt/models/structure.mps

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -454,6 +454,7 @@
454454
<property role="3GE5qa" value="quote" />
455455
<property role="TrG5h" value="QuotedTermType" />
456456
<property role="R4oN_" value="a quoted term type" />
457+
<property role="34LRSv" value="quoted" />
457458
<ref role="1TJDcQ" to="hm2y:6sdnDbSlaok" resolve="Type" />
458459
<node concept="1TJgyj" id="28$LOSAflsv" role="1TKVEi">
459460
<property role="IQ2ns" value="2460310434914064159" />

0 commit comments

Comments
 (0)