diff --git a/BlueMapCore/build.gradle.kts b/BlueMapCore/build.gradle.kts index af6acf28..bca4785b 100644 --- a/BlueMapCore/build.gradle.kts +++ b/BlueMapCore/build.gradle.kts @@ -1,4 +1,3 @@ -import java.util.Properties import java.io.IOException plugins { @@ -23,23 +22,17 @@ fun String.runCommand(): String = ProcessBuilder(split("\\s(?=(?:[^'\"`]*(['\"`] val gitHash = "git rev-parse --verify HEAD".runCommand() val clean = "git status --porcelain".runCommand().isEmpty() -val branch = "git rev-parse --abbrev-ref HEAD".runCommand() -val commitCount = "git rev-list --count HEAD".runCommand() - -if (branch.isEmpty()) { - throw IllegalStateException("Could not determine branch name") -} - +val lastTag = "git describe --tags --abbrev=0".runCommand() +val lastVersion = lastTag.substring(1) // remove the leading 'v' +val commits = "git rev-list --count $lastTag..HEAD".runCommand() println("Git hash: $gitHash" + if (clean) "" else " (dirty)") -println("Branch: $branch") - -val releaseProperties = Properties() -releaseProperties.load(file("../release.properties").inputStream()) group = "de.bluecolored.bluemap.core" -version = releaseProperties["version"].toString() + ".$commitCount" + - (if (clean) "" else ".dirty") + - (if (branch == "master") "" else "-$branch") +version = lastVersion + + (if (commits == "0") "" else "-$commits") + + (if (clean) "" else "-dirty") + +System.setProperty("bluemap.version", version.toString()) println("Version: $version") val javaTarget = 11 diff --git a/implementations/cli/build.gradle.kts b/implementations/cli/build.gradle.kts index ab692e18..26d237ea 100644 --- a/implementations/cli/build.gradle.kts +++ b/implementations/cli/build.gradle.kts @@ -1,22 +1,13 @@ -import java.util.Properties - plugins { java `java-library` id("com.diffplug.spotless") version "6.1.2" - id ("com.palantir.git-version") version "0.12.3" id ("com.github.node-gradle.node") version "3.0.1" id ("com.github.johnrengelman.shadow") version "7.1.2" } -val versionDetails: groovy.lang.Closure by extra -val git = versionDetails() - -val releaseProperties = Properties() -releaseProperties.load(file("../../release.properties").inputStream()) - group = "de.bluecolored.bluemap.cli" -version = releaseProperties["version"].toString() +version = "0.0.0" val javaTarget = 11 java { @@ -79,8 +70,9 @@ tasks.jar { } tasks.shadowJar { + val version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") //relocate ("com.flowpowered.math", "de.bluecolored.shadow.flowpowered.math") //DON"T relocate this, because the API depends on it relocate ("com.google", "de.bluecolored.shadow.google") diff --git a/implementations/fabric-1.15.2/build.gradle.kts b/implementations/fabric-1.15.2/build.gradle.kts index b22bddad..16186e79 100644 --- a/implementations/fabric-1.15.2/build.gradle.kts +++ b/implementations/fabric-1.15.2/build.gradle.kts @@ -1,24 +1,16 @@ -import java.util.Properties import net.fabricmc.loom.task.RemapJarTask plugins { java `java-library` id("com.diffplug.spotless") version "6.1.2" - id ("com.palantir.git-version") version "0.12.3" id ("com.github.node-gradle.node") version "3.0.1" id ("com.github.johnrengelman.shadow") version "7.1.2" id ("fabric-loom") version "0.12-SNAPSHOT" } -val versionDetails: groovy.lang.Closure by extra -val git = versionDetails() - -val releaseProperties = Properties() -releaseProperties.load(file("../../release.properties").inputStream()) - group = "de.bluecolored.bluemap.fabric" -version = releaseProperties["version"].toString() +version = "0.0.0" val javaTarget = 11 java { @@ -126,8 +118,9 @@ tasks.shadowJar { } tasks.register("remappedShadowJar", type = RemapJarTask::class) { + val version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") dependsOn (tasks.shadowJar) inputFile.set(tasks.shadowJar.get().archiveFile) addNestedDependencies.set(true) diff --git a/implementations/fabric-1.16.1/build.gradle.kts b/implementations/fabric-1.16.1/build.gradle.kts index 99d76827..a19c61bb 100644 --- a/implementations/fabric-1.16.1/build.gradle.kts +++ b/implementations/fabric-1.16.1/build.gradle.kts @@ -1,24 +1,16 @@ -import java.util.Properties import net.fabricmc.loom.task.RemapJarTask plugins { java `java-library` id("com.diffplug.spotless") version "6.1.2" - id ("com.palantir.git-version") version "0.12.3" id ("com.github.node-gradle.node") version "3.0.1" id ("com.github.johnrengelman.shadow") version "7.1.2" id ("fabric-loom") version "0.12-SNAPSHOT" } -val versionDetails: groovy.lang.Closure by extra -val git = versionDetails() - -val releaseProperties = Properties() -releaseProperties.load(file("../../release.properties").inputStream()) - group = "de.bluecolored.bluemap.fabric" -version = releaseProperties["version"].toString() +version = "0.0.0" val javaTarget = 11 java { @@ -126,8 +118,9 @@ tasks.shadowJar { } tasks.register("remappedShadowJar", type = RemapJarTask::class) { + val version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") dependsOn (tasks.shadowJar) inputFile.set(tasks.shadowJar.get().archiveFile) addNestedDependencies.set(true) diff --git a/implementations/fabric-1.16.2/build.gradle.kts b/implementations/fabric-1.16.2/build.gradle.kts index aa52e747..9c4f8346 100644 --- a/implementations/fabric-1.16.2/build.gradle.kts +++ b/implementations/fabric-1.16.2/build.gradle.kts @@ -1,24 +1,16 @@ -import java.util.Properties import net.fabricmc.loom.task.RemapJarTask plugins { java `java-library` id("com.diffplug.spotless") version "6.1.2" - id ("com.palantir.git-version") version "0.12.3" id ("com.github.node-gradle.node") version "3.0.1" id ("com.github.johnrengelman.shadow") version "7.1.2" id ("fabric-loom") version "0.12-SNAPSHOT" } -val versionDetails: groovy.lang.Closure by extra -val git = versionDetails() - -val releaseProperties = Properties() -releaseProperties.load(file("../../release.properties").inputStream()) - group = "de.bluecolored.bluemap.fabric" -version = releaseProperties["version"].toString() +version = "0.0.0" val javaTarget = 11 java { @@ -126,8 +118,9 @@ tasks.shadowJar { } tasks.register("remappedShadowJar", type = RemapJarTask::class) { + val version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") dependsOn (tasks.shadowJar) inputFile.set(tasks.shadowJar.get().archiveFile) addNestedDependencies.set(true) diff --git a/implementations/fabric-1.17/build.gradle.kts b/implementations/fabric-1.17/build.gradle.kts index 00c3efe2..165d50a2 100644 --- a/implementations/fabric-1.17/build.gradle.kts +++ b/implementations/fabric-1.17/build.gradle.kts @@ -1,24 +1,16 @@ -import java.util.Properties import net.fabricmc.loom.task.RemapJarTask plugins { java `java-library` id("com.diffplug.spotless") version "6.1.2" - id ("com.palantir.git-version") version "0.12.3" id ("com.github.node-gradle.node") version "3.0.1" id ("com.github.johnrengelman.shadow") version "7.1.2" id ("fabric-loom") version "0.12-SNAPSHOT" } -val versionDetails: groovy.lang.Closure by extra -val git = versionDetails() - -val releaseProperties = Properties() -releaseProperties.load(file("../../release.properties").inputStream()) - group = "de.bluecolored.bluemap.fabric" -version = releaseProperties["version"].toString() +version = "0.0.0" val javaTarget = 16 java { @@ -126,8 +118,9 @@ tasks.shadowJar { } tasks.register("remappedShadowJar", type = RemapJarTask::class) { + val version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") dependsOn (tasks.shadowJar) inputFile.set(tasks.shadowJar.get().archiveFile) addNestedDependencies.set(true) diff --git a/implementations/fabric-1.18/build.gradle.kts b/implementations/fabric-1.18/build.gradle.kts index a1793b05..1fe681c4 100644 --- a/implementations/fabric-1.18/build.gradle.kts +++ b/implementations/fabric-1.18/build.gradle.kts @@ -1,24 +1,16 @@ -import java.util.Properties import net.fabricmc.loom.task.RemapJarTask plugins { java `java-library` id("com.diffplug.spotless") version "6.1.2" - id ("com.palantir.git-version") version "0.12.3" id ("com.github.node-gradle.node") version "3.0.1" id ("com.github.johnrengelman.shadow") version "7.1.2" id ("fabric-loom") version "0.12-SNAPSHOT" } -val versionDetails: groovy.lang.Closure by extra -val git = versionDetails() - -val releaseProperties = Properties() -releaseProperties.load(file("../../release.properties").inputStream()) - group = "de.bluecolored.bluemap.fabric" -version = releaseProperties["version"].toString() +version = "0.0.0" val javaTarget = 17 java { @@ -126,8 +118,9 @@ tasks.shadowJar { } tasks.register("remappedShadowJar", type = RemapJarTask::class) { + val version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") dependsOn (tasks.shadowJar) inputFile.set(tasks.shadowJar.get().archiveFile) addNestedDependencies.set(true) diff --git a/implementations/fabric-1.19/build.gradle.kts b/implementations/fabric-1.19/build.gradle.kts index af394b3f..e268f0c9 100644 --- a/implementations/fabric-1.19/build.gradle.kts +++ b/implementations/fabric-1.19/build.gradle.kts @@ -1,24 +1,16 @@ -import java.util.Properties import net.fabricmc.loom.task.RemapJarTask plugins { java `java-library` id("com.diffplug.spotless") version "6.1.2" - id ("com.palantir.git-version") version "0.12.3" id ("com.github.node-gradle.node") version "3.0.1" id ("com.github.johnrengelman.shadow") version "7.1.2" id ("fabric-loom") version "0.12-SNAPSHOT" } -val versionDetails: groovy.lang.Closure by extra -val git = versionDetails() - -val releaseProperties = Properties() -releaseProperties.load(file("../../release.properties").inputStream()) - group = "de.bluecolored.bluemap.fabric" -version = releaseProperties["version"].toString() +version = "0.0.0" val javaTarget = 17 java { @@ -126,8 +118,9 @@ tasks.shadowJar { } tasks.register("remappedShadowJar", type = RemapJarTask::class) { + val version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") dependsOn (tasks.shadowJar) inputFile.set(tasks.shadowJar.get().archiveFile) addNestedDependencies.set(true) diff --git a/implementations/forge-1.14.4/build.gradle b/implementations/forge-1.14.4/build.gradle index f8f41ee3..e94a5b48 100644 --- a/implementations/forge-1.14.4/build.gradle +++ b/implementations/forge-1.14.4/build.gradle @@ -13,20 +13,14 @@ plugins { id "java" id "java-library" id "com.diffplug.spotless" version "6.1.2" - id "com.palantir.git-version" version "0.12.3" id "com.github.node-gradle.node" version "3.0.1" id "com.github.johnrengelman.shadow" version "7.1.2" } apply plugin: "net.minecraftforge.gradle" -def git = versionDetails() - -def releaseProperties = new Properties() -releaseProperties.load(new FileInputStream(file("../../release.properties"))) - group = "de.bluecolored.bluemap.forge" -version = releaseProperties.version.toString() +version = "0.0.0" archivesBaseName = 'bluemap' def javaTarget = 11 @@ -125,8 +119,10 @@ test { } shadowJar { + def version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") + configurations = [project.configurations.shadowInclude] //relocate ("com.flowpowered.math", "de.bluecolored.shadow.flowpowered.math") //DON"T relocate this, because the API depends on it diff --git a/implementations/forge-1.15.2/build.gradle b/implementations/forge-1.15.2/build.gradle index 35e87ddd..2eac6b55 100644 --- a/implementations/forge-1.15.2/build.gradle +++ b/implementations/forge-1.15.2/build.gradle @@ -13,20 +13,14 @@ plugins { id "java" id "java-library" id "com.diffplug.spotless" version "6.1.2" - id "com.palantir.git-version" version "0.12.3" id "com.github.node-gradle.node" version "3.0.1" id "com.github.johnrengelman.shadow" version "7.1.2" } apply plugin: "net.minecraftforge.gradle" -def git = versionDetails() - -def releaseProperties = new Properties() -releaseProperties.load(new FileInputStream(file("../../release.properties"))) - group = "de.bluecolored.bluemap.forge" -version = releaseProperties.version.toString() +version = "0.0.0" archivesBaseName = 'bluemap' def javaTarget = 11 @@ -125,8 +119,10 @@ test { } shadowJar { + def version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") + configurations = [project.configurations.shadowInclude] //relocate ("com.flowpowered.math", "de.bluecolored.shadow.flowpowered.math") //DON"T relocate this, because the API depends on it diff --git a/implementations/forge-1.16.2/build.gradle b/implementations/forge-1.16.2/build.gradle index 1a8b1375..295dfb33 100644 --- a/implementations/forge-1.16.2/build.gradle +++ b/implementations/forge-1.16.2/build.gradle @@ -13,20 +13,14 @@ plugins { id "java" id "java-library" id "com.diffplug.spotless" version "6.1.2" - id "com.palantir.git-version" version "0.12.3" id "com.github.node-gradle.node" version "3.0.1" id "com.github.johnrengelman.shadow" version "7.1.2" } apply plugin: "net.minecraftforge.gradle" -def git = versionDetails() - -def releaseProperties = new Properties() -releaseProperties.load(new FileInputStream(file("../../release.properties"))) - group = "de.bluecolored.bluemap.forge" -version = releaseProperties.version.toString() +version = "0.0.0" archivesBaseName = 'bluemap' def javaTarget = 11 @@ -125,8 +119,10 @@ test { } shadowJar { + def version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") + configurations = [project.configurations.shadowInclude] //relocate ("com.flowpowered.math", "de.bluecolored.shadow.flowpowered.math") //DON"T relocate this, because the API depends on it diff --git a/implementations/forge-1.17.1/build.gradle b/implementations/forge-1.17.1/build.gradle index af751c10..d66c3905 100644 --- a/implementations/forge-1.17.1/build.gradle +++ b/implementations/forge-1.17.1/build.gradle @@ -13,20 +13,14 @@ plugins { id "java" id "java-library" id "com.diffplug.spotless" version "6.1.2" - id "com.palantir.git-version" version "0.12.3" id "com.github.node-gradle.node" version "3.0.1" id "com.github.johnrengelman.shadow" version "7.1.2" } apply plugin: "net.minecraftforge.gradle" -def git = versionDetails() - -def releaseProperties = new Properties() -releaseProperties.load(new FileInputStream(file("../../release.properties"))) - group = "de.bluecolored.bluemap.forge" -version = releaseProperties.version.toString() +version = "0.0.0" archivesBaseName = 'bluemap' def javaTarget = 16 @@ -125,8 +119,10 @@ test { } shadowJar { + def version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") + configurations = [project.configurations.shadowInclude] //relocate ("com.flowpowered.math", "de.bluecolored.shadow.flowpowered.math") //DON"T relocate this, because the API depends on it diff --git a/implementations/forge-1.18.1/build.gradle b/implementations/forge-1.18.1/build.gradle index b090928e..7b911b89 100644 --- a/implementations/forge-1.18.1/build.gradle +++ b/implementations/forge-1.18.1/build.gradle @@ -13,20 +13,14 @@ plugins { id "java" id "java-library" id "com.diffplug.spotless" version "6.1.2" - id "com.palantir.git-version" version "0.12.3" id "com.github.node-gradle.node" version "3.0.1" id "com.github.johnrengelman.shadow" version "7.1.2" } apply plugin: "net.minecraftforge.gradle" -def git = versionDetails() - -def releaseProperties = new Properties() -releaseProperties.load(new FileInputStream(file("../../release.properties"))) - group = "de.bluecolored.bluemap.forge" -version = releaseProperties.version.toString() +version = "0.0.0" archivesBaseName = 'bluemap' def javaTarget = 17 @@ -125,8 +119,10 @@ test { } shadowJar { + def version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") + configurations = [project.configurations.shadowInclude] //relocate ("com.flowpowered.math", "de.bluecolored.shadow.flowpowered.math") //DON"T relocate this, because the API depends on it diff --git a/implementations/forge-1.19/build.gradle b/implementations/forge-1.19/build.gradle index 46dd2fed..1b1eee69 100644 --- a/implementations/forge-1.19/build.gradle +++ b/implementations/forge-1.19/build.gradle @@ -13,20 +13,14 @@ plugins { id "java" id "java-library" id "com.diffplug.spotless" version "6.1.2" - id "com.palantir.git-version" version "0.12.3" id "com.github.node-gradle.node" version "3.0.1" id "com.github.johnrengelman.shadow" version "7.1.2" } apply plugin: "net.minecraftforge.gradle" -def git = versionDetails() - -def releaseProperties = new Properties() -releaseProperties.load(new FileInputStream(file("../../release.properties"))) - group = "de.bluecolored.bluemap.forge" -version = releaseProperties.version.toString() +version = "0.0.0" archivesBaseName = 'bluemap' def javaTarget = 17 @@ -125,8 +119,10 @@ test { } shadowJar { + def version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") + configurations = [project.configurations.shadowInclude] //relocate ("com.flowpowered.math", "de.bluecolored.shadow.flowpowered.math") //DON"T relocate this, because the API depends on it diff --git a/implementations/spigot/build.gradle.kts b/implementations/spigot/build.gradle.kts index 7c0b4c52..72057b42 100644 --- a/implementations/spigot/build.gradle.kts +++ b/implementations/spigot/build.gradle.kts @@ -1,22 +1,13 @@ -import java.util.Properties - plugins { java `java-library` id("com.diffplug.spotless") version "6.1.2" - id ("com.palantir.git-version") version "0.12.3" id ("com.github.node-gradle.node") version "3.0.1" id ("com.github.johnrengelman.shadow") version "7.1.2" } -val versionDetails: groovy.lang.Closure by extra -val git = versionDetails() - -val releaseProperties = Properties() -releaseProperties.load(file("../../release.properties").inputStream()) - group = "de.bluecolored.bluemap.bukkit" -version = releaseProperties["version"].toString() +version = "0.0.0" val javaTarget = 11 java { @@ -94,8 +85,9 @@ tasks.processResources { } tasks.shadowJar { + val version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") //relocate ("com.flowpowered.math", "de.bluecolored.shadow.flowpowered.math") //DON"T relocate this, because the API depends on it relocate ("com.typesafe.config", "de.bluecolored.shadow.typesafe.config") diff --git a/implementations/sponge-8.0.0/build.gradle.kts b/implementations/sponge-8.0.0/build.gradle.kts index e53bb032..3148f6d3 100644 --- a/implementations/sponge-8.0.0/build.gradle.kts +++ b/implementations/sponge-8.0.0/build.gradle.kts @@ -1,24 +1,16 @@ -import java.util.Properties import org.spongepowered.gradle.plugin.config.PluginLoaders plugins { java `java-library` id("com.diffplug.spotless") version "6.1.2" - id ("com.palantir.git-version") version "0.12.3" id ("com.github.node-gradle.node") version "3.0.1" id ("com.github.johnrengelman.shadow") version "7.1.2" id ("org.spongepowered.gradle.plugin") version "2.0.0" } -val versionDetails: groovy.lang.Closure by extra -val git = versionDetails() - -val releaseProperties = Properties() -releaseProperties.load(file("../../release.properties").inputStream()) - group = "de.bluecolored.bluemap.bukkit" -version = releaseProperties["version"].toString() +version = "0.0.0" val javaTarget = 16 java { @@ -110,8 +102,9 @@ tasks.processResources { } tasks.shadowJar { + val version = System.getProperty("bluemap.version") ?: "" // set by BlueMapCore destinationDirectory.set(file("../../build/release")) - archiveFileName.set("BlueMap-${archiveVersion.get()}-${project.name}.jar") + archiveFileName.set("BlueMap-${version}-${project.name}.jar") //relocate ("com.flowpowered.math", "de.bluecolored.shadow.flowpowered.math") //DON"T relocate this, because the API depends on it relocate ("net.querz.nbt", "de.bluecolored.shadow.querz.nbt")