Changelog
This update backports just about everything added from 5.1.0+1.20.4
to 7.1.1+1.21.1
. It also introduces a few new changes and features, which will be ported over to 1.21.1
shortly.
Backported Features
- Added the
include
operation, which allows effectively including the contents of a patch inside another patch. This is intended to reduce patch duplication. - Added "patch targets" (also called "dynamic" patches), which allow applying a single patch to any number of files.
- Added two new
test
types:patched:registered
, which allows testing for the existence of something in a registrypatched:item_registered
, which is a simplified version of the above
Backported Features (for mod developers)
- The patch datagen stuff now supports
Codec
s in all of the methods takingObject
s, and also now allows providing an alternateGson
for serialization in theObject
versions. There's also been some minor javadoc improvements in that area. - Patched now supports reading its metadata from the loader-specific mod metadata files! This means that modders can finally ditch their
pack.mcmeta
s and move this data to theirfabric.mod.json
/quilt.mod.json
/mods.toml
!
Backported Changes
- The Patched metadata in pack.mcmeta files has been modified to reflect Mojang's changes to pack metadata sections. In short:
patched:has_patches
is no more, and instead there's apatched
section. Patched will still load old-style packs.
New Features
- Added a new
test
type:patched:pack_enabled
, which allows checking for the existence of data/resource packs. See the documentation for details.
New Changes
- Rewrote Patched's primary mixin for better compatibility with mods that cause re-entrant resource queries, such as Tiny Skeletons.
New Changes (for mod developers)
- Patched's library sources are now included in the mod's sources jar.
- Patched's internals (or most of them) are now in an
internal
package, rather than spread out all over the place. This will break code using or mixing into these internals, but you shouldn't be doing that anyway.
External resources
Project members
EnderTurret
Owner
Technical information
License
LGPL-2.1-only
Client side
optional
Server side
optional
Project ID