forked from PaperMC/Paper
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[pull] master from PaperMC:master #1081
Closed
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Long ago we discovered that the default thread pools would not increase the number of threads running the pool until queue addition failed. Bumping the core size mitigates an issue with spark-paper, and in general, keeping async threads around generally beats having to spin new ones everytime we want to execute a periodic async task.
The server validates incoming interaction packets by ensuring the player sending them is inside their interaction range. For this, the server adds a magic value, by default 1.0, to the original interaction range to account for latency issues. This value however may be too low in high latency environments. The patch exposes a new configuration option to configure said value.
Now the only tracker field is from the entity tracker optimisations.
Accidentally dropped this check last commit. It is possible that this is called while the entity is not tracked.
Allowing chunk loading to occur at any point via purgeUnload() introduces possible undesirable behavior to occur recursively inside the chunk system.
Mojang missed these in their mapping. Since the entity data is used when spawning the bucketed mob, we need to have these inside the id map to ensure that the entity data is converted correctly if the entity id is missing.
…11172) primarily, this allows us to ensure that appenders are flushed, console, log files before the JVM exits to avoid issues such as error messages disappearing
The common changes from Moonrise should be entirely in MCUtils
… API (#11184) * Preserve command node when re-registering modern commands through old API * make fix more targeted mainly because it didn't work for vanilla commands :)
This is to allow the call to work properly when on Folia, as Folia does not have a main thread.
The function assumed that the current resize chain pointed to the previous table, when in fact it pointed to the current table. The function is supposed to restore the resize chain to the previous table, previous increment, and previous index + new increment.
The issue the patch was initially added for has already been fixed and filling stacktraces can be expensive
* fix incorrect hash in PR builds * only apply ref on pull_request triggers
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 2ec53f4 PR-1050: Fix empty result check for Complex Recipes 1067101 PR-1044: Add CrafterCraftEvent 4d87ffe Use correct method in JavaDoc ae5e581 SPIGOT-7850: Add API for Bogged shear state 46b6d44 SPIGOT-7837: Support data pack banner patterns d5d0cef Fix JavaDoc error b3c2b83 PR-1036: Add API for InventoryView derivatives 1fe2c75 SPIGOT-7809: Add ShieldMeta CraftBukkit Changes: 8ee6fd1 SPIGOT-7857: Improve ItemMeta block data deserialization 8f26c30 SPIGOT-7857: Fix spurious internal NBT tag when deserializing BlockStateMeta 759061b SPIGOT-7855: Fire does not spread or burn blocks 00fc9fb SPIGOT-7853: AnvilInventory#getRepairCost() always returns 0 7501e2e PR-1450: Add CrafterCraftEvent 8c51673 SPIGOT-5731: PortalCreateEvent#getEntity returns null for nether portals ignited by flint and steel d53d0d0 PR-1456: Fix inverted logic in CraftCrafterView#setSlotDisabled 682a678 SPIGOT-7850: Add API for Bogged shear state fccf524 SPIGOT-7837: Support data pack banner patterns 9c3bd43 PR-1431: Add API for InventoryView derivatives 0cc6acb SPIGOT-7849: Fix FoodComponent serialize with "using-converts-to" using null 2c54749 Don't rely on tags for CraftItemMetas 20d107e SPIGOT-7846: Fix ItemMeta for hanging signs 76f59e3 Remove redundant clone in Dropper InventoryMoveItemEvent e61a53d SPIGOT-7817: Call InventoryMoveItemEvent for Crafters 894682e SPIGOT-7839: Remove redundant Java version checks 2c12b21 SPIGOT-7809: Add ShieldMeta and fix setting shield base colours Spigot Changes: fb8fb722 Rebuild patches 34bd42b7 SPIGOT-7835: Fix issue with custom hopper settings
* Fix tag key generator output inconsistencies * use NonNull instead of NotNull for generated api --------- Co-authored-by: Jake Potrebic <[email protected]>
If you segfault, update your jre/jdk:tm:
* wip tags * use generics in tag registrars * comment out varargs methods for now * split up patch * cache loaded service provider * finish renames * use builderWithExpectedSize * finalize
* Item serialization as json * Add ItemStackAdapter for Gson * A javadoc note at #serialize() and #deserialize() * Rebase * Move serialize closer to deserialize * Add explaining comment about SERIALIZE_CUSTOM_AS_SNBT usage * Apply lynxplay requests * Forgot `@NotNull` * Very important diff was removed * Rebase * Javadocs --------- Co-authored-by: Bjarne Koll <[email protected]>
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 1fc1020 PR-1049: Add MenuType API 8ae2e3b PR-1055: Expand riptiding API cac68bf SPIGOT-7890: AttributeModifier#getUniqueId() doesn't match the UUID passed to its constructor 7004fcf SPIGOT-7886: Fix mistake in AttributeModifier UUID shim 1ac7f95 PR-1054: Add FireworkMeta#hasPower 4cfb565 SPIGOT-7873: Add powered state for skulls CraftBukkit Changes: bbb30e7 SPIGOT-7894: NPE when sending tile entity update ba21e94 SPIGOT-7895: PlayerItemBreakEvent not firing 0fb24bb SPIGOT-7875: Fix PlayerItemConsumeEvent cancellation causing client-side desync 8150664 SPIGOT-7891: Can't remove second ingredient of MerchantRecipe 45c206f PR-1458: Add MenuType API 19c8ef9 SPIGOT-7867: Merchant instanceof AbstractVillager always returns false 4e006d2 PR-1468: Expand riptiding API bd8aded Ignore checks in CraftPlayerProfile for ResolvableProfile used in profile components 8679620 SPIGOT-7889: Fix tool component deserialisation without speed and/or correct-for-drops 8d52226 SPIGOT-7882, PR-1467: Fix conversion of name in Profile Component to empty if it is missing 63f9166 SPIGOT-7887: Remove duplicate ProjectileHitEvent for fireballs 7070de8 SPIGOT-7878: Server#getLootTable does not return null on invalid loot table 060ee6c SPIGOT-7876: Can't kick player or disconnect player in PlayerLoginEvent when checking for cookies 7ccb86c PR-1465: Add FireworkMeta#hasPower 804ad64 SPIGOT-7873: Add powered state for skulls f9610cd Improve minecart movement Spigot Changes: a759b629 Rebuild patches Co-authored-by: Jake Potrebic <[email protected]>
In the recent upstream update, the paper player profile was updated to correctly return null for both name and id if constructed as such. This change however broke the serialisation logic, as it depended on the name never being null. The commit moves the checks over to the newly introduced emptyName/UUID fields that track if the profile was constructed with a null name or uuid to differentiate it against an empty string or the NIL_UUID.
* Only mark decorations dirty if a removal actually occurs Vanilla calls this method blindly inside of a loop which erroniously marks map data files as being dirty even if nothing has actually changed. * Merge into existing patch --------- Co-authored-by: Bjarne Koll <[email protected]>
Spigot still maintains some partial implementation of "tick skipping", a practice in which the MinecraftServer.currentTick field is updated not by an increment of one per actual tick, but instead set to System.currentTimeMillis() / 50. This behaviour means that the tracked tick may "skip" a tick value in case a previous tick took more than the expected 50ms. To compensate for this in important paths, spigot/craftbukkit implements "wall-time". Instead of incrementing/decrementing ticks on block entities/entities by one for each call to their tick() method, they instead increment/decrement important values, like an ItemEntity's age or pickupDelay, by the difference of `currentTick - lastTick`, where `lastTick` is the value of `currentTick` during the last tick() call. These "fixes" however do not play nicely with minecraft's simulation distance as entities/block entities implementing the above behaviour would "catch up" their values when moving from a non-ticking chunk to a ticking one as their `lastTick` value remains stuck on the last tick in a ticking chunk and hence lead to a large "catch up" once ticked again. Paper completely removes the "tick skipping" behaviour (See patch "Further-improve-server-tick-loop"), making the above precautions completely unnecessary, which also rids paper of the previous described incompatibility with non-ticking chunks.
The Bukkit#getRegistry(Class) method contract specifies that it returns null for unknown registry types. The current implementation however requires the passed class to be mappable to a known registry key. For types like Material, which have a SimpleRegistry in bukkit's Registry interface, no server side registry exists and such the type cannot be mapped to a registry key. The commit correctly returns null for types that are not mappable to a registry key instead of throwing a NullPointerException.
The launch API on LivingEntity only respected the WindCharge type, not its near-clone BreezeWindCharge. This commit correctly accounts for BreezeWindCharge in CraftLivingEntity.
Adds a missing interface to centralize getSnapshotInventory methods.
While BlockType is still marked as internal, it mirrors the already paper-deprecated method #isInteractable. The commit marks said method as deprecated if/when BlockType becomes experimental/non-internal.
Previously, the velocity forwarding secret could only be configured via the configuration option in the global paper configuration. This makes configuring/passing such a value rather difficult for containerized/orchestrated servers as these configuration files are usually part of the server data volume itself and hence cannot be sourced from a secret. This commit enables administrators to define the PAPER_VELOCITY_SECRET environment variable, which will override any potentially configured velocity secret.
* fix: check datatype of particles rather than particle-type * feature: add ARGB channels It keeps the functionality of the original color(int). * fix: order * fixes --------- Co-authored-by: Jake Potrebic <[email protected]>
* Expand out datapack API * add getTitle * better enable check
Please do not open pull requests from the |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by pull[bot]
Can you help keep this open source service alive? 💖 Please sponsor : )