Fun FAPI Facts #1 — MoreCodecs

I want to start something new. Every week or two, I'm going to introduce features from Fabric API with

a general focus on the obscure and misunderstood parts.

I am quite frustrated by the lack of documentation and lack of discoverability of Fabric API features,

so I hope that by writing about random things in Fabric API, I can show people that Fabric isn't

as incomplete or incompatible as some may claim.

MoreCodecs

Added in commit 0b6b00e on August 17th, 2025, MoreCodecs is a small but useful utility class in fabric-serialization-api-v1.

/**
* Additional codecs that can be used by modders.
*/
@ApiStatus.NonExtendable
public interface MoreCodecs {
Codec<long[]> LONG_ARRAY = SpecialCodecs.LONG_ARRAY;
Codec<byte[]> BYTE_ARRAY = SpecialCodecs.BYTE_ARRAY;
}

Just a side tangent, but the fact that these constant interfaces keep

showing up in Fabric API is quite annoying, especially since we can't

change it without breaking ABI. Oh well!

While I am disappointed that this class seems to have gone untouched for a year, I'm sure with a PR or two

it could get some more useful codecs.

Anyway, instead of making your own long[] or byte[] codecs, remember that MoreCodecs exists.