Skip to content

Commit da1376f

Browse files
committed
Merge branch 'maintenance/mps20241' into merge/manual20232
# Conflicts: # code/languages/org.iets3.opensource/tests/test.ts.expr.os/test.ts.expr.os.msd
2 parents 803825b + 35e4c95 commit da1376f

File tree

221 files changed

+2895
-1789
lines changed

Some content is hidden

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

221 files changed

+2895
-1789
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

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ The project does _not_ follow Semantic Versioning and the changes are documented
99

1010
### Fixed
1111

12+
- Plugin org.iets3.safety was renamed to org.iets3.safety.os fixing the name collision with a plugin in org.iets3.core
13+
1214
- A NullPointerException was fixed for cases where a node implementing IValidNamedConcept had no name.
1315
- When calculating the supertype of number types, the precision is now correctly set to infinite when one of the types has an infinite precision.
1416
- 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.

README.md

Lines changed: 87 additions & 59 deletions
Large diffs are not rendered by default.

build.gradle

Lines changed: 25 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,6 @@ import java.time.LocalDate
88
import java.time.format.DateTimeFormatter
99
import java.time.format.FormatStyle
1010

11-
//will pull the groovy classes/types from nexus to the classpath
12-
buildscript {
13-
repositories {
14-
maven { url 'https://artifacts.itemis.cloud/repository/maven-mps/' }
15-
}
16-
}
17-
1811
plugins {
1912
id 'base'
2013
id 'maven-publish'
@@ -24,26 +17,19 @@ plugins {
2417
id "org.cyclonedx.bom" version "2.2.0"
2518
}
2619

27-
ext.dependencyRepositories = [
28-
'https://artifacts.itemis.cloud/repository/maven-mps/'
29-
]
30-
3120
repositories {
32-
// we don't use mavenLocal() repo, since it can cause various issues with resolving dependencies,
33-
// see https://docs.gradle.org/current/userguide/declaring_repositories.html#sec:case-for-maven-local
34-
for (repoUrl in project.dependencyRepositories) {
35-
maven {
36-
url repoUrl
37-
}
21+
maven {
22+
url 'https://artifacts.itemis.cloud/repository/maven-mps/'
3823
}
24+
3925
mavenCentral()
4026
}
4127

4228
apply plugin: 'download-jbr'
4329

4430
// configure jbr download version
4531
downloadJbr {
46-
jbrVersion = '17.0.8.1-b1000.32'
32+
jbrVersion = '17.0.11-b1207.30'
4733
}
4834

4935
// detect if we are in a CI build
@@ -56,14 +42,13 @@ if (project.hasProperty("forceCI")) {
5642

5743
def forceLocal = project.hasProperty("forceLocalDependencies")
5844

59-
def major = "2023"
60-
def minor = "2"
45+
def major = "2024"
46+
def minor = "1"
6147

6248
// Dependency versions
6349

64-
ext.mpsVersion = '2023.2.2'
50+
ext.mpsVersion = '2024.1.3'
6551

66-
def mbeddrVersion = "$major.$minor+"
6752
def mpsQAVersion = "$major.$minor+"
6853

6954
// if building a against a special branch from mbeddr is required add the name here
@@ -72,11 +57,12 @@ def mpsQAVersion = "$major.$minor+"
7257
def mbeddrBranch = ""
7358
def currentBranch = ""
7459

75-
76-
if (mbeddrBranch != null && !mbeddrBranch.trim().isEmpty()) {
77-
ext.mbeddrVersionSelector = "${mbeddrBranch.replace("/", "-")}.${mbeddrVersion}"
78-
} else {
79-
ext.mbeddrVersionSelector = mbeddrVersion
60+
if (!project.hasProperty('mbeddrVersion')) {
61+
if (mbeddrBranch != null && !mbeddrBranch.trim().isEmpty()) {
62+
ext.mbeddrVersion = "${mbeddrBranch.replace("/", "-")}.$major.$minor+"
63+
} else {
64+
ext.mbeddrVersion = "$major.$minor+"
65+
}
8066
}
8167

8268
// Project group
@@ -98,19 +84,14 @@ if (project.hasProperty('iets3OpenSourceVersion')) {
9884
} else {
9985
def isSnapshot = !(currentBranch.equals("master") || currentBranch.startsWith("datev-loon-staging-") || currentBranch.startsWith("datev-steuer-staging-"))
10086
version = GitBasedVersioning.getVersionWithCount(major, minor, buildNumber) + (isSnapshot ? "-SNAPSHOT" : "")
101-
}
87+
}
10288
println "##teamcity[buildNumber '${version}']"
10389
} else {
10490
version = "$major.$minor-SNAPSHOT"
10591
println "Local build detected, version will be $version"
10692
}
10793
}
10894

109-
if (project.hasProperty("mbeddrVersion")) {
110-
logger.log(LogLevel.WARN, "mbeddr version externally overwritten to $ext.mbeddrVersion")
111-
ext.mbeddrVersionSelector = ext.mbeddrVersion
112-
}
113-
11495
ext.releaseRepository = 'https://artifacts.itemis.cloud/repository/maven-mps-releases/'
11596
ext.snapshotRepository = 'https://artifacts.itemis.cloud/repository/maven-mps-snapshots'
11697
ext.publishingRepository = version.toString().endsWith("-SNAPSHOT") ? snapshotRepository : releaseRepository
@@ -138,10 +119,10 @@ configurations {
138119

139120
dependencies {
140121
mps "com.jetbrains:mps:$mpsVersion"
141-
rerunMigrationsBackend("de.itemis.mps.build-backends:remigrate:0.0.5.+")
122+
rerunMigrationsBackend("de.itemis.mps.build-backends:remigrate:0.2.0.+")
142123
languageLibs "org.mpsqa:all-in-one:$mpsQAVersion"
143-
languageLibs "com.mbeddr:platform:$mbeddrVersionSelector"
144-
junitAnt 'org.apache.ant:ant-junit:1.10.6'
124+
languageLibs "com.mbeddr:platform:$mbeddrVersion"
125+
junitAnt 'org.apache.ant:ant-junit:1.10.15'
145126
}
146127

147128
@TupleConstructor
@@ -165,9 +146,9 @@ class BundledDep {
165146
}
166147

167148
def bundledDeps = [
168-
new BundledDep('pcollections', ['org.pcollections:pcollections:4.0.1'], 'org.iets3.core.expr.base.collections.stubs'),
149+
new BundledDep('pcollections', ['org.pcollections:pcollections:4.0.2'], 'org.iets3.core.expr.base.collections.stubs'),
169150
new BundledDep('bigMath', ['ch.obermuhlner:big-math:2.3.2'], 'org.iets3.core.expr.math.interpreter'),
170-
new BundledDep('functionalJava', ['org.functionaljava:functionaljava:4.8.1'], 'org.iets3.core.expr.genjava.functionalJava'),
151+
new BundledDep('functionalJava', ['org.functionaljava:functionaljava:5.0'], 'org.iets3.core.expr.genjava.functionalJava'),
171152
new BundledDep('cpsSuite', ['io.takari.junit:takari-cpsuite:1.2.7'], 'org.iets3.opensource.build.gentests.rt').overrideArtifactName('takari-cpsuite.jar')
172153
]
173154

@@ -225,6 +206,7 @@ ext.mpsHomeDir = resolveMps.destinationDir
225206
def defaultScriptArgs = [
226207
'mps.home' : resolveMps.destinationDir,
227208
'iets3.github.opensource.home' : rootDir,
209+
'mps.test.project.path' : "${rootDir}/code/languages/org.iets3.opensource",
228210
'build.jna.library.path' : new File(resolveMps.destinationDir, "lib/jna/${System.getProperty('os.arch')}"),
229211
'build.dir' : buildDir,
230212
'version' : version
@@ -286,7 +268,7 @@ task buildAndRunTests(type: TestLanguages, dependsOn: buildLanguages) {
286268
task failOnTestError() {
287269
description 'evaluate junit result and fail on error'
288270
doLast {
289-
271+
290272
def juniXml = file('TESTS-TestSuites.xml')
291273
if(juniXml.exists()){
292274
def junitResult = new XmlSlurper().parse(juniXml)
@@ -355,13 +337,15 @@ modelcheck {
355337
maxHeap = "4G"
356338
}
357339

358-
/*
340+
359341
afterEvaluate { project ->
342+
/*
360343
check.configure {
361344
dependsOn tasks.named('checkmodels')
362345
}
346+
*/
363347
}
364-
*/
348+
365349

366350
checkmodels {
367351
dependsOn(resolveMps)

0 commit comments

Comments
 (0)