-
Notifications
You must be signed in to change notification settings - Fork 955
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
Murisi/separate signing #1498
Murisi/separate signing #1498
Conversation
* origin/tomas/fix-max-wait-tries: changelog: #1456 client: stop waiting for catch-up when max tries are reached
* origin/tomas/find-validator-by-tm: changelog: add #1344 pos: add a query to find validator by Tendermint address
* cwgoes/cse-in-inflation: Common sub-expression elimination in inflation calculation
* adrian/upgrade_cometbft: use cometbft binary
* cwgoes/remove-unused-named-address: update changelog Remove unused module
…n_id reading from submit functions.
tx_epoch.unwrap() != submission_epoch => | ||
{ | ||
// Then we probably straddled an epoch boundary. Let's retry... | ||
eprintln!( |
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.
we can merge this but all these eprintln
statements make this hard to use, similar to panics
because consumers can't catch the errors to display useful error messages to users.
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.
I'm okay with these changes
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.
This looks good to me! For reference, here is how we are utilizing these changes:
25cc553
to
8224f75
Compare
* murisi/separate-signing: Added changelog entry. Factored out the submission of the reveal PK transaction. Simplified the reveal PK transaction construction flow. Factored chain_id reading from submit functions. Allow Tx builders to take verification keys. Increased usage of PublicKeys relative to SecretKeys in tx construction. Only reveal a public key when the signer is an implicit address. Now only use TxBroadcastData::Wrapper for non dry runs. Now update proof of work solution in transaction header. Separating out the reveal PK transaction construction. Separate transaction building from signing from submission. Removed unnecessary header updates for dry runs. fixup! Merge 'origin/fraccaman/fix-sdk-tx-with-hash' (#1474) sdk: use hash instead of wasm code Revert "Merge 'origin/fraccaman/fix-sdk-tx-with-hash' (#1474)" Revert "fixup! Merge 'origin/fraccaman/fix-sdk-tx-with-hash' (#1474)" fixup!: don't call `process_slashes` within `advance_epoch` clean up logging fix clippy remove test code until slash pool transfers are solved rip slash pool fixup! Merge 'origin/fraccaman/fix-sdk-tx-with-hash' (#1474) get_slashed_amount: inclusive on infraction epoch add cli to sdk impl for tx unjail sdk: use hash instead of wasm code make find_slashes_in_ranges inclusive on end epoch withdraw: fix bounds for collecting slashes for an unbond aesthetic cleaning Update WASM checksums. revert bound cleaning for readability refactor slash lookup fixup! add cubic_slash_window_length to bounds (maybe still needs change) update changelog Remove unused module Fixed local tx prover dependency regression. use cometbft binary Fixed the header of transactions in dry_run. Updated the WASM checksums. remove unused cubic slash function changelog: add #1444 fixup! store total bond sums of each validator for efficient computation refactor epoch offsets with params methods store total bond sums of each validator for efficient computation pos/lib.rs: WIP fix things inside of `bonds_and_unbonds` fix PoS client query related functions fix `bond_amount` pos: cubic slashing with new procedure for recording and unbonding/withdrawing
Currently transaction building, signing, and submission are all combined into single functions in the SDK. This setup makes it hard for web clients using the SDK to elect to use a hardware wallet to sign transactions instead. So this PR separates the transaction building operation from the signing and the submission operations in the SDK.