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.
* Move biome modification into the MinecraftServer constructor to have access to the actual level generation settings for the level.
* Move biome modification into the MinecraftServer constructor to have access to the actual level generation settings for the level.
* Move biome modification into the MinecraftServer constructor to have access to the actual level generation settings for the level.
* Ensure the feature ordering in BiomeSource is updated after modifying biomes.
* Don't use var
* Use the opportunity to check the real chunk generators for
the specified structure.
* Structure Pool Callback
* Update build.gradle
* Update fabric-structure-api-v1/src/main/java/net/fabricmc/fabric/api/structure/v1/FabricStructurePool.java
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
* Update fabric-structure-api-v1/src/main/java/net/fabricmc/fabric/api/structure/v1/FabricStructurePool.java
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
* Fix certain concerns
* Expose identifier for easier access
* Final test mod thing
* fix access widener
* Fix a few things
* Fix a few things
* Fix license
* haha lets see if this works
* checkstyle was working after I did checkstyleMain so u bettar work
* i take too much time to do checkstyle fixes
* checkstyle fix testmod ugh amirite
* Fix a few concerns brought up <3
* Oops, forgot to add a mutanle there
* Let's test this one more time?
* Remove Access Widener woop woop
* rename to poolAccessor
* Simplify the pool modification a bit
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
(cherry picked from commit 48a9ad892d)
* Optimize registry sync packet
* Make sure that the id map is sorted by the raw id
Send the difference of the first raw id and the last raw id from the bulk before
* Add packet size log prints
* Use Boolean.getBoolean
Don't send sync packet if the player is the server host
* Use generic Map
* Multiple raw id bulk test
* Group object namespace first before grouping raw ids
* Revert "Add packet size log prints"
This reverts commit fcb8b71e
* RegistrySyncPacket -> RegistryPacketSerializer
Move RegistryPacketSerializer singleton to the interface
* Packet size log prints
* Sort raw id on each namespace group
* Use Identifier.DEFAULT_NAMESPACE
* Slice to multiple packet if necessary
* Make MAX_PAYLOAD_SIZE configurable
Make testmod registry bigger
Print buffer size in equality test
* Move static packet handler instance to RegistrySyncManager
Release combinedBuf before discarding it
Discard syncedRegistryMap after it's accessed
* Use PacketByteBufs to create buffers
* Use the correct information when throwing Exceptions for failed tests.
* Re-throw the exception if it is already a RuntimeException
* Use pattern matching instead of casting
* Add datagen support for dynamic registry tags
* Update according review
* Make FabricTagBuilder final
* Throw AssertionError if expected errors didn't happen