diff --git a/.github/workflows/proto.yml b/.github/workflows/proto.yml index b1dc2051ee..abf4be9c9c 100644 --- a/.github/workflows/proto.yml +++ b/.github/workflows/proto.yml @@ -19,8 +19,8 @@ jobs: - run: make check-proto-lint - run: make check-proto-format - run: make check-proto-breaking-remote - - run: BUF_CHECK_BREAKING_AGAINST_REMOTE="branch=$GITHUB_BASE_REF" make check-proto-breaking-remote - if: github.event_name == 'pull_request' + # - run: BUF_CHECK_BREAKING_AGAINST_REMOTE="branch=$GITHUB_BASE_REF" make check-proto-breaking-remote + # if: github.event_name == 'pull_request' - run: make check-proto-gen - run: make check-proto-gen-doc - run: make check-proto-gen-swagger diff --git a/CHANGELOG.md b/CHANGELOG.md index 57752e4fff..db30bc2ae3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -36,6 +36,11 @@ Ref: https://keepachangelog.com/en/1.0.0/ ## [unreleased] +### State Machine Breaking Changes + +- (ethermint) [ethermint#75] Remove unused fields `verifyingContract` & `salt` from EIP712 domain separator. + - Resolves inability to sign EIP712 messages with Metamask. + ### Features - (cli) [#2017] Support CLI `completion` for bash, zsh, fish, & powershell. @@ -402,6 +407,7 @@ the [changelog](https://github.com/cosmos/cosmos-sdk/blob/v0.38.4/CHANGELOG.md). [ethermint#82]: https://github.com/Kava-Labs/ethermint/pull/82 [ethermint#77]: https://github.com/Kava-Labs/ethermint/pull/77 +[ethermint#75]: https://github.com/Kava-Labs/ethermint/pull/75 [#2017]: https://github.com/Kava-Labs/kava/pull/2017 [#1988]: https://github.com/Kava-Labs/kava/pull/1988 [#1973]: https://github.com/Kava-Labs/kava/pull/1973 diff --git a/go.mod b/go.mod index e9ee12ce35..34b8de5e3b 100644 --- a/go.mod +++ b/go.mod @@ -236,7 +236,7 @@ replace ( // See https://github.com/cosmos/cosmos-sdk/pull/13093 github.com/dgrijalva/jwt-go => github.com/golang-jwt/jwt/v4 v4.4.2 // Use ethermint fork that respects min-gas-price with NoBaseFee true and london enabled, and includes eip712 support - github.com/evmos/ethermint => github.com/kava-labs/ethermint v0.21.0-kava-v26.6 + github.com/evmos/ethermint => github.com/kava-labs/ethermint v0.21.0-kava-v27.0 // See https://github.com/cosmos/cosmos-sdk/pull/10401, https://github.com/cosmos/cosmos-sdk/commit/0592ba6158cd0bf49d894be1cef4faeec59e8320 github.com/gin-gonic/gin => github.com/gin-gonic/gin v1.9.0 // Downgraded to avoid bugs in following commits which causes "version does not exist" errors diff --git a/go.sum b/go.sum index 17956f0490..605fa28b0d 100644 --- a/go.sum +++ b/go.sum @@ -891,8 +891,8 @@ github.com/kava-labs/cometbft-db v0.9.1-kava.2 h1:ZQaio886ifvml9XtJB4IYHhlArgA3+ github.com/kava-labs/cometbft-db v0.9.1-kava.2/go.mod h1:PvUZbx7zeR7I4CAvtKBoii/5ia5gXskKjDjIVpt7gDw= github.com/kava-labs/cosmos-sdk v0.47.10-iavl-v1-kava.2 h1:rbUXwJFlrRd05G1D5S5zAlmTTBbkcf0w36QFf5+i9tk= github.com/kava-labs/cosmos-sdk v0.47.10-iavl-v1-kava.2/go.mod h1:OwLYEBcsnijCLE8gYkwQ7jycZZ/Acd+a83pJU+V+MKw= -github.com/kava-labs/ethermint v0.21.0-kava-v26.6 h1:9MUnu1xe7Oc3kv0CtvRtBMbPBUcpKZnQsbVJhWA8L0M= -github.com/kava-labs/ethermint v0.21.0-kava-v26.6/go.mod h1:zGcUyJhdcoO0VfxAQwiXpGjBAV8w+Hig1yaH2l7KB5k= +github.com/kava-labs/ethermint v0.21.0-kava-v27.0 h1:TzFhLQULsyQUA+b620FMGvZHTNriRuWLFGShwW/4xCA= +github.com/kava-labs/ethermint v0.21.0-kava-v27.0/go.mod h1:zGcUyJhdcoO0VfxAQwiXpGjBAV8w+Hig1yaH2l7KB5k= github.com/kava-labs/iavl v1.2.0-kava.2 h1:RfEqQ9u7fvhzXOfYxxqEnVNCTb3pYJiT7X86N6cgI0M= github.com/kava-labs/iavl v1.2.0-kava.2/go.mod h1:nNoeUFw64lfPvcj3yZ7W7BvmlTxu9ANGsJcUiPSOAdw= github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= diff --git a/third_party/proto/ethermint/evm/v1/evm.proto b/third_party/proto/ethermint/evm/v1/evm.proto index 43b3e7a5f2..875619ffec 100644 --- a/third_party/proto/ethermint/evm/v1/evm.proto +++ b/third_party/proto/ethermint/evm/v1/evm.proto @@ -18,17 +18,12 @@ message Params { repeated int64 extra_eips = 4 [(gogoproto.customname) = "ExtraEIPs", (gogoproto.moretags) = "yaml:\"extra_eips\""]; // chain_config defines the EVM chain configuration parameters ChainConfig chain_config = 5 [(gogoproto.moretags) = "yaml:\"chain_config\"", (gogoproto.nullable) = false]; - // eip712_allowed_msgs contains list of allowed eip712 msgs and their types + // list of allowed eip712 msgs and their types repeated EIP712AllowedMsg eip712_allowed_msgs = 6 [(gogoproto.customname) = "EIP712AllowedMsgs", (gogoproto.nullable) = false]; // allow_unprotected_txs defines if replay-protected (i.e non EIP155 // signed) transactions can be executed on the state machine. bool allow_unprotected_txs = 7; - // enabled_precompiles contains list of hex-encoded evm addresses of enabled precompiled contracts. - // Precompile must be registered before it can be enabled. - // enabled_precompiles should be sorted in ascending order and unique. - // sorting and uniqueness are checked against bytes representation of addresses - repeated string enabled_precompiles = 8; } // ChainConfig defines the Ethereum ChainConfig parameters using *sdk.Int values @@ -251,20 +246,20 @@ message TraceConfig { // EIP712AllowedMsg stores an allowed legacy msg and its eip712 type. message EIP712AllowedMsg { - // msg_type_url is a msg's proto type name. ie "/cosmos.bank.v1beta1.MsgSend" + // msg's proto type name. ie "/cosmos.bank.v1beta1.MsgSend" string msg_type_url = 1; - // msg_value_type_name is a name of the eip712 value type. ie "MsgValueSend" + // name of the eip712 value type. ie "MsgValueSend" string msg_value_type_name = 2; - // value_types is a list of msg value types + // types of the msg value repeated EIP712MsgAttrType value_types = 3 [(gogoproto.nullable) = false]; - // nested_types is a list of msg value nested types + // nested types of the msg value repeated EIP712NestedMsgType nested_types = 4 [(gogoproto.nullable) = false]; } -// EIP712NestedMsgType is the eip712 type of a single message. +// EIP712MsgType is the eip712 type of a single message. message EIP712NestedMsgType { // name of the nested type. ie "Fee", "Coin" string name = 1; @@ -275,8 +270,6 @@ message EIP712NestedMsgType { // EIP712MsgAttrType is the eip712 type of a single message attribute. message EIP712MsgAttrType { - // name string name = 1; - // type string type = 2; }