* Fix missing some chunk unloads events leading to a possible memory leak. (#1820)
* Update fix for 1.18.2. Fixes#2206
Co-authored-by: modmuss50 <modmuss50@gmail.com>
This snapshot is possibly one of the most impactful for API we have ever had. This PR is an inital port to support 22w06a, stuff will be missing and broken.
# Removed modules:
- fabric-mining-levels-v0 - Previously deprecated
- fabric-object-builders-v0 - Previously deprecated
- fabric-tag-extensions-v0
- fabric-tool-attribute-api-v1
# Modules with API breaking changes:
- fabric-biome-api-v1
- fabric-content-registries-v0
- fabric-data-generation-api-v1
- fabric-mining-level-api-v1
- fabric-object-builder-api-v1
- fabric-resource-conditions-api-v1
- fabric-structure-api-v1
# Impactful API changes:
### fabric-object-builder-api-v1
- Removed - FabricBlockSettings.breakByHand
- Removed - FabricBlockSettings.breakByTool - Previously deprecated
# Notable changes
- fabric-registry-sync-v0 moves vanilla's new registry freezing to a later point in time, allowing mods to add to the registry during init.
# Known issues:
- ServerBugfixMixin used to fix https://bugs.mojang.com/browse/MC-195468 has not yet been ported.
* Add custom value denoting module lifecycles.
* Make the module validation work.
My hand has been forced - we must use buildSrc since JsonSlurper is not available in main buildscript.
* Apply task to each project and dont cross projects
* A horrible hack
* Wait what
* It works now.
* Not needed
* Drop unneeded maven repo, cache map lookup
(cherry picked from commit daa38b3d82)
* Reimplement block entity (un)load events
This is pending testing to verify the tracking is reliable.
* Forgot that null check for parity
* Everything is implemented. Now for testing
* Fix server block entity unload events
* Bah indentations broke
* Handle world chunks instead of the positions
* Add a few new server lifecycle events
Server starting, Load World, Before server resource reload, After server resource reload
* Save event
* Split world load into ServerWorldEvents, add failure event for data pack reload
* cause
* Merge fail and regular end.
* Present tense lol
* So we can just plainly specify the system properties
* use handleAsync instead
* Lifecycle Events V1 (1.16)
Now includes Chunk and (Block)Entity (un)load events
(cherry picked from commit 82b372873fd930dd07768331f7b70f6f9d3d441d)
* Move around code to work on 1.16
* Checkstyle
* Remove primary server getters
(cherry picked from commit c84f36209d)
* IJ DO YOU SPEAK RESOLVING IMPORTS
* Prune the tests that shouldn't exist
(cherry picked from commit a5112223ca)
* Listen here checkstyle you bugger
* Split up events to individual interfaces. Make Chunk events use WorldChunk instead.
(cherry picked from commit 3431c0d894)