Skip to content
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

interchain accounts controller chains need to import msg types from other chains for SendTx #2397

Closed
3 tasks
charleenfei opened this issue Sep 26, 2022 · 9 comments
Labels
27-interchain-accounts needs discussion Issues that need discussion before they can be worked on

Comments

@charleenfei
Copy link
Contributor

charleenfei commented Sep 26, 2022

Summary

currently, the controllerkeeper SendTx function expects the InterchainAccountPacketData Data to be constructed via the helper function icatypes.SerializeCosmosTx, which takes in an array of sdk.Msg types.

basically, to construct the right Data we would need to import the types package for the Msgs (which creates conflicts if the chain we are trying to import the types from is on a different ibc-go version),

or recreate the proto but using the package name specified by the host chain and take out the section of the helper function that takes an sdk.Msg type (because we would have to reimplement the Msg functions) (see our cosmoverse demo for this workaround). this should be better documented if it's the way forward.

Problem Definition

Proposal


For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate contributors tagged/assigned
@charleenfei charleenfei changed the title interchain accounts controller chains need to import msg types from other chains for SendTx or recreate Msg types interchain accounts controller chains need to import msg types from other chains for SendTx Sep 26, 2022
@colin-axner
Copy link
Contributor

colin-axner commented Sep 28, 2022

Can you provide examples of the issue you faced? I'm having a hard time following. Applications should provide the host chain cdc with the host chain msgs to SerializeCosmosTx. This should not be called from the controller chain perspective, the controller chain should be taking in bytes for the tx which will be executed on the host

What is your proposed change?

@AdityaSripal
Copy link
Member

Applications should provide the host chain cdc with the host chain msgs to SerializeCosmosTx

So the usecase we built was the state machine itself sending the ica message.

So the controller chain state machine needed to create and marshal the ica messages.

So the first approach we took was to simply import the types package of the host chain (simpledex) that had the message we wanted to send in the controller chains ica caller module module (eightball). Then the eightball module used the constructor function in simpledex/types to create the sdk.Msg (MsgSwap) and called SerializeCosmosTx.
This approach didn't work because the two chains were using different versions of ibc-go, so we got an import cycle issue.

So then we just copied the MsgSwap proto file into our proto package. We then created our own MsgSwap and sent it over to the host chain. This failed on the host name because the msgtype url was not registered on the host chain codec (since the package names were different)

Finally, we copied the proto file to the controller chain repo but we kept the package name the same so the msg url stayed the same as well. We still ran into the issue in using the serializing helper function because it expected an sdk.Msg and our generated proto message didn't implement sdk.Msg. So either we have to copy over the sdk.Msg implementation of simpledex.MsgSwap or we change the helper serialize function to not take in an sdk.Msg on the controller chain.

The deserialize function on the host chain should still deserialize to a sdk.Msg

@AdityaSripal
Copy link
Member

Afaik, we haven't tested cases where controller is sending host chain a msg that it doesn't actually use and the chains are on different versions. We faced this case in our workshop, ran into issues, and figured out how to do it:

Copy over the msg proto under the same package name and path, and generate the pb.go on our side.

https://github.com/charleenfei/cosmoverse-workshop/blob/main/proto/simpledex/simpledex/swap.proto

We also implemented this function:

https://github.com/charleenfei/cosmoverse-workshop/blob/3e1d51b93d788167fdd10c95eeb72c0731fd8aa4/x/eightball/types/codec.go#L35

So that we can serialize the tx's without having the MsgSwap implement sdk.Msg on the controller chain. If you notice it is the exact same implementation as SerializeCosmosTx it just doesn't expect the argument to be sdk.Msg which was unnecessary in the first place.

So here is the proposal:

  1. Change SerializeCosmosTx to take in proto.Message instead of sdk.Msg (you can copy the helper function linked above)
  2. Document how to handle the case where the controller chain wants to send messages that it does not implement.

@colin-axner
Copy link
Contributor

This approach didn't work because the two chains were using different versions of ibc-go, so we got an import cycle issue.

Can you go into more detail here? It'd help me understand the exact issue.

Started looking into this, I'm a bit confused why the compiler is importing testing packages from ibc-go. My understanding was the testing files are not exported:

github.com/charleenfei/cosmoverse-workshop/x/eightball/keeper imports
	github.com/charleenfei/simple-dex/simple-dex/x/simpledex/types imports
	github.com/cosmos/ibc-go/v3/modules/core/02-client/types tested by
	github.com/cosmos/ibc-go/v3/modules/core/02-client/types.test imports
	github.com/cosmos/ibc-go/v3/testing imports
	github.com/cosmos/ibc-go/v3/testing/simapp imports
	github.com/cosmos/cosmos-sdk/x/auth/client/rest: module github.com/cosmos/cosmos-sdk@latest found (v0.46.2), but does not contain package github.com/cosmos/cosmos-sdk/x/auth/client/rest

So here is the proposal:

  1. Change SerializeCosmosTx to take in proto.Message instead of sdk.Msg (you can copy the helper function linked above)
  2. Document how to handle the case where the controller chain wants to send messages that it does not implement.

Sounds good to me

@colin-axner
Copy link
Contributor

Tagging needs discussion since I think it'd be useful to continue looking at potential work flows/solutions for this problem

@AdityaSripal
Copy link
Member

Can you go into more detail here? It'd help me understand the exact issue.

We had controller chain on v5. We wanted to just import the host message types package simpledex/types. But simpledex/types imported ibc-go v3.

This led to an error on go mod. Trying to hack around the issue by using go.mod replace led to API breaks that we had trouble resolving.

Basically it seems very difficult to just import host types within the binary for the general case.

I think the recommended usage should be to just copy the proto files and use the generated message on your own end

