Repository navigation
chore!: sync with upstream Minestom dd2ddbc - #28
Merged
Merged
Conversation
* fix: update SmithingTrim to use Holder for trimPattern * adopt pattern matching for `pattern`
Checkouts use LF on every platform, and committed generated sources collapse in GitHub diffs.
…inestom#3412) Reading the packet of a CachedPacket does not frame it.
Integrates Minestom/Minestom@dd2ddbc72d (6 commits): the socket connection factory, CachedPacket caching its packet separately from the framed body, cancellation of a setInstance replaced by a later call, and .gitattributes. The connection factory keeps upstream's signature. Each Server defaults to a factory bound to its owning ServerProcess and refuses a connection that belongs to another process. CachedPacket keeps one framed representation per encoding context and now reuses the supplied packet across contexts, so asking for the packet no longer frames it. BREAKING CHANGE: ArgumentResourceLocation is renamed to ArgumentKey, ArgumentType.ResourceLocation to ArgumentType.Key and the "resourcelocation" parser id to "key". SlotDisplay.SmithingTrim's trimPattern is a Holder<TrimPattern> instead of a SlotDisplay.
Binary CompatibilityThis Pull Request has introduced binary incompatible changes compared to the What is Binary Compatibility? What should you do?
View offending signatures |
This file contains hidden or 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
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.
Upstream Minestom gained six commits since the last sync (
5485bbd). This brings multistom up to Minestom/Minestom@dd2ddbc72d so we don't drift.What comes in
Server.setConnectionFactory()lets users supply their ownPlayerSocketConnectionsubclass, or returnnullto reject a client.setInstancestill waiting on chunks completes withCancellationExceptionwhen a later call replaces it, instead of moving the player back afterwards.SmithingTrimuses aHolder<TrimPattern>(fix: update SmithingTrim to use Holder for trimPattern Minestom/Minestom#3407),ArgumentResourceLocationis renamed toArgumentKey(refactor: Rename ArgumentResourceLocation to ArgumentKey Minestom/Minestom#3316), and.gitattributesis added (chore: add .gitattributes Minestom/Minestom#3410).Where multistom differs from upstream
Server: the factory keeps upstream's signature, so code written against upstream compiles unchanged. EachServerdefaults to a factory bound to its ownServerProcess, and a connection that belongs to another process is refused and its channel closed. Anullrejection happens before the connection is tracked.CachedPacket: upstream's split is ported onto thePacketEncodingContext-keyed cache. One framed representation is still kept for the most recent context, but a different context now reuses the supplied packet instead of invoking the supplier again.CachedPackettests are ported intoSendablePacketTest(multistom has noSendablePacketIntegrationTest).ProcessConnectionTestgains a test for the factory: a custom factory is used,nullrejects the client, and a foreign-process connection is refused.Breaking changes
ArgumentResourceLocation→ArgumentKey,ArgumentType.ResourceLocation()→ArgumentType.Key(), parser id"resourcelocation"→"key".SlotDisplay.SmithingTrim.trimPatternis aHolder<TrimPattern>instead of aSlotDisplay.Checks
Compiled core and demo, and ran
SendablePacketTest,PlayerIntegrationTest,ArgumentTypeTest,ArgumentParserTest,ProcessConnectionTest,ProcessPacketOwnershipTestandNetworkPropertiesTest. The full suite was left to CI.Merge with a merge commit so upstream's history stays an ancestor for the next sync.
🤖 Generated with Claude Code