From 7b2037a7967499703cab15e86e2b1e55968663c7 Mon Sep 17 00:00:00 2001 From: Kevin Yang <5478483+k-yang@users.noreply.github.com> Date: Tue, 5 Nov 2024 14:17:59 -0800 Subject: [PATCH] Revert "feat: enable wasm light clients on IBC (08-wasm) (#2068)" This reverts commit ee5e29fc403616aa4e0019864858960d66cb8ab8. --- CHANGELOG.md | 7 +++++- app/app.go | 14 ----------- app/keepers.go | 34 +++----------------------- app/keepers/all_keepers.go | 2 -- app/upgrades.go | 2 +- app/upgrades/types.go | 4 +-- app/upgrades/v1_0_1/constants.go | 3 +-- app/upgrades/v1_0_2/constants.go | 3 +-- app/upgrades/v1_0_3/constants.go | 3 +-- app/upgrades/v1_1_0/constants.go | 3 +-- app/upgrades/v1_2_0/constants.go | 3 +-- app/upgrades/v1_3_0/constants.go | 3 +-- app/upgrades/v1_4_0/constants.go | 3 +-- app/upgrades/v1_5_0/constants.go | 3 +-- app/upgrades/v2_0_0/constants.go | 3 +-- app/upgrades/v2_1_0/constants.go | 42 -------------------------------- cmd/nibid/cmd/init.go | 9 ------- go.mod | 3 +-- go.sum | 6 ++--- 19 files changed, 24 insertions(+), 126 deletions(-) delete mode 100644 app/upgrades/v2_1_0/constants.go diff --git a/CHANGELOG.md b/CHANGELOG.md index f4e5fa640..44d185ab8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -50,7 +50,6 @@ Zenith](https://code4rena.com/zenith) Audit, running from 2024-10-07 until period. This section describes code changes that occured after that audit in preparation for a second audit starting in November 2024. -- [#2068](https://github.com/NibiruChain/nibiru/pull/2068) - feat: enable wasm light clients on IBC (08-wasm) - [#2074](https://github.com/NibiruChain/nibiru/pull/2074) - fix(evm-keeper): better utilize ERC20 metadata during FunToken creation. The bank metadata for a new FunToken mapping ties a connection between the Bank Coin's `DenomUnit` and the ERC20 contract metadata like the name, decimals, and symbol. This change brings parity between EVM wallets, such as MetaMask, and Interchain wallets like Keplr and Leap. - [#2076](https://github.com/NibiruChain/nibiru/pull/2076) - fix(evm-gas-fees): Use effective gas price in RefundGas and make sure that units are properly @@ -98,6 +97,12 @@ depend on x/bank, such as the EVM and Wasm modules. - [#2098](https://github.com/NibiruChain/nibiru/pull/2098) - test(evm): statedb tests for race conditions within funtoken precompile - [#2100](https://github.com/NibiruChain/nibiru/pull/2100) - refactor: cleanup statedb and precompile sections +- [#2098](https://github.com/NibiruChain/nibiru/pull/2098) - test(evm): statedb tests for race conditions within funtoken precompile +- [#2090](https://github.com/NibiruChain/nibiru/pull/2090) - fix(evm): Account +for (1) ERC20 transfers with tokens that return false success values instead of +throwing an error and (2) ERC20 transfers with other operations that don't bring +about the expected resulting balance for the transfer recipient. +- [#2092](https://github.com/NibiruChain/nibiru/pull/2092) - feat(evm): add validation for wasm multi message execution - [#2101](https://github.com/NibiruChain/nibiru/pull/2101) - fix(evm): tx receipt proper marshalling - [#2105](https://github.com/NibiruChain/nibiru/pull/2105) - test(evm): precompile call with revert diff --git a/app/app.go b/app/app.go index f212cc07e..9aa9cf73e 100644 --- a/app/app.go +++ b/app/app.go @@ -13,9 +13,7 @@ import ( dbm "github.com/cometbft/cometbft-db" abci "github.com/cometbft/cometbft/abci/types" "github.com/cometbft/cometbft/libs/log" - cmtos "github.com/cometbft/cometbft/libs/os" tmos "github.com/cometbft/cometbft/libs/os" - cmtproto "github.com/cometbft/cometbft/proto/tendermint/types" "github.com/cosmos/cosmos-sdk/baseapp" "github.com/cosmos/cosmos-sdk/client" _ "github.com/cosmos/cosmos-sdk/client/docs/statik" @@ -39,7 +37,6 @@ import ( capabilitykeeper "github.com/cosmos/cosmos-sdk/x/capability/keeper" "github.com/cosmos/cosmos-sdk/x/crisis" paramstypes "github.com/cosmos/cosmos-sdk/x/params/types" - ibcwasmkeeper "github.com/cosmos/ibc-go/modules/light-clients/08-wasm/keeper" ibckeeper "github.com/cosmos/ibc-go/v7/modules/core/keeper" ibctesting "github.com/cosmos/ibc-go/v7/testing" "github.com/cosmos/ibc-go/v7/testing/types" @@ -238,10 +235,6 @@ func NewNibiruApp( app.CommitMultiStore(), &app.WasmKeeper, ), - ibcwasmkeeper.NewWasmSnapshotter( - app.CommitMultiStore(), - &app.WasmClientKeeper, - ), ); err != nil { panic("failed to add wasm snapshot extension.") } @@ -252,13 +245,6 @@ func NewNibiruApp( tmos.Exit(err.Error()) } - ctx := app.BaseApp.NewUncachedContext(true, cmtproto.Header{}) - - // Initialize pinned codes in wasmvm as they are not persisted there - if err := ibcwasmkeeper.InitializePinnedCodes(ctx, app.appCodec); err != nil { - cmtos.Exit(fmt.Sprintf("failed to initialize pinned codes %s", err)) - } - /* Applications that wish to enforce statically created ScopedKeepers should call `Seal` after creating their scoped modules in `NewApp` with `capabilityKeeper.ScopeToModule`. diff --git a/app/keepers.go b/app/keepers.go index 51263d320..81575a18b 100644 --- a/app/keepers.go +++ b/app/keepers.go @@ -4,8 +4,6 @@ import ( "path/filepath" "strings" - ibcwasm "github.com/cosmos/ibc-go/modules/light-clients/08-wasm" - ibcwasmkeeper "github.com/cosmos/ibc-go/modules/light-clients/08-wasm/keeper" ica "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts" icacontroller "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/controller" icacontrollerkeeper "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/controller/keeper" @@ -18,7 +16,6 @@ import ( "github.com/CosmWasm/wasmd/x/wasm" wasmkeeper "github.com/CosmWasm/wasmd/x/wasm/keeper" wasmtypes "github.com/CosmWasm/wasmd/x/wasm/types" - wasmvm "github.com/CosmWasm/wasmvm" _ "github.com/cosmos/cosmos-sdk/client/docs/statik" "github.com/cosmos/cosmos-sdk/client/flags" "github.com/cosmos/cosmos-sdk/codec" @@ -87,7 +84,6 @@ import ( // --------------------------------------------------------------- // IBC imports - ibcwasmtypes "github.com/cosmos/ibc-go/modules/light-clients/08-wasm/types" icahostkeeper "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/host/keeper" ibcfee "github.com/cosmos/ibc-go/v7/modules/apps/29-fee" ibcfeekeeper "github.com/cosmos/ibc-go/v7/modules/apps/29-fee/keeper" @@ -125,7 +121,7 @@ import ( "github.com/NibiruChain/nibiru/v2/x/inflation" inflationkeeper "github.com/NibiruChain/nibiru/v2/x/inflation/keeper" inflationtypes "github.com/NibiruChain/nibiru/v2/x/inflation/types" - "github.com/NibiruChain/nibiru/v2/x/oracle" + oracle "github.com/NibiruChain/nibiru/v2/x/oracle" oraclekeeper "github.com/NibiruChain/nibiru/v2/x/oracle/keeper" oracletypes "github.com/NibiruChain/nibiru/v2/x/oracle/types" @@ -133,13 +129,11 @@ import ( "github.com/NibiruChain/nibiru/v2/x/sudo/keeper" sudotypes "github.com/NibiruChain/nibiru/v2/x/sudo/types" - "github.com/NibiruChain/nibiru/v2/x/tokenfactory" + tokenfactory "github.com/NibiruChain/nibiru/v2/x/tokenfactory" tokenfactorykeeper "github.com/NibiruChain/nibiru/v2/x/tokenfactory/keeper" tokenfactorytypes "github.com/NibiruChain/nibiru/v2/x/tokenfactory/types" ) -const wasmVmContractMemoryLimit = 32 - type AppKeepers struct { keepers.PublicKeepers privateKeepers @@ -198,7 +192,6 @@ func initStoreKeys() ( ibcexported.StoreKey, icahosttypes.StoreKey, icacontrollertypes.StoreKey, - ibcwasmtypes.StoreKey, // nibiru x/ keys oracletypes.StoreKey, @@ -259,7 +252,7 @@ func (app *NibiruApp) InitKeepers( // seal capability keeper after scoping modules // app.capabilityKeeper.Seal() - // TODO: chore(upgrade): Potential breaking change on AccountKeeper due + // TODO: chore(upgrade): Potential breaking change on AccountKeeper dur // to ProtoBaseAccount replacement. app.AccountKeeper = authkeeper.NewAccountKeeper( appCodec, @@ -460,13 +453,6 @@ func (app *NibiruApp) InitKeepers( // For example, if there are bindings for the x/inflation module, then the app // passed to GetWasmOpts must already have a non-nil InflationKeeper. supportedFeatures := strings.Join(wasmdapp.AllCapabilities(), ",") - - // Create wasm VM outside keeper so it can be re-used in client keeper - wasmVM, err := wasmvm.NewVM(filepath.Join(wasmDir, "wasm"), supportedFeatures, wasmVmContractMemoryLimit, wasmConfig.ContractDebugMode, wasmConfig.MemoryCacheSize) - if err != nil { - panic(err) - } - app.WasmKeeper = wasmkeeper.NewKeeper( appCodec, keys[wasmtypes.StoreKey], @@ -485,16 +471,7 @@ func (app *NibiruApp) InitKeepers( wasmConfig, supportedFeatures, govModuleAddr, - append(GetWasmOpts(*app, appOpts), wasmkeeper.WithWasmEngine(wasmVM))..., - ) - - app.WasmClientKeeper = ibcwasmkeeper.NewKeeperWithVM( - appCodec, - keys[ibcwasmtypes.StoreKey], - app.ibcKeeper.ClientKeeper, - authtypes.NewModuleAddress(govtypes.ModuleName).String(), - wasmVM, - app.GRPCQueryRouter(), + GetWasmOpts(*app, appOpts)..., ) // DevGas uses WasmKeeper @@ -658,7 +635,6 @@ func (app *NibiruApp) initAppModules( ibctransfer.NewAppModule(app.ibcTransferKeeper), ibcfee.NewAppModule(app.ibcFeeKeeper), ica.NewAppModule(&app.icaControllerKeeper, &app.icaHostKeeper), - ibcwasm.NewAppModule(app.WasmClientKeeper), evmmodule.NewAppModule(app.EvmKeeper, app.AccountKeeper), @@ -730,7 +706,6 @@ func orderedModuleNames() []string { ibcexported.ModuleName, ibcfeetypes.ModuleName, icatypes.ModuleName, - ibcwasmtypes.ModuleName, // -------------------------------------------------------------------- evm.ModuleName, @@ -837,7 +812,6 @@ func ModuleBasicManager() module.BasicManager { ibctransfer.AppModuleBasic{}, ibctm.AppModuleBasic{}, ica.AppModuleBasic{}, - ibcwasm.AppModuleBasic{}, // native x/ evmmodule.AppModuleBasic{}, oracle.AppModuleBasic{}, diff --git a/app/keepers/all_keepers.go b/app/keepers/all_keepers.go index 0ebc82afd..4692905c7 100644 --- a/app/keepers/all_keepers.go +++ b/app/keepers/all_keepers.go @@ -10,7 +10,6 @@ import ( distrkeeper "github.com/cosmos/cosmos-sdk/x/distribution/keeper" feegrantkeeper "github.com/cosmos/cosmos-sdk/x/feegrant/keeper" govkeeper "github.com/cosmos/cosmos-sdk/x/gov/keeper" - ibcwasmkeeper "github.com/cosmos/ibc-go/modules/light-clients/08-wasm/keeper" stakingkeeper "github.com/cosmos/cosmos-sdk/x/staking/keeper" @@ -69,5 +68,4 @@ type PublicKeepers struct { // WASM keepers WasmKeeper wasmkeeper.Keeper ScopedWasmKeeper capabilitykeeper.ScopedKeeper - WasmClientKeeper ibcwasmkeeper.Keeper } diff --git a/app/upgrades.go b/app/upgrades.go index 454a3e61b..48727aab9 100644 --- a/app/upgrades.go +++ b/app/upgrades.go @@ -38,7 +38,7 @@ func (app *NibiruApp) setupUpgrades() { func (app *NibiruApp) setUpgradeHandlers() { for _, u := range Upgrades { - app.upgradeKeeper.SetUpgradeHandler(u.UpgradeName, u.CreateUpgradeHandler(app.ModuleManager, app.configurator, app.ibcKeeper.ClientKeeper)) + app.upgradeKeeper.SetUpgradeHandler(u.UpgradeName, u.CreateUpgradeHandler(app.ModuleManager, app.configurator)) } } diff --git a/app/upgrades/types.go b/app/upgrades/types.go index 88dd83c13..a2cdde4b5 100644 --- a/app/upgrades/types.go +++ b/app/upgrades/types.go @@ -4,14 +4,12 @@ import ( store "github.com/cosmos/cosmos-sdk/store/types" "github.com/cosmos/cosmos-sdk/types/module" "github.com/cosmos/cosmos-sdk/x/upgrade/types" - - clientkeeper "github.com/cosmos/ibc-go/v7/modules/core/02-client/keeper" ) type Upgrade struct { UpgradeName string - CreateUpgradeHandler func(*module.Manager, module.Configurator, clientkeeper.Keeper) types.UpgradeHandler + CreateUpgradeHandler func(*module.Manager, module.Configurator) types.UpgradeHandler StoreUpgrades store.StoreUpgrades } diff --git a/app/upgrades/v1_0_1/constants.go b/app/upgrades/v1_0_1/constants.go index 16ba7d6ff..1548161da 100644 --- a/app/upgrades/v1_0_1/constants.go +++ b/app/upgrades/v1_0_1/constants.go @@ -5,7 +5,6 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/module" upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types" - clientkeeper "github.com/cosmos/ibc-go/v7/modules/core/02-client/keeper" "github.com/NibiruChain/nibiru/v2/app/upgrades" ) @@ -15,7 +14,7 @@ const UpgradeName = "v1.0.1" // pretty much a no-op store upgrade to test the upgrade process and include the newer version of rocksdb var Upgrade = upgrades.Upgrade{ UpgradeName: UpgradeName, - CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator, clientKeeper clientkeeper.Keeper) upgradetypes.UpgradeHandler { + CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator) upgradetypes.UpgradeHandler { return func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { return mm.RunMigrations(ctx, cfg, fromVM) } diff --git a/app/upgrades/v1_0_2/constants.go b/app/upgrades/v1_0_2/constants.go index e27784241..5333497fc 100644 --- a/app/upgrades/v1_0_2/constants.go +++ b/app/upgrades/v1_0_2/constants.go @@ -5,7 +5,6 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/module" upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types" - clientkeeper "github.com/cosmos/ibc-go/v7/modules/core/02-client/keeper" "github.com/NibiruChain/nibiru/v2/app/upgrades" ) @@ -15,7 +14,7 @@ const UpgradeName = "v1.0.2" // a no-op store upgrade to test the upgrade process and include the newer version cosmos-sdk var Upgrade = upgrades.Upgrade{ UpgradeName: UpgradeName, - CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator, clientKeeper clientkeeper.Keeper) upgradetypes.UpgradeHandler { + CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator) upgradetypes.UpgradeHandler { return func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { return mm.RunMigrations(ctx, cfg, fromVM) } diff --git a/app/upgrades/v1_0_3/constants.go b/app/upgrades/v1_0_3/constants.go index 96b2e9606..acec556b6 100644 --- a/app/upgrades/v1_0_3/constants.go +++ b/app/upgrades/v1_0_3/constants.go @@ -5,7 +5,6 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/module" upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types" - clientkeeper "github.com/cosmos/ibc-go/v7/modules/core/02-client/keeper" "github.com/NibiruChain/nibiru/v2/app/upgrades" ) @@ -15,7 +14,7 @@ const UpgradeName = "v1.0.3" // a no-op store upgrade to test the upgrade process and include the newer version cosmos-sdk var Upgrade = upgrades.Upgrade{ UpgradeName: UpgradeName, - CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator, clientKeeper clientkeeper.Keeper) upgradetypes.UpgradeHandler { + CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator) upgradetypes.UpgradeHandler { return func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { return mm.RunMigrations(ctx, cfg, fromVM) } diff --git a/app/upgrades/v1_1_0/constants.go b/app/upgrades/v1_1_0/constants.go index bd119eb7a..4fdebdf6c 100644 --- a/app/upgrades/v1_1_0/constants.go +++ b/app/upgrades/v1_1_0/constants.go @@ -5,7 +5,6 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/module" upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types" - clientkeeper "github.com/cosmos/ibc-go/v7/modules/core/02-client/keeper" "github.com/NibiruChain/nibiru/v2/app/upgrades" inflationtypes "github.com/NibiruChain/nibiru/v2/x/inflation/types" @@ -15,7 +14,7 @@ const UpgradeName = "v1.1.0" var Upgrade = upgrades.Upgrade{ UpgradeName: UpgradeName, - CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator, clientKeeper clientkeeper.Keeper) upgradetypes.UpgradeHandler { + CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator) upgradetypes.UpgradeHandler { return func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { return mm.RunMigrations(ctx, cfg, fromVM) } diff --git a/app/upgrades/v1_2_0/constants.go b/app/upgrades/v1_2_0/constants.go index 0805d4b66..63718c21d 100644 --- a/app/upgrades/v1_2_0/constants.go +++ b/app/upgrades/v1_2_0/constants.go @@ -5,7 +5,6 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/module" upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types" - clientkeeper "github.com/cosmos/ibc-go/v7/modules/core/02-client/keeper" "github.com/NibiruChain/nibiru/v2/app/upgrades" ) @@ -14,7 +13,7 @@ const UpgradeName = "v1.2.0" var Upgrade = upgrades.Upgrade{ UpgradeName: UpgradeName, - CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator, clientKeeper clientkeeper.Keeper) upgradetypes.UpgradeHandler { + CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator) upgradetypes.UpgradeHandler { return func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { return mm.RunMigrations(ctx, cfg, fromVM) } diff --git a/app/upgrades/v1_3_0/constants.go b/app/upgrades/v1_3_0/constants.go index 263817ac0..320bdae7c 100644 --- a/app/upgrades/v1_3_0/constants.go +++ b/app/upgrades/v1_3_0/constants.go @@ -14,7 +14,6 @@ import ( icahosttypes "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/host/types" icatypes "github.com/cosmos/ibc-go/v7/modules/apps/27-interchain-accounts/types" ibctransfertypes "github.com/cosmos/ibc-go/v7/modules/apps/transfer/types" - clientkeeper "github.com/cosmos/ibc-go/v7/modules/core/02-client/keeper" "github.com/NibiruChain/nibiru/v2/app/upgrades" ) @@ -23,7 +22,7 @@ const UpgradeName = "v1.3.0" var Upgrade = upgrades.Upgrade{ UpgradeName: UpgradeName, - CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator, clientKeeper clientkeeper.Keeper) upgradetypes.UpgradeHandler { + CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator) upgradetypes.UpgradeHandler { return func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { // set the ICS27 consensus version so InitGenesis is not run fromVM[icatypes.ModuleName] = mm.GetVersionMap()[icatypes.ModuleName] diff --git a/app/upgrades/v1_4_0/constants.go b/app/upgrades/v1_4_0/constants.go index 28d53df22..fbfa766ea 100644 --- a/app/upgrades/v1_4_0/constants.go +++ b/app/upgrades/v1_4_0/constants.go @@ -5,7 +5,6 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/module" upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types" - clientkeeper "github.com/cosmos/ibc-go/v7/modules/core/02-client/keeper" "github.com/NibiruChain/nibiru/v2/app/upgrades" ) @@ -14,7 +13,7 @@ const UpgradeName = "v1.4.0" var Upgrade = upgrades.Upgrade{ UpgradeName: UpgradeName, - CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator, clientKeeper clientkeeper.Keeper) upgradetypes.UpgradeHandler { + CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator) upgradetypes.UpgradeHandler { return func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { return mm.RunMigrations(ctx, cfg, fromVM) } diff --git a/app/upgrades/v1_5_0/constants.go b/app/upgrades/v1_5_0/constants.go index fb15d6809..71e4aa827 100644 --- a/app/upgrades/v1_5_0/constants.go +++ b/app/upgrades/v1_5_0/constants.go @@ -5,7 +5,6 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/module" upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types" - clientkeeper "github.com/cosmos/ibc-go/v7/modules/core/02-client/keeper" "github.com/NibiruChain/nibiru/v2/app/upgrades" ) @@ -14,7 +13,7 @@ const UpgradeName = "v1.5.0" var Upgrade = upgrades.Upgrade{ UpgradeName: UpgradeName, - CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator, clientKeeper clientkeeper.Keeper) upgradetypes.UpgradeHandler { + CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator) upgradetypes.UpgradeHandler { return func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { return mm.RunMigrations(ctx, cfg, fromVM) } diff --git a/app/upgrades/v2_0_0/constants.go b/app/upgrades/v2_0_0/constants.go index c5a223948..cc4c5eaf2 100644 --- a/app/upgrades/v2_0_0/constants.go +++ b/app/upgrades/v2_0_0/constants.go @@ -5,7 +5,6 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/module" upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types" - clientkeeper "github.com/cosmos/ibc-go/v7/modules/core/02-client/keeper" "github.com/NibiruChain/nibiru/v2/app/upgrades" evmtypes "github.com/NibiruChain/nibiru/v2/x/evm" @@ -15,7 +14,7 @@ const UpgradeName = "v2.0.0" var Upgrade = upgrades.Upgrade{ UpgradeName: UpgradeName, - CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator, clientKeeper clientkeeper.Keeper) upgradetypes.UpgradeHandler { + CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator) upgradetypes.UpgradeHandler { return func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { return mm.RunMigrations(ctx, cfg, fromVM) } diff --git a/app/upgrades/v2_1_0/constants.go b/app/upgrades/v2_1_0/constants.go deleted file mode 100644 index f294c66a4..000000000 --- a/app/upgrades/v2_1_0/constants.go +++ /dev/null @@ -1,42 +0,0 @@ -package v2_1_0 - -import ( - "github.com/cosmos/cosmos-sdk/store/types" - sdk "github.com/cosmos/cosmos-sdk/types" - "github.com/cosmos/cosmos-sdk/types/module" - upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types" - ibcwasmtypes "github.com/cosmos/ibc-go/modules/light-clients/08-wasm/types" - clientkeeper "github.com/cosmos/ibc-go/v7/modules/core/02-client/keeper" - - "github.com/NibiruChain/nibiru/v2/app/upgrades" -) - -const UpgradeName = "v2.1.0" - -var Upgrade = upgrades.Upgrade{ - UpgradeName: UpgradeName, - CreateUpgradeHandler: func(mm *module.Manager, cfg module.Configurator, clientKeeper clientkeeper.Keeper) upgradetypes.UpgradeHandler { - return func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { - // explicitly update the IBC 02-client params, adding the wasm client type if it is not there - params := clientKeeper.GetParams(ctx) - - hasWasmClient := false - for _, client := range params.AllowedClients { - if client == ibcwasmtypes.Wasm { - hasWasmClient = true - break - } - } - - if !hasWasmClient { - params.AllowedClients = append(params.AllowedClients, ibcwasmtypes.Wasm) - clientKeeper.SetParams(ctx, params) - } - - return mm.RunMigrations(ctx, cfg, fromVM) - } - }, - StoreUpgrades: types.StoreUpgrades{ - Added: []string{ibcwasmtypes.ModuleName}, - }, -} diff --git a/cmd/nibid/cmd/init.go b/cmd/nibid/cmd/init.go index 13de92198..1d8c439a9 100644 --- a/cmd/nibid/cmd/init.go +++ b/cmd/nibid/cmd/init.go @@ -8,7 +8,6 @@ import ( "path/filepath" tmcfg "github.com/cometbft/cometbft/config" - ibcwasmtypes "github.com/cosmos/ibc-go/modules/light-clients/08-wasm/types" "github.com/NibiruChain/nibiru/v2/app/appconst" @@ -26,9 +25,6 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/types/module" "github.com/cosmos/cosmos-sdk/x/genutil" - - ibcexported "github.com/cosmos/ibc-go/v7/modules/core/exported" - ibctypes "github.com/cosmos/ibc-go/v7/modules/core/types" ) const ( @@ -133,11 +129,6 @@ func InitCmd(mbm module.BasicManager, defaultNodeHome string) *cobra.Command { } appGenState := mbm.DefaultGenesis(cdc) - // add 08-wasm to AllowedClients - ibcState := ibctypes.DefaultGenesisState() - ibcState.ClientGenesis.Params.AllowedClients = append(ibcState.ClientGenesis.Params.AllowedClients, ibcwasmtypes.Wasm) - appGenState[ibcexported.ModuleName] = cdc.MustMarshalJSON(ibcState) - appState, err := json.MarshalIndent(appGenState, "", " ") if err != nil { return errors.Wrap(err, "Failed to marshal default genesis state") diff --git a/go.mod b/go.mod index c4546c826..212c99e6b 100644 --- a/go.mod +++ b/go.mod @@ -14,7 +14,7 @@ require ( // Cosmos-SDK and IBC github.com/cosmos/cosmos-proto v1.0.0-beta.5 github.com/cosmos/cosmos-sdk v0.47.11 - github.com/cosmos/ibc-go/v7 v7.4.0 + github.com/cosmos/ibc-go/v7 v7.3.2 github.com/ethereum/go-ethereum v1.10.17 ) @@ -57,7 +57,6 @@ require ( require ( cosmossdk.io/collections v0.4.0 cosmossdk.io/tools/rosetta v0.2.1 - github.com/cosmos/ibc-go/modules/light-clients/08-wasm v0.3.2-0.20240730185603-13c071f0b34d github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc github.com/gorilla/websocket v1.5.0 github.com/rs/cors v1.8.3 diff --git a/go.sum b/go.sum index a4fec943d..ab3cd42aa 100644 --- a/go.sum +++ b/go.sum @@ -438,10 +438,8 @@ github.com/cosmos/gogoproto v1.4.10 h1:QH/yT8X+c0F4ZDacDv3z+xE3WU1P1Z3wQoLMBRJoK github.com/cosmos/gogoproto v1.4.10/go.mod h1:3aAZzeRWpAwr+SS/LLkICX2/kDFyaYVzckBDzygIxek= github.com/cosmos/iavl v0.20.0 h1:fTVznVlepH0KK8NyKq8w+U7c2L6jofa27aFX6YGlm38= github.com/cosmos/iavl v0.20.0/go.mod h1:WO7FyvaZJoH65+HFOsDir7xU9FWk2w9cHXNW1XHcl7A= -github.com/cosmos/ibc-go/modules/light-clients/08-wasm v0.3.2-0.20240730185603-13c071f0b34d h1:QJK/Zr0HblNx6z1x5LXIHEblY7DCCftMkUBcjpKe1qY= -github.com/cosmos/ibc-go/modules/light-clients/08-wasm v0.3.2-0.20240730185603-13c071f0b34d/go.mod h1:5oIHokzX6RJ6q93tLcWZ7Thkrt9vrMGIz3He9HFE660= -github.com/cosmos/ibc-go/v7 v7.4.0 h1:8FqYMptvksgMvlbN4UW9jFxTXzsPyfAzEZurujXac8M= -github.com/cosmos/ibc-go/v7 v7.4.0/go.mod h1:L/KaEhzV5TGUCTfGysVgMBQtl5Dm7hHitfpk+GIeoAo= +github.com/cosmos/ibc-go/v7 v7.3.2 h1:FeUDcBX7VYY0e0iRmcVkPPUjYfAqIc//QuHXo8JHz9c= +github.com/cosmos/ibc-go/v7 v7.3.2/go.mod h1:IMeOXb7gwpZ+/nOG5BuUkdW4weM1ezvN4PQPws4uzOI= github.com/cosmos/ics23/go v0.10.0 h1:iXqLLgp2Lp+EdpIuwXTYIQU+AiHj9mOC2X9ab++bZDM= github.com/cosmos/ics23/go v0.10.0/go.mod h1:ZfJSmng/TBNTBkFemHHHj5YY7VAU/MBU980F4VU1NG0= github.com/cosmos/ledger-cosmos-go v0.12.4 h1:drvWt+GJP7Aiw550yeb3ON/zsrgW0jgh5saFCr7pDnw=