From a3d51b9449289c80179fd52c837de2ee386ea9c7 Mon Sep 17 00:00:00 2001 From: "jaeseung.bae" <119839167+jaeseung-bae@users.noreply.github.com> Date: Thu, 5 Jan 2023 20:47:04 +0900 Subject: [PATCH] refactor: Remove useless stub BeginBlock/EndBlock methods (#853) * refactor: Remove useless stub BeginBlock/EndBlock methods * refactor: add statement which is only effective when compiling to check implementation meets some interfaces * chore: update changelog --- CHANGELOG.md | 4 ++++ x/authz/module/module.go | 2 -- x/bankplus/module.go | 5 +++++ x/capability/abci.go | 21 ------------------- x/capability/module.go | 1 + x/collection/module/module.go | 8 ------- x/crisis/module.go | 5 +++-- x/distribution/module.go | 3 +-- x/evidence/module.go | 1 + x/feegrant/module/module.go | 6 ------ x/foundation/module/module.go | 9 +++++--- x/gov/module.go | 1 + .../27-interchain-accounts/module.go | 9 -------- x/ibc/applications/transfer/module.go | 9 -------- x/ibc/core/module.go | 6 ------ x/ibc/testing/mock/mock.go | 9 -------- x/mint/module.go | 3 +-- x/slashing/module.go | 3 +-- x/staking/module.go | 4 ++-- x/stakingplus/module/module.go | 9 +++++--- x/token/module/module.go | 8 ------- x/upgrade/module.go | 5 +++-- x/wasm/module.go | 14 +++---------- 23 files changed, 38 insertions(+), 107 deletions(-) delete mode 100644 x/capability/abci.go diff --git a/CHANGELOG.md b/CHANGELOG.md index c474f3a02f..0cef141559 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -50,6 +50,10 @@ Ref: https://keepachangelog.com/en/1.0.0/ * (x/foundation) [#834](https://github.com/line/lbm-sdk/pull/834) Apply foundation audit +### Removed +* [\#853](https://github.com/line/lbm-sdk/pull/853) remove useless stub BeginBlock, EndBlock methods from modules below + * ibc, authz, collection, feegrant, ibc, token, wasm + ### Breaking Changes * (rest) [\#807](https://github.com/line/lbm-sdk/pull/807) remove legacy REST API diff --git a/x/authz/module/module.go b/x/authz/module/module.go index 5705b2a867..7f71c9e737 100644 --- a/x/authz/module/module.go +++ b/x/authz/module/module.go @@ -153,8 +153,6 @@ func (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.Raw // ConsensusVersion implements AppModule/ConsensusVersion. func (AppModule) ConsensusVersion() uint64 { return 1 } -func (am AppModule) BeginBlock(ctx sdk.Context, req abci.RequestBeginBlock) {} - // ____________________________________________________________________________ // AppModuleSimulation functions diff --git a/x/bankplus/module.go b/x/bankplus/module.go index 28a6aa82f9..d101f95518 100644 --- a/x/bankplus/module.go +++ b/x/bankplus/module.go @@ -12,6 +12,11 @@ import ( "github.com/line/lbm-sdk/x/bankplus/keeper" ) +var ( + _ module.AppModule = AppModule{} + _ module.AppModuleSimulation = AppModule{} +) + type AppModule struct { bank.AppModule diff --git a/x/capability/abci.go b/x/capability/abci.go deleted file mode 100644 index 5c90683a2f..0000000000 --- a/x/capability/abci.go +++ /dev/null @@ -1,21 +0,0 @@ -package capability - -import ( - "time" - - "github.com/line/lbm-sdk/telemetry" - sdk "github.com/line/lbm-sdk/types" - "github.com/line/lbm-sdk/x/capability/keeper" - "github.com/line/lbm-sdk/x/capability/types" -) - -// BeginBlocker will call InitMemStore to initialize the memory stores in the case -// that this is the first time the node is executing a block since restarting (wiping memory). -// In this case, the BeginBlocker method will reinitialize the memory stores locally, so that subsequent -// capability transactions will pass. -// Otherwise BeginBlocker performs a no-op. -func BeginBlocker(ctx sdk.Context, k keeper.Keeper) { - defer telemetry.ModuleMeasureSince(types.ModuleName, time.Now(), telemetry.MetricKeyBeginBlocker) - - k.InitMemStore(ctx) -} diff --git a/x/capability/module.go b/x/capability/module.go index 00333bf6aa..21acad6a10 100644 --- a/x/capability/module.go +++ b/x/capability/module.go @@ -27,6 +27,7 @@ var ( _ module.AppModule = AppModule{} _ module.AppModuleBasic = AppModuleBasic{} _ module.AppModuleSimulation = AppModule{} + _ module.BeginBlockAppModule = AppModule{} ) // ---------------------------------------------------------------------------- diff --git a/x/collection/module/module.go b/x/collection/module/module.go index 2efceb936a..f042be065d 100644 --- a/x/collection/module/module.go +++ b/x/collection/module/module.go @@ -136,11 +136,3 @@ func (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.Raw // ConsensusVersion implements AppModule/ConsensusVersion. func (AppModule) ConsensusVersion() uint64 { return 1 } - -// BeginBlock performs a no-op. -func (am AppModule) BeginBlock(_ sdk.Context, _ abci.RequestBeginBlock) {} - -// EndBlock performs a no-op. -func (am AppModule) EndBlock(ctx sdk.Context, _ abci.RequestEndBlock) []abci.ValidatorUpdate { - return []abci.ValidatorUpdate{} -} diff --git a/x/crisis/module.go b/x/crisis/module.go index 37941629f4..5955dcea4b 100644 --- a/x/crisis/module.go +++ b/x/crisis/module.go @@ -21,8 +21,9 @@ import ( ) var ( - _ module.AppModule = AppModule{} - _ module.AppModuleBasic = AppModuleBasic{} + _ module.AppModule = AppModule{} + _ module.AppModuleBasic = AppModuleBasic{} + _ module.EndBlockAppModule = AppModule{} ) // Module init related flags diff --git a/x/distribution/module.go b/x/distribution/module.go index 1958574a68..de908d1aaf 100644 --- a/x/distribution/module.go +++ b/x/distribution/module.go @@ -27,6 +27,7 @@ var ( _ module.AppModule = AppModule{} _ module.AppModuleBasic = AppModuleBasic{} _ module.AppModuleSimulation = AppModule{} + _ module.BeginBlockAppModule = AppModule{} ) // AppModuleBasic defines the basic application module used by the distribution module. @@ -166,8 +167,6 @@ func (am AppModule) BeginBlock(ctx sdk.Context, req abci.RequestBeginBlock) { BeginBlocker(ctx, req, am.keeper) } -// AppModuleSimulation functions - // GenerateGenesisState creates a randomized GenState of the distribution module. func (AppModule) GenerateGenesisState(simState *module.SimulationState) { simulation.RandomizedGenState(simState) diff --git a/x/evidence/module.go b/x/evidence/module.go index 2aef581b3b..67feef6674 100644 --- a/x/evidence/module.go +++ b/x/evidence/module.go @@ -29,6 +29,7 @@ var ( _ module.AppModule = AppModule{} _ module.AppModuleBasic = AppModuleBasic{} _ module.AppModuleSimulation = AppModule{} + _ module.BeginBlockAppModule = AppModule{} ) // ---------------------------------------------------------------------------- diff --git a/x/feegrant/module/module.go b/x/feegrant/module/module.go index caa2d7ec30..9d63aa57f3 100644 --- a/x/feegrant/module/module.go +++ b/x/feegrant/module/module.go @@ -171,12 +171,6 @@ func (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.Raw // ConsensusVersion implements AppModule/ConsensusVersion. func (AppModule) ConsensusVersion() uint64 { return 1 } -// EndBlock returns the end blocker for the feegrant module. It returns no validator -// updates. -func (AppModule) EndBlock(_ sdk.Context, _ abci.RequestEndBlock) []abci.ValidatorUpdate { - return []abci.ValidatorUpdate{} -} - // AppModuleSimulation functions // GenerateGenesisState creates a randomized GenState of the feegrant module. diff --git a/x/foundation/module/module.go b/x/foundation/module/module.go index f2d736ce5d..380fab6be7 100644 --- a/x/foundation/module/module.go +++ b/x/foundation/module/module.go @@ -19,7 +19,12 @@ import ( "github.com/line/lbm-sdk/x/foundation/keeper" ) -var _ module.AppModuleBasic = AppModuleBasic{} +var ( + _ module.AppModule = AppModule{} + _ module.AppModuleBasic = AppModuleBasic{} + _ module.BeginBlockAppModule = AppModule{} + _ module.EndBlockAppModule = AppModule{} +) // AppModuleBasic defines the basic application module used by the foundation module. type AppModuleBasic struct{} @@ -71,8 +76,6 @@ func (b AppModuleBasic) RegisterInterfaces(registry codectypes.InterfaceRegistry //____________________________________________________________________________ -var _ module.AppModule = AppModule{} - // AppModule implements an application module for the foundation module. type AppModule struct { AppModuleBasic diff --git a/x/gov/module.go b/x/gov/module.go index 2340f23d18..6121f7dc16 100644 --- a/x/gov/module.go +++ b/x/gov/module.go @@ -30,6 +30,7 @@ var ( _ module.AppModule = AppModule{} _ module.AppModuleBasic = AppModuleBasic{} _ module.AppModuleSimulation = AppModule{} + _ module.EndBlockAppModule = AppModule{} ) // AppModuleBasic defines the basic application module used by the gov module. diff --git a/x/ibc/applications/27-interchain-accounts/module.go b/x/ibc/applications/27-interchain-accounts/module.go index d15e81c574..9ef1814af2 100644 --- a/x/ibc/applications/27-interchain-accounts/module.go +++ b/x/ibc/applications/27-interchain-accounts/module.go @@ -188,12 +188,3 @@ func (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.Raw // ConsensusVersion implements AppModule/ConsensusVersion. func (AppModule) ConsensusVersion() uint64 { return 1 } - -// BeginBlock implements the AppModule interface -func (am AppModule) BeginBlock(ctx sdk.Context, req abci.RequestBeginBlock) { -} - -// EndBlock implements the AppModule interface -func (am AppModule) EndBlock(ctx sdk.Context, req abci.RequestEndBlock) []abci.ValidatorUpdate { - return []abci.ValidatorUpdate{} -} diff --git a/x/ibc/applications/transfer/module.go b/x/ibc/applications/transfer/module.go index b0f40ada78..8d1dc30eee 100644 --- a/x/ibc/applications/transfer/module.go +++ b/x/ibc/applications/transfer/module.go @@ -139,15 +139,6 @@ func (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.Raw // ConsensusVersion implements AppModule/ConsensusVersion. func (AppModule) ConsensusVersion() uint64 { return 1 } -// BeginBlock implements the AppModule interface -func (am AppModule) BeginBlock(ctx sdk.Context, req abci.RequestBeginBlock) { -} - -// EndBlock implements the AppModule interface -func (am AppModule) EndBlock(ctx sdk.Context, req abci.RequestEndBlock) []abci.ValidatorUpdate { - return []abci.ValidatorUpdate{} -} - // AppModuleSimulation functions // GenerateGenesisState creates a randomized GenState of the transfer module. diff --git a/x/ibc/core/module.go b/x/ibc/core/module.go index a8e76cac80..4e6e8f3e7b 100644 --- a/x/ibc/core/module.go +++ b/x/ibc/core/module.go @@ -170,12 +170,6 @@ func (am AppModule) BeginBlock(ctx sdk.Context, req abci.RequestBeginBlock) { ibcclient.BeginBlocker(ctx, am.keeper.ClientKeeper) } -// EndBlock returns the end blocker for the ibc module. It returns no validator -// updates. -func (am AppModule) EndBlock(ctx sdk.Context, req abci.RequestEndBlock) []abci.ValidatorUpdate { - return []abci.ValidatorUpdate{} -} - // AppModuleSimulation functions // GenerateGenesisState creates a randomized GenState of the ibc module. diff --git a/x/ibc/testing/mock/mock.go b/x/ibc/testing/mock/mock.go index 444484b3cc..cef82fc9fb 100644 --- a/x/ibc/testing/mock/mock.go +++ b/x/ibc/testing/mock/mock.go @@ -138,12 +138,3 @@ func (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.Raw // ConsensusVersion implements AppModule/ConsensusVersion. func (AppModule) ConsensusVersion() uint64 { return 1 } - -// BeginBlock implements the AppModule interface -func (am AppModule) BeginBlock(ctx sdk.Context, req abci.RequestBeginBlock) { -} - -// EndBlock implements the AppModule interface -func (am AppModule) EndBlock(ctx sdk.Context, req abci.RequestEndBlock) []abci.ValidatorUpdate { - return []abci.ValidatorUpdate{} -} diff --git a/x/mint/module.go b/x/mint/module.go index 11539bb1d3..a8832b8f6a 100644 --- a/x/mint/module.go +++ b/x/mint/module.go @@ -26,6 +26,7 @@ var ( _ module.AppModule = AppModule{} _ module.AppModuleBasic = AppModuleBasic{} _ module.AppModuleSimulation = AppModule{} + _ module.BeginBlockAppModule = AppModule{} ) // AppModuleBasic defines the basic application module used by the mint module. @@ -33,8 +34,6 @@ type AppModuleBasic struct { cdc codec.Codec } -var _ module.AppModuleBasic = AppModuleBasic{} - // Name returns the mint module's name. func (AppModuleBasic) Name() string { return types.ModuleName diff --git a/x/slashing/module.go b/x/slashing/module.go index 5c96571b11..387d8bd71d 100644 --- a/x/slashing/module.go +++ b/x/slashing/module.go @@ -28,6 +28,7 @@ var ( _ module.AppModule = AppModule{} _ module.AppModuleBasic = AppModuleBasic{} _ module.AppModuleSimulation = AppModule{} + _ module.BeginBlockAppModule = AppModule{} ) // AppModuleBasic defines the basic application module used by the slashing module. @@ -35,8 +36,6 @@ type AppModuleBasic struct { cdc codec.Codec } -var _ module.AppModuleBasic = AppModuleBasic{} - // Name returns the slashing module's name. func (AppModuleBasic) Name() string { return types.ModuleName diff --git a/x/staking/module.go b/x/staking/module.go index 0d7a7ebf83..129eb091d9 100644 --- a/x/staking/module.go +++ b/x/staking/module.go @@ -27,6 +27,8 @@ var ( _ module.AppModule = AppModule{} _ module.AppModuleBasic = AppModuleBasic{} _ module.AppModuleSimulation = AppModule{} + _ module.BeginBlockAppModule = AppModule{} + _ module.EndBlockAppModule = AppModule{} ) // AppModuleBasic defines the basic application module used by the staking module. @@ -34,8 +36,6 @@ type AppModuleBasic struct { cdc codec.Codec } -var _ module.AppModuleBasic = AppModuleBasic{} - // Name returns the staking module's name. func (AppModuleBasic) Name() string { return types.ModuleName diff --git a/x/stakingplus/module/module.go b/x/stakingplus/module/module.go index ff1524c5b6..ce4ba0b280 100644 --- a/x/stakingplus/module/module.go +++ b/x/stakingplus/module/module.go @@ -19,7 +19,12 @@ import ( stakingtypes "github.com/line/lbm-sdk/x/staking/types" ) -var _ module.AppModuleBasic = AppModuleBasic{} +var ( + _ module.AppModule = AppModule{} + _ module.AppModuleBasic = AppModuleBasic{} + _ module.BeginBlockAppModule = AppModule{} + _ module.EndBlockAppModule = AppModule{} +) // AppModuleBasic defines the basic application module used by the stakingplus module. type AppModuleBasic struct { @@ -33,8 +38,6 @@ func (b AppModuleBasic) RegisterInterfaces(registry codectypes.InterfaceRegistry //____________________________________________________________________________ -var _ module.AppModule = AppModule{} - // AppModule implements an application module for the stakingplus module. type AppModule struct { AppModuleBasic diff --git a/x/token/module/module.go b/x/token/module/module.go index 354d9ede34..4fba9841c0 100644 --- a/x/token/module/module.go +++ b/x/token/module/module.go @@ -136,14 +136,6 @@ func (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.Raw // ConsensusVersion implements AppModule/ConsensusVersion. func (AppModule) ConsensusVersion() uint64 { return 1 } -// BeginBlock performs a no-op. -func (am AppModule) BeginBlock(_ sdk.Context, _ abci.RequestBeginBlock) {} - -// EndBlock performs a no-op. -func (am AppModule) EndBlock(ctx sdk.Context, _ abci.RequestEndBlock) []abci.ValidatorUpdate { - return []abci.ValidatorUpdate{} -} - //____________________________________________________________________________ // AppModuleSimulation functions diff --git a/x/upgrade/module.go b/x/upgrade/module.go index 6dd4f38b53..e4979d86fd 100644 --- a/x/upgrade/module.go +++ b/x/upgrade/module.go @@ -23,8 +23,9 @@ func init() { } var ( - _ module.AppModule = AppModule{} - _ module.AppModuleBasic = AppModuleBasic{} + _ module.AppModule = AppModule{} + _ module.AppModuleBasic = AppModuleBasic{} + _ module.BeginBlockAppModule = AppModule{} ) // AppModuleBasic implements the sdk.AppModuleBasic interface diff --git a/x/wasm/module.go b/x/wasm/module.go index 6e16fcff39..0eef231949 100644 --- a/x/wasm/module.go +++ b/x/wasm/module.go @@ -27,8 +27,9 @@ import ( ) var ( - _ module.AppModule = AppModule{} - _ module.AppModuleBasic = AppModuleBasic{} + _ module.AppModule = AppModule{} + _ module.AppModuleBasic = AppModuleBasic{} + _ module.AppModuleSimulation = AppModule{} ) // Module init related flags @@ -173,15 +174,6 @@ func (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.Raw return cdc.MustMarshalJSON(gs) } -// BeginBlock returns the begin blocker for the wasm module. -func (am AppModule) BeginBlock(_ sdk.Context, _ abci.RequestBeginBlock) {} - -// EndBlock returns the end blocker for the wasm module. It returns no validator -// updates. -func (AppModule) EndBlock(_ sdk.Context, _ abci.RequestEndBlock) []abci.ValidatorUpdate { - return []abci.ValidatorUpdate{} -} - // ____________________________________________________________________________ // AppModuleSimulation functions