diff --git a/app.go b/app.go index 8b326a0d76ab..6d194a3fd58f 100644 --- a/app.go +++ b/app.go @@ -178,7 +178,7 @@ func NewSimApp( cdc := encodingConfig.Amino interfaceRegistry := encodingConfig.InterfaceRegistry - bApp := baseapp.NewBaseApp(appName, logger, db, authtypes.DefaultTxDecoder(cdc), baseAppOptions...) + bApp := baseapp.NewBaseApp(appName, logger, db, encodingConfig.TxConfig.TxDecoder(), baseAppOptions...) bApp.SetCommitMultiStoreTracer(traceStore) bApp.SetAppVersion(version.Version) bApp.GRPCQueryRouter().SetAnyUnpacker(interfaceRegistry) @@ -366,7 +366,7 @@ func NewSimApp( app.SetAnteHandler( ante.NewAnteHandler( app.AccountKeeper, app.BankKeeper, ante.DefaultSigVerificationGasConsumer, - authtypes.LegacyAminoJSONHandler{}, + encodingConfig.TxConfig.SignModeHandler(), ), ) app.SetEndBlocker(app.EndBlocker) diff --git a/encoding.go b/encoding.go index 58f899edd7a5..7bb939bb7773 100644 --- a/encoding.go +++ b/encoding.go @@ -5,9 +5,7 @@ import ( "github.com/cosmos/cosmos-sdk/std" ) -// MakeEncodingConfig creates an EncodingConfig for an amino based test configuration. -// -// TODO: this file should add a "+build test_amino" flag for #6190 and a proto.go file with a protobuf configuration +// MakeEncodingConfig creates an EncodingConfig for testing func MakeEncodingConfig() params.EncodingConfig { encodingConfig := params.MakeEncodingConfig() std.RegisterCodec(encodingConfig.Amino) diff --git a/params/amino.go b/params/amino.go index 6cb8a4de636a..871dba814e64 100644 --- a/params/amino.go +++ b/params/amino.go @@ -1,3 +1,6 @@ +// +build !test_proto + +// TODO switch to test_amino build flag once proto Tx's are ready package params import ( @@ -7,11 +10,10 @@ import ( ) // MakeEncodingConfig creates an EncodingConfig for an amino based test configuration. -// -// TODO: this file should add a "+build test_amino" flag for #6190 and a proto.go file with a protobuf configuration func MakeEncodingConfig() EncodingConfig { cdc := codec.New() interfaceRegistry := types.NewInterfaceRegistry() + // TODO: switch to using AminoCodec here once amino compatibility is fixed marshaler := codec.NewHybridCodec(cdc, interfaceRegistry) return EncodingConfig{ diff --git a/params/proto.go b/params/proto.go new file mode 100644 index 000000000000..012361d1dc51 --- /dev/null +++ b/params/proto.go @@ -0,0 +1,26 @@ +// +build test_proto + +// TODO switch to !test_amino build flag once proto Tx's are ready +package params + +import ( + "github.com/cosmos/cosmos-sdk/codec" + "github.com/cosmos/cosmos-sdk/codec/types" + "github.com/cosmos/cosmos-sdk/std" + "github.com/cosmos/cosmos-sdk/x/auth/tx" +) + +// MakeEncodingConfig creates an EncodingConfig for an amino based test configuration. +func MakeEncodingConfig() EncodingConfig { + cdc := codec.New() + interfaceRegistry := types.NewInterfaceRegistry() + marshaler := codec.NewHybridCodec(cdc, interfaceRegistry) + txGen := tx.NewTxConfig(marshaler, std.DefaultPublicKeyCodec{}, tx.DefaultSignModeHandler()) + + return EncodingConfig{ + InterfaceRegistry: interfaceRegistry, + Marshaler: marshaler, + TxConfig: txGen, + Amino: cdc, + } +}