From a22b7fc18d7ce6e4f45ddfde89b3238a7fae1803 Mon Sep 17 00:00:00 2001 From: shedaniel Date: Thu, 16 Jun 2022 18:39:38 +0800 Subject: [PATCH 1/2] Publish jars with the loader suffix, fix testmod-common circular dependency --- fabric/build.gradle | 12 +++++++++++- forge/build.gradle | 12 +++++++++++- testmod-common/build.gradle | 2 +- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/fabric/build.gradle b/fabric/build.gradle index 966ae070..5500b7f2 100644 --- a/fabric/build.gradle +++ b/fabric/build.gradle @@ -55,6 +55,16 @@ remapJar { classifier null } +task renameJarForPublication(type: Zip, dependsOn: remapJar) { + from remapJar.archiveFile.map { zipTree(it) } + extension "jar" + metadataCharset "UTF-8" + destinationDirectory = base.libsDirectory + classifier project.name +} + +assemble.dependsOn renameJarForPublication + jar { classifier "dev" } @@ -105,7 +115,7 @@ unifiedPublishing { changelog = releaseChangelog() gameVersions = ["1.18.2"] gameLoaders = ["fabric", "quilt"] - mainPublication remapJar + mainPublication renameJarForPublication relations { depends { curseforge = "fabric-api" diff --git a/forge/build.gradle b/forge/build.gradle index b5a8dff0..90a0b864 100644 --- a/forge/build.gradle +++ b/forge/build.gradle @@ -68,6 +68,16 @@ remapJar { classifier null } +task renameJarForPublication(type: Zip, dependsOn: remapJar) { + from remapJar.archiveFile.map { zipTree(it) } + extension "jar" + metadataCharset "UTF-8" + destinationDirectory = base.libsDirectory + classifier project.name +} + +assemble.dependsOn renameJarForPublication + jar { classifier "dev" } @@ -118,7 +128,7 @@ unifiedPublishing { changelog = releaseChangelog() gameVersions = ["1.18.2"] gameLoaders = ["forge"] - mainPublication remapJar + mainPublication renameJarForPublication var CURSE_API_KEY = project.findProperty("CURSE_API_KEY") ?: System.getenv("CURSE_API_KEY") if (CURSE_API_KEY != null) { diff --git a/testmod-common/build.gradle b/testmod-common/build.gradle index 94d51010..8b7e33cc 100644 --- a/testmod-common/build.gradle +++ b/testmod-common/build.gradle @@ -2,7 +2,7 @@ dependencies { // We depend on fabric loader here to use the fabric @Environment annotations // Do NOT use other classes from fabric loader modImplementation "net.fabricmc:fabric-loader:${rootProject.fabric_loader_version}" - implementation project(":common") + implementation project(path: ":common", configuration: "namedElements") } architectury { From 17735f090be0575637a10fcadbf9e56486d18f4e Mon Sep 17 00:00:00 2001 From: shedaniel Date: Thu, 16 Jun 2022 18:44:13 +0800 Subject: [PATCH 2/2] Update Forge mods.toml automatically --- forge/build.gradle | 11 ++++++++ forge/mods.toml | 29 +++++++++++++++++++++ forge/src/main/resources/META-INF/mods.toml | 4 +-- 3 files changed, 42 insertions(+), 2 deletions(-) create mode 100644 forge/mods.toml diff --git a/forge/build.gradle b/forge/build.gradle index 90a0b864..40db0b68 100644 --- a/forge/build.gradle +++ b/forge/build.gradle @@ -149,3 +149,14 @@ unifiedPublishing { } } } + +// Update mods.toml with the new versions automatically +// Not using processResources because it is easier to do this manually, and see it reflected immediately +afterEvaluate { + file("src/main/resources/META-INF/mods.toml").withOutputStream { + it << file("mods.toml").text + .replaceAll("@LOADER_MAJOR@", rootProject.forge_version.split("\\.")[0]) + .replaceAll("@MINECRAFT_VERSION@", rootProject.architectury.minecraft) + .replaceAll("@FORGE_VERSION@", rootProject.forge_version) + } +} diff --git a/forge/mods.toml b/forge/mods.toml new file mode 100644 index 00000000..16817649 --- /dev/null +++ b/forge/mods.toml @@ -0,0 +1,29 @@ +modLoader = "javafml" +loaderVersion = "[@LOADER_MAJOR@,)" +issueTrackerURL = "https://github.com/shedaniel/architectury/issues" +license = "GNU LGPLv3" + +[[mods]] +modId = "architectury" +version = "${version}" +displayName = "Architectury" +authors = "shedaniel" +description = ''' +A intermediary api aimed to ease developing multiplatform mods. +''' +logoFile = "icon.png" +license = "LGPL-3" + +[[dependencies.architectury]] +modId = "minecraft" +mandatory = true +versionRange = "[@MINECRAFT_VERSION@,)" +ordering = "NONE" +side = "BOTH" + +[[dependencies.architectury]] +modId = "forge" +mandatory = true +versionRange = "[@FORGE_VERSION@,)" +ordering = "NONE" +side = "BOTH" diff --git a/forge/src/main/resources/META-INF/mods.toml b/forge/src/main/resources/META-INF/mods.toml index 5e48548d..6897f7ed 100644 --- a/forge/src/main/resources/META-INF/mods.toml +++ b/forge/src/main/resources/META-INF/mods.toml @@ -1,5 +1,5 @@ modLoader = "javafml" -loaderVersion = "[38,)" +loaderVersion = "[40,)" issueTrackerURL = "https://github.com/shedaniel/architectury/issues" license = "GNU LGPLv3" @@ -24,6 +24,6 @@ side = "BOTH" [[dependencies.architectury]] modId = "forge" mandatory = true -versionRange = "[38.0.17,)" +versionRange = "[40.1.14,)" ordering = "NONE" side = "BOTH"