refactor: migrate to Stonecutter for multi-version management

Replace 20 separate mc-* submodules and common module with a single
Stonecutter-managed source tree using preprocessor comments. This
eliminates massive code duplication while preserving all version-specific
behavior across 1.19.4 through 1.21.11.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
This commit is contained in:
AlexProgrammerDE
2026-03-01 10:06:02 +01:00
co-authored by Claude Opus 4.6
parent d2676ac1d2
commit 0a3b019962
190 changed files with 261 additions and 4513 deletions
+21 -21
View File
@@ -18,124 +18,124 @@ jobs:
- uses: gradle/actions/setup-gradle@v5
- run: ./gradlew build
- run: ./gradlew chiseledBuild
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.19.4
path: mc-1.19.4/build/libs/anarchymod-mc-1.19.4-*.jar
path: versions/1.19.4/build/libs/anarchymod-mc-1.19.4-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20
path: mc-1.20/build/libs/anarchymod-mc-1.20-*.jar
path: versions/1.20/build/libs/anarchymod-mc-1.20-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20.1
path: mc-1.20.1/build/libs/anarchymod-mc-1.20.1-*.jar
path: versions/1.20.1/build/libs/anarchymod-mc-1.20.1-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20.2
path: mc-1.20.2/build/libs/anarchymod-mc-1.20.2-*.jar
path: versions/1.20.2/build/libs/anarchymod-mc-1.20.2-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20.3
path: mc-1.20.3/build/libs/anarchymod-mc-1.20.3-*.jar
path: versions/1.20.3/build/libs/anarchymod-mc-1.20.3-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20.4
path: mc-1.20.4/build/libs/anarchymod-mc-1.20.4-*.jar
path: versions/1.20.4/build/libs/anarchymod-mc-1.20.4-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20.5
path: mc-1.20.5/build/libs/anarchymod-mc-1.20.5-*.jar
path: versions/1.20.5/build/libs/anarchymod-mc-1.20.5-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.20.6
path: mc-1.20.6/build/libs/anarchymod-mc-1.20.6-*.jar
path: versions/1.20.6/build/libs/anarchymod-mc-1.20.6-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21
path: mc-1.21/build/libs/anarchymod-mc-1.21-*.jar
path: versions/1.21/build/libs/anarchymod-mc-1.21-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.1
path: mc-1.21.1/build/libs/anarchymod-mc-1.21.1-*.jar
path: versions/1.21.1/build/libs/anarchymod-mc-1.21.1-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.2
path: mc-1.21.2/build/libs/anarchymod-mc-1.21.2-*.jar
path: versions/1.21.2/build/libs/anarchymod-mc-1.21.2-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.3
path: mc-1.21.3/build/libs/anarchymod-mc-1.21.3-*.jar
path: versions/1.21.3/build/libs/anarchymod-mc-1.21.3-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.4
path: mc-1.21.4/build/libs/anarchymod-mc-1.21.4-*.jar
path: versions/1.21.4/build/libs/anarchymod-mc-1.21.4-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.5
path: mc-1.21.5/build/libs/anarchymod-mc-1.21.5-*.jar
path: versions/1.21.5/build/libs/anarchymod-mc-1.21.5-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.6
path: mc-1.21.6/build/libs/anarchymod-mc-1.21.6-*.jar
path: versions/1.21.6/build/libs/anarchymod-mc-1.21.6-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.7
path: mc-1.21.7/build/libs/anarchymod-mc-1.21.7-*.jar
path: versions/1.21.7/build/libs/anarchymod-mc-1.21.7-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.8
path: mc-1.21.8/build/libs/anarchymod-mc-1.21.8-*.jar
path: versions/1.21.8/build/libs/anarchymod-mc-1.21.8-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.9
path: mc-1.21.9/build/libs/anarchymod-mc-1.21.9-*.jar
path: versions/1.21.9/build/libs/anarchymod-mc-1.21.9-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.10
path: mc-1.21.10/build/libs/anarchymod-mc-1.21.10-*.jar
path: versions/1.21.10/build/libs/anarchymod-mc-1.21.10-*.jar
if-no-files-found: error
- uses: actions/upload-artifact@v7
with:
name: anarchymod-mc-1.21.11
path: mc-1.21.11/build/libs/anarchymod-mc-1.21.11-*.jar
path: versions/1.21.11/build/libs/anarchymod-mc-1.21.11-*.jar
if-no-files-found: error
+21 -21
View File
@@ -37,7 +37,7 @@ jobs:
distribution: 'temurin'
- name: Build with Gradle
run: ./gradlew build
run: ./gradlew chiseledBuild
- name: Build Changelog
id: changelog
@@ -122,26 +122,26 @@ jobs:
gh release create "${VERSION}" \
--title "AnarchyMod ${VERSION}" \
--notes "${NOTES}" \
mc-1.19.4/build/libs/anarchymod-mc-1.19.4-${VERSION}.jar \
mc-1.20/build/libs/anarchymod-mc-1.20-${VERSION}.jar \
mc-1.20.1/build/libs/anarchymod-mc-1.20.1-${VERSION}.jar \
mc-1.20.2/build/libs/anarchymod-mc-1.20.2-${VERSION}.jar \
mc-1.20.3/build/libs/anarchymod-mc-1.20.3-${VERSION}.jar \
mc-1.20.4/build/libs/anarchymod-mc-1.20.4-${VERSION}.jar \
mc-1.20.5/build/libs/anarchymod-mc-1.20.5-${VERSION}.jar \
mc-1.20.6/build/libs/anarchymod-mc-1.20.6-${VERSION}.jar \
mc-1.21/build/libs/anarchymod-mc-1.21-${VERSION}.jar \
mc-1.21.1/build/libs/anarchymod-mc-1.21.1-${VERSION}.jar \
mc-1.21.2/build/libs/anarchymod-mc-1.21.2-${VERSION}.jar \
mc-1.21.3/build/libs/anarchymod-mc-1.21.3-${VERSION}.jar \
mc-1.21.4/build/libs/anarchymod-mc-1.21.4-${VERSION}.jar \
mc-1.21.5/build/libs/anarchymod-mc-1.21.5-${VERSION}.jar \
mc-1.21.6/build/libs/anarchymod-mc-1.21.6-${VERSION}.jar \
mc-1.21.7/build/libs/anarchymod-mc-1.21.7-${VERSION}.jar \
mc-1.21.8/build/libs/anarchymod-mc-1.21.8-${VERSION}.jar \
mc-1.21.9/build/libs/anarchymod-mc-1.21.9-${VERSION}.jar \
mc-1.21.10/build/libs/anarchymod-mc-1.21.10-${VERSION}.jar \
mc-1.21.11/build/libs/anarchymod-mc-1.21.11-${VERSION}.jar
versions/1.19.4/build/libs/anarchymod-mc-1.19.4-${VERSION}.jar \
versions/1.20/build/libs/anarchymod-mc-1.20-${VERSION}.jar \
versions/1.20.1/build/libs/anarchymod-mc-1.20.1-${VERSION}.jar \
versions/1.20.2/build/libs/anarchymod-mc-1.20.2-${VERSION}.jar \
versions/1.20.3/build/libs/anarchymod-mc-1.20.3-${VERSION}.jar \
versions/1.20.4/build/libs/anarchymod-mc-1.20.4-${VERSION}.jar \
versions/1.20.5/build/libs/anarchymod-mc-1.20.5-${VERSION}.jar \
versions/1.20.6/build/libs/anarchymod-mc-1.20.6-${VERSION}.jar \
versions/1.21/build/libs/anarchymod-mc-1.21-${VERSION}.jar \
versions/1.21.1/build/libs/anarchymod-mc-1.21.1-${VERSION}.jar \
versions/1.21.2/build/libs/anarchymod-mc-1.21.2-${VERSION}.jar \
versions/1.21.3/build/libs/anarchymod-mc-1.21.3-${VERSION}.jar \
versions/1.21.4/build/libs/anarchymod-mc-1.21.4-${VERSION}.jar \
versions/1.21.5/build/libs/anarchymod-mc-1.21.5-${VERSION}.jar \
versions/1.21.6/build/libs/anarchymod-mc-1.21.6-${VERSION}.jar \
versions/1.21.7/build/libs/anarchymod-mc-1.21.7-${VERSION}.jar \
versions/1.21.8/build/libs/anarchymod-mc-1.21.8-${VERSION}.jar \
versions/1.21.9/build/libs/anarchymod-mc-1.21.9-${VERSION}.jar \
versions/1.21.10/build/libs/anarchymod-mc-1.21.10-${VERSION}.jar \
versions/1.21.11/build/libs/anarchymod-mc-1.21.11-${VERSION}.jar
set-after-version:
needs: build
+1 -1
View File
@@ -27,7 +27,7 @@ jobs:
ref: ${{ github.ref }}
- name: Set Version
run: sed -i "s/version = \".*\"/version = \"${{ inputs.version }}\"/" build.gradle.kts
run: sed -i "s/mod_version=.*/mod_version=${{ inputs.version }}/" gradle.properties
- name: Commit Version
uses: stefanzweifel/git-auto-commit-action@v7