diff --git a/simapp/upgrades.go b/simapp/upgrades.go index d8b1852c72..6262ee35ee 100644 --- a/simapp/upgrades.go +++ b/simapp/upgrades.go @@ -4,7 +4,7 @@ import ( "context" "cosmossdk.io/core/appmodule" - storetypes "cosmossdk.io/store/types" + corestore "cosmossdk.io/core/store" "cosmossdk.io/x/accounts" authkeeper "cosmossdk.io/x/auth/keeper" epochstypes "cosmossdk.io/x/epochs/types" @@ -42,7 +42,7 @@ func (app SimApp) RegisterUpgradeHandlers() { } if upgradeInfo.Name == UpgradeName && !app.UpgradeKeeper.IsSkipHeight(upgradeInfo.Height) { - storeUpgrades := storetypes.StoreUpgrades{ + storeUpgrades := corestore.StoreUpgrades{ Added: []string{ accounts.StoreKey, protocolpooltypes.StoreKey, diff --git a/x/upgrade/CHANGELOG.md b/x/upgrade/CHANGELOG.md index f4c9c210eb..3b72a8e4c6 100644 --- a/x/upgrade/CHANGELOG.md +++ b/x/upgrade/CHANGELOG.md @@ -32,6 +32,7 @@ Ref: https://keepachangelog.com/en/1.0.0/ ### API Breaking Changes * [#19443](https://github.com/cosmos/cosmos-sdk/pull/19443) `NewKeeper` takes an `appmodule.Environment` instead of individual services. +* [#21259](https://github.com/cosmos/cosmos-sdk/pull/21259) Upgrade has been migrated to cosrestore.StoreUpgrades. Renaming keys support has been removed from the upgrade module. ### State Machine Breaking diff --git a/x/upgrade/types/storeloader.go b/x/upgrade/types/storeloader.go index c3fe122f2b..881c8df29e 100644 --- a/x/upgrade/types/storeloader.go +++ b/x/upgrade/types/storeloader.go @@ -1,6 +1,7 @@ package types import ( + corestore "cosmossdk.io/core/store" storetypes "cosmossdk.io/store/types" "github.com/cosmos/cosmos-sdk/baseapp" @@ -8,12 +9,16 @@ import ( // UpgradeStoreLoader is used to prepare baseapp with a fixed StoreLoader // pattern. This is useful for custom upgrade loading logic. -func UpgradeStoreLoader(upgradeHeight int64, storeUpgrades *storetypes.StoreUpgrades) baseapp.StoreLoader { +func UpgradeStoreLoader(upgradeHeight int64, storeUpgrades *corestore.StoreUpgrades) baseapp.StoreLoader { return func(ms storetypes.CommitMultiStore) error { if upgradeHeight == ms.LastCommitID().Version+1 { // Check if the current commit version and upgrade height matches - if len(storeUpgrades.Renamed) > 0 || len(storeUpgrades.Deleted) > 0 || len(storeUpgrades.Added) > 0 { - return ms.LoadLatestVersionAndUpgrade(storeUpgrades) + if len(storeUpgrades.Deleted) > 0 || len(storeUpgrades.Added) > 0 { + stup := &storetypes.StoreUpgrades{ + Added: storeUpgrades.Added, + Deleted: storeUpgrades.Deleted, + } + return ms.LoadLatestVersionAndUpgrade(stup) } } diff --git a/x/upgrade/types/storeloader_test.go b/x/upgrade/types/storeloader_test.go index 0d784b17ad..86fa017484 100644 --- a/x/upgrade/types/storeloader_test.go +++ b/x/upgrade/types/storeloader_test.go @@ -20,12 +20,6 @@ import ( "github.com/cosmos/cosmos-sdk/baseapp" ) -func useUpgradeLoader(height int64, upgrades *storetypes.StoreUpgrades) func(*baseapp.BaseApp) { - return func(app *baseapp.BaseApp) { - app.SetStoreLoader(UpgradeStoreLoader(height, upgrades)) - } -} - func initStore(t *testing.T, db dbm.DB, storeKey string, k, v []byte) { t.Helper() rs := rootmulti.NewStore(db, coretesting.NewNopLogger(), metrics.NewNoOpMetrics()) @@ -93,16 +87,6 @@ func TestSetLoader(t *testing.T) { origStoreKey: "foo", loadStoreKey: "foo", }, - "rename with inline opts": { - setLoader: useUpgradeLoader(upgradeHeight, &storetypes.StoreUpgrades{ - Renamed: []storetypes.StoreRename{{ - OldKey: "foo", - NewKey: "bar", - }}, - }), - origStoreKey: "foo", - loadStoreKey: "bar", - }, } k := []byte("key")