-
Notifications
You must be signed in to change notification settings - Fork 3.7k
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
reorganize basecli appTx commands #111
Conversation
f9866c0
to
b8dc6cd
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.
Nice cleanup.
Can you also check other repos (tmlibs/cli, tendermint, light-client, basecoin-example...) to see if we use this naming format FlagXXX and raise issues if not, so we can standardize (or maybe it is just my code that is different).
Also, please let me know what you think of the PrepareAppTx
idea. If you like it, let's just make that small enhancement as another pr (or right on the branch).
found, err := txcmd.LoadJSON(tx) | ||
if err != nil { |
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.
Not needed, as if found == false
, LoadJSON will have done no work and err
is guaranteed to be nil
. So I optimized to use only one err checking block.
But this is more clear, and less likely to have subtle errors later introduced.
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.
Okay, for more clarity use a nil assign found, _ :=
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.
no, if found is true, then err is what we want
it made sense to me as i know the semantics of the function (and wrote all three cases in the header), but you are right, it is confusing. leaving it the way you put it.
one if statement costs the computer <1ns, but the lack of it costs a developer several minutes.
FeeFlag = "fee" | ||
GasFlag = "gas" | ||
SequenceFlag = "sequence" | ||
FlagTo = "to" |
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.
Sure, I guess this is the more standard naming?
We should make sure we put Flag
first in all repos then.
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.
Yes, this naming convention makes more sense, I will explore this issue of standardization across our repos, will also add to the coding standards documentation
@@ -103,39 +111,53 @@ func readSendTxFlags(tx *btypes.SendTx) error { | |||
|
|||
/******** AppTx *********/ | |||
|
|||
// BroadcastAppTx wraps, signs, and executes an app tx basecoin transaction | |||
func BroadcastAppTx(tx *btypes.AppTx) (*ctypes.ResultBroadcastTxCommit, error) { |
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.
Yes, good helper. Creating the tx from input is app-dependent, as is the output logic, but this should be the same for almost every app.
//parse the fee and amounts into coin types | ||
var err error | ||
tx.Fee, err = btypes.ParseCoin(viper.GetString(FeeFlag)) | ||
func ReadAppTxFlags() (gas int64, fee btypes.Coin, txInput btypes.TxInput, err error) { |
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.
Okay, seems a bit more verbose to me, but I see how you use it in the counter app.
If this usage seems more clear to you (no hidden modifications of the AppTx), then I am cool with it as well.
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.
Yes, this is definitely my preference - another advantage I've been discovering while programming tracko is that the senders address is needed in the generation of the app.Data - it's nice to not need to reach into an incomplete transaction to pull this out and just use txInput.Address much more clear
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.
great argument. glad you are putting this to the test to make a better api. more useful and less magic
if err != nil { | ||
return err | ||
} | ||
|
||
// now read the app-specific flags | ||
err = readCounterFlags(tx) | ||
// Read the standard app-tx flags |
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.
@rigelrozanski : possible improvement...
If we want to get crazy with helper functions. It seems that everything from here until BroadcastAppTx is the same on every app.
So in addition to BroadcastAppTx, we could have PrepareAppTx(name, data) (*types.AppTx, error)
that creates the apptx. Maybe even combine them into PrepareAndBroadcastAppTx(...)
.... but then again, maybe that is going overboard and would obscure the funcionality
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 had actually originally set this up to go Cr4zY with the helper functions, but I decided that it makes sense to have some of the process still encapsulated in the application command - This is specifically in reference to the many variations of process flow I envisioned. There are really 4 elements here:
- Get standard flags
- Get plugin-specific flags
- Create/Broadcast AppTx
- Output
Already while programming trackotron I've noticed how the generating the plugin-specific flags can require niche information from processed standard flags, I supposed we can pass in all the information in the form of a semi-complete AppTx - but this seems messy and unnecessary. In more complex (maybe multi-transaction) commands, some of these variables may be reused or reassigned before added to an AppTx and broadcast, and lastly a command may want to use different output.
This tiny bit more verboseness ultimately makes the code much more flexible/clear
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.
👍
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.
Thank you for the sanity check ;)
* [capricorn] cosmos-sdk v0.42.9 to v0.42.10 (cosmos#117) * fix: file keyring fails to add/import/export keys when input is not stdin (fix cosmos#9566) (backport cosmos#9821) (cosmos#9880) * fix: file keyring fails to add/import/export keys when input is not stdin (fix cosmos#9566) (cosmos#9821) ## Description Add a test case to reproduce the issue described in cosmos#9566. The test currently fails, and I've pointed some possible solutions over cosmos#9566 (comment). But I feel this needs more works in order to provide a more robust solution. I'll keep poking at better options, but taking any pointers if anyone has ideas. (cherry picked from commit f479b51) # Conflicts: # client/keys/add.go # client/keys/add_test.go # client/keys/export_test.go * fix: merge conflict backporting pr-9821 (cosmos#9888) Co-authored-by: daeMOn <flavien.binet@gmail.com> * fix: Fix CLI query tx docs for acc/seq (cosmos#9942) (cosmos#9951) <!-- The default pull request template is for types feat, fix, or refactor. For other templates, add one of the following parameters to the url: - template=docs.md - template=other.md --> ## Description ref: user from #validators-verfied channel on Cosmos Discord <!-- Add a description of the changes that this PR introduces and the files that are the most critical to review. --> * build(deps): bump TM to v0.34.12 (backport cosmos#9956) (cosmos#9961) * perf: Remove telemetry from wrappings of store (backport cosmos#10077) (cosmos#10084) * docs: update to v0.44 version tag (cosmos#10069) (cosmos#10097) (cherry picked from commit d6c3017) # Conflicts: # docs/.vuepress/enhanceApp.js Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com> * fix!: update ABCI query to use request height (backport cosmos#9879) (cosmos#10144) * fix: use keyring in config for add-genesis-account cmd (backport cosmos#9969) (cosmos#10065) * fix: use keyring in config for add-genesis-account cmd (cosmos#9969) <!-- The default pull request template is for types feat, fix, or refactor. For other templates, add one of the following parameters to the url: - template=docs.md - template=other.md --> ## Description ref: cosmos#9644 +use the keyring backend (if specified) in the binary config for the add-genesis-account command +update existing test to check for the case of keyring in config * build(deps): bump github.com/tendermint/tendermint from 0.34.12 to 0.34.13 (backport cosmos#10106) (cosmos#10107) * build(deps): bump github.com/tendermint/tendermint (cosmos#10106) (cherry picked from commit 8ee5e50) * fix go.sum Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Robert Zaremba <robert@zaremba.ch> * perf: Make CacheKV store interleaved iterator and insertion not O(n^2) (backport cosmos#10026) (cosmos#10114) * perf: Make CacheKV store interleaved iterator and insertion not O(n^2) (cosmos#10026) (cherry picked from commit 28bf2c1) # Conflicts: # CHANGELOG.md # store/cachekv/store.go * Fix merge conflict * fix changelog Co-authored-by: Dev Ojha <ValarDragon@users.noreply.github.com> Co-authored-by: ValarDragon <dojha12@gmail.com> Co-authored-by: Robert Zaremba <robert@zaremba.ch> * chore: bump IAVL version (backport cosmos#10040) (cosmos#10186) * chore: bump IAVL version (cosmos#10040) * chore: bump IAVL version * test master * update IAVL version * adding missing go.sum entry * adding missing entries * fix go.sum * clear go.sum * fixing go.sum Co-authored-by: marbar3778 <marbar3778@yahoo.com> (cherry picked from commit 693ffb1) * add changelog update * tidy go.mod Co-authored-by: Robert Zaremba <robert@zaremba.ch> * feat: backport reject redundant transactions from ibc-go (cosmos#10211) * backport refund of redundant packets from ibc-go * update changelog * address review comments and lint errors * added nolint Co-authored-by: Carlos Rodriguez <crodveg@gmail.com> * chore: Changelog and Release Notes for 0.42.10 (cosmos#10242) * chores: bump tendermint version * fix: add required helper for group module Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Robert Zaremba <robert@zaremba.ch> Co-authored-by: Dev Ojha <ValarDragon@users.noreply.github.com> Co-authored-by: ValarDragon <dojha12@gmail.com> Co-authored-by: Carlos Rodriguez <crodveg@yahoo.es> Co-authored-by: Carlos Rodriguez <crodveg@gmail.com> Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com> * fix: add hack to handle group v2 messages in baseapp (cosmos#118) * fix: add hack to handle group v2 messages in baseapp * chores: disable lint warning * feat: backport caelum bls on v0.42 sdk (cosmos#119) * Bls (cosmos#104) * bls signature for basic account * benchmark for bls and ed25519 * added bls sig verify cost to genesis * Revert "Merge branch 'fetchai:master' into bls" This reverts commit a5dd8ea9c1597c285e9375f168dd7af51e76f6b3, reversing changes made to 082e0710e3dd2f96733e76f8e2f928c2d7e4ab29. * format using go tools * nuisance golangci-lint errors * Bls (cosmos#105) * bls signature for basic account * benchmark for bls and ed25519 * added bls sig verify cost to genesis * Revert "Merge branch 'fetchai:master' into bls" This reverts commit a5dd8ea9c1597c285e9375f168dd7af51e76f6b3, reversing changes made to 082e0710e3dd2f96733e76f8e2f928c2d7e4ab29. * format using go tools * nuisance golangci-lint errors * POP interfaces in accounts and authentication * add bls multsig operations * fixed golangci-lint error * changes after comments * change codespace for invalid pop error * extend migrate with bls cost * set bls cost multiplier * fix ante test errors * feat: Caelum (cosmos#111) * bls signature for basic account * benchmark for bls and ed25519 * added bls sig verify cost to genesis * Revert "Merge branch 'fetchai:master' into bls" This reverts commit a5dd8ea9c1597c285e9375f168dd7af51e76f6b3, reversing changes made to 082e0710e3dd2f96733e76f8e2f928c2d7e4ab29. * format using go tools * nuisance golangci-lint errors * Bls (cosmos#104) * bls signature for basic account * benchmark for bls and ed25519 * added bls sig verify cost to genesis * Revert "Merge branch 'fetchai:master' into bls" This reverts commit a5dd8ea9c1597c285e9375f168dd7af51e76f6b3, reversing changes made to 082e0710e3dd2f96733e76f8e2f928c2d7e4ab29. * format using go tools * nuisance golangci-lint errors * POP interfaces in accounts and authentication * add bls multsig operations * fixed golangci-lint error * changes after comments * initial commit from regen-ledger/x/group v1.0.0 * minor changes to bls12381 key generation * initial commit from regen-ledger/proto/regen/group v1.0.0 * group module compatibility for fetchai cosomos-sdk * add bls account restriction to group members * fix bug in setting pop * make msg uniqueness checking optional * add bls basic/aggregate vote * add checking on empty messages/public keys * add gas caclulation/consumption for verifying aggregated votes * minor change to gas calculation for voteagg * initial commit for orm and types from regen-ledger v2.0.0-beta1 * upgrade testsuite to regen-ledger v2.0.0-beta1 * make bls requirement for group members optional * add tests for bls related group operations * client and server for poll and aggregated votes and integration tests * fix bls related test errors * fix proto-lint errors * goimport format * proto comments * update blst to v0.3.5 and more tests for bls * Update x/auth/ante/sigverify.go Co-authored-by: daeMOn <flavien.binet@gmail.com> * Update x/group/client/util.go Co-authored-by: daeMOn <flavien.binet@gmail.com> Co-authored-by: daeMOn <flavien.binet@gmail.com> * fix: bls12381 compat with sdk v0.42 * fix: buf lint / breaking command changes * fix: staking test want more gas * chores: drop arm from CI test matrix * chores: fix lint Co-authored-by: kitounliu <58184672+kitounliu@users.noreply.github.com> Co-authored-by: kitty <jia.liu@fetch.ai> * fix: more gas for simulations. Disable test caching Co-authored-by: kitounliu <58184672+kitounliu@users.noreply.github.com> Co-authored-by: kitty <jia.liu@fetch.ai> * chores: revert bls integration (cosmos#121) * chores: bump sdk v0.42.11 (cosmos#123) * chores: revert bls integration * fix: --home flag parsing (backport cosmos#10226) (cosmos#10272) * fix: --home flag parsing (cosmos#10226) <!-- The default pull request template is for types feat, fix, or refactor. For other templates, add one of the following parameters to the url: - template=docs.md - template=other.md --> ## Description Closes: #XXXX <!-- Add a description of the changes that this PR introduces and the files that are the most critical to review. --> * fix: null guard for tx fee amounts (backport cosmos#10327) (cosmos#10343) * fix: null guard for tx fee amounts (cosmos#10327) ## Description It is possible to submit a TX with a fees object containing a Coin with a nil amount. This results in a rather cryptic redacted panic response when the basic validation checks fee Coins for negative amounts. This PR adds an additional check for nil to provide a friendlier error message. * perf: Only do memory allocation when zero coin is found (backport cosmos#10339) (cosmos#10362) * perf: Only do memory allocation when zero coin is found (cosmos#10339) ## Description Closes: cosmos#10333 Added a loop that checks for zero coins before making any memory allocations. If no zero coins are found, just return the `coins` slice as is. If a zero coin is found, then allocate the new array, stop looking for the first zero, and restart the loop to "remove" the 0's. * build(deps): bump github.com/tendermint/tendermint from 0.34.13 to 0.34.14 (backport cosmos#10357) (cosmos#10376) * build(deps): bump github.com/tendermint/tendermint from 0.34.13 to 0.34.14 (cosmos#10357) Bumps [github.com/tendermint/tendermint](https://github.com/tendermint/tendermint) from 0.34.13 to 0.34.14. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tendermint/tendermint/releases">github.com/tendermint/tendermint's releases</a>.</em></p> <blockquote> <h2>0.34.14 (WARNING: BETA SOFTWARE)</h2> <p><a href="https://github.com/tendermint/tendermint/blob/v0.34.14/CHANGELOG.md#v0.34.14">https://github.com/tendermint/tendermint/blob/v0.34.14/CHANGELOG.md#v0.34.14</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/tendermint/tendermint/blob/master/CHANGELOG.md">github.com/tendermint/tendermint's changelog</a>.</em></p> <blockquote> <h2>v0.34.14</h2> <p>This release backports the <code>rollback</code> feature to allow recovery in the event of an incorrect app hash.</p> <h3>FEATURES</h3> <ul> <li><a href="https://github-redirect.dependabot.com/tendermint/tendermint/pull/6982">#6982</a> The tendermint binary now has built-in suppport for running the end-to-end test application (with state sync support) (<a href="https://github.com/cmwaters"><code>@cmwaters</code></a>).</li> <li>[cli] <a href="https://github-redirect.dependabot.com/tendermint/tendermint/pull/7033">#7033</a> Add a <code>rollback</code> command to rollback to the previous tendermint state. This may be useful in the event of non-determinstic app hash or when reverting an upgrade. <a href="https://github.com/cmwaters"><code>@cmwaters</code></a></li> </ul> <h3>IMPROVEMENTS</h3> <ul> <li><a href="https://github-redirect.dependabot.com/tendermint/tendermint/pull/7104">#7103</a> Remove IAVL dependency (backport of <a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/6550">#6550</a>) (<a href="https://github.com/cmwaters"><code>@cmwaters</code></a>)</li> </ul> <h3>BUG FIXES</h3> <ul> <li><a href="https://github-redirect.dependabot.com/tendermint/tendermint/pull/7057">#7057</a> Import Postgres driver support for the psql indexer (<a href="https://github.com/creachadair"><code>@creachadair</code></a>).</li> <li>[ABCI] <a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/7110">#7110</a> Revert "change client to use multi-reader mutexes (<a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/6873">#6873</a>)" (<a href="https://github.com/tychoish"><code>@tychoish</code></a>).</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tendermint/tendermint/commit/85870def7b628effad73af942e638bbddf2ba8fd"><code>85870de</code></a> release: prepare changelog for 0.34.14 (<a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/7105">#7105</a>)</li> <li><a href="https://github.com/tendermint/tendermint/commit/ff2758b32e637b50734ad5ff1d0b24403af0deb2"><code>ff2758b</code></a> dep: remove IAVL dependency (backport <a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/6550">#6550</a>) (<a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/7104">#7104</a>)</li> <li><a href="https://github.com/tendermint/tendermint/commit/a82cb7dcda832b8c6475481bf404257a56aa2d18"><code>a82cb7d</code></a> Revert "abci: change client to use multi-reader mutexes (<a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/6306">#6306</a>)" (backport <a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/7">#7</a>...</li> <li><a href="https://github.com/tendermint/tendermint/commit/1dfb3451eaaa438067dadb6835e9aa948689f39e"><code>1dfb345</code></a> e2e: light nodes should use builtin abci app (<a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/7095">#7095</a>) (<a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/7096">#7096</a>)</li> <li><a href="https://github.com/tendermint/tendermint/commit/9f13b9b083da0ec45a48e57d5a283afdf698ba5b"><code>9f13b9b</code></a> e2e: abci protocol should be consistent across networks (backport <a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/7078">#7078</a>) (<a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/7085">#7085</a>)</li> <li><a href="https://github.com/tendermint/tendermint/commit/16ba782fa6549ea1e50a7fe7addb538ff15bf619"><code>16ba782</code></a> cli: allow node operator to rollback last state (backport <a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/7033">#7033</a>) (<a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/7080">#7080</a>)</li> <li><a href="https://github.com/tendermint/tendermint/commit/474ed04273bade74df583c7bfdc63e6e1a70a919"><code>474ed04</code></a> Import Postgres driver support for the psql indexer (backport). (<a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/7057">#7057</a>)</li> <li><a href="https://github.com/tendermint/tendermint/commit/2d8287d0f70962cc1d7bda0250def18962abf282"><code>2d8287d</code></a> e2e: allow running of single node using the e2e app (backport) (<a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/7024">#7024</a>)</li> <li><a href="https://github.com/tendermint/tendermint/commit/294a9695b4a768b4c8a9cb71c3562cdbff58e64c"><code>294a969</code></a> e2e: backport minor reliability improvements (<a href="https://github-redirect.dependabot.com/tendermint/tendermint/issues/6967">#6967</a>)</li> <li>See full diff in <a href="https://github.com/tendermint/tendermint/compare/v0.34.13...v0.34.14">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/tendermint/tendermint&package-manager=go_modules&previous-version=0.34.13&new-version=0.34.14)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) * fix: unmarshalling issue with multisig keys in master (backport cosmos#10061) (cosmos#10113) * fix: unmarshalling issue with multisig keys in master (cosmos#10061) (cherry picked from commit 3d3bc7c) # Conflicts: # CHANGELOG.md # crypto/keys/multisig/multisig_test.go * fix conflicts * fix conflicts * Update crypto/keys/multisig/multisig_test.go * Removed unused imports * fix changelog * Update CHANGELOG.md * Fix TestLegacyMultisig test (cosmos#10275) Co-authored-by: Henrik Aasted Sørensen <has@bitcraft.dk> Co-authored-by: Aleksandr Bezobchuk <aleks.bezobchuk@gmail.com> Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com> Co-authored-by: Robert Zaremba <robert@zaremba.ch> Co-authored-by: Mario Karagiorgas <salem8@gmail.com> * fix: query account balance by ibc denom (backport cosmos#10394) (cosmos#10524) * fix: query account balance by ibc denom (cosmos#10394) <!-- The default pull request template is for types feat, fix, or refactor. For other templates, add one of the following parameters to the url: - template=docs.md - template=other.md --> ## Description Closes: cosmos#10381 <!-- Add a description of the changes that this PR introduces and the files that are the most critical to review. --> * chore: Iavl iterator (backport cosmos#10544) (cosmos#10546) * chore: Iavl iterator (cosmos#10544) <!-- The default pull request template is for types feat, fix, or refactor. For other templates, add one of the following parameters to the url: - template=docs.md - template=other.md --> ## Description Closes: cosmos#10335 This PR adds a custom version of cosmos/iavl(cosmos/iavl#440) that removes the usage of channel-based approach on iterating IAVL tree. replaces cosmos#10404 * build(deps): Bump github.com/cosmos/iavl from 0.17.2 to 0.17.3 (backport cosmos#10654) (cosmos#10664) * build(deps): Bump github.com/cosmos/iavl from 0.17.2 to 0.17.3 (cosmos#10654) Bumps [github.com/cosmos/iavl](https://github.com/cosmos/iavl) from 0.17.2 to 0.17.3. - [Release notes](https://github.com/cosmos/iavl/releases) - [Changelog](https://github.com/cosmos/iavl/blob/v0.17.3/CHANGELOG.md) - [Commits](cosmos/iavl@v0.17.2...v0.17.3) * fix: Add Events to TxResponse (backport cosmos#10630) (cosmos#10644) * fix: Add Events to TxResponse (cosmos#10630) (cherry picked from commit c4bedf8) # Conflicts: # CHANGELOG.md # go.sum # types/abci.pb.go # types/result.go * Michael sucks * Who Let the Bugs Out?? * Reinventing the wheel. Again. * No changes made Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com> Co-authored-by: Aleksandr Bezobchuk <aleks.bezobchuk@gmail.com> * fix: bech32 address test to satisfy the specification (cosmos#10163) (cosmos#10164) (cosmos#10665) ## Description Closes: cosmos#10163 <!-- Add a description of the changes that this PR introduces and the files that are the most critical to review. --> * build(deps): Use self-maintained btcutil (cosmos#10082) (backport cosmos#10201) (cosmos#10622) * build(deps): Use self-maintained btcutil (cosmos#10082) (cosmos#10201) ## Description Closes: cosmos#10082 * chore: v0.42.11 changelog and release notes (cosmos#10695) Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Henrik Aasted Sørensen <has@bitcraft.dk> Co-authored-by: Aleksandr Bezobchuk <aleks.bezobchuk@gmail.com> Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com> Co-authored-by: Robert Zaremba <robert@zaremba.ch> Co-authored-by: Mario Karagiorgas <salem8@gmail.com> Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com> * chores: go mod tidy Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Ryan Christoffersen <12519942+ryanchristo@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Robert Zaremba <robert@zaremba.ch> Co-authored-by: Dev Ojha <ValarDragon@users.noreply.github.com> Co-authored-by: ValarDragon <dojha12@gmail.com> Co-authored-by: Carlos Rodriguez <crodveg@yahoo.es> Co-authored-by: Carlos Rodriguez <crodveg@gmail.com> Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com> Co-authored-by: kitounliu <58184672+kitounliu@users.noreply.github.com> Co-authored-by: kitty <jia.liu@fetch.ai> Co-authored-by: Henrik Aasted Sørensen <has@bitcraft.dk> Co-authored-by: Aleksandr Bezobchuk <aleks.bezobchuk@gmail.com> Co-authored-by: Mario Karagiorgas <salem8@gmail.com> Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
fix(baseapp): prevent queries for future (or in-progress) blocks
* Bring back the cliff vesting command osmosis-labs#111 * Wrap error
) * feat!: bring back the cliff vesting command (#111) (#271) * Bring back the cliff vesting command osmosis-labs#111 * Wrap error (cherry picked from commit bf5b163) # Conflicts: # x/auth/vesting/client/cli/tx.go * fix conflict * Fix merge conflict Co-authored-by: Dev Ojha <ValarDragon@users.noreply.github.com> Co-authored-by: Dev Ojha <dojha@berkeley.edu>
I wanted to make the process flow a bit more clear when generating a new AppTx transaction. Rather than passing around an
AppTx
struct to be have flags directly inserted into it, flags are parsed and fed to back up to the custom plugin app-tx command and then added to anAppTx
struct as it's created.Additionally a few more commands that an plugin will typically not need to consider when developing the appTx have been clumped together and exported to the bcmd command (
BroadcastTx
)Lastly, one nuance implication of these changes is they are more conducive to more complex multi-transaction commands which a developer may wish to implement. The common flags can be pulled as variables and applied to multiple transactions this way instead of needing to cross reference the previous transaction which appTx flags were pulled into.