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
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
56 changes: 34 additions & 22 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
name: Base Metals 1.16.5 CI
name: Base Metals 1.17.1 CI

on:
push:
branches:
- master-1.16.5
- master-1.17.1
- 'feature/**'
pull_request:
branches:
- master-1.16.5
- master-1.17.1

permissions:
contents: read

concurrency:
group: basemetals-1.16-${{ github.workflow }}-${{ github.ref }}
group: basemetals-1.17-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
Expand All @@ -32,12 +32,18 @@ jobs:
distribution: temurin
java-version: '25.0.3+9.0.LTS'

- name: Install pinned Java 8 compilation toolchain
- name: Install Java 8 for the ForgeGradle renamer
uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5
with:
distribution: temurin
java-version: '8.0.502+7'

- name: Install pinned Java 16 compilation toolchain
uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5
with:
distribution: temurin
java-version: '16.0.2+7'

- name: Install pinned Java 17 Gradle runtime
uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5
with:
Expand Down Expand Up @@ -65,7 +71,7 @@ jobs:
classes test verifyReleaseDependencies
-PorespawnVerificationRepository="${{ steps.orespawn.outputs.repository }}"
--no-daemon --no-build-cache --stacktrace --max-workers=2
-Dorg.gradle.java.installations.paths="$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_25_X64"
-Dorg.gradle.java.installations.paths="$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_16_X64,$JAVA_HOME_25_X64"
-Dorg.gradle.java.installations.auto-detect=false
-Dorg.gradle.java.installations.auto-download=false
)
Expand All @@ -81,7 +87,7 @@ jobs:
classes test verifyReleaseDependencies
-PorespawnVerificationRepository="${{ steps.orespawn.outputs.repository }}"
--rerun-tasks --offline --no-daemon --no-build-cache --stacktrace --max-workers=2
-Dorg.gradle.java.installations.paths="$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_25_X64"
-Dorg.gradle.java.installations.paths="$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_16_X64,$JAVA_HOME_25_X64"
-Dorg.gradle.java.installations.auto-detect=false
-Dorg.gradle.java.installations.auto-download=false
)
Expand All @@ -102,12 +108,18 @@ jobs:
distribution: temurin
java-version: '25.0.3+9.0.LTS'

- name: Install pinned Java 8 compilation toolchain
- name: Install Java 8 for the ForgeGradle renamer
uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5
with:
distribution: temurin
java-version: '8.0.502+7'

- name: Install pinned Java 16 compilation toolchain
uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5
with:
distribution: temurin
java-version: '16.0.2+7'

- name: Install pinned Java 17 Gradle runtime
uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5
with:
Expand All @@ -134,16 +146,16 @@ jobs:
verifyEclipseProductionClasspath
-PorespawnVerificationRepository="${{ steps.orespawn.outputs.repository }}"
--no-daemon --no-build-cache --stacktrace --max-workers=2
-Dorg.gradle.java.installations.paths="$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_25_X64"
-Dorg.gradle.java.installations.paths="$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_16_X64,$JAVA_HOME_25_X64"
-Dorg.gradle.java.installations.auto-detect=false
-Dorg.gradle.java.installations.auto-download=false
)
./gradlew "${gradle_args[@]}"
first="$RUNNER_TEMP/basemetals-first"
mkdir -p "$first"
cp build/libs/BaseMetals-3.1.0.116051.jar "$first/"
cp build/libs/BaseMetals-3.1.0.116051-sources.jar "$first/"
cp build/libs/BaseMetals-3.1.0.116051-javadoc.jar "$first/"
cp build/libs/BaseMetals-3.1.0.117011.jar "$first/"
cp build/libs/BaseMetals-3.1.0.117011-sources.jar "$first/"
cp build/libs/BaseMetals-3.1.0.117011-javadoc.jar "$first/"
cp build/release/SHA256SUMS "$first/"

- name: Rebuild and prove byte-identical archives
Expand All @@ -154,14 +166,14 @@ jobs:
clean assemble verifyReleaseArtifacts writeReleaseChecksums
-PorespawnVerificationRepository="${{ steps.orespawn.outputs.repository }}"
--no-daemon --no-build-cache --stacktrace --max-workers=2
-Dorg.gradle.java.installations.paths="$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_25_X64"
-Dorg.gradle.java.installations.paths="$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_16_X64,$JAVA_HOME_25_X64"
-Dorg.gradle.java.installations.auto-detect=false
-Dorg.gradle.java.installations.auto-download=false
)
./gradlew "${gradle_args[@]}"
cmp "$RUNNER_TEMP/basemetals-first/BaseMetals-3.1.0.116051.jar" build/libs/BaseMetals-3.1.0.116051.jar
cmp "$RUNNER_TEMP/basemetals-first/BaseMetals-3.1.0.116051-sources.jar" build/libs/BaseMetals-3.1.0.116051-sources.jar
cmp "$RUNNER_TEMP/basemetals-first/BaseMetals-3.1.0.116051-javadoc.jar" build/libs/BaseMetals-3.1.0.116051-javadoc.jar
cmp "$RUNNER_TEMP/basemetals-first/BaseMetals-3.1.0.117011.jar" build/libs/BaseMetals-3.1.0.117011.jar
cmp "$RUNNER_TEMP/basemetals-first/BaseMetals-3.1.0.117011-sources.jar" build/libs/BaseMetals-3.1.0.117011-sources.jar
cmp "$RUNNER_TEMP/basemetals-first/BaseMetals-3.1.0.117011-javadoc.jar" build/libs/BaseMetals-3.1.0.117011-javadoc.jar
cmp "$RUNNER_TEMP/basemetals-first/SHA256SUMS" build/release/SHA256SUMS

