refactor!: mv AddressCodecs aliases from runtime -> core (#19747)
Co-authored-by: Marko <marbar3778@yahoo.com>
This commit is contained in:
parent
36981e640f
commit
c807aaede8
@ -150,6 +150,7 @@ Every module contains its own CHANGELOG.md. Please refer to the module you are i
|
||||
* (types) [#19627](https://github.com/cosmos/cosmos-sdk/pull/19627) and [#19735](https://github.com/cosmos/cosmos-sdk/pull/19735) All genesis interfaces now don't take `codec.JsonCodec`.
|
||||
* Every module has the codec already, passing it created an unneeded dependency.
|
||||
* Additionally, to reflect this change, the module manager does not take a codec either.
|
||||
* (runtime) [#19747](https://github.com/cosmos/cosmos-sdk/pull/19747) `runtime.ValidatorAddressCodec` and `runtime.ConsensusAddressCodec` have been moved to `core`.
|
||||
|
||||
### Client Breaking Changes
|
||||
|
||||
|
||||
@ -33,7 +33,6 @@ import (
|
||||
"github.com/cosmos/cosmos-sdk/client"
|
||||
addresscodec "github.com/cosmos/cosmos-sdk/codec/address"
|
||||
"github.com/cosmos/cosmos-sdk/crypto/keys/secp256k1"
|
||||
"github.com/cosmos/cosmos-sdk/runtime"
|
||||
"github.com/cosmos/cosmos-sdk/testutil/testdata"
|
||||
sdk "github.com/cosmos/cosmos-sdk/types"
|
||||
sdkerrors "github.com/cosmos/cosmos-sdk/types/errors"
|
||||
@ -47,8 +46,8 @@ func makeMinimalConfig() depinject.Config {
|
||||
var (
|
||||
mempoolOpt = baseapp.SetMempool(mempool.NewSenderNonceMempool())
|
||||
addressCodec = func() address.Codec { return addresscodec.NewBech32Codec("cosmos") }
|
||||
validatorAddressCodec = func() runtime.ValidatorAddressCodec { return addresscodec.NewBech32Codec("cosmosvaloper") }
|
||||
consensusAddressCodec = func() runtime.ConsensusAddressCodec { return addresscodec.NewBech32Codec("cosmosvalcons") }
|
||||
validatorAddressCodec = func() address.ValidatorAddressCodec { return addresscodec.NewBech32Codec("cosmosvaloper") }
|
||||
consensusAddressCodec = func() address.ConsensusAddressCodec { return addresscodec.NewBech32Codec("cosmosvalcons") }
|
||||
)
|
||||
|
||||
return depinject.Configs(
|
||||
|
||||
@ -20,8 +20,6 @@ import (
|
||||
"cosmossdk.io/client/v2/internal/flags"
|
||||
"cosmossdk.io/client/v2/internal/util"
|
||||
"cosmossdk.io/core/address"
|
||||
|
||||
"github.com/cosmos/cosmos-sdk/runtime"
|
||||
)
|
||||
|
||||
const (
|
||||
@ -55,8 +53,8 @@ type Builder struct {
|
||||
|
||||
// Address Codecs are the address codecs to use for client/v2.
|
||||
AddressCodec address.Codec
|
||||
ValidatorAddressCodec runtime.ValidatorAddressCodec
|
||||
ConsensusAddressCodec runtime.ConsensusAddressCodec
|
||||
ValidatorAddressCodec address.ValidatorAddressCodec
|
||||
ConsensusAddressCodec address.ConsensusAddressCodec
|
||||
}
|
||||
|
||||
func (b *Builder) init() {
|
||||
|
||||
@ -7,3 +7,11 @@ type Codec interface {
|
||||
// BytesToString encodes bytes to text
|
||||
BytesToString(bz []byte) (string, error)
|
||||
}
|
||||
|
||||
type (
|
||||
// ValidatorAddressCodec is an alias for address.Codec for validator addresses.
|
||||
ValidatorAddressCodec Codec
|
||||
|
||||
// ConsensusAddressCodec is an alias for address.Codec for validator consensus addresses.
|
||||
ConsensusAddressCodec Codec
|
||||
)
|
||||
|
||||
@ -25,7 +25,7 @@ import (
|
||||
"github.com/cosmos/cosmos-sdk/crypto/keys/secp256k1"
|
||||
cryptotypes "github.com/cosmos/cosmos-sdk/crypto/types"
|
||||
"github.com/cosmos/cosmos-sdk/crypto/xsalsa20symmetric"
|
||||
"github.com/cosmos/cosmos-sdk/runtime"
|
||||
_ "github.com/cosmos/cosmos-sdk/runtime"
|
||||
"github.com/cosmos/cosmos-sdk/testutil/configurator"
|
||||
"github.com/cosmos/cosmos-sdk/types"
|
||||
)
|
||||
@ -84,8 +84,8 @@ func TestArmorUnarmorPubKey(t *testing.T) {
|
||||
configurator.NewAppConfig(),
|
||||
depinject.Supply(log.NewNopLogger(),
|
||||
func() address.Codec { return addresscodec.NewBech32Codec("cosmos") },
|
||||
func() runtime.ValidatorAddressCodec { return addresscodec.NewBech32Codec("cosmosvaloper") },
|
||||
func() runtime.ConsensusAddressCodec { return addresscodec.NewBech32Codec("cosmosvalcons") },
|
||||
func() address.ValidatorAddressCodec { return addresscodec.NewBech32Codec("cosmosvaloper") },
|
||||
func() address.ConsensusAddressCodec { return addresscodec.NewBech32Codec("cosmosvalcons") },
|
||||
),
|
||||
), &cdc)
|
||||
require.NoError(t, err)
|
||||
|
||||
@ -20,7 +20,7 @@ import (
|
||||
"github.com/cosmos/cosmos-sdk/crypto/keys/secp256k1"
|
||||
cryptotypes "github.com/cosmos/cosmos-sdk/crypto/types"
|
||||
"github.com/cosmos/cosmos-sdk/crypto/types/multisig"
|
||||
"github.com/cosmos/cosmos-sdk/runtime"
|
||||
_ "github.com/cosmos/cosmos-sdk/runtime"
|
||||
"github.com/cosmos/cosmos-sdk/testutil/configurator"
|
||||
"github.com/cosmos/cosmos-sdk/types/tx/signing"
|
||||
)
|
||||
@ -363,8 +363,8 @@ func TestDisplay(t *testing.T) {
|
||||
configurator.NewAppConfig(),
|
||||
depinject.Supply(log.NewNopLogger(),
|
||||
func() address.Codec { return addresscodec.NewBech32Codec("cosmos") },
|
||||
func() runtime.ValidatorAddressCodec { return addresscodec.NewBech32Codec("cosmosvaloper") },
|
||||
func() runtime.ConsensusAddressCodec { return addresscodec.NewBech32Codec("cosmosvalcons") },
|
||||
func() address.ValidatorAddressCodec { return addresscodec.NewBech32Codec("cosmosvaloper") },
|
||||
func() address.ConsensusAddressCodec { return addresscodec.NewBech32Codec("cosmosvalcons") },
|
||||
),
|
||||
), &cdc)
|
||||
require.NoError(err)
|
||||
|
||||
@ -142,7 +142,7 @@ func SetupAppBuilder(inputs AppInputs) {
|
||||
app.ModuleManager.RegisterLegacyAminoCodec(inputs.LegacyAmino)
|
||||
}
|
||||
|
||||
func ProvideInterfaceRegistry(addressCodec address.Codec, validatorAddressCodec ValidatorAddressCodec, customGetSigners []signing.CustomGetSigner) (codectypes.InterfaceRegistry, error) {
|
||||
func ProvideInterfaceRegistry(addressCodec address.Codec, validatorAddressCodec address.ValidatorAddressCodec, customGetSigners []signing.CustomGetSigner) (codectypes.InterfaceRegistry, error) {
|
||||
signingOptions := signing.Options{
|
||||
AddressCodec: addressCodec,
|
||||
ValidatorAddressCodec: validatorAddressCodec,
|
||||
@ -245,28 +245,20 @@ func ProvideAppVersionModifier(app *AppBuilder) baseapp.AppVersionModifier {
|
||||
return app.app
|
||||
}
|
||||
|
||||
type (
|
||||
// ValidatorAddressCodec is an alias for address.Codec for validator addresses.
|
||||
ValidatorAddressCodec address.Codec
|
||||
|
||||
// ConsensusAddressCodec is an alias for address.Codec for validator consensus addresses.
|
||||
ConsensusAddressCodec address.Codec
|
||||
)
|
||||
|
||||
type AddressCodecInputs struct {
|
||||
depinject.In
|
||||
|
||||
AuthConfig *authmodulev1.Module `optional:"true"`
|
||||
StakingConfig *stakingmodulev1.Module `optional:"true"`
|
||||
|
||||
AddressCodecFactory func() address.Codec `optional:"true"`
|
||||
ValidatorAddressCodecFactory func() ValidatorAddressCodec `optional:"true"`
|
||||
ConsensusAddressCodecFactory func() ConsensusAddressCodec `optional:"true"`
|
||||
AddressCodecFactory func() address.Codec `optional:"true"`
|
||||
ValidatorAddressCodecFactory func() address.ValidatorAddressCodec `optional:"true"`
|
||||
ConsensusAddressCodecFactory func() address.ConsensusAddressCodec `optional:"true"`
|
||||
}
|
||||
|
||||
// ProvideAddressCodec provides an address.Codec to the container for any
|
||||
// modules that want to do address string <> bytes conversion.
|
||||
func ProvideAddressCodec(in AddressCodecInputs) (address.Codec, ValidatorAddressCodec, ConsensusAddressCodec) {
|
||||
func ProvideAddressCodec(in AddressCodecInputs) (address.Codec, address.ValidatorAddressCodec, address.ConsensusAddressCodec) {
|
||||
if in.AddressCodecFactory != nil && in.ValidatorAddressCodecFactory != nil && in.ConsensusAddressCodecFactory != nil {
|
||||
return in.AddressCodecFactory(), in.ValidatorAddressCodecFactory(), in.ConsensusAddressCodecFactory()
|
||||
}
|
||||
|
||||
@ -34,7 +34,6 @@ import (
|
||||
"cosmossdk.io/x/upgrade"
|
||||
|
||||
"github.com/cosmos/cosmos-sdk/baseapp"
|
||||
"github.com/cosmos/cosmos-sdk/runtime"
|
||||
"github.com/cosmos/cosmos-sdk/testutil/mock"
|
||||
"github.com/cosmos/cosmos-sdk/testutil/network"
|
||||
simtestutil "github.com/cosmos/cosmos-sdk/testutil/sims"
|
||||
@ -313,8 +312,8 @@ func (c customAddressCodec) BytesToString(bz []byte) (string, error) {
|
||||
|
||||
func TestAddressCodecFactory(t *testing.T) {
|
||||
var addrCodec address.Codec
|
||||
var valAddressCodec runtime.ValidatorAddressCodec
|
||||
var consAddressCodec runtime.ConsensusAddressCodec
|
||||
var valAddressCodec address.ValidatorAddressCodec
|
||||
var consAddressCodec address.ConsensusAddressCodec
|
||||
|
||||
err := depinject.Inject(
|
||||
depinject.Configs(
|
||||
@ -340,8 +339,8 @@ func TestAddressCodecFactory(t *testing.T) {
|
||||
depinject.Supply(
|
||||
log.NewNopLogger(),
|
||||
func() address.Codec { return customAddressCodec{} },
|
||||
func() runtime.ValidatorAddressCodec { return customAddressCodec{} },
|
||||
func() runtime.ConsensusAddressCodec { return customAddressCodec{} },
|
||||
func() address.ValidatorAddressCodec { return customAddressCodec{} },
|
||||
func() address.ConsensusAddressCodec { return customAddressCodec{} },
|
||||
),
|
||||
),
|
||||
&addrCodec, &valAddressCodec, &consAddressCodec)
|
||||
|
||||
@ -24,7 +24,6 @@ import (
|
||||
"github.com/cosmos/cosmos-sdk/codec"
|
||||
codectypes "github.com/cosmos/cosmos-sdk/codec/types"
|
||||
"github.com/cosmos/cosmos-sdk/crypto/keyring"
|
||||
"github.com/cosmos/cosmos-sdk/runtime"
|
||||
"github.com/cosmos/cosmos-sdk/server"
|
||||
simtestutil "github.com/cosmos/cosmos-sdk/testutil/sims"
|
||||
"github.com/cosmos/cosmos-sdk/types/module"
|
||||
@ -103,8 +102,8 @@ func ProvideClientContext(
|
||||
txConfigOpts tx.ConfigOptions,
|
||||
legacyAmino *codec.LegacyAmino,
|
||||
addressCodec address.Codec,
|
||||
validatorAddressCodec runtime.ValidatorAddressCodec,
|
||||
consensusAddressCodec runtime.ConsensusAddressCodec,
|
||||
validatorAddressCodec address.ValidatorAddressCodec,
|
||||
consensusAddressCodec address.ConsensusAddressCodec,
|
||||
authConfig *authv1.Module,
|
||||
stakingConfig *stakingv1.Module,
|
||||
) client.Context {
|
||||
|
||||
@ -13,6 +13,7 @@ import (
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
"cosmossdk.io/core/address"
|
||||
"cosmossdk.io/math"
|
||||
"cosmossdk.io/math/unsafe"
|
||||
"cosmossdk.io/simapp"
|
||||
@ -26,7 +27,6 @@ import (
|
||||
"github.com/cosmos/cosmos-sdk/crypto/hd"
|
||||
"github.com/cosmos/cosmos-sdk/crypto/keyring"
|
||||
cryptotypes "github.com/cosmos/cosmos-sdk/crypto/types"
|
||||
"github.com/cosmos/cosmos-sdk/runtime"
|
||||
"github.com/cosmos/cosmos-sdk/server"
|
||||
srvconfig "github.com/cosmos/cosmos-sdk/server/config"
|
||||
"github.com/cosmos/cosmos-sdk/testutil"
|
||||
@ -209,7 +209,7 @@ func initTestnetFiles(
|
||||
nodeConfig *cmtconfig.Config,
|
||||
mm *module.Manager,
|
||||
genBalIterator banktypes.GenesisBalancesIterator,
|
||||
valAddrCodec runtime.ValidatorAddressCodec,
|
||||
valAddrCodec address.ValidatorAddressCodec,
|
||||
args initArgs,
|
||||
) error {
|
||||
if args.chainID == "" {
|
||||
@ -417,7 +417,7 @@ func initGenFiles(
|
||||
func collectGenFiles(
|
||||
clientCtx client.Context, nodeConfig *cmtconfig.Config, chainID string,
|
||||
nodeIDs []string, valPubKeys []cryptotypes.PubKey, numValidators int,
|
||||
outputDir, nodeDirPrefix, nodeDaemonHome string, genBalIterator banktypes.GenesisBalancesIterator, valAddrCodec runtime.ValidatorAddressCodec,
|
||||
outputDir, nodeDirPrefix, nodeDaemonHome string, genBalIterator banktypes.GenesisBalancesIterator, valAddrCodec address.ValidatorAddressCodec,
|
||||
) error {
|
||||
var appState json.RawMessage
|
||||
genTime := cmttime.Now()
|
||||
|
||||
@ -129,8 +129,8 @@ type Config struct {
|
||||
|
||||
// Address codecs
|
||||
AddressCodec address.Codec // address codec
|
||||
ValidatorAddressCodec runtime.ValidatorAddressCodec // validator address codec
|
||||
ConsensusAddressCodec runtime.ConsensusAddressCodec // consensus address codec
|
||||
ValidatorAddressCodec address.ValidatorAddressCodec // validator address codec
|
||||
ConsensusAddressCodec address.ConsensusAddressCodec // consensus address codec
|
||||
}
|
||||
|
||||
// DefaultConfig returns a sane default configuration suitable for nearly all
|
||||
@ -185,8 +185,8 @@ func DefaultConfigWithAppConfig(appConfig depinject.Config) (Config, error) {
|
||||
cdc codec.Codec
|
||||
interfaceRegistry codectypes.InterfaceRegistry
|
||||
addressCodec address.Codec
|
||||
validatorAddressCodec runtime.ValidatorAddressCodec
|
||||
consensusAddressCodec runtime.ConsensusAddressCodec
|
||||
validatorAddressCodec address.ValidatorAddressCodec
|
||||
consensusAddressCodec address.ConsensusAddressCodec
|
||||
)
|
||||
|
||||
if err := depinject.Inject(
|
||||
|
||||
@ -42,7 +42,7 @@ type ModuleInputs struct {
|
||||
|
||||
Config *txconfigv1.Config
|
||||
AddressCodec address.Codec
|
||||
ValidatorAddressCodec runtime.ValidatorAddressCodec
|
||||
ValidatorAddressCodec address.ValidatorAddressCodec
|
||||
Codec codec.Codec
|
||||
ProtoFileResolver txsigning.ProtoFileResolver
|
||||
// BankKeeper is the expected bank keeper to be passed to AnteHandlers
|
||||
|
||||
@ -6,10 +6,10 @@ import (
|
||||
|
||||
"github.com/spf13/cobra"
|
||||
|
||||
"cosmossdk.io/core/address"
|
||||
"cosmossdk.io/errors"
|
||||
|
||||
"github.com/cosmos/cosmos-sdk/client"
|
||||
"github.com/cosmos/cosmos-sdk/runtime"
|
||||
"github.com/cosmos/cosmos-sdk/server"
|
||||
"github.com/cosmos/cosmos-sdk/x/genutil"
|
||||
"github.com/cosmos/cosmos-sdk/x/genutil/types"
|
||||
@ -18,7 +18,7 @@ import (
|
||||
const flagGenTxDir = "gentx-dir"
|
||||
|
||||
// CollectGenTxsCmd - return the cobra command to collect genesis transactions
|
||||
func CollectGenTxsCmd(genBalIterator types.GenesisBalancesIterator, validator types.MessageValidator, valAddrCodec runtime.ValidatorAddressCodec) *cobra.Command {
|
||||
func CollectGenTxsCmd(genBalIterator types.GenesisBalancesIterator, validator types.MessageValidator, valAddrCodec address.ValidatorAddressCodec) *cobra.Command {
|
||||
cmd := &cobra.Command{
|
||||
Use: "collect-gentxs",
|
||||
Short: "Collect genesis txs and output a genesis.json file",
|
||||
|
||||
@ -12,12 +12,12 @@ import (
|
||||
|
||||
cfg "github.com/cometbft/cometbft/config"
|
||||
|
||||
"cosmossdk.io/core/address"
|
||||
bankexported "cosmossdk.io/x/bank/exported"
|
||||
stakingtypes "cosmossdk.io/x/staking/types"
|
||||
|
||||
"github.com/cosmos/cosmos-sdk/client"
|
||||
"github.com/cosmos/cosmos-sdk/codec"
|
||||
sdkruntime "github.com/cosmos/cosmos-sdk/runtime"
|
||||
sdk "github.com/cosmos/cosmos-sdk/types"
|
||||
"github.com/cosmos/cosmos-sdk/x/genutil/types"
|
||||
)
|
||||
@ -25,7 +25,7 @@ import (
|
||||
// GenAppStateFromConfig gets the genesis app state from the config
|
||||
func GenAppStateFromConfig(cdc codec.JSONCodec, txEncodingConfig client.TxEncodingConfig,
|
||||
config *cfg.Config, initCfg types.InitConfig, genesis *types.AppGenesis, genBalIterator types.GenesisBalancesIterator,
|
||||
validator types.MessageValidator, valAddrCodec sdkruntime.ValidatorAddressCodec,
|
||||
validator types.MessageValidator, valAddrCodec address.ValidatorAddressCodec,
|
||||
) (appState json.RawMessage, err error) {
|
||||
// process genesis transactions, else create default genesis.json
|
||||
appGenTxs, persistentPeers, err := CollectTxs(
|
||||
@ -68,7 +68,7 @@ func GenAppStateFromConfig(cdc codec.JSONCodec, txEncodingConfig client.TxEncodi
|
||||
// the list of appGenTxs, and persistent peers required to generate genesis.json.
|
||||
func CollectTxs(cdc codec.JSONCodec, txJSONDecoder sdk.TxDecoder, moniker, genTxsDir string,
|
||||
genesis *types.AppGenesis, genBalIterator types.GenesisBalancesIterator,
|
||||
validator types.MessageValidator, valAddrCodec sdkruntime.ValidatorAddressCodec,
|
||||
validator types.MessageValidator, valAddrCodec address.ValidatorAddressCodec,
|
||||
) (appGenTxs []sdk.Tx, persistentPeers string, err error) {
|
||||
// prepare a map of all balances in genesis state to then validate
|
||||
// against the validators addresses
|
||||
|
||||
@ -7,6 +7,7 @@ import (
|
||||
"golang.org/x/exp/maps"
|
||||
|
||||
modulev1 "cosmossdk.io/api/cosmos/staking/module/v1"
|
||||
"cosmossdk.io/core/address"
|
||||
"cosmossdk.io/core/appmodule"
|
||||
"cosmossdk.io/depinject"
|
||||
"cosmossdk.io/depinject/appconfig"
|
||||
@ -16,7 +17,6 @@ import (
|
||||
"cosmossdk.io/x/staking/types"
|
||||
|
||||
"github.com/cosmos/cosmos-sdk/codec"
|
||||
"github.com/cosmos/cosmos-sdk/runtime"
|
||||
"github.com/cosmos/cosmos-sdk/types/module"
|
||||
simtypes "github.com/cosmos/cosmos-sdk/types/simulation"
|
||||
)
|
||||
@ -38,8 +38,8 @@ type ModuleInputs struct {
|
||||
depinject.In
|
||||
|
||||
Config *modulev1.Module
|
||||
ValidatorAddressCodec runtime.ValidatorAddressCodec
|
||||
ConsensusAddressCodec runtime.ConsensusAddressCodec
|
||||
ValidatorAddressCodec address.ValidatorAddressCodec
|
||||
ConsensusAddressCodec address.ConsensusAddressCodec
|
||||
AccountKeeper types.AccountKeeper
|
||||
BankKeeper types.BankKeeper
|
||||
Cdc codec.Codec
|
||||
|
||||
Loading…
Reference in New Issue
Block a user