From 6660a2bf2dc193e2ca00949c7f09608f623b3058 Mon Sep 17 00:00:00 2001 From: "Daniel A. A. Pelsmaeker" Date: Mon, 27 May 2024 12:10:32 +0200 Subject: [PATCH 01/11] Make metaborgVersion explicit in metaborg.yaml --- example/empty/empty.example/metaborg.yaml | 1 + example/empty/empty.test/metaborg.yaml | 1 + example/empty/empty/metaborg.yaml | 3 ++- example/language_contribution_addition/metaborg.yaml | 1 + example/language_contribution_override/metaborg.yaml | 1 + example/stratego_format_override/metaborg.yaml | 1 + 6 files changed, 7 insertions(+), 1 deletion(-) diff --git a/example/empty/empty.example/metaborg.yaml b/example/empty/empty.example/metaborg.yaml index 2620139..e6942ca 100644 --- a/example/empty/empty.example/metaborg.yaml +++ b/example/empty/empty.example/metaborg.yaml @@ -1,6 +1,7 @@ --- id: org.metaborg:empty.example:0.1.0-SNAPSHOT name: empty +metaborgVersion: 2.6.0-SNAPSHOT dependencies: compile: - org.metaborg:empty:0.1.0-SNAPSHOT diff --git a/example/empty/empty.test/metaborg.yaml b/example/empty/empty.test/metaborg.yaml index b97eb4d..c0795a3 100644 --- a/example/empty/empty.test/metaborg.yaml +++ b/example/empty/empty.test/metaborg.yaml @@ -1,6 +1,7 @@ --- id: org.metaborg:empty.test:0.1.0-SNAPSHOT name: empty +metaborgVersion: 2.6.0-SNAPSHOT dependencies: compile: - org.metaborg:empty:0.1.0-SNAPSHOT diff --git a/example/empty/empty/metaborg.yaml b/example/empty/empty/metaborg.yaml index 529c21c..7b95c6f 100644 --- a/example/empty/empty/metaborg.yaml +++ b/example/empty/empty/metaborg.yaml @@ -1,6 +1,7 @@ --- id: org.metaborg:empty:0.1.0-SNAPSHOT name: empty +metaborgVersion: 2.6.0-SNAPSHOT dependencies: compile: - org.metaborg:org.metaborg.meta.lang.esv:${metaborgVersion} @@ -13,4 +14,4 @@ language: sdf: sdf2table: java stratego: - enabled: false \ No newline at end of file + enabled: false diff --git a/example/language_contribution_addition/metaborg.yaml b/example/language_contribution_addition/metaborg.yaml index 3d5fa27..5ad672a 100644 --- a/example/language_contribution_addition/metaborg.yaml +++ b/example/language_contribution_addition/metaborg.yaml @@ -1,6 +1,7 @@ --- id: org.metaborg:language_contribution_addition:0.1.0-SNAPSHOT name: language_contribution_addition +metaborgVersion: 2.6.0-SNAPSHOT contributions: - name: language_contribution_addition id: org.metaborg:language_contribution_addition:0.1.0-SNAPSHOT diff --git a/example/language_contribution_override/metaborg.yaml b/example/language_contribution_override/metaborg.yaml index 72fecbc..2e0d02f 100644 --- a/example/language_contribution_override/metaborg.yaml +++ b/example/language_contribution_override/metaborg.yaml @@ -1,6 +1,7 @@ --- id: org.metaborg:language_contribution_override:0.1.0-SNAPSHOT name: language_contribution_override +metaborgVersion: 2.6.0-SNAPSHOT contributions: - name: language_contribution_override id: org.metaborg:language_contribution_override:0.1.0-SNAPSHOT diff --git a/example/stratego_format_override/metaborg.yaml b/example/stratego_format_override/metaborg.yaml index 71cb771..5123e2a 100644 --- a/example/stratego_format_override/metaborg.yaml +++ b/example/stratego_format_override/metaborg.yaml @@ -1,6 +1,7 @@ --- id: org.metaborg:stratego_format_override:0.1.0-SNAPSHOT name: stratego_format_override +metaborgVersion: 2.6.0-SNAPSHOT dependencies: compile: - org.metaborg:org.metaborg.meta.lang.esv:${metaborgVersion} From eed8ae9c449e8f3fd0a319f4a482f2b4a37d7339 Mon Sep 17 00:00:00 2001 From: "Daniel A. A. Pelsmaeker" Date: Mon, 27 May 2024 13:38:55 +0200 Subject: [PATCH 02/11] Reformat code to match Kotlin official style --- build.gradle.kts | 4 +- example/build.gradle.kts | 18 +- example/empty/empty.example/build.gradle.kts | 4 +- example/empty/empty.test/build.gradle.kts | 6 +- example/empty/empty/build.gradle.kts | 2 +- .../build.gradle.kts | 4 +- .../build.gradle.kts | 6 +- example/settings.gradle.kts | 20 +- .../stratego_format_override/build.gradle.kts | 4 +- plugin/build.gradle.kts | 192 +++++++++--------- 10 files changed, 130 insertions(+), 130 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 9afe9d7..669361a 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,4 +1,4 @@ plugins { - id("org.metaborg.gradle.config.root-project") version "0.4.8" - id("org.metaborg.gitonium") version "1.2.0" + id("org.metaborg.gradle.config.root-project") version "0.4.8" + id("org.metaborg.gitonium") version "1.2.0" } diff --git a/example/build.gradle.kts b/example/build.gradle.kts index a5638dd..4fb0809 100644 --- a/example/build.gradle.kts +++ b/example/build.gradle.kts @@ -1,15 +1,15 @@ plugins { - id("org.metaborg.gradle.config.root-project") version "0.4.8" - id("org.metaborg.gitonium") version "1.2.0" + id("org.metaborg.gradle.config.root-project") version "0.4.8" + id("org.metaborg.gitonium") version "1.2.0" - // Set versions for plugins to use, only applying them in subprojects (apply false here). - id("org.metaborg.spoofax.gradle.langspec") apply false // No version: use the plugin from the included composite build - id("org.metaborg.spoofax.gradle.project") apply false - id("org.metaborg.spoofax.gradle.test") apply false + // Set versions for plugins to use, only applying them in subprojects (apply false here). + id("org.metaborg.spoofax.gradle.langspec") apply false // No version: use the plugin from the included composite build + id("org.metaborg.spoofax.gradle.project") apply false + id("org.metaborg.spoofax.gradle.test") apply false } subprojects { - metaborg { - configureSubProject() - } + metaborg { + configureSubProject() + } } diff --git a/example/empty/empty.example/build.gradle.kts b/example/empty/empty.example/build.gradle.kts index 18cf826..0c91aac 100644 --- a/example/empty/empty.example/build.gradle.kts +++ b/example/empty/empty.example/build.gradle.kts @@ -1,7 +1,7 @@ plugins { - id("org.metaborg.spoofax.gradle.project") + id("org.metaborg.spoofax.gradle.project") } dependencies { - compileLanguage(project(":empty")) + compileLanguage(project(":empty")) } diff --git a/example/empty/empty.test/build.gradle.kts b/example/empty/empty.test/build.gradle.kts index d74c454..0caa55b 100644 --- a/example/empty/empty.test/build.gradle.kts +++ b/example/empty/empty.test/build.gradle.kts @@ -1,11 +1,11 @@ plugins { - id("org.metaborg.spoofax.gradle.test") + id("org.metaborg.spoofax.gradle.test") } spoofaxTest { - languageUnderTest.set(org.metaborg.core.language.LanguageIdentifier.parse("$group:empty:$version")) + languageUnderTest.set(org.metaborg.core.language.LanguageIdentifier.parse("$group:empty:$version")) } dependencies { - compileLanguage(project(":empty")) + compileLanguage(project(":empty")) } diff --git a/example/empty/empty/build.gradle.kts b/example/empty/empty/build.gradle.kts index 15309f8..9818f37 100644 --- a/example/empty/empty/build.gradle.kts +++ b/example/empty/empty/build.gradle.kts @@ -1,3 +1,3 @@ plugins { - id("org.metaborg.spoofax.gradle.langspec") + id("org.metaborg.spoofax.gradle.langspec") } diff --git a/example/language_contribution_addition/build.gradle.kts b/example/language_contribution_addition/build.gradle.kts index a5362d8..5aee185 100644 --- a/example/language_contribution_addition/build.gradle.kts +++ b/example/language_contribution_addition/build.gradle.kts @@ -1,9 +1,9 @@ import org.metaborg.core.language.* plugins { - id("org.metaborg.spoofax.gradle.langspec") + id("org.metaborg.spoofax.gradle.langspec") } spoofaxLanguageSpecification { - languageContributions.add(LanguageContributionIdentifier(LanguageIdentifier(group.toString() + ".test", name + "_test", LanguageVersion.parse(version.toString() + "-test")), "lca")) + languageContributions.add(LanguageContributionIdentifier(LanguageIdentifier(group.toString() + ".test", name + "_test", LanguageVersion.parse(version.toString() + "-test")), "lca")) } diff --git a/example/language_contribution_override/build.gradle.kts b/example/language_contribution_override/build.gradle.kts index 7f027b3..3396886 100644 --- a/example/language_contribution_override/build.gradle.kts +++ b/example/language_contribution_override/build.gradle.kts @@ -1,10 +1,10 @@ import org.metaborg.core.language.* plugins { - id("org.metaborg.spoofax.gradle.langspec") + id("org.metaborg.spoofax.gradle.langspec") } spoofaxLanguageSpecification { - addLanguageContributionsFromMetaborgYaml.set(false) - languageContributions.add(LanguageContributionIdentifier(LanguageIdentifier(group.toString(), name, LanguageVersion.parse(version.toString())), "lco")) + addLanguageContributionsFromMetaborgYaml.set(false) + languageContributions.add(LanguageContributionIdentifier(LanguageIdentifier(group.toString(), name, LanguageVersion.parse(version.toString())), "lco")) } diff --git a/example/settings.gradle.kts b/example/settings.gradle.kts index 5943c31..66551f2 100644 --- a/example/settings.gradle.kts +++ b/example/settings.gradle.kts @@ -1,26 +1,26 @@ rootProject.name = "spoofax.gradle.example" pluginManagement { - repositories { - maven("https://artifacts.metaborg.org/content/groups/public/") - } + repositories { + maven("https://artifacts.metaborg.org/content/groups/public/") + } } // Only include composite builds when this is the root project (it has no parent), for example when running Gradle tasks // from the command-line. Otherwise, the parent project will include these composite builds. -if(gradle.parent == null) { - includeBuild("../plugin") +if (gradle.parent == null) { + includeBuild("../plugin") } fun String.includeProject(id: String, path: String = "$this/$id") { - include(id) - project(":$id").projectDir = file(path) + include(id) + project(":$id").projectDir = file(path) } "empty".run { - includeProject("empty") - includeProject("empty.example") - includeProject("empty.test") + includeProject("empty") + includeProject("empty.example") + includeProject("empty.test") } include("stratego_format_override") diff --git a/example/stratego_format_override/build.gradle.kts b/example/stratego_format_override/build.gradle.kts index 3a431db..67ce34b 100644 --- a/example/stratego_format_override/build.gradle.kts +++ b/example/stratego_format_override/build.gradle.kts @@ -1,7 +1,7 @@ plugins { - id("org.metaborg.spoofax.gradle.langspec") + id("org.metaborg.spoofax.gradle.langspec") } spoofaxLanguageSpecification { - strategoFormat.set(org.metaborg.spoofax.meta.core.config.StrategoFormat.jar) + strategoFormat.set(org.metaborg.spoofax.meta.core.config.StrategoFormat.jar) } diff --git a/plugin/build.gradle.kts b/plugin/build.gradle.kts index 132360d..33f73bc 100644 --- a/plugin/build.gradle.kts +++ b/plugin/build.gradle.kts @@ -8,140 +8,140 @@ */ buildscript { - if(gradle.parent?.rootProject?.name == "spoofax.gradle.root") { // If standalone build, put additional plugins on the classpath. - repositories { - maven("https://artifacts.metaborg.org/content/groups/public/") + if (gradle.parent?.rootProject?.name == "spoofax.gradle.root") { // If standalone build, put additional plugins on the classpath. + repositories { + maven("https://artifacts.metaborg.org/content/groups/public/") + } + dependencies { + classpath("org.metaborg:gradle.config:0.4.8") + classpath("org.metaborg:gitonium:1.1.0") + } } - dependencies { - classpath("org.metaborg:gradle.config:0.4.8") - classpath("org.metaborg:gitonium:1.1.0") - } - } } plugins { - `java-gradle-plugin` - `kotlin-dsl` - `maven-publish` + `java-gradle-plugin` + `kotlin-dsl` + `maven-publish` } var spoofax2Version: String var spoofax2CoreDependency: String val standaloneBuild = gradle.parent?.rootProject?.name == "spoofax.gradle.root" -if(standaloneBuild) { // If standalone build, apply additional plugins and set different dependencies. - apply(plugin = "org.metaborg.gradle.config.root-project") - apply(plugin = "org.metaborg.gitonium") - spoofax2Version = System.getProperty("spoofax2Version") - spoofax2CoreDependency = "org.metaborg:org.metaborg.spoofax.core:$spoofax2Version" - // Embed Spoofax Core dependencies into the plugin so that users do not receive the transitive dependency tree. - val embedded: Configuration = configurations.create("embedded") - configurations.getByName(JavaPlugin.COMPILE_ONLY_CONFIGURATION_NAME).extendsFrom(embedded) - dependencies { - embedded("org.metaborg:org.metaborg.spoofax.meta.core:$spoofax2Version") - embedded("org.metaborg:org.metaborg.spt.core:$spoofax2Version") - } - tasks { - jar { - // Closure inside from to defer evaluation of configuration until task execution time. - from({ embedded.filter { it.exists() }.map { if(it.isDirectory) it else zipTree(it) } }) { - // Exclude signature files from dependencies, otherwise the JVM will refuse to load the created JAR file. - exclude("META-INF/*.SF", "META-INF/*.DSA", "META-INF/*.RSA") - } - // Enable zip64 to support ZIP files with more than 2^16 entries, which we need. - isZip64 = true - // Allow duplicates, as Spoofax 2 has several duplicate things on the classpath. - duplicatesStrategy = DuplicatesStrategy.INCLUDE +if (standaloneBuild) { // If standalone build, apply additional plugins and set different dependencies. + apply(plugin = "org.metaborg.gradle.config.root-project") + apply(plugin = "org.metaborg.gitonium") + spoofax2Version = System.getProperty("spoofax2Version") + spoofax2CoreDependency = "org.metaborg:org.metaborg.spoofax.core:$spoofax2Version" + // Embed Spoofax Core dependencies into the plugin so that users do not receive the transitive dependency tree. + val embedded: Configuration = configurations.create("embedded") + configurations.getByName(JavaPlugin.COMPILE_ONLY_CONFIGURATION_NAME).extendsFrom(embedded) + dependencies { + embedded("org.metaborg:org.metaborg.spoofax.meta.core:$spoofax2Version") + embedded("org.metaborg:org.metaborg.spt.core:$spoofax2Version") + } + tasks { + jar { + // Closure inside from to defer evaluation of configuration until task execution time. + from({ embedded.filter { it.exists() }.map { if (it.isDirectory) it else zipTree(it) } }) { + // Exclude signature files from dependencies, otherwise the JVM will refuse to load the created JAR file. + exclude("META-INF/*.SF", "META-INF/*.DSA", "META-INF/*.RSA") + } + // Enable zip64 to support ZIP files with more than 2^16 entries, which we need. + isZip64 = true + // Allow duplicates, as Spoofax 2 has several duplicate things on the classpath. + duplicatesStrategy = DuplicatesStrategy.INCLUDE + } } - } } else { - spoofax2Version = ext["spoofax2Version"]!!.toString() - spoofax2CoreDependency = "$group:org.metaborg.spoofax.core:$version" - dependencies { - api("$group:org.metaborg.spoofax.meta.core:$version") - api("$group:org.metaborg.spt.core:$version") - } + spoofax2Version = ext["spoofax2Version"]!!.toString() + spoofax2CoreDependency = "$group:org.metaborg.spoofax.core:$version" + dependencies { + api("$group:org.metaborg.spoofax.meta.core:$version") + api("$group:org.metaborg.spt.core:$version") + } } configure { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 } configure { - kotlinApiVersion = "1.2" - kotlinLanguageVersion = "1.2" + kotlinApiVersion = "1.2" + kotlinLanguageVersion = "1.2" } dependencies { - /* - org.metaborg.spoofax.meta.core depends on older version of several artifacts. Due to an issue in Gradle, the first - version of those artifacts that are loaded will be used by code in plugins that react to certain Gradle events, such - as Project#afterEvaluate. Since the old versions do not have certain APIs, this will fail. Therefore, we force the - versions to the latest ones. - */ - api("org.metaborg:resource:0.14.1") - api("org.metaborg:common:0.11.0") - api("org.metaborg:pie.runtime:0.21.0") + /* + org.metaborg.spoofax.meta.core depends on older version of several artifacts. Due to an issue in Gradle, the first + version of those artifacts that are loaded will be used by code in plugins that react to certain Gradle events, such + as Project#afterEvaluate. Since the old versions do not have certain APIs, this will fail. Therefore, we force the + versions to the latest ones. + */ + api("org.metaborg:resource:0.14.1") + api("org.metaborg:common:0.11.0") + api("org.metaborg:pie.runtime:0.21.0") } gradlePlugin { - plugins { - val pluginIdAffix = if(!standaloneBuild) ".devenv" else "" - create("spoofax-base") { - id = "org.metaborg$pluginIdAffix.spoofax.gradle.base" - implementationClass = "mb.spoofax.gradle.plugin.SpoofaxBasePlugin" - } - create("spoofax-language-specification") { - id = "org.metaborg$pluginIdAffix.spoofax.gradle.langspec" - implementationClass = "mb.spoofax.gradle.plugin.SpoofaxLanguageSpecificationPlugin" - } - create("spoofax-project") { - id = "org.metaborg$pluginIdAffix.spoofax.gradle.project" - implementationClass = "mb.spoofax.gradle.plugin.SpoofaxProjectPlugin" - } - create("spoofax-test") { - id = "org.metaborg$pluginIdAffix.spoofax.gradle.test" - implementationClass = "mb.spoofax.gradle.plugin.SpoofaxTestPlugin" + plugins { + val pluginIdAffix = if (!standaloneBuild) ".devenv" else "" + create("spoofax-base") { + id = "org.metaborg$pluginIdAffix.spoofax.gradle.base" + implementationClass = "mb.spoofax.gradle.plugin.SpoofaxBasePlugin" + } + create("spoofax-language-specification") { + id = "org.metaborg$pluginIdAffix.spoofax.gradle.langspec" + implementationClass = "mb.spoofax.gradle.plugin.SpoofaxLanguageSpecificationPlugin" + } + create("spoofax-project") { + id = "org.metaborg$pluginIdAffix.spoofax.gradle.project" + implementationClass = "mb.spoofax.gradle.plugin.SpoofaxProjectPlugin" + } + create("spoofax-test") { + id = "org.metaborg$pluginIdAffix.spoofax.gradle.test" + implementationClass = "mb.spoofax.gradle.plugin.SpoofaxTestPlugin" + } } - } } // Add generated resources directory as a resource source directory. val generatedResourcesDir = project.buildDir.resolve("generated/resources") sourceSets { - main { - resources { - srcDir(generatedResourcesDir) + main { + resources { + srcDir(generatedResourcesDir) + } } - } } // Task that writes properties to a config.properties file, which is used in the plugin. val propertiesFile = generatedResourcesDir.resolve("config.properties") val generatePropertiesTask = tasks.register("generateConfigProperties") { - inputs.property("spoofax2Version", spoofax2Version) - inputs.property("spoofax2CoreDependency", spoofax2CoreDependency) - outputs.file(propertiesFile) - doLast { - val properties = NonShittyProperties() - properties.setProperty("spoofax2Version", spoofax2Version) - properties.setProperty("spoofax2CoreDependency", spoofax2CoreDependency) - propertiesFile.parentFile.run { if(!exists()) mkdirs() } - propertiesFile.bufferedWriter().use { - properties.storeWithoutDate(it) + inputs.property("spoofax2Version", spoofax2Version) + inputs.property("spoofax2CoreDependency", spoofax2CoreDependency) + outputs.file(propertiesFile) + doLast { + val properties = NonShittyProperties() + properties.setProperty("spoofax2Version", spoofax2Version) + properties.setProperty("spoofax2CoreDependency", spoofax2CoreDependency) + propertiesFile.parentFile.run { if (!exists()) mkdirs() } + propertiesFile.bufferedWriter().use { + properties.storeWithoutDate(it) + } } - } } tasks.compileJava.configure { dependsOn(generatePropertiesTask) } tasks.processResources.configure { dependsOn(generatePropertiesTask) } // Custom properties class that does not write the current date, fixing incrementality. class NonShittyProperties : java.util.Properties() { - fun storeWithoutDate(writer: java.io.BufferedWriter) { - val e: java.util.Enumeration<*> = keys() - while(e.hasMoreElements()) { - val key = e.nextElement() - val value = get(key) - writer.write("$key=$value") - writer.newLine() + fun storeWithoutDate(writer: java.io.BufferedWriter) { + val e: java.util.Enumeration<*> = keys() + while (e.hasMoreElements()) { + val key = e.nextElement() + val value = get(key) + writer.write("$key=$value") + writer.newLine() + } + writer.flush() } - writer.flush() - } } From 75336c034988c7119b366f2244c55ea488d8b5bb Mon Sep 17 00:00:00 2001 From: "Daniel A. A. Pelsmaeker" Date: Tue, 9 Jul 2024 13:49:42 +0200 Subject: [PATCH 03/11] Update gradle.config plugin --- plugin/build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugin/build.gradle.kts b/plugin/build.gradle.kts index 33f73bc..322065e 100644 --- a/plugin/build.gradle.kts +++ b/plugin/build.gradle.kts @@ -13,7 +13,7 @@ buildscript { maven("https://artifacts.metaborg.org/content/groups/public/") } dependencies { - classpath("org.metaborg:gradle.config:0.4.8") + classpath("org.metaborg:gradle.config:0.7.1") classpath("org.metaborg:gitonium:1.1.0") } } From 6bcbc2a6d5476ca6680ce098023c4bb610cb3719 Mon Sep 17 00:00:00 2001 From: "Daniel A. A. Pelsmaeker" Date: Tue, 9 Jul 2024 13:49:54 +0200 Subject: [PATCH 04/11] Update to Java 17 --- plugin/build.gradle.kts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugin/build.gradle.kts b/plugin/build.gradle.kts index 322065e..09ba4c5 100644 --- a/plugin/build.gradle.kts +++ b/plugin/build.gradle.kts @@ -63,8 +63,8 @@ if (standaloneBuild) { // If standalone build, apply additional plugins and set } configure { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } configure { kotlinApiVersion = "1.2" From a5a88232641158e13de971caef113ca6db3d6d4a Mon Sep 17 00:00:00 2001 From: "Daniel A. A. Pelsmaeker" Date: Mon, 22 Jul 2024 12:54:08 +0200 Subject: [PATCH 05/11] Update gradle.config --- build.gradle.kts | 2 +- plugin/build.gradle.kts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 669361a..87aa7ed 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,4 +1,4 @@ plugins { - id("org.metaborg.gradle.config.root-project") version "0.4.8" + id("org.metaborg.gradle.config.root-project") version "0.7.3" id("org.metaborg.gitonium") version "1.2.0" } diff --git a/plugin/build.gradle.kts b/plugin/build.gradle.kts index 09ba4c5..5c5e102 100644 --- a/plugin/build.gradle.kts +++ b/plugin/build.gradle.kts @@ -13,8 +13,8 @@ buildscript { maven("https://artifacts.metaborg.org/content/groups/public/") } dependencies { - classpath("org.metaborg:gradle.config:0.7.1") classpath("org.metaborg:gitonium:1.1.0") + classpath("org.metaborg:gradle.config:0.7.3") } } } From 135d5fe8bb4ae12ef295a71143484e844f7c08aa Mon Sep 17 00:00:00 2001 From: "Daniel A. A. Pelsmaeker" Date: Mon, 22 Jul 2024 12:54:31 +0200 Subject: [PATCH 06/11] Use Java 11 --- plugin/build.gradle.kts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugin/build.gradle.kts b/plugin/build.gradle.kts index 5c5e102..33cff09 100644 --- a/plugin/build.gradle.kts +++ b/plugin/build.gradle.kts @@ -63,8 +63,8 @@ if (standaloneBuild) { // If standalone build, apply additional plugins and set } configure { - sourceCompatibility = JavaVersion.VERSION_17 - targetCompatibility = JavaVersion.VERSION_17 + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 } configure { kotlinApiVersion = "1.2" From 4ce6c362ed5cbb85dae4d0ea5743c2e89cd93e33 Mon Sep 17 00:00:00 2001 From: "Daniel A. A. Pelsmaeker" Date: Mon, 22 Jul 2024 12:54:39 +0200 Subject: [PATCH 07/11] Synchronize Gitonium version --- plugin/build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugin/build.gradle.kts b/plugin/build.gradle.kts index 33cff09..68bb1df 100644 --- a/plugin/build.gradle.kts +++ b/plugin/build.gradle.kts @@ -13,8 +13,8 @@ buildscript { maven("https://artifacts.metaborg.org/content/groups/public/") } dependencies { - classpath("org.metaborg:gitonium:1.1.0") classpath("org.metaborg:gradle.config:0.7.3") + classpath("org.metaborg:gitonium:1.2.0") } } } From 16eb39c933b22b286946e27fdcedd8bb41fda9fe Mon Sep 17 00:00:00 2001 From: "Daniel A. A. Pelsmaeker" Date: Mon, 22 Jul 2024 16:22:38 +0200 Subject: [PATCH 08/11] Update to Kotlin 1.3 --- plugin/build.gradle.kts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugin/build.gradle.kts b/plugin/build.gradle.kts index 68bb1df..53fc3f3 100644 --- a/plugin/build.gradle.kts +++ b/plugin/build.gradle.kts @@ -67,8 +67,8 @@ configure { targetCompatibility = JavaVersion.VERSION_11 } configure { - kotlinApiVersion = "1.2" - kotlinLanguageVersion = "1.2" + kotlinApiVersion = "1.3" + kotlinLanguageVersion = "1.3" } dependencies { From e7889fea3816042177b8ffc7a03e56fbdcbd9e9b Mon Sep 17 00:00:00 2001 From: "Daniel A. A. Pelsmaeker" Date: Tue, 23 Jul 2024 16:23:42 +0200 Subject: [PATCH 09/11] Use latest Spoofax 2 release --- example/empty/empty.example/metaborg.yaml | 2 +- example/empty/empty.test/metaborg.yaml | 2 +- example/empty/empty/metaborg.yaml | 2 +- example/language_contribution_addition/metaborg.yaml | 2 +- example/language_contribution_override/metaborg.yaml | 2 +- example/stratego_format_override/metaborg.yaml | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/example/empty/empty.example/metaborg.yaml b/example/empty/empty.example/metaborg.yaml index e6942ca..e3aed5b 100644 --- a/example/empty/empty.example/metaborg.yaml +++ b/example/empty/empty.example/metaborg.yaml @@ -1,7 +1,7 @@ --- id: org.metaborg:empty.example:0.1.0-SNAPSHOT name: empty -metaborgVersion: 2.6.0-SNAPSHOT +metaborgVersion: "2.5.20" dependencies: compile: - org.metaborg:empty:0.1.0-SNAPSHOT diff --git a/example/empty/empty.test/metaborg.yaml b/example/empty/empty.test/metaborg.yaml index c0795a3..b57f207 100644 --- a/example/empty/empty.test/metaborg.yaml +++ b/example/empty/empty.test/metaborg.yaml @@ -1,7 +1,7 @@ --- id: org.metaborg:empty.test:0.1.0-SNAPSHOT name: empty -metaborgVersion: 2.6.0-SNAPSHOT +metaborgVersion: "2.5.20" dependencies: compile: - org.metaborg:empty:0.1.0-SNAPSHOT diff --git a/example/empty/empty/metaborg.yaml b/example/empty/empty/metaborg.yaml index 7b95c6f..261d85a 100644 --- a/example/empty/empty/metaborg.yaml +++ b/example/empty/empty/metaborg.yaml @@ -1,7 +1,7 @@ --- id: org.metaborg:empty:0.1.0-SNAPSHOT name: empty -metaborgVersion: 2.6.0-SNAPSHOT +metaborgVersion: "2.5.20" dependencies: compile: - org.metaborg:org.metaborg.meta.lang.esv:${metaborgVersion} diff --git a/example/language_contribution_addition/metaborg.yaml b/example/language_contribution_addition/metaborg.yaml index 5ad672a..9684bff 100644 --- a/example/language_contribution_addition/metaborg.yaml +++ b/example/language_contribution_addition/metaborg.yaml @@ -1,7 +1,7 @@ --- id: org.metaborg:language_contribution_addition:0.1.0-SNAPSHOT name: language_contribution_addition -metaborgVersion: 2.6.0-SNAPSHOT +metaborgVersion: "2.5.20" contributions: - name: language_contribution_addition id: org.metaborg:language_contribution_addition:0.1.0-SNAPSHOT diff --git a/example/language_contribution_override/metaborg.yaml b/example/language_contribution_override/metaborg.yaml index 2e0d02f..508ebf3 100644 --- a/example/language_contribution_override/metaborg.yaml +++ b/example/language_contribution_override/metaborg.yaml @@ -1,7 +1,7 @@ --- id: org.metaborg:language_contribution_override:0.1.0-SNAPSHOT name: language_contribution_override -metaborgVersion: 2.6.0-SNAPSHOT +metaborgVersion: "2.5.20" contributions: - name: language_contribution_override id: org.metaborg:language_contribution_override:0.1.0-SNAPSHOT diff --git a/example/stratego_format_override/metaborg.yaml b/example/stratego_format_override/metaborg.yaml index 5123e2a..c4d3ea1 100644 --- a/example/stratego_format_override/metaborg.yaml +++ b/example/stratego_format_override/metaborg.yaml @@ -1,7 +1,7 @@ --- id: org.metaborg:stratego_format_override:0.1.0-SNAPSHOT name: stratego_format_override -metaborgVersion: 2.6.0-SNAPSHOT +metaborgVersion: "2.5.20" dependencies: compile: - org.metaborg:org.metaborg.meta.lang.esv:${metaborgVersion} From 18ab2e23e14bcbc46df790105f69c3283e71c40c Mon Sep 17 00:00:00 2001 From: "Daniel A. A. Pelsmaeker" Date: Tue, 23 Jul 2024 16:24:08 +0200 Subject: [PATCH 10/11] Revert "Use latest Spoofax 2 release" This reverts commit e7889fea3816042177b8ffc7a03e56fbdcbd9e9b. --- example/empty/empty.example/metaborg.yaml | 2 +- example/empty/empty.test/metaborg.yaml | 2 +- example/empty/empty/metaborg.yaml | 2 +- example/language_contribution_addition/metaborg.yaml | 2 +- example/language_contribution_override/metaborg.yaml | 2 +- example/stratego_format_override/metaborg.yaml | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/example/empty/empty.example/metaborg.yaml b/example/empty/empty.example/metaborg.yaml index e3aed5b..e6942ca 100644 --- a/example/empty/empty.example/metaborg.yaml +++ b/example/empty/empty.example/metaborg.yaml @@ -1,7 +1,7 @@ --- id: org.metaborg:empty.example:0.1.0-SNAPSHOT name: empty -metaborgVersion: "2.5.20" +metaborgVersion: 2.6.0-SNAPSHOT dependencies: compile: - org.metaborg:empty:0.1.0-SNAPSHOT diff --git a/example/empty/empty.test/metaborg.yaml b/example/empty/empty.test/metaborg.yaml index b57f207..c0795a3 100644 --- a/example/empty/empty.test/metaborg.yaml +++ b/example/empty/empty.test/metaborg.yaml @@ -1,7 +1,7 @@ --- id: org.metaborg:empty.test:0.1.0-SNAPSHOT name: empty -metaborgVersion: "2.5.20" +metaborgVersion: 2.6.0-SNAPSHOT dependencies: compile: - org.metaborg:empty:0.1.0-SNAPSHOT diff --git a/example/empty/empty/metaborg.yaml b/example/empty/empty/metaborg.yaml index 261d85a..7b95c6f 100644 --- a/example/empty/empty/metaborg.yaml +++ b/example/empty/empty/metaborg.yaml @@ -1,7 +1,7 @@ --- id: org.metaborg:empty:0.1.0-SNAPSHOT name: empty -metaborgVersion: "2.5.20" +metaborgVersion: 2.6.0-SNAPSHOT dependencies: compile: - org.metaborg:org.metaborg.meta.lang.esv:${metaborgVersion} diff --git a/example/language_contribution_addition/metaborg.yaml b/example/language_contribution_addition/metaborg.yaml index 9684bff..5ad672a 100644 --- a/example/language_contribution_addition/metaborg.yaml +++ b/example/language_contribution_addition/metaborg.yaml @@ -1,7 +1,7 @@ --- id: org.metaborg:language_contribution_addition:0.1.0-SNAPSHOT name: language_contribution_addition -metaborgVersion: "2.5.20" +metaborgVersion: 2.6.0-SNAPSHOT contributions: - name: language_contribution_addition id: org.metaborg:language_contribution_addition:0.1.0-SNAPSHOT diff --git a/example/language_contribution_override/metaborg.yaml b/example/language_contribution_override/metaborg.yaml index 508ebf3..2e0d02f 100644 --- a/example/language_contribution_override/metaborg.yaml +++ b/example/language_contribution_override/metaborg.yaml @@ -1,7 +1,7 @@ --- id: org.metaborg:language_contribution_override:0.1.0-SNAPSHOT name: language_contribution_override -metaborgVersion: "2.5.20" +metaborgVersion: 2.6.0-SNAPSHOT contributions: - name: language_contribution_override id: org.metaborg:language_contribution_override:0.1.0-SNAPSHOT diff --git a/example/stratego_format_override/metaborg.yaml b/example/stratego_format_override/metaborg.yaml index c4d3ea1..5123e2a 100644 --- a/example/stratego_format_override/metaborg.yaml +++ b/example/stratego_format_override/metaborg.yaml @@ -1,7 +1,7 @@ --- id: org.metaborg:stratego_format_override:0.1.0-SNAPSHOT name: stratego_format_override -metaborgVersion: "2.5.20" +metaborgVersion: 2.6.0-SNAPSHOT dependencies: compile: - org.metaborg:org.metaborg.meta.lang.esv:${metaborgVersion} From cee20fc954ee8e5e923860621ef877aa5a3cb5d0 Mon Sep 17 00:00:00 2001 From: "Daniel A. A. Pelsmaeker" Date: Wed, 24 Jul 2024 16:49:08 +0200 Subject: [PATCH 11/11] Update to Spoofax 2.5.21 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 8f1fce5..16190e0 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,3 +1,3 @@ # These properties are only used when this repository is built stand-alone, outside of devenv. org.gradle.jvmargs=-Xms512M -Xmx2G -Xss8M -systemProp.spoofax2Version=2.5.20 +systemProp.spoofax2Version=2.5.21