Repository navigation
fix(protocol): complete the remaining 26.60 migration fixes - #470
Closed
AlexProgrammerDE wants to merge 4 commits into
Closed
AlexProgrammerDE wants to merge 4 commits into
AlexProgrammerDE wants to merge 4 commits into
Conversation
The 26.60 branch translates the uint8 frame sentinel correctly but still retains the payload without advancing the decoder buffer. Netty can then interpret payload bytes as another compression header and fail decoding. Emit a retained slice that consumes the complete payload. Cover direct and negotiated no-compression frames with real EmbeddedChannel tests. Add the JUnit test runtime without duplicating compile-only dependency versions. Both regressions fail with the upstream decoder.
The 26.60 palette retains block-state version 1.21.60.33 while adding connection properties. Its added-properties schema also runs on current redstone, fire and chorus states, replacing supplied connections with legacy defaults. Add a property only when it is missing. Cover explicit redstone direction, fire and chorus domains, legacy defaults and repeated upgrades. The regression changes redstone north from up to none on the upstream code.
The regenerated vanilla skin archive contains only LICENSE. ResourcePack rejects it because manifest.json is missing, and the default login skin provider cannot find its pack, Steve texture or geometry. Restore the complete archive from the validated 1.26.60.5 GDK snapshot. The 13 resource files match the original package and preserve the Mojang license. Verify pack parsing, Steve image decoding and matching humanoid geometry dimensions against the actual bundled archive.
Protocol 2225 supplies dimension cloud height and visibility, but the current decoder discards both. Retain them with the minimum Y and height range, then project them through Java 26.3 environment attributes. Preserve the existing Overworld override boundary and other authored attributes. Transparent cloud color suppresses clouds because the Java day timeline multiplies that color and preserves zero alpha. Reject nonpositive ranges and upper-bound overflow. Six regressions cover wire boundaries, signed bounds and attribute projection. Mojang protocol-2225 metadata and its cloud-synchronization notes establish the new fields. The earlier native 1.26.51.1 Hive capture establishes the minimum-Y plus height-range semantics. This change includes no inventory prerequisites or new claim of native visual parity.
Collaborator
|
merged the important fixes |
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.
Follow-up to #466, targeting
update/r26u6after the manual port of #468.The current branch still has three correctness issues, and it discards the new dimension cloud settings:
LICENSE, so the resource-pack loader rejects it and the default login skin is unavailable. Restore the manifest, images, and geometry from the validated 1.26.60.5 GDK snapshot.readRetainedSlice. The header-sentinel correction is already present, but retaining the buffer without consuming it lets Netty decode payload bytes as another compression header.The branch contains four focused fixes with their regression tests.
Validation:
./gradlew --no-configuration-cache build validateMappingspasses, including all Checkstyle tasks and 10 tests.Mojang's protocol-2225 metadata establishes the new cloud fields. The implementation uses the branch's Java 17 baseline.
Validation uses local packet, registry, upgrade, and asset tests. No live server join or native visual comparison was performed.