Skip to content

Commit

Permalink
Bump ibc-go to v8.3.2 (#2043)
Browse files Browse the repository at this point in the history
* Bump ibc-go to v8.3.2

* Update app.go for ibc-go 8.3.2

* Update changelog.

* Fix changelog entry

* Update third_party protos.
  • Loading branch information
Taztingo authored Jun 20, 2024
1 parent 9f62c9a commit 85265bd
Show file tree
Hide file tree
Showing 8 changed files with 79 additions and 6 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,7 @@ Ref: https://keepachangelog.com/en/1.0.0/
- Bump `cosmossdk.io/x/circuit` from 0.1.0 to 0.1.1 ([#2035](https://github.com/provenance-io/provenance/pull/2035))
- Bump `github.com/spf13/cobra` from 1.8.0 to 1.8.1 ([#2038](https://github.com/provenance-io/provenance/pull/2038))
- Bump `docker/build-push-action` from 5 to 6 ([#2039](https://github.com/provenance-io/provenance/pull/2039))
- Bump `github.com/cosmos/ibc-go/v8` from 8.2.1 to 8.3.2 ([#2043](https://github.com/provenance-io/provenance/pull/2043))

---

Expand Down
1 change: 1 addition & 0 deletions app/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -608,6 +608,7 @@ func New(
app.AccountKeeper, app.ScopedICAHostKeeper, pioMessageRouter, govAuthority,
)
app.ICAHostKeeper = &icaHostKeeper
app.ICAHostKeeper.WithQueryRouter(app.GRPCQueryRouter())
icaModule := ica.NewAppModule(nil, app.ICAHostKeeper)
icaHostIBCModule := icahost.NewIBCModule(*app.ICAHostKeeper)

Expand Down
4 changes: 2 additions & 2 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ require (
github.com/cosmos/gogoproto v1.5.0
github.com/cosmos/ibc-apps/modules/async-icq/v8 v8.0.0
github.com/cosmos/ibc-go/modules/capability v1.0.0
github.com/cosmos/ibc-go/v8 v8.2.1
github.com/cosmos/ibc-go/v8 v8.3.2
github.com/ghodss/yaml v1.0.0
github.com/golang/protobuf v1.5.4
github.com/google/uuid v1.6.0
Expand Down Expand Up @@ -217,7 +217,7 @@ replace (
// TODO: Update once async-icq creates tag with our changes https://github.com/cosmos/ibc-apps/pull/168
github.com/cosmos/ibc-apps/modules/async-icq/v8 => github.com/provenance-io/ibc-apps/modules/async-icq/v8 v8.0.0-prov-1
// TODO: Update or change once a tag is made containing a fix for https://github.com/cosmos/ibc-go/issues/6375
github.com/cosmos/ibc-go/v8 => github.com/provenance-io/ibc-go/v8 v8.2.1-pio-1
github.com/cosmos/ibc-go/v8 => github.com/provenance-io/ibc-go/v8 v8.3.2-pio-1

// dgrijalva/jwt-go is deprecated and doesn't receive security updates.
// TODO: remove it: https://github.com/cosmos/cosmos-sdk/issues/13134
Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -910,8 +910,8 @@ github.com/provenance-io/cosmos-sdk v0.50.7-pio-1 h1:A4WC4LzcQj6jh+WdIIP4OIN3DCS
github.com/provenance-io/cosmos-sdk v0.50.7-pio-1/go.mod h1:84xDDJEHttRT7NDGwBaUOLVOMN0JNE9x7NbsYIxXs1s=
github.com/provenance-io/ibc-apps/modules/async-icq/v8 v8.0.0-prov-1 h1:p+7pxHB0ukO2aow+M6uW9gHgeQl7YJyYGyMSKHZ5My8=
github.com/provenance-io/ibc-apps/modules/async-icq/v8 v8.0.0-prov-1/go.mod h1:tObW9uxibh5Z22CtOaHVeTDotCSMyc/2B4MrYdaViBo=
github.com/provenance-io/ibc-go/v8 v8.2.1-pio-1 h1:Vmf8Q6qnI3eeyUjV5NsMJsT127diiGuzW+653wj4Y1s=
github.com/provenance-io/ibc-go/v8 v8.2.1-pio-1/go.mod h1:wj3qx75iC/XNnsMqbPDCIGs0G6Y3E/lo3bdqCyoCy+8=
github.com/provenance-io/ibc-go/v8 v8.3.2-pio-1 h1:NOybWs/qIj0gGsOUs8xXwiAlEgtZwOtkhf0/yD0dZYA=
github.com/provenance-io/ibc-go/v8 v8.3.2-pio-1/go.mod h1:izwHZvn9lKrBn8xWj0aXWut6HKcwHMPD3uyuvOJoPSA=
github.com/provenance-io/wasmd v0.50.0-pio-2 h1:vuRXQ7NvqEk0TZ/dDFEfojMTwCn/ItVDjMe3/jiCDbY=
github.com/provenance-io/wasmd v0.50.0-pio-2/go.mod h1:UjmShW4l9YxaMytwJZ7IB7MWzHiynSZP3DdWrG0FRtk=
github.com/rakyll/statik v0.1.7 h1:OF3QCZUuyPxuGEP7B4ypUa7sB/iHtqOTDYZXGM8KOdQ=
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,14 @@ message Params {
// allow_messages defines a list of sdk message typeURLs allowed to be executed on a host chain.
repeated string allow_messages = 2;
}

// QueryRequest defines the parameters for a particular query request
// by an interchain account.
message QueryRequest {
// path defines the path of the query request as defined by ADR-021.
// https://github.com/cosmos/cosmos-sdk/blob/main/docs/architecture/adr-021-protobuf-query-encoding.md#custom-query-registration-and-routing
string path = 1;
// data defines the payload of the query request as defined by ADR-021.
// https://github.com/cosmos/cosmos-sdk/blob/main/docs/architecture/adr-021-protobuf-query-encoding.md#custom-query-registration-and-routing
bytes data = 2;
}
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ service Msg {

// UpdateParams defines a rpc handler for MsgUpdateParams.
rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse);

// ModuleQuerySafe defines a rpc handler for MsgModuleQuerySafe.
rpc ModuleQuerySafe(MsgModuleQuerySafe) returns (MsgModuleQuerySafeResponse);
}

// MsgUpdateParams defines the payload for Msg/UpdateParams
Expand All @@ -33,3 +36,25 @@ message MsgUpdateParams {

// MsgUpdateParamsResponse defines the response for Msg/UpdateParams
message MsgUpdateParamsResponse {}

// MsgModuleQuerySafe defines the payload for Msg/ModuleQuerySafe
message MsgModuleQuerySafe {
option (cosmos.msg.v1.signer) = "signer";

option (gogoproto.goproto_getters) = false;

// signer address
string signer = 1;

// requests defines the module safe queries to execute.
repeated QueryRequest requests = 2;
}

// MsgModuleQuerySafeResponse defines the response for Msg/ModuleQuerySafe
message MsgModuleQuerySafeResponse {
// height at which the responses were queried
uint64 height = 1;

// protobuf encoded responses for each query
repeated bytes responses = 2;
}
4 changes: 2 additions & 2 deletions third_party/proto/ibc/applications/transfer/v1/authz.proto
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ message Allocation {
[(gogoproto.nullable) = false, (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"];
// allow list of receivers, an empty allow list permits any receiver address
repeated string allow_list = 4;
// allow list of packet data keys, an empty list prohibits all packet data keys;
// a list only with "*" permits any packet data key
// allow list of memo strings, an empty list prohibits all memo strings;
// a list only with "*" permits any memo string
repeated string allowed_packet_data = 5;
}

Expand Down
35 changes: 35 additions & 0 deletions third_party/proto/ibc/core/client/v1/query.proto
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,9 @@ package ibc.core.client.v1;
option go_package = "github.com/cosmos/ibc-go/v8/modules/core/02-client/types";

import "cosmos/base/query/v1beta1/pagination.proto";
import "cosmos/query/v1/query.proto";
import "ibc/core/client/v1/client.proto";
import "ibc/core/commitment/v1/commitment.proto";
import "google/protobuf/any.proto";
import "google/api/annotations.proto";
import "gogoproto/gogo.proto";
Expand Down Expand Up @@ -60,6 +62,15 @@ service Query {
rpc UpgradedConsensusState(QueryUpgradedConsensusStateRequest) returns (QueryUpgradedConsensusStateResponse) {
option (google.api.http).get = "/ibc/core/client/v1/upgraded_consensus_states";
}

// VerifyMembership queries an IBC light client for proof verification of a value at a given key path.
rpc VerifyMembership(QueryVerifyMembershipRequest) returns (QueryVerifyMembershipResponse) {
option (cosmos.query.v1.module_query_safe) = true;
option (google.api.http) = {
post: "/ibc/core/client/v1/verify_membership"
body: "*"
};
}
}

// QueryClientStateRequest is the request type for the Query/ClientState RPC
Expand Down Expand Up @@ -205,3 +216,27 @@ message QueryUpgradedConsensusStateResponse {
// Consensus state associated with the request identifier
google.protobuf.Any upgraded_consensus_state = 1;
}

// QueryVerifyMembershipRequest is the request type for the Query/VerifyMembership RPC method
message QueryVerifyMembershipRequest {
// client unique identifier.
string client_id = 1;
// the proof to be verified by the client.
bytes proof = 2;
// the height of the commitment root at which the proof is verified.
ibc.core.client.v1.Height proof_height = 3 [(gogoproto.nullable) = false];
// the commitment key path.
ibc.core.commitment.v1.MerklePath merkle_path = 4 [(gogoproto.nullable) = false];
// the value which is proven.
bytes value = 5;
// optional time delay
uint64 time_delay = 6;
// optional block delay
uint64 block_delay = 7;
}

// QueryVerifyMembershipResponse is the response type for the Query/VerifyMembership RPC method
message QueryVerifyMembershipResponse {
// boolean indicating success or failure of proof verification.
bool success = 1;
}

0 comments on commit 85265bd

Please sign in to comment.