- name: Run exact-OreSpawn dedicated-server probe
Expand All @@ -172,7 +184,7 @@ jobs:
runRuntimeProbeServer
-PorespawnVerificationRepository="${{ steps.orespawn.outputs.repository }}"
--no-daemon --stacktrace --max-workers=2
-Dorg.gradle.java.installations.paths="$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_25_X64"
-Dorg.gradle.java.installations.paths="$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_16_X64,$JAVA_HOME_25_X64"
-Dorg.gradle.java.installations.auto-detect=false
-Dorg.gradle.java.installations.auto-download=false
)
Expand All @@ -181,21 +193,21 @@ jobs:
- name: Upload audited release candidate
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7
with:
name: BaseMetals-1.16.5-${{ github.sha }}
name: BaseMetals-1.17.1-${{ github.sha }}
if-no-files-found: error
retention-days: 30
path: |
build/libs/BaseMetals-3.1.0.116051.jar
build/libs/BaseMetals-3.1.0.116051-sources.jar
build/libs/BaseMetals-3.1.0.116051-javadoc.jar
build/libs/BaseMetals-3.1.0.117011.jar
build/libs/BaseMetals-3.1.0.117011-sources.jar
build/libs/BaseMetals-3.1.0.117011-javadoc.jar
build/release/SHA256SUMS
CHANGELOG.txt

- name: Upload bounded diagnostics on failure
if: failure()
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7
with:
name: BaseMetals-1.16.5-diagnostics-${{ github.sha }}
name: BaseMetals-1.17.1-diagnostics-${{ github.sha }}
if-no-files-found: ignore
retention-days: 14
path: |
Expand Down
14 changes: 10 additions & 4 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ name: CodeQL
on:
push:
branches:
- master-1.16.5
- master-1.17.1
- 'feature/**'
pull_request:
branches:
- master-1.16.5
- master-1.17.1
schedule:
- cron: '37 7 * * 4'

Expand All @@ -32,12 +32,18 @@ jobs:
distribution: temurin
java-version: '25.0.3+9.0.LTS'

- name: Install pinned Java 8 compilation toolchain
- name: Install Java 8 for the ForgeGradle renamer
uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5
with:
distribution: temurin
java-version: '8.0.502+7'

- name: Install pinned Java 16 compilation toolchain
uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5
with:
distribution: temurin
java-version: '16.0.2+7'

- name: Install pinned Java 17 Gradle runtime
uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5
with:
Expand All @@ -60,7 +66,7 @@ jobs:
gradle_args=(
clean classes
--no-daemon --stacktrace --max-workers=2
-Dorg.gradle.java.installations.paths="$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_25_X64"
-Dorg.gradle.java.installations.paths="$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_16_X64,$JAVA_HOME_25_X64"
-Dorg.gradle.java.installations.auto-detect=false
-Dorg.gradle.java.installations.auto-download=false
)
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/validate-gradle-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ name: Validate Gradle Wrapper
on:
push:
branches:
- master-1.16.5
- master-1.17.1
- 'feature/**'
pull_request:
branches:
- master-1.16.5
- master-1.17.1

permissions:
contents: read
Expand Down
26 changes: 26 additions & 0 deletions CHANGELOG.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,29 @@
Base Metals 3.1.0.117011

- Bring Base Metals to Minecraft 1.17.1 and Forge 37.1.1, with Java 16 for the game.
- Add twelve raw metals. Ordinary ore mining drops raw material, Fortune gives
extra drops, and Silk Touch keeps the ore block. Copper uses vanilla raw copper.
- Keep direct hammer mining at two powders per ore. Each raw piece gives one
powder through ground hammering or crushing, and smelts or blasts to one ingot.
Raw metals cannot be used in powder blends.
- Support vanilla raw iron, gold and copper, and crushing vanilla deepslate ores.
- Leave Base Metals copper generation off in new OreSpawn profiles, without
changing saved profiles or explicit overrides. Keep the other ore rules as before.
- Use Forge's native model providers for Kiri's ore overlays, keeping the tested
gap between the overlay and its vanilla background. The generateResources task
updates saved output; ordinary builds check it without rewriting source files.
- Keep High/Low Fantasy, configuration screens, equipment effects, molten buckets,
material arrows and bolts, trades and recipes from the 1.16 release.
- Keep the floor and walls visible through holes in trapdoors, doors and bars.
Their collision shapes and placement behaviour are unchanged.
- Update old-world migration, custom anvils, IDE launches and release checks for
Forge 37. Test and datagen classes remain outside the published mod.
- Remove invalid bed entities that vanilla's old-world converter can create on
modded blocks. Real beds and their saved contents are left alone.
- Protect saved Nether, End and custom-dimension chunks as well as the Overworld
when neighbouring terrain is generated during an upgrade.
- Pin the published OreSpawn 4.1.0.117011 release from Curse Maven.

Base Metals 3.1.0.116051

- Bring the 1.15.2 release to Minecraft 1.16.5 and Forge 36.2.34.
Expand Down
Loading
Loading