From 30a1da2038481f8f02ddf4e45d31d2721b20a482 Mon Sep 17 00:00:00 2001 From: Cat Core Date: Sat, 18 Nov 2023 21:31:14 +0100 Subject: [PATCH 1/2] Add biny mappings support and prefer using glassLauncher over simple babric maven --- .../unimined/api/UniminedExtension.kt | 2 ++ .../unimined/api/mapping/MappingsConfig.kt | 17 +++++++++++++++++ .../unimined/UniminedExtensionImpl.kt | 15 ++++++++++----- .../internal/mapping/MappingsProvider.kt | 14 ++++++++++++-- .../patch/fabric/BabricMinecraftTransformer.kt | 2 +- 5 files changed, 42 insertions(+), 8 deletions(-) diff --git a/src/api/kotlin/xyz/wagyourtail/unimined/api/UniminedExtension.kt b/src/api/kotlin/xyz/wagyourtail/unimined/api/UniminedExtension.kt index 087e5c9b..1b7b82af 100644 --- a/src/api/kotlin/xyz/wagyourtail/unimined/api/UniminedExtension.kt +++ b/src/api/kotlin/xyz/wagyourtail/unimined/api/UniminedExtension.kt @@ -138,7 +138,9 @@ abstract class UniminedExtension(val project: Project) { abstract fun wagYourMaven(name: String) abstract fun mcphackersIvy() abstract fun quiltMaven() + @Deprecated("Use glassLauncherMaven(\"babric\") instead", ReplaceWith("glassLauncherMaven(\"babric\")")) abstract fun babricMaven() + abstract fun glassLauncherMaven(name: String) abstract fun parchmentMaven() abstract fun neoForgedMaven() diff --git a/src/api/kotlin/xyz/wagyourtail/unimined/api/mapping/MappingsConfig.kt b/src/api/kotlin/xyz/wagyourtail/unimined/api/mapping/MappingsConfig.kt index f905b8eb..de44dcc3 100644 --- a/src/api/kotlin/xyz/wagyourtail/unimined/api/mapping/MappingsConfig.kt +++ b/src/api/kotlin/xyz/wagyourtail/unimined/api/mapping/MappingsConfig.kt @@ -341,6 +341,23 @@ abstract class MappingsConfig(val project: Project, val minecraft: MinecraftConf barn(build.toInt(), key, action) } + @JvmOverloads + abstract fun biny(commitName: String, key: String = "yarn", action: MappingDepConfig.() -> Unit = {}) + + @JvmOverloads + fun biny( + commitName: String, + key: String = "yarn", + @DelegatesTo(value = MappingDepConfig::class, strategy = Closure.DELEGATE_FIRST) + action: Closure<*> + ) { + biny(commitName, key) { + action.delegate = this + action.resolveStrategy = Closure.DELEGATE_FIRST + action.call() + } + } + @JvmOverloads abstract fun quilt(build: Int, classifier: String = "intermediary-v2", key: String = "quilt", action: MappingDepConfig.() -> Unit = {}) diff --git a/src/main/kotlin/xyz/wagyourtail/unimined/UniminedExtensionImpl.kt b/src/main/kotlin/xyz/wagyourtail/unimined/UniminedExtensionImpl.kt index 222ca507..92770aeb 100644 --- a/src/main/kotlin/xyz/wagyourtail/unimined/UniminedExtensionImpl.kt +++ b/src/main/kotlin/xyz/wagyourtail/unimined/UniminedExtensionImpl.kt @@ -196,15 +196,20 @@ open class UniminedExtensionImpl(project: Project) : UniminedExtension(project) project.logger.info("[Unimined] adding quilt maven: $quiltMaven") } - val babricMaven by lazy { + @Deprecated("Use glassLauncherMaven(\"babric\") instead", ReplaceWith("glassLauncherMaven(\"babric\")")) + override fun babricMaven() { + glassLauncherMaven("babric") + } + + val glassLauncherMaven = defaultedMapOf { name -> project.repositories.maven { - it.name = "babric" - it.url = URI.create("https://maven.glass-launcher.net/babric/") + it.name = "Glass (${name.capitalized()})" + it.url = URI.create("https://maven.glass-launcher.net/$name/") } } - override fun babricMaven() { - project.logger.info("[Unimined] adding babric maven: $babricMaven") + override fun glassLauncherMaven(name: String) { + project.logger.info("[Unimined] adding glass launcher maven: ${glassLauncherMaven[name]}") } val wagYourMaven = defaultedMapOf { name -> diff --git a/src/mapping/kotlin/xyz/wagyourtail/unimined/internal/mapping/MappingsProvider.kt b/src/mapping/kotlin/xyz/wagyourtail/unimined/internal/mapping/MappingsProvider.kt index 60a5bb97..050dca72 100644 --- a/src/mapping/kotlin/xyz/wagyourtail/unimined/internal/mapping/MappingsProvider.kt +++ b/src/mapping/kotlin/xyz/wagyourtail/unimined/internal/mapping/MappingsProvider.kt @@ -87,7 +87,7 @@ class MappingsProvider(project: Project, minecraft: MinecraftConfig): MappingsCo } override fun babricIntermediary(key: String, action: MappingDepConfig.() -> Unit) { - project.unimined.babricMaven() + project.unimined.glassLauncherMaven("babric") if (side != EnvType.COMBINED) { mapping("babric:intermediary:${minecraft.version}:v2", key) { mapNamespace(side.classifier!!, "official") @@ -267,7 +267,7 @@ class MappingsProvider(project: Project, minecraft: MinecraftConfig): MappingsCo } override fun barn(build: Int, key: String, action: MappingDepConfig.() -> Unit) { - project.unimined.babricMaven() + project.unimined.glassLauncherMaven("babric") mapping("babric:barn:${minecraft.version}+build.${build}:v2", "yarn") { outputs("barn", true) { listOf("intermediary") } mapNamespace("named", "barn") @@ -276,6 +276,16 @@ class MappingsProvider(project: Project, minecraft: MinecraftConfig): MappingsCo } } + override fun biny(commitName: String, key: String, action: MappingDepConfig.() -> Unit) { + project.unimined.glassLauncherMaven("releases") + mapping("net.glasslauncher:biny:${minecraft.version}+${commitName}:v2", "yarn") { + outputs("biny", true) { listOf("intermediary") } + mapNamespace("named", "biny") + sourceNamespace("intermediary") + action() + } + } + override fun quilt(build: Int, classifier: String, key: String, action: MappingDepConfig.() -> Unit) { project.unimined.quiltMaven() mapping("org.quiltmc:quilt-mappings:${minecraft.version}+build.${build}:${classifier}", "quilt") { diff --git a/src/minecraft/kotlin/xyz/wagyourtail/unimined/internal/minecraft/patch/fabric/BabricMinecraftTransformer.kt b/src/minecraft/kotlin/xyz/wagyourtail/unimined/internal/minecraft/patch/fabric/BabricMinecraftTransformer.kt index e381406a..9a526dc0 100644 --- a/src/minecraft/kotlin/xyz/wagyourtail/unimined/internal/minecraft/patch/fabric/BabricMinecraftTransformer.kt +++ b/src/minecraft/kotlin/xyz/wagyourtail/unimined/internal/minecraft/patch/fabric/BabricMinecraftTransformer.kt @@ -60,7 +60,7 @@ class BabricMinecraftTransformer(project: Project, provider: MinecraftProvider): override fun addMavens() { super.addMavens() - project.unimined.babricMaven() + project.unimined.glassLauncherMaven("babric") } override val includeGlobs: List From 785ab1465c08975c32a87570abc43943201d622d Mon Sep 17 00:00:00 2001 From: Cat Core Date: Sat, 18 Nov 2023 21:41:48 +0100 Subject: [PATCH 2/2] Update Babric test mod --- testing/b1.7.3-Babric-Modloader/build.gradle | 27 ++++---------------- 1 file changed, 5 insertions(+), 22 deletions(-) diff --git a/testing/b1.7.3-Babric-Modloader/build.gradle b/testing/b1.7.3-Babric-Modloader/build.gradle index 438ea0f0..d807e358 100644 --- a/testing/b1.7.3-Babric-Modloader/build.gradle +++ b/testing/b1.7.3-Babric-Modloader/build.gradle @@ -24,18 +24,6 @@ sourceSets { } } -tasks.register("babricJar", Jar) { - from sourceSets.babric.output, sourceSets.main.output - - archiveClassifier = "babric" -} - -tasks.register("modloaderJar", Jar) { - from sourceSets.modloader.output, sourceSets.main.output - - archiveClassifier = "modloader" -} - repositories { mavenLocal() maven { @@ -50,7 +38,7 @@ unimined.minecraft() { mappings { babricIntermediary() - barn(9) + biny("a00e3b0") } minecraftRemapper.config { @@ -64,11 +52,11 @@ unimined.minecraft(sourceSets.babric) { version "b1.7.3" mappings { - barn(9) + biny("a00e3b0") } babric { - loader "0.14.19-babric.1" + loader "0.14.24-babric.1" } minecraftRemapper.config { @@ -105,15 +93,10 @@ jar { enabled = false } - -processResources { +processBabricResources { inputs.property "version", project.version - filesMatching("META-INF/mods.toml") { - expand "version": project.version - } - - filesMatching("mcmod.info") { + filesMatching("fabric.mod.json") { expand "version": project.version } } \ No newline at end of file