From 8fa0233d4bde3aa3a8b7a69a5dfdefdb79149d23 Mon Sep 17 00:00:00 2001 From: snoopdoooggyttv <82676057+snoopdoooggyttv@users.noreply.github.com> Date: Fri, 16 Apr 2021 19:43:28 +0100 Subject: [PATCH 1/4] [CI-SKIP] Fix typo! (#462) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2d1f6158..fcd886b5 100644 --- a/README.md +++ b/README.md @@ -121,7 +121,7 @@ ## License ## Security -Security information can be found found [here](/SECURITY.md). +Security information can be found [here](/SECURITY.md). ## Statistics [![bStats Graph Data](https://bstats.org/signatures/server-implementation/Yatopia.svg)](https://bstats.org/plugin/server-implementation/Yatopia) From 08b5fda04ea1e3d4b42073f39a3729db342c9f66 Mon Sep 17 00:00:00 2001 From: snoopdoooggyttv <82676057+snoopdoooggyttv@users.noreply.github.com> Date: Fri, 16 Apr 2021 20:09:41 +0100 Subject: [PATCH 2/4] [ci-skip] Other typo fix (#463) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fcd886b5..3292da35 100644 --- a/README.md +++ b/README.md @@ -106,7 +106,7 @@ ## Why aren't there many API additions? (Modified from [starlis/empirecraft](https://github.com/starlis/empirecraft/))
-APIs are tough to design. In projects such as Bukkit, Spigot, Sponge, Paper, etc once an API is commited, it's almost forever. You can't go breaking it without solid justification. This is the politics game.
+APIs are tough to design. In projects such as Bukkit, Spigot, Sponge, Paper, etc once an API is committed, it's almost forever. You can't go breaking it without solid justification. This is the politics game.
With that in mind, much thought has to be given to the API in now and future use cases and applications to ensure it can be extended without breaking.
From d99cf54b0cad23faba412576333a9c14d2886ef4 Mon Sep 17 00:00:00 2001
From: Simon Gardling
All patches (.patch files) marked with "hydrogen" are licensed under LGPL3 found [here](https://github.com/CaffeineMC/hydrogen-fabric/blob/1.16.x/LICENSE.txt).
All patches (.patch files) marked with "krypton" are licensed under MIT found [here](https://github.com/astei/krypton/blob/master/LICENSE).
+All patches (.patch files) marked with "Cadmium" are licensed under MIT found [here](https://github.com/LucilleTea/cadmium-fabric/blob/1.16.x/dev-my-fork/LICENSE.txt).
+All patches (.patch files) marked with "LazyDFU" are licensed under MIT found [here](https://github.com/astei/lazydfu/blob/master/LICENSE).
+All patches (.patch files) marked with "Tic-Tacs" are licensed under LGPLv3 found [here](https://github.com/Gegy/tic-tacs/blob/1.16.4/LICENSE).
All other patches (.patch files) included in this repo are licensed under the MIT license found [here](MIT.md).
See [EMC](https://github.com/starlis/empirecraft/blob/master/README.md), [Akarin](https://github.com/Akarin-project/Akarin/blob/1.16.5/LICENSE.md), [Purpur](https://github.com/pl3xgaming/Purpur/blob/ver/1.16.5/LICENSE), [Airplane](https://github.com/Technove/Airplane/blob/master/PATCHES-LICENSE), [Origami](https://github.com/Minebench/Origami/blob/1.16/PATCHES-LICENSE), and [Tuinity](https://github.com/Spottedleaf/Tuinity/blob/master/PATCHES-LICENSE) for the license of patches automatically pulled during upstream updates.
diff --git a/PATCHES.md b/PATCHES.md
index 039704d7..9de5091c 100644
--- a/PATCHES.md
+++ b/PATCHES.md
@@ -252,6 +252,7 @@ # Patches
| api | Lagging threshold | William Blake Galbreath | |
| server | Left handed API | BillyGalbreath | |
| api | Left handed API | BillyGalbreath | |
+| server | Lithium: CompactSineLUT | JellySquid | |
| server | LivingEntity safeFallDistance | William Blake Galbreath | |
| api | LivingEntity safeFallDistance | William Blake Galbreath | |
| server | LivingEntity#broadcastItemBreak | William Blake Galbreath | |
@@ -332,6 +333,8 @@ # Patches
| api | PlayerSetSpawnerTypeWithEggEvent | William Blake Galbreath | |
| server | Players should not cram to death | William Blake Galbreath | |
| server | Populator seed controls | Spottedleaf | |
+| server | Port Cadmium | Lucy-t | |
+| server | Port LazyDFU | Andrew Steinborn | |
| server | Preload ProtocolLib EnumWrappers | ishland | |
| server | Prevent long map entry creation in light engine | Spottedleaf | |
| server | Prevent unload() calls removing tickets for sync loads | Spottedleaf | |
@@ -422,6 +425,7 @@ # Patches
| server | Zombie horse naturally spawn | William Blake Galbreath | |
| server | add config for logging login location | Simon Gardling | |
| server | dont load chunks for physics | Aikar | |
+| server | lithium AI | JellySquid | |
| server | lithium DataTrackerMixin | JellySquid | tr7zw |
| server | lithium HashedList | JellySquid | |
| server | lithium MixinBox | JellySquid | |
@@ -430,6 +434,13 @@ # Patches
| server | lithium NoiseChunkGeneratorMixin | JellySquid | |
| server | lithium PerlinNoiseSamplerMixin | JellySquid | Bud Gidiere |
| server | lithium VoronoiBiomeAccessTypeMixin | JellySquid | |
+| server | lithium block | JellySquid | |
+| server | lithium entity | JellySquid | |
| server | lithium enum_values | JellySquid | |
+| server | lithium gen | JellySquid | |
| server | lithium reduce allocations | JellySquid | Mykyta Komarnytskyy |
+| server | lithium shape | JellySquid | |
| server | lithium: cache chunk gen sea level | SuperCoder7979 | |
+| server | lithium: optimize `BlockPos.iterateOutwards` by caching | 2No2Name | |
+| server | lithium: skip ticking block entities that are doing nothing | 2No2Name | |
+| server | tic-tacs: unblocking | Gegy | |
diff --git a/README.md b/README.md
index 3292da35..a1ae85f9 100644
--- a/README.md
+++ b/README.md
@@ -18,6 +18,9 @@ ## So what is Yatopia?
* [Origami](https://github.com/Minebench/Origami)
* [Purpur](https://github.com/pl3xgaming/Purpur)
* [Airplane](https://github.com/Technove/Airplane)
+* [Cadmium](https://github.com/LucilleTea/cadmium-fabric)
+* [LazyDFU](https://github.com/astei/lazydfu)
+* [Tic-Tacs](https://github.com/Gegy/tic-tacs)
## Try it out
diff --git a/buildSrc/src/main/kotlin/MCDevImports.kt b/buildSrc/src/main/kotlin/MCDevImports.kt
index a2c1d481..d58be4f5 100644
--- a/buildSrc/src/main/kotlin/MCDevImports.kt
+++ b/buildSrc/src/main/kotlin/MCDevImports.kt
@@ -24,5 +24,22 @@ val libraryImports = setOf {
+ DSL.and(newType, gType),
+ fType,
+ newType,
+- new Proj1<>()
++ Proj1.instance() // Yatopia - Cadmium port
+ );
+ }
+
+@@ -142,7 +142,7 @@ public final class TypedOptic {
+ DSL.and(fType, newType),
+ gType,
+ newType,
+- new Proj2<>()
++ Proj2.instance() // Yatopia - Cadmium port
+ );
+ }
+
+@@ -153,7 +153,7 @@ public final class TypedOptic {
+ DSL.or(newType, gType),
+ fType,
+ newType,
+- new Inj1<>()
++ Inj1.instance() // Yatopia - Cadmium port
+ );
+ }
+
+@@ -164,7 +164,7 @@ public final class TypedOptic {
+ DSL.or(fType, newType),
+ gType,
+ newType,
+- new Inj2<>()
++ Inj2.instance() // Yatopia - Cadmium port
+ );
+ }
+
+diff --git a/src/main/java/com/mojang/datafixers/View.java b/src/main/java/com/mojang/datafixers/View.java
+index 4139dc999917d84c7dea5b02117a50af51206f04..58f856d95405f02c107fad12e830e98d1e1a8337 100644
+--- a/src/main/java/com/mojang/datafixers/View.java
++++ b/src/main/java/com/mojang/datafixers/View.java
+@@ -11,7 +11,6 @@ import com.mojang.datafixers.types.Type;
+ import com.mojang.serialization.DynamicOps;
+
+ import java.util.Objects;
+-import java.util.Optional;
+ import java.util.function.Function;
+
+ public final class View implements App2 l1, final ProfunctorTransformer, U, ?, C> l2, final PointFree> f1, final PointFree> f2, final Func, ?> firstType, final Func, ?> secondType) {
++ private l1, final ProfunctorTransformer, U, ?, C> l2, final PointFree> f1, final PointFree> f2, final Func, ?> firstType, final Func, ?> secondType) { // Yatopia - Cadmium port
+ return cap2(l1, (ProfunctorTransformer l1, final ProfunctorTransformer l1, final ProfunctorTransformer>> lens = (PointFree>>) (PointFree>) l1;
+ final PointFree implements Adapter {
++ // Yatopia start - Cadmium port
++ private static final Adapter, ?, ?, ?> INSTANCE = new IdAdapter<>();
++
++ private IdAdapter() {
++
++ }
++ // Yatopia end
++
+ @Override
+ public S from(final S s) {
+ return s;
+@@ -22,4 +30,11 @@ class IdAdapter implements Adapter {
+ public String toString() {
+ return "id";
+ }
++
++ // Yatopia start - Cadmium port
++ @SuppressWarnings("unchecked")
++ public static Adapter instance() {
++ return (Adapter) INSTANCE;
++ }
++ // Yatopia end
+ }
+diff --git a/src/main/java/com/mojang/datafixers/optics/Inj1.java b/src/main/java/com/mojang/datafixers/optics/Inj1.java
+index 8c56955c9d6c3d6021d5c9fda452e39774ac587c..4813f335cd536d1b32b9095dbd76e18c22a6dea1 100644
+--- a/src/main/java/com/mojang/datafixers/optics/Inj1.java
++++ b/src/main/java/com/mojang/datafixers/optics/Inj1.java
+@@ -5,6 +5,14 @@ package com.mojang.datafixers.optics;
+ import com.mojang.datafixers.util.Either;
+
+ public final class Inj1 Adapter id() {
+- return new IdAdapter<>();
++ return IdAdapter.instance(); // Yatopia - Cadmium port
+ }
+
+ public static Adapter adapter(final Function from, final Function to) {
+@@ -223,19 +223,19 @@ public abstract class Optics {
+ }
+
+ public static