Skip to content

Commit c321811

Browse files
committed
extract creating encoding config from initia app
1 parent 2913dcb commit c321811

File tree

5 files changed

+61
-41
lines changed

5 files changed

+61
-41
lines changed

app/app.go

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ import (
3838
"github.com/cosmos/cosmos-sdk/server/api"
3939
"github.com/cosmos/cosmos-sdk/server/config"
4040
servertypes "github.com/cosmos/cosmos-sdk/server/types"
41-
"github.com/cosmos/cosmos-sdk/std"
4241
sdk "github.com/cosmos/cosmos-sdk/types"
4342
sdkerrors "github.com/cosmos/cosmos-sdk/types/errors"
4443
"github.com/cosmos/cosmos-sdk/types/module"
@@ -62,8 +61,6 @@ import (
6261
// this line is used by starport scaffolding # stargate/app/moduleImport
6362

6463
"github.com/initia-labs/initia/app/keepers"
65-
"github.com/initia-labs/initia/app/params"
66-
cryptocodec "github.com/initia-labs/initia/crypto/codec"
6764
initiatx "github.com/initia-labs/initia/tx"
6865
moveconfig "github.com/initia-labs/initia/x/move/config"
6966
movetypes "github.com/initia-labs/initia/x/move/types"
@@ -150,11 +147,7 @@ func NewInitiaApp(
150147
logger.Info("mempool max txs", "max_txs", mempoolMaxTxs)
151148
logger.Info("query gas limit", "gas_limit", queryGasLimit)
152149

153-
encodingConfig := params.MakeEncodingConfig()
154-
std.RegisterLegacyAminoCodec(encodingConfig.Amino)
155-
std.RegisterInterfaces(encodingConfig.InterfaceRegistry)
156-
cryptocodec.RegisterLegacyAminoCodec(encodingConfig.Amino)
157-
cryptocodec.RegisterInterfaces(encodingConfig.InterfaceRegistry)
150+
encodingConfig := MakeEncodingConfig()
158151

159152
appCodec := encodingConfig.Codec
160153
legacyAmino := encodingConfig.Amino
@@ -225,7 +218,7 @@ func NewInitiaApp(
225218
// non-dependant module elements, such as codec registration and genesis verification.
226219
// By default it is composed of all the module from the module manager.
227220
// Additionally, app module basics can be overwritten by passing them as argument.
228-
app.BasicModuleManager = newBasicManagerFromManager(app)
221+
app.BasicModuleManager = NewBasicManager()
229222

230223
// NOTE: upgrade module is required to be prioritized
231224
app.ModuleManager.SetOrderPreBlockers(

app/encoding.go

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88

99
"github.com/cosmos/cosmos-sdk/client/flags"
1010
runtimeservices "github.com/cosmos/cosmos-sdk/runtime/services"
11+
"github.com/cosmos/cosmos-sdk/std"
1112
sdk "github.com/cosmos/cosmos-sdk/types"
1213
"github.com/cosmos/cosmos-sdk/types/module"
1314
authcodec "github.com/cosmos/cosmos-sdk/x/auth/codec"
@@ -16,8 +17,24 @@ import (
1617
moveconfig "github.com/initia-labs/initia/x/move/config"
1718

1819
oracleconfig "github.com/skip-mev/connect/v2/oracle/config"
20+
21+
cryptocodec "github.com/initia-labs/initia/crypto/codec"
1922
)
2023

24+
func MakeEncodingConfig() params.EncodingConfig {
25+
encodingConfig := params.MakeEncodingConfig()
26+
27+
std.RegisterLegacyAminoCodec(encodingConfig.Amino)
28+
std.RegisterInterfaces(encodingConfig.InterfaceRegistry)
29+
cryptocodec.RegisterLegacyAminoCodec(encodingConfig.Amino)
30+
cryptocodec.RegisterInterfaces(encodingConfig.InterfaceRegistry)
31+
32+
basicManager := NewBasicManager()
33+
basicManager.RegisterInterfaces(encodingConfig.InterfaceRegistry)
34+
basicManager.RegisterLegacyAminoCodec(encodingConfig.Amino)
35+
return encodingConfig
36+
}
37+
2138
func newTempApp() *InitiaApp {
2239
return NewInitiaApp(
2340
log.NewNopLogger(),
@@ -30,18 +47,6 @@ func newTempApp() *InitiaApp {
3047
)
3148
}
3249

33-
func MakeEncodingConfig() params.EncodingConfig {
34-
tempApp := newTempApp()
35-
encodingConfig := params.EncodingConfig{
36-
InterfaceRegistry: tempApp.InterfaceRegistry(),
37-
Codec: tempApp.AppCodec(),
38-
TxConfig: tempApp.TxConfig(),
39-
Amino: tempApp.LegacyAmino(),
40-
}
41-
42-
return encodingConfig
43-
}
44-
4550
func AutoCliOpts() autocli.AppOptions {
4651
tempApp := newTempApp()
4752
modules := make(map[string]appmodule.AppModule, 0)
@@ -63,11 +68,6 @@ func AutoCliOpts() autocli.AppOptions {
6368
}
6469
}
6570

66-
func BasicManager() module.BasicManager {
67-
tempApp := newTempApp()
68-
return tempApp.BasicModuleManager
69-
}
70-
7171
// EmptyAppOptions is a stub implementing AppOptions
7272
type EmptyAppOptions struct{}
7373

app/genesis.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ type GenesisState map[string]json.RawMessage
4141

4242
// NewDefaultGenesisState generates the default state for the application.
4343
func NewDefaultGenesisState(cdc codec.Codec, bondDenom string) GenesisState {
44-
return GenesisState(BasicManager().DefaultGenesis(cdc)).
44+
return GenesisState(NewBasicManager().DefaultGenesis(cdc)).
4545
ConfigureBondDenom(cdc, bondDenom).
4646
ConfigureICA(cdc).
4747
AddMarketData(cdc, cdc.InterfaceRegistry().SigningContext().AddressCodec())

app/modules.go

Lines changed: 40 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -157,19 +157,46 @@ func appModules(
157157
}
158158
}
159159

160-
// ModuleBasics defines the module BasicManager that is in charge of setting up basic,
161-
// non-dependant module elements, such as codec registration
162-
// and genesis verification.
163-
func newBasicManagerFromManager(app *InitiaApp) module.BasicManager {
164-
basicManager := module.NewBasicManagerFromManager(
165-
app.ModuleManager,
166-
map[string]module.AppModuleBasic{
167-
genutiltypes.ModuleName: genutil.NewAppModuleBasic(genutil.DefaultMessageValidator),
168-
govtypes.ModuleName: gov.NewAppModuleBasic(app.appCodec),
169-
})
170-
basicManager.RegisterLegacyAminoCodec(app.legacyAmino)
171-
basicManager.RegisterInterfaces(app.interfaceRegistry)
172-
return basicManager
160+
func NewBasicManager() module.BasicManager {
161+
return module.NewBasicManager(
162+
genutil.AppModuleBasic{},
163+
auth.AppModuleBasic{},
164+
bank.AppModuleBasic{},
165+
capability.AppModuleBasic{},
166+
crisis.AppModuleBasic{},
167+
feegrantmodule.AppModuleBasic{},
168+
gov.AppModuleBasic{},
169+
reward.AppModuleBasic{},
170+
slashing.AppModuleBasic{},
171+
distr.AppModuleBasic{},
172+
staking.AppModuleBasic{},
173+
upgrade.AppModuleBasic{},
174+
evidence.AppModuleBasic{},
175+
authzmodule.AppModuleBasic{},
176+
groupmodule.AppModuleBasic{},
177+
consensus.AppModuleBasic{},
178+
move.AppModuleBasic{},
179+
auction.AppModuleBasic{},
180+
ophost.AppModuleBasic{},
181+
// connect modules
182+
oracle.AppModuleBasic{},
183+
marketmap.AppModuleBasic{},
184+
// ibc modules
185+
ibc.AppModuleBasic{},
186+
ibctransfer.AppModuleBasic{},
187+
ibcnfttransfer.AppModuleBasic{},
188+
ica.AppModuleBasic{},
189+
icaauth.AppModuleBasic{},
190+
ibcfee.AppModuleBasic{},
191+
ibcperm.AppModuleBasic{},
192+
ibctm.AppModuleBasic{},
193+
solomachine.AppModuleBasic{},
194+
packetforward.AppModuleBasic{},
195+
ibchooks.AppModuleBasic{},
196+
forwarding.AppModuleBasic{},
197+
ratelimit.AppModuleBasic{},
198+
dynamicfee.AppModuleBasic{},
199+
)
173200
}
174201

175202
/*

cmd/initiad/root.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ func NewRootCmd() (*cobra.Command, params.EncodingConfig) {
6767
sdkConfig.Seal()
6868

6969
encodingConfig := initiaapp.MakeEncodingConfig()
70-
basicManager := initiaapp.BasicManager()
70+
basicManager := initiaapp.NewBasicManager()
7171

7272
// Get the executable name and configure the viper instance so that environmental
7373
// variables are checked based off that name. The underscore character is used

0 commit comments

Comments
 (0)