Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
## 1.1.1-beta.1
- Full support for 1.21.1-26.1.2
57 changes: 41 additions & 16 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ val modname = property("mod.name")
val modversion = property("mod.version")
val mcversion = stonecutter.current.version
val oneconfigversion = property("oneconfig_version")
val versionrange = property("minecraft_version_range")
val loaderversion = property("loader_version")

version = "$modversion+$mcversion"
base.archivesName = modname.toString()
Expand Down Expand Up @@ -83,8 +85,8 @@ tasks.processResources {
"mod_id" to modid,
"mod_name" to modname,
"mod_version" to modversion,
"mc_version" to mcversion,
"loader_version" to providers.gradleProperty("loader_version").get()
"minecraft_version_range" to versionrange,
"loader_version" to loaderversion
)

inputs.properties(props)
Expand Down Expand Up @@ -125,34 +127,57 @@ tasks.jar {
fun <T> optionalProp(property: String, block: (String) -> T?): T? =
findProperty(property)?.toString()?.takeUnless { it.isBlank() }?.let(block)

val modrinthId = findProperty("publish.modrinth")?.toString()?.takeIf { it.isNotBlank() }
val modrinthMinecraftVersionOverride = mapOf(
"26.1" to listOf("26.1", "26.1.1", "26.1.2"),
"26.1.1" to listOf("26.1", "26.1.1", "26.1.2"),
"26.1.2" to listOf("26.1", "26.1.1", "26.1.2")
)

val modrinthId = listOf("oneconfig.publish.modrinth", "publish.modrinth").firstNotNullOfOrNull { findProperty(it) }?.toString()?.takeIf { it.isNotBlank() }
val modrinthToken = listOf("oneconfig.publish.modrinth.token", "publish.modrinth.token", "modrinth.token").firstNotNullOfOrNull { findProperty(it) }?.toString()?.takeIf { it.isNotBlank() }
val minecraftVersion = modrinthMinecraftVersionOverride[mcversion] ?: listOf(mcversion)
val publishJarTaskName = if ("remapJar" in tasks.names) "remapJar" else "jar"
val changelogs = rootProject.file("CHANGELOG.md").takeIf { it.exists() }?.readText() ?: "No changelog provided."

val validateChangelog by tasks.registering {
description = "Validates that the changelog is written for the current version."
if (!changelogs.contains(modversion.toString())) {
throw GradleException("Changelog for version $modversion not found.")
}
}

tasks.publishMods.configure {
dependsOn(validateChangelog)
}
tasks.matching { it.name == "publishModrinth" }.configureEach {
dependsOn(validateChangelog)
}

// make sure modrinth.token is set in your user gradle properties
publishMods {
file = if (stonecutter.current.parsed >= "26.1") {
project.tasks.jar.get().archiveFile
} else {
project.tasks.named<org.gradle.api.tasks.bundling.AbstractArchiveTask>("remapJar").flatMap { it.archiveFile }
}
file = tasks.named<AbstractArchiveTask>(publishJarTaskName).flatMap { it.archiveFile }

displayName = modversion.toString()
version = "v$modversion"
changelog =
project.rootProject.file("CHANGELOG.md").takeIf { it.exists() }?.readText() ?: "No changelog provided."
type = ALPHA
changelog = changelogs
type = BETA

modLoaders.add("fabric")

dryRun = modrinthId == null
dryRun = modrinthId == null || modrinthToken == null

if (modrinthId != null) {
modrinth {
projectId = property("publish.modrinth").toString()
accessToken = findProperty("modrinth.token").toString()
projectId = modrinthId
accessToken = modrinthToken.orEmpty()

minecraftVersions.add(mcversion)
minecraftVersions.addAll(minecraftVersion)

requires("oneconfig")
requires("fabric-language-kotlin")
findProperty("publish.modrinth.compose-bundle")
?.toString()
?.takeIf { it.isNotBlank() }
?.let { requires(it) }
}
}
}
4 changes: 2 additions & 2 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
mod.name=PolyWeather
mod.id=polyweather
mod.version=1.1.0-alpha.2
mod.version=1.1.1-beta.1
mod.group=org.polyfrost

loomx.loom_version=1.16-SNAPSHOT
Expand All @@ -15,7 +15,7 @@ org.gradle.daemon=true
org.gradle.parallel=true
org.gradle.configureoncommand=true
org.gradle.parallel.threads=4
org.gradle.jvmargs=-Xmx2G
org.gradle.jvmargs=-Xmx4G

# Fix YALMM
fabric.loom.dropNonIntermediateRootMethods=true
7 changes: 6 additions & 1 deletion src/main/resources/fabric.mod.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,5 +24,10 @@
"mixins.${mod_id}.json"
],
"license": "GPL 3.0",
"environment": "client"
"environment": "client",
"depends": {
"minecraft": "${minecraft_version_range}",
"fabricloader": ">=${loader_version}",
"fabric-language-kotlin": "*"
}
}
4 changes: 3 additions & 1 deletion versions/1.21.1/gradle.properties
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
parchment_version=2024.11.17
yalmm_version=3
yalmm_version=3
minecraft_version=1.21.1
minecraft_version_range=1.21.1
4 changes: 3 additions & 1 deletion versions/1.21.10/gradle.properties
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
parchment_version=2025.10.12
yalmm_version=3
yalmm_version=3
minecraft_version=1.21.10
minecraft_version_range=>=1.21.9 <=1.21.10
4 changes: 3 additions & 1 deletion versions/1.21.11/gradle.properties
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
parchment_version=2025.12.20
yalmm_version=3
yalmm_version=3
minecraft_version=1.21.11
minecraft_version_range=1.21.11
4 changes: 3 additions & 1 deletion versions/1.21.4/gradle.properties
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
parchment_version=2025.03.23
yalmm_version=3
yalmm_version=3
minecraft_version=1.21.4
minecraft_version_range=1.21.4
3 changes: 2 additions & 1 deletion versions/1.21.5/gradle.properties
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
parchment_version=2025.06.15
yalmm_version=3
minecraft_version=1.21.5
minecraft_version=1.21.5
minecraft_version_range=1.21.5
4 changes: 3 additions & 1 deletion versions/1.21.8/gradle.properties
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
parchment_version=2025.09.14
yalmm_version=3
yalmm_version=3
minecraft_version=1.21.8
minecraft_version_range=>=1.21.7 <=1.21.8
4 changes: 3 additions & 1 deletion versions/26.1/gradle.properties
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
yalmm_version=3
minecraft_version=26.1
has_official_mappings=false
java_version=25
java_version=25

minecraft_version_range=~26.1
Loading