Skip to content

Commit 0628221

Browse files
Merge maintenance/mps20241 into merge/mps20232
2 parents 707f99d + 9f29ccf commit 0628221

File tree

370 files changed

+763503
-6118
lines changed

Some content is hidden

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

370 files changed

+763503
-6118
lines changed

.github/renovate.json5

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
{
2+
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
3+
"extends": [
4+
"config:recommended"
5+
],
6+
"packageRules": [
7+
// Rules are evaluated top to bottom, all matching rules are applied
8+
9+
{
10+
"matchPackageNames": [
11+
"com.jetbrains:mps",
12+
"org.mpsqa:all-in-one",
13+
"com.mbeddr:platform"
14+
],
15+
16+
// Update patch versions (2024.1.x -> 2024.1.y) separately from minor.
17+
"separateMinorPatch": true,
18+
19+
// Commit hashes containing 'a' or 'b' are interpreted by Gradle/Renovate as 'alpha' or 'beta' versions,
20+
// and Renovate would normally refuse to update to them. In our case they are stable versions.
21+
"ignoreUnstable": false
22+
},
23+
24+
{
25+
// Disable major and minor updates of MPS libraries and MPS (e.g. 2024.1 -> 2024.3). Leave patch updates enabled
26+
// thanks to the previous rule.
27+
"matchPackageNames": [
28+
"com.jetbrains:mps",
29+
"org.mpsqa:all-in-one",
30+
"com.mbeddr:platform"
31+
],
32+
"matchUpdateTypes": ["major", "minor"],
33+
"enabled": false
34+
},
35+
36+
// Disallow mps-gradle-plugin v2
37+
{
38+
"matchPackageNames": ["de.itemis.mps:mps-gradle-plugin"],
39+
"allowedVersions": "!/^2\\./"
40+
}
41+
],
42+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
on: [pull_request]
2+
3+
jobs:
4+
depchecktest:
5+
runs-on: ubuntu-latest
6+
name: depecheck_test
7+
steps:
8+
- name: Checkout
9+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
10+
- name: Setup Java
11+
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4
12+
with:
13+
distribution: temurin
14+
java-version: 17
15+
- name: Setup Gradle
16+
uses: gradle/actions/setup-gradle@06832c7b30a0129d7fb559bcc6e43d26f6374244 # v4
17+
- name: Call setup
18+
run: ./gradlew dependencies
19+
- name: Dependency Check
20+
uses: dependency-check/Dependency-Check_Action@3102a65fd5f36d0000297576acc56a475b0de98d
21+
env:
22+
# actions/setup-java changes JAVA_HOME, so it needs to be reset to match the depcheck image
23+
JAVA_HOME: /opt/jdk
24+
id: Depcheck
25+
with:
26+
project: 'iets3.opensource'
27+
format: 'HTML'
28+
out: 'reports'
29+
- name: Upload Test results
30+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
31+
with:
32+
name: Dependency Check Report
33+
path: ${{github.workspace}}/reports

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ classes_gen
4646
source_gen
4747
source_gen.caches
4848
test_gen
49+
doc_gen
4950
test_gen.caches
5051
code/languages/*/*.iws
5152
code/languages/*/build.properties

CHANGELOG.md

Lines changed: 46 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,31 @@ The project does _not_ follow Semantic Versioning and the changes are documented
1313
## October 2025
1414

1515
### Added
16-
16+
- Variability: Some changes regarding variant configurations:
17+
- A check has been added for duplicate names of configurations in the same container.
18+
- Configurations might become inconsistent due to errors during manual conflict merges. A couple of model checks have been added to detect this. Additionally, there are quickfixes to fix such errors.
19+
- The internal storage of configurations has changed, this requires a language migration. Note that after the execution of the migration, extended configurations must be adapted via intention to their changed base configuration.
20+
- A VCS merge hint has been added for the `__hash` property (e.g., for variant configurations). This avoids merge conflicts which cannot be resolved manually anyway (in those cases, the hash value has to be recomputed anyway).
21+
- Requirements modeling (language `org.iets3.req.core`)
22+
- It now supports a "requires" relation, which can express that a requirement needs other requirements as a precondition.
23+
- The requirements chunk provides a flag "hide empty child requirements sections" (in the inspector). If selected, the flag hides empty child requirements sections in the tabular requirements view.
24+
- Some additional internal changes (e.g., implementation of `ICanHide` interface, needed for variability support).
1725
- A new intention is available to split kernelF StringLiterals into concatenation parts
1826

1927
### Fixed
28+
- Improved the readability of lists by enforcing a new line when a threshold of three elements per list is exeeded.
2029
- A DecTab bug not respecting the default value was fixed and a corresponding warning was added to warn users which default value takes precedence
2130

2231
## September 2025
2332

24-
### Fixed
33+
### Added
34+
- Data tables, binary and multi-criteria decision tables now support deletion, copying and pasting when multiple cells are selected with the mouse.
2535

36+
### Fixed
2637
- The renderReadable/getPresentation implementations were improved and are now equivalent in all concepts.
38+
- Variability: For feature attributes, the inspector in the configuration editor shows the current value of the attribute and what caused this value (manual input by user, default, forced by tool, etc). This assignment cause is read-only now. An intention is added to manually set it to 'manual' state.
39+
- Variability: In the configuration editor, pressing Return/Enter anywhere will create an empty line after the configuration. Pressing Shift-Return/Enter on the header line of a configuration will create an empty line before the configuration.
40+
2741

2842
### Added
2943

@@ -39,12 +53,42 @@ The project does _not_ follow Semantic Versioning and the changes are documented
3953

4054
### Added
4155
- CI tests for InterpreterCoverageAssQuery which make use use the calculated coverage data
56+
- Solver: Add test infrastructure to ensure that errors computed by any solver are converted to editor messages properly.
57+
- Variability: APIs for FilterParams (configuration of filter&instantiate process) and skeleton tree data structure were extended
4258
- Warning for BangOp in case type is not OptionType
4359

60+
61+
## June 2025
62+
63+
### Added
64+
65+
- Added languages and solution for basic variability, moved from IETS3-Core project. The following modules were added:
66+
- variability: `org.iets3.variability.*` (6 languages, 2 solutions)
67+
- variability devkit: `org.iets3.variability.base.devkit`
68+
- analysis support: `org.iets3.analysis.logic.operator`, `org.iets3.analysis.solversupport.util`
69+
- contextfilter for UI: `org.iets3.contextfilter`, `org.iets3.contextfilter.plugin`
70+
71+
### Changed
72+
73+
- Published SBOM contains dependencies only from runtime configurations
74+
- To avoid confusion, `U+03BC μ GREEK SMALL LETTER MU` is no longer recognized as the 'micro' unit prefix, only
75+
`U+00B5 µ MICRO SIGN` is. Although technically considered 'legacy', the micro sign is the character produced by macOS
76+
and Windows keyboard layouts when pressing `AltGr/Option+M`.
77+
78+
An [enhancement script](http://127.0.0.1:63320/node?ref=r%3A531014dc-62ca-45fa-b1c2-cf992369440b%28org.iets3.core.expr.typetags.physunits.scripts%29%2F6252521573649140294)
79+
is provided to replace 'mu' with 'micro sign'.
80+
81+
4482
## May 2025
4583

84+
### Changed
85+
86+
- The language org.iets3.variability.artifacts.base was temporarily renamed to org.iets3.variability.artifacts.vanguard.
87+
4688
### Fixed
4789

90+
- Plugin org.iets3.safety was renamed to org.iets3.safety.os fixing the name collision with a plugin in org.iets3.core
91+
4892
- A NullPointerException was fixed for cases where a node implementing IValidNamedConcept had no name.
4993
- When calculating the supertype of number types, the precision is now correctly set to infinite when one of the types has an infinite precision.
5094
- The primitiveTypeMapper extension supports a new method `PrimitiveTypeMapper#useStringConstraints` that can be set to false to disable string types with constraints and go back to regular string types.

0 commit comments

Comments
 (0)