Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor(app.go): remove capability module #914

Merged
merged 6 commits into from
Aug 9, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
98 changes: 41 additions & 57 deletions app/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,6 @@ import (
"github.com/cosmos/cosmos-sdk/x/bank"
bankkeeper "github.com/cosmos/cosmos-sdk/x/bank/keeper"
banktypes "github.com/cosmos/cosmos-sdk/x/bank/types"
"github.com/cosmos/cosmos-sdk/x/capability"
capabilitykeeper "github.com/cosmos/cosmos-sdk/x/capability/keeper"
capabilitytypes "github.com/cosmos/cosmos-sdk/x/capability/types"
"github.com/cosmos/cosmos-sdk/x/crisis"
crisiskeeper "github.com/cosmos/cosmos-sdk/x/crisis/keeper"
crisistypes "github.com/cosmos/cosmos-sdk/x/crisis/types"
Expand Down Expand Up @@ -167,7 +164,6 @@ var (
auth.AppModuleBasic{},
genutil.AppModuleBasic{},
bank.AppModuleBasic{},
capability.AppModuleBasic{},
staking.AppModuleBasic{},
distr.AppModuleBasic{},
gov.NewAppModuleBasic(getGovProposalHandlers()),
Expand Down Expand Up @@ -222,30 +218,27 @@ type App struct {
memKeys map[string]*storetypes.MemoryStoreKey

// keepers
AccountKeeper authkeeper.AccountKeeper
BankKeeper bankkeeper.Keeper
CapabilityKeeper *capabilitykeeper.Keeper
StakingKeeper stakingkeeper.Keeper
SlashingKeeper slashingkeeper.Keeper
DistrKeeper distrkeeper.Keeper
GovKeeper govkeeper.Keeper
CrisisKeeper crisiskeeper.Keeper
UpgradeKeeper upgradekeeper.Keeper
ParamsKeeper paramskeeper.Keeper
EvidenceKeeper evidencekeeper.Keeper
ScopedIBCKeeper capabilitykeeper.ScopedKeeper
ScopedTransferKeeper capabilitykeeper.ScopedKeeper
ZetaCoreKeeper zetaCoreModuleKeeper.Keeper
ZetaObserverKeeper *zetaObserverModuleKeeper.Keeper
mm *module.Manager
sm *module.SimulationManager
configurator module.Configurator
EvmKeeper *evmkeeper.Keeper
FeeMarketKeeper feemarketkeeper.Keeper
FungibleKeeper fungibleModuleKeeper.Keeper
EmissionsKeeper emissionsModuleKeeper.Keeper
GroupKeeper groupkeeper.Keeper
AuthzKeeper authzkeeper.Keeper
AccountKeeper authkeeper.AccountKeeper
BankKeeper bankkeeper.Keeper
StakingKeeper stakingkeeper.Keeper
SlashingKeeper slashingkeeper.Keeper
DistrKeeper distrkeeper.Keeper
GovKeeper govkeeper.Keeper
CrisisKeeper crisiskeeper.Keeper
UpgradeKeeper upgradekeeper.Keeper
ParamsKeeper paramskeeper.Keeper
EvidenceKeeper evidencekeeper.Keeper
ZetaCoreKeeper zetaCoreModuleKeeper.Keeper
ZetaObserverKeeper *zetaObserverModuleKeeper.Keeper
mm *module.Manager
sm *module.SimulationManager
configurator module.Configurator
EvmKeeper *evmkeeper.Keeper
FeeMarketKeeper feemarketkeeper.Keeper
FungibleKeeper fungibleModuleKeeper.Keeper
EmissionsKeeper emissionsModuleKeeper.Keeper
GroupKeeper groupkeeper.Keeper
AuthzKeeper authzkeeper.Keeper
}

// New returns a reference to an initialized ZetaApp.
Expand Down Expand Up @@ -277,7 +270,6 @@ func New(
group.StoreKey,
upgradetypes.StoreKey,
evidencetypes.StoreKey,
capabilitytypes.StoreKey,
zetaCoreModuleTypes.StoreKey,
zetaObserverModuleTypes.StoreKey,
evmtypes.StoreKey, feemarkettypes.StoreKey,
Expand All @@ -286,7 +278,7 @@ func New(
authzkeeper.StoreKey,
)
tkeys := sdk.NewTransientStoreKeys(paramstypes.TStoreKey, evmtypes.TransientKey, feemarkettypes.TransientKey)
memKeys := sdk.NewMemoryStoreKeys(capabilitytypes.MemStoreKey)
memKeys := sdk.NewMemoryStoreKeys()

app := &App{
BaseApp: bApp,
Expand All @@ -306,11 +298,6 @@ func New(
// set the BaseApp's parameter store
bApp.SetParamStore(app.ParamsKeeper.Subspace(baseapp.Paramspace).WithKeyTable(paramstypes.ConsensusParamsKeyTable()))

// add capability keeper and ScopeToModule for ibc module
app.CapabilityKeeper = capabilitykeeper.NewKeeper(appCodec, keys[capabilitytypes.StoreKey], memKeys[capabilitytypes.MemStoreKey])

app.CapabilityKeeper.Seal()

// add keepers
// use custom Ethermint account for contracts
app.AccountKeeper = authkeeper.NewAccountKeeper(
Expand Down Expand Up @@ -460,7 +447,6 @@ func New(
auth.NewAppModule(appCodec, app.AccountKeeper, nil),
vesting.NewAppModule(app.AccountKeeper, app.BankKeeper),
bank.NewAppModule(appCodec, app.BankKeeper, app.AccountKeeper),
capability.NewAppModule(appCodec, *app.CapabilityKeeper),
crisis.NewAppModule(&app.CrisisKeeper, skipGenesisInvariants),
gov.NewAppModule(appCodec, app.GovKeeper, app.AccountKeeper, app.BankKeeper),
slashing.NewAppModule(appCodec, app.SlashingKeeper, app.AccountKeeper, app.BankKeeper, app.StakingKeeper),
Expand All @@ -486,7 +472,6 @@ func New(

app.mm.SetOrderBeginBlockers(
upgradetypes.ModuleName,
capabilitytypes.ModuleName,
evmtypes.ModuleName,
distrtypes.ModuleName,
slashingtypes.ModuleName,
Expand All @@ -508,16 +493,26 @@ func New(
authz.ModuleName,
)
app.mm.SetOrderEndBlockers(
banktypes.ModuleName, authtypes.ModuleName,
upgradetypes.ModuleName, capabilitytypes.ModuleName, distrtypes.ModuleName,
slashingtypes.ModuleName, evidencetypes.ModuleName,
banktypes.ModuleName,
authtypes.ModuleName,
upgradetypes.ModuleName,
distrtypes.ModuleName,
slashingtypes.ModuleName,
evidencetypes.ModuleName,
stakingtypes.ModuleName,
vestingtypes.ModuleName, govtypes.ModuleName,
paramstypes.ModuleName, genutiltypes.ModuleName, group.ModuleName,
vestingtypes.ModuleName,
govtypes.ModuleName,
paramstypes.ModuleName,
genutiltypes.ModuleName,
group.ModuleName,
crisistypes.ModuleName,
evmtypes.ModuleName, feemarkettypes.ModuleName,
zetaCoreModuleTypes.ModuleName, zetaObserverModuleTypes.ModuleName,
fungibleModuleTypes.ModuleName, emissionsModuleTypes.ModuleName, authz.ModuleName,
evmtypes.ModuleName,
feemarkettypes.ModuleName,
zetaCoreModuleTypes.ModuleName,
zetaObserverModuleTypes.ModuleName,
fungibleModuleTypes.ModuleName,
emissionsModuleTypes.ModuleName,
authz.ModuleName,
)

// NOTE: The genutils module must occur after staking so that pools are
Expand All @@ -526,7 +521,6 @@ func New(
// so that other modules that want to create or claim capabilities afterwards in InitChain
// can do so safely.
app.mm.SetOrderInitGenesis(
capabilitytypes.ModuleName,
authtypes.ModuleName,
banktypes.ModuleName,
distrtypes.ModuleName,
Expand Down Expand Up @@ -586,16 +580,6 @@ func New(
if err := app.LoadLatestVersion(); err != nil {
tmos.Exit(err.Error())
}

// Initialize and seal the capability keeper so all persistent capabilities
// are loaded in-memory and prevent any further modules from creating scoped
// sub-keepers.
// This must be done during creation of baseapp rather than in InitChain so
// that in-memory capabilities get regenerated on app restart.
// Note that since this reads from the store, we can only perform it when
// `loadLatest` is set to true.
//ctx := app.BaseApp.NewUncachedContext(true, tmproto.Header{})
//app.CapabilityKeeper.InitializeAndSeal(ctx)
}

return app
Expand Down Expand Up @@ -764,7 +748,7 @@ func initParamsKeeper(appCodec codec.BinaryCodec, legacyAmino *codec.LegacyAmino
return paramsKeeper
}

// VerifyAddressFormat verifis the address is compatible with ethereum
// VerifyAddressFormat verifies the address is compatible with ethereum
func VerifyAddressFormat(bz []byte) error {
if len(bz) == 0 {
return sdkerrors.Wrap(sdkerrors.ErrUnknownAddress, "invalid address; cannot be empty")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -149,10 +149,6 @@
],
"denom_metadata": []
},
"capability": {
"index": "1",
"owners": []
},
"crisis": {
"constant_fee": {
"denom": "azeta",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -149,10 +149,6 @@
],
"denom_metadata": []
},
"capability": {
"index": "1",
"owners": []
},
"crisis": {
"constant_fee": {
"denom": "azeta",
Expand Down
Loading