From 4569633fce0f70e354bfe7146d6a3c6c34f6334f Mon Sep 17 00:00:00 2001 From: Flavien Binet Date: Thu, 16 Jun 2022 17:57:15 +0200 Subject: [PATCH 1/3] feat: upgrade wasm to v0.27 This address CWA-4 and force an upgrade of IBC module to v3 --- app/app.go | 1 - 1 file changed, 1 deletion(-) diff --git a/app/app.go b/app/app.go index eea67b5a5..57912a144 100644 --- a/app/app.go +++ b/app/app.go @@ -97,7 +97,6 @@ import ( porttypes "github.com/cosmos/ibc-go/v3/modules/core/05-port/types" ibchost "github.com/cosmos/ibc-go/v3/modules/core/24-host" ibckeeper "github.com/cosmos/ibc-go/v3/modules/core/keeper" - abci "github.com/tendermint/tendermint/abci/types" tmjson "github.com/tendermint/tendermint/libs/json" "github.com/tendermint/tendermint/libs/log" From c14dd644fc56d9d708f4422158e47a26d4797057 Mon Sep 17 00:00:00 2001 From: Flavien Binet Date: Fri, 17 Jun 2022 15:55:55 +0200 Subject: [PATCH 2/3] feat: add ICA and upgrade handler --- app/app.go | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/app/app.go b/app/app.go index 57912a144..40657deca 100644 --- a/app/app.go +++ b/app/app.go @@ -302,6 +302,7 @@ func New( scopedIBCKeeper := app.CapabilityKeeper.ScopeToModule(ibchost.ModuleName) scopedICAHostKeeper := app.CapabilityKeeper.ScopeToModule(icahosttypes.SubModuleName) scopedTransferKeeper := app.CapabilityKeeper.ScopeToModule(ibctransfertypes.ModuleName) + scopedICAHostKeeper := app.CapabilityKeeper.ScopeToModule(icahosttypes.SubModuleName) scopedWasmKeeper := app.CapabilityKeeper.ScopeToModule(wasm.ModuleName) // Applications that wish to enforce statically created ScopedKeepers should call `Seal` after creating @@ -402,6 +403,19 @@ func New( icaHostIBCModule := icahost.NewIBCModule(*app.ICAHostKeeper) + icaHostKeeper := icahostkeeper.NewKeeper( + appCodec, app.keys[icahosttypes.StoreKey], + app.GetSubspace(icahosttypes.SubModuleName), + app.IBCKeeper.ChannelKeeper, + &app.IBCKeeper.PortKeeper, + app.AccountKeeper, + scopedICAHostKeeper, + bApp.MsgServiceRouter(), + ) + app.ICAHostKeeper = &icaHostKeeper + + icaHostIBCModule := icahost.NewIBCModule(*app.ICAHostKeeper) + // Create evidence Keeper for to register the IBC light client misbehaviour evidence route evidenceKeeper := evidencekeeper.NewKeeper( appCodec, keys[evidencetypes.StoreKey], &app.StakingKeeper, app.SlashingKeeper, @@ -593,6 +607,19 @@ func New( app.SetBeginBlocker(app.BeginBlocker) app.SetEndBlocker(app.EndBlocker) + upgradeInfo, err := app.UpgradeKeeper.ReadUpgradeInfoFromDisk() + if err != nil { + panic(fmt.Sprintf("failed to read upgrade info from disk %s", err)) + } + + if upgradeInfo.Name == "fetchd-v0.10.5" && !app.UpgradeKeeper.IsSkipHeight(upgradeInfo.Height) { + storeUpgrades := storetypes.StoreUpgrades{ + Added: []string{icahosttypes.StoreKey}, + } + // configure store loader that checks if version == upgradeHeight and applies store upgrades + app.SetStoreLoader(upgradetypes.UpgradeStoreLoader(upgradeInfo.Height, &storeUpgrades)) + } + if loadLatest { if err := app.LoadLatestVersion(); err != nil { tmos.Exit(err.Error()) @@ -614,6 +641,7 @@ func New( app.ScopedIBCKeeper = scopedIBCKeeper app.ScopedICAHostKeeper = scopedICAHostKeeper app.ScopedTransferKeeper = scopedTransferKeeper + app.ScopedICAHostKeeper = scopedICAHostKeeper app.ScopedWasmKeeper = scopedWasmKeeper return app From 5e3494fb25ac208866258ae9d9dd7cadf5f9aad2 Mon Sep 17 00:00:00 2001 From: Flavien Binet Date: Thu, 21 Jul 2022 10:54:06 +0200 Subject: [PATCH 3/3] chore: cleanup --- app/app.go | 28 ---------------------------- 1 file changed, 28 deletions(-) diff --git a/app/app.go b/app/app.go index 40657deca..57912a144 100644 --- a/app/app.go +++ b/app/app.go @@ -302,7 +302,6 @@ func New( scopedIBCKeeper := app.CapabilityKeeper.ScopeToModule(ibchost.ModuleName) scopedICAHostKeeper := app.CapabilityKeeper.ScopeToModule(icahosttypes.SubModuleName) scopedTransferKeeper := app.CapabilityKeeper.ScopeToModule(ibctransfertypes.ModuleName) - scopedICAHostKeeper := app.CapabilityKeeper.ScopeToModule(icahosttypes.SubModuleName) scopedWasmKeeper := app.CapabilityKeeper.ScopeToModule(wasm.ModuleName) // Applications that wish to enforce statically created ScopedKeepers should call `Seal` after creating @@ -403,19 +402,6 @@ func New( icaHostIBCModule := icahost.NewIBCModule(*app.ICAHostKeeper) - icaHostKeeper := icahostkeeper.NewKeeper( - appCodec, app.keys[icahosttypes.StoreKey], - app.GetSubspace(icahosttypes.SubModuleName), - app.IBCKeeper.ChannelKeeper, - &app.IBCKeeper.PortKeeper, - app.AccountKeeper, - scopedICAHostKeeper, - bApp.MsgServiceRouter(), - ) - app.ICAHostKeeper = &icaHostKeeper - - icaHostIBCModule := icahost.NewIBCModule(*app.ICAHostKeeper) - // Create evidence Keeper for to register the IBC light client misbehaviour evidence route evidenceKeeper := evidencekeeper.NewKeeper( appCodec, keys[evidencetypes.StoreKey], &app.StakingKeeper, app.SlashingKeeper, @@ -607,19 +593,6 @@ func New( app.SetBeginBlocker(app.BeginBlocker) app.SetEndBlocker(app.EndBlocker) - upgradeInfo, err := app.UpgradeKeeper.ReadUpgradeInfoFromDisk() - if err != nil { - panic(fmt.Sprintf("failed to read upgrade info from disk %s", err)) - } - - if upgradeInfo.Name == "fetchd-v0.10.5" && !app.UpgradeKeeper.IsSkipHeight(upgradeInfo.Height) { - storeUpgrades := storetypes.StoreUpgrades{ - Added: []string{icahosttypes.StoreKey}, - } - // configure store loader that checks if version == upgradeHeight and applies store upgrades - app.SetStoreLoader(upgradetypes.UpgradeStoreLoader(upgradeInfo.Height, &storeUpgrades)) - } - if loadLatest { if err := app.LoadLatestVersion(); err != nil { tmos.Exit(err.Error()) @@ -641,7 +614,6 @@ func New( app.ScopedIBCKeeper = scopedIBCKeeper app.ScopedICAHostKeeper = scopedICAHostKeeper app.ScopedTransferKeeper = scopedTransferKeeper - app.ScopedICAHostKeeper = scopedICAHostKeeper app.ScopedWasmKeeper = scopedWasmKeeper return app