Skip to content

Update to Minecraft 26.1#385

Draft
Jikoo wants to merge 6 commits intomasterfrom
dev/26_1
Draft

Update to Minecraft 26.1#385
Jikoo wants to merge 6 commits intomasterfrom
dev/26_1

Conversation

@Jikoo
Copy link
Copy Markdown
Owner

@Jikoo Jikoo commented Mar 24, 2026

As always, please exercise caution when using development builds (assuming the CI doesn't fail, it being set to Java 21 right now).

TODO:

  • Update resource pack
  • Clean up messy inheritance/unnecessary Spigot-side extras
    • Spigot doesn't need extra BaseXyz classes for multi-version support yet.
    • Internal design may need some rework: composition might allow cleaner code sharing, and possibly could write a better common module for less-divergent areas like slots against the vanilla server.
  • Reorganize structure?
    • Most of plugin should likely be separated from bundler aside from main class and accessor.
  • Test

- Use Java 25 for CIs
- Dropped now-unneeded remapping/reobfuscation configurations and pre-compiled script plugin
- Copied all previously-shared classes into Spigot-specific packaging
  - This will potentially result in duplicated code maintenance, but makes it much easier to catch new server implementation differences at compile time.
- Repackage Spigot internals
@Jikoo
Copy link
Copy Markdown
Owner Author

Jikoo commented Mar 25, 2026

Looks like the problem with the build is actually the clean goal because that wipes out the freshly-compiled copy of Spigot as it no longer gets installed to the local Maven repo. I should also revisit caching for it. If I place it similarly to Paperweight's output, the default Gradle cache might just handle that.

@Jikoo
Copy link
Copy Markdown
Owner Author

Jikoo commented Apr 4, 2026

Currently only Paper 26.1.1 and Spigot 26.1(.1) are supported and nothing has been tested. I'll get to re-adding backwards compatibility later, I'm done for the day. I fought with Gradle for a couple hours to figure out how to force it to allow dependency resolution despite "mismatching" capabilities for a while. The internal modules' inheritance is basically backwards, and I didn't know enough about Gradle or think it through far enough when I was doing the initial setup for v5.

With the advent of Mojang actually versioning things again, I will likely return to dropping old versions, particularly with versions' ages showing pretty clearly in version numbers.

I'm thinking a rolling year window for support. If anyone has strong opinions on the matter, please let me know.

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.

1 participant