Bump msgpackr to 2.0.4: two-byte over-cap record decode fix (5.1) - #1180
Merged
Conversation
v2 counterpart of the v5.0 msgpackr 1.12.1 bump. msgpackr's two-byte record path mis-read self-contained over-cap record definitions (recordDefinition went through a second-byte reader that consumed the first value byte as a phantom high byte → "Record id is not defined for N"), making high-cardinality records undecodable. Fixed upstream in msgpackr 2.0.4 (kriszyp/msgpackr#190), read-path only, so the bump fixes the decode and recovers any already-written data without changing the on-disk format. On main the typed path goes through structon; the classic two-byte path is reached via the randomAccessFields=false opt-out / toJSON fallback, so this is a latent-correctness fix for 5.1. Encoder regression coverage lives upstream (msgpackr#190) and on the v5.0 line (#1179). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Contributor
|
Warning You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again! |
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
Contributor
|
Reviewed; no blockers found. |
kriszyp
marked this pull request as ready for review
June 9, 2026 02:57
Contributor
|
Warning You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again! |
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.
Summary
Bumps msgpackr 2.0.1 → 2.0.4, the v2 counterpart of the v5.0 fix (#1179). msgpackr ≤2.0.3 mis-read self-contained two-byte over-cap record definitions (
recordDefinitionused a second-byte reader that consumed the first value byte as a phantom high byte →Record id is not defined for N), leaving high-cardinality records undecodable. Fixed upstream in kriszyp/msgpackr#190 — read-path only, so it fixes decoding and recovers already-written data without an on-disk format change.Scope on main/5.1
The typed path goes through structon; the classic two-byte path is reached via the
randomAccessFields=falseopt-out (#1152) /toJSONfallback, so this is a latent-correctness fix for the unreleased 5.1 line (lower urgency than the v5.0/v5.0.30 patch, where it's actively hit + recovers CDI data).Verification
recordEncoder.test.js(5 tests) passes against 2.0.4; build succeeds.Notes
🤖 Generated by Claude (Opus 4.7).