diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6a1df90ae6..a500b008c0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -19,7 +19,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions/setup-go@v3 with: - go-version: '1.20' + go-version: '1.21' check-latest: true - uses: technote-space/get-diff-action@v6.1.2 id: git_diff diff --git a/.github/workflows/dependencies.yml b/.github/workflows/dependencies.yml index 7f1d03bd21..7ca5b4a2da 100644 --- a/.github/workflows/dependencies.yml +++ b/.github/workflows/dependencies.yml @@ -10,7 +10,7 @@ jobs: steps: - uses: actions/setup-go@v3 with: - go-version: '1.20' + go-version: '1.21' check-latest: true - name: "Checkout Repository" uses: actions/checkout@v3 diff --git a/.github/workflows/goreleaser.yml b/.github/workflows/goreleaser.yml index 632035d5aa..9413dbb720 100644 --- a/.github/workflows/goreleaser.yml +++ b/.github/workflows/goreleaser.yml @@ -15,7 +15,7 @@ jobs: - name: Set up Go uses: actions/setup-go@v3 with: - go-version: '1.20' + go-version: '1.21' check-latest: true - name: release dry run run: make release-dry-run diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 1c23449110..9ad4e3799d 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -16,7 +16,7 @@ jobs: # Required: setup-go, for all versions v3.0.0+ of golangci-lint - uses: actions/setup-go@v3 with: - go-version: '1.20' + go-version: '1.21' check-latest: true - uses: actions/checkout@v3 - uses: technote-space/get-diff-action@v6.1.2 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 70099b6b8e..181d755b1d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -20,7 +20,7 @@ jobs: steps: - uses: actions/setup-go@v3 with: - go-version: "1.20" + go-version: "1.21" check-latest: true - uses: actions/checkout@v3 - uses: technote-space/get-diff-action@v6.1.2 @@ -42,7 +42,7 @@ jobs: steps: - uses: actions/setup-go@v3 with: - go-version: "1.20" + go-version: "1.21" check-latest: true - uses: actions/checkout@v3 - uses: technote-space/get-diff-action@v6.1.2 @@ -63,7 +63,7 @@ jobs: steps: - uses: actions/setup-go@v3 with: - go-version: "1.20" + go-version: "1.21" check-latest: true - uses: actions/checkout@v3 - uses: technote-space/get-diff-action@v6.1.2 @@ -91,7 +91,7 @@ jobs: go.sum - uses: actions/setup-go@v3 with: - go-version: "1.20" + go-version: "1.21" check-latest: true - uses: nixbuild/nix-quick-install-action@v26 diff --git a/app/app.go b/app/app.go index c3561bceef..d1c089350c 100644 --- a/app/app.go +++ b/app/app.go @@ -157,7 +157,7 @@ var ( // and genesis verification. ModuleBasics = module.NewBasicManager( auth.AppModuleBasic{}, - genutil.AppModuleBasic{}, + genutil.NewAppModuleBasic(genutiltypes.DefaultMessageValidator), bank.AppModuleBasic{}, capability.AppModuleBasic{}, staking.AppModuleBasic{}, @@ -447,10 +447,19 @@ func NewEthermintApp( govConfig.MaxMetadataLen = 10000 */ govKeeper := govkeeper.NewKeeper( - appCodec, keys[govtypes.StoreKey], app.AccountKeeper, app.BankKeeper, - stakingKeeper, app.MsgServiceRouter(), govConfig, authAddr, + appCodec, + keys[govtypes.StoreKey], + app.AccountKeeper, + app.BankKeeper, + stakingKeeper, + app.MsgServiceRouter(), + govConfig, + authAddr, ) + // Set legacy router for backwards compatibility with gov v1beta1 + govKeeper.SetLegacyRouter(govRouter) + app.StakingKeeper = *stakingKeeper app.GovKeeper = *govKeeper.SetHooks( diff --git a/cmd/ethermintd/root.go b/cmd/ethermintd/root.go index c2775fd717..0b9c002c60 100644 --- a/cmd/ethermintd/root.go +++ b/cmd/ethermintd/root.go @@ -31,6 +31,7 @@ import ( "cosmossdk.io/simapp/params" rosettaCmd "cosmossdk.io/tools/rosetta/cmd" + tmtypes "github.com/cometbft/cometbft/types" "github.com/cosmos/cosmos-sdk/baseapp" "github.com/cosmos/cosmos-sdk/client" "github.com/cosmos/cosmos-sdk/client/config" @@ -227,7 +228,8 @@ func (a appCreator) newApp(logger tmlog.Logger, db dbm.DB, traceStore io.Writer, panic(err) } - snapshotDir := filepath.Join(cast.ToString(appOpts.Get(flags.FlagHome)), "data", "snapshots") + homeDir := cast.ToString(appOpts.Get(flags.FlagHome)) + snapshotDir := filepath.Join(homeDir, "data", "snapshots") if err = os.MkdirAll(snapshotDir, os.ModePerm); err != nil { panic(err) } @@ -246,9 +248,20 @@ func (a appCreator) newApp(logger tmlog.Logger, db dbm.DB, traceStore io.Writer, cast.ToUint32(appOpts.Get(sdkserver.FlagStateSyncSnapshotKeepRecent)), ) + // Setup chainId + chainID := cast.ToString(appOpts.Get(flags.FlagChainID)) + if len(chainID) == 0 { + // fallback to genesis chain-id + appGenesis, err := tmtypes.GenesisDocFromFile(filepath.Join(homeDir, "config", "genesis.json")) + if err != nil { + panic(err) + } + chainID = appGenesis.ChainID + } + ethermintApp := app.NewEthermintApp( logger, db, traceStore, true, skipUpgradeHeights, - cast.ToString(appOpts.Get(flags.FlagHome)), + homeDir, cast.ToUint(appOpts.Get(sdkserver.FlagInvCheckPeriod)), a.encCfg, appOpts, @@ -263,6 +276,7 @@ func (a appCreator) newApp(logger tmlog.Logger, db dbm.DB, traceStore io.Writer, baseapp.SetSnapshot(snapshotStore, snapshotOptions), baseapp.SetIAVLCacheSize(cast.ToInt(appOpts.Get(sdkserver.FlagIAVLCacheSize))), baseapp.SetIAVLDisableFastNode(cast.ToBool(appOpts.Get(sdkserver.FlagDisableIAVLFastNode))), + baseapp.SetChainID(chainID), ) return ethermintApp diff --git a/go.mod b/go.mod index ad0be3487c..ed85606702 100644 --- a/go.mod +++ b/go.mod @@ -2,7 +2,7 @@ module github.com/evmos/ethermint go 1.21 -toolchain go1.21.6 +toolchain go1.21.0 require ( cosmossdk.io/errors v1.0.1 diff --git a/gomod2nix.toml b/gomod2nix.toml index 77749361ef..ddeef71e92 100644 --- a/gomod2nix.toml +++ b/gomod2nix.toml @@ -2,60 +2,72 @@ schema = 3 [mod] [mod."cloud.google.com/go"] - version = "v0.110.8" - hash = "sha256-2zRfdYe7M+PH1Q4oeh0T12pQVnp117CndMt64CkI3XA=" + version = "v0.111.0" + hash = "sha256-i8tQyny5W/PcPY5W5h2Zo6wKDKgYHpQlK77QU9TUdI4=" [mod."cloud.google.com/go/compute"] - version = "v1.23.0" - hash = "sha256-Pd5tMfeatH7p/Mh4b5qUqE9vMDgwwTg6/3Hb8uFZyUw=" + version = "v1.23.3" + hash = "sha256-WwlTw/x9GSM6B4nHm9FDvHZ1Pd4KN0wxk650CosJnpQ=" [mod."cloud.google.com/go/compute/metadata"] version = "v0.2.3" hash = "sha256-kYB1FTQRdTDqCqJzSU/jJYbVUGyxbkASUKbEs36FUyU=" [mod."cloud.google.com/go/iam"] - version = "v1.1.2" - hash = "sha256-n4DefmHY9GGKc3xdsC+MN9y3tYu7Sgeol1X/Lsnggks=" + version = "v1.1.5" + hash = "sha256-nETSf8U75kLNXk82JdQaJz394z8cXMbpNYSm1KE03GA=" [mod."cloud.google.com/go/storage"] version = "v1.30.1" hash = "sha256-4lC0XaLSQDnVBmNLIauiWnGXq+Ax57r8fcMxXFMCCNE=" + [mod."cosmossdk.io/api"] + version = "v0.3.1" + hash = "sha256-yQUn04n0/s3DpNWu7TF3NG+awWKxgvRpV9CYIV+dR7k=" + [mod."cosmossdk.io/core"] + version = "v0.6.1" + hash = "sha256-ZrOwB01JLAIQIICpmrVdgsC8WValoldJ6BLcq1rGmRc=" + [mod."cosmossdk.io/depinject"] + version = "v1.0.0-alpha.4" + hash = "sha256-xpLH0K6ivQznFrLw2hmhWIIyYgqjstV47OhTEj/c1oQ=" [mod."cosmossdk.io/errors"] - version = "v1.0.0-beta.7" - hash = "sha256-XblGvIx6Wvvq6wggXjp+KbeJGXoe7AZH7hXEdauCezU=" + version = "v1.0.1" + hash = "sha256-MgTocXkBzri9FKkNtkARJXPmxRrRO/diQJS5ZzvYrJY=" [mod."cosmossdk.io/log"] - version = "v1.2.0" - hash = "sha256-c3rrloofFFuyW8TikJusWhKh0q9LjXqrD7l6Xdcvmq4=" + version = "v1.3.1" + hash = "sha256-otkUvsz35VuuUWXoTmWBwR61+o6YzvWETGdLfwWDvwY=" [mod."cosmossdk.io/math"] - version = "v1.0.0-rc.0" - hash = "sha256-bQ2hxg1dwVxbyBzbdepCz8nFGx6dfr63syqDNQ8AFQc=" + version = "v1.3.0" + hash = "sha256-EEFK43Cr0g0ndhQhkIKher0FqV3mvkmE9z0sP7uVSHg=" + [mod."cosmossdk.io/simapp"] + version = "v0.0.0-20230608160436-666c345ad23d" + hash = "sha256-6BMBA98BpK3jG6++ZE4LdPQwwpS+lZ0GLMRF1fO4UfM=" + [mod."cosmossdk.io/tools/rosetta"] + version = "v0.2.1" + hash = "sha256-TrkXwA1ZdwSyu3te0DLMBynCb7CGEtefo2wzFvxeyU8=" [mod."filippo.io/edwards25519"] - version = "v1.0.0-rc.1" - hash = "sha256-3DboBqby2ejRU33FG96Z8JF5AJ8HP2rC/v++VyoQ2LQ=" + version = "v1.0.0" + hash = "sha256-APnPAcmItvtJ5Zsy863lzR2TjEBF9Y66TY1e4M1ap98=" + [mod."github.com/99designs/go-keychain"] + version = "v0.0.0-20191008050251-8e49817e8af4" + hash = "sha256-4EndKcspGC3GOPCmctXF1NnWzxWwMyY/OQpFMmr8Sc0=" [mod."github.com/99designs/keyring"] - version = "v1.1.7-0.20210622111912-ef00f8ac3d76" - hash = "sha256-oCalyOZWegRgKHZ1GvYHNkrMKh51j8cOE/K4yBPM5Oc=" + version = "v1.2.0" + hash = "sha256-emQlH+RQpESoFCzpHS38fEhs1SLjotxNPlRK4B5Aybs=" replaced = "github.com/cosmos/keyring" [mod."github.com/ChainSafe/go-schnorrkel"] version = "v1.0.0" hash = "sha256-atJ2waz124m0DVHjol8v3NfCLKidU3fYu5AgzT9xCBA=" [mod."github.com/DataDog/zstd"] - version = "v1.5.0" - hash = "sha256-i+vPadZcmSHCALA50FaADRmj6oqe1t5SIfqEbCxr9Ao=" - [mod."github.com/HdrHistogram/hdrhistogram-go"] - version = "v1.1.2" - hash = "sha256-GZWNKwUmZLQ+krFvyFwBlGp/cLw/ihYuMuhKutuQIlA=" + version = "v1.5.2" + hash = "sha256-LVkZHLG8O4CzmqyQVbGn+0r6AKIMABej8a4HKMFw/xo=" [mod."github.com/StackExchange/wmi"] version = "v0.0.0-20180116203802-5d049714c4a6" hash = "sha256-0yUxhZB3v3ZE3QY36zHs2cJ1S4GXptXIhyAi6sI2nOo=" [mod."github.com/VictoriaMetrics/fastcache"] version = "v1.6.0" hash = "sha256-u1dkRJ2Y5+hnYlkyMPm14HxKkAv999bjN622nZDjaBo=" - [mod."github.com/Workiva/go-datastructures"] - version = "v1.0.53" - hash = "sha256-W6qOvqu8sokMlZrpOF1SWG138H0/BotywKNLlDF8Zug=" [mod."github.com/armon/go-metrics"] version = "v0.4.1" hash = "sha256-usxTUHA0QQMdM6sHi2z51nmnEKMbA0qUilxJFpWHlYE=" [mod."github.com/aws/aws-sdk-go"] - version = "v1.44.122" - hash = "sha256-bzkXf4Sf+6y6on7iulGtXkPdj0XoevkHYGQYPTNL7To=" + version = "v1.44.203" + hash = "sha256-Kq501D1YAz/3nXqcszDDAnf6huZarJh5onzgEfmWbms=" [mod."github.com/beorn7/perks"] version = "v1.0.1" hash = "sha256-h75GUqfwJKngCJQVE5Ao5wnO3cfKD9lSIteoLp/3xJ4=" @@ -63,8 +75,8 @@ schema = 3 version = "v0.0.0-20140422174119-9fd32a8b3d3d" hash = "sha256-NDxQzO5C5M/aDz5/pjUHfZUh4VwIXovbb3irtxWCwjY=" [mod."github.com/bgentry/speakeasy"] - version = "v0.1.0" - hash = "sha256-Gt1vj6CFovLnO6wX5u2O4UfecY9V2J9WGw1ez4HMrgk=" + version = "v0.1.1-0.20220910012023-760eaf8b6816" + hash = "sha256-Tx3sPuhsoVwrCfJdIwf4ipn7pD92OQNYvpCxl1Z9Wt0=" [mod."github.com/btcsuite/btcd"] version = "v0.23.4" hash = "sha256-xP7TLBdOoUIjg5Q3MOjbT5P9tkCWjsd4bWgZLp539Wo=" @@ -87,29 +99,29 @@ schema = 3 version = "v2.2.0" hash = "sha256-nPufwYQfTkyrEkbBrpqM3C2vnMxfIz6tAaBmiUP7vd4=" [mod."github.com/chzyer/readline"] - version = "v0.0.0-20180603132655-2972be24d48e" - hash = "sha256-2Uj5LGpHEbLQG3d/7z9AL8DknUBZyoTAMs4j+VVDmIA=" + version = "v1.5.1" + hash = "sha256-6wKd6/JZ9/O7FwSyNKE3KOt8fVPZEunqbTHQUxlOUNc=" [mod."github.com/cockroachdb/apd/v2"] version = "v2.0.2" hash = "sha256-UrPHkvqVF8V78+kXKmjTHl79XsgDBnqFsje5BMYh0E4=" [mod."github.com/cockroachdb/errors"] - version = "v1.8.1" - hash = "sha256-fpxeq5kDoP9NxP1XAWulmHfAKo0p0gDNj65YqPM318s=" + version = "v1.10.0" + hash = "sha256-l6CCw3FKGNaGlwzLfAaF0cruf3E9MZr6GK1GZ+vQm2c=" [mod."github.com/cockroachdb/logtags"] - version = "v0.0.0-20190617123548-eb05cc24525f" - hash = "sha256-mdcKZsPfCiaTyxLRkZprVIijeZzbTD3J7WGb4zOQgn4=" + version = "v0.0.0-20230118201751-21c54148d20b" + hash = "sha256-7dQH6j1o99fuxHKkw0RhNC5wJKkvRLMDJpUiVnDx6h8=" [mod."github.com/cockroachdb/pebble"] - version = "v0.0.0-20220817183557-09c6e030a677" - hash = "sha256-fbAYv+E/33MqawDu/Sy27rjYz0SffTK+/dznLpr0AVg=" + version = "v0.0.0-20230226194802-02d779ffbc46" + hash = "sha256-BYbaz4nJ6JeyiCWLye5Zvk/sI7EqXejK2hWLsZweB00=" [mod."github.com/cockroachdb/redact"] - version = "v1.0.8" - hash = "sha256-V/qBOGQUMbpPAQOpLTZk8MZiBr66Epml8snn9suCbs4=" - [mod."github.com/cockroachdb/sentry-go"] - version = "v0.6.1-cockroachdb.2" - hash = "sha256-3C9tuGU6f2DOz6yPcOdUf1LRvCXFg+prfqAPob9Sz2E=" + version = "v1.1.5" + hash = "sha256-0rtT7LRO0wxf9XovOK8GXRrhmx8OcbdPK/mXOKbJdog=" [mod."github.com/coinbase/rosetta-sdk-go"] version = "v0.7.9" hash = "sha256-ZWIXIXcHGjeCNgMrpXymry8/8esDDauGFfF/+gEoO1Y=" + [mod."github.com/cometbft/cometbft"] + version = "v0.37.4" + hash = "sha256-rEzIdkxeE5FsIGwvzZiPdifPr0v9SmKHQw78I7v2WUA=" [mod."github.com/cometbft/cometbft-db"] version = "v0.9.1" hash = "sha256-ftRdle5ok2aCyqT3u5rYY0jKB8WT8uDus26Pw4Mo1go=" @@ -123,41 +135,39 @@ schema = 3 version = "v1.0.0" hash = "sha256-3EL4xQsSpovTy/V3gwulybqSDHvuu7bPodBZib9JKAk=" [mod."github.com/cosmos/cosmos-proto"] - version = "v1.0.0-beta.3" - hash = "sha256-V0/ZhRdqK7Cqcv8X30gr33/hlI54bRXeHhI9LZKyLt8=" + version = "v1.0.0-beta.4" + hash = "sha256-5Kn82nsZfiEtuwhhLZqmMxdAY1tX/Fi3HJ0/MEaRohw=" [mod."github.com/cosmos/cosmos-sdk"] - version = "v0.46.16-iavl-v1-kava.1" - hash = "sha256-wkE2nQWy3usv+eBYvYGPrCRGM7/xiOYqPVMNl/6liAs=" + version = "v0.47.10-kava.2" + hash = "sha256-kIq7aJFgZpPQu9RW+QJhe9Xx5w16k/T0052GDzPmJxM=" replaced = "github.com/kava-labs/cosmos-sdk" [mod."github.com/cosmos/go-bip39"] version = "v1.0.0" hash = "sha256-Qm2aC2vaS8tjtMUbHmlBSagOSqbduEEDwc51qvQaBmA=" - [mod."github.com/cosmos/gogoproto"] - version = "v1.4.3" - hash = "sha256-Y/NL76ay/oAl8mS3skkK5ula0/xudqbwW1o22lZjKRg=" - [mod."github.com/cosmos/gorocksdb"] + [mod."github.com/cosmos/gogogateway"] version = "v1.2.0" - hash = "sha256-209TcVuXc5s/TcOvNlaQ1HEJAUDTEK3nxPhs+d8TEcY=" + hash = "sha256-Hd19V0RCiMoCL67NsqvWIsvWF8KM3LnuJTbYjWtQkEo=" + [mod."github.com/cosmos/gogoproto"] + version = "v1.4.10" + hash = "sha256-Anm4O3bUONsN7J9Psg9E+oQasmUyoGc7UE1aaHJaehE=" [mod."github.com/cosmos/iavl"] -<<<<<<< HEAD - version = "v0.19.5" - hash = "sha256-8PerCyxQrBCtr2zkhgriqauhCSoIe580dsYpZ44o+cE=" -======= version = "v1.0.0" hash = "sha256-Zm1TfR7vBJ7zMT0whznStO42S0t6hyrwpbUnDmM3MlI=" - [mod."github.com/cosmos/ibc-go/v6"] - version = "v6.1.1" - hash = "sha256-TSaKxXcvJCDyrixLWBH10C6WcPKzRFqIrEePQqiHNUg=" + [mod."github.com/cosmos/ibc-go/v7"] + version = "v7.3.1" + hash = "sha256-5lRAQaQRscTMVKeKlsiWtLFauK/gjL9cD7gTJgUbddQ=" [mod."github.com/cosmos/ics23/go"] version = "v0.10.0" hash = "sha256-KYEv727BO/ht63JO02xiKFGFAddg41Ve9l2vSSZZBq0=" ->>>>>>> 877e8fd1 (Resolve CI and test errors (#34)) [mod."github.com/cosmos/ledger-cosmos-go"] version = "v0.13.1" hash = "sha256-UDRTBG1VPLQOA3tJjfen5tRmIBde7Cqc4UDUPXL3+c4=" + [mod."github.com/cosmos/rosetta-sdk-go"] + version = "v0.10.0" + hash = "sha256-WmLq9E9mYV+ms6Tdb43lCoAy6cowkDnK4bvX/ApDzLY=" [mod."github.com/creachadair/taskgroup"] - version = "v0.3.2" - hash = "sha256-Y261IO/d9xjV0UScqHvo31broxvnKn4IQQC9Mu6jNkE=" + version = "v0.4.2" + hash = "sha256-AjtQRoLKLSAbyKd8YlaXcYn0pek6oo5U3R28dvtKv14=" [mod."github.com/danieljoos/wincred"] version = "v1.1.2" hash = "sha256-Nnklfg12vmWCOhELGyoRqEF4w4srp0WbPwreaChYLKs=" @@ -177,8 +187,8 @@ schema = 3 version = "v2.2007.4" hash = "sha256-+KwqZJZpViv8S3TqUVvPXrFoMgWFyS3NoLsi4RR5fGk=" [mod."github.com/dgraph-io/ristretto"] - version = "v0.1.0" - hash = "sha256-01jneg1+1x8tTfUTBZ+6mHkQaqXVnPYxLJyJhJQcvt4=" + version = "v0.1.1" + hash = "sha256-Wr9ovXhGi71+n37EnrpIj2o9goyaQHtY4Vvurv6IVlY=" [mod."github.com/dgryski/go-farm"] version = "v0.0.0-20200201041132-a6ae2369ad13" hash = "sha256-aOMlPwFY36bLiiIx4HonbCYRAhagk5N6HAWN7Ygif+E=" @@ -192,8 +202,8 @@ schema = 3 version = "v1.0.1" hash = "sha256-yuvxYYngpfVkUg9yAmG99IUVmADTQA0tMbBXe0Fq0Mc=" [mod."github.com/dvsekhvalnov/jose2go"] - version = "v1.5.0" - hash = "sha256-dsju6Xt83pe5SRPN/pUOnDUQByZ6hrhKIXWs3sSu7t8=" + version = "v1.6.0" + hash = "sha256-IXn2BuUp4fi/i2zf1tGGW1m9xoYh3VCksB6GJ5Sf06g=" [mod."github.com/edsrzf/mmap-go"] version = "v1.0.0" hash = "sha256-k1DYvCqO3BKNcGEve/nMW0RxzMkK2tGfXbUbycqcVSo=" @@ -204,14 +214,17 @@ schema = 3 version = "v1.10.26" hash = "sha256-gkMEwJ4rOgn12amD4QpZ4th/10uyTTeoFmpseuKDQPs=" [mod."github.com/felixge/httpsnoop"] - version = "v1.0.1" - hash = "sha256-TNXnnC/ZGNY9lInAcES1cBGqIdEljKuh5LH/khVFjVk=" + version = "v1.0.2" + hash = "sha256-hj6FZQ1fDAV+1wGIViAt8XaAkWZ1I5vJzgjIJa7XRBA=" [mod."github.com/fsnotify/fsnotify"] version = "v1.6.0" hash = "sha256-DQesOCweQPEwmAn6s7DCP/Dwy8IypC+osbpfsvpkdP0=" [mod."github.com/gballet/go-libpcsclite"] version = "v0.0.0-20190607065134-2772fd86a8ff" hash = "sha256-Nr5ocU9s1F2Lhx/Zq6/nIo+KkKEqMjDYOEs3yWRC48g=" + [mod."github.com/getsentry/sentry-go"] + version = "v0.23.0" + hash = "sha256-VR6IL+yIc+BV5xBGfPJ7ixsAVzJ/hzuvXmkkAn1cTk4=" [mod."github.com/go-kit/kit"] version = "v0.12.0" hash = "sha256-5RkXo6s0oye8etgD5qy+AvkkkNsQ6jc0kWJj6flA4GM=" @@ -219,11 +232,14 @@ schema = 3 version = "v0.2.1" hash = "sha256-puLJ+up45X2j9E3lXvBPKqHPKOA/sFAhfCqGxsITW/Y=" [mod."github.com/go-logfmt/logfmt"] - version = "v0.5.1" - hash = "sha256-t50m9ffvW8PiGvO+2svnLI+N/XaWaBS+ZlhwrEQn2gU=" + version = "v0.6.0" + hash = "sha256-RtIG2qARd5sT10WQ7F3LR8YJhS8exs+KiuUiVf75bWg=" [mod."github.com/go-logr/logr"] - version = "v1.2.3" - hash = "sha256-2L7k6GfrcW3GXXYr1FYIu20aZBjIF0cTKdte6D4riH8=" + version = "v1.2.4" + hash = "sha256-+FhzmqKsAnsra5p8LuxENXJBHSeuWjQG8Tzhpyd/ps4=" + [mod."github.com/go-logr/stdr"] + version = "v1.2.2" + hash = "sha256-rRweAP7XIb4egtT1f2gkz4sYOu7LDHmcJ5iNsJUd0sE=" [mod."github.com/go-ole/go-ole"] version = "v1.2.6" hash = "sha256-+oxitLeJxYF19Z6g+6CgmCHJ1Y5D8raMi2Cb3M6nXCs=" @@ -239,9 +255,9 @@ schema = 3 [mod."github.com/godbus/dbus"] version = "v0.0.0-20190726142602-4481cbc300e2" hash = "sha256-R7Gb9+Zjy80FbQSDGketoVEqfdOQKuOVTfWRjQ5kxZY=" - [mod."github.com/gogo/gateway"] - version = "v1.1.0" - hash = "sha256-OHcA3fEGZt4uYn6V5BAaDc47DkH7z0Al+v7MpkfeR8o=" + [mod."github.com/gogo/googleapis"] + version = "v1.4.1" + hash = "sha256-4KgwVRIA6GOV/Lkv11c/vj2RMlgu4ZMjwJGeyb2DZC4=" [mod."github.com/gogo/protobuf"] version = "v1.3.2" hash = "sha256-pogILFrrk+cAtb0ulqn9+gRZJ7sGnnLLdtqITvxvG6c=" @@ -251,6 +267,9 @@ schema = 3 [mod."github.com/golang/groupcache"] version = "v0.0.0-20210331224755-41bb18bfe9da" hash = "sha256-7Gs7CS9gEYZkbu5P4hqPGBpeGZWC64VDwraSKFF+VR0=" + [mod."github.com/golang/mock"] + version = "v1.6.0" + hash = "sha256-fWdnMQisRbiRzGT3ISrUHovquzLRHWvcv1JEsJFZRno=" [mod."github.com/golang/protobuf"] version = "v1.5.3" hash = "sha256-svogITcP4orUIsJFjMtp+Uv1+fKJv2Q5Zwf2dMqnpOQ=" @@ -261,8 +280,8 @@ schema = 3 version = "v1.1.2" hash = "sha256-K7V2obq3pLM71Mg0vhhHtZ+gtaubwXPQx3xcIyZDCjM=" [mod."github.com/google/go-cmp"] - version = "v0.5.9" - hash = "sha256-lQc4O00R3QSMGs9LP8Sy7A9kj0cqV5rrUdpnGeipIyg=" + version = "v0.6.0" + hash = "sha256-qgra5jze4iPGP0JSTVeY5qV5AvEnEu39LYAuUCIkMtg=" [mod."github.com/google/orderedcode"] version = "v0.0.1" hash = "sha256-KrExYovtUQrHGI1mPQf57jGw8soz7eWOC2xqEaV0uGk=" @@ -270,14 +289,14 @@ schema = 3 version = "v0.0.0-20210720184732-4bb14d4b1be1" hash = "sha256-m6l2Yay3iCu7Ses6nmwXifyztNqfP1B/MX81/tDK4Hw=" [mod."github.com/google/s2a-go"] - version = "v0.1.4" - hash = "sha256-amTAj6SNERMPxAA43KrzwYgu6GMooayfHCsdkoTI17c=" + version = "v0.1.7" + hash = "sha256-E+SX/3VmRI5qN7SbnRP4Tt+gQTq93pScpY9U2tTmIU0=" [mod."github.com/google/uuid"] - version = "v1.3.1" - hash = "sha256-JxAEAB2bFlGPShFreyOWjUahjaGV3xYS5TpfUOikod0=" + version = "v1.4.0" + hash = "sha256-FU0gzLmS48Ik9T+quGg5z/7ESGMPSXM3SY+rdJtG+5w=" [mod."github.com/googleapis/enterprise-certificate-proxy"] - version = "v0.2.4" - hash = "sha256-4tXjS3R7qKlmA/UueJP7LFk0Tw4anuqKrEW/lnlOrY8=" + version = "v0.3.2" + hash = "sha256-wVuR3QC0mYFl5LNeKdRXdKdod7BGP5sv2h6VVib85v8=" [mod."github.com/googleapis/gax-go/v2"] version = "v2.12.0" hash = "sha256-ZcXS+1B11UaJHf8D15N3ZCh00fiMUncpHd+eNRffLZ4=" @@ -327,14 +346,17 @@ schema = 3 version = "v1.0.0" hash = "sha256-xsRCmYyBfglMxeWUvTZqkaRLSW+V2FvNodEDjTGg1WA=" [mod."github.com/hdevalence/ed25519consensus"] - version = "v0.0.0-20220222234857-c00d1f31bab3" - hash = "sha256-1ec2xc7l9oNtWJwVtx14HnozMZCe2DpfXmu1xI1Z/yo=" + version = "v0.1.0" + hash = "sha256-MkqFWnyXt653RaJQUMWWxcW6NCskIxou8VEfj+8vd3Y=" [mod."github.com/holiman/bloomfilter/v2"] version = "v2.0.3" hash = "sha256-5VsJMQzJSNd4F7yAl3iF/q6JodWOlE4dUvTQ0UGPe+k=" [mod."github.com/holiman/uint256"] version = "v1.2.1" hash = "sha256-1N+MvvzTIegV1UPEGUVyxBZaxczId/Z/BUVcnx7ckHE=" + [mod."github.com/huandu/skiplist"] + version = "v1.2.0" + hash = "sha256-/r4QP1SldMlhpkr1ZQFHImSYaeMZEtqBW7R53yN+JtQ=" [mod."github.com/huin/goupnp"] version = "v1.0.3" hash = "sha256-EMGmTdoQhP2bVbCPX37hes5krqXn6NFexfnKr9E5u8I=" @@ -342,8 +364,8 @@ schema = 3 version = "v0.15.0" hash = "sha256-9oqKb5Y3hjleOFE2BczbEzLH6q2Jg7kUTP/M8Yk4Ne4=" [mod."github.com/inconshreveable/mousetrap"] - version = "v1.0.1" - hash = "sha256-ZTP9pLgwAAvHYK5A4PqwWCHGt00x5zMSOpCPoomQ3Sg=" + version = "v1.1.0" + hash = "sha256-XWlYH0c8IcxAwQTnIi6WYqq44nOKUylSWxWO/vi+8pE=" [mod."github.com/jackpal/go-nat-pmp"] version = "v1.0.2" hash = "sha256-L1D4Yoxnzihs795GZ+Q3AZsFP5c4iqyjTeyrudzPXtw=" @@ -353,12 +375,9 @@ schema = 3 [mod."github.com/jmhodges/levigo"] version = "v1.0.0" hash = "sha256-xEd0mDBeq3eR/GYeXjoTVb2sPs8sTCosn5ayWkcgENI=" - [mod."github.com/keybase/go-keychain"] - version = "v0.0.0-20190712205309-48d3d31d256d" - hash = "sha256-bn04wkDnhQ0tb/YzmPf7MNJlApOl+z6+EAbUqH7Ti5Q=" [mod."github.com/klauspost/compress"] - version = "v1.16.0" - hash = "sha256-bMMwJhgK/uR3xq16XdqE2ge8x0fn6WK1NGkU3cKSWV4=" + version = "v1.16.7" + hash = "sha256-8miX/lnXyNLPSqhhn5BesLauaIAxETpQpWtr1cu2f+0=" [mod."github.com/kr/pretty"] version = "v0.3.1" hash = "sha256-DlER7XM+xiaLjvebcIPiB12oVNjyZHuJHoRGITzzpKU=" @@ -384,8 +403,8 @@ schema = 3 version = "v0.1.13" hash = "sha256-qb3Qbo0CELGRIzvw7NVM1g/aayaz4Tguppk9MD2/OI8=" [mod."github.com/mattn/go-isatty"] - version = "v0.0.19" - hash = "sha256-wYQqGxeqV3Elkmn26Md8mKZ/viw598R4Ych3vtt72YE=" + version = "v0.0.20" + hash = "sha256-qhw9hWtU5wnyFyuMbKx+7RB8ckQaFQ8D+8GKPkN3HHQ=" [mod."github.com/mattn/go-runewidth"] version = "v0.0.9" hash = "sha256-dK/kIPe1tcxEubwI4CWfov/HWRBgD/fqlPC3d5i30CY=" @@ -420,8 +439,8 @@ schema = 3 version = "v1.27.4" hash = "sha256-Fhltm/e6KVXdwfUl65cE8PD1MLyXJa7OH0lg4Bvewv0=" [mod."github.com/pelletier/go-toml/v2"] - version = "v2.0.7" - hash = "sha256-N/bMEQkqdlkmRN0bKbdifEquKHEPaxltX8LTmhOkUGc=" + version = "v2.0.8" + hash = "sha256-wWxswr/lTq+McYbScmJM1ECKQ6eNJ5m44SM7TmrHThM=" [mod."github.com/petermattis/goid"] version = "v0.0.0-20230317030725-371a4b8eda08" hash = "sha256-Qv2rrenuLtrrW+fCd6L4pwXoyYC3znd0ndhzYS4REOM=" @@ -452,21 +471,18 @@ schema = 3 [mod."github.com/rcrowley/go-metrics"] version = "v0.0.0-20201227073835-cf1acfcdf475" hash = "sha256-10ytHQ1SpMKYTiKuOPdEMuOVa8HVvv9ryYSIF9BHEBI=" - [mod."github.com/regen-network/cosmos-proto"] - version = "v0.3.1" - hash = "sha256-Bchbq/Hg72EA7Hevs8+PNuENuQaZAzk3qeVjMqFMUxc=" [mod."github.com/rjeczalik/notify"] version = "v0.9.1" hash = "sha256-YLGNrHHM+mN4ElW/XWuylOnFrA/VjSY+eBuC4LN//5c=" [mod."github.com/rogpeppe/go-internal"] - version = "v1.9.0" - hash = "sha256-XKmbu8l55XGrvC20j8jocpauwZsdbP83YAwH79BEAC4=" + version = "v1.11.0" + hash = "sha256-BucSndJVnqX9e6p5PfA6Z8N2bGfIeRfxAxYLUDXTbIo=" [mod."github.com/rs/cors"] version = "v1.8.3" hash = "sha256-VgVB4HKAhPSjNg96mIEUN1bt5ZQng8Fi3ZABy3CDWQE=" [mod."github.com/rs/zerolog"] - version = "v1.30.0" - hash = "sha256-fOJEpuiJmsp9ONqvmPGOyoBEDfJHBfUH8liiRCWDe1E=" + version = "v1.32.0" + hash = "sha256-9dZjtsES+wLp1cFiSVMuEUbdeXVFcgT0dgg5ACZkILk=" [mod."github.com/sasha-s/go-deadlock"] version = "v0.3.1" hash = "sha256-2CBEi9/iN/OMt7wEIG+hRjgDH6CRWIgibGGGy1dQ78I=" @@ -474,14 +490,14 @@ schema = 3 version = "v3.21.4-0.20210419000835-c7a38de76ee5+incompatible" hash = "sha256-oqIqyFquWabIE6DID6uTEc8oFEmM1rVu2ATn3toiCEg=" [mod."github.com/spf13/afero"] - version = "v1.9.3" - hash = "sha256-8WqLcfhb9IasbUWLbxD3g48t/cWc8XbgHUZOm3ALNjA=" + version = "v1.9.5" + hash = "sha256-+XECQxkx0P+ZaQDm4dQ6ItMtHMj+2uNemEC18dsdor0=" [mod."github.com/spf13/cast"] version = "v1.5.1" hash = "sha256-/tQNGGQv+Osp+2jepQaQe6GlncZbqdxzSR82FieiUBU=" [mod."github.com/spf13/cobra"] - version = "v1.6.1" - hash = "sha256-80B5HcYdFisz6QLYkTyka7f9Dr6AfcVyPwp3QChoXwU=" + version = "v1.7.0" + hash = "sha256-bom9Zpnz8XPwx9IVF+GAodd3NVQ1dM1Uwxn8sy4Gmzs=" [mod."github.com/spf13/jwalterweatherman"] version = "v1.1.0" hash = "sha256-62BQtqTLF/eVrTOr7pUXE7AiHRjOVC8jQs3/Ehmflfs=" @@ -489,8 +505,8 @@ schema = 3 version = "v1.0.5" hash = "sha256-w9LLYzxxP74WHT4ouBspH/iQZXjuAh2WQCHsuvyEjAw=" [mod."github.com/spf13/viper"] - version = "v1.15.0" - hash = "sha256-FvpbekXegcdWNbek/vs2zakgRsT5FROF8O8fhn5DNpI=" + version = "v1.16.0" + hash = "sha256-TgBr1SBMaus1oAlA5Kn+iNUJfQCMyo0hT/xFaA7hreQ=" [mod."github.com/status-im/keycard-go"] version = "v0.2.0" hash = "sha256-UUiGmlgaIZDeMUJv3fdZBoQ9hJeSsg2ixRGmm6TgHug=" @@ -510,24 +526,9 @@ schema = 3 [mod."github.com/tendermint/go-amino"] version = "v0.16.0" hash = "sha256-JW4zO/0vMzf1dXLePOqaMtiLUZgNbuIseh9GV+jQlf0=" -<<<<<<< HEAD - [mod."github.com/cometbft/cometbft"] - version = "v0.34.27" - hash = "sha256-BbpfLcLRf6PwB1xmgkhTm9ckZekelrDUlXDX0/FSMU8=" - replaced = "github.com/cometbft/cometbft" - [mod."github.com/cometbft/cometbft-db"] -======= - [mod."github.com/tendermint/tendermint"] - version = "v0.34.31-kava.2" - hash = "sha256-sxeXJOibIqGX5vhcZDR9kT7S9Qv/H+IfdXQ3mdyqOoI=" - replaced = "github.com/kava-labs/cometbft" - [mod."github.com/tendermint/tm-db"] ->>>>>>> 877e8fd1 (Resolve CI and test errors (#34)) - version = "v0.6.7" - hash = "sha256-hl/3RrBrpkk2zA6dmrNlIYKs1/GfqegSscDSkA5Pjlo=" [mod."github.com/tidwall/btree"] - version = "v1.5.0" - hash = "sha256-iWll4/+ADLVse3VAHxXYLprILugX/+3u0ZIk0YlLv/Q=" + version = "v1.6.0" + hash = "sha256-H4S46Yk3tVfOtrEhVWUrF4S1yWYmzU43W80HlzS9rcY=" [mod."github.com/tklauser/go-sysconf"] version = "v0.3.10" hash = "sha256-Zf2NsgM9+HeM949vCce4HQtSbfUiFpeiQ716yKcFyx4=" @@ -538,86 +539,92 @@ schema = 3 version = "v1.1.0" hash = "sha256-3YhWBtSwRLGwm7vNwqumphZG3uLBW1vwT9QkQ8JuSjU=" [mod."github.com/ulikunitz/xz"] - version = "v0.5.10" - hash = "sha256-bogOwQNmQVS7W+C7wci7XEUeYm9TB7PnxnyBIXKYbm0=" + version = "v0.5.11" + hash = "sha256-SUyrjc2wyN3cTGKe5JdBEXjtZC1rJySRxJHVUZ59row=" [mod."github.com/zondax/hid"] - version = "v0.9.1" - hash = "sha256-hSVmN/f/lQHFhF60o6ej78ELC0MMoqQgqIX2hHjdTXg=" + version = "v0.9.2" + hash = "sha256-9h1gEJ/loyaJvu9AsmslztiA8U9ixDTC6TBw9lCU2BE=" [mod."github.com/zondax/ledger-go"] - version = "v0.14.2" - hash = "sha256-3ZSRcr86OpB0ccTkvSLDxs46WaqfyHBScX7vMerSRHE=" + version = "v0.14.3" + hash = "sha256-tldEok5ebZ4R4B7H8dSlYS5oVuLvh89n9wUaVlDjYwg=" [mod."go.etcd.io/bbolt"] version = "v1.3.8" hash = "sha256-ekKy8198B2GfPldHLYZnvNjID6x07dUPYKgFx84TgVs=" [mod."go.opencensus.io"] version = "v0.24.0" hash = "sha256-4H+mGZgG2c9I1y0m8avF4qmt8LUKxxVsTqR8mKgP4yo=" + [mod."go.opentelemetry.io/otel"] + version = "v1.19.0" + hash = "sha256-y51fwO/y73QBdwwRnCp+wrvVuWLeqfSnU/I8i4mBK84=" + [mod."go.opentelemetry.io/otel/metric"] + version = "v1.19.0" + hash = "sha256-eYeeR8XUPjoF6lY3Yg1VUL0dPum/18KAcpo5k6zY67E=" + [mod."go.opentelemetry.io/otel/trace"] + version = "v1.19.0" + hash = "sha256-EVsShx1IO0zpMztSfqYQ32Gm+hV4wrVM8wWkEfHOaoM=" [mod."golang.org/x/crypto"] - version = "v0.15.0" - hash = "sha256-ABytl19ORbe9xcY4Ao76AcAkqqPduUCd8OrD4Sl5jyU=" + version = "v0.16.0" + hash = "sha256-DgSVOnXRK8GF01p5rLtq4qPBcglwEoOk8qhW2EGfJfA=" [mod."golang.org/x/exp"] - version = "v0.0.0-20230131160201-f062dba9d201" - hash = "sha256-sxLT/VOe93v0h3miChJSHS9gscTZS/B71+390ju/e20=" + version = "v0.0.0-20230711153332-06a737ee72cb" + hash = "sha256-Cbw10ZJ+jATPV232G47xZrn6ExO1FDtiT6nlMRCH7EI=" [mod."golang.org/x/net"] - version = "v0.18.0" - hash = "sha256-7c3GBByVmRjd7CXf4STGTAnnUWtHVH4S0HjSYUHCcCA=" + version = "v0.19.0" + hash = "sha256-3M5rKEvJx4cO/q+06cGjR5sxF5JpnUWY0+fQttrWdT4=" [mod."golang.org/x/oauth2"] - version = "v0.11.0" - hash = "sha256-ztz1lRVZXq6lTN/q4b4Y+P6L1EkP8ZJuhUbSJ0QvCw4=" + version = "v0.13.0" + hash = "sha256-mEmRQrh6FMsenT7x406HbZCynBJCHJ4e9u0M3hpG3m4=" [mod."golang.org/x/sync"] - version = "v0.3.0" - hash = "sha256-bCJKLvwExhYacH2ZrWlZ38lr1d6oNenNt2m1QqDCs0o=" + version = "v0.4.0" + hash = "sha256-VCl5IerUva6XZqGXHa0J/r/ewsbOIIP7EBqyh1JGsXY=" [mod."golang.org/x/sys"] - version = "v0.14.0" - hash = "sha256-ReIRQmONicRW9idzGVPCBx5TTcKacmQTF1vPC3L4SxY=" + version = "v0.16.0" + hash = "sha256-ZkGclbp2S7NQYhbuGji6XokCn2Qi1BJy8dwyAOTV8sY=" [mod."golang.org/x/term"] - version = "v0.14.0" - hash = "sha256-C83bC2jW8cRkmBzAMECvv+9CsztMpZkGukD0B/uSrTo=" + version = "v0.15.0" + hash = "sha256-rsvtsE7sKmBwtR+mhJ8iUq93ZT8fV2LU+Pd69sh2es8=" [mod."golang.org/x/text"] version = "v0.14.0" hash = "sha256-yh3B0tom1RfzQBf1RNmfdNWF1PtiqxV41jW1GVS6JAg=" [mod."golang.org/x/tools"] version = "v0.7.0" hash = "sha256-ZEjfFulQd6U9r4mEJ5RZOnW49NZnQnrCFLMKCgLg7go=" - [mod."golang.org/x/xerrors"] - version = "v0.0.0-20220907171357-04be3eba64a2" - hash = "sha256-6+zueutgefIYmgXinOflz8qGDDDj0Zhv+2OkGhBTKno=" [mod."google.golang.org/api"] - version = "v0.128.0" - hash = "sha256-yfyjrqpgemcsLSnVJwIGH17SJyo2jYyh5Ziyb08IN9s=" + version = "v0.149.0" + hash = "sha256-nR3mk7wAsjvMEGsOiPKvqQwt789m6a+BDThpfTx0doA=" [mod."google.golang.org/appengine"] - version = "v1.6.7" - hash = "sha256-zIxGRHiq4QBvRqkrhMGMGCaVL4iM4TtlYpAi/hrivS4=" + version = "v1.6.8" + hash = "sha256-decMa0MiWfW/Bzr8QPPzzpeya0YWGHhZAt4Cr/bD1wQ=" [mod."google.golang.org/genproto"] - version = "v0.0.0-20231002182017-d307bd883b97" - hash = "sha256-YsRyEjtF3D7NGg1Be6khztBgnQFfT1+SM7ro/luk9JI=" + version = "v0.0.0-20240102182953-50ed04b92917" + hash = "sha256-iTzbVZIeGfcI/ZnDJqJZDxBCJ2J6vlYVdpE7wJX0sXI=" [mod."google.golang.org/genproto/googleapis/api"] - version = "v0.0.0-20230920204549-e6e6cdab5c13" - hash = "sha256-RwzbMifM6DMY7aMd5erHOhk87t6aRNF52dqCrMJPZCo=" + version = "v0.0.0-20231212172506-995d672761c0" + hash = "sha256-K85oYmTXZlQ+dOtyL4k1Oy6Qql2uqRUBOk+9TvRlPpE=" [mod."google.golang.org/genproto/googleapis/rpc"] - version = "v0.0.0-20231009173412-8bfb1ae86b6c" - hash = "sha256-VAMLHlDPnzbg5bNlNKDQ++pGTMRraIG1Eb5uLPJy+KA=" + version = "v0.0.0-20240108191215-35c7eff3a6b1" + hash = "sha256-bwWoFG+H827aJ3VunK7emdQz3BQlTTjWlM513kTZqSo=" [mod."google.golang.org/grpc"] - version = "v1.59.0" - hash = "sha256-IcwmXyeroUg742wqU4Zikwxm7y0i7x4axOPdWOGPkzE=" + version = "v1.60.1" + hash = "sha256-JJ3X6DTUZWYtM8i8izWTH9nDvCydzea31iZt6ULDvsw=" [mod."google.golang.org/protobuf"] - version = "v1.31.0" - hash = "sha256-UdIk+xRaMfdhVICvKRk1THe3R1VU+lWD8hqoW/y8jT0=" + version = "v1.32.0" + hash = "sha256-GJuTkMGHCzHbyK4yD5kY4oMn8wQWqgkeBK//yVDqHJk=" [mod."gopkg.in/ini.v1"] version = "v1.67.0" hash = "sha256-V10ahGNGT+NLRdKUyRg1dos5RxLBXBk1xutcnquc/+4=" [mod."gopkg.in/natefinch/npipe.v2"] version = "v2.0.0-20160621034901-c1b8fa8bdcce" hash = "sha256-ytqeVZqn4kd2uc65HvEjPlpPA2VnBmPfu5DsFlO0o+g=" - [mod."gopkg.in/yaml.v2"] - version = "v2.4.0" - hash = "sha256-uVEGglIedjOIGZzHW4YwN1VoRSTK8o0eGZqzd+TNdd0=" [mod."gopkg.in/yaml.v3"] version = "v3.0.1" hash = "sha256-FqL9TKYJ0XkNwJFnq9j0VvJ5ZUU1RvH/52h/f5bkYAU=" [mod."nhooyr.io/websocket"] version = "v1.8.6" hash = "sha256-DyaiCc/1iELrl6JSpz6WYMtFwUiSCOSoNF8IhSyP1ag=" + [mod."pgregory.net/rapid"] + version = "v1.1.0" + hash = "sha256-sVQY9EQ9Y5blYyVYfaOa+y12e+399OqdHiEY3BaDnqo=" [mod."sigs.k8s.io/yaml"] - version = "v1.3.0" - hash = "sha256-RVp8vca2wxg8pcBDYospG7Z1dujoH7zXNu2rgZ1kky0=" + version = "v1.4.0" + hash = "sha256-Hd/M0vIfIVobDd87eb58p1HyVOjYWNlGq2bRXfmtVno=" \ No newline at end of file diff --git a/nix/default.nix b/nix/default.nix index 462e80bb66..9b3b0d1289 100644 --- a/nix/default.nix +++ b/nix/default.nix @@ -3,11 +3,11 @@ import sources.nixpkgs { overlays = [ (_: pkgs: { - go = pkgs.go_1_20; + go = pkgs.go_1_21; go-ethereum = pkgs.callPackage ./go-ethereum.nix { inherit (pkgs.darwin) libobjc; inherit (pkgs.darwin.apple_sdk.frameworks) IOKit; - buildGoModule = pkgs.buildGo120Module; + buildGoModule = pkgs.buildGo121Module; }; }) # update to a version that supports eip-1559 # https://github.com/NixOS/nixpkgs/pull/179622 @@ -27,9 +27,9 @@ import sources.nixpkgs { dotenv = builtins.path { name = "dotenv"; path = ../scripts/.env; }; }; }) - (_: pkgs: { test-env = pkgs.callPackage ./testenv.nix { }; }) + (_: pkgs: { test-env = pkgs.callPackage ./testenv.nix { poetry2nix = import sources.poetry2nix {}; }; }) (_: pkgs: { - cosmovisor = pkgs.buildGo120Module rec { + cosmovisor = pkgs.buildGo121Module rec { name = "cosmovisor"; src = sources.cosmos-sdk + "/cosmovisor"; subPackages = [ "./cmd/cosmovisor" ]; diff --git a/nix/sources.json b/nix/sources.json index 21006fa575..b5581a94fc 100644 --- a/nix/sources.json +++ b/nix/sources.json @@ -1,61 +1,62 @@ { - "cosmos-sdk": { - "branch": "main", - "description": ":chains: A Framework for Building High Value Public Blockchains :sparkles:", - "homepage": "https://cosmos.network/", - "owner": "cosmos", - "repo": "cosmos-sdk", - "rev": "b6c77e6c819f8a51166649eaef125d1bfb276f04", - "sha256": "09ns4yfxyfi7c7n5g69zv32m1rdssdl48c1akmv1y2vz6ayz4v02", - "type": "tarball", - "url": "https://github.com/cosmos/cosmos-sdk/archive/b6c77e6c819f8a51166649eaef125d1bfb276f04.tar.gz", - "url_template": "https://github.com///archive/.tar.gz" - }, - "gomod2nix": { - "branch": "master", - "description": "Convert applications using Go modules to Nix expressions", - "homepage": null, - "owner": "tweag", - "repo": "gomod2nix", - "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", - "sha256": "0li17ynbg2wg0xqy655m5rmcw905sbv7d4ir35z7s5pg1yhhzxkp", - "type": "tarball", - "url": "https://github.com/tweag/gomod2nix/archive/40d32f82fc60d66402eb0972e6e368aeab3faf58.tar.gz", - "url_template": "https://github.com///archive/.tar.gz" - }, - "niv": { - "branch": "master", - "description": "Easy dependency management for Nix projects", - "homepage": "https://github.com/nmattia/niv", - "owner": "nmattia", - "repo": "niv", - "rev": "e0ca65c81a2d7a4d82a189f1e23a48d59ad42070", - "sha256": "1pq9nh1d8nn3xvbdny8fafzw87mj7gsmp6pxkdl65w2g18rmcmzx", - "type": "tarball", - "url": "https://github.com/nmattia/niv/archive/e0ca65c81a2d7a4d82a189f1e23a48d59ad42070.tar.gz", - "url_template": "https://github.com///archive/.tar.gz" - }, - "nixpkgs": { - "branch": "release-22.11", - "description": "Nix Packages collection", - "homepage": "", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "adec507378397099733e23c7496793e8d01ecb79", - "sha256": "131cgm8llqdq5plbzydrgzhc6lf6bz191hfjzrblxiy6wfsmxzn7", - "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/adec507378397099733e23c7496793e8d01ecb79.tar.gz" - }, - "poetry2nix": { - "branch": "master", - "description": "Convert poetry projects to nix automagically [maintainer=@adisbladis] ", - "homepage": "", - "owner": "nix-community", - "repo": "poetry2nix", - "rev": "e0b44e9e2d3aa855d1dd77b06f067cd0e0c3860d", - "sha256": "0zz3qzp2b5i9gw4yfxfrq07iadcdadackph12h02w19bb3535rm6", - "type": "tarball", - "url": "https://github.com/nix-community/poetry2nix/archive/e0b44e9e2d3aa855d1dd77b06f067cd0e0c3860d.tar.gz", - "url_template": "https://github.com///archive/.tar.gz" - } + "cosmos-sdk": { + "branch": "main", + "description": ":chains: A Framework for Building High Value Public Blockchains :sparkles:", + "homepage": "https://cosmos.network/", + "owner": "cosmos", + "repo": "cosmos-sdk", + "rev": "b6c77e6c819f8a51166649eaef125d1bfb276f04", + "sha256": "09ns4yfxyfi7c7n5g69zv32m1rdssdl48c1akmv1y2vz6ayz4v02", + "type": "tarball", + "url": "https://github.com/cosmos/cosmos-sdk/archive/b6c77e6c819f8a51166649eaef125d1bfb276f04.tar.gz", + "url_template": "https://github.com///archive/.tar.gz" + }, + "gomod2nix": { + "branch": "master", + "description": "Convert applications using Go modules to Nix expressions", + "homepage": null, + "owner": "tweag", + "repo": "gomod2nix", + "rev": "40d32f82fc60d66402eb0972e6e368aeab3faf58", + "sha256": "0li17ynbg2wg0xqy655m5rmcw905sbv7d4ir35z7s5pg1yhhzxkp", + "type": "tarball", + "url": "https://github.com/tweag/gomod2nix/archive/40d32f82fc60d66402eb0972e6e368aeab3faf58.tar.gz", + "url_template": "https://github.com///archive/.tar.gz" + }, + "niv": { + "branch": "master", + "description": "Easy dependency management for Nix projects", + "homepage": "https://github.com/nmattia/niv", + "owner": "nmattia", + "repo": "niv", + "rev": "e0ca65c81a2d7a4d82a189f1e23a48d59ad42070", + "sha256": "1pq9nh1d8nn3xvbdny8fafzw87mj7gsmp6pxkdl65w2g18rmcmzx", + "type": "tarball", + "url": "https://github.com/nmattia/niv/archive/e0ca65c81a2d7a4d82a189f1e23a48d59ad42070.tar.gz", + "url_template": "https://github.com///archive/.tar.gz" + }, + "nixpkgs": { + "branch": "release-22.11", + "description": "Nix Packages collection", + "homepage": "", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "057f9aecfb71c4437d2b27d3323df7f93c010b7e", + "sha256": "1ndiv385w1qyb3b18vw13991fzb9wg4cl21wglk89grsfsnra41k", + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/057f9aecfb71c4437d2b27d3323df7f93c010b7e.tar.gz", + "url_template": "https://github.com///archive/.tar.gz" + }, + "poetry2nix": { + "branch": "master", + "description": "Convert poetry projects to nix automagically [maintainer=@adisbladis] ", + "homepage": "", + "owner": "nix-community", + "repo": "poetry2nix", + "rev": "e0b44e9e2d3aa855d1dd77b06f067cd0e0c3860d", + "sha256": "0zz3qzp2b5i9gw4yfxfrq07iadcdadackph12h02w19bb3535rm6", + "type": "tarball", + "url": "https://github.com/nix-community/poetry2nix/archive/e0b44e9e2d3aa855d1dd77b06f067cd0e0c3860d.tar.gz", + "url_template": "https://github.com///archive/.tar.gz" + } } diff --git a/tests/integration_tests/configs/default.jsonnet b/tests/integration_tests/configs/default.jsonnet index b4674a47f1..5f04cb221d 100644 --- a/tests/integration_tests/configs/default.jsonnet +++ b/tests/integration_tests/configs/default.jsonnet @@ -57,18 +57,16 @@ }, }, gov: { - voting_params: { + params: { voting_period: '10s', - }, - deposit_params: { max_deposit_period: '10s', min_deposit: [ { - denom: 'aphoton', - amount: '1', - }, + denom: "aphoton", + amount: "1" + } ], - }, + } }, transfer: { params: { diff --git a/tests/integration_tests/configs/upgrade-test-package.nix b/tests/integration_tests/configs/upgrade-test-package.nix index d3a71a45e1..b4050397f1 100644 --- a/tests/integration_tests/configs/upgrade-test-package.nix +++ b/tests/integration_tests/configs/upgrade-test-package.nix @@ -1,11 +1,11 @@ let pkgs = import ../../../nix { }; - fetchEthermint = rev: builtins.fetchTarball "https://github.com/evmos/ethermint/archive/${rev}.tar.gz"; - released = pkgs.buildGo120Module rec { + fetchEthermint = rev: builtins.fetchTarball "https://github.com/Kava-Labs/ethermint/archive/${rev}.tar.gz"; + released = pkgs.buildGo121Module rec { name = "ethermintd"; - src = fetchEthermint "d29cdad6e667f6089dfecbedd36bb8d3a2a7d025"; + src = fetchEthermint "461df273d56847907464fb0ecffe31223b0c2a61"; subPackages = [ "cmd/ethermintd" ]; - vendorSha256 = "sha256-cQAol54b6hNzsA4Q3MP9mTqFWM1MvR5uMPrYpaoj3SY="; + vendorSha256 = "sha256-5JXFuwzTYPc71uPK8OMtc6dmlF6/Lj4TcMCP3GTG76U="; doCheck = false; }; current = pkgs.callPackage ../../../. { }; diff --git a/tests/integration_tests/cosmoscli.py b/tests/integration_tests/cosmoscli.py index 41c24c91e7..0e0e763ad5 100644 --- a/tests/integration_tests/cosmoscli.py +++ b/tests/integration_tests/cosmoscli.py @@ -637,8 +637,9 @@ def edit_validator( ) def gov_propose(self, proposer, kind, proposal, **kwargs): - method = "submit-proposal" + method = "submit-legacy-proposal" kwargs.setdefault("gas_prices", DEFAULT_GAS_PRICE) + kwargs.setdefault("gas", DEFAULT_GAS) if kind == "software-upgrade": return json.loads( self.raw( @@ -648,6 +649,7 @@ def gov_propose(self, proposer, kind, proposal, **kwargs): kind, proposal["name"], "-y", + "--no-validate", from_=proposer, # content title=proposal.get("title"), @@ -700,6 +702,7 @@ def gov_propose(self, proposer, kind, proposal, **kwargs): def gov_vote(self, voter, proposal_id, option, **kwargs): kwargs.setdefault("gas_prices", DEFAULT_GAS_PRICE) + kwargs.setdefault("broadcast_mode", "sync") return json.loads( self.raw( "tx", diff --git a/tests/integration_tests/poetry.lock b/tests/integration_tests/poetry.lock index 7a5479c8b9..382060f837 100644 --- a/tests/integration_tests/poetry.lock +++ b/tests/integration_tests/poetry.lock @@ -1525,7 +1525,7 @@ files = [ [[package]] name = "pystarport" -version = "0.2.4" +version = "0.2.5" description = "Spawn local devnets for cosmos-sdk chains" optional = false python-versions = "^3.8" @@ -1551,7 +1551,7 @@ tomlkit = "^0.7.0" type = "git" url = "https://github.com/crypto-com/pystarport.git" reference = "main" -resolved_reference = "ff645505d5052e11ecc56b6933af8f5f2a6b4373" +resolved_reference = "6fe15c8d74fc9d70ab49da54359082861f8e86dc" [[package]] name = "pytest" diff --git a/tests/integration_tests/test_grpc_only.py b/tests/integration_tests/test_grpc_only.py index b266625c49..7b3929c155 100644 --- a/tests/integration_tests/test_grpc_only.py +++ b/tests/integration_tests/test_grpc_only.py @@ -31,20 +31,35 @@ def custom_ethermint(tmp_path_factory): ) -def grpc_eth_call(port: int, args: dict, chain_id=None, proposer_address=None): +def grpc_eth_call( + port: int, + args: dict, + expect_cb, + chain_id=None, + proposer_address=None, +): """ do a eth_call through grpc gateway directly """ - params = { - "args": base64.b64encode(json.dumps(args).encode()).decode(), - } - if chain_id is not None: - params["chain_id"] = str(chain_id) - if proposer_address is not None: - params["proposer_address"] = str(proposer_address) - return requests.get( - f"http://localhost:{port}/ethermint/evm/v1/eth_call", params - ).json() + max_retry = 10 + sleep = 1 + success = False + for i in range(max_retry): + params = { + "args": base64.b64encode(json.dumps(args).encode()).decode(), + } + if chain_id is not None: + params["chain_id"] = str(chain_id) + if proposer_address is not None: + params["proposer_address"] = str(proposer_address) + rsp = requests.get( + f"http://localhost:{port}/ethermint/evm/v1/eth_call", params + ).json() + success = expect_cb(rsp) + if success: + break + time.sleep(sleep) + assert success, str(rsp) def wait_for_grpc_accept(port, host="127.0.0.1", timeout=40.0): @@ -77,19 +92,14 @@ def test_grpc_mode(custom_ethermint): "data": contract.encodeABI(fn_name="currentChainID"), } api_port = ports.api_port(custom_ethermint.base_port(1)) - # in normal mode, grpc query works even if we don't pass chain_id explicitly - success = False - max_retry = 3 - sleep = 1 - for i in range(max_retry): - rsp = grpc_eth_call(api_port, msg) + + def expect_cb(rsp): ret = rsp["ret"] valid = ret is not None - if valid and 9000 == int.from_bytes(base64.b64decode(ret.encode()), "big"): - success = True - break - time.sleep(sleep) - assert success + return valid and 9000 == int.from_bytes(base64.b64decode(ret.encode()), "big") + + # in normal mode, grpc query works even if we don't pass chain_id explicitly + grpc_eth_call(api_port, msg, expect_cb) # wait 1 more block for both nodes to avoid node stopped before tnx get included for i in range(2): wait_for_block(custom_ethermint.cosmos_cli(i), 1) @@ -106,7 +116,7 @@ def test_grpc_mode(custom_ethermint): "--grpc-only", "--home", custom_ethermint.base_dir / "node1", - ], + ], stdout=logfile, stderr=subprocess.STDOUT, ) @@ -116,36 +126,30 @@ def test_grpc_mode(custom_ethermint): wait_for_port(grpc_port) wait_for_port(api_port) - # Requests seem to have an error for a few seconds before actually - # accepting connections: - # connection error: desc = \"transport: Error while dialing: dial - # tcp 127.0.0.1:26413: connect: connection refused\" - - wait_for_grpc_accept(api_port) - - # in grpc-only mode, grpc query don't work if we don't pass chain_id - rsp = grpc_eth_call(api_port, msg) - assert rsp["code"] != 0, str(rsp) - assert "invalid chain ID" in rsp["message"] + def expect_cb(rsp): + assert rsp["code"] != 0, str(rsp) + return "validator does not exist" in rsp["message"] # it don't works without proposer address neither - rsp = grpc_eth_call(api_port, msg, chain_id=9000) - assert rsp["code"] != 0, str(rsp) - assert "validator does not exist" in rsp["message"] + grpc_eth_call(api_port, msg, expect_cb, chain_id=9000) # pass the first validator's consensus address to grpc query addr = custom_ethermint.cosmos_cli(0).consensus_address() cons_addr = decode_bech32(addr) + def expect_cb(rsp): + ret = base64.b64decode(rsp["ret"].encode()) + return "code" not in rsp and 100 == int.from_bytes(ret, "big") + # should work with both chain_id and proposer_address set - rsp = grpc_eth_call( + grpc_eth_call( api_port, msg, + expect_cb, chain_id=100, proposer_address=base64.b64encode(cons_addr).decode(), ) - assert "code" not in rsp, str(rsp) - assert 100 == int.from_bytes(base64.b64decode(rsp["ret"].encode()), "big") finally: proc.terminate() proc.wait() + diff --git a/tests/integration_tests/test_upgrade.py b/tests/integration_tests/test_upgrade.py index 566f41e3d6..fa438a6122 100644 --- a/tests/integration_tests/test_upgrade.py +++ b/tests/integration_tests/test_upgrade.py @@ -1,3 +1,4 @@ +import time import configparser import json import re @@ -13,6 +14,8 @@ from .utils import ( ADDRS, CONTRACTS, + find_log_event_attrs, + approve_proposal, deploy_contract, parse_events, send_transaction, @@ -113,24 +116,13 @@ def test_cosmovisor_upgrade(custom_ethermint: Ethermint): "title": "upgrade test", "description": "ditto", "upgrade-height": target_height, - "deposit": "10000aphoton", + "deposit": "10000000aphoton", }, ) assert rsp["code"] == 0, rsp["raw_log"] - - # get proposal_id - ev = parse_events(rsp["logs"])["submit_proposal"] - proposal_id = ev["proposal_id"] - - rsp = cli.gov_vote("validator", proposal_id, "yes") - assert rsp["code"] == 0, rsp["raw_log"] - # rsp = custom_ethermint.cosmos_cli(1).gov_vote("validator", proposal_id, "yes") - # assert rsp["code"] == 0, rsp["raw_log"] - - proposal = cli.query_proposal(proposal_id) - wait_for_block_time(cli, isoparse(proposal["voting_end_time"])) - proposal = cli.query_proposal(proposal_id) - assert proposal["status"] == "PROPOSAL_STATUS_PASSED", proposal + # wait until tx will be processed + time.sleep(5) + approve_proposal(custom_ethermint, rsp) # update cli chain binary custom_ethermint.chain_binary = ( diff --git a/tests/integration_tests/utils.py b/tests/integration_tests/utils.py index ce28e9c4c9..0b2c588543 100644 --- a/tests/integration_tests/utils.py +++ b/tests/integration_tests/utils.py @@ -196,3 +196,40 @@ def parse_events(logs): ev["type"]: {attr["key"]: attr["value"] for attr in ev["attributes"]} for ev in logs[0]["events"] } + + +def find_log_event_attrs(events, ev_type, cond=None): + for ev in events: + if ev["type"] == ev_type: + attrs = {attr["key"]: attr["value"] for attr in ev["attributes"]} + if cond is None or cond(attrs): + return attrs + return None + +def approve_proposal(n, rsp, status="PROPOSAL_STATUS_PASSED"): + cli = n.cosmos_cli() + + # get proposal_id + tx = cli.query_tx("hash", rsp["txhash"]) + def cb(attrs): + return "proposal_id" in attrs + ev = find_log_event_attrs(tx["logs"][0]["events"], "submit_proposal", cb) + proposal_id = ev["proposal_id"] + + for i in range(len(n.config["validators"])): + rsp = n.cosmos_cli(i).gov_vote("validator", proposal_id, "yes", gas=1000000) + assert rsp["code"] == 0, rsp["raw_log"] + # wait until txs will be processed + time.sleep(5) + wait_for_new_blocks(cli, 1) + + res = cli.query_tally(proposal_id) + res = res.get("tally") or res + assert ( + int(res["yes_count"]) == cli.staking_pool() + ), "all validators should have voted yes" + print("wait for proposal to be activated") + proposal = cli.query_proposal(proposal_id) + wait_for_block_time(cli, isoparse(proposal["voting_end_time"])) + proposal = cli.query_proposal(proposal_id) + assert proposal["status"] == status, proposal