- Move block and item ids into separate API-accessible classes, to
match vanilla.
- Switch to Fabric's built-in permission API. We no longer need to
optionally support fabric-permission-api, which makes things a bit
simpler.
- Lots of rendering changes. Crucially, switch monitor rendering back
to using VBOs, using the new FeatureRenderer system. This currently
requires mixins on Fabric, but there's a PR open to add an API for
it in the future.
Now we just use builtin INetAddress predicates or HostRange, rather than
a mix of custom predicates, sets and HostRange.
Also add some other ranges from the reserved list, and link to that list
to make it a bit easier to find stuff in the future.
I don't konw if this actually matters, but better safe than sorry.
Everything here confuses me — my understanding of RFC 6052 was that
private IP addresses cannot be used with NAT64, but AWS apparently
allows it? Not sure if I or Amazon is wrong (or both!).
- Split implementation of `parallel.waitFor{All,Any}` up. Their
implementations are now sufficiently complicated it doesn't make
sense to share the core.
- Support spawning new functions from within `parallel.waitForAll`.
- Flesh out the `parallel.waitForAll` docs a little.
This hasn't updated to 1.21.1. A separate mod (Create Fly) adds support
for 1.21.1/26.1, but has an incompatible API with normal Fabric, so
wait to see what happens rather than jumping to one or the other.
- Add a new LuaTable.get(int) overload to handle getting an integer key
instead.
- Update CobaltLuaMachine for more sensible Java->LuaValue conversion
for looking up keys.
- Add some tests for our two LuaTable implementations.
- Randomly reformat two files because spotless is ???
Fixes#2430
Unfortunately it's entirely broken with our custom recipes — JEI is
hard-coded to only work with vanilla's ShapedRecipe, even if a recipe
returns a ShapedCraftingRecipeDisplay.
- Use a fixed instance for colour/uncolour recipes. This prevents
issues where StreamCodec.unit gets a different instance than what it
was created with.
Fixes#2423.
- Move RecipeSerializer instances to the recipe class, rather than in
the mod registry. This matches vanilla's structure.
- Add (very basic) details provider for entities.
- Add commands.getEntity(selector) function, which gets details for all
matching entities.
Fixes#2383
- Replace vanilla-extract with Fabric Loom for common mod. Now that we
no longer have to worry about remapping, this probably makes more
sense.
- Switch turtle upgrades to use ItemStackTemplate. Yay, immutability! I
think I might change up the upgrade API here a bit, but not a blocker
for release.
- Lots of small things. I'm very glad for our game tests — these caught
a fair few bugs.
The shebang/interpreter program is run with the *resolved* path of the
original program. However, this path was not marked with a leading `/`,
meaning interpreters may try to resolve it again.
We now add an explicit leading `/`, to ensure the path is treated as
absolute.