mergify bot pushed a commit that referenced this issue Oct 27, 2022
…nt of sdk.Msg interface (#2607)

## Description



ref: #2397 

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [x] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [x] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [x] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [x] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [x] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [x] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [x] Re-reviewed `Files changed` in the Github PR explorer
- [x] Review `Codecov Report` in the comment section below once CI passes
mergify bot pushed a commit that referenced this issue Oct 27, 2022
…nt of sdk.Msg interface (#2607)

## Description

ref: #2397

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [x] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [x] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [x] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [x] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [x] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [x] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [x] Re-reviewed `Files changed` in the Github PR explorer
- [x] Review `Codecov Report` in the comment section below once CI passes

(cherry picked from commit 5260c77)
colin-axner added a commit that referenced this issue Oct 31, 2022
…nt of sdk.Msg interface (#2607) (#2626)

## Description

ref: #2397

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [x] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [x] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [x] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [x] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [x] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [x] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [x] Re-reviewed `Files changed` in the Github PR explorer
- [x] Review `Codecov Report` in the comment section below once CI passes

(cherry picked from commit 5260c77)

Co-authored-by: colin axnér <[email protected]>
Co-authored-by: Carlos Rodriguez <[email protected]>
@crodriguezvega crodriguezvega removed this from the v6.0.0 milestone Nov 1, 2022
@0xekez
Copy link

0xekez commented Feb 5, 2023

it feels to me that the issue here is that the sdk.Msg protobuf is appearing in an on-the-wire message at all. who, other than another SDK go module, can hope to interoperate with this?

@colin-axner Applications should provide the host chain cdc with the host chain msgs to SerializeCosmosTx. This should not be called from the controller chain perspective, the controller chain should be taking in bytes for the tx which will be executed on the host

i think this requirement makes the current cosmos SDK interchian accounts implementation very difficult to interoperate with.

  1. expecting applications to serialize messages in terms of the sdk.Msg type is a high bar. imagine a non-SDK code trying to programatically interact with the ibc-go ICA implementation. it would need to find the protobuf definitions for the host chains sdk.Msg, and encode it using one of the two forks of protobuf that the SDK uses. further, imagine requiring a smart contract to serialize sdk.Msg objects like this.. i think the ICA specification either needs to be much more clear about how this serialization happens so that a non-SDK-expert can figure out how to do this serialization, or it is extremely hard to interoperate with the current verison. you need the ability to do this serialization and deserialization to programatically interact with interchian accounts because protocols want to transform events on one chain, to events on another.
  2. the current SDK ICA implementation errors if a controller tries to connect to it using any encoding format other than "proto3" (whatever that means, per the earlier comment about which protobuf fork is being used for encoding). it feels that the correct behavior should be to "negotiate" and respond with metadata suggesting that "proto3" be used in the open-init handshake step, so that the controller can either adjust to this encoding, or otherwise cancel the connection.

these points together mean:

  1. it is hard (if not impossible in the case of non-go smart contracts) to programatically interoperate with the ibc-go ICA implementation as the implementation provides no guidance on how to serialize the sdk.Msg type.
  2. any controller module that prefers a different message type over sdk.Msg and attempts to connect to the ibc-go ICA implementation will have their connection rejected, and can not programatically negotiate to use the "proto3" wire format.

my suggestion would be to throw out using sdk.Msg, and use JSON which is used in both ICS-721 and ICS-20 as the on-the-wire packet format. for example, CosmWasm already has a well used JSON version of CosmosMsg that could be used.

allowing additional negotiation over the encoding format per point (2) would make it "technically possible" to interoperate with this ICA implementation, though this doesn't ameliorate the difficulty of doing so discussed in (1) like using JSON on the wire would.

damiannolan added a commit that referenced this issue Mar 9, 2023
* add changelog entries for v5.0.0

* chore: makefile cleanup/fixes (#2549)

* cleaning up makefile

* chore: removing goimports (#2548)

* more cleanup

* missing files

* empty new line at the end

* fix dockerfile

* rename import

Co-authored-by: Carlos Rodriguez <[email protected]>
Co-authored-by: Cian Hatton <[email protected]>

* use controller module address instead of module name for NewMsgChannelOpenInit (#2568)

## Description

In controller keeper's `registerInterchainAccount` we execute a `MsgChannelOpenInit` to set up an ica channel. Currently, we have [`icatypes.ModuleName`](https://github.com/cosmos/ibc-go/blob/95cec44c9fb10a2e84a327cdd98c7d588f091f42/modules/apps/27-interchain-accounts/controller/keeper/account.go#L63) as the msg signer. This is not good because the [`ValidateBasic()`](https://github.com/cosmos/ibc-go/blob/692790402a033c1d9647c1e1eded5351332283bf/modules/core/04-channel/types/msgs.go#L34) of `MsgChannelOpenInit` has check if msg signer is bech32 or not.

ref #2566

closes: #2559

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [ ] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [ ] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [ ] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [ ] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [ ] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [ ] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [ ] Re-reviewed `Files changed` in the Github PR explorer
- [ ] Review `Codecov Report` in the comment section below once CI passes

* test: 03-connection e2e test param change (#2139)

* test: adding initial test boilerplate

* fix: test

* extend test to add token transfer

* change to send from B to A and add test matrix

* add test matrices

* fix imports

* fix some more imports

* review comments

* compare uint64 instead of string

* review comments

* fix test

Co-authored-by: Carlos Rodriguez <[email protected]>
Co-authored-by: Carlos Rodriguez <[email protected]>

* fix: forbid negative values for trusting period, unbonding period and max clock drift (#2555)

Co-authored-by: Carlos Rodriguez <[email protected]>

* refactor!: allow for serialization of proto message without fulfillment of sdk.Msg interface (#2607)

## Description



ref: #2397 

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [x] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [x] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [x] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [x] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [x] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [x] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [x] Re-reviewed `Files changed` in the Github PR explorer
- [x] Review `Codecov Report` in the comment section below once CI passes

* alignment

* fix e2e ica tests (#2628)

* rename `ClientParams` gRPC method to `Params` (#2573)

* rename ClientParams to Params

* add changelog

* review comment to update rest api url

Co-authored-by: Carlos Rodriguez <[email protected]>

* remove port prefix requirement (#2590)

* remove port prefix requirement

* chore: remove depcrated test and fix lint

* add changelog entry

* Update CHANGELOG.md

Co-authored-by: Damian Nolan <[email protected]>

Co-authored-by: Damian Nolan <[email protected]>

* Update package-lock.json (#2569)

Co-authored-by: Carlos Rodriguez <[email protected]>

* Update package-lock.json (#2570)

Co-authored-by: colin axnér <[email protected]>
Co-authored-by: Carlos Rodriguez <[email protected]>

* fix: rm bech32 check from owner address on ICA controller msgs RegisterInterchainAccount and SendTx (#2601)

* rm validate basic owner address check

* Fetch makefile dependencies before building docker image (#2615)

## Description



closes: #XXXX

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [ ] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [ ] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [ ] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [ ] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [ ] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [ ] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [ ] Re-reviewed `Files changed` in the Github PR explorer
- [ ] Review `Codecov Report` in the comment section below once CI passes

* post v2.4.2, v3.3.1, v4.1.1 and v5.0.1 release chores (#2627)

* chore: update changelog and versions for docs site

* add new release lines to stable release policy

* post release chores

* update mergify

Co-authored-by: Carlos Rodriguez <[email protected]>

* fix: skip emission of unpopulated memo field in ics20 (#2651)

## Description

By setting `EmitDefaults` to false, we will not include an empty memo field in the marshaled json bytes

closes: #2645 

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [x] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [ ] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [ ] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [ ] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [ ] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [ ] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [ ] Re-reviewed `Files changed` in the Github PR explorer
- [ ] Review `Codecov Report` in the comment section below once CI passes

* docs: ics27 v6 documentation updates (#2561)

* WIP

* updating messages doc

* updating msgs doc

* refactoring and organising ics27 docs

* updating owner field validation docs

* adding legacy api heading to auth modules doc

* Update docs/apps/interchain-accounts/messages.md

Co-authored-by: Charly <[email protected]>

* Update docs/apps/interchain-accounts/messages.md

Co-authored-by: Carlos Rodriguez <[email protected]>

* applying suggestions from review

* updating future improvements section of active channels

Co-authored-by: Charly <[email protected]>
Co-authored-by: Carlos Rodriguez <[email protected]>

* e2e: adding e2e upgrade test for ibc-go/v6 (#2490)

* adding x/group to simapp

* [WIP] initial groups e2e scaffolding

* work in progress

* clean

* adding interchain account address query to ica controller

* adding basic cli query

* satisfy linter, aligning recvr var naming

* initial passing, register account proposal

* successfully passing locally

* updating default genesis state with allow all ica msgs, cleanup

* reinstate num validators and num full nodes

* unpin ibctest

* Update e2e/tests/interchain_accounts/groups_test.go

Co-authored-by: Carlos Rodriguez <[email protected]>

* updating swagger docs

* updating e2e to ibc-go/v6

* WIP e2e upgrades for ibc-go/v6

* test manual e2e icad from branch

* whoops

* replace transfer logic with ics27 logic

* removing pr number version tags

* upgrade ica dep and tidy

* removing upgrade name const

* update deps, remove genesis code, extract consts

* code comments and consts

* readding intertx query client

* fixing godoc

* removing json entry in test matracies

* refactor upgrades tests

* hardcoding image values

* updating workflows and correcting import

* adding sanity checks and in-line comment

* chore: adapt upgrade e2e workflow for custom images (#2541)

* e2e upgrade test workflows in progress

* adding chain binary to workflow

* adding upgrade to compatibility workflows

* Revert "adding upgrade to compatibility workflows"

This reverts commit 77019997ed71c9c73b0077ecee45e5c0739111f6.

* replace v5 tag in upgrade e2e

* updating image tags

* use v5.0.1 release version for upgrades e2e

Co-authored-by: Carlos Rodriguez <[email protected]>
Co-authored-by: colin axnér <[email protected]>

* e2e: add transfer with memo compatibility tests (#2640)

* Build E2E tests in workflow (#2649)

* Add scopedkeeper as an interface to exported package (#2638)

## Description

Move all expected scoped keepers to a unified interface in `core/exported` package.

closes: #2020 

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [ ] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [ ] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [ ] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [ ] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [ ] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [ ] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [ ] Re-reviewed `Files changed` in the Github PR explorer
- [ ] Review `Codecov Report` in the comment section below once CI passes

* chore: add potential use cases documentation for ica  (#2594)

## Description

will fix ordering after #2561 is merged, so review that first

closes: #2472 

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [ ] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [ ] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [ ] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [ ] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [ ] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [ ] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [ ] Re-reviewed `Files changed` in the Github PR explorer
- [ ] Review `Codecov Report` in the comment section below once CI passes

* chore: small README nits for readability and usability (#2669)

* update code owners (#2665)

* fix(testing): fix block proposer and allow Default gas to be modified (#2657)

* carry block proposer, and allow Default gas to be modified

* add changelog entry

Co-authored-by: Federico Kunze Küllmer <[email protected]>
Co-authored-by: colin axnér <[email protected]>
Co-authored-by: Carlos Rodriguez <[email protected]>

* add check send enabled (#2679)

* add check send enabled

* changelog

* fix: avoid race conditions in ics27 handshakes (#2682)

* wip adding conditional to msg server and go apis, adding tests

* cleanup

* cleanup middleware enabled code

* adding additional test case for reopening channel via msg server

* Update modules/apps/27-interchain-accounts/controller/keeper/keeper.go

Co-authored-by: Cian Hatton <[email protected]>

* updating error msgs and test case assertion

* updating InitGenesis to set middleware disabled

Co-authored-by: Cian Hatton <[email protected]>

* Removing stale comment (#2685)

* chore: removing stale comment

* Update modules/apps/27-interchain-accounts/controller/keeper/msg_server.go

Co-authored-by: Damian Nolan <[email protected]>

* chore: fixing indentation

Co-authored-by: Damian Nolan <[email protected]>
Co-authored-by: Carlos Rodriguez <[email protected]>

* post release chores (#2695)

Co-authored-by: Carlos Rodriguez <[email protected]>

* removed unused variables (#2692)

## Description



closes: #2486 

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [x] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [x] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [ ] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [x] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [ ] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [x] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [x] Re-reviewed `Files changed` in the Github PR explorer
- [ ] Review `Codecov Report` in the comment section below once CI passes

* deps: updating sdk to v0.46.4 (#2647)

## Description



closes: #XXXX

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [ ] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [ ] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [ ] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [ ] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [ ] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [ ] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [ ] Re-reviewed `Files changed` in the Github PR explorer
- [ ] Review `Codecov Report` in the comment section below once CI passes

* e2e: updating upgrade test to use msg server (#2681)

* chore: update protobuf generation to latest buf changes (#2705)

* updating buf proto generation setup

* revert adding test msg type

* updating proto-swagger-gen configs

* updating to latest proto builder image

* downgrade to 0.46 support

* go mod tidy e2e

* cleanup makefile

* rerun make proto-update-deps

* updating buf yaml

* updating cosmos/gogo-proto pin

* regenerate protos

* go mod tidy e2e

* removing pulsar buf yaml

* Update proto/buf.yaml

* adding proto-registry.yml workflow for buf push to BSR

* Update check x/bank sendEnabled link in changelog (#2714)

Co-authored-by: Cian Hatton <[email protected]>

* e2e: fix memo test version declaration (#2723)

## Description



closes: #XXXX

---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [ ] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting))
- [ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [ ] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [ ] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing)
- [ ] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`)
- [ ] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [ ] Added a relevant changelog entry to the `Unreleased` section in `CHANGELOG.md`
- [ ] Re-reviewed `Files changed` in the Github PR explorer
- [ ] Review `Codecov Report` in the comment section below once CI passes

* chore: rm event emission after context caching (#2662)

* post v5.1.0 release chores (#2722)

* post v5.1.0 release chores

* split transfer tests to workaround github's 256 job limit

Co-authored-by: Carlos Rodriguez <[email protected]>

* Update transfer-memo.json

* build(deps): bump github.com/spf13/viper from 1.13.0 to 1.14.0 (#2702)

* build(deps): bump github.com/spf13/viper from 1.13.0 to 1.14.0

Bumps [github.com/spf13/viper](https://github.com/spf13/viper) from 1.13.0 to 1.14.0.
- [Release notes](https://github.com/spf13/viper/releases)
- [Commits](https://github.com/spf13/viper/compare/v1.13.0...v1.14.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/viper
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* revert bump of tendermint to v0.35

* go mod tidy

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Carlos Rodriguez <[email protected]>
Co-authored-by: Carlos Rodriguez <[email protected]>

* chore: e2e for ICA reopening (#2720)

Co-authored-by: crodriguezvega <[email protected]>

* build(deps): bump golangci/golangci-lint-action from 3.3.0 to 3.3.1 (#2738)

Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 3.3.0 to 3.3.1.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](https://github.com/golangci/golangci-lint-action/compare/v3.3.0...v3.3.1)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Compare signature data in misbehaviours only if path differs (#2744)

fix(statemachine)!: (06-solomachine) [#2744] Misbehaviour.ValidateBasic() now only enforces that signature data does not match when the signature paths are different.

* chore: rename all occurances of smtypes and solomachinetypes import aliases to solomachine (#2743)

* add missing set order functions for ica (#2740)

Co-authored-by: Carlos Rodriguez <[email protected]>

* test: added test to verify signbytes marshal correctly for single signature solomachine

* docs: fix migration/docs for ICA controller middleware (#2737)

* update docs/migration with the change to middleware for ICA controller

* improve variable naming

* alignment

Co-authored-by: Carlos Rodriguez <[email protected]>

* chore: updating `VerifyMembership` and `VerifyNonMembership` methods to use `Path` interface (#2736)

* updating VerifyMembership and VerifyNonMembership interfaces to use exported.Path in favour of []byte

* adding mock struct KeyPath to ibcmock testing pkg, adding additional tests to solomachine and tm clients

* e2e: updated compatibility tests to support running against all unreleased versions (#2680)

* chore: integrated git cliff into the code base to automate generation of changelogs

* chore: fixing dead link in PR template (#2777)

* deprecated(api)!: (06-solomachine) [#2761] removed deprecated `ClientId` field from `Misbehaviour` and `allow_update_after_proposal` field from `ClientState`

* feat: adding connection params grpc and cli query (#2745)

imp: (core/03-connection) Adding `ConnectionParams` grpc query and CLI to 03-connection.
fix: (modules/core/keeper) Fix request wiring for `UpgradedConsensusState` in core query server.

* chore: adding sentinel path for solomachine header (#2748)

chore(statemachine)!: Adding sentinel value for header path in 06-solomachine.

* fix: added check for empty path in 06-solomachine (#2741)

* chore: fixing link to interchain accounts blogpost (#2787)

* deps: bump SDK to v0.46.6 (#2784)

* deps: bump SDK to v0.46.5

* bump SDK to v0.46.5 in e2e

* deps: bump to SDK v0.46.6

Co-authored-by: Carlos Rodriguez <[email protected]>

* chore: adding migration doc for v6 to vuepress config (#2788)

* e2e: remove irrelevant compatibility tests (#2780)

* remove irrelevant compatibility tests (i.e. tests between already released tags)

* add separate workflow to run unreleased compatibility tests

* review comments

* skip missing json files

* fix condition for skipping missing json files

* rename workflow

Co-authored-by: Carlos Rodriguez <[email protected]>

* remove link to ICS 009 (#2797)

* chore: adding defensive checks to ics27 capability migrations (#2798)

* adding defensive checks and additional tests to ics27 capability migrations

* assert mock capabilities remain unchanged

* Update modules/apps/27-interchain-accounts/controller/migrations/v6/migrations_test.go

Co-authored-by: Carlos Rodriguez <[email protected]>

Co-authored-by: Carlos Rodriguez <[email protected]>

* chore: move verifyMisbehavour to the top of misbehaviour_handle.go

* chore: move solomachine CheckForMisbehaviour to `misbehaviour_handle.go` (#2802)

* chore: move Tendermint CheckForMisbehaviour to `misbehaviour_handle.go` (#2803)

* chore: remove custom dependabot reviewers (#2804)

Co-authored-by: Carlos Rodriguez <[email protected]>

* fix: allow zero proof height, solo machine discards provided proof height in favor of sequence (#2746)

imp: allow proof height to be zero for all core IBC `sdk.Msg` types that contain proofs.
imp: discard proofHeight for solo machines and use the solo machine sequence instead.

* chore: mergify backport task for v5.2.x (#2806)

* Save gas on IsFeeEnabled (#2786)

* Save gas on IsFeeEnabled

* add entry for #2786

Co-authored-by: Carlos Rodriguez <[email protected]>

* chore: removed usage of deprecated `set-output` field in all Github workflows. (#2790)

* Add more events to on IBC transfer, add tests for ibc transfer event (#2643)

improvements: add amount, denom, and memo to transfer event emission.

* build(deps): bump github.com/cosmos/cosmos-proto from 1.0.0-alpha7 to 1.0.0-alpha8 (#2726)

* build(deps): bump github.com/cosmos/cosmos-proto

Bumps [github.com/cosmos/cosmos-proto](https://github.com/cosmos/cosmos-proto) from 1.0.0-alpha7 to 1.0.0-alpha8.
- [Release notes](https://github.com/cosmos/cosmos-proto/releases)
- [Commits](https://github.com/cosmos/cosmos-proto/compare/v1.0.0-alpha7...v1.0.0-alpha8)

---
updated-dependencies:
- dependency-name: github.com/cosmos/cosmos-proto
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* chore: downgrade tendermint version

* chore: go mod tidy e2e go module

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Colin Axnér <[email protected]>
Co-authored-by: Damian Nolan <[email protected]>

* e2e: added ICS27 e2e test with governance. (#2808)

* feat: add helper function for parsing clientID from client state path (#2820)

feat: add `MustParseClientStatePath` which parses the clientID from a client state key path

* e2e: add compatibility tests for ICA to v6.0.x (#2805)

e2e: add ica compatibility tests for v6.0.x

* test: updated solomachine tests to perform an ICS20 transfer instead of mocking functionality.

* e2e: update icad tags for manual e2e workflow

Co-authored-by: Carlos Rodriguez <[email protected]>

* e2e: enabling compatibility tests to be usable from other repositories' CI. (#2838)

* feat: add optional migration pruning for tendermint consensus states (#2800)

feat: add optional in-place store migration function to prune all expired tendermint consensus states

* feat: add AppModuleBasic for tendermint client (#2825)

feat: add `AppModuleBasic` for the 07-tendermint client and remove tendermint type registration from core IBC. Chains must register the `AppModuleBasic` of light clients.

* feat: add AppModuleBasic for solo machine client (#2826)

feat: add `AppModuleBasic` for the 06-solomachine client and remove solo machine type registration from core IBC. Chains must register the `AppModuleBasic` of light clients.

* feat: add automatic in-place migrations for 02-client-refactor (v7) (#2819)

feat: add automatic in-place store migrations to remove the localhost client and migrate existing solo machine definitions.

* build(deps): bump google.golang.org/grpc from 1.50.1 to 1.51.0 (#2794)

* build(deps): bump google.golang.org/grpc from 1.50.1 to 1.51.0

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.50.1 to 1.51.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.50.1...v1.51.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* fix conflicts

* bump grpc in e2e

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Carlos Rodriguez <[email protected]>
Co-authored-by: Carlos Rodriguez <[email protected]>

* e2e: add base and incentivized ica e2e tests to v6.0.x (#2832)

* bug: fix clientID validation regex to conform closer to spec (#2510)

Rejects non-ASCII plus whitespaces and slashes to get it much closer to
the specifications per
https://github.com/cosmos/ibc/tree/main/spec/core/ics-024-host-requirements#paths-identifiers-separators

while here added test vectors that were previously failing. However, we
still need much better specifications for how long of values for
{client-type} are accepted.

Fixes #2269

* follow up for #2510

* Revert "follow up for #2510"

This reverts commit bfaf6e0118cca32838cd05eb732f4f4b7b4b634c.

* e2e: Added support for running compatibility tests off the main branch. (#2848)

* Renaming variable SubModuleName to ModuleName (#2851)

* Renaming variable SubmoduleName to ModuleName in 07-tendermint (#2852)

* refactor: rename IterateClients to IterateClientStates, add a prefix (#2856)

feat(api)!: rename `IterateClients` to `IterateClientStates`. The function now takes a prefix argument which may be used for prefix iteration over the client store.
feat: add `PrefixedClientStorePath` and `PrefixedClientStoreKey` functions to 24-host

* chore: add upgrade handler to simapp for v6 -> v7 (#2842)

* chore: follow up for #2510 (#2854)

* follow up for #2510

* Update modules/core/02-client/types/keys.go

Co-authored-by: colin axnér <[email protected]>

Co-authored-by: colin axnér <[email protected]>

* e2e: move tag determination logic into the e2e Github workflows. (#2849)

* deps: Bump ICS 23 to v0.9.0

* chore: bump ics23 to v0.9.0

* chore: add changelog entry

Co-authored-by: Carlos Rodriguez <[email protected]>

* docs: updating v7 migration doc with generic state verification methods (#2789)

* updating v6 to v7 migration doc with generic state verification methods

* add note about state verification prior to ibc-go/v7

Co-authored-by: Carlos Rodriguez <[email protected]>

* fix: fix unmarshalling of packet data in send tx CLI

* fix error messages

* Update tx.go

* fix unmarshalling

* chore: add wait time for packet relay to e2e test for ICA channel opening after packet timeout

* chore: scaffold custom IBC light client development guide (#2860)

* chore: changing ibcprotocol.org to ibcprotocol.dev (#2884)

* chore: update README to include link to IDA (#2887)

* update README to reflect new website

* pr comment

* feat: Add genesis migrations for v6 to v7. The migration migrates the solo machine client state definition, removes all solo machine consensus states and removes the localhost client. (#2824)

* refactor: simplify automatic migration code by using client keeper functions (#2864)

* imp(api)!: remove legacy migrations required for upgrading from Stargate release line to ibc-go >= v1.x.x. (#2897)

* chore: remove unnecessary file (#2898)

* Update release-tracker.md

* docs: v6 ICA migration docs improvements

* e2e: changing default relayer tag to be v2.1.2 instead of main. (#2903)

* refactor: simplify optional tendermint pruning migrations (#2862)

* chore: add tmsdkeys to CODEOWNER for docs (#2904)

* docs: add legacy docs for ICA

* docs: added documentation for client state methods. (#2886)

* docs: improvements to ICA docs

* docs: move solomachine docs into the docs directory. (#2908)

* deps: bump technote-space/get-diff-action from 6.1.1 to 6.1.2 (#2899)

* deps: bump github.com/cosmos/cosmos-proto from 1.0.0-alpha8 to 1.0.0-beta.1 (#2870)

* update README (#2910)

* Update CHANGELOG.md

* chore: update ibctest to latest commit (#2909)

* update chainconfig

* update to commit fixing broadcastTx

* update to use SDK default cointype 118

* update so relayer tag isn't required

* Fixing markdown link (#2924)

* post v6.0.0 release chores (#2919)

* docs: update integration docs to include light client registration. (#2905)

* imp: Add `AssertEvents` which asserts events against expected event map. (#2829)

* e2e: adding e2e upgrade test for ibc-go v7 (#2902)

* add test for automatic migration of solomachine clientstate version

* add clientID generation functions

* update godoc

* update sprintf message

* e2e: update tags in e2e upgrade test

* chore: use diffs to make registration more clear (#2927)

* nit: fix typo in a comment

* refactor: require light clients to set the initial client state and consensus state via the client state `Initialize` method (#2936)

* set the initial client and consensus state via the client state Initialize method. update godocs

* updating godocs

* updating migration doc

* updating light client guide docs for Initialize method

* updating migration doc

* Apply suggestions from code review

Co-authored-by: Charly <[email protected]>

* Update docs/ibc/light-clients/client-state.md

Co-authored-by: Carlos Rodriguez <[email protected]>

* adding tests to lightclients

* updating 02-client tests

Co-authored-by: Charly <[email protected]>
Co-authored-by: Carlos Rodriguez <[email protected]>

* chore: add backports for v4.3.x and v6.1.x

* update compatibility tests with new release branches (#2946)

* update compatibility tests

* compatibility tests for v4.3.x

* adding tags to tests

* Skip e2e if test matrix does not exist (#2949)

Co-authored-by: Carlos Rodriguez <[email protected]>
Co-authored-by: Cian Hatton <[email protected]>

* fix(statemachine)!: check x/bank send enabled before escrowing fees

* chore(deps): bump goreleaser/goreleaser-action from 3 to 4 (#2932)

Bumps [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) from 3 to 4.
- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)
- [Commits](https://github.com/goreleaser/goreleaser-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: goreleaser/goreleaser-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Carlos Rodriguez <[email protected]>

* chore(api)!: removing solomachine header sequence (#2941)

* removing solomachine header sequence

* removing commented out code in validate basic

* chore(deps): bump bufbuild/buf-setup-action from 1.9.0 to 1.10.0 (#2933)

* chore: adding defensive check to v7 migrations (#2948)

* adding defensive check to v7 migrations

* adding test coverage for absence of tendermint clients

* build(deps): bump cosmossdk.io/math from 1.0.0-beta.3 to 1.0.0-beta.4 (#2835)

* build(deps): bump cosmossdk.io/math from 1.0.0-beta.3 to 1.0.0-beta.4

Bumps [cosmossdk.io/math](https://github.com/cosmos/cosmos-sdk) from 1.0.0-beta.3 to 1.0.0-beta.4.
- [Release notes](https://github.com/cosmos/cosmos-sdk/releases)
- [Changelog](https://github.com/cosmos/cosmos-sdk/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cosmos/cosmos-sdk/compare/math/v1.0.0-beta.3...math/v1.0.0-beta.4)

---
updated-dependencies:
- dependency-name: cosmossdk.io/math
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* downgrade SDK and Tendermint versions

* go mod tidy in e2e

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: crodriguezvega <[email protected]>

* docs: update consensus state docs (#2937)

* docs: lightclient dev guide overview section (#2901)

* adding client/consensus state and height docs

* cleanup

* rename lightclient -> light client

* adding links

* adding client message section, updates re. feedback

* fix wording

* adding brief one liner intro, various minor changes

* removing comment

* fixing spelling

* correct wording

* docs: lightclient dev guide setup and client creation (#2922)

* adding setup page for configuring light client modules and creation of ibc clients

* updating page ordering

* pr review suggestions

* use 02-client-refactor-beta tag in favour of commit hash links

* add link to issue for self managed params

* Update docs/ibc/light-clients/client-state.md

Co-authored-by: Charly <[email protected]>

Co-authored-by: Charly <[email protected]>

* review updates

* clean up

* docs: update consensus state docs (#2937)

Co-authored-by: Charly <[email protected]>

* Update release-tracker.md

* update roadmap

* post v5.2.0 and v6.1.0 release chores (#2957)

* update release-tracker.md

* update roadmap.md

* chore: prune expired `07-tendermint` consensus states on duplicate header updates (#2965)

* move pruning to above duplicate update check

* adding test for pruning on duplicate header update

* adding additional check - assert that a consensus state exists at the prune height

* chore: updating adr version numbers and removing unnecessary comment in solomachine (#2969)

* improvement: allow chains that can't introspect their own `ConsensusState` support IBC

* chore: Improved logging in IBC Core (#2976)

* docs: adding solomachine v7 migration docs (#2968)

* adding solomachine migration docs

* updating migration doc

* Apply suggestions from code review

Co-authored-by: Carlos Rodriguez <[email protected]>

* updating code snippet formatting

* tiny nits

Co-authored-by: Carlos Rodriguez <[email protected]>

* docs: adding export metadata docs for light client module genesis (#2974)

## Description

- Light client guide `ExportMetadata`

closes: #1857 


### Commit Message / Changelog Entry

```bash
docs: adding export metadata docs for light client module genesis
```

see the [guidelines](https://github.com/cosmos/ibc-go/blob/main/CONTRIBUTING.md#commit-messages) for commit messages. (view raw markdown for examples)




---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [ ] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting)).
- [ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [ ] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [ ] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing).
- [ ] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`).
- [ ] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [ ] Provide a [commit message](https://github.com/cosmos/ibc-go/blob/main/CONTRIBUTING.md#commit-messages) to be used for the changelog entry in the PR description for review.
- [ ] Re-reviewed `Files changed` in the Github PR explorer.
- [ ] Review `Codecov Report` in the comment section below once CI passes.

* update roadmap

* docs: existence and non-existence proofs (#2966)

* proofs docs

* fix typo

* docs: explain how to implement the four client state functions which allow for regular updates and misbehaviour handling (#2939)

* update docs

* docs: move ica requirements doc + add requirements doc template (#2917)

* chore: Moved the ibc module name into the exported package (#2982)

* docs: light client dev guide `CheckSubstituteAndUpdateState` (#2981)

* docs: light client dev guide `VerifyUpgradeAndUpdateState`, `VerifyMembership`/`VerifyNonMembership` (#2994)

* deps: bump google.golang.org/grpc from 1.51.0 to 1.52.0 (#2999)

* build(deps): bump bufbuild/buf-setup-action from 1.10.0 to 1.11.0 (#2972)

* deps: update to cosmos-sdk v0.47 (#2672)

* build(deps): bump bufbuild/buf-setup-action from 1.11.0 to 1.12.0 (#3006)

Bumps [bufbuild/buf-setup-action](https://github.com/bufbuild/buf-setup-action) from 1.11.0 to 1.12.0.
- [Release notes](https://github.com/bufbuild/buf-setup-action/releases)
- [Commits](https://github.com/bufbuild/buf-setup-action/compare/v1.11.0...v1.12.0)

---
updated-dependencies:
- dependency-name: bufbuild/buf-setup-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump docker/metadata-action from 4.1.1 to 4.3.0 (#3007)

Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 4.1.1 to 4.3.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/docker/metadata-action/releases">docker/metadata-action's releases</a>.</em></p>
<blockquote>
<h2>v4.3.0</h2>
<ul>
<li>Provide outputs as env vars by <a href="https://github.com/crazy-max"><code>@​crazy-max</code></a> (<a href="https://github-redirect.dependabot.com/docker/metadata-action/issues/257">#257</a>)</li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/docker/metadata-action/compare/v4.2.0...v4.3.0">https://github.com/docker/metadata-action/compare/v4.2.0...v4.3.0</a></p>
<h2>v4.2.0</h2>
<ul>
<li>Add <code>tz</code> attribute to handlebar date function by <a href="https://github.com/chroju"><code>@​chroju</code></a> (<a href="https://github-redirect.dependabot.com/docker/metadata-action/issues/251">#251</a>)</li>
<li>Bump minimatch from 3.0.4 to 3.1.2 (<a href="https://github-redirect.dependabot.com/docker/metadata-action/issues/242">#242</a>)</li>
<li>Bump csv-parse from 5.3.1 to 5.3.3 (<a href="https://github-redirect.dependabot.com/docker/metadata-action/issues/245">#245</a>)</li>
<li>Bump json5 from 2.2.0 to 2.2.3 (<a href="https://github-redirect.dependabot.com/docker/metadata-action/issues/252">#252</a>)</li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/docker/metadata-action/compare/v4.1.1...v4.2.0">https://github.com/docker/metadata-action/compare/v4.1.1...v4.2.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/docker/metadata-action/commit/507c2f2dc502c992ad446e3d7a5dfbe311567a96"><code>507c2f2</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/docker/metadata-action/issues/257">#257</a> from crazy-max/env-output</li>
<li><a href="https://github.com/docker/metadata-action/commit/04861f5102fc7042b8529e3f426856244a8cfba2"><code>04861f5</code></a> update generated content</li>
<li><a href="https://github.com/docker/metadata-action/commit/6729545cde76a1fb0fc1133c68fa5af1181f7e68"><code>6729545</code></a> Provide outputs as env vars</li>
<li><a href="https://github.com/docker/metadata-action/commit/05d22bf31770de02e20c67c70365453e00227f61"><code>05d22bf</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/docker/metadata-action/issues/256">#256</a> from crazy-max/fix-readme</li>
<li><a href="https://github.com/docker/metadata-action/commit/70b403b46b081a6f32f3ebe072afd18ebfa4ce38"><code>70b403b</code></a> Fix README</li>
<li><a href="https://github.com/docker/metadata-action/commit/9e6ae02878038daef2841c9e4bb61e486c726684"><code>9e6ae02</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/docker/metadata-action/issues/252">#252</a> from docker/dependabot/npm_and_yarn/json5-2.2.3</li>
<li><a href="https://github.com/docker/metadata-action/commit/3d239e8b8ac4bbf4cc24920f391d8f08d44b839e"><code>3d239e8</code></a> Bump json5 from 2.2.0 to 2.2.3</li>
<li><a href="https://github.com/docker/metadata-action/commit/7cb52e275081c4e9294d257dd188716a82c82670"><code>7cb52e2</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/docker/metadata-action/issues/251">#251</a> from chroju/set_timezone</li>
<li><a href="https://github.com/docker/metadata-action/commit/90a1d5cf2150f6b10fc688351279736c24eedf25"><code>90a1d5c</code></a> Add tz attribute to handlebar date function</li>
<li><a href="https://github.com/docker/metadata-action/commit/c98ac5e987c125fe23d39b3cecb9ac130a108e27"><code>c98ac5e</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/docker/metadata-action/issues/249">#249</a> from crazy-max/fix-readme</li>
<li>Additional commits viewable in <a href="https://github.com/docker/metadata-action/compare/57396166ad8aefe6098280995947635806a0e6ea...507c2f2dc502c992ad446e3d7a5dfbe311567a96">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=docker/metadata-action&package-manager=github_actions&previous-version=4.1.1&new-version=4.3.0)](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)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

* lint tests (#2926)

* lint tests

* don't use prealloc for golangci

* fix unnecessary conversions

* var-declaration lints

* fix ineffectual assignments

* fix composite literal lints

* address copylocks lints from govet

* error checks in tests

* handshake_test.go error checks

* packet_test.go error checks

* error checks

* msg_server_test.go

* errcheck in upgrade_test.go

* goconsts & linting complete

* Update CHANGELOG.md

* golangci-lint run ./... --fix

* last lint

* fix lints

* tidy

* ignore legacy ica api

* ignore icacontrollersendtx

* golangci lint fixes

* fix test

Co-authored-by: Carlos Rodriguez <[email protected]>
Co-authored-by: Carlos Rodriguez <[email protected]>

* build(deps): bump docker/build-push-action from 3.2.0 to 3.3.0 (#3015)

Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/c56af957549030174b10d6867f20e78cfd7debc5...37abcedcc1da61a57767b7588cb9d03eb57e28b3)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump google.golang.org/grpc from 1.51.0 to 1.52.0 (#3016)

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.51.0 to 1.52.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.51.0...v1.52.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Carlos Rodriguez <[email protected]>

* Update the ecosystem links in the readme (#3018)

The icq and rate limiting links were pointing to outdated links (module repo has moved and rate limiting is no longer as a pr but implemented) so this updates them both

Co-authored-by: Carlos Rodriguez <[email protected]>

* chore(statemachine)!: write channel state before invoking app callbacks in ack and confirm channel handshake steps (#2973)

Co-authored-by: Carlos Rodriguez <[email protected]>

* fix: correctly close iterator in `07-tendermint` store  (#3022)

* fix closing iterator in 07-tendermint

* maintain defer pattern but use new variable to avoiid reassignment issues

* fix: change check to disallow optimistic sends (#3009)

* change check to disallow optimistic sends

* update test

* chore: use `sdk.LogDeferred` when closing store iterators

* ics29 v1 requirements doc (#2958)

* ics29 v1 requirements doc

* Update docs/requirements/ics29-v1-requirements.md

Co-authored-by: Damian Nolan <[email protected]>

Co-authored-by: Damian Nolan <[email protected]>

* docs: refactor contributing guidelines (#2706)

* fix testing package in `types` tests for transfer (#3005)

* chore: adding distribute fee events to ics29

* fix typos

* Fix e2e tests for pre sdk v0.47 chains (#3026)

* build(deps): bump github.com/spf13/viper from 1.14.0 to 1.15.0 (#3035)

* build(deps): bump github.com/spf13/viper from 1.14.0 to 1.15.0

Bumps [github.com/spf13/viper](https://github.com/spf13/viper) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/spf13/viper/releases)
- [Commits](https://github.com/spf13/viper/compare/v1.14.0...v1.15.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/viper
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* go mod tidy in e2e

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Damian Nolan <[email protected]>
Co-authored-by: crodriguezvega <[email protected]>

* temporarily update dockerfile to add all (#3050)

* deps: update cosmos-sdk buf dependency and rebuild protos (#3024)

Co-authored-by: Carlos Rodriguez <[email protected]>

* chore: use correct BSR proto repo in buf.yaml (#3053)

* chore: bumping go mod to ibc-go/v7 (#3014)

* bumping go mod to ibc-go/v7

* updating e2e go module with v7 deps

* fix: update `Paginate` to use `FilterPaginate` in `ClientStates` and `ConnectionChannels` grpc queries (#3010)

* update paginate to use filter paginate

* build(deps): bump google.golang.org/grpc from 1.52.0 to 1.52.1 (#3059)

* build(deps): bump google.golang.org/grpc from 1.52.0 to 1.52.1

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.52.0 to 1.52.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.52.0...v1.52.1)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* go mod tidy e2e

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Damian Nolan <[email protected]>

* docs: add documentation for `TransferAuthorization` (#3044)

* transferauthz docs

* chore: add compatibility tests for v7.0.x and backport task (#3062)

* build(deps): bump golangci/golangci-lint-action from 3.3.1 to 3.4.0 (#3051)

Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 3.3.1 to 3.4.0.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](https://github.com/golangci/golangci-lint-action/compare/v3.3.1...v3.4.0)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump google.golang.org/grpc from 1.52.1 to 1.52.3 (#3065)

* build(deps): bump google.golang.org/grpc from 1.52.1 to 1.52.3

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.52.1 to 1.52.3.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.52.1...v1.52.3)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* go mod tidy in e2e

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: crodriguezvega <[email protected]>

* fix: allow value with slashes in URL template (#3045)

* go code snippets are properly formatted only with the go keyword

* fix: moved non-verification misbehaviour checks to checkForMisbehaviour  (#3046)

* move misbehaviour check

* add test coverage

* Fix dockerfile on main (#3069)

* Updating build simd image workflow (#3060)

* Ensure we never use the Dockerfile on main when working with other branches (#3071)

* chore: Add `HasConnection` and `HasChannel` methods. (#3082)

* Allow specification of arbitrary values when running e2e tests (#3036)

* followup from review comments for #2709 (#3027)

## Description



This PR addresses these two comments from #2709:

- [This comment about using the suffix `Fn`](https://github.com/cosmos/ibc-go/pull/2709#discussion_r1024070188).
- [This comment about adding `doc.go` for packages](https://github.com/cosmos/ibc-go/pull/2709#discussion_r1080734398).

closes: #XXXX


### Commit Message / Changelog Entry

```bash
type: commit message
```

see the [guidelines](https://github.com/cosmos/ibc-go/blob/main/CONTRIBUTING.md#commit-messages) for commit messages. (view raw markdown for examples)




---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [ ] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting)).
- [ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [ ] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md).
- [ ] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing).
- [ ] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`).
- [ ] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [ ] Provide a [commit message](https://github.com/cosmos/ibc-go/blob/main/CONTRIBUTING.md#commit-messages) to be used for the changelog entry in the PR description for review.
- [ ] Re-reviewed `Files changed` in the Github PR explorer.
- [ ] Review `Codecov Report` in the comment section below once CI passes.

* deps: Update to Cosmos SDK v0.47 rc-2 (#3095)

Co-authored-by: Marko Baricevic <[email protected]>
Co-authored-by: Cian Hatton <[email protected]>

* build(deps): bump docker/build-push-action from 3.3.0 to 4.0.0 (#3090)

Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.3.0 to 4.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/docker/build-push-action/releases">docker/build-push-action's releases</a>.</em></p>
<blockquote>
<h2>v4.0.0</h2>
<blockquote>
<p><strong>Warning</strong></p>
<p>Buildx v0.10 enables support for a minimal <a href="https://slsa.dev/provenance/">SLSA Provenance</a> attestation, which requires support for <a href="https://github.com/opencontainers/image-spec">OCI-compliant</a> multi-platform images. This may introduce issues with registry and runtime support (e.g. <a href="https://github-redirect.dependabot.com/docker/buildx/issues/1533">Google Cloud Run and AWS Lambda</a>). You can optionally disable the default provenance attestation functionality using <code>provenance: false</code>.</p>
</blockquote>
<ul>
<li>Revert disable provenance by default if not set by <a href="https://github.com/crazy-max"><code>@​crazy-max</code></a> in <a href="https://github-redirect.dependabot.com/docker/build-push-action/pull/784">docker/build-push-action#784</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/docker/build-push-action/compare/v3.3.1...v4.0.0">https://github.com/docker/build-push-action/compare/v3.3.1...v4.0.0</a></p>
<h2>v3.3.1</h2>
<ul>
<li>Disable provenance by default if not set by <a href="https://github.com/crazy-max"><code>@​crazy-max</code></a> (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/781">#781</a>)</li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/docker/build-push-action/compare/v3.3.0...v3.3.1">https://github.com/docker/build-push-action/compare/v3.3.0...v3.3.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/docker/build-push-action/commit/3b5e8027fcad23fda98b2e3ac259d8d67585f671"><code>3b5e802</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/784">#784</a> from crazy-max/enable-provenance</li>
<li><a href="https://github.com/docker/build-push-action/commit/02d3266a89e5dfed960723e6127886a5adc7eb2f"><code>02d3266</code></a> update generated content</li>
<li><a href="https://github.com/docker/build-push-action/commit/f403dafe18abeb00b9d5976ab285a9f457520f29"><code>f403daf</code></a> revert disable provenance by default if not set</li>
<li><a href="https://github.com/docker/build-push-action/commit/1104d471370f9806843c095c1db02b5a90c5f8b6"><code>1104d47</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/781">#781</a> from crazy-max/disable-provenance</li>
<li><a href="https://github.com/docker/build-push-action/commit/838bf90c88a4d6a02272e7afa2e4e2227b96f2dc"><code>838bf90</code></a> update generated content</li>
<li><a href="https://github.com/docker/build-push-action/commit/337a09d182ee8c86aa958168dc985219e49e4b3b"><code>337a09d</code></a> disable provenance by default if not set</li>
<li>See full diff in <a href="https://github.com/docker/build-push-action/compare/37abcedcc1da61a57767b7588cb9d03eb57e28b3...3b5e8027fcad23fda98b2e3ac259d8d67585f671">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=docker/build-push-action&package-manager=github_actions&previous-version=3.3.0&new-version=4.0.0)](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)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

* Fix e2e memo test for broken versions (#3096)

* feat: Added authz support for ics20 (#3079)

Co-authored-by: Damian Nolan <[email protected]>
Co-authored-by: Cian Hatton <[email protected]>
Co-authored-by: Charleen Fei <[email protected]>
Co-authored-by: Zaki Manian <[email protected]>

* Fix Compatibility Tests using govv1beta1 GenesisStates (#3052)

* chores: post v4.3.0 release chores (#3080)

## Description



closes: #XXXX


### Commit Message / Changelog Entry

```bash
type: commit message
```

see the [guidelines](https://github.com/cosmos/ibc-go/blob/main/CONTRIBUTING.md#commit-messages) for commit messages. (view raw markdown for examples)




---

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

- [x] Targeted PR against correct branch (see [CONTRIBUTING.md](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#pr-targeting)).
- [ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
- [ ] Code follows the [module structure standards](https://github.com/cosmos/cosmos-sdk/blob/main/docs/docs/building-modules/10-structure.md) and [Go style guide](../docs/dev/go-style-guide.md).
- [ ] Wrote unit and integration [tests](https://github.com/cosmos/ibc-go/blob/master/CONTRIBUTING.md#testing).
- [ ] Updated relevant documentation (`docs/`) or specification (`x/<module>/spec/`).
- [ ] Added relevant `godoc` [comments](https://blog.golang.org/godoc-documenting-go-code).
- [ ] Provide a [commit message](https://github.com/cosmos/ibc-go/blob/main/CONTRIBUTING.md#commit-messages) to be used for the changelog entry in the PR description for review.
- [x] Re-reviewed `Files changed` in the Github PR explorer.
- [ ] Review `Codecov Report` in the comment section below once CI passes.

* Add transfer authz tests to workflow (#3102)

* build(deps): bump bufbuild/buf-setup-action from 1.12.0 to 1.13.0 (#3075)

Bumps [bufbuild/buf-setup-action](https://github.com/bufbuild/buf-setup-action) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/bufbuild/buf-setup-action/releases)
- [Commits](https://github.com/bufbuild/buf-setup-action/compare/v1.12.0...v1.13.0)

---
updated-dependencies:
- dependency-name: bufbuild/buf-setup-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Damian Nolan <[email protected]>
…
@colin-axner colin-axner removed their assignment Mar 13, 2023
@colin-axner
Copy link
Contributor

Hi @0xekez, apologies for the late reply. We discussed your comment a while back internally, but I haven't had the time to reply until now.

You make great points about the usability of proto from a smart contract developer point of view and I believe these concerns should be eased once we add functionality for json/rlp encoded ica transactions. The usage of sdk.Msg is still required for the time being as the host module on ibc-go can only execute msgs via the msg handler which expects an sdk.Msg

@colin-axner
Copy link
Contributor

SerializeCosmosTx was changed to take proto.Message instead of sdk.Msg which I believe addresses the primary concern of this issue. Closing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
27-interchain-accounts needs discussion Issues that need discussion before they can be worked on
Projects
Status: Done 🥳
Development

No branches or pull requests

5 participants