feat(x/tx): Sort JSON attributes for "inline_json" encoder#20049
Conversation
WalkthroughWalkthroughThe recent updates focus on enhancing JSON handling in a Cosmos SDK module by introducing functions to sort JSON objects by keys before conversion to strings. This ensures consistent JSON formatting throughout the module. The changes include the addition of sorting functions and adjustments to unit tests to accommodate and validate the new JSON normalization behavior. Changes
Recent Review DetailsConfiguration used: .coderabbit.yml Files selected for processing (1)
Files skipped from review as they are similar to previous changes (1)
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configration File (
|
|
Confirming that this PR restores the old JSON normalization behaviour such that existing clients can create correct Amino JSON for CosmWasm messages using Cosmos SDK 0.50+ after this PR is in. |
|
Note to myself to tag x/tx when I tag 0.50.6. |
Follow up on #19919
This PR fixes the "inline_json" encoder implementation by adding recursive sorting of the JSON fields and formatting (remove white spaces)
Author Checklist
All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.
I have...
!in the type prefix if API or client breaking changeCHANGELOG.mdReviewers Checklist
All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.
I have...
Summary by CodeRabbit