From 9cfd868af9d17d7c65021e81c0aec0e0ba4fe640 Mon Sep 17 00:00:00 2001 From: Des Herriott Date: Sun, 26 Jul 2026 12:31:42 +0100 Subject: [PATCH 1/4] chore: updated wiki URL in the readme --- .../main/java/dev/ftb/mods/ftbranks/impl/RankManagerImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/src/main/java/dev/ftb/mods/ftbranks/impl/RankManagerImpl.java b/common/src/main/java/dev/ftb/mods/ftbranks/impl/RankManagerImpl.java index 9bc9289..40d985f 100644 --- a/common/src/main/java/dev/ftb/mods/ftbranks/impl/RankManagerImpl.java +++ b/common/src/main/java/dev/ftb/mods/ftbranks/impl/RankManagerImpl.java @@ -289,7 +289,7 @@ public void refreshReadme() throws IOException { lines.add("=== FTB Ranks ==="); lines.add(""); lines.add("Last README file update: " + new Date()); - lines.add("Wiki: https://www.notion.so/feedthebeast/FTB-Mod-Documentation-da2e359bad2449459d58d787edda3168"); + lines.add("Wiki: https://docs.feed-the-beast.com/mod-docs/mods/suite/Ranks/"); lines.add("To refresh this file, run /ftbranks refresh_readme"); lines.add(""); lines.add("= All available command nodes ="); From bee0e42086c5f77e56f654dbbd53c3a139348c53 Mon Sep 17 00:00:00 2001 From: Des Herriott Date: Mon, 27 Jul 2026 09:35:34 +0100 Subject: [PATCH 2/4] fix: rework RankCommandPredicate Use an iterative solution rather than recursion, and add an already-visited guard to catch redirect loops https://github.com/FTBTeam/FTB-Mods-Issues/issues/2162 --- .../mods/ftbranks/impl/RankCommandPredicate.java | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/common/src/main/java/dev/ftb/mods/ftbranks/impl/RankCommandPredicate.java b/common/src/main/java/dev/ftb/mods/ftbranks/impl/RankCommandPredicate.java index eb72f33..b0a0832 100644 --- a/common/src/main/java/dev/ftb/mods/ftbranks/impl/RankCommandPredicate.java +++ b/common/src/main/java/dev/ftb/mods/ftbranks/impl/RankCommandPredicate.java @@ -5,6 +5,8 @@ import net.minecraft.commands.CommandSourceStack; import net.minecraft.server.level.ServerPlayer; +import java.util.HashSet; +import java.util.Set; import java.util.function.Predicate; import java.util.function.Supplier; @@ -21,7 +23,19 @@ public RankCommandPredicate(CommandNode commandNode, String } public String getNodeName() { - return redirect == null || redirect.get() == null ? nodeName : redirect.get().getNodeName(); + Set visited = new HashSet<>(); + RankCommandPredicate currentNode = this; + while (visited.add(currentNode)) { + if (currentNode.redirect == null) { + return currentNode.nodeName; + } + RankCommandPredicate nextNode = currentNode.redirect.get(); + if (nextNode == null) { + return currentNode.nodeName; + } + currentNode = nextNode; + } + return currentNode.nodeName; } public void setRedirect(Supplier redirect) { From 73db30e0cfa294c818d8082a02425783c7e5ae2a Mon Sep 17 00:00:00 2001 From: Des Herriott Date: Mon, 27 Jul 2026 09:37:59 +0100 Subject: [PATCH 3/4] build: version -> 2101.1.4, updated MPP --- CHANGELOG.md | 6 ++++++ build.gradle | 4 +++- gradle.properties | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0bbb023..1b31554 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [2101.1.4] + +### Fixed +* Updated FTB Ranks wiki URL in generated README file +* Reworked `RankCommandPredicate` to avoid stack overflow errors with certain modded command trees + ## [2101.1.3] ### Added diff --git a/build.gradle b/build.gradle index c04dc67..7038777 100644 --- a/build.gradle +++ b/build.gradle @@ -1,7 +1,7 @@ plugins { id "architectury-plugin" version "3.4-SNAPSHOT" id "dev.architectury.loom" version "1.7-SNAPSHOT" apply false - id "me.modmuss50.mod-publish-plugin" version "0.5.1" + id "me.modmuss50.mod-publish-plugin" version "2.1.1" } apply from: 'https://raw.githubusercontent.com/FTBTeam/mods-meta/main/gradle/changelog.gradle' @@ -120,6 +120,8 @@ publishMods { accessToken = providers.environmentVariable("CURSEFORGE_KEY") minecraftVersions.add("${minecraft_version}") javaVersions.add(JavaVersion.VERSION_21) + server = true + client = true } curseforge("curseforgeFabric") { diff --git a/gradle.properties b/gradle.properties index 0484dd9..43d33fd 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,7 +4,7 @@ mod_id=ftbranks readable_name=FTB Ranks archives_base_name=ftb-ranks maven_group=dev.ftb.mods -mod_version=2101.1.3 +mod_version=2101.1.4 mod_author=FTB Team minecraft_version=1.21.1 From 2458bdc6b67e4812c76acf614983d6dc36b30cbb Mon Sep 17 00:00:00 2001 From: Des Herriott Date: Mon, 27 Jul 2026 09:40:29 +0100 Subject: [PATCH 4/4] build: updated build.yml --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2cb0001..eae06a6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,7 +2,7 @@ name: Java CI - Build on Push on: push: - branches: [ main, dev, "1.*" ] + branches: [ main, dev, "1.**" ] workflow_dispatch: inputs: skip_maven_publish: