diff --git a/app/upgrades.go b/app/upgrades.go index d2295c7599..ede7895c04 100644 --- a/app/upgrades.go +++ b/app/upgrades.go @@ -2,9 +2,11 @@ package app import ( v620 "github.com/desmos-labs/desmos/v6/app/upgrades/v620" + v630 "github.com/desmos-labs/desmos/v6/app/upgrades/v630" ) // registerUpgradeHandlers registers all the upgrade handlers that are supported by the app func (app *DesmosApp) registerUpgradeHandlers() { app.registerUpgrade(v620.NewUpgrade(app.ModuleManager, app.Configurator())) + app.registerUpgrade(v630.NewUpgrade(app.ModuleManager, app.Configurator())) } diff --git a/app/upgrades/v630/upgrade.go b/app/upgrades/v630/upgrade.go new file mode 100644 index 0000000000..7474c2abfb --- /dev/null +++ b/app/upgrades/v630/upgrade.go @@ -0,0 +1,46 @@ +package v630 + +import ( + storetypes "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" + + "github.com/desmos-labs/desmos/v6/app/upgrades" +) + +var ( + _ upgrades.Upgrade = &Upgrade{} +) + +// Upgrade represents the v6.3.0 upgrade +type Upgrade struct { + mm *module.Manager + configurator module.Configurator +} + +// NewUpgrade returns a new Upgrade instance +func NewUpgrade(mm *module.Manager, configurator module.Configurator) *Upgrade { + return &Upgrade{ + mm: mm, + configurator: configurator, + } +} + +// Name implements upgrades.Upgrade +func (u *Upgrade) Name() string { + return "v6.3.0" +} + +// Handler implements upgrades.Upgrade +func (u *Upgrade) Handler() upgradetypes.UpgradeHandler { + return func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { + // This upgrade does not require any migration, so we can simply return the current version map + return u.mm.RunMigrations(ctx, u.configurator, fromVM) + } +} + +// StoreUpgrades implements upgrades.Upgrade +func (u *Upgrade) StoreUpgrades() *storetypes.StoreUpgrades { + return &storetypes.StoreUpgrades{} +}