Skip to content

Conversation

@nrednav
Copy link
Owner

@nrednav nrednav commented Aug 10, 2025

What's changed

Changed

  • BREAKING: Map encoding is now deterministic by default
    • Msgpack.encode/2 sorts map keys according to Elixir's standard term
      ordering before serialization
    • This guarantees that identical maps produce identical binary output, but it
      alters the output compared to previous versions of this library

Added

  • Added a :deterministic option to Msgpack.encode/2
    • You can set this to false to disable key sorting for higher performance in
      contexts where deterministic output is not required.

@nrednav nrednav self-assigned this Aug 10, 2025
@nrednav nrednav marked this pull request as ready for review August 10, 2025 20:50
@nrednav nrednav merged commit 8935276 into dev Aug 10, 2025
2 checks passed
@nrednav nrednav deleted the feature/deterministic-map-encoding branch August 10, 2025 20:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants