This PR is a forward-port of #9392 from `release/v0.42.x` to `master`.
It was initially decided in https://github.com/cosmos/cosmos-sdk/pull/9392#issuecomment-865987655 that #9392 would be a temporary fix for 0.42, but as per @AdityaSripal's request we're actually foward-porting this to master too.
## Mergify description:
This is an automatic backport of pull request #9392 done by [Mergify](https://mergify.io).
Cherry-pick of 3776793ce6 has failed:
```
On branch mergify/bp/master/pr-9392
Your branch is up to date with 'origin/master'.
You are currently cherry-picking commit 3776793ce.
(fix conflicts and run "git cherry-pick --continue")
(use "git cherry-pick --skip" to skip this patch)
(use "git cherry-pick --abort" to cancel the cherry-pick operation)
Changes to be committed:
modified: x/bank/simulation/params.go
modified: x/capability/keeper/keeper.go
Unmerged paths:
(use "git add/rm <file>..." as appropriate to mark resolution)
deleted by us: x/ibc/applications/transfer/simulation/params.go
```
To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally
---
<details>
<summary>Mergify commands and options</summary>
<br />
More conditions and actions can be found in the [documentation](https://docs.mergify.io/).
You can also trigger Mergify actions by commenting on this pull request:
- `@Mergifyio refresh` will re-evaluate the rules
- `@Mergifyio rebase` will rebase this PR on its base branch
- `@Mergifyio update` will merge the base branch into this PR
- `@Mergifyio backport <destination>` will backport this PR on `<destination>` branch
Additionally, on Mergify [dashboard](https://dashboard.mergify.io/) you can:
- look at your merge queues
- generate the Mergify configuration with the config editor.
Finally, you can contact us on https://mergify.io/
</details>
* Make JSONMarshaler require proto.Message
* Use &msg with MarshalJSON
* Use *LegacyAmino in queriers instead of JSONMarshaler
* Revert ABCIMessageLogs String() and coins tests
* Use LegacyAmino in client/debug and fix subspace tests
* Use LegacyAmino in all legacy queriers and adapt simulation
* Make AminoCodec implement Marshaler and some godoc fixes
* Test fixes
* Remove unrelevant comment
* Use TxConfig.TxJSONEncoder
* Use encoding/json in genutil cli migrate/validate genesis cmds
* Address simulation related comments
* Use JSONMarshaler in cli tests
* Use proto.Message as respType in cli tests
* Use tmjson for tm GenesisDoc
* Update types/module/simulation.go
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
* Update types/module/module_test.go
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
* Add godoc comments
* Remove unused InsertKeyJSON
* Fix tests
Co-authored-by: Aaron Craelius <aaronc@users.noreply.github.com>
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
* initial implementation of per denom sendenabled
* Fix for accidentally removed keyword
* Validate individual param in param array
* Lint fix
* Refactor bank params to use protobuf
Modified SendEnabled property to be part of generic Params object
Updated genesis functions to use default params structure
* Refactor simulation genesis for clarity
* update changelog for bank sendenable per denom
* fix NoOpMsg type in multisend test
* Add a coin denom send check utility function
* Additional godoc comments and clarification
* Add default send enabled parameter to bank.
Remove empty denom capability from SendEnabled parameters
Update simulation to exercise both configuration options independently
* Minor suggested improvements.
* simulation fix
* bank proto sendenabled package name removed
* Remove extra gogo proto yaml tags
* Params rename IsSendEnabled to SendEnabledDenom
* Refactor to SendEnabledCoin(s)
* update slashing test to use bank params
* Clean up change log entry for feature.
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>