-
Notifications
You must be signed in to change notification settings - Fork 3.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(x/tx): don't shadow Amino marshalling error messages #19955
Conversation
WalkthroughWalkthroughThe recent update focuses on enhancing error handling and interoperability in the system. A significant bug fix was made to ensure that errors related to Amino marshalling are properly reported, preventing their shadowing. Additionally, the system has transitioned to a hybrid resolver approach, moving away from relying solely on the protov2 registry. This change aims to improve the system's flexibility and efficiency in processing transactions. Changes
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 (
|
9be102d
to
bff9d2c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Review Status
Configuration used: .coderabbit.yml
Files selected for processing (2)
- x/tx/CHANGELOG.md (1 hunks)
- x/tx/signing/aminojson/json_marshal.go (1 hunks)
Files skipped from review as they are similar to previous changes (1)
- x/tx/signing/aminojson/json_marshal.go
Additional Context Used
Path-based Instructions (1)
x/tx/CHANGELOG.md (1)
Pattern
**/*.md
: "Assess the documentation for misspellings, grammatical errors, missing documentation and correctness"
Additional comments not posted (1)
x/tx/CHANGELOG.md (1)
44-44
: Ensure the description under "Bug Fixes" clearly explains the impact of the fix.While the entry for PR #19955 under "Bug Fixes" is concise, consider expanding it to briefly describe how the fix improves error message clarity during Amino marshalling. This will provide better context for readers.
* main: (45 commits) build(deps): Bump github.com/decred/dcrd/dcrec/secp256k1/v4 from 4.2.0 to 4.3.0 (cosmos#19913) build(deps): Bump google.golang.org/grpc from 1.62.1 to 1.63.0 (cosmos#19929) test(types/address): add additional unit tests for address.LengthPrefix and a… (cosmos#19964) refactor(x/bank)!: remove Address.String() (cosmos#19954) build(deps): Bump github.com/prometheus/common from 0.51.1 to 0.52.2 (cosmos#19930) fix(x/epochs): Fix init genesis (cosmos#19958) feat(core,runtime): transaction service (exec mode) (cosmos#19953) fix(x/authz): non utf-8 characters in logs (cosmos#19923) build(deps): Bump golang.org/x/crypto from 0.21.0 to 0.22.0 (cosmos#19960) chore: fix spelling errors (cosmos#19957) fix(x/tx): don't shadow Amino marshalling error messages (cosmos#19955) refactor(types): loosen module.AppModule interface (cosmos#19951) feat(core): add `TxValidator` interface (cosmos#19950) build(deps): Bump cosmossdk.io/store from 1.0.2 to 1.1.0 in /x/epochs (cosmos#19947) feat(x/epochs): upstream osmosis epoch module (cosmos#19697) build(deps): Bump bufbuild/buf-setup-action from 1.30.0 to 1.30.1 (cosmos#19928) refactor(x/genutil)!: remove Address.String() (cosmos#19926) docs(x/mint): Fix inconsistency in mint docs (cosmos#19915) build(deps): Bump github.com/regen-network/gocuke from 1.1.0 to 1.1.1 in /orm (cosmos#19920) feat: Integrate grpc configuration into client.toml (cosmos#19905) ...
) * fix(x/tx): don't shadow Amino marshalling error messages (cosmos#19955) * use directly instead of cast --------- Co-authored-by: Antonio Pitasi <[email protected]>
(cherry picked from commit 15ad85d) # Conflicts: # x/tx/CHANGELOG.md
…osmos#808) * fix(x/tx): don't shadow Amino marshalling error messages (cosmos#19955) * use directly instead of cast --------- Co-authored-by: Antonio Pitasi <[email protected]>
* feat(x/tx): support bytes field as signer (cosmos#21850) * Problem: multisig account failed on threshold encode after send tx (cosmos#808) * fix(x/tx): don't shadow Amino marshalling error messages (cosmos#19955) * use directly instead of cast --------- Co-authored-by: Antonio Pitasi <[email protected]> * feat: Fix datarace --------- Co-authored-by: mmsqe <[email protected]> Co-authored-by: Antonio Pitasi <[email protected]>
Description
A minor thing but it took me a while to figure out where the problem was when marshalling a message of mine.
The error (trimmed for readability) was:
While digging in the code I found that the real Amino error was not being considered, and
buf.Bytes()
was being tried to use anyway, but only when indenting the response.In fact, after trying the same query from CLI with
--no-indent
, I got the real error: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.md
Reviewers 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