feat(harvest): migrate distribution to Java 25 and Purpur
Release / release (push) Successful in 6m49s
CI / build (push) Successful in 2m45s

BREAKING CHANGE: New releases require Java 25/Purpur 26.2 and use purpur-harvest-<version>.jar. Runtime SpigotHarvest identity, data folders and crop progression remain unchanged. Replace the old JAR instead of installing both distributions.
This commit is contained in:
dmg
2026-09-12 13:56:35 -04:00
parent 83d329c95a
commit f615600818
10 changed files with 206 additions and 22 deletions
+10 -6
View File
@@ -1,13 +1,17 @@
# Spigot Harvest
# Purpur Harvest
A Spigot 26.2 plugin providing progression-gated, connected crop harvesting and automatic replanting.
A Purpur 26.2 plugin providing progression-gated, connected crop harvesting and automatic replanting.
The approved behavior is specified in the [SoMC OKF wiki](https://git.garvis.dev/dmg/somc-okf/src/branch/main/projects/spigot-harvest/index.md).
The approved behavior is specified in the [SoMC OKF wiki](https://git.garvis.dev/dmg/somc-okf/src/branch/main/projects/purpur-harvest/index.md).
## Requirements
- Spigot 26.2
- Java 17 or newer
- Purpur 26.2 build 2618
- Java 25
## Distribution migration
New repositories/checkouts/artifacts use `purpur-harvest`; runtime `SpigotHarvest`, Java entrypoints/packages, data folders, commands, permissions and crop progression remain unchanged. New releases no longer support Java 17. Replace the old JAR rather than installing both distributions. Historical tags and `spigot-harvest-*` assets are retained; the prior v1.0.1 download was checked for identical bytes after renaming.
## Build
@@ -15,7 +19,7 @@ The approved behavior is specified in the [SoMC OKF wiki](https://git.garvis.dev
./gradlew clean check jar
```
The plugin JAR is written to `build/libs/`.
The plugin JAR is written to `build/libs/`. `check` includes `nativeHarvestTest`: it downloads SHA-256-verified Purpur 2618 under `build/harvest-runtime/`, loads native registry/service providers, and runs real item-stack/drop/replant regressions without starting a listening server. Those tests are not replaced by item mocks or excluded from verification.
## Commands