diff --git a/app/app.go b/app/app.go index ab08b22c38..5065e05801 100644 --- a/app/app.go +++ b/app/app.go @@ -595,7 +595,7 @@ func New( ibcTransferModule, gravity.NewAppModule(app.GravityKeeper, app.BankKeeper), - leverage.NewAppModule(appCodec, app.LeverageKeeper, app.AccountKeeper, app.BankKeeper, app.GovKeeper), + leverage.NewAppModule(appCodec, app.LeverageKeeper, app.AccountKeeper, app.BankKeeper), oracle.NewAppModule(appCodec, app.OracleKeeper, app.AccountKeeper, app.BankKeeper, Experimental), bech32ibc.NewAppModule(appCodec, app.bech32IbcKeeper), } diff --git a/app/upgrades.go b/app/upgrades.go index 21559fe448..d3e1958a24 100644 --- a/app/upgrades.go +++ b/app/upgrades.go @@ -12,6 +12,7 @@ import ( bech32ibctypes "github.com/osmosis-labs/bech32-ibc/x/bech32ibc/types" "github.com/umee-network/umee/v3/app/upgradev3" + "github.com/umee-network/umee/v3/app/upgradev3_3" leveragetypes "github.com/umee-network/umee/v3/x/leverage/types" oracletypes "github.com/umee-network/umee/v3/x/oracle/types" ) @@ -36,10 +37,17 @@ func (app *UmeeApp) registerV3_1to3_3_Upgrade(_ upgradetypes.Plan) { planName, func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { ctx.Logger().Info("Upgrade handler execution", "name", planName) - err := bankkeeper.NewMigrator(app.BankKeeper).Migrate3_V046_4_To_V046_5(ctx) + ctx.Logger().Info("Run v3.3 migrator") + err := upgradev3_3.Migrator(app.GovKeeper, app.interfaceRegistry)(ctx) if err != nil { return fromVM, err } + ctx.Logger().Info("Run x/bank v0.46.5 migration") + err = bankkeeper.NewMigrator(app.BankKeeper).Migrate3_V046_4_To_V046_5(ctx) + if err != nil { + return fromVM, err + } + ctx.Logger().Info("Run module migrations") return app.mm.RunMigrations(ctx, app.configurator, fromVM) }) } @@ -51,6 +59,12 @@ func (app *UmeeApp) registerV3_2to3_3_Upgrade(_ upgradetypes.Plan) { planName, func(ctx sdk.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { ctx.Logger().Info("Upgrade handler execution", "name", planName) + ctx.Logger().Info("Run v3.3 migrator") + err := upgradev3_3.Migrator(app.GovKeeper, app.interfaceRegistry)(ctx) + if err != nil { + return fromVM, err + } + ctx.Logger().Info("Run module migrations") return app.mm.RunMigrations(ctx, app.configurator, fromVM) }) } diff --git a/x/leverage/migrations/mv2/gov_legacy.pb.go b/app/upgradev3_3/gov_legacy.pb.go similarity index 99% rename from x/leverage/migrations/mv2/gov_legacy.pb.go rename to app/upgradev3_3/gov_legacy.pb.go index 5033a9def3..a627d73ac0 100644 --- a/x/leverage/migrations/mv2/gov_legacy.pb.go +++ b/app/upgradev3_3/gov_legacy.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-gogo. DO NOT EDIT. // source: umee/leverage/v1/gov.proto -package mv2 +package upgradev3_3 import ( fmt "fmt" diff --git a/x/leverage/migrations/mv2/migrate.go b/app/upgradev3_3/migrate.go similarity index 91% rename from x/leverage/migrations/mv2/migrate.go rename to app/upgradev3_3/migrate.go index fae2b9eac5..1a03f3149a 100644 --- a/x/leverage/migrations/mv2/migrate.go +++ b/app/upgradev3_3/migrate.go @@ -1,4 +1,4 @@ -package mv2 +package upgradev3_3 import ( "fmt" @@ -17,7 +17,7 @@ import ( // Implements Proposal Interface var _ gov.Content = &UpdateRegistryProposal{} -func RegisterInterfaces(registry cdctypes.InterfaceRegistry) { +func registerInterfaces(registry cdctypes.InterfaceRegistry) { registry.RegisterImplementations( (*gov.Content)(nil), &UpdateRegistryProposal{}, @@ -28,7 +28,8 @@ type migrator struct { gov govkeeper.Keeper } -func Migrator1to2(gk govkeeper.Keeper) module.MigrationHandler { +func Migrator(gk govkeeper.Keeper, registry cdctypes.InterfaceRegistry) module.MigrationHandler { + registerInterfaces(registry) m := migrator{gk} return m.migrate } diff --git a/x/leverage/migrations/mv2/proposal_legacy.go b/app/upgradev3_3/proposal_legacy.go similarity index 98% rename from x/leverage/migrations/mv2/proposal_legacy.go rename to app/upgradev3_3/proposal_legacy.go index ede1f38501..0892311e2c 100644 --- a/x/leverage/migrations/mv2/proposal_legacy.go +++ b/app/upgradev3_3/proposal_legacy.go @@ -1,4 +1,4 @@ -package mv2 +package upgradev3_3 import ( "encoding/json" diff --git a/x/leverage/module.go b/x/leverage/module.go index 64d0820f2c..15e6a48950 100644 --- a/x/leverage/module.go +++ b/x/leverage/module.go @@ -17,11 +17,8 @@ import ( "github.com/spf13/cobra" abci "github.com/tendermint/tendermint/abci/types" - govkeeper "github.com/cosmos/cosmos-sdk/x/gov/keeper" - "github.com/umee-network/umee/v3/x/leverage/client/cli" "github.com/umee-network/umee/v3/x/leverage/keeper" - "github.com/umee-network/umee/v3/x/leverage/migrations/mv2" "github.com/umee-network/umee/v3/x/leverage/simulation" "github.com/umee-network/umee/v3/x/leverage/types" ) @@ -58,7 +55,6 @@ func (AppModuleBasic) RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) { // RegisterInterfaces registers the module's interface types. func (a AppModuleBasic) RegisterInterfaces(reg cdctypes.InterfaceRegistry) { types.RegisterInterfaces(reg) - mv2.RegisterInterfaces(reg) } // DefaultGenesis returns the x/leverage module's default genesis state. @@ -109,16 +105,14 @@ type AppModule struct { keeper keeper.Keeper accountKeeper types.AccountKeeper bankKeeper bankkeeper.Keeper - govKeeper govkeeper.Keeper } -func NewAppModule(cdc codec.Codec, keeper keeper.Keeper, ak types.AccountKeeper, bk bankkeeper.Keeper, gk govkeeper.Keeper) AppModule { +func NewAppModule(cdc codec.Codec, keeper keeper.Keeper, ak types.AccountKeeper, bk bankkeeper.Keeper) AppModule { return AppModule{ AppModuleBasic: NewAppModuleBasic(cdc), keeper: keeper, accountKeeper: ak, bankKeeper: bk, - govKeeper: gk, } } @@ -150,11 +144,6 @@ func (am AppModule) LegacyQuerierHandler(legacyQuerierCdc *codec.LegacyAmino) sd func (am AppModule) RegisterServices(cfg module.Configurator) { types.RegisterMsgServer(cfg.MsgServer(), keeper.NewMsgServerImpl(am.keeper)) types.RegisterQueryServer(cfg.QueryServer(), keeper.NewQuerier(am.keeper)) - - err := cfg.RegisterMigration(types.ModuleName, 1, mv2.Migrator1to2(am.govKeeper)) - if err != nil { - panic(err) - } } // RegisterInvariants registers the x/leverage module's invariants.