Skip to content

Release 1.21.0#105

Open
tastybento wants to merge 14 commits intomasterfrom
develop
Open

Release 1.21.0#105
tastybento wants to merge 14 commits intomasterfrom
develop

Conversation

@tastybento
Copy link
Copy Markdown
Member

No description provided.

tastybento and others added 10 commits April 4, 2026 10:51
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Fixes build failure with maven-compiler-plugin 3.7.0 not supporting
Java 21's --release flag.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Adds 50 tests covering CaveBlock, Utils, ChunkGeneratorWorld, and
CustomHeightLimitations, following patterns from BSkyBlock/AcidIsland.
Includes CommonTestSetup base class, TestWorldSettings, and WhiteBox
reflection utility. Updates bentobox dependency to 3.14.1-SNAPSHOT and
adds JUnit 5, Mockito, and MockBukkit test dependencies with surefire
argLine for Java 21 module access.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
netherBlocks and endBlocks were wired to the legacy MaterialPopulator
which was replaced by NewMaterialPopulator with hardcoded ore tables;
their getters were never called. The debug field had no @ConfigEntry
annotation and isDebug() was never called anywhere.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Release 1.21.0 updates CaveBlock’s generation and build stack to the latest Paper/BentoBox line, adds a test suite (JUnit/Mockito/MockBukkit), and refreshes bundled configuration/blueprints for the new generation behavior.

Changes:

  • Migrate build/runtime targets to Java 21 + Paper API, update CI to Java 21, and add a JUnit5/Mockito/MockBukkit test stack.
  • Refactor overworld generation to delegate to vanilla noise/caves/structures and cap the sky, while nether/end use NewMaterialPopulator; remove legacy populators and related settings.
  • Update default config and blueprint definitions, plus add/expand automated tests for key behaviors.

Reviewed changes

Copilot reviewed 28 out of 35 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/test/java/world/bentobox/caveblock/WhiteBox.java Adds reflection helper for injecting static singletons in tests.
src/test/java/world/bentobox/caveblock/UtilsTest.java Adds unit tests for Utils#getLocationFromChunkLocation.
src/test/java/world/bentobox/caveblock/TestWorldSettings.java Minimal WorldSettings impl for isolated tests.
src/test/java/world/bentobox/caveblock/listeners/CustomHeightLimitationsTest.java Adds tests for ceiling enforcement logic and bypass conditions.
src/test/java/world/bentobox/caveblock/generators/ChunkGeneratorWorldTest.java Adds tests for generator delegation flags, biome provider, and populators.
src/test/java/world/bentobox/caveblock/CommonTestSetup.java Shared MockBukkit/Mockito BentoBox test harness.
src/test/java/world/bentobox/caveblock/CaveBlockTest.java Adds lifecycle and generator routing tests for the addon entrypoint.
src/main/resources/plugin.yml Updates declared Minecraft API version.
src/main/resources/config.yml Updates defaults and removes legacy generator configuration keys.
src/main/resources/blueprints/skelly.json Adds/updates blueprint metadata for a new cave preset.
src/main/resources/blueprints/nether-cave.blu Blueprint asset (nether cave).
src/main/resources/blueprints/miners-cave.blu Blueprint asset (miners cave).
src/main/resources/blueprints/miners-cave Removes legacy blueprint format file.
src/main/resources/blueprints/miner-cave.json Updates blueprint metadata fields (slot/times/cost/commands).
src/main/resources/blueprints/end-cave.blu Blueprint asset (end cave).
src/main/resources/blueprints/end-cave Removes legacy blueprint format file.
src/main/resources/blueprints/default.json Updates default blueprint preset metadata and references.
src/main/resources/blueprints/cave.blu Blueprint asset (legacy cave).
src/main/resources/blueprints/cave Removes legacy blueprint format file.
src/main/resources/addon.yml Updates BentoBox API version declaration.
src/main/java/world/bentobox/caveblock/Settings.java Removes legacy generator flags/settings and changes defaults (notably world depth).
src/main/java/world/bentobox/caveblock/generators/populators/MaterialPopulator.java Removes legacy material/ore populator.
src/main/java/world/bentobox/caveblock/generators/populators/EntitiesPopulator.java Removes legacy entity populator.
src/main/java/world/bentobox/caveblock/generators/ChunkGeneratorWorld.java Refactors generator to vanilla-overworld + capped surface; nether/end remain custom-filled.
src/main/java/world/bentobox/caveblock/commands/IslandAboutCommand.java Updates about/copyright text.
src/main/java/world/bentobox/caveblock/CaveBlock.java Switches spawn rate APIs to SpawnCategory methods and adds a debug log line.
pom.xml Migrates to Paper + Java 21, updates versions, adds test dependencies and surefire config.
CLAUDE.md Adds repo guidance doc.
.github/workflows/build.yml Updates CI Java version to 21.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread CLAUDE.md Outdated
Comment thread CLAUDE.md Outdated
Comment thread src/main/resources/config.yml Outdated
tastybento and others added 4 commits April 15, 2026 04:59
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Migrate all 11 locale files from legacy &X color codes to MiniMessage
tags (e.g., &c → <red>, &a → <green>). Also fix broken color codes
in several translations: fullwidth ampersand in Japanese, Cyrillic с
in Russian, space-separated codes in German, missing prefixes on
continuation lines in Turkish and Polish. Fix translated placeholders
that should use English keys ([name], [number], [rank], etc.).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@sonarqubecloud
Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants