diff --git a/.github/workflows/check-build.yml b/.github/workflows/check-build.yml index 4a4f98d..f125f6a 100644 --- a/.github/workflows/check-build.yml +++ b/.github/workflows/check-build.yml @@ -5,14 +5,12 @@ on: push: paths: [ '**src/**', - '**/*gradle*', - LICENSE + '**/*gradle*' ] pull_request: paths: [ '**src/**', - '**/*gradle*', - LICENSE + '**/*gradle*' ] workflow_dispatch: diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..ac205dd --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,10 @@ +# Changelog + +## 1.0.0+1.21 + +- Added something +- Fixed something else + +## 0.1.0+1.21 + +- Initial release diff --git a/LICENSE b/LICENSE.txt similarity index 100% rename from LICENSE rename to LICENSE.txt diff --git a/build.gradle b/build.gradle index 08d1969..8b79fb3 100644 --- a/build.gradle +++ b/build.gradle @@ -1,3 +1,5 @@ +import jdk.jpackage.internal.Log + plugins { id("fabric-loom") version("${loom_version}") apply(false) id("net.neoforged.moddev") version("${moddev_version}") apply(false) @@ -46,7 +48,7 @@ subprojects { versionNumber = mod_version versionType = release_type versionName = "v${mod_version}-${capsLoader(name)}" - changelog = rootProject.file("changelog.md").text + changelog = versionChangelog() uploadFile = name == "fabric" ? remapJar : jar loaders = project.property("release_mod_loaders_${name}").split(",") as List gameVersions = project.property("release_game_versions_${name}").split(",") as List @@ -83,7 +85,7 @@ subprojects { def file = upload(curseforge_id, module == "fabric" ? remapJar : jar) file.displayName = "v${mod_version}-${capsLoader(module)}" file.releaseType = release_type - file.changelog = rootProject.file("changelog.md").text + file.changelog = versionChangelog() file.changelogType = "markdown" project.property("release_mod_loaders_${module}").split(",").each { String id -> file.addModLoader(id) @@ -119,7 +121,7 @@ subprojects { prerelease = release_type == "alpha" || release_type == "beta" releaseName = "v${mod_version}" - String changelog = "\nChangelog\n" + rootProject.file("changelog.md").text + String changelog = "\nChangelog\n" + versionChangelog() String versions = "MC versions\n" if (project.hasProperty("release_game_versions_fabric")) versions = String.format("%s - Fabric: %s\n", versions, @@ -129,7 +131,7 @@ subprojects { project.property("release_game_versions_neoforge")) body = versions + changelog - body = rootProject.file("changelog.md").text + body = rootProject.file("CHANGELOG.md").text targetCommitish = grgitService.service.get().grgit.branch.current().name overwrite = false allowUploadToExisting = true @@ -191,6 +193,29 @@ tasks.register("rebrandProject") { } } +String versionChangelog() { + List lines = rootProject.file("CHANGELOG.md").readLines() + if (lines.get(2).substring(3) == "${mod_version}") { + StringBuilder builder = new StringBuilder() + for (int i = 4; i < lines.size(); i++) { + String line = lines.get(i) + if (line.isBlank()) { + // pass + } else if (line.startsWith("## ")) { + break + } + else { + if (!builder.isEmpty()) builder.append("\n") + builder.append(line) + } + } + return builder.toString() + } else { + Log.error("Changelog latest version does not match mod version ${mod_version}") + return "Error creating changelog" + } +} + static String capsLoader(String loader) { switch(loader) { case "fabric": return "Fabric" diff --git a/buildSrc/src/main/groovy/multiloader-common.gradle b/buildSrc/src/main/groovy/multiloader-common.gradle index ea3ebfd..cb59306 100644 --- a/buildSrc/src/main/groovy/multiloader-common.gradle +++ b/buildSrc/src/main/groovy/multiloader-common.gradle @@ -66,13 +66,13 @@ repositories { } sourcesJar { - from(rootProject.file("LICENSE")) { + from(rootProject.file("LICENSE.txt")) { rename { "${it}_${mod_name}" } } } jar { - from(rootProject.file("LICENSE")) { + from(rootProject.file("LICENSE.txt")) { rename { "${it}_${mod_name}" } } diff --git a/changelog.md b/changelog.md deleted file mode 100644 index e69de29..0000000 diff --git a/settings.gradle b/settings.gradle index 8e1f0ca..20f304a 100644 --- a/settings.gradle +++ b/settings.gradle @@ -23,14 +23,9 @@ pluginManagement { } filter { includeGroupAndSubgroups("org.spongepowered") } } - exclusiveContent { - forRepositories( - maven { - name = "NeoForge" - url = "https://maven.neoforged.net/releases" - } - ) - filter { includeGroupAndSubgroups("net.neoforged.licenser") } + maven { + name = "NeoForge" + url = "https://maven.neoforged.net/releases" } } }