diff --git a/CHANGELOG.md b/CHANGELOG.md index 652c746ff..4f7dc0001 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -59,6 +59,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 * (x/act) Add support for sdk.Coins fields in autogenerated CLI commands for new actions * (x/warden) Add the ability for the user to specify the maximum keychain fee size to be deducted * (x/warden) Return error if analyzer's address is not bench32 +* (evm) Resolve dependencies issues. For go-ethereum use [evmos fork](https://github.com/evmos/go-ethereum/releases/tag/v1.10.26-evmos-rc2) patched with [c1b68f1d05a7ee8eee1bde3c4054f49f5d3e3b9f](https://github.com/ethereum/go-ethereum/pull/24911) from original repository to support slinky. +* (evm) To adopt ethsecp256k1 use fork of evmos's cosmos-sdk. Fork patched runtime/module adding into ProvideApp two arguments to customize registering interface registry and legacy amino codec. +* (evm) Introduce award denomination to adjust units with Ethereum +* (evm) Using ethsecp256k1 signature for all transactions. Users should reimport their seeds to get new addresses. ### Bug Fixes * (x/gmp) Remove the GMP default params from genesis diff --git a/cmd/faucet-v2/main.go b/cmd/faucet-v2/main.go index b379873d7..0db198521 100644 --- a/cmd/faucet-v2/main.go +++ b/cmd/faucet-v2/main.go @@ -19,14 +19,14 @@ import ( type Config struct { CliName string `env:"CLI_NAME, default=wardend"` - ChainID string `env:"CHAIN_ID, default=warden"` + ChainID string `env:"CHAIN_ID, default=warden_1337-1"` KeyringBackend string `env:"KEYRING_BACKEND, default=test"` Node string `env:"NODE, default=http://localhost:26657"` - SendDenom string `env:"DENOM, default=10000000uward"` + SendDenom string `env:"DENOM, default=10000000000000000000award"` AccountName string `env:"ACCOUNT_NAME, default=shulgin"` Mnemonic string `env:"MNEMONIC"` - HDPath string `env:"HD_PATH, default=m/44'/118'/0'/0/0"` - Fees string `env:"FEES, default=1uward"` + HDPath string `env:"HD_PATH, default=m/44'/60'/0'/0/0"` + Fees string `env:"FEES, default=1award"` OtherFlags string `env:"OTHER_FLAGS"` Cooldown time.Duration `env:"COOLDOWN, default=12h"` diff --git a/cmd/wardend/cmd/commands.go b/cmd/wardend/cmd/commands.go index ca43ed256..2ad9be590 100644 --- a/cmd/wardend/cmd/commands.go +++ b/cmd/wardend/cmd/commands.go @@ -12,9 +12,9 @@ import ( confixcmd "cosmossdk.io/tools/confix/cmd" dbm "github.com/cosmos/cosmos-db" "github.com/cosmos/cosmos-sdk/client" - "github.com/cosmos/cosmos-sdk/client/debug" + + // "github.com/cosmos/cosmos-sdk/client/debug" "github.com/cosmos/cosmos-sdk/client/flags" - "github.com/cosmos/cosmos-sdk/client/keys" "github.com/cosmos/cosmos-sdk/client/pruning" "github.com/cosmos/cosmos-sdk/client/rpc" "github.com/cosmos/cosmos-sdk/client/snapshot" @@ -25,10 +25,16 @@ import ( "github.com/cosmos/cosmos-sdk/types/module" authcmd "github.com/cosmos/cosmos-sdk/x/auth/client/cli" "github.com/cosmos/cosmos-sdk/x/crisis" + "github.com/cosmos/cosmos-sdk/x/genutil" genutilcli "github.com/cosmos/cosmos-sdk/x/genutil/client/cli" "github.com/spf13/cobra" "github.com/spf13/viper" + banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" + genutiltypes "github.com/cosmos/cosmos-sdk/x/genutil/types" + evmosclient "github.com/evmos/evmos/v18/client" + "github.com/evmos/evmos/v18/client/debug" + evmosserver "github.com/evmos/evmos/v18/server" "github.com/warden-protocol/wardenprotocol/warden/app" ) @@ -47,7 +53,12 @@ func initRootCmd( snapshot.Cmd(newApp), ) - server.AddCommands(rootCmd, app.DefaultNodeHome, newApp, appExport, addModuleInitFlags) + evmosserver.AddCommands( + rootCmd, + evmosserver.NewDefaultStartOptions(newApp, app.DefaultNodeHome), + appExport, + addModuleInitFlags, + ) // add keybase, auxiliary RPC, query, genesis, and tx child commands rootCmd.AddCommand( @@ -58,10 +69,11 @@ func initRootCmd( AddGenesisSpaceCmd(app.DefaultNodeHome), AddGenesisKeychainCmd(app.DefaultNodeHome), AddGenesisSlinkyMarketsCmd(app.DefaultNodeHome), + AddGenesisAccountCmd(app.DefaultNodeHome), ), queryCommand(), txCommand(), - keys.Commands(), + evmosclient.KeyCommands(app.DefaultNodeHome), ) } @@ -69,9 +81,30 @@ func addModuleInitFlags(startCmd *cobra.Command) { crisis.AddModuleInitFlags(startCmd) } +// Analog of sdk's CommandsWithCustomMigrationMap without AddGenesisAccountCmd, that should be embeded separately +func CommandsWithCustomMigrationMap(txConfig client.TxConfig, moduleBasics module.BasicManager, defaultNodeHome string, migrationMap genutiltypes.MigrationMap) *cobra.Command { + cmd := &cobra.Command{ + Use: "genesis", + Short: "Application's genesis-related subcommands", + DisableFlagParsing: false, + SuggestionsMinimumDistance: 2, + RunE: client.ValidateCmd, + } + gentxModule := moduleBasics[genutiltypes.ModuleName].(genutil.AppModuleBasic) + + cmd.AddCommand( + genutilcli.GenTxCmd(moduleBasics, txConfig, banktypes.GenesisBalancesIterator{}, defaultNodeHome, txConfig.SigningContext().ValidatorAddressCodec()), + genutilcli.MigrateGenesisCmd(migrationMap), + genutilcli.CollectGenTxsCmd(banktypes.GenesisBalancesIterator{}, defaultNodeHome, gentxModule.GenTxValidator, txConfig.SigningContext().ValidatorAddressCodec()), + genutilcli.ValidateGenesisCmd(moduleBasics), + ) + + return cmd +} + // genesisCommand builds genesis-related `wardend genesis` command. Users may provide application specific commands as a parameter func genesisCommand(txConfig client.TxConfig, basicManager module.BasicManager, cmds ...*cobra.Command) *cobra.Command { - cmd := genutilcli.Commands(txConfig, basicManager, app.DefaultNodeHome) + cmd := CommandsWithCustomMigrationMap(txConfig, basicManager, app.DefaultNodeHome, genutilcli.MigrationMap) for _, subCmd := range cmds { cmd.AddCommand(subCmd) diff --git a/cmd/wardend/cmd/config.go b/cmd/wardend/cmd/config.go index d1f783863..9ed619e9b 100644 --- a/cmd/wardend/cmd/config.go +++ b/cmd/wardend/cmd/config.go @@ -6,6 +6,7 @@ import ( cmtcfg "github.com/cometbft/cometbft/config" serverconfig "github.com/cosmos/cosmos-sdk/server/config" + evmservercfg "github.com/evmos/evmos/v18/server/config" oracleconfig "github.com/skip-mev/slinky/oracle/config" ) @@ -28,7 +29,11 @@ func initAppConfig() (string, interface{}) { type CustomAppConfig struct { serverconfig.Config `mapstructure:",squash"` - Oracle oracleconfig.AppConfig `mapstructure:"oracle"` + Oracle oracleconfig.AppConfig `mapstructure:"oracle"` + EVM evmservercfg.EVMConfig `mapstructure:"evm"` + JSONRPC evmservercfg.JSONRPCConfig `mapstructure:"json-rpc"` + TLS evmservercfg.TLSConfig `mapstructure:"tls"` + Rosetta evmservercfg.RosettaConfig `mapstructure:"rosetta"` } // Optionally allow the chain developer to overwrite the SDK's default @@ -56,12 +61,40 @@ func initAppConfig() (string, interface{}) { MetricsEnabled: false, } + evmConfig := evmservercfg.DefaultEVMConfig() + jsonRpcConfig := evmservercfg.JSONRPCConfig{ + Enable: true, + API: evmservercfg.GetDefaultAPINamespaces(), + Address: evmservercfg.DefaultJSONRPCAddress, + WsAddress: evmservercfg.DefaultJSONRPCWsAddress, + GasCap: evmservercfg.DefaultGasCap, + AllowInsecureUnlock: evmservercfg.DefaultJSONRPCAllowInsecureUnlock, + EVMTimeout: evmservercfg.DefaultEVMTimeout, + TxFeeCap: evmservercfg.DefaultTxFeeCap, + FilterCap: evmservercfg.DefaultFilterCap, + FeeHistoryCap: evmservercfg.DefaultFeeHistoryCap, + BlockRangeCap: evmservercfg.DefaultBlockRangeCap, + LogsCap: evmservercfg.DefaultLogsCap, + HTTPTimeout: evmservercfg.DefaultHTTPTimeout, + HTTPIdleTimeout: evmservercfg.DefaultHTTPIdleTimeout, + AllowUnprotectedTxs: evmservercfg.DefaultAllowUnprotectedTxs, + MaxOpenConnections: evmservercfg.DefaultMaxOpenConnections, + EnableIndexer: false, + MetricsAddress: evmservercfg.DefaultJSONRPCMetricsAddress, + FixRevertGasRefundHeight: evmservercfg.DefaultFixRevertGasRefundHeight, + } + tlsConfig := evmservercfg.DefaultTLSConfig() + customAppConfig := CustomAppConfig{ - Config: *srvCfg, - Oracle: oracleConfig, + Config: *srvCfg, + Oracle: oracleConfig, + EVM: *evmConfig, + JSONRPC: jsonRpcConfig, + TLS: *tlsConfig, + Rosetta: *evmservercfg.DefaultRosettaConfig(), } - customAppTemplate := serverconfig.DefaultConfigTemplate + oracleconfig.DefaultConfigTemplate + customAppTemplate := serverconfig.DefaultConfigTemplate + oracleconfig.DefaultConfigTemplate + evmservercfg.DefaultConfigTemplate // Edit the default template file // // customAppTemplate := serverconfig.DefaultConfigTemplate + ` diff --git a/cmd/wardend/cmd/gen-accounts.go b/cmd/wardend/cmd/gen-accounts.go new file mode 100644 index 000000000..376e09db1 --- /dev/null +++ b/cmd/wardend/cmd/gen-accounts.go @@ -0,0 +1,273 @@ +package cmd + +import ( + "bufio" + "encoding/json" + "fmt" + "time" + + "github.com/spf13/cobra" + + "github.com/cosmos/cosmos-sdk/client" + "github.com/cosmos/cosmos-sdk/client/flags" + "github.com/cosmos/cosmos-sdk/crypto/keyring" + "github.com/cosmos/cosmos-sdk/server" + authtypes "github.com/cosmos/cosmos-sdk/x/auth/types" + banktypes "github.com/cosmos/cosmos-sdk/x/bank/types" + "github.com/cosmos/cosmos-sdk/x/genutil" + genutiltypes "github.com/cosmos/cosmos-sdk/x/genutil/types" + + evmoskr "github.com/evmos/evmos/v18/crypto/keyring" + + sdktypes "github.com/cosmos/cosmos-sdk/types" + authvestingtypes "github.com/cosmos/cosmos-sdk/x/auth/vesting/types" + vestingcli "github.com/evmos/evmos/v18/x/vesting/client/cli" + vestingtypes "github.com/evmos/evmos/v18/x/vesting/types" +) + +const ( + flagVestingStart = "vesting-start-time" +) + +func AddGenesisAccountCmd(defaultNodeHome string) *cobra.Command { + cmd := &cobra.Command{ + Use: "add-genesis-account ADDRESS_OR_KEY_NAME COIN...", + Short: "Add a genesis account to genesis.json", + Long: `Add a genesis account to genesis.json. The provided account must specify +the account address or key name and a list of initial coins. If a key name is given, +the address will be looked up in the local Keybase. The list of initial tokens must +contain valid denominations. Accounts may optionally be supplied with vesting parameters. +`, + Args: cobra.ExactArgs(2), + RunE: func(cmd *cobra.Command, args []string) error { + clientCtx := client.GetClientContextFromCmd(cmd) + + serverCtx := server.GetServerContextFromCmd(cmd) + config := serverCtx.Config + + config.SetRoot(clientCtx.HomeDir) + + var kr keyring.Keyring + addr, err := sdktypes.AccAddressFromBech32(args[0]) + if err != nil { + inBuf := bufio.NewReader(cmd.InOrStdin()) + keyringBackend, _ := cmd.Flags().GetString(flags.FlagKeyringBackend) + if keyringBackend != "" && clientCtx.Keyring == nil { + var err error + kr, err = keyring.New( + sdktypes.KeyringServiceName(), + keyringBackend, + clientCtx.HomeDir, + inBuf, + clientCtx.Codec, + evmoskr.Option(), + ) + if err != nil { + return err + } + } else { + kr = clientCtx.Keyring + } + + info, err := kr.Key(args[0]) + if err != nil { + return fmt.Errorf("failed to get key info from Keyring: %w", err) + } + + addr, err = info.GetAddress() + if err != nil { + return fmt.Errorf("failed to get address from Keyring: %w", err) + } + } + + coins, err := sdktypes.ParseCoinsNormalized(args[1]) + if err != nil { + return fmt.Errorf("failed to parse coins: %w", err) + } + + vestingStart, err := cmd.Flags().GetInt64(flagVestingStart) + if err != nil { + return err + } + + // create concrete account type based on input parameters + var genAccount authtypes.GenesisAccount + + balances := banktypes.Balance{Address: addr.String(), Coins: coins.Sort()} + baseAccount := authtypes.NewBaseAccount(addr, nil, 0, 0) + + clawback, _ := cmd.Flags().GetBool(vestingcli.FlagClawback) + + // Create ClawbackvestingAccount or standard Evmos account + switch { + case clawback: + // ClawbackvestingAccount requires clawback, lockup, vesting, and funder + // flags + var ( + lockupStart int64 + lockupPeriods, vestingPeriods authvestingtypes.Periods + ) + + // Get funder addr which can perform clawback + funderStr, err := cmd.Flags().GetString(vestingcli.FlagFunder) + if err != nil { + return fmt.Errorf("must specify the clawback vesting account funder with the --funder flag") + } + funder, err := sdktypes.AccAddressFromBech32(funderStr) + if err != nil { + return err + } + + // Read lockup and vesting schedules + lockupFile, _ := cmd.Flags().GetString(vestingcli.FlagLockup) + vestingFile, _ := cmd.Flags().GetString(vestingcli.FlagVesting) + + if lockupFile == "" && vestingFile == "" { + return fmt.Errorf("must specify at least one of %s or %s", vestingcli.FlagLockup, vestingcli.FlagVesting) + } + + if lockupFile != "" { + lockupStart, lockupPeriods, err = vestingcli.ReadScheduleFile(lockupFile) + if err != nil { + return err + } + } + + if vestingFile != "" { + vestingStart, vestingPeriods, err = vestingcli.ReadScheduleFile(vestingFile) + if err != nil { + return err + } + } + + // Align schedules in case lockup and vesting schedules have different + // start_time + commonStart, _ := vestingtypes.AlignSchedules(lockupStart, vestingStart, lockupPeriods, vestingPeriods) + + // Get total lockup and vesting from schedules + vestingCoins := sdktypes.NewCoins() + for _, period := range vestingPeriods { + vestingCoins = vestingCoins.Add(period.Amount...) + } + + lockupCoins := sdktypes.NewCoins() + for _, period := range lockupPeriods { + lockupCoins = lockupCoins.Add(period.Amount...) + } + + // If lockup absent, default to an instant unlock schedule + if !vestingCoins.IsZero() && len(lockupPeriods) == 0 { + lockupPeriods = []authvestingtypes.Period{ + {Length: 0, Amount: vestingCoins}, + } + lockupCoins = vestingCoins + } + + // If vesting absent, default to an instant vesting schedule + if !lockupCoins.IsZero() && len(vestingPeriods) == 0 { + vestingPeriods = []authvestingtypes.Period{ + {Length: 0, Amount: lockupCoins}, + } + vestingCoins = lockupCoins + } + + // The vesting and lockup schedules must describe the same total amount. + // IsEqual can panic, so use (a == b) <=> (a <= b && b <= a). + if !vestingtypes.CoinEq(lockupCoins, vestingCoins) { + return fmt.Errorf("lockup (%s) and vesting (%s) amounts must be equal", + lockupCoins, vestingCoins, + ) + } + + // Check if account balance is aligned with vesting schedule + if !vestingCoins.Equal(coins) { + return fmt.Errorf("vestingCoins (%s) and coin balance (%s) amounts must be equal", + vestingCoins, coins, + ) + } + + genAccount = vestingtypes.NewClawbackVestingAccount( + baseAccount, + funder, + vestingCoins, + time.Unix(commonStart, 0), + lockupPeriods, + vestingPeriods, + ) + + default: + genAccount = baseAccount + } + + if err := genAccount.Validate(); err != nil { + return fmt.Errorf("failed to validate new genesis account: %w", err) + } + + genFile := config.GenesisFile() + appState, genDoc, err := genutiltypes.GenesisStateFromGenFile(genFile) + if err != nil { + return fmt.Errorf("failed to unmarshal genesis state: %w", err) + } + + authGenState := authtypes.GetGenesisStateFromAppState(clientCtx.Codec, appState) + + accs, err := authtypes.UnpackAccounts(authGenState.Accounts) + if err != nil { + return fmt.Errorf("failed to get accounts from any: %w", err) + } + + if accs.Contains(addr) { + return fmt.Errorf("cannot add account at existing address %s", addr) + } + + // Add the new account to the set of genesis accounts and sanitize the + // accounts afterwards. + accs = append(accs, genAccount) + accs = authtypes.SanitizeGenesisAccounts(accs) + + genAccs, err := authtypes.PackAccounts(accs) + if err != nil { + return fmt.Errorf("failed to convert accounts into any's: %w", err) + } + authGenState.Accounts = genAccs + + authGenStateBz, err := clientCtx.Codec.MarshalJSON(&authGenState) + if err != nil { + return fmt.Errorf("failed to marshal auth genesis state: %w", err) + } + + appState[authtypes.ModuleName] = authGenStateBz + + bankGenState := banktypes.GetGenesisStateFromAppState(clientCtx.Codec, appState) + bankGenState.Balances = append(bankGenState.Balances, balances) + bankGenState.Balances = banktypes.SanitizeGenesisBalances(bankGenState.Balances) + bankGenState.Supply = bankGenState.Supply.Add(balances.Coins...) + + bankGenStateBz, err := clientCtx.Codec.MarshalJSON(bankGenState) + if err != nil { + return fmt.Errorf("failed to marshal bank genesis state: %w", err) + } + + appState[banktypes.ModuleName] = bankGenStateBz + + appStateJSON, err := json.Marshal(appState) + if err != nil { + return fmt.Errorf("failed to marshal application genesis state: %w", err) + } + + genDoc.AppState = appStateJSON + return genutil.ExportGenesisFile(genDoc, genFile) + }, + } + + cmd.Flags().String(flags.FlagHome, defaultNodeHome, "The application home directory") + cmd.Flags().String(flags.FlagKeyringBackend, flags.DefaultKeyringBackend, "Select keyring's backend (os|file|kwallet|pass|test)") + cmd.Flags().Int64(flagVestingStart, 0, "schedule start time (unix epoch) for vesting accounts") + cmd.Flags().Bool(vestingcli.FlagClawback, false, "create clawback account") + cmd.Flags().String(vestingcli.FlagFunder, "", "funder address for clawback") + cmd.Flags().String(vestingcli.FlagLockup, "", "path to file containing unlocking periods for a clawback vesting account") + cmd.Flags().String(vestingcli.FlagVesting, "", "path to file containing vesting periods for a clawback vesting account") + flags.AddQueryFlagsToCmd(cmd) + + return cmd +} diff --git a/cmd/wardend/cmd/root.go b/cmd/wardend/cmd/root.go index b17602bcf..51dd42152 100644 --- a/cmd/wardend/cmd/root.go +++ b/cmd/wardend/cmd/root.go @@ -24,6 +24,7 @@ import ( "github.com/spf13/cobra" "github.com/spf13/pflag" + evmoskr "github.com/evmos/evmos/v18/crypto/keyring" "github.com/warden-protocol/wardenprotocol/warden/app" ) @@ -80,7 +81,7 @@ func NewRootCmd() *cobra.Command { txConfigOpts.EnabledSignModes = append(txConfigOpts.EnabledSignModes, signing.SignMode_SIGN_MODE_TEXTUAL) txConfigOpts.TextualCoinMetadataQueryFn = txmodule.NewGRPCCoinMetadataQueryFn(clientCtx) txConfigWithTextual, err := tx.NewTxConfigWithOptions( - codec.NewProtoCodec(clientCtx.InterfaceRegistry), + clientCtx.Codec, txConfigOpts, ) if err != nil { @@ -88,9 +89,6 @@ func NewRootCmd() *cobra.Command { } clientCtx = clientCtx.WithTxConfig(txConfigWithTextual) - if err := client.SetCmdClientContextHandler(clientCtx, cmd); err != nil { - return err - } if err := client.SetCmdClientContextHandler(clientCtx, cmd); err != nil { return err @@ -157,6 +155,7 @@ func ProvideClientContext( WithInput(os.Stdin). WithAccountRetriever(types.AccountRetriever{}). WithHomeDir(app.DefaultNodeHome). + WithKeyringOptions(evmoskr.Option()). WithViper(app.Name) // env variable prefix // Read the config again to overwrite the default values with the values from the config file diff --git a/cmd/wardenkms/wardenkms.go b/cmd/wardenkms/wardenkms.go index 799596f5c..becc3e860 100644 --- a/cmd/wardenkms/wardenkms.go +++ b/cmd/wardenkms/wardenkms.go @@ -20,10 +20,10 @@ import ( ) type Config struct { - ChainID string `env:"CHAIN_ID, default=warden"` + ChainID string `env:"CHAIN_ID, default=warden_1337-1"` GRPCURL string `env:"GRPC_URL, default=localhost:9090"` GRPCInsecure bool `env:"GRPC_INSECURE, default=true"` - DerivationPath string `env:"DERIVATION_PATH, default=m/44'/118'/0'/0/0"` + DerivationPath string `env:"DERIVATION_PATH, default=m/44'/60'/0'/0/0"` Mnemonic string `env:"MNEMONIC, default=exclude try nephew main caught favorite tone degree lottery device tissue tent ugly mouse pelican gasp lava flush pen river noise remind balcony emerge"` KeychainId uint64 `env:"KEYCHAIN_ID, default=1"` @@ -69,7 +69,7 @@ func main() { BatchInterval: cfg.BatchInterval, BatchSize: cfg.BatchSize, TxTimeout: cfg.TxTimeout, - TxFees: sdk.NewCoins(sdk.NewCoin("uward", math.NewInt(cfg.TxFee))), + TxFees: sdk.NewCoins(sdk.NewCoin("award", math.NewInt(cfg.TxFee))), }) app.SetKeyRequestHandler(func(w keychain.KeyResponseWriter, req *keychain.KeyRequest) { diff --git a/docs/developer-docs/.spelling b/docs/developer-docs/.spelling index 78a985e89..7c8eeacfd 100644 --- a/docs/developer-docs/.spelling +++ b/docs/developer-docs/.spelling @@ -73,6 +73,7 @@ aggregator alfama algolia allowlist +award autogenerated benchmarked blockchain diff --git a/docs/developer-docs/docs/build-a-keychain/quick-start.md b/docs/developer-docs/docs/build-a-keychain/quick-start.md index e76fbccd0..bd5851cef 100644 --- a/docs/developer-docs/docs/build-a-keychain/quick-start.md +++ b/docs/developer-docs/docs/build-a-keychain/quick-start.md @@ -203,7 +203,7 @@ func main() { // setup the account used to write txs KeychainId: , Mnemonic: "virus boat radio apple pilot ask vault exhaust again state doll stereo slide exhibit scissors miss attack boat budget egg bird mask more trick", - DerivationPath: "m/44'/118'/0'/0/0", + DerivationPath: "m/44'/60'/0'/0/0", // setup throughput for batching responses GasLimit: 400000, diff --git a/docs/developer-docs/docs/build-an-app/test/run-a-keychain-from-cli.md b/docs/developer-docs/docs/build-an-app/test/run-a-keychain-from-cli.md index f4dfb9329..a7da07fdd 100644 --- a/docs/developer-docs/docs/build-an-app/test/run-a-keychain-from-cli.md +++ b/docs/developer-docs/docs/build-an-app/test/run-a-keychain-from-cli.md @@ -18,7 +18,7 @@ If running locally, you can skip this step and assume an initial Keychain was se ``` KEYCHAIN_ID: 1 KEYCHAIN_WRITER_NAME: shulgin -KEYCHAIN_WRITER: warden10kmgv5gzygnecf46x092ecfe5xcvvv9r870rq4 +KEYCHAIN_WRITER: warden1d652c9nngq5cneak2whyaqa4g9ehr8pstxj0r5 ``` Otherwise, you can create a new Keychain with the following command: diff --git a/go-client/tx_raw_client.go b/go-client/tx_raw_client.go index 242b30ea7..2389547e0 100644 --- a/go-client/tx_raw_client.go +++ b/go-client/tx_raw_client.go @@ -23,8 +23,8 @@ import ( ) var ( - DefaultGasLimit = uint64(300000) - DefaultFees = types.NewCoins(types.NewCoin("uward", math.NewInt(1000))) + DefaultGasLimit = uint64(300000000000000000) + DefaultFees = types.NewCoins(types.NewCoin("award", math.NewInt(1000000000000000))) queryTimeout = 250 * time.Millisecond ) diff --git a/go.mod b/go.mod index f413f1fb4..fa059b72d 100644 --- a/go.mod +++ b/go.mod @@ -3,6 +3,12 @@ module github.com/warden-protocol/wardenprotocol go 1.22.5 replace ( + // evmos integration - need this replace when importing cosmos/rosetta pkg + cosmossdk.io/core => cosmossdk.io/core v0.11.0 + // evmos integration + github.com/cosmos/cosmos-sdk => github.com/warden-protocol/cosmos-sdk v0.50.9-evmos-warden + // evmos + types for slinky + github.com/ethereum/go-ethereum => github.com/warden-protocol/go-ethereum v1.10.26-warden-evmos-rc2 // fix upstream GHSA-h395-qcrw-5vmq vulnerability. github.com/gin-gonic/gin => github.com/gin-gonic/gin v1.7.0 // replace broken goleveldb @@ -13,7 +19,7 @@ require ( cosmossdk.io/api v0.7.5 cosmossdk.io/client/v2 v2.0.0-beta.4 cosmossdk.io/collections v0.4.0 - cosmossdk.io/core v0.11.1 + cosmossdk.io/core v0.12.0 cosmossdk.io/depinject v1.0.0 cosmossdk.io/errors v1.0.1 cosmossdk.io/log v1.4.0 @@ -23,6 +29,7 @@ require ( cosmossdk.io/x/circuit v0.1.1 cosmossdk.io/x/evidence v0.1.0 cosmossdk.io/x/feegrant v0.1.0 + cosmossdk.io/x/tx v0.13.4 cosmossdk.io/x/upgrade v0.1.4 github.com/CosmWasm/wasmd v0.51.0 github.com/btcsuite/btcd/btcec/v2 v2.3.2 @@ -38,6 +45,7 @@ require ( github.com/cosmos/ibc-go/modules/capability v1.0.0 github.com/cosmos/ibc-go/v8 v8.4.0 github.com/ethereum/go-ethereum v1.14.7 + github.com/evmos/evmos/v18 v18.0.0-20240719123340-11b5d80cf7bb github.com/golang/protobuf v1.5.4 github.com/gorilla/mux v1.8.1 github.com/grpc-ecosystem/grpc-gateway v1.16.0 @@ -68,7 +76,6 @@ require ( cloud.google.com/go/storage v1.38.0 // indirect connectrpc.com/connect v1.16.0 // indirect connectrpc.com/otelconnect v0.7.0 // indirect - cosmossdk.io/x/tx v0.13.4 // indirect filippo.io/edwards25519 v1.0.0 // indirect github.com/99designs/go-keychain v0.0.0-20191008050251-8e49817e8af4 // indirect github.com/99designs/keyring v1.2.2 // indirect @@ -77,16 +84,21 @@ require ( github.com/DataDog/datadog-go v3.2.0+incompatible // indirect github.com/DataDog/zstd v1.5.5 // indirect github.com/Microsoft/go-winio v0.6.2 // indirect + github.com/StackExchange/wmi v1.2.1 // indirect + github.com/VictoriaMetrics/fastcache v1.12.2 // indirect github.com/antlr4-go/antlr/v4 v4.13.0 // indirect github.com/aws/aws-sdk-go v1.44.224 // indirect github.com/beorn7/perks v1.0.1 // indirect github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d // indirect github.com/bgentry/speakeasy v0.1.1-0.20220910012023-760eaf8b6816 // indirect github.com/bits-and-blooms/bitset v1.13.0 // indirect + github.com/btcsuite/btcd v0.24.0 // indirect + github.com/btcsuite/btcd/btcutil v1.1.5 // indirect + github.com/btcsuite/btcd/chaincfg/chainhash v1.1.0 // indirect github.com/bufbuild/protocompile v0.9.0 // indirect github.com/bufbuild/protovalidate-go v0.6.0 // indirect github.com/bufbuild/protoyaml-go v0.1.8 // indirect - github.com/cenkalti/backoff/v4 v4.1.3 // indirect + github.com/cenkalti/backoff/v4 v4.2.1 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/chzyer/readline v1.5.1 // indirect github.com/cockroachdb/apd/v2 v2.0.2 // indirect @@ -96,9 +108,8 @@ require ( github.com/cockroachdb/pebble v1.1.1 // indirect github.com/cockroachdb/redact v1.1.5 // indirect github.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06 // indirect + github.com/coinbase/rosetta-sdk-go/types v1.0.0 // indirect github.com/cometbft/cometbft-db v0.12.0 // indirect - github.com/consensys/bavard v0.1.13 // indirect - github.com/consensys/gnark-crypto v0.12.1 // indirect github.com/containerd/stargz-snapshotter/estargz v0.15.1 // indirect github.com/cosmos/btcutil v1.0.5 // indirect github.com/cosmos/gogogateway v1.2.0 // indirect @@ -106,31 +117,36 @@ require ( github.com/cosmos/ics23/go v0.10.0 // indirect github.com/cosmos/interchain-security/v5 v5.1.1 // indirect github.com/cosmos/ledger-cosmos-go v0.13.3 // indirect + github.com/cosmos/rosetta v0.50.2 // indirect + github.com/cosmos/rosetta-sdk-go v0.10.0 // indirect github.com/cpuguy83/go-md2man/v2 v2.0.4 // indirect - github.com/crate-crypto/go-kzg-4844 v1.0.0 // indirect github.com/creachadair/atomicfile v0.3.1 // indirect github.com/creachadair/tomledit v0.0.24 // indirect github.com/danieljoos/wincred v1.2.1 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect + github.com/deckarep/golang-set v1.8.0 // indirect github.com/decred/dcrd/dcrec/secp256k1/v4 v4.2.0 // indirect github.com/desertbit/timer v0.0.0-20180107155436-c41aec40b27f // indirect github.com/dgraph-io/badger/v4 v4.2.0 // indirect github.com/dgraph-io/ristretto v0.1.1 // indirect github.com/distribution/reference v0.6.0 // indirect + github.com/dlclark/regexp2 v1.4.1-0.20201116162257-a2a8dda75c91 // indirect github.com/docker/cli v26.0.0+incompatible // indirect github.com/docker/distribution v2.8.3+incompatible // indirect github.com/docker/docker v26.1.4+incompatible // indirect github.com/docker/docker-credential-helpers v0.8.1 // indirect github.com/docker/go-connections v0.5.0 // indirect github.com/docker/go-units v0.5.0 // indirect + github.com/dop251/goja v0.0.0-20220405120441-9037c2b61cbf // indirect github.com/dustin/go-humanize v1.0.1 // indirect github.com/dvsekhvalnov/jose2go v1.7.0 // indirect + github.com/edsrzf/mmap-go v1.1.0 // indirect github.com/emicklei/dot v1.6.1 // indirect - github.com/ethereum/c-kzg-4844 v1.0.0 // indirect github.com/fatih/color v1.17.0 // indirect github.com/felixge/fgprof v0.9.4 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect github.com/fsnotify/fsnotify v1.7.0 // indirect + github.com/gballet/go-libpcsclite v0.0.0-20190607065134-2772fd86a8ff // indirect github.com/getsentry/sentry-go v0.27.0 // indirect github.com/ghodss/yaml v1.0.0 // indirect github.com/go-chi/chi/v5 v5.0.12 // indirect @@ -139,6 +155,9 @@ require ( github.com/go-logfmt/logfmt v0.6.0 // indirect github.com/go-logr/logr v1.4.1 // indirect github.com/go-logr/stdr v1.2.2 // indirect + github.com/go-ole/go-ole v1.3.0 // indirect + github.com/go-sourcemap/sourcemap v2.1.3+incompatible // indirect + github.com/go-stack/stack v1.8.1 // indirect github.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2 // indirect github.com/gofrs/uuid/v5 v5.0.0 // indirect github.com/gogo/googleapis v1.4.1 // indirect @@ -155,7 +174,7 @@ require ( github.com/google/go-containerregistry v0.19.1 // indirect github.com/google/gofuzz v1.2.0 // indirect github.com/google/orderedcode v0.0.1 // indirect - github.com/google/pprof v0.0.0-20240327155427-868f304927ed // indirect + github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6 // indirect github.com/google/s2a-go v0.1.7 // indirect github.com/google/uuid v1.6.0 // indirect github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect @@ -169,7 +188,7 @@ require ( github.com/hashicorp/go-hclog v1.5.0 // indirect github.com/hashicorp/go-immutable-radix v1.3.1 // indirect github.com/hashicorp/go-metrics v0.5.3 // indirect - github.com/hashicorp/go-plugin v1.5.2 // indirect + github.com/hashicorp/go-plugin v1.6.0 // indirect github.com/hashicorp/go-safetemp v1.0.0 // indirect github.com/hashicorp/go-version v1.7.0 // indirect github.com/hashicorp/golang-lru v1.0.2 // indirect @@ -177,10 +196,13 @@ require ( github.com/hashicorp/hcl v1.0.0 // indirect github.com/hashicorp/yamux v0.1.1 // indirect github.com/hdevalence/ed25519consensus v0.1.0 // indirect + github.com/holiman/bloomfilter/v2 v2.0.3 // indirect github.com/holiman/uint256 v1.3.0 // indirect github.com/huandu/skiplist v1.2.0 // indirect + github.com/huin/goupnp v1.3.0 // indirect github.com/improbable-eng/grpc-web v0.15.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect + github.com/jackpal/go-nat-pmp v1.0.2 // indirect github.com/jdx/go-netrc v1.0.0 // indirect github.com/jmespath/go-jmespath v0.4.0 // indirect github.com/jmhodges/levigo v1.0.0 // indirect @@ -190,22 +212,23 @@ require ( github.com/kr/text v0.2.0 // indirect github.com/labstack/gommon v0.4.2 // indirect github.com/lib/pq v1.10.9 // indirect - github.com/linxGnu/grocksdb v1.8.14 // indirect + github.com/linxGnu/grocksdb v1.9.1 // indirect github.com/magiconair/properties v1.8.7 // indirect github.com/manifoldco/promptui v0.9.0 // indirect github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.20 // indirect + github.com/mattn/go-runewidth v0.0.13 // indirect github.com/minio/highwayhash v1.0.2 // indirect github.com/mitchellh/go-homedir v1.1.0 // indirect github.com/mitchellh/go-testing-interface v1.14.1 // indirect github.com/mitchellh/mapstructure v1.5.0 // indirect - github.com/mmcloughlin/addchain v0.4.0 // indirect github.com/moby/docker-image-spec v1.3.1 // indirect github.com/moby/term v0.5.0 // indirect github.com/morikuni/aec v1.0.0 // indirect github.com/mtibben/percent v0.2.1 // indirect github.com/oasisprotocol/curve25519-voi v0.0.0-20230904125328-1f23a7beb09a // indirect github.com/oklog/run v1.1.0 // indirect + github.com/olekukonko/tablewriter v0.0.5 // indirect github.com/opencontainers/go-digest v1.0.0 // indirect github.com/opencontainers/image-spec v1.1.0 // indirect github.com/pelletier/go-toml/v2 v2.2.2 // indirect @@ -217,7 +240,11 @@ require ( github.com/prometheus/client_model v0.6.1 // indirect github.com/prometheus/common v0.52.2 // indirect github.com/prometheus/procfs v0.13.0 // indirect + github.com/prometheus/tsdb v0.10.0 // indirect + github.com/rakyll/statik v0.1.7 // indirect github.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475 // indirect + github.com/rivo/uniseg v0.2.0 // indirect + github.com/rjeczalik/notify v0.9.3 // indirect github.com/rogpeppe/go-internal v1.12.0 // indirect github.com/rs/cors v1.11.0 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect @@ -225,15 +252,23 @@ require ( github.com/sagikazarmark/slog-shim v0.1.0 // indirect github.com/sasha-s/go-deadlock v0.3.1 // indirect github.com/shamaton/msgpack/v2 v2.2.0 // indirect + github.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible // indirect github.com/sirupsen/logrus v1.9.3 // indirect github.com/sourcegraph/conc v0.3.0 // indirect github.com/spf13/afero v1.11.0 // indirect + github.com/status-im/keycard-go v0.2.0 // indirect github.com/stoewer/go-strcase v1.3.0 // indirect github.com/subosito/gotenv v1.6.0 // indirect - github.com/supranational/blst v0.3.11 // indirect github.com/syndtr/goleveldb v1.0.1-0.20220721030215-126854af5e6d // indirect github.com/tendermint/go-amino v0.16.0 // indirect github.com/tidwall/btree v1.7.0 // indirect + github.com/tidwall/gjson v1.17.1 // indirect + github.com/tidwall/match v1.1.1 // indirect + github.com/tidwall/pretty v1.2.0 // indirect + github.com/tidwall/sjson v1.2.5 // indirect + github.com/tklauser/go-sysconf v0.3.12 // indirect + github.com/tklauser/numcpus v0.6.1 // indirect + github.com/tyler-smith/go-bip39 v1.1.0 // indirect github.com/ulikunitz/xz v0.5.11 // indirect github.com/valyala/bytebufferpool v1.0.0 // indirect github.com/valyala/fasttemplate v1.2.2 // indirect @@ -267,11 +302,11 @@ require ( google.golang.org/genproto v0.0.0-20240227224415-6ceb2ff114de // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20240722135656-d784300faade // indirect gopkg.in/ini.v1 v1.67.0 // indirect + gopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect gotest.tools/v3 v3.5.1 // indirect - nhooyr.io/websocket v1.8.6 // indirect + nhooyr.io/websocket v1.8.10 // indirect pgregory.net/rapid v1.1.0 // indirect - rsc.io/tmplfunc v0.0.3 // indirect sigs.k8s.io/yaml v1.4.0 // indirect ) diff --git a/go.sum b/go.sum index f0d6a2ebd..ff6347b8a 100644 --- a/go.sum +++ b/go.sum @@ -194,8 +194,8 @@ cosmossdk.io/client/v2 v2.0.0-beta.4 h1:LGIzWbVTOof/IHQZeoWwxPX0fq607ONXhsfA7eUr cosmossdk.io/client/v2 v2.0.0-beta.4/go.mod h1:c753d0sBv3AQRx6X+BOKL1aGpKjZMTZAHGiLPbVi5TE= cosmossdk.io/collections v0.4.0 h1:PFmwj2W8szgpD5nOd8GWH6AbYNi1f2J6akWXJ7P5t9s= cosmossdk.io/collections v0.4.0/go.mod h1:oa5lUING2dP+gdDquow+QjlF45eL1t4TJDypgGd+tv0= -cosmossdk.io/core v0.11.1 h1:h9WfBey7NAiFfIcUhDVNS503I2P2HdZLebJlUIs8LPA= -cosmossdk.io/core v0.11.1/go.mod h1:OJzxcdC+RPrgGF8NJZR2uoQr56tc7gfBKhiKeDO7hH0= +cosmossdk.io/core v0.11.0 h1:vtIafqUi+1ZNAE/oxLOQQ7Oek2n4S48SWLG8h/+wdbo= +cosmossdk.io/core v0.11.0/go.mod h1:LaTtayWBSoacF5xNzoF8tmLhehqlA9z1SWiPuNC6X1w= cosmossdk.io/depinject v1.0.0 h1:dQaTu6+O6askNXO06+jyeUAnF2/ssKwrrszP9t5q050= cosmossdk.io/depinject v1.0.0/go.mod h1:zxK/h3HgHoA/eJVtiSsoaRaRA2D5U4cJ5thIG4ssbB8= cosmossdk.io/errors v1.0.1 h1:bzu+Kcr0kS/1DuPBtUFdWjzLqyUuCiyHjyJB6srBV/0= @@ -255,12 +255,15 @@ github.com/VividCortex/gohistogram v1.0.0 h1:6+hBz+qvs0JOrrNhhmR7lFxo5sINxBCGXrd github.com/VividCortex/gohistogram v1.0.0/go.mod h1:Pf5mBqqDxYaXu3hDrrU+w6nw50o/4+TcAqDqk/vUH7g= github.com/adlio/schema v1.3.3 h1:oBJn8I02PyTB466pZO1UZEn1TV5XLlifBSyMrmHl/1I= github.com/adlio/schema v1.3.3/go.mod h1:1EsRssiv9/Ce2CMzq5DoL7RiMshhuigQxrR4DMV9fHg= +github.com/aead/siphash v1.0.1/go.mod h1:Nywa3cDsYNNK3gaciGTWPwHt0wlpNV15vwmswBAUSII= github.com/afex/hystrix-go v0.0.0-20180502004556-fa1af6a1f4f5/go.mod h1:SkGFH1ia65gfNATL8TAiHDNxPzPdmEL5uirI2Uyuz6c= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= +github.com/allegro/bigcache v1.2.1-0.20190218064605-e24eb225f156 h1:eMwmnE/GDgah4HI848JfFxHt+iPb26b4zyfspmqY0/8= +github.com/allegro/bigcache v1.2.1-0.20190218064605-e24eb225f156/go.mod h1:Cb/ax3seSYIx7SuZdm2G2xzfwmv3TPSk2ucNfQESPXM= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/antlr4-go/antlr/v4 v4.13.0 h1:lxCg3LAv+EUK6t1i0y1V6/SLeUi0eKEKdhQAlS8TVTI= github.com/antlr4-go/antlr/v4 v4.13.0/go.mod h1:pfChB/xh/Unjila75QW7+VU4TSnWnnk9UTnmpPaOR2g= @@ -288,12 +291,32 @@ github.com/bgentry/speakeasy v0.1.1-0.20220910012023-760eaf8b6816 h1:41iFGWnSlI2 github.com/bgentry/speakeasy v0.1.1-0.20220910012023-760eaf8b6816/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= github.com/bits-and-blooms/bitset v1.13.0 h1:bAQ9OPNFYbGHV6Nez0tmNI0RiEu7/hxlYJRUA0wFAVE= github.com/bits-and-blooms/bitset v1.13.0/go.mod h1:7hO7Gc7Pp1vODcmWvKMRA9BNmbv6a/7QIWpPxHddWR8= +github.com/btcsuite/btcd v0.20.1-beta/go.mod h1:wVuoA8VJLEcwgqHBwHmzLRazpKxTv13Px/pDuV7OomQ= +github.com/btcsuite/btcd v0.22.0-beta.0.20220111032746-97732e52810c/go.mod h1:tjmYdS6MLJ5/s0Fj4DbLgSbDHbEqLJrtnHecBFkdz5M= +github.com/btcsuite/btcd v0.23.5-0.20231215221805-96c9fd8078fd/go.mod h1:nm3Bko6zh6bWP60UxwoT5LzdGJsQJaPo6HjduXq9p6A= +github.com/btcsuite/btcd v0.24.0 h1:gL3uHE/IaFj6fcZSu03SvqPMSx7s/dPzfpG/atRwWdo= +github.com/btcsuite/btcd v0.24.0/go.mod h1:K4IDc1593s8jKXIF7yS7yCTSxrknB9z0STzc2j6XgE4= +github.com/btcsuite/btcd/btcec/v2 v2.1.0/go.mod h1:2VzYrv4Gm4apmbVVsSq5bqf1Ec8v56E48Vt0Y/umPgA= +github.com/btcsuite/btcd/btcec/v2 v2.1.3/go.mod h1:ctjw4H1kknNJmRN4iP1R7bTQ+v3GJkZBd6mui8ZsAZE= github.com/btcsuite/btcd/btcec/v2 v2.3.2 h1:5n0X6hX0Zk+6omWcihdYvdAlGf2DfasC0GMf7DClJ3U= github.com/btcsuite/btcd/btcec/v2 v2.3.2/go.mod h1:zYzJ8etWJQIv1Ogk7OzpWjowwOdXY1W/17j2MW85J04= -github.com/btcsuite/btcd/btcutil v1.1.3 h1:xfbtw8lwpp0G6NwSHb+UE67ryTFHJAiNuipusjXSohQ= -github.com/btcsuite/btcd/btcutil v1.1.3/go.mod h1:UR7dsSJzJUfMmFiiLlIrMq1lS9jh9EdCV7FStZSnpi0= -github.com/btcsuite/btcd/chaincfg/chainhash v1.0.1 h1:q0rUy8C/TYNBQS1+CGKw68tLOFYSNEs0TFnxxnS9+4U= +github.com/btcsuite/btcd/btcutil v1.0.0/go.mod h1:Uoxwv0pqYWhD//tfTiipkxNfdhG9UrLwaeswfjfdF0A= +github.com/btcsuite/btcd/btcutil v1.1.0/go.mod h1:5OapHB7A2hBBWLm48mmw4MOHNJCcUBTwmWH/0Jn8VHE= +github.com/btcsuite/btcd/btcutil v1.1.5 h1:+wER79R5670vs/ZusMTF1yTcRYE5GUsFbdjdisflzM8= +github.com/btcsuite/btcd/btcutil v1.1.5/go.mod h1:PSZZ4UitpLBWzxGd5VGOrLnmOjtPP/a6HaFo12zMs00= +github.com/btcsuite/btcd/chaincfg/chainhash v1.0.0/go.mod h1:7SFka0XMvUgj3hfZtydOrQY2mwhPclbT2snogU7SQQc= github.com/btcsuite/btcd/chaincfg/chainhash v1.0.1/go.mod h1:7SFka0XMvUgj3hfZtydOrQY2mwhPclbT2snogU7SQQc= +github.com/btcsuite/btcd/chaincfg/chainhash v1.1.0 h1:59Kx4K6lzOW5w6nFlA0v5+lk/6sjybR934QNHSJZPTQ= +github.com/btcsuite/btcd/chaincfg/chainhash v1.1.0/go.mod h1:7SFka0XMvUgj3hfZtydOrQY2mwhPclbT2snogU7SQQc= +github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f/go.mod h1:TdznJufoqS23FtqVCzL0ZqgP5MqXbb4fg/WgDys70nA= +github.com/btcsuite/btcutil v0.0.0-20190425235716-9e5f4b9a998d/go.mod h1:+5NJ2+qvTyV9exUAL/rxXi3DcLg2Ts+ymUAY5y4NvMg= +github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd/go.mod h1:HHNXQzUsZCxOoE+CPiyCTO6x34Zs86zZUiwtpXoGdtg= +github.com/btcsuite/goleveldb v0.0.0-20160330041536-7834afc9e8cd/go.mod h1:F+uVaaLLH7j4eDXPRvw78tMflu7Ie2bzYOH4Y8rRKBY= +github.com/btcsuite/goleveldb v1.0.0/go.mod h1:QiK9vBlgftBg6rWQIj6wFzbPfRjiykIEhBH4obrXJ/I= +github.com/btcsuite/snappy-go v0.0.0-20151229074030-0bdef8d06723/go.mod h1:8woku9dyThutzjeg+3xrA5iCpBRH8XEEg3lh6TiUghc= +github.com/btcsuite/snappy-go v1.0.0/go.mod h1:8woku9dyThutzjeg+3xrA5iCpBRH8XEEg3lh6TiUghc= +github.com/btcsuite/websocket v0.0.0-20150119174127-31079b680792/go.mod h1:ghJtEyQwv5/p4Mg4C0fgbePVuGr935/5ddU9Z3TmDRY= +github.com/btcsuite/winsvc v1.0.0/go.mod h1:jsenWakMcC0zFBFurPLEAyrnc/teJEM1O46fmI40EZs= github.com/bufbuild/buf v1.30.1 h1:QFtanwsXodoGFAwzXFXGXpzBkb7N2u8ZDyA3jWB4Pbs= github.com/bufbuild/buf v1.30.1/go.mod h1:7W8DJnj76wQa55EA3z2CmDxS0/nsHh8FqtE00dyDAdA= github.com/bufbuild/protocompile v0.9.0 h1:DI8qLG5PEO0Mu1Oj51YFPqtx6I3qYXUAhJVJ/IzAVl0= @@ -308,11 +331,14 @@ github.com/casbin/casbin/v2 v2.1.2/go.mod h1:YcPU1XXisHhLzuxH9coDNf2FbKpjGlbCg3n github.com/cenkalti/backoff v2.2.1+incompatible h1:tNowT99t7UNflLxfYYSlKYsBpXdEet03Pg2g16Swow4= github.com/cenkalti/backoff v2.2.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QHaoyV4aDUVVkXQJJJ3NXXM= github.com/cenkalti/backoff/v4 v4.1.1/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw= -github.com/cenkalti/backoff/v4 v4.1.3 h1:cFAlzYUlVYDysBEH2T5hyJZMh3+5+WCBvSnK6Q8UtC4= -github.com/cenkalti/backoff/v4 v4.1.3/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw= +github.com/cenkalti/backoff/v4 v4.2.1 h1:y4OZtCnogmCPw98Zjyt5a6+QwPLGkiQsYW5oUqylYbM= +github.com/cenkalti/backoff/v4 v4.2.1/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/cespare/cp v0.1.0 h1:SE+dxFebS7Iik5LK0tsi1k9ZCxEaFX4AjQmoyA+1dJk= +github.com/cespare/cp v0.1.0/go.mod h1:SOGHArjBr4JWaSDEVpWpo/hNg6RoKrls6Oh40hiwW+s= github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cheggaaa/pb v1.0.27/go.mod h1:pQciLPpbU0oxA0h+VJYYLxO+XeDQb5pZijXscXHm81s= @@ -359,14 +385,12 @@ github.com/cockroachdb/redact v1.1.5/go.mod h1:BVNblN9mBWFyMyqK1k3AAiSxhvhfK2oOZ github.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06 h1:zuQyyAKVxetITBuuhv3BI9cMrmStnpT18zmgmTxunpo= github.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06/go.mod h1:7nc4anLGjupUW/PeY5qiNYsdNXj7zopG+eqsS7To5IQ= github.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd/go.mod h1:sE/e/2PUdi/liOCUjSTXgM1o87ZssimdTWN964YiIeI= +github.com/coinbase/rosetta-sdk-go/types v1.0.0 h1:jpVIwLcPoOeCR6o1tU+Xv7r5bMONNbHU7MuEHboiFuA= +github.com/coinbase/rosetta-sdk-go/types v1.0.0/go.mod h1:eq7W2TMRH22GTW0N0beDnN931DW0/WOI1R2sdHNHG4c= github.com/cometbft/cometbft v0.38.11 h1:6bNDUB8/xq4uYonYwIfGc9OqK1ZH4NkdaMmR1LZIJqk= github.com/cometbft/cometbft v0.38.11/go.mod h1:jHPx9vQpWzPHEAiYI/7EDKaB1NXhK6o3SArrrY8ExKc= github.com/cometbft/cometbft-db v0.12.0 h1:v77/z0VyfSU7k682IzZeZPFZrQAKiQwkqGN0QzAjMi0= github.com/cometbft/cometbft-db v0.12.0/go.mod h1:aX2NbCrjNVd2ZajYxt1BsiFf/Z+TQ2MN0VxdicheYuw= -github.com/consensys/bavard v0.1.13 h1:oLhMLOFGTLdlda/kma4VOJazblc7IM5y5QPd2A/YjhQ= -github.com/consensys/bavard v0.1.13/go.mod h1:9ItSMtA/dXMAiL7BG6bqW2m3NdSEObYWoH223nGHukI= -github.com/consensys/gnark-crypto v0.12.1 h1:lHH39WuuFgVHONRl3J0LRBtuYdQTumFSDtJF7HpyG8M= -github.com/consensys/gnark-crypto v0.12.1/go.mod h1:v2Gy7L/4ZRosZ7Ivs+9SfUDr0f5UlG+EM5t7MPHiLuY= github.com/containerd/continuity v0.3.0 h1:nisirsYROK15TAMVukJOUyGJjz4BNQJBVsNvAXZJ/eg= github.com/containerd/continuity v0.3.0/go.mod h1:wJEAIwKOm/pBZuBd0JmeTvnLquTB1Ag8espWhkykbPM= github.com/containerd/log v0.1.0 h1:TCJt7ioM2cr/tfR8GPbGf9/VRAX8D2B4PjzCpfX540I= @@ -383,8 +407,6 @@ github.com/cosmos/cosmos-db v1.0.2 h1:hwMjozuY1OlJs/uh6vddqnk9j7VamLv+0DBlbEXbAK github.com/cosmos/cosmos-db v1.0.2/go.mod h1:Z8IXcFJ9PqKK6BIsVOB3QXtkKoqUOp1vRvPT39kOXEA= github.com/cosmos/cosmos-proto v1.0.0-beta.5 h1:eNcayDLpip+zVLRLYafhzLvQlSmyab+RC5W7ZfmxJLA= github.com/cosmos/cosmos-proto v1.0.0-beta.5/go.mod h1:hQGLpiIUloJBMdQMMWb/4wRApmI9hjHH05nefC0Ojec= -github.com/cosmos/cosmos-sdk v0.50.9 h1:gt2usjz0H0qW6KwAxWw7ZJ3XU8uDwmhN+hYG3nTLeSg= -github.com/cosmos/cosmos-sdk v0.50.9/go.mod h1:TMH6wpoYBcg7Cp5BEg8fneLr+8XloNQkf2MRNF9V6JE= github.com/cosmos/go-bip39 v1.0.0 h1:pcomnQdrdH22njcAatO0yWojsUnCO3y2tNoV1cb6hHY= github.com/cosmos/go-bip39 v1.0.0/go.mod h1:RNJv0H/pOIVgxw6KS7QeX2a0Uo0aKUlfhZ4xuwvCdJw= github.com/cosmos/gogogateway v1.2.0 h1:Ae/OivNhp8DqBi/sh2A8a1D0y638GpL3tkmLQAiKxTE= @@ -406,13 +428,13 @@ github.com/cosmos/interchain-security/v5 v5.1.1 h1:xmRRMeE4xoc+JAZUh0XzXFYWaGBtz github.com/cosmos/interchain-security/v5 v5.1.1/go.mod h1:vmeTcTxFCl1eV0o6xpl/IRT7Basz0szVVGzbppnInMg= github.com/cosmos/ledger-cosmos-go v0.13.3 h1:7ehuBGuyIytsXbd4MP43mLeoN2LTOEnk5nvue4rK+yM= github.com/cosmos/ledger-cosmos-go v0.13.3/go.mod h1:HENcEP+VtahZFw38HZ3+LS3Iv5XV6svsnkk9vdJtLr8= +github.com/cosmos/rosetta v0.50.2 h1:D2YazWBdv33GBS9nPWMi6umTDMGBu1iC+7j3EQz3EFU= +github.com/cosmos/rosetta v0.50.2/go.mod h1:L8OeVjrQ1kLRNv1BaXmU96fgdArUNWNvlEDez3iQbGs= +github.com/cosmos/rosetta-sdk-go v0.10.0 h1:E5RhTruuoA7KTIXUcMicL76cffyeoyvNybzUGSKFTcM= +github.com/cosmos/rosetta-sdk-go v0.10.0/go.mod h1:SImAZkb96YbwvoRkzSMQB6noNJXFgWl/ENIznEoYQI4= github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= github.com/cpuguy83/go-md2man/v2 v2.0.4 h1:wfIWP927BUkWJb2NmU/kNDYIBTh/ziUX91+lVfRxZq4= github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= -github.com/crate-crypto/go-ipa v0.0.0-20240223125850-b1e8a79f509c h1:uQYC5Z1mdLRPrZhHjHxufI8+2UG/i25QG92j0Er9p6I= -github.com/crate-crypto/go-ipa v0.0.0-20240223125850-b1e8a79f509c/go.mod h1:geZJZH3SzKCqnz5VT0q/DyIG/tvu/dZk+VIfXicupJs= -github.com/crate-crypto/go-kzg-4844 v1.0.0 h1:TsSgHwrkTKecKJ4kadtHi4b3xHW5dCFUDFnUp1TsawI= -github.com/crate-crypto/go-kzg-4844 v1.0.0/go.mod h1:1kMhvPgI0Ky3yIa+9lFySEBUBXkYxeOi8ZF1sYioxhc= github.com/creachadair/atomicfile v0.3.1 h1:yQORkHjSYySh/tv5th1dkKcn02NEW5JleB84sjt+W4Q= github.com/creachadair/atomicfile v0.3.1/go.mod h1:mwfrkRxFKwpNAflYZzytbSwxvbK6fdGRRlp0KEQc0qU= github.com/creachadair/tomledit v0.0.24 h1:5Xjr25R2esu1rKCbQEmjZYlrhFkDspoAbAKb6QKQDhQ= @@ -423,14 +445,20 @@ github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY= github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4= github.com/danieljoos/wincred v1.2.1 h1:dl9cBrupW8+r5250DYkYxocLeZ1Y4vB1kxgtjxw8GQs= github.com/danieljoos/wincred v1.2.1/go.mod h1:uGaFL9fDn3OLTvzCGulzE+SzjEe5NGlh5FdCcyfPwps= +github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/deckarep/golang-set v1.8.0 h1:sk9/l/KqpunDwP7pSjUg0keiOOLEnOBHzykLrsPppp4= +github.com/deckarep/golang-set v1.8.0/go.mod h1:5nI87KwE7wgsBU1F4GKAw2Qod7p5kyS383rP6+o6qqo= +github.com/decred/dcrd/crypto/blake256 v1.0.0/go.mod h1:sQl2p6Y26YV+ZOcSTP6thNdn47hh8kt6rqSlvmrXFAc= github.com/decred/dcrd/crypto/blake256 v1.0.1 h1:7PltbUIQB7u/FfZ39+DGa/ShuMyJ5ilcvdfma9wOH6Y= github.com/decred/dcrd/crypto/blake256 v1.0.1/go.mod h1:2OfgNZ5wDpcsFmHmCK5gZTPcCXqlm2ArzUIkw9czNJo= +github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1/go.mod h1:hyedUtir6IdtD/7lIxGeCxkaw7y45JueMRL4DIyJDKs= github.com/decred/dcrd/dcrec/secp256k1/v4 v4.2.0 h1:8UrgZ3GkP4i/CLijOJx79Yu+etlyjdBU4sfcs2WYQMs= github.com/decred/dcrd/dcrec/secp256k1/v4 v4.2.0/go.mod h1:v57UDF4pDQJcEfFUCRop3lJL149eHGSe9Jvczhzjo/0= +github.com/decred/dcrd/lru v1.0.0/go.mod h1:mxKOwFd7lFjN2GZYsiz/ecgqR6kkYAl+0pz0tEMk218= github.com/desertbit/timer v0.0.0-20180107155436-c41aec40b27f h1:U5y3Y5UE0w7amNe7Z5G/twsBW0KEalRQXZzf8ufSh9I= github.com/desertbit/timer v0.0.0-20180107155436-c41aec40b27f/go.mod h1:xH/i4TFMt8koVQZ6WFms69WAsDWr2XsYL3Hkl7jkoLE= github.com/dgraph-io/badger/v4 v4.2.0 h1:kJrlajbXXL9DFTNuhhu9yCx7JJa4qpYWxtE8BzuWsEs= @@ -441,8 +469,11 @@ github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZm github.com/dgryski/go-farm v0.0.0-20190423205320-6a90982ecee2/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw= github.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13 h1:fAjc9m62+UWV/WAFKLNi6ZS0675eEUC9y3AlwSbQu1Y= github.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw= +github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no= github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= +github.com/dlclark/regexp2 v1.4.1-0.20201116162257-a2a8dda75c91 h1:Izz0+t1Z5nI16/II7vuEo/nHjodOg0p7+OiDpjX5t1E= +github.com/dlclark/regexp2 v1.4.1-0.20201116162257-a2a8dda75c91/go.mod h1:2pZnwuY/m+8K6iRw6wQdMtk+rH5tNGR1i55kozfMjCc= github.com/docker/cli v26.0.0+incompatible h1:90BKrx1a1HKYpSnnBFR6AgDq/FqkHxwlUyzJVPxD30I= github.com/docker/cli v26.0.0+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= github.com/docker/distribution v2.8.3+incompatible h1:AtKxIZ36LoNK51+Z6RpzLpddBirtxJnzDrHLEKxTAYk= @@ -455,6 +486,9 @@ github.com/docker/go-connections v0.5.0 h1:USnMq7hx7gwdVZq1L49hLXaFtUdTADjXGp+uj github.com/docker/go-connections v0.5.0/go.mod h1:ov60Kzw0kKElRwhNs9UlUHAE/F9Fe6GLaXnqyDdmEXc= github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/dop251/goja v0.0.0-20220405120441-9037c2b61cbf h1:Yt+4K30SdjOkRoRRm3vYNQgR+/ZIy0RmeUDZo7Y8zeQ= +github.com/dop251/goja v0.0.0-20220405120441-9037c2b61cbf/go.mod h1:R9ET47fwRVRPZnOGvHxxhuZcbrMCuiqOz3Rlrh4KSnk= +github.com/dop251/goja_nodejs v0.0.0-20210225215109-d91c329300e7/go.mod h1:hn7BA7c8pLvoGndExHudxTDKZ84Pyvv+90pbBjbTz0Y= github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= @@ -465,6 +499,8 @@ github.com/eapache/go-resiliency v1.1.0/go.mod h1:kFI+JgMyC7bLPUVY133qvEBtVayf5m github.com/eapache/go-xerial-snappy v0.0.0-20180814174437-776d5712da21/go.mod h1:+020luEh2TKB4/GOp8oxxtq0Daoen/Cii55CzbTV6DU= github.com/eapache/queue v1.1.0/go.mod h1:6eCeP0CKFpHLu8blIFXhExK/dRa7WDZfr6jVFPTqq+I= github.com/edsrzf/mmap-go v1.0.0/go.mod h1:YO35OhQPt3KJa3ryjFM5Bs14WD66h8eGKpfaBNrHW5M= +github.com/edsrzf/mmap-go v1.1.0 h1:6EUwBLQ/Mcr1EYLE4Tn1VdW1A4ckqCQWZBw8Hr0kjpQ= +github.com/edsrzf/mmap-go v1.1.0/go.mod h1:19H/e8pUPLicwkyNgOykDXkJ9F0MHE+Z52B8EIth78Q= github.com/emicklei/dot v1.6.1 h1:ujpDlBkkwgWUY+qPId5IwapRW/xEoligRSYjioR6DFI= github.com/emicklei/dot v1.6.1/go.mod h1:DeV7GvQtIw4h2u73RKBkkFdvVAz0D9fzeJrgPW6gy/s= github.com/envoyproxy/go-control-plane v0.6.9/go.mod h1:SBwIajubJHhxtWwsL9s8ss4safvEdbitLhGGK48rN6g= @@ -480,12 +516,8 @@ github.com/envoyproxy/go-control-plane v0.10.2-0.20220325020618-49ff273808a1/go. github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/envoyproxy/protoc-gen-validate v1.0.4 h1:gVPz/FMfvh57HdSJQyvBtF00j8JU4zdyUgIUNhlgg0A= github.com/envoyproxy/protoc-gen-validate v1.0.4/go.mod h1:qys6tmnRsYrQqIhm2bvKZH4Blx/1gTIZ2UKVY1M+Yew= -github.com/ethereum/c-kzg-4844 v1.0.0 h1:0X1LBXxaEtYD9xsyj9B9ctQEZIpnvVDeoBx8aHEwTNA= -github.com/ethereum/c-kzg-4844 v1.0.0/go.mod h1:VewdlzQmpT5QSrVhbBuGoCdFJkpaJlO1aQputP83wc0= -github.com/ethereum/go-ethereum v1.14.7 h1:EHpv3dE8evQmpVEQ/Ne2ahB06n2mQptdwqaMNhAT29g= -github.com/ethereum/go-ethereum v1.14.7/go.mod h1:Mq0biU2jbdmKSZoqOj29017ygFrMnB5/Rifwp980W4o= -github.com/ethereum/go-verkle v0.1.1-0.20240306133620-7d920df305f0 h1:KrE8I4reeVvf7C1tm8elRjj4BdscTYzz/WAbYyf/JI4= -github.com/ethereum/go-verkle v0.1.1-0.20240306133620-7d920df305f0/go.mod h1:D9AJLVXSyZQXJQVk8oh1EwjISE+sJTn2duYIZC0dy3w= +github.com/evmos/evmos/v18 v18.0.0-20240719123340-11b5d80cf7bb h1:n0xXv0n3iaYkoiaBAMx++84P8rTwNcz37woX8RRNqQY= +github.com/evmos/evmos/v18 v18.0.0-20240719123340-11b5d80cf7bb/go.mod h1:v3Tp8b4fPj06Uasw2MJwpIms+Y01qLwGelHuFZCQfNg= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4= @@ -495,6 +527,8 @@ github.com/felixge/fgprof v0.9.4 h1:ocDNwMFlnA0NU0zSB3I52xkO4sFXk80VK9lXjLClu88= github.com/felixge/fgprof v0.9.4/go.mod h1:yKl+ERSa++RYOs32d8K6WEXCB4uXdLls4ZaZPpayhMM= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= +github.com/fjl/memsize v0.0.0-20190710130421-bcb5799ab5e5 h1:FtmdgXiUlNeRsoNMFlKLDt+S+6hbjVMEW6RGQ7aUf7c= +github.com/fjl/memsize v0.0.0-20190710130421-bcb5799ab5e5/go.mod h1:VvhXpOYNQvB+uIk2RvXzuaQtkQJzzIx6lSBe1xv7hi0= github.com/fortytw2/leaktest v1.3.0 h1:u8491cBMTQ8ft8aeV+adlcytMZylmA5nnwwkRZjI8vw= github.com/fortytw2/leaktest v1.3.0/go.mod h1:jDsjWgpAGjm2CA7WthBh/CdZYEPF31XHquHwclZch5g= github.com/franela/goblin v0.0.0-20200105215937-c9ffbefa60db/go.mod h1:7dvUGVsVBjqR7JHJk0brhHOZYGmfBYOrK0ZhYMEtBr4= @@ -505,13 +539,13 @@ github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMo github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA= github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM= +github.com/gballet/go-libpcsclite v0.0.0-20190607065134-2772fd86a8ff h1:tY80oXqGNY4FhTFhk+o9oFHGINQ/+vhlm8HFzi6znCI= +github.com/gballet/go-libpcsclite v0.0.0-20190607065134-2772fd86a8ff/go.mod h1:x7DCsMOv1taUwEWCzT4cmDeAkigA5/QCwUodaVOe8Ww= github.com/getsentry/sentry-go v0.27.0 h1:Pv98CIbtB3LkMWmXi4Joa5OOcwbmnX88sF5qbK3r3Ps= github.com/getsentry/sentry-go v0.27.0/go.mod h1:lc76E2QywIyW8WuBnwl8Lc4bkmQH4+w1gwTf25trprY= github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= -github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE= github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI= -github.com/gin-gonic/gin v1.7.0 h1:jGB9xAJQ12AIGNB4HguylppmDK1Am9ppF7XnGXXJuoU= github.com/gin-gonic/gin v1.7.0/go.mod h1:jD2toBW3GZUr5UMcdrwQA10I7RuaFOl/SGeDjXkfUtY= github.com/go-chi/chi/v5 v5.0.12 h1:9euLV5sTrTNTRUU9POmDUvfxyj6LAABLUcEWO+JJb4s= github.com/go-chi/chi/v5 v5.0.12/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8= @@ -538,28 +572,26 @@ github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= +github.com/go-ole/go-ole v1.2.5/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0= github.com/go-ole/go-ole v1.3.0 h1:Dt6ye7+vXGIKZ7Xtk4s6/xVdGDQynvom7xCFEdWr6uE= github.com/go-ole/go-ole v1.3.0/go.mod h1:5LS6F96DhAwUc7C+1HLexzMXY1xGRSryjyPPKW6zv78= github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= github.com/go-playground/locales v0.13.0/go.mod h1:taPMhCMXrRLJO55olJkUXHZBHCxTMfnGwq/HNwmWNS8= -github.com/go-playground/locales v0.14.0 h1:u50s323jtVGugKlcYeyzC0etD1HifMjqmJqb8WugfUU= -github.com/go-playground/locales v0.14.0/go.mod h1:sawfccIbzZTqEDETgFXqTho0QybSa7l++s0DH+LDiLs= github.com/go-playground/universal-translator v0.17.0/go.mod h1:UkSxE5sNxxRwHyU+Scu5vgOQjsIJAF8j9muTVoKLVtA= -github.com/go-playground/universal-translator v0.18.0 h1:82dyy6p4OuJq4/CByFNOn/jYrnRPArHwAcmLoJZxyho= -github.com/go-playground/universal-translator v0.18.0/go.mod h1:UvRDBj+xPUEGrFYl+lu/H90nyDXpg0fqeB/AQUGNTVA= github.com/go-playground/validator/v10 v10.4.1/go.mod h1:nlOn6nFhuKACm19sB/8EGNn9GlaMV7XkbRSipzJ0Ii4= -github.com/go-playground/validator/v10 v10.11.1 h1:prmOlTVv+YjZjmRmNSF3VmspqJIxJWXmqUsHwfTRRkQ= -github.com/go-playground/validator/v10 v10.11.1/go.mod h1:i+3WkQ1FvaUjjxh1kSvIA4dMGDBiPU55YFDl0WbKdWU= +github.com/go-sourcemap/sourcemap v2.1.3+incompatible h1:W1iEw64niKVGogNgBN3ePyLFfuisuzeidWPMPWmECqU= +github.com/go-sourcemap/sourcemap v2.1.3+incompatible/go.mod h1:F8jJfvm2KbVjc5NqelyYJmf/v5J0dwNLS2mL4sNA1Jg= github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= +github.com/go-stack/stack v1.8.1 h1:ntEHSVwIt7PNXNpgPmVfMrNhLtgjlmnZha2kOpuRiDw= +github.com/go-stack/stack v1.8.1/go.mod h1:dcoOX6HbPZSZptuspn9bctJ+N/CnF5gGygcUP3XYfe4= +github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI= +github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= github.com/gobwas/httphead v0.0.0-20180130184737-2c6c146eadee/go.mod h1:L0fX3K22YWvt/FAX9NnzrNzcI4wNYi9Yku4O0LKYflo= -github.com/gobwas/httphead v0.1.0 h1:exrUm0f4YX0L7EBwZHuCF4GDp8aJfVeBrlLQrs6NqWU= github.com/gobwas/httphead v0.1.0/go.mod h1:O/RXo79gxV8G+RqlR/otEwx4Q36zl9rqC5u12GKvMCM= github.com/gobwas/pool v0.2.0/go.mod h1:q8bcK0KcYlCgd9e7WYLm9LpyS+YeLd8JVDW6WezmKEw= -github.com/gobwas/pool v0.2.1 h1:xfeeEhW7pwmX8nuLVlqbzVc7udMDrwetjEv+TZIz1og= github.com/gobwas/pool v0.2.1/go.mod h1:q8bcK0KcYlCgd9e7WYLm9LpyS+YeLd8JVDW6WezmKEw= github.com/gobwas/ws v1.0.2/go.mod h1:szmBTxLgaFppYjEmNtny/v3w89xOydFnnZMcgRRu/EM= -github.com/gobwas/ws v1.2.1 h1:F2aeBZrm2NDsc7vbovKrWSogd4wvfAxg0FQ89/iqOTk= github.com/gobwas/ws v1.2.1/go.mod h1:hRKAFb8wOxFROYNsT1bqfWnhX+b5MFeJM9r2ZSwg/KY= github.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2 h1:ZpnhV/YsD2/4cESfV5+Hoeu/iUR3ruzNvZ+yQfO03a0= github.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2/go.mod h1:bBOAhwG1umN6/6ZUMtDFBMQR8jRg9O75tm9K00oMsK4= @@ -580,6 +612,8 @@ github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang-jwt/jwt v3.2.2+incompatible h1:IfV12K8xAKAnZqdXVzCZ+TOjboZ2keLg81eXfW3O+oY= github.com/golang-jwt/jwt v3.2.2+incompatible/go.mod h1:8pz2t5EyA70fFQQSrl6XZXzqecmYZeUEB8OUGHkxJ+I= +github.com/golang-jwt/jwt/v4 v4.3.0 h1:kHL1vqdqWNfATmA0FNMdmZNMyZI1U6O31X4rlIPoBog= +github.com/golang-jwt/jwt/v4 v4.3.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/glog v1.2.1 h1:OptwRhECazUx5ix5TTWC3EZhsZEHWcYWY4FQHTIubm4= github.com/golang/glog v1.2.1/go.mod h1:6AhwSGph0fcJtXVM/PEHPqZlFeoLxhs7/t5UDAwmO+w= @@ -620,6 +654,7 @@ github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiu github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/golang/snappy v0.0.5-0.20220116011046-fa5810519dcb h1:PBC98N2aIaM3XXiurYmW7fx4GZkL8feAMVq7nEjURHk= @@ -680,12 +715,11 @@ github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLe github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20211214055906-6f57359322fd/go.mod h1:KgnwoLYCZ8IQu3XUZ8Nc/bM9CCZFOyjUNOSygVozoDg= github.com/google/pprof v0.0.0-20240227163752-401108e1b7e7/go.mod h1:czg5+yv1E0ZGTi6S6vVK1mke0fV+FaUhNGcd6VRS9Ik= -github.com/google/pprof v0.0.0-20240327155427-868f304927ed h1:n8QtJTrwsv3P7dNxPaMeNkMcxvUpqocsHLr8iDLGlQI= -github.com/google/pprof v0.0.0-20240327155427-868f304927ed/go.mod h1:kf6iHlnVGwgKolg33glAes7Yg/8iWP8ukqeldJSO7jw= +github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6 h1:k7nVchz72niMH6YLQNvHSdIE7iqsQxK1P41mySCvssg= +github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6/go.mod h1:kf6iHlnVGwgKolg33glAes7Yg/8iWP8ukqeldJSO7jw= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/s2a-go v0.1.7 h1:60BLSyTrOV4/haCDW4zb1guZItoSq8foHCXrAnjBo/o= github.com/google/s2a-go v0.1.7/go.mod h1:50CgR4k1jNlWBu4UfS4AcfhVe1r6pdZPygJ3R8F0Qdw= -github.com/google/subcommands v1.2.0/go.mod h1:ZjhPrFU+Olkh9WazFPsl27BQ4UPiG37m3yTrtFlrHVk= github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -718,6 +752,7 @@ github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY= github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ= github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= github.com/gorilla/websocket v1.4.1/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/gorilla/websocket v1.5.0/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/gorilla/websocket v1.5.3 h1:saDtZ6Pbx/0u+bgYQ3q96pZgCzfhKXGPqt7kZ72aNNg= github.com/gorilla/websocket v1.5.3/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= @@ -735,6 +770,8 @@ github.com/gsterjov/go-libsecret v0.0.0-20161001094733-a6f4afe4910c/go.mod h1:NM github.com/hashicorp/consul/api v1.3.0/go.mod h1:MmDNSzIMUjNpY/mQ398R4bk2FnqQLoPndWW5VkKPlCE= github.com/hashicorp/consul/sdk v0.3.0/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/go-bexpr v0.1.10 h1:9kuI5PFotCboP3dkDYFr/wi0gg0QVbSNz5oFRpxn4uE= +github.com/hashicorp/go-bexpr v0.1.10/go.mod h1:oxlubA2vC/gFVfX1A6JGp7ls7uCDlfJn732ehYYg+g0= github.com/hashicorp/go-cleanhttp v0.5.0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= github.com/hashicorp/go-cleanhttp v0.5.2 h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9neXJWAZQ= @@ -750,8 +787,8 @@ github.com/hashicorp/go-metrics v0.5.3 h1:M5uADWMOGCTUNU1YuC4hfknOeHNaX54LDm4oYS github.com/hashicorp/go-metrics v0.5.3/go.mod h1:KEjodfebIOuBYSAe/bHTm+HChmKSxAOXPBieMLYozDE= github.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= -github.com/hashicorp/go-plugin v1.5.2 h1:aWv8eimFqWlsEiMrYZdPYl+FdHaBJSN4AWwGWfT1G2Y= -github.com/hashicorp/go-plugin v1.5.2/go.mod h1:w1sAEES3g3PuV/RzUrgow20W2uErMly84hhD3um1WL4= +github.com/hashicorp/go-plugin v1.6.0 h1:wgd4KxHJTVGGqWBq4QPB1i5BZNEx9BR8+OFmHDmTk8A= +github.com/hashicorp/go-plugin v1.6.0/go.mod h1:lBS5MtSSBZk0SHc66KACcjjlU6WzEVP/8pwz68aMkCI= github.com/hashicorp/go-retryablehttp v0.5.3/go.mod h1:9B5zBasrRhHXnJnui7y6sL7es7NDiJgTc6Er0maI1Xs= github.com/hashicorp/go-rootcerts v1.0.0/go.mod h1:K6zTfqpRlCUIjkwsN4Z+hiSfzSTQa6eBIzfwKfwNnHU= github.com/hashicorp/go-safetemp v1.0.0 h1:2HR189eFNrjHQyENnQMMpCiBAsRxzbTMIgBhEyExpmo= @@ -783,6 +820,8 @@ github.com/hashicorp/yamux v0.1.1 h1:yrQxtgseBDrq9Y652vSRDvsKCJKOUD+GzTS4Y0Y8pvE github.com/hashicorp/yamux v0.1.1/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ= github.com/hdevalence/ed25519consensus v0.1.0 h1:jtBwzzcHuTmFrQN6xQZn6CQEO/V9f7HsjsjeEZ6auqU= github.com/hdevalence/ed25519consensus v0.1.0/go.mod h1:w3BHWjwJbFU29IRHL1Iqkw3sus+7FctEyM4RqDxYNzo= +github.com/holiman/bloomfilter/v2 v2.0.3 h1:73e0e/V0tCydx14a0SCYS/EWCxgwLZ18CZcZKVu0fao= +github.com/holiman/bloomfilter/v2 v2.0.3/go.mod h1:zpoh+gs7qcpqrHr3dB55AMiJwo0iURXE7ZOP9L9hSkA= github.com/holiman/uint256 v1.3.0 h1:4wdcm/tnd0xXdu7iS3ruNvxkWwrb4aeBQv19ayYn8F4= github.com/holiman/uint256 v1.3.0/go.mod h1:EOMSn4q6Nyt9P6efbI3bueV4e1b3dGlUCXeiRV4ng7E= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= @@ -791,6 +830,8 @@ github.com/huandu/go-assert v1.1.5/go.mod h1:yOLvuqZwmcHIC5rIzrBhT7D3Q9c3GFnd0Jr github.com/huandu/skiplist v1.2.0 h1:gox56QD77HzSC0w+Ws3MH3iie755GBJU1OER3h5VsYw= github.com/huandu/skiplist v1.2.0/go.mod h1:7v3iFjLcSAzO4fN5B8dvebvo/qsfumiLiDXMrPiHF9w= github.com/hudl/fargo v1.3.0/go.mod h1:y3CKSmjA+wD2gak7sUSXTAoopbhU08POFhmITJgmKTg= +github.com/huin/goupnp v1.3.0 h1:UvLUlWDNpoUdYzb2TCn+MuTWtcjXKSza2n6CBdQ0xXc= +github.com/huin/goupnp v1.3.0/go.mod h1:gnGPsThkYa7bFi/KWmEysQRf48l2dvR5bxr2OFckNX8= github.com/iancoleman/strcase v0.3.0 h1:nTXanmYxhfFAMjZL34Ov6gkzEsSJZ5DbhxWjvSASxEI= github.com/iancoleman/strcase v0.3.0/go.mod h1:iwCmte+B7n89clKwxIoIXy/HfoL7AsD47ZCWhYzw7ho= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= @@ -803,8 +844,12 @@ github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANyt github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/influxdata/influxdb1-client v0.0.0-20191209144304-8bf82d3c094d/go.mod h1:qj24IKcXYK6Iy9ceXlo3Tc+vtHo9lIhSX5JddghvEPo= +github.com/jackpal/go-nat-pmp v1.0.2 h1:KzKSgb7qkJvOUTqYl9/Hg/me3pWgBmERKrTGD7BdWus= +github.com/jackpal/go-nat-pmp v1.0.2/go.mod h1:QPH045xvCAeXUZOxsnwmrtiCoxIr9eob+4orBN1SBKc= github.com/jdx/go-netrc v1.0.0 h1:QbLMLyCZGj0NA8glAhxUpf1zDg6cxnWgMBbjq40W0gQ= github.com/jdx/go-netrc v1.0.0/go.mod h1:Gh9eFQJnoTNIRHXl2j5bJXA1u84hQWJWgGh569zF3v8= +github.com/jessevdk/go-flags v0.0.0-20141203071132-1679536dcc89/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= +github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= github.com/jhump/protoreflect v1.15.6 h1:WMYJbw2Wo+KOWwZFvgY0jMoVHM6i4XIvRs2RcBj5VmI= github.com/jhump/protoreflect v1.15.6/go.mod h1:jCHoyYQIJnaabEYnbGwyo9hUqfyUMTbJw/tAut5t97E= github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= @@ -817,13 +862,12 @@ github.com/jmhodges/levigo v1.0.0/go.mod h1:Q6Qx+uH3RAqyK4rFQroq9RL7mdkABMcfhEI+ github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= +github.com/jrick/logrotate v1.0.0/go.mod h1:LNinyqDIJnpAur+b8yyulnQw/wDuN1+BYKlTRt3OuAQ= github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.8/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= -github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= -github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= @@ -833,6 +877,7 @@ github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvW github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/kkdai/bstream v0.0.0-20161212061736-f391b8402d23/go.mod h1:J+Gs4SYgM6CZQHDETBtE9HaSEkGmuNXF86RwHhHUvq4= github.com/klauspost/compress v1.10.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= github.com/klauspost/compress v1.11.7/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= github.com/klauspost/compress v1.15.11/go.mod h1:QPwzmACJjUTFsnSHH934V6woptycfrDDJnH7hvFVbGM= @@ -844,30 +889,25 @@ github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxv github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= -github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= github.com/labstack/echo/v4 v4.12.0 h1:IKpw49IMryVB2p1a4dzwlhP1O2Tf2E0Ir/450lH+kI0= github.com/labstack/echo/v4 v4.12.0/go.mod h1:UP9Cr2DJXbOK3Kr9ONYzNowSh7HP0aG0ShAyycHSJvM= github.com/labstack/gommon v0.4.2 h1:F8qTUNXgG1+6WQmqoUWnz8WiEU60mXVVw0P4ht1WRA0= github.com/labstack/gommon v0.4.2/go.mod h1:QlUFxVM+SNXhDL/Z7YhocGIBYOiwB0mXm1+1bAPHPyU= -github.com/leanovate/gopter v0.2.9 h1:fQjYxZaynp97ozCzfOyOuAGOU4aU/z37zf/tOujFk7c= -github.com/leanovate/gopter v0.2.9/go.mod h1:U2L/78B+KVFIx2VmW6onHJQzXtFb+p5y3y2Sh+Jxxv8= github.com/ledongthuc/pdf v0.0.0-20220302134840-0c2507a12d80/go.mod h1:imJHygn/1yfhB7XSJJKlFZKl/J+dCPAknuiaGOshXAs= github.com/leodido/go-urn v1.2.0/go.mod h1:+8+nEpDfqqsY+g338gtMEUOtuK+4dEMhiQEgxpxOKII= -github.com/leodido/go-urn v1.2.1 h1:BqpAaACuzVSgi/VLzGZIobT2z4v53pjosyNd9Yv6n/w= -github.com/leodido/go-urn v1.2.1/go.mod h1:zt4jvISO2HfUBqxjfIshjdMTYS56ZS/qv49ictyFfxY= github.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw= github.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/lightstep/lightstep-tracer-common/golang/gogo v0.0.0-20190605223551-bc2310a04743/go.mod h1:qklhhLq1aX+mtWk9cPHPzaBjWImj5ULL6C7HFJtXQMM= github.com/lightstep/lightstep-tracer-go v0.18.1/go.mod h1:jlF1pusYV4pidLvZ+XD0UBX0ZE6WURAspgAczcDHrL4= -github.com/linxGnu/grocksdb v1.8.14 h1:HTgyYalNwBSG/1qCQUIott44wU5b2Y9Kr3z7SK5OfGQ= -github.com/linxGnu/grocksdb v1.8.14/go.mod h1:QYiYypR2d4v63Wj1adOOfzglnoII0gLj3PNh4fZkcFA= +github.com/linxGnu/grocksdb v1.9.1 h1:LmwuHzsWglxJrIES9jvS2O1xTPD2nnKYhAQDx5dIyRo= +github.com/linxGnu/grocksdb v1.9.1/go.mod h1:QYiYypR2d4v63Wj1adOOfzglnoII0gLj3PNh4fZkcFA= github.com/lyft/protoc-gen-validate v0.0.13/go.mod h1:XbGvPuh87YZc5TdIa2/I4pLk0QoUACkjt2znoq26NVQ= github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY= github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0= @@ -889,6 +929,7 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= +github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= github.com/mattn/go-runewidth v0.0.13 h1:lTGmDsbAYt5DmK6OnoV7EuIF1wEIFAcxld6ypU4OSgU= github.com/mattn/go-runewidth v0.0.13/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= @@ -908,20 +949,16 @@ github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:F github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= -github.com/mmcloughlin/addchain v0.4.0 h1:SobOdjm2xLj1KkXN5/n0xTIWyZA2+s99UCY1iPfkHRY= -github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqkyU72HC5wJ4RlU= -github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU= +github.com/mitchellh/pointerstructure v1.2.0 h1:O+i9nHnXS3l/9Wu7r4NrEdwA2VFTicjUEN1uBnDo34A= +github.com/mitchellh/pointerstructure v1.2.0/go.mod h1:BRAsLI5zgXmw97Lf6s25bs8ohIXc3tViBH44KcwB2g4= github.com/moby/docker-image-spec v1.3.1 h1:jMKff3w6PgbfSa69GfNg+zN/XLhfXJGnEx3Nl2EsFP0= github.com/moby/docker-image-spec v1.3.1/go.mod h1:eKmb5VW8vQEh/BAr2yvVNvuiJuY6UIocYsFu/DxxRpo= github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0= github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= -github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= -github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= github.com/mtibben/percent v0.2.1 h1:5gssi8Nqo8QU/r2pynCm+hBQHpkB/uNK7BJCFogWdzs= @@ -947,6 +984,7 @@ github.com/oklog/oklog v0.3.2/go.mod h1:FCV+B7mhrz4o+ueLpx+KqkyXRGMWOYEvfiXtdGtb github.com/oklog/run v1.0.0/go.mod h1:dlhp/R75TPv97u0XWUtDeV/lRKWPKSdTuV0TZvrmrQA= github.com/oklog/run v1.1.0 h1:GEenZ1cK0+q0+wsJew9qUg/DyD8k3JzYsZAi5gYi2mA= github.com/oklog/run v1.1.0/go.mod h1:sVPdnTZT1zYwAJeCMu2Th4T21pA3FPOQRfWjQlk7DVU= +github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec= github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY= @@ -956,18 +994,21 @@ github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108 github.com/onsi/ginkgo v1.14.0/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY= github.com/onsi/ginkgo v1.16.4 h1:29JGrr5oVBm5ulCWet69zQkzWipVXIol6ygQUe/EzNc= github.com/onsi/ginkgo v1.16.4/go.mod h1:dX+/inL/fNMqNlz0e9LfyB9TswhZpCVdJM/Z6Vvnwo0= +github.com/onsi/ginkgo/v2 v2.19.0 h1:9Cnnf7UHo57Hy3k6/m5k3dRfGTMXGvxhHFvkDTCTpvA= +github.com/onsi/ginkgo/v2 v2.19.0/go.mod h1:rlwLi9PilAFJ8jCg9UE1QP6VBpd6/xj3SRC0d6TU0To= +github.com/onsi/gomega v1.4.1/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= -github.com/onsi/gomega v1.26.0 h1:03cDLK28U6hWvCAns6NeydX3zIm4SF3ci69ulidS32Q= -github.com/onsi/gomega v1.26.0/go.mod h1:r+zV744Re+DiYCIPRlYOTxn0YkOLcAnW8k1xXdMPGhM= +github.com/onsi/gomega v1.33.1 h1:dsYjIxxSR755MDmKVsaFQTE22ChNBcuuTWgkUDSubOk= +github.com/onsi/gomega v1.33.1/go.mod h1:U4R44UsT+9eLIaYRB2a5qajjtQYn0hauxvRm16AVYg0= github.com/op/go-logging v0.0.0-20160315200505-970db520ece7/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug= github.com/opencontainers/image-spec v1.1.0/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM= -github.com/opencontainers/runc v1.1.3 h1:vIXrkId+0/J2Ymu2m7VjGvbSlAId9XNRPhn2p4b+d8w= -github.com/opencontainers/runc v1.1.3/go.mod h1:1J5XiS+vdZ3wCyZybsuxXZWGrgSr8fFJHLXuG2PsnNg= +github.com/opencontainers/runc v1.1.12 h1:BOIssBaW1La0/qbNZHXOOa71dZfZEQOzW7dqQf3phss= +github.com/opencontainers/runc v1.1.12/go.mod h1:S+lQwSfncpBha7XTy/5lBwWgm5+y5Ma/O44Ekby9FK8= github.com/opentracing-contrib/go-observer v0.0.0-20170622124052-a52f23424492/go.mod h1:Ngi6UdF0k5OKD5t5wlmGhe/EDKPoUM3BXZSSfIuJbis= github.com/opentracing/basictracer-go v1.0.0/go.mod h1:QfBfYuafItcjQuMwinw9GhYKwFXS9KnPs5lxoYwgW74= github.com/opentracing/opentracing-go v1.0.2/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= @@ -1040,11 +1081,17 @@ github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4O github.com/prometheus/procfs v0.3.0/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= github.com/prometheus/procfs v0.13.0 h1:GqzLlQyfsPbaEHaQkO7tbDlriv/4o5Hudv6OXHGKX7o= github.com/prometheus/procfs v0.13.0/go.mod h1:cd4PFCR54QLnGKPaKGA6l+cfuNXtht43ZKY6tow0Y1g= +github.com/prometheus/tsdb v0.10.0 h1:If5rVCMTp6W2SiRAQFlbpJNgVlgMEd+U2GZckwK38ic= +github.com/prometheus/tsdb v0.10.0/go.mod h1:oi49uRhEe9dPUTlS3JRZOwJuVi6tmh10QSgwXEyGCt4= +github.com/rakyll/statik v0.1.7 h1:OF3QCZUuyPxuGEP7B4ypUa7sB/iHtqOTDYZXGM8KOdQ= +github.com/rakyll/statik v0.1.7/go.mod h1:AlZONWzMtEnMs7W4e/1LURLiI49pIMmp6V9Unghqrcc= github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= github.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475 h1:N/ElC8H3+5XpJzTSTfLsJV/mx9Q9g7kxmchpfZyxgzM= github.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= +github.com/rjeczalik/notify v0.9.3 h1:6rJAzHTGKXGj76sbRgDiDcYj/HniypXmSJo1SWakZeY= +github.com/rjeczalik/notify v0.9.3/go.mod h1:gF3zSOrafR9DQEWSE8TjfI9NkooDxbyT4UgRGKZA0lc= github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= @@ -1105,6 +1152,8 @@ github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spf13/viper v1.19.0 h1:RWq5SEjt8o25SROyN3z2OrDB9l7RPd3lwTWU8EcEdcI= github.com/spf13/viper v1.19.0/go.mod h1:GQUN9bilAbhU/jgc1bKs99f/suXKeUMct8Adx5+Ntkg= +github.com/status-im/keycard-go v0.2.0 h1:QDLFswOQu1r5jsycloeQh3bVU8n/NatHHaZobtDnDzA= +github.com/status-im/keycard-go v0.2.0/go.mod h1:wlp8ZLbsmrF6g6WjugPAx+IzoLrkdf9+mHxBEeo3Hbg= github.com/stoewer/go-strcase v1.3.0 h1:g0eASXYtp+yvN9fK8sH94oCIk0fau9uV1/ZdJ0AVEzs= github.com/stoewer/go-strcase v1.3.0/go.mod h1:fAH5hQ5pehh+j3nZfvwdk2RgEgQjAoM8wodgtPmh1xo= github.com/streadway/amqp v0.0.0-20190404075320-75d898a42a94/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw= @@ -1131,37 +1180,52 @@ github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsT github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8= github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU= -github.com/supranational/blst v0.3.11 h1:LyU6FolezeWAhvQk0k6O/d49jqgO52MSDDfYgbeoEm4= -github.com/supranational/blst v0.3.11/go.mod h1:jZJtfjgudtNl4en1tzwPIV3KjUnQUvG3/j+w+fVonLw= github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7 h1:epCh84lMvA70Z7CTTCmYQn2CKbY8j86K7/FAIr141uY= github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7/go.mod h1:q4W45IWZaF22tdD+VEXcAWRA037jwmWEB5VWYORlTpc= github.com/tendermint/go-amino v0.16.0 h1:GyhmgQKvqF82e2oZeuMSp9JTN0N09emoSZlb2lyGa2E= github.com/tendermint/go-amino v0.16.0/go.mod h1:TQU0M1i/ImAo+tYpZi73AU3V/dKeCoMC9Sphe2ZwGME= github.com/tidwall/btree v1.7.0 h1:L1fkJH/AuEh5zBnnBbmTwQ5Lt+bRJ5A8EWecslvo9iI= github.com/tidwall/btree v1.7.0/go.mod h1:twD9XRA5jj9VUQGELzDO4HPQTNJsoWWfYEL+EUQ2cKY= +github.com/tidwall/gjson v1.14.2/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= +github.com/tidwall/gjson v1.17.1 h1:wlYEnwqAHgzmhNUFfw7Xalt2JzQvsMx2Se4PcoFCT/U= +github.com/tidwall/gjson v1.17.1/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= +github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= +github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= +github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= +github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= +github.com/tidwall/sjson v1.2.5 h1:kLy8mja+1c9jlljvWTlSazM7cKDRfJuR/bOJhcY5NcY= +github.com/tidwall/sjson v1.2.5/go.mod h1:Fvgq9kS/6ociJEDnK0Fk1cpYF4FIW6ZF7LAe+6jwd28= github.com/tklauser/go-sysconf v0.3.12 h1:0QaGUFOdQaIVdPgfITYzaTegZvdCjmYO52cSFAEVmqU= github.com/tklauser/go-sysconf v0.3.12/go.mod h1:Ho14jnntGE1fpdOqQEEaiKRpvIavV0hSfmBq8nJbHYI= github.com/tklauser/numcpus v0.6.1 h1:ng9scYS7az0Bk4OZLvrNXNSAO2Pxr1XXRAPyjhIx+Fk= github.com/tklauser/numcpus v0.6.1/go.mod h1:1XfjsgE2zo8GVw7POkMbHENHzVg3GzmoZ9fESEdAacY= github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= github.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926/go.mod h1:9ESjWnEqriFuLhtthL60Sar/7RFoluCcXsuvEwTV5KM= -github.com/ugorji/go v1.1.7 h1:/68gy2h+1mWMrwZFeD1kQialdSzAb432dtpeJ42ovdo= +github.com/tyler-smith/go-bip39 v1.1.0 h1:5eUemwrMargf3BSLRRCalXT93Ns6pQJIjYQN2nyfOP8= +github.com/tyler-smith/go-bip39 v1.1.0/go.mod h1:gUYDtqQw1JS3ZJ8UWVcGTGqqr6YIN3CWg+kkNaLt55U= github.com/ugorji/go v1.1.7/go.mod h1:kZn38zHttfInRq0xu/PH0az30d+z6vm202qpg1oXVMw= github.com/ugorji/go/codec v1.1.7/go.mod h1:Ax+UKWsSmolVDwsd+7N3ZtXu+yMGCf907BLYF3GoBXY= -github.com/ugorji/go/codec v1.2.11 h1:BMaWp1Bb6fHwEtbplGBGJ498wD+LKlNSl25MjdZY4dU= -github.com/ugorji/go/codec v1.2.11/go.mod h1:UNopzCgEMSXjBc6AOMqYvWC1ktqTAfzJZUZgYf6w6lg= github.com/ulikunitz/xz v0.5.10/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= github.com/ulikunitz/xz v0.5.11 h1:kpFauv27b6ynzBNT/Xy+1k+fK4WswhN/6PN5WhFAGw8= github.com/ulikunitz/xz v0.5.11/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= +github.com/urfave/cli v1.22.12 h1:igJgVw1JdKH+trcLWLeLwZjU9fEfPesQ+9/e4MQ44S8= +github.com/urfave/cli/v2 v2.10.2 h1:x3p8awjp/2arX+Nl/G2040AZpOCHS/eMJJ1/a+mye4Y= +github.com/urfave/cli/v2 v2.10.2/go.mod h1:f8iq5LtQ/bLxafbdBSLPPNsgaW0l/2fYYEHhAyPlwvo= github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= github.com/valyala/fasttemplate v1.2.2 h1:lxLXG0uE3Qnshl9QyaK6XJxMXlQZELvChBOCmQD0Loo= github.com/valyala/fasttemplate v1.2.2/go.mod h1:KHLXt3tVN2HBp8eijSv/kGJopbvo7S+qRAEEKiv+SiQ= github.com/vbatts/tar-split v0.11.5 h1:3bHCTIheBm1qFTcgh9oPu+nNBtX+XJIupG/vacinCts= github.com/vbatts/tar-split v0.11.5/go.mod h1:yZbwRsSeGjusneWgA781EKej9HF8vme8okylkAeNKLk= +github.com/warden-protocol/cosmos-sdk v0.50.9-evmos-warden h1:yOMUIVxTd5DPnvXZbqRyt+Ed+lkZXwGhObyIB6u96lk= +github.com/warden-protocol/cosmos-sdk v0.50.9-evmos-warden/go.mod h1:TMH6wpoYBcg7Cp5BEg8fneLr+8XloNQkf2MRNF9V6JE= +github.com/warden-protocol/go-ethereum v1.10.26-warden-evmos-rc2 h1:wqfEum6h4viP5CZdQCQABA5hFYrzVLPqY/g4VBkCY/M= +github.com/warden-protocol/go-ethereum v1.10.26-warden-evmos-rc2/go.mod h1:/6CsT5Ceen2WPLI/oCA3xMcZ5sWMF/D46SjM/ayY0Oo= github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= +github.com/xrash/smetrics v0.0.0-20201216005158-039620a65673 h1:bAn7/zixMGCfxrRTfdpNzjtPYqr8smhKouy9mxVdGPU= +github.com/xrash/smetrics v0.0.0-20201216005158-039620a65673/go.mod h1:N3UwUGtsrSj3ccvlPHLoLsHnpR27oXr4ZE984MbSER8= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= @@ -1228,6 +1292,7 @@ go.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM= go.uber.org/zap v1.18.1/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI= go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8= go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E= +golang.org/x/crypto v0.0.0-20170930174604-9419663f5a44/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= @@ -1281,6 +1346,7 @@ golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/mod v0.19.0 h1:fEdghXQSo20giMthA7cd28ZC+jts4amQ3YMXiP5oMQ8= golang.org/x/mod v0.19.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/net v0.0.0-20180719180050-a680a1efc54d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1389,6 +1455,7 @@ golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5h golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180926160741-c2ed4eda69e7/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181026203630-95b1ffbd15a5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -1405,6 +1472,7 @@ golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1480,7 +1548,10 @@ golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20221010170243-090e33056c14/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.22.0 h1:RI27ohtqKCnwULzJLqkv897zojh5/DwS/ENaMzUOaWI= golang.org/x/sys v0.22.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= @@ -1829,6 +1900,8 @@ gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMy gopkg.in/gcfg.v1 v1.2.3/go.mod h1:yesOnuUOFQAhST5vPY4nbZsb/huCgGGXlipJsBn0b3o= gopkg.in/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA= gopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce h1:+JknDZhAj8YMt7GC73Ei8pv4MzjDUNPHgQWJdtMAaDU= +gopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce/go.mod h1:5AcXVHNjg+BDxry382+8OKon8SEWiKktQR07RKPsv1c= gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= @@ -1857,15 +1930,14 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -nhooyr.io/websocket v1.8.6 h1:s+C3xAMLwGmlI31Nyn/eAehUlZPwfYZu2JXM621Q5/k= nhooyr.io/websocket v1.8.6/go.mod h1:B70DZP8IakI65RVQ51MsWP/8jndNma26DVA/nFSCgW0= +nhooyr.io/websocket v1.8.10 h1:mv4p+MnGrLDcPlBoWsvPP7XCzTYMXP9F9eIGoKbgx7Q= +nhooyr.io/websocket v1.8.10/go.mod h1:rN9OFWIUwuxg4fR5tELlYC04bXYowCP9GX47ivo2l+c= pgregory.net/rapid v1.1.0 h1:CMa0sjHSru3puNx+J0MIAuiiEV4N0qj8/cMWGBBCsjw= pgregory.net/rapid v1.1.0/go.mod h1:PY5XlDGj0+V1FCq0o192FdRhpKHGTRIWBgqjDBTrq04= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= -rsc.io/tmplfunc v0.0.3 h1:53XFQh69AfOa8Tw0Jm7t+GV7KZhOi6jzsCzTtKbMvzU= -rsc.io/tmplfunc v0.0.3/go.mod h1:AG3sTPzElb1Io3Yg4voV9AGZJuleGAwaVRxL9M49PhA= sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY= diff --git a/keychain-sdk/config.go b/keychain-sdk/config.go index 493c0cb14..9e34b93ff 100644 --- a/keychain-sdk/config.go +++ b/keychain-sdk/config.go @@ -30,7 +30,7 @@ type Config struct { // DerivationPath is the derivation path to use in combination with the // [Mnemonic] to derive this Keychain's writer private key. - // e.g. "m/44'/118'/0'/0/0" + // e.g. "m/44'/60'/0'/0/0" DerivationPath string // Mnemonic is the mnemonic to use to derive this Keychain's writer private diff --git a/keychain-sdk/example_keychain_test.go b/keychain-sdk/example_keychain_test.go index dec0edd1d..0f781581b 100644 --- a/keychain-sdk/example_keychain_test.go +++ b/keychain-sdk/example_keychain_test.go @@ -28,7 +28,7 @@ func Main() { // setup the account used to write txs KeychainID: 1, Mnemonic: "virus boat radio apple pilot ask vault exhaust again state doll stereo slide exhibit scissors miss attack boat budget egg bird mask more trick", - DerivationPath: "m/44'/118'/0'/0/0", + DerivationPath: "m/44'/60'/0'/0/0", // setup throughput for batching responses GasLimit: 400000, diff --git a/localnet.just b/localnet.just index b6f14890b..f906ef577 100644 --- a/localnet.just +++ b/localnet.just @@ -1,5 +1,5 @@ -chain_id := "warden" -shulgin := "warden10kmgv5gzygnecf46x092ecfe5xcvvv9r870rq4" +chain_id := "warden_1337-1" +shulgin := "warden1d652c9nngq5cneak2whyaqa4g9ehr8pstxj0r5" shulgin_mnemonic := "exclude try nephew main caught favorite tone degree lottery device tissue tent ugly mouse pelican gasp lava flush pen river noise remind balcony emerge" # run a single-node chain locally, use "bin" to specify the binary name @@ -20,21 +20,23 @@ start bin="wardend" install="true": } rm -rf ~/.warden - {{bin}} init localnet --chain-id {{chain_id}} --default-denom uward > /dev/null + {{bin}} init localnet --chain-id {{chain_id}} --default-denom award > /dev/null {{bin}} config set client chain-id {{chain_id}} {{bin}} config set client keyring-backend test - {{bin}} config set app minimum-gas-prices 0uward + {{bin}} config set app minimum-gas-prices 0award {{bin}} config set app api.enable true {{bin}} config set app api.enabled-unsafe-cors true {{bin}} config set config consensus.timeout_commit 1s -s replace 's/cors_allowed_origins = \[\]/cors_allowed_origins = ["*"]/' ~/.warden/config/config.toml {{bin}} keys add val > /dev/null echo -n '{{shulgin_mnemonic}}' | {{bin}} keys add shulgin --recover > /dev/null - {{bin}} genesis add-genesis-account val 10000000000000000000000000uward - {{bin}} genesis add-genesis-account shulgin 10000000000000000000000000uward + {{bin}} genesis add-genesis-account val 10000000000000000000000000award + {{bin}} genesis add-genesis-account shulgin 10000000000000000000000000award {{bin}} genesis add-genesis-space {{shulgin}} {{bin}} genesis add-genesis-keychain {{shulgin}} "WardenKMS" "{\"key_req\":[],\"sig_req\":[]}" - {{bin}} genesis gentx val 1000000000uward + replace 's/aevmos/award/' ~/.warden/config/genesis.json + jq '.app_state.evm.params.active_precompiles = []' ~/.warden/config/genesis.json > temp.json && mv temp.json ~/.warden/config/genesis.json + {{bin}} genesis gentx val 1000000000000000000000award {{bin}} genesis collect-gentxs {{bin}} genesis add-genesis-slinky-markets GENESIS="$HOME/.warden/config/genesis.json" diff --git a/tests/cases/keychain_writers.go b/tests/cases/keychain_writers.go index 0eebc4875..975130aac 100644 --- a/tests/cases/keychain_writers.go +++ b/tests/cases/keychain_writers.go @@ -2,11 +2,12 @@ package cases import ( "context" - "cosmossdk.io/math" "encoding/base64" - sdk "github.com/cosmos/cosmos-sdk/types" "testing" + "cosmossdk.io/math" + sdk "github.com/cosmos/cosmos-sdk/types" + "github.com/stretchr/testify/require" "github.com/warden-protocol/wardenprotocol/tests/framework" "github.com/warden-protocol/wardenprotocol/tests/framework/checks" @@ -35,24 +36,24 @@ func (c *Test_KeychainWriters) Run(t *testing.T, ctx context.Context, build fram writer := exec.NewWardend(c.w, "writer") client := TestGRPCClient(*c.w.GRPCClient(t)) wardenAddress := "warden130djg732wmskv3gwryl3shcdam8wmmn9p704s5" - balance := client.GetBalanceAmount(t, ctx, wardenAddress, "uward") + balance := client.GetBalanceAmount(t, ctx, wardenAddress, "award") t.Run("create key request", func(t *testing.T) { // create a KeyRequest - newReqTx := bob.Tx(t, "warden new-action new-key-request --space-id 1 --keychain-id 1 --key-type 1 --max-keychain-fees \"1uward\" --rule-id 0 --nonce 0") + newReqTx := bob.Tx(t, "warden new-action new-key-request --space-id 1 --keychain-id 1 --key-type 1 --max-keychain-fees \"1award\" --rule-id 0 --nonce 0") checks.SuccessTx(t, newReqTx) client.EnsureActionStatus(t, ctx, 1, v1beta1.ActionStatus_ACTION_STATUS_REVOKED) client.EnsureBalanceAmount(t, ctx, wardenAddress, balance) - newReqTx = bob.Tx(t, "warden new-action new-key-request --space-id 1 --keychain-id 1 --key-type 1 --max-keychain-fees \"3uward\" --rule-id 0 --nonce 0") + newReqTx = bob.Tx(t, "warden new-action new-key-request --space-id 1 --keychain-id 1 --key-type 1 --max-keychain-fees \"3award\" --rule-id 0 --nonce 0") checks.SuccessTx(t, newReqTx) client.EnsureActionStatus(t, ctx, 2, v1beta1.ActionStatus_ACTION_STATUS_COMPLETED) - client.EnsureBalanceAmount(t, ctx, wardenAddress, balance.Add(sdk.NewCoin("uward", math.NewInt(2)))) + client.EnsureBalanceAmount(t, ctx, wardenAddress, balance.Add(sdk.NewCoin("award", math.NewInt(2)))) // try to fulfill it from an address that's not one of the Keychain's writers bobFulfilTx := bob.Tx(t, "warden fulfill-key-request 1 'A93VNAt/SYLw61VYTAhYO0pMJUqjnKKT2owP7HjGNRoK'") checks.FailTx(t, bobFulfilTx) - client.EnsureBalanceAmount(t, ctx, wardenAddress, balance.Add(sdk.NewCoin("uward", math.NewInt(2)))) + client.EnsureBalanceAmount(t, ctx, wardenAddress, balance.Add(sdk.NewCoin("award", math.NewInt(2)))) // try to fulfill it from one of the Keychain's writers writerFulfilTx := writer.Tx(t, "warden fulfill-key-request 1 'A93VNAt/SYLw61VYTAhYO0pMJUqjnKKT2owP7HjGNRoK'") @@ -73,21 +74,21 @@ func (c *Test_KeychainWriters) Run(t *testing.T, ctx context.Context, build fram t.Run("create signature request", func(t *testing.T) { // create a SignRequest with not enough fee - newReqTx := bob.Tx(t, "warden new-action new-sign-request --key-id 1 --input 'HoZ4Z+ZU7Zd08kUR5NcbtFZrmGKF18mSBJ29dg0qI44=' --max-keychain-fees \"1uward\" --nonce 0") + newReqTx := bob.Tx(t, "warden new-action new-sign-request --key-id 1 --input 'HoZ4Z+ZU7Zd08kUR5NcbtFZrmGKF18mSBJ29dg0qI44=' --max-keychain-fees \"1award\" --nonce 0") checks.SuccessTx(t, newReqTx) client.EnsureActionStatus(t, ctx, 3, v1beta1.ActionStatus_ACTION_STATUS_REVOKED) client.EnsureBalanceAmount(t, ctx, wardenAddress, balance) // create a SignRequest with enough fee - newReqTx = bob.Tx(t, "warden new-action new-sign-request --key-id 1 --input 'HoZ4Z+ZU7Zd08kUR5NcbtFZrmGKF18mSBJ29dg0qI44=' --max-keychain-fees \"3uward\" --nonce 0") + newReqTx = bob.Tx(t, "warden new-action new-sign-request --key-id 1 --input 'HoZ4Z+ZU7Zd08kUR5NcbtFZrmGKF18mSBJ29dg0qI44=' --max-keychain-fees \"3award\" --nonce 0") checks.SuccessTx(t, newReqTx) client.EnsureActionStatus(t, ctx, 4, v1beta1.ActionStatus_ACTION_STATUS_COMPLETED) - client.EnsureBalanceAmount(t, ctx, wardenAddress, balance.Add(sdk.NewCoin("uward", math.NewInt(2)))) + client.EnsureBalanceAmount(t, ctx, wardenAddress, balance.Add(sdk.NewCoin("award", math.NewInt(2)))) // try to fulfill it from an address that's not one of the Keychain's writers bobFulfilTx := bob.Tx(t, "warden fulfill-sign-request 1 'LKu131U23Q5Ke7jJscb57zdSmuZD27a4VeZ+/hwf7ShOLo4ozUc36pvNT14+a1s09k1PbPihrFbK29J00Jh3tgA='") checks.FailTx(t, bobFulfilTx) - client.EnsureBalanceAmount(t, ctx, wardenAddress, balance.Add(sdk.NewCoin("uward", math.NewInt(2)))) + client.EnsureBalanceAmount(t, ctx, wardenAddress, balance.Add(sdk.NewCoin("award", math.NewInt(2)))) // try to fulfill it from one of the Keychain's writers writerFulfilTx := writer.Tx(t, "warden fulfill-sign-request 1 'LKu131U23Q5Ke7jJscb57zdSmuZD27a4VeZ+/hwf7ShOLo4ozUc36pvNT14+a1s09k1PbPihrFbK29J00Jh3tgA='") diff --git a/tests/framework/exec/warden_cli.go b/tests/framework/exec/warden_cli.go index cc9b5644e..7d5b02d3f 100644 --- a/tests/framework/exec/warden_cli.go +++ b/tests/framework/exec/warden_cli.go @@ -27,7 +27,7 @@ func NewWardend(node *WardenNode, name string) *Wardend { return &Wardend{ BinPath: node.BinPath, QueryAppend: fmt.Sprintf("--node tcp://127.0.0.1:%d -o json", node.CometPortRPC()), - TxAppend: fmt.Sprintf("--from %s --yes --node tcp://127.0.0.1:%d --home %s --chain-id warden --keyring-backend test --keyring-dir %s", name, node.CometPortRPC(), node.Home, node.Home), + TxAppend: fmt.Sprintf("--from %s --yes --node tcp://127.0.0.1:%d --home %s --chain-id warden_1337-1 --keyring-backend test --keyring-dir %s", name, node.CometPortRPC(), node.Home, node.Home), Node: node, Name: name, } diff --git a/tests/justfile b/tests/justfile index bdc84f783..47ebb4834 100644 --- a/tests/justfile +++ b/tests/justfile @@ -42,17 +42,17 @@ snapshot-base: just _rm_rf $WARDEND_HOME # prepare state - wardend init testing --chain-id warden --default-denom uward --home $WARDEND_HOME > /dev/null - wardend config set client chain-id warden --home $WARDEND_HOME + wardend init testing --chain-id warden_1337-1 --default-denom award --home $WARDEND_HOME > /dev/null + wardend config set client chain-id warden_1337-1 --home $WARDEND_HOME wardend config set client keyring-backend test --home $WARDEND_HOME wardend keys add alice --keyring-backend test --home $WARDEND_HOME > /dev/null - wardend genesis add-genesis-account alice 10000000000000000000000000uward --keyring-backend test --home $WARDEND_HOME - wardend genesis gentx alice 1000000000uward --keyring-backend test --home $WARDEND_HOME + wardend genesis add-genesis-account alice 10000000000000000000000000000000000000award --keyring-backend test --home $WARDEND_HOME + wardend genesis gentx alice 1000000000000000000000award --keyring-backend test --home $WARDEND_HOME wardend genesis collect-gentxs --home $WARDEND_HOME # basic snapshot configuration, really fast block time - wardend config set app minimum-gas-prices 0uward --home $WARDEND_HOME + wardend config set app minimum-gas-prices 0award --home $WARDEND_HOME wardend config set config consensus.timeout_propose 10ms -s --home $WARDEND_HOME wardend config set config consensus.timeout_propose_delta 5ms -s --home $WARDEND_HOME wardend config set config consensus.timeout_prevote 10ms -s --home $WARDEND_HOME @@ -93,23 +93,23 @@ snapshot-keychain: just _rm_rf $WARDEND_HOME # prepare state - wardend init testing --chain-id warden --default-denom uward --home $WARDEND_HOME > /dev/null - wardend config set client chain-id warden --home $WARDEND_HOME + wardend init testing --chain-id warden_1337-1 --default-denom award --home $WARDEND_HOME > /dev/null + wardend config set client chain-id warden_1337-1 --home $WARDEND_HOME wardend config set client keyring-backend test --home $WARDEND_HOME wardend keys add val --keyring-backend test --home $WARDEND_HOME > /dev/null wardend keys add writer --keyring-backend test --home $WARDEND_HOME > /dev/null wardend keys add bob --keyring-backend test --home $WARDEND_HOME > /dev/null - wardend genesis add-genesis-account val 10000000000000000000000000uward --keyring-backend test --home $WARDEND_HOME - wardend genesis add-genesis-account writer 10000000000000000000000000uward --keyring-backend test --home $WARDEND_HOME - wardend genesis add-genesis-account bob 10000000000000000000000000uward --keyring-backend test --home $WARDEND_HOME + wardend genesis add-genesis-account val 10000000000000000000000000000000000000award --keyring-backend test --home $WARDEND_HOME + wardend genesis add-genesis-account writer 10000000000000000000000000000000000000award --keyring-backend test --home $WARDEND_HOME + wardend genesis add-genesis-account bob 10000000000000000000000000000000000000award --keyring-backend test --home $WARDEND_HOME wardend genesis add-genesis-space $(wardend keys show -a bob --keyring-backend test --home $WARDEND_HOME) --home $WARDEND_HOME - wardend genesis add-genesis-keychain $(wardend keys show -a writer --keyring-backend test --home $WARDEND_HOME) "Test Keychain" "{\"key_req\":[{\"denom\":\"uward\",\"amount\":\"2\"}],\"sig_req\":[{\"denom\":\"uward\",\"amount\": \"2\"}]}" --home $WARDEND_HOME - wardend genesis gentx val 1000000000uward --keyring-backend test --home $WARDEND_HOME + wardend genesis add-genesis-keychain $(wardend keys show -a writer --keyring-backend test --home $WARDEND_HOME) "Test Keychain" "{\"key_req\":[{\"denom\":\"award\",\"amount\":\"2\"}],\"sig_req\":[{\"denom\":\"award\",\"amount\": \"2\"}]}" --home $WARDEND_HOME + wardend genesis gentx val 1000000000000000000000award --keyring-backend test --home $WARDEND_HOME wardend genesis collect-gentxs --home $WARDEND_HOME # basic snapshot configuration, really fast block time - wardend config set app minimum-gas-prices 0uward --home $WARDEND_HOME + wardend config set app minimum-gas-prices 0award --home $WARDEND_HOME wardend config set config consensus.timeout_propose 10ms -s --home $WARDEND_HOME wardend config set config consensus.timeout_propose_delta 5ms -s --home $WARDEND_HOME wardend config set config consensus.timeout_prevote 10ms -s --home $WARDEND_HOME @@ -150,8 +150,8 @@ snapshot-many-users: just _rm_rf $WARDEND_HOME # prepare state - wardend init testing --chain-id warden --default-denom uward --home $WARDEND_HOME > /dev/null - wardend config set client chain-id warden --home $WARDEND_HOME + wardend init testing --chain-id warden_1337-1 --default-denom award --home $WARDEND_HOME > /dev/null + wardend config set client chain-id warden_1337-1 --home $WARDEND_HOME wardend config set client keyring-backend test --home $WARDEND_HOME wardend keys add alice --keyring-backend test --home $WARDEND_HOME > /dev/null @@ -161,15 +161,15 @@ snapshot-many-users: wardend keys add erin --keyring-backend test --home $WARDEND_HOME > /dev/null wardend keys add frank --keyring-backend test --home $WARDEND_HOME > /dev/null - wardend genesis add-genesis-account alice 10000000000000000000000000uward --keyring-backend test --home $WARDEND_HOME - wardend genesis add-genesis-account bob 10000000000000000000000000uward --keyring-backend test --home $WARDEND_HOME - wardend genesis add-genesis-account charlie 10000000000000000000000000uward --keyring-backend test --home $WARDEND_HOME + wardend genesis add-genesis-account alice 10000000000000000000000000award --keyring-backend test --home $WARDEND_HOME + wardend genesis add-genesis-account bob 10000000000000000000000000award --keyring-backend test --home $WARDEND_HOME + wardend genesis add-genesis-account charlie 10000000000000000000000000award --keyring-backend test --home $WARDEND_HOME wardend genesis add-genesis-space $(wardend keys show -a alice --keyring-backend test --home $WARDEND_HOME) --home $WARDEND_HOME - wardend genesis gentx alice 1000000000uward --keyring-backend test --home $WARDEND_HOME + wardend genesis gentx alice 1000000000000000000000award --keyring-backend test --home $WARDEND_HOME wardend genesis collect-gentxs --home $WARDEND_HOME # basic snapshot configuration, really fast block time - wardend config set app minimum-gas-prices 0uward --home $WARDEND_HOME + wardend config set app minimum-gas-prices 0award --home $WARDEND_HOME wardend config set config consensus.timeout_propose 10ms -s --home $WARDEND_HOME wardend config set config consensus.timeout_propose_delta 5ms -s --home $WARDEND_HOME wardend config set config consensus.timeout_prevote 10ms -s --home $WARDEND_HOME diff --git a/tests/slinky/slinky_test.go b/tests/slinky/slinky_test.go index 1f5341f73..4c1bf959e 100644 --- a/tests/slinky/slinky_test.go +++ b/tests/slinky/slinky_test.go @@ -59,7 +59,7 @@ var ( }, } - denom = "uward" + denom = "award" spec = &interchaintest.ChainSpec{ ChainName: "slinky", Name: "slinky", diff --git a/tests/testdata/snapshot-base/config/app.toml.tmpl b/tests/testdata/snapshot-base/config/app.toml.tmpl index ad6a1aabd..4ada47e12 100644 --- a/tests/testdata/snapshot-base/config/app.toml.tmpl +++ b/tests/testdata/snapshot-base/config/app.toml.tmpl @@ -8,7 +8,7 @@ # The minimum gas prices a validator is willing to accept for processing a # transaction. A transaction's fees must meet the minimum of any denomination # specified in this config (e.g. 0.25token1,0.0001token2). -minimum-gas-prices = "0uward" +minimum-gas-prices = "0award" # The maximum gas a query coming over rest/grpc may consume. # If this is set to zero, the query can consume an unbounded amount of gas. @@ -251,10 +251,158 @@ enabled = "true" oracle_address = "localhost:8080" # Client Timeout is the time that the client is willing to wait for responses from -# the oracle before timing out. +# the oracle before timing out. The recommended timeout is 3 seconds (3000ms). client_timeout = "2s" # MetricsEnabled determines whether oracle metrics are enabled. Specifically # this enables instrumentation of the oracle client and the interaction between # the oracle and the app. metrics_enabled = "false" + +# PriceTTL is the maximum age of the latest price response before it is considered stale. +# The recommended max age is 10 seconds (10s). If this is greater than 1 minute (1m), the app +# will not start. +price_ttl = "0s" + +# Interval is the time between each price update request. The recommended interval +# is the block time of the chain. Otherwise, 1.5 seconds (1500ms) is a good default. If this +# is greater than 1 minute (1m), the app will not start. +interval = "0s" + +############################################################################### +### EVM Configuration ### +############################################################################### + +[evm] + +# Tracer defines the 'vm.Tracer' type that the EVM will use when the node is run in +# debug mode. To enable tracing use the '--evm.tracer' flag when starting your node. +# Valid types are: json|struct|access_list|markdown +tracer = "" + +# MaxTxGasWanted defines the gas wanted for each eth tx returned in ante handler in check tx mode. +max-tx-gas-wanted = 0 + +############################################################################### +### JSON RPC Configuration ### +############################################################################### + +[json-rpc] + +# Enable defines if the JSONRPC server should be enabled. +enable = true + +# Address defines the EVM RPC HTTP server address to bind to. +address = "127.0.0.1:8545" + +# Address defines the EVM WebSocket server address to bind to. +ws-address = "127.0.0.1:8546" + +# API defines a list of JSON-RPC namespaces that should be enabled +# Example: "eth,txpool,personal,net,debug,web3" +api = "eth,net,web3" + +# GasCap sets a cap on gas that can be used in eth_call/estimateGas (0=infinite). Default: 25,000,000. +gas-cap = 25000000 + +# Allow insecure account unlocking when account-related RPCs are exposed by http +allow-insecure-unlock = true + +# EVMTimeout is the global timeout for eth_call. Default: 5s. +evm-timeout = "5s" + +# TxFeeCap is the global tx-fee cap for send transaction. Default: 1eth. +txfee-cap = 1 + +# FilterCap sets the global cap for total number of filters that can be created +filter-cap = 200 + +# FeeHistoryCap sets the global cap for total number of blocks that can be fetched +feehistory-cap = 100 + +# LogsCap defines the max number of results can be returned from single 'eth_getLogs' query. +logs-cap = 10000 + +# BlockRangeCap defines the max block range allowed for 'eth_getLogs' query. +block-range-cap = 10000 + +# HTTPTimeout is the read/write timeout of http json-rpc server. +http-timeout = "30s" + +# HTTPIdleTimeout is the idle timeout of http json-rpc server. +http-idle-timeout = "2m0s" + +# AllowUnprotectedTxs restricts unprotected (non EIP155 signed) transactions to be submitted via +# the node's RPC when the global parameter is disabled. +allow-unprotected-txs = false + +# MaxOpenConnections sets the maximum number of simultaneous connections +# for the server listener. +max-open-connections = 0 + +# EnableIndexer enables the custom transaction indexer for the EVM (ethereum transactions). +enable-indexer = false + +# MetricsAddress defines the EVM Metrics server address to bind to. Pass --metrics in CLI to enable +# Prometheus metrics path: /debug/metrics/prometheus +metrics-address = "127.0.0.1:6065" + +# Upgrade height for fix of revert gas refund logic when transaction reverted. +fix-revert-gas-refund-height = 0 + +############################################################################### +### TLS Configuration ### +############################################################################### + +[tls] + +# Certificate path defines the cert.pem file path for the TLS configuration. +certificate-path = "" + +# Key path defines the key.pem file path for the TLS configuration. +key-path = "" + +############################################################################### +### Rosetta Configuration ### +############################################################################### + +[rosetta] + +# Enable defines if the Rosetta API server should be enabled. +enable = false + +# Address defines the Rosetta API server to listen on. +address = ":8080" + +# Network defines the name of the blockchain that will be returned by Rosetta. +blockchain = "evmos" + +# Network defines the name of the network that will be returned by Rosetta. +network = "evmos" + +# TendermintRPC defines the endpoint to connect to CometBFT RPC, +# specifying 'tcp://' before is not required, usually it's at port 26657 +tendermint-rpc = "localhost:26657" + +# GRPCEndpoint defines the cosmos application gRPC endpoint +# usually it is located at 9090 port +grpc-endpoint = "localhost:{{ .GRPCPort }}" + +# Retries defines the number of retries when connecting to the node before failing. +retries = 5 + +# Offline defines if Rosetta server should run in offline mode. +offline = false + +# EnableFeeSuggestion indicates to use fee suggestion when 'construction/metadata' is called without gas limit and price. +enable-fee-suggestion = false + +# GasToSuggest defines gas limit when calculating the fee +gas-to-suggest = 300000 + +# DenomToSuggest defines the defult denom for fee suggestion. +# Price must be in minimum-gas-prices. +denom-to-suggest = "aevmos" + +# GasPrices defines the gas prices for fee suggestion +gas-prices = "4000000.000000000000000000aevmos" diff --git a/tests/testdata/snapshot-base/config/client.toml.tmpl b/tests/testdata/snapshot-base/config/client.toml.tmpl index bb873a3e0..32f4afd09 100644 --- a/tests/testdata/snapshot-base/config/client.toml.tmpl +++ b/tests/testdata/snapshot-base/config/client.toml.tmpl @@ -6,7 +6,7 @@ ############################################################################### # The network chain ID -chain-id = "warden" +chain-id = "warden_1337-1" # The keyring's backend, where the keys are stored (os|file|kwallet|pass|test|memory) keyring-backend = "test" diff --git a/tests/testdata/snapshot-base/config/config.toml.tmpl b/tests/testdata/snapshot-base/config/config.toml.tmpl index 351592188..b2ea94669 100644 --- a/tests/testdata/snapshot-base/config/config.toml.tmpl +++ b/tests/testdata/snapshot-base/config/config.toml.tmpl @@ -8,7 +8,7 @@ # The version of the CometBFT binary that created or # last modified the config file. Do not modify this. -version = "0.38.7" +version = "0.38.11" ####################################################################### ### Main Base Config Options ### @@ -167,6 +167,11 @@ experimental_close_on_slow_client = false # See https://github.com/tendermint/tendermint/issues/3435 timeout_broadcast_tx_commit = "10s" +# Maximum number of requests that can be sent in a batch +# If the value is set to '0' (zero-value), then no maximum batch size will be +# enforced for a JSON-RPC batch request. +max_request_batch_size = 10 + # Maximum size of request body, in bytes max_body_bytes = 1000000 @@ -282,6 +287,17 @@ type = "flood" # you can disable rechecking. recheck = true +# recheck_timeout is the time the application has during the rechecking process +# to return CheckTx responses, once all requests have been sent. Responses that +# arrive after the timeout expires are discarded. It only applies to +# non-local ABCI clients and when recheck is enabled. +# +# The ideal value will strongly depend on the application. It could roughly be estimated as the +# average size of the mempool multiplied by the average time it takes the application to validate one +# transaction. We consider that the ABCI application runs in the same location as the CometBFT binary +# so that the recheck duration is not affected by network delays when making requests and receiving responses. +recheck_timeout = "1s" + # Broadcast (default: true) defines whether the mempool should relay # transactions to other peers. Setting this to false will stop the mempool # from relaying transactions to other peers until they are included in a diff --git a/tests/testdata/snapshot-base/config/genesis.json b/tests/testdata/snapshot-base/config/genesis.json index 4541de1ac..2d31f521c 100644 --- a/tests/testdata/snapshot-base/config/genesis.json +++ b/tests/testdata/snapshot-base/config/genesis.json @@ -1,33 +1,17 @@ { "app_name": "wardend", - "app_version": "v0.3.2-alpha-23-g4ed7ab0f2", - "genesis_time": "2024-06-21T08:10:54.380845Z", - "chain_id": "warden", + "app_version": "v0.4.1-69-g6035cc48-dirty", + "genesis_time": "2024-08-28T15:50:56.612211Z", + "chain_id": "warden_1337-1", "initial_height": 1, "app_hash": null, "app_state": { "06-solomachine": null, "07-tendermint": null, "act": { - "params": {} - }, - "alerts": { - "params": { - "alert_params": { - "enabled": true, - "bond_amount": { - "denom": "uward", - "amount": "1000000" - }, - "max_block_age": "10000" - }, - "conclusion_verification_params": null, - "pruning_params": { - "enabled": true, - "blocks_to_prune": "1000" - } - }, - "alerts": [] + "params": {}, + "actions": [], + "rules": [] }, "auth": { "params": { @@ -40,7 +24,7 @@ "accounts": [ { "@type": "/cosmos.auth.v1beta1.BaseAccount", - "address": "warden1rek5rtdwy6p82fdkyejwhch9hy0q9z8ug5lwjq", + "address": "warden1y9t4798ndu3e7nu09vxxmchjp2amcd006rkng3", "pub_key": null, "account_number": "0", "sequence": "0" @@ -57,19 +41,19 @@ }, "balances": [ { - "address": "warden1rek5rtdwy6p82fdkyejwhch9hy0q9z8ug5lwjq", + "address": "warden1y9t4798ndu3e7nu09vxxmchjp2amcd006rkng3", "coins": [ { - "denom": "uward", - "amount": "10000000000000000000000000" + "denom": "award", + "amount": "10000000000000000000000000000000000000" } ] } ], "supply": [ { - "denom": "uward", - "amount": "10000000000000000000000000" + "denom": "award", + "amount": "10000000000000000000000000000000000000" } ], "denom_metadata": [], @@ -86,7 +70,7 @@ "consensus": null, "crisis": { "constant_fee": { - "denom": "uward", + "denom": "award", "amount": "1000" } }, @@ -112,6 +96,53 @@ "evidence": { "evidence": [] }, + "evm": { + "accounts": [], + "params": { + "evm_denom": "aevmos", + "enable_create": true, + "enable_call": true, + "extra_eips": [ + "3855" + ], + "chain_config": { + "homestead_block": "0", + "dao_fork_block": "0", + "dao_fork_support": true, + "eip150_block": "0", + "eip150_hash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "eip155_block": "0", + "eip158_block": "0", + "byzantium_block": "0", + "constantinople_block": "0", + "petersburg_block": "0", + "istanbul_block": "0", + "muir_glacier_block": "0", + "berlin_block": "0", + "london_block": "0", + "arrow_glacier_block": "0", + "gray_glacier_block": "0", + "merge_netsplit_block": "0", + "shanghai_block": "0", + "cancun_block": "0" + }, + "allow_unprotected_txs": false, + "active_precompiles": [ + "0x0000000000000000000000000000000000000100", + "0x0000000000000000000000000000000000000400", + "0x0000000000000000000000000000000000000800", + "0x0000000000000000000000000000000000000801", + "0x0000000000000000000000000000000000000802", + "0x0000000000000000000000000000000000000803", + "0x0000000000000000000000000000000000000804" + ], + "evm_channels": [ + "channel-10", + "channel-31", + "channel-83" + ] + } + }, "feegrant": { "allowances": [] }, @@ -122,6 +153,18 @@ "registered_counterparty_payees": [], "forward_relayers": [] }, + "feemarket": { + "params": { + "no_base_fee": false, + "base_fee_change_denominator": 8, + "elasticity_multiplier": 2, + "enable_height": "0", + "base_fee": "1000000000", + "min_gas_price": "0.000000000000000000", + "min_gas_multiplier": "0.500000000000000000" + }, + "block_gas": "0" + }, "genutil": { "gen_txs": [ { @@ -143,18 +186,18 @@ }, "min_self_delegation": "1", "delegator_address": "", - "validator_address": "wardenvaloper1rek5rtdwy6p82fdkyejwhch9hy0q9z8ue0ata3", + "validator_address": "wardenvaloper1y9t4798ndu3e7nu09vxxmchjp2amcd00tc5k8q", "pubkey": { "@type": "/cosmos.crypto.ed25519.PubKey", - "key": "4f3W9oVO+6hvgsDo6YzAJ7ZrSqBkTdcHxuxsxUO9lWA=" + "key": "sB0v2sexXBj8yfMJfmdIiO1mNPoN3lr2VYyBR9s8hGM=" }, "value": { - "denom": "uward", - "amount": "1000000000" + "denom": "award", + "amount": "1000000000000000000000" } } ], - "memo": "ad8e6990a2d43f03134cf9ccef09a682ccb7848e@192.168.1.130:26656", + "memo": "edea41fe7a5926a8ba78dc347bddd1cc79f40c70@192.168.88.206:26656", "timeout_height": "0", "extension_options": [], "non_critical_extension_options": [] @@ -163,8 +206,8 @@ "signer_infos": [ { "public_key": { - "@type": "/cosmos.crypto.secp256k1.PubKey", - "key": "ArEm/nZfRvbnQlFh6aR9V7lF5J+YKWpEw3w5EUJCNVtm" + "@type": "/ethermint.crypto.v1.ethsecp256k1.PubKey", + "key": "A26udSYfpMhM1y9ZbRuCnkpWCw98mKknZW+ZUl0QS3sD" }, "mode_info": { "single": { @@ -183,7 +226,7 @@ "tip": null }, "signatures": [ - "FOCTlC9zqsKzDAbOYhbPoNt+If+H6HDG06rKwmrzs00C2zJP7TLhS9l2LTK5uWNCcmu4PX5re7HtkAkAWJa4iw==" + "cAqiwzhlp6OFM0/yUTBqjPZl6MYx+ytRJZr6dNOcY1BzIyP2QflNR+mCBdxrlLCQ2h4i8fnWNEgZDmlHlLGINgE=" ] } ] @@ -207,7 +250,7 @@ "params": { "min_deposit": [ { - "denom": "uward", + "denom": "award", "amount": "10000000" } ], @@ -223,7 +266,7 @@ "expedited_threshold": "0.667000000000000000", "expedited_min_deposit": [ { - "denom": "uward", + "denom": "award", "amount": "50000000" } ], @@ -285,9 +328,6 @@ } } }, - "incentives": { - "registry": [] - }, "interchainaccounts": { "controller_genesis_state": { "active_channels": [], @@ -327,7 +367,7 @@ "annual_provisions": "0.000000000000000000" }, "params": { - "mint_denom": "uward", + "mint_denom": "award", "inflation_rate_change": "0.130000000000000000", "inflation_max": "0.200000000000000000", "inflation_min": "0.070000000000000000", @@ -358,8 +398,8 @@ "max_validators": 100, "max_entries": 7, "historical_entries": 10000, - "bond_denom": "uward", - "min_commission_rate": "0.000000000000000000" + "bond_denom": "award", + "min_commission_rate": "0.050000000000000000" }, "last_total_power": "0", "last_validator_powers": [], diff --git a/tests/testdata/snapshot-base/config/gentx/gentx-ad8e6990a2d43f03134cf9ccef09a682ccb7848e.json b/tests/testdata/snapshot-base/config/gentx/gentx-ad8e6990a2d43f03134cf9ccef09a682ccb7848e.json deleted file mode 100644 index e26603ca6..000000000 --- a/tests/testdata/snapshot-base/config/gentx/gentx-ad8e6990a2d43f03134cf9ccef09a682ccb7848e.json +++ /dev/null @@ -1 +0,0 @@ -{"body":{"messages":[{"@type":"/cosmos.staking.v1beta1.MsgCreateValidator","description":{"moniker":"testing","identity":"","website":"","security_contact":"","details":""},"commission":{"rate":"0.100000000000000000","max_rate":"0.200000000000000000","max_change_rate":"0.010000000000000000"},"min_self_delegation":"1","delegator_address":"","validator_address":"wardenvaloper1rek5rtdwy6p82fdkyejwhch9hy0q9z8ue0ata3","pubkey":{"@type":"/cosmos.crypto.ed25519.PubKey","key":"4f3W9oVO+6hvgsDo6YzAJ7ZrSqBkTdcHxuxsxUO9lWA="},"value":{"denom":"uward","amount":"1000000000"}}],"memo":"ad8e6990a2d43f03134cf9ccef09a682ccb7848e@192.168.1.130:26656","timeout_height":"0","extension_options":[],"non_critical_extension_options":[]},"auth_info":{"signer_infos":[{"public_key":{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"ArEm/nZfRvbnQlFh6aR9V7lF5J+YKWpEw3w5EUJCNVtm"},"mode_info":{"single":{"mode":"SIGN_MODE_DIRECT"}},"sequence":"0"}],"fee":{"amount":[],"gas_limit":"200000","payer":"","granter":""},"tip":null},"signatures":["FOCTlC9zqsKzDAbOYhbPoNt+If+H6HDG06rKwmrzs00C2zJP7TLhS9l2LTK5uWNCcmu4PX5re7HtkAkAWJa4iw=="]} diff --git a/tests/testdata/snapshot-base/config/gentx/gentx-edea41fe7a5926a8ba78dc347bddd1cc79f40c70.json b/tests/testdata/snapshot-base/config/gentx/gentx-edea41fe7a5926a8ba78dc347bddd1cc79f40c70.json new file mode 100644 index 000000000..34f7f7ea3 --- /dev/null +++ b/tests/testdata/snapshot-base/config/gentx/gentx-edea41fe7a5926a8ba78dc347bddd1cc79f40c70.json @@ -0,0 +1 @@ +{"body":{"messages":[{"@type":"/cosmos.staking.v1beta1.MsgCreateValidator","description":{"moniker":"testing","identity":"","website":"","security_contact":"","details":""},"commission":{"rate":"0.100000000000000000","max_rate":"0.200000000000000000","max_change_rate":"0.010000000000000000"},"min_self_delegation":"1","delegator_address":"","validator_address":"wardenvaloper1y9t4798ndu3e7nu09vxxmchjp2amcd00tc5k8q","pubkey":{"@type":"/cosmos.crypto.ed25519.PubKey","key":"sB0v2sexXBj8yfMJfmdIiO1mNPoN3lr2VYyBR9s8hGM="},"value":{"denom":"award","amount":"1000000000000000000000"}}],"memo":"edea41fe7a5926a8ba78dc347bddd1cc79f40c70@192.168.88.206:26656","timeout_height":"0","extension_options":[],"non_critical_extension_options":[]},"auth_info":{"signer_infos":[{"public_key":{"@type":"/ethermint.crypto.v1.ethsecp256k1.PubKey","key":"A26udSYfpMhM1y9ZbRuCnkpWCw98mKknZW+ZUl0QS3sD"},"mode_info":{"single":{"mode":"SIGN_MODE_DIRECT"}},"sequence":"0"}],"fee":{"amount":[],"gas_limit":"200000","payer":"","granter":""},"tip":null},"signatures":["cAqiwzhlp6OFM0/yUTBqjPZl6MYx+ytRJZr6dNOcY1BzIyP2QflNR+mCBdxrlLCQ2h4i8fnWNEgZDmlHlLGINgE="]} diff --git a/tests/testdata/snapshot-base/config/node_key.json b/tests/testdata/snapshot-base/config/node_key.json index 9390273f8..8393f5e39 100644 --- a/tests/testdata/snapshot-base/config/node_key.json +++ b/tests/testdata/snapshot-base/config/node_key.json @@ -1 +1 @@ -{"priv_key":{"type":"tendermint/PrivKeyEd25519","value":"snKWKW3EyCq+Auu+uV7gz6AX9FKBOG6sez9TmPscTaxrfcEJumzE4G9rvcP56WhZjOIgyXJsScmIeFZr85/jDQ=="}} \ No newline at end of file +{"priv_key":{"type":"tendermint/PrivKeyEd25519","value":"qAr+u/msOJgGX2qckgcZ5DrPcdOxuyX7BCG7UWOOdoNe4PidI1hUkBXji6wsorZJArJq+kJikw9cCGVJel5jYQ=="}} \ No newline at end of file diff --git a/tests/testdata/snapshot-base/config/priv_validator_key.json b/tests/testdata/snapshot-base/config/priv_validator_key.json index 7e9ef9cff..36f24504f 100644 --- a/tests/testdata/snapshot-base/config/priv_validator_key.json +++ b/tests/testdata/snapshot-base/config/priv_validator_key.json @@ -1,11 +1,11 @@ { - "address": "84464F1F9E140A7313509EFF24086BEF19107A65", + "address": "6C7E0B371C573499684EBD512550163B3996906F", "pub_key": { "type": "tendermint/PubKeyEd25519", - "value": "4f3W9oVO+6hvgsDo6YzAJ7ZrSqBkTdcHxuxsxUO9lWA=" + "value": "sB0v2sexXBj8yfMJfmdIiO1mNPoN3lr2VYyBR9s8hGM=" }, "priv_key": { "type": "tendermint/PrivKeyEd25519", - "value": "V6TbZa1hJoJthibsfTLTrDFO2GhgnxBUya/KEnmjstXh/db2hU77qG+CwOjpjMAntmtKoGRN1wfG7GzFQ72VYA==" + "value": "Bv5SMr8yegHHqnrDMsOVfexuN0K5O90Nkoh+Lzz2HBywHS/ax7FcGPzJ8wl+Z0iI7WY0+g3eWvZVjIFH2zyEYw==" } } \ No newline at end of file diff --git a/tests/testdata/snapshot-base/keyring-test/1e6d41adae26827525b62664ebe2e5b91e0288fc.address b/tests/testdata/snapshot-base/keyring-test/1e6d41adae26827525b62664ebe2e5b91e0288fc.address deleted file mode 100644 index 97eb4afb2..000000000 --- a/tests/testdata/snapshot-base/keyring-test/1e6d41adae26827525b62664ebe2e5b91e0288fc.address +++ /dev/null @@ -1 +0,0 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNi0yMSAxMDoxMDo1NC41MTUyMzMgKzAyMDAgQ0VTVCBtPSswLjAzOTQxNDQxNyIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6IlFaeTdLVmtlRjltMHJFQUQifQ.RVf2husSJQ9Gt8-6yuFMkPLx7sK5gd35KfX3xtbPsKLTsY-WeB92eA.NmOpyJGK5sjlsRG8.KFh7rYUSFAZWlgFNxA2UsVYelPZxyhhz7QazZVXl-rAR8LlnueZh1uJGKq0QOGIB_SSgj_3u7vD7424NSsdDe4mfxF5Vsx_iE6hxmnkhJOtN-HCOv75MoLUFPgswV1ewM2rwLJjaTza0GyMcxFAFhPa0xFEO30wAg97INFFSCCgOSVcAfl8rPnemt6onKk5Wg6ksGqVgZnf33jr73Mw4GJ-PAgFj-Svtyq20OrzV0LzWMHmqpfg.u3kSSPZmFHygGMOhNRdlbg \ No newline at end of file diff --git a/tests/testdata/snapshot-base/keyring-test/21575f14f36f239f4f8f2b0c6de2f20abbbc35ef.address b/tests/testdata/snapshot-base/keyring-test/21575f14f36f239f4f8f2b0c6de2f20abbbc35ef.address new file mode 100644 index 000000000..8a1a36114 --- /dev/null +++ b/tests/testdata/snapshot-base/keyring-test/21575f14f36f239f4f8f2b0c6de2f20abbbc35ef.address @@ -0,0 +1 @@ +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MDo1Ni44MjQ1NDEgKzAzMDAgTVNLIG09KzAuMDYwMjkyNTQzIiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiUGZURGo4YUNfRnF0Z2drMyJ9.ExwmQRHpcyf2UAE7irjaDJ_ffoavUZvizc9oXRpuJKxqzEg7JDkIwA.zQUHdYWcgHW31LYy._anbSRzuone2lKR69MlZGWKM3K85f5olDMZIsxAl-mfntygq_ASs3JNtX_fKITM8soHMQUIg34ytpg57jYnPSooXjwgU10o06jkcYFJ4ob4m3pDexuFohj1ip8GCIPdImKyq1XA_KntB4vSg2ZKkLnbRTZiDfWvQWyy18bePDgTQCyMH_sWcwZplUys0cNb4O7NW3fmWmZW_IdMZ72gBMf2bDnMWUzxtY-yeVFaP0iHv57uwjY4.pKM2lMqO1BJxW_kxbaIObg \ No newline at end of file diff --git a/tests/testdata/snapshot-base/keyring-test/alice.info b/tests/testdata/snapshot-base/keyring-test/alice.info index 0d35b9a05..d86d5ea51 100644 --- a/tests/testdata/snapshot-base/keyring-test/alice.info +++ b/tests/testdata/snapshot-base/keyring-test/alice.info @@ -1 +1 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNi0yMSAxMDoxMDo1NC41MTQxODQgKzAyMDAgQ0VTVCBtPSswLjAzODM2NTEyNiIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6Il9nOC0ydWVTa2pHZWQ5X2QifQ.jHmGuEzZv9brISN79ZIupar1mLfRtAxbvlWZcDzEwWO5MaRrXZBrVw.TOryMkVGPsiJmLnn.D_6sL6zZXgRZbipUPWWCm4ejm6K7tKbrXqQ4b0-ZJhpouxP3PhBDJypBBAe_66f1Kn9fy3yCejmPAOAd4P7LFRaqHdl-PmkKoqwdfHOUATJQTWbXOcHeTz0QeYjbhCkm-2SqMlyvaiu2kZJPszYLgjrIfFr_-rhWXG2izvLW1umF_l5Yi39YwrWq-JaAChzNXVJiVy8qwvJu-GeTxb9fXEBGM72hut-mYHMvM-znHs9GR83wklQ5flzmGxo1BBQMSmMfkfCFp3gGV2X-UItgbWq1MbU2gRp6PX02rglhnvxofLRZY05DQO31pAdc8E_nKItzh5hSxjI-SngDCRfzFNGKy1qhvTMThkyK0O7cZhu2m2Igdvt1gMvqbzcKWmB-Lx30Y2-YOAbLmd_FC39LfCkpO509opWiTkjIZS6KbR80qo-MBnqxM1GFJWY.8F6BKeDX70VKMg7fOBcwxQ \ No newline at end of file +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MDo1Ni44MjMwNDIgKzAzMDAgTVNLIG09KzAuMDU4NzkzMTI2IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiWVNvZnkzMENja0JPZGFuZyJ9.9pYnEu4Z-6uXzq2HAcf8ocfWoKfy5VyIBHhbiUt2JJn5Ds_NCDp2Mw.MvwXjvifdaRugSeY.9if8Q3n8o5O6xqDVgky7fHk1bUZfCKD9J4hX7PfdlPkWman9-PyhWxfXisJXPCyWArSs3NsU7xAC1T61FEd-TwSV4TWknVfFd1Gb0IG4yTCINSY2n00QqtAqw1suJiohuuSwB1NFVSZ8cMcQIxepL3vKuhK30LZbqkpfhWdMJNbf5SZMvarmDGpfPsSEbKHloF9lnLl2P45qejvbSiQ0z5iQMa78eURYS8vMPog_bQJbJF1p40P5iLsVAZfbkL3hZ8PDGqFJy_XkvqpDpdjrTWubLK1Jg-gClDI8Cuj9NDw-dIySe-0jKwtMwOnF2_3QBpnt1vzWGVz2efLgsWogUbV2Zg7NLlFvaN2dhR5UpXk_f4pZqUmX5EQQhQIdfTCjd1G-t-hyCKVPmSfaWlrI5A1C9GlLvxol_6Xaq5dm4LZP77mWmE88WZNKiZXHHEFExmji5PZzzY9_eXg-5jxhr7-ffic._b3KcMPHdIyIdQa_AUptRA \ No newline at end of file diff --git a/tests/testdata/snapshot-keychain/config/app.toml.tmpl b/tests/testdata/snapshot-keychain/config/app.toml.tmpl index 3191df551..4ada47e12 100644 --- a/tests/testdata/snapshot-keychain/config/app.toml.tmpl +++ b/tests/testdata/snapshot-keychain/config/app.toml.tmpl @@ -8,7 +8,7 @@ # The minimum gas prices a validator is willing to accept for processing a # transaction. A transaction's fees must meet the minimum of any denomination # specified in this config (e.g. 0.25token1,0.0001token2). -minimum-gas-prices = "0uward" +minimum-gas-prices = "0award" # The maximum gas a query coming over rest/grpc may consume. # If this is set to zero, the query can consume an unbounded amount of gas. @@ -268,3 +268,141 @@ price_ttl = "0s" # is the block time of the chain. Otherwise, 1.5 seconds (1500ms) is a good default. If this # is greater than 1 minute (1m), the app will not start. interval = "0s" + +############################################################################### +### EVM Configuration ### +############################################################################### + +[evm] + +# Tracer defines the 'vm.Tracer' type that the EVM will use when the node is run in +# debug mode. To enable tracing use the '--evm.tracer' flag when starting your node. +# Valid types are: json|struct|access_list|markdown +tracer = "" + +# MaxTxGasWanted defines the gas wanted for each eth tx returned in ante handler in check tx mode. +max-tx-gas-wanted = 0 + +############################################################################### +### JSON RPC Configuration ### +############################################################################### + +[json-rpc] + +# Enable defines if the JSONRPC server should be enabled. +enable = true + +# Address defines the EVM RPC HTTP server address to bind to. +address = "127.0.0.1:8545" + +# Address defines the EVM WebSocket server address to bind to. +ws-address = "127.0.0.1:8546" + +# API defines a list of JSON-RPC namespaces that should be enabled +# Example: "eth,txpool,personal,net,debug,web3" +api = "eth,net,web3" + +# GasCap sets a cap on gas that can be used in eth_call/estimateGas (0=infinite). Default: 25,000,000. +gas-cap = 25000000 + +# Allow insecure account unlocking when account-related RPCs are exposed by http +allow-insecure-unlock = true + +# EVMTimeout is the global timeout for eth_call. Default: 5s. +evm-timeout = "5s" + +# TxFeeCap is the global tx-fee cap for send transaction. Default: 1eth. +txfee-cap = 1 + +# FilterCap sets the global cap for total number of filters that can be created +filter-cap = 200 + +# FeeHistoryCap sets the global cap for total number of blocks that can be fetched +feehistory-cap = 100 + +# LogsCap defines the max number of results can be returned from single 'eth_getLogs' query. +logs-cap = 10000 + +# BlockRangeCap defines the max block range allowed for 'eth_getLogs' query. +block-range-cap = 10000 + +# HTTPTimeout is the read/write timeout of http json-rpc server. +http-timeout = "30s" + +# HTTPIdleTimeout is the idle timeout of http json-rpc server. +http-idle-timeout = "2m0s" + +# AllowUnprotectedTxs restricts unprotected (non EIP155 signed) transactions to be submitted via +# the node's RPC when the global parameter is disabled. +allow-unprotected-txs = false + +# MaxOpenConnections sets the maximum number of simultaneous connections +# for the server listener. +max-open-connections = 0 + +# EnableIndexer enables the custom transaction indexer for the EVM (ethereum transactions). +enable-indexer = false + +# MetricsAddress defines the EVM Metrics server address to bind to. Pass --metrics in CLI to enable +# Prometheus metrics path: /debug/metrics/prometheus +metrics-address = "127.0.0.1:6065" + +# Upgrade height for fix of revert gas refund logic when transaction reverted. +fix-revert-gas-refund-height = 0 + +############################################################################### +### TLS Configuration ### +############################################################################### + +[tls] + +# Certificate path defines the cert.pem file path for the TLS configuration. +certificate-path = "" + +# Key path defines the key.pem file path for the TLS configuration. +key-path = "" + +############################################################################### +### Rosetta Configuration ### +############################################################################### + +[rosetta] + +# Enable defines if the Rosetta API server should be enabled. +enable = false + +# Address defines the Rosetta API server to listen on. +address = ":8080" + +# Network defines the name of the blockchain that will be returned by Rosetta. +blockchain = "evmos" + +# Network defines the name of the network that will be returned by Rosetta. +network = "evmos" + +# TendermintRPC defines the endpoint to connect to CometBFT RPC, +# specifying 'tcp://' before is not required, usually it's at port 26657 +tendermint-rpc = "localhost:26657" + +# GRPCEndpoint defines the cosmos application gRPC endpoint +# usually it is located at 9090 port +grpc-endpoint = "localhost:{{ .GRPCPort }}" + +# Retries defines the number of retries when connecting to the node before failing. +retries = 5 + +# Offline defines if Rosetta server should run in offline mode. +offline = false + +# EnableFeeSuggestion indicates to use fee suggestion when 'construction/metadata' is called without gas limit and price. +enable-fee-suggestion = false + +# GasToSuggest defines gas limit when calculating the fee +gas-to-suggest = 300000 + +# DenomToSuggest defines the defult denom for fee suggestion. +# Price must be in minimum-gas-prices. +denom-to-suggest = "aevmos" + +# GasPrices defines the gas prices for fee suggestion +gas-prices = "4000000.000000000000000000aevmos" diff --git a/tests/testdata/snapshot-keychain/config/client.toml.tmpl b/tests/testdata/snapshot-keychain/config/client.toml.tmpl index bb873a3e0..32f4afd09 100644 --- a/tests/testdata/snapshot-keychain/config/client.toml.tmpl +++ b/tests/testdata/snapshot-keychain/config/client.toml.tmpl @@ -6,7 +6,7 @@ ############################################################################### # The network chain ID -chain-id = "warden" +chain-id = "warden_1337-1" # The keyring's backend, where the keys are stored (os|file|kwallet|pass|test|memory) keyring-backend = "test" diff --git a/tests/testdata/snapshot-keychain/config/config.toml.tmpl b/tests/testdata/snapshot-keychain/config/config.toml.tmpl index f5117a9ae..b2ea94669 100644 --- a/tests/testdata/snapshot-keychain/config/config.toml.tmpl +++ b/tests/testdata/snapshot-keychain/config/config.toml.tmpl @@ -8,7 +8,7 @@ # The version of the CometBFT binary that created or # last modified the config file. Do not modify this. -version = "0.38.10" +version = "0.38.11" ####################################################################### ### Main Base Config Options ### diff --git a/tests/testdata/snapshot-keychain/config/genesis.json b/tests/testdata/snapshot-keychain/config/genesis.json index 95eb8d564..fc1e24fe2 100644 --- a/tests/testdata/snapshot-keychain/config/genesis.json +++ b/tests/testdata/snapshot-keychain/config/genesis.json @@ -1,8 +1,8 @@ { "app_name": "wardend", - "app_version": "v0.4.1-15-gde31a024-dirty", - "genesis_time": "2024-08-13T22:44:04.520400588Z", - "chain_id": "warden", + "app_version": "v0.4.1-69-g6035cc48-dirty", + "genesis_time": "2024-08-28T15:50:59.332693Z", + "chain_id": "warden_1337-1", "initial_height": 1, "app_hash": null, "app_state": { @@ -24,21 +24,21 @@ "accounts": [ { "@type": "/cosmos.auth.v1beta1.BaseAccount", - "address": "warden1ja3g9zysr3p7qhzl7xcpw5fews60ax2tkagwdq", + "address": "warden1fk8kcn2jjg6g75dcxv6hce2y6edwnfh59dl3a2", "pub_key": null, "account_number": "0", "sequence": "0" }, { "@type": "/cosmos.auth.v1beta1.BaseAccount", - "address": "warden1fznczn09y6jhe8mcuus4aafd9v9prrjr0g24df", + "address": "warden1nusjj7fawxr75q85j4p250jg0n2g4vhhcegy5c", "pub_key": null, "account_number": "1", "sequence": "0" }, { "@type": "/cosmos.auth.v1beta1.BaseAccount", - "address": "warden1qkzw3hf9ll9x6ytvwtgpt604m2m7wmu5fp30r4", + "address": "warden18w9sk4xtv856a9hcx25p9useqcq044cgsf7p9t", "pub_key": null, "account_number": "2", "sequence": "0" @@ -55,37 +55,37 @@ }, "balances": [ { - "address": "warden1qkzw3hf9ll9x6ytvwtgpt604m2m7wmu5fp30r4", + "address": "warden18w9sk4xtv856a9hcx25p9useqcq044cgsf7p9t", "coins": [ { - "denom": "uward", - "amount": "10000000000000000000000000" + "denom": "award", + "amount": "10000000000000000000000000000000000000" } ] }, { - "address": "warden1fznczn09y6jhe8mcuus4aafd9v9prrjr0g24df", + "address": "warden1fk8kcn2jjg6g75dcxv6hce2y6edwnfh59dl3a2", "coins": [ { - "denom": "uward", - "amount": "10000000000000000000000000" + "denom": "award", + "amount": "10000000000000000000000000000000000000" } ] }, { - "address": "warden1ja3g9zysr3p7qhzl7xcpw5fews60ax2tkagwdq", + "address": "warden1nusjj7fawxr75q85j4p250jg0n2g4vhhcegy5c", "coins": [ { - "denom": "uward", - "amount": "10000000000000000000000000" + "denom": "award", + "amount": "10000000000000000000000000000000000000" } ] } ], "supply": [ { - "denom": "uward", - "amount": "30000000000000000000000000" + "denom": "award", + "amount": "30000000000000000000000000000000000000" } ], "denom_metadata": [], @@ -102,7 +102,7 @@ "consensus": null, "crisis": { "constant_fee": { - "denom": "uward", + "denom": "award", "amount": "1000" } }, @@ -128,6 +128,53 @@ "evidence": { "evidence": [] }, + "evm": { + "accounts": [], + "params": { + "evm_denom": "aevmos", + "enable_create": true, + "enable_call": true, + "extra_eips": [ + "3855" + ], + "chain_config": { + "homestead_block": "0", + "dao_fork_block": "0", + "dao_fork_support": true, + "eip150_block": "0", + "eip150_hash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "eip155_block": "0", + "eip158_block": "0", + "byzantium_block": "0", + "constantinople_block": "0", + "petersburg_block": "0", + "istanbul_block": "0", + "muir_glacier_block": "0", + "berlin_block": "0", + "london_block": "0", + "arrow_glacier_block": "0", + "gray_glacier_block": "0", + "merge_netsplit_block": "0", + "shanghai_block": "0", + "cancun_block": "0" + }, + "allow_unprotected_txs": false, + "active_precompiles": [ + "0x0000000000000000000000000000000000000100", + "0x0000000000000000000000000000000000000400", + "0x0000000000000000000000000000000000000800", + "0x0000000000000000000000000000000000000801", + "0x0000000000000000000000000000000000000802", + "0x0000000000000000000000000000000000000803", + "0x0000000000000000000000000000000000000804" + ], + "evm_channels": [ + "channel-10", + "channel-31", + "channel-83" + ] + } + }, "feegrant": { "allowances": [] }, @@ -138,6 +185,18 @@ "registered_counterparty_payees": [], "forward_relayers": [] }, + "feemarket": { + "params": { + "no_base_fee": false, + "base_fee_change_denominator": 8, + "elasticity_multiplier": 2, + "enable_height": "0", + "base_fee": "1000000000", + "min_gas_price": "0.000000000000000000", + "min_gas_multiplier": "0.500000000000000000" + }, + "block_gas": "0" + }, "genutil": { "gen_txs": [ { @@ -159,18 +218,18 @@ }, "min_self_delegation": "1", "delegator_address": "", - "validator_address": "wardenvaloper1ja3g9zysr3p7qhzl7xcpw5fews60ax2t8x2tz3", + "validator_address": "wardenvaloper1fk8kcn2jjg6g75dcxv6hce2y6edwnfh55ka5jm", "pubkey": { "@type": "/cosmos.crypto.ed25519.PubKey", - "key": "2PbRI/6f1Ss7xKRvhonr9SCp6o/9BnjcaPJYNDwW9/Y=" + "key": "aLhCwTSYNK+GM9o3f2xZO5D4Eu90ZjqQNyKef8w9nSw=" }, "value": { - "denom": "uward", - "amount": "1000000000" + "denom": "award", + "amount": "1000000000000000000000" } } ], - "memo": "ddf8fa75c9baf73c00db1b864d6e5fd42e09b36d@172.17.0.2:26656", + "memo": "3086b01687ba4f1cb68973bab49dc5c04355b751@192.168.88.206:26656", "timeout_height": "0", "extension_options": [], "non_critical_extension_options": [] @@ -179,8 +238,8 @@ "signer_infos": [ { "public_key": { - "@type": "/cosmos.crypto.secp256k1.PubKey", - "key": "A0uATptC8pEHpxnMaaX8Mcr0GFETkAIMAAeF39CLUEEP" + "@type": "/ethermint.crypto.v1.ethsecp256k1.PubKey", + "key": "A+jgSO+SwQeV6YP64g8RqcxAh7nQP0gphHZT41Se6zTk" }, "mode_info": { "single": { @@ -199,7 +258,7 @@ "tip": null }, "signatures": [ - "9pOft/EH1pNX0TH9Hxu6tMgGhM3BiLS+xNP65yOG7W1/5kNM9iTuP0p4fbyPRGsbDIXIWf1yuWciPN7DsSIU7A==" + "QZemtdT9KKwMANV6OUBFKtQWtGNz+zDce0R4SKZxVIJhgB/4ve4a/ftNf+72AzEk8O3GhJkjEyabLUSl+9sViwA=" ] } ] @@ -223,7 +282,7 @@ "params": { "min_deposit": [ { - "denom": "uward", + "denom": "award", "amount": "10000000" } ], @@ -239,7 +298,7 @@ "expedited_threshold": "0.667000000000000000", "expedited_min_deposit": [ { - "denom": "uward", + "denom": "award", "amount": "50000000" } ], @@ -340,7 +399,7 @@ "annual_provisions": "0.000000000000000000" }, "params": { - "mint_denom": "uward", + "mint_denom": "award", "inflation_rate_change": "0.130000000000000000", "inflation_max": "0.200000000000000000", "inflation_min": "0.070000000000000000", @@ -371,8 +430,8 @@ "max_validators": 100, "max_entries": 7, "historical_entries": 10000, - "bond_denom": "uward", - "min_commission_rate": "0.000000000000000000" + "bond_denom": "award", + "min_commission_rate": "0.050000000000000000" }, "last_total_power": "0", "last_validator_powers": [], @@ -398,36 +457,39 @@ "keychains": [ { "id": "1", - "creator": "warden1fznczn09y6jhe8mcuus4aafd9v9prrjr0g24df", - "description": "Test Keychain", + "creator": "warden1nusjj7fawxr75q85j4p250jg0n2g4vhhcegy5c", + "name": "Test Keychain", "admins": [ - "warden1fznczn09y6jhe8mcuus4aafd9v9prrjr0g24df" + "warden1nusjj7fawxr75q85j4p250jg0n2g4vhhcegy5c" ], "writers": [ - "warden1fznczn09y6jhe8mcuus4aafd9v9prrjr0g24df" + "warden1nusjj7fawxr75q85j4p250jg0n2g4vhhcegy5c" ], "fees": { "key_req": [ { - "denom": "uward", + "denom": "award", "amount": "2" } ], "sig_req": [ { - "denom": "uward", + "denom": "award", "amount": "2" } ] - } + }, + "description": "", + "url": "", + "keybase_id": null } ], "spaces": [ { "id": "1", - "creator": "warden1qkzw3hf9ll9x6ytvwtgpt604m2m7wmu5fp30r4", + "creator": "warden18w9sk4xtv856a9hcx25p9useqcq044cgsf7p9t", "owners": [ - "warden1qkzw3hf9ll9x6ytvwtgpt604m2m7wmu5fp30r4" + "warden18w9sk4xtv856a9hcx25p9useqcq044cgsf7p9t" ], "admin_rule_id": "0", "sign_rule_id": "0" diff --git a/tests/testdata/snapshot-keychain/config/gentx/gentx-3086b01687ba4f1cb68973bab49dc5c04355b751.json b/tests/testdata/snapshot-keychain/config/gentx/gentx-3086b01687ba4f1cb68973bab49dc5c04355b751.json new file mode 100644 index 000000000..510005664 --- /dev/null +++ b/tests/testdata/snapshot-keychain/config/gentx/gentx-3086b01687ba4f1cb68973bab49dc5c04355b751.json @@ -0,0 +1 @@ +{"body":{"messages":[{"@type":"/cosmos.staking.v1beta1.MsgCreateValidator","description":{"moniker":"testing","identity":"","website":"","security_contact":"","details":""},"commission":{"rate":"0.100000000000000000","max_rate":"0.200000000000000000","max_change_rate":"0.010000000000000000"},"min_self_delegation":"1","delegator_address":"","validator_address":"wardenvaloper1fk8kcn2jjg6g75dcxv6hce2y6edwnfh55ka5jm","pubkey":{"@type":"/cosmos.crypto.ed25519.PubKey","key":"aLhCwTSYNK+GM9o3f2xZO5D4Eu90ZjqQNyKef8w9nSw="},"value":{"denom":"award","amount":"1000000000000000000000"}}],"memo":"3086b01687ba4f1cb68973bab49dc5c04355b751@192.168.88.206:26656","timeout_height":"0","extension_options":[],"non_critical_extension_options":[]},"auth_info":{"signer_infos":[{"public_key":{"@type":"/ethermint.crypto.v1.ethsecp256k1.PubKey","key":"A+jgSO+SwQeV6YP64g8RqcxAh7nQP0gphHZT41Se6zTk"},"mode_info":{"single":{"mode":"SIGN_MODE_DIRECT"}},"sequence":"0"}],"fee":{"amount":[],"gas_limit":"200000","payer":"","granter":""},"tip":null},"signatures":["QZemtdT9KKwMANV6OUBFKtQWtGNz+zDce0R4SKZxVIJhgB/4ve4a/ftNf+72AzEk8O3GhJkjEyabLUSl+9sViwA="]} diff --git a/tests/testdata/snapshot-keychain/config/gentx/gentx-ddf8fa75c9baf73c00db1b864d6e5fd42e09b36d.json b/tests/testdata/snapshot-keychain/config/gentx/gentx-ddf8fa75c9baf73c00db1b864d6e5fd42e09b36d.json deleted file mode 100644 index 23603e18b..000000000 --- a/tests/testdata/snapshot-keychain/config/gentx/gentx-ddf8fa75c9baf73c00db1b864d6e5fd42e09b36d.json +++ /dev/null @@ -1 +0,0 @@ -{"body":{"messages":[{"@type":"/cosmos.staking.v1beta1.MsgCreateValidator","description":{"moniker":"testing","identity":"","website":"","security_contact":"","details":""},"commission":{"rate":"0.100000000000000000","max_rate":"0.200000000000000000","max_change_rate":"0.010000000000000000"},"min_self_delegation":"1","delegator_address":"","validator_address":"wardenvaloper1ja3g9zysr3p7qhzl7xcpw5fews60ax2t8x2tz3","pubkey":{"@type":"/cosmos.crypto.ed25519.PubKey","key":"2PbRI/6f1Ss7xKRvhonr9SCp6o/9BnjcaPJYNDwW9/Y="},"value":{"denom":"uward","amount":"1000000000"}}],"memo":"ddf8fa75c9baf73c00db1b864d6e5fd42e09b36d@172.17.0.2:26656","timeout_height":"0","extension_options":[],"non_critical_extension_options":[]},"auth_info":{"signer_infos":[{"public_key":{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"A0uATptC8pEHpxnMaaX8Mcr0GFETkAIMAAeF39CLUEEP"},"mode_info":{"single":{"mode":"SIGN_MODE_DIRECT"}},"sequence":"0"}],"fee":{"amount":[],"gas_limit":"200000","payer":"","granter":""},"tip":null},"signatures":["9pOft/EH1pNX0TH9Hxu6tMgGhM3BiLS+xNP65yOG7W1/5kNM9iTuP0p4fbyPRGsbDIXIWf1yuWciPN7DsSIU7A=="]} diff --git a/tests/testdata/snapshot-keychain/config/node_key.json b/tests/testdata/snapshot-keychain/config/node_key.json index ff72cbb56..944bc215b 100644 --- a/tests/testdata/snapshot-keychain/config/node_key.json +++ b/tests/testdata/snapshot-keychain/config/node_key.json @@ -1 +1 @@ -{"priv_key":{"type":"tendermint/PrivKeyEd25519","value":"dwsQAmkdT+wetLEpmjoJewyDovjliquIZYg98u7PBqNUvWa8kSL4mXL8xo2TMiXphWb1FWnpfw84fXCuYKxd0g=="}} \ No newline at end of file +{"priv_key":{"type":"tendermint/PrivKeyEd25519","value":"MFi1gmLpXi5s6rw3GP8GEE+w4bfqPKl0zosz+gG991lsk7t1dP/0RA8pAVmVBfgBkt7ILieRTzm4PoBAN8FdaQ=="}} \ No newline at end of file diff --git a/tests/testdata/snapshot-keychain/config/priv_validator_key.json b/tests/testdata/snapshot-keychain/config/priv_validator_key.json index 7c6e004ad..8cef3e4c4 100644 --- a/tests/testdata/snapshot-keychain/config/priv_validator_key.json +++ b/tests/testdata/snapshot-keychain/config/priv_validator_key.json @@ -1,11 +1,11 @@ { - "address": "C330C7C0667BCF3768C2EAA3651CF803D15BADB8", + "address": "3892F5DA703C74B5402F8CA8EBB0DA687BBF5FB8", "pub_key": { "type": "tendermint/PubKeyEd25519", - "value": "2PbRI/6f1Ss7xKRvhonr9SCp6o/9BnjcaPJYNDwW9/Y=" + "value": "aLhCwTSYNK+GM9o3f2xZO5D4Eu90ZjqQNyKef8w9nSw=" }, "priv_key": { "type": "tendermint/PrivKeyEd25519", - "value": "6+ERLqBcYYO9ETq3rDSEBv025tCuDVMKkof0C2miHyXY9tEj/p/VKzvEpG+Giev1IKnqj/0GeNxo8lg0PBb39g==" + "value": "1/uPtb2rvThzgkEdsC8d41YgIcNpeRmYMRzml53evm1ouELBNJg0r4Yz2jd/bFk7kPgS73RmOpA3Ip5/zD2dLA==" } } \ No newline at end of file diff --git a/tests/testdata/snapshot-keychain/keyring-test/0584e8dd25ffca6d116c72d015e9f5dab7e76f94.address b/tests/testdata/snapshot-keychain/keyring-test/0584e8dd25ffca6d116c72d015e9f5dab7e76f94.address deleted file mode 100644 index bf1f63d06..000000000 --- a/tests/testdata/snapshot-keychain/keyring-test/0584e8dd25ffca6d116c72d015e9f5dab7e76f94.address +++ /dev/null @@ -1 +0,0 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0xMyAyMjo0NDowNS4yNTI5NjQ4NDYgKzAwMDAgVVRDIG09KzAuMTM5NzU4ODU3IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiekk5MWlHeUI2TVM1R3M1TSJ9.VcPfizkUnLF1gqrMXVogMygd3gvi7M6l300E6UzcmKgTMuIwEFcHmg._zMyaKg8N-lU7sTe.BpoFnE705pJ3dayatvt829jra7iJJxDhuHsy6rBXEn69XYUhCRiiy02NxLnu6-0Uluuc4GHbGSfgS5XYDhVU3sQK38qDKoCOiWzJomDseghFYRGQ9IQKhekPx7a9nDo95zHyPceyT5SBDflKgVFUy_9gjpi4Ph06XoG1ETb4qcLLb5SZN5ZZ6YxJvCiKF0kGcAIILTTG5vRf8UntjWUGiqMiMrUgZeBn992JDhxcLbPx9A.orFYPnx6KBvmUZW66p28Kw \ No newline at end of file diff --git a/tests/testdata/snapshot-keychain/keyring-test/3b8b0b54cb61e9ae96f832a812f2190600fad708.address b/tests/testdata/snapshot-keychain/keyring-test/3b8b0b54cb61e9ae96f832a812f2190600fad708.address new file mode 100644 index 000000000..ec99a2768 --- /dev/null +++ b/tests/testdata/snapshot-keychain/keyring-test/3b8b0b54cb61e9ae96f832a812f2190600fad708.address @@ -0,0 +1 @@ +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MDo1OS42NjI4NjYgKzAzMDAgTVNLIG09KzAuMDU4NDkxNDU5IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiMHlrcHE2c1N6RWkzRmMwMCJ9.KHXi4PZDYzvgavvHh0xELZYId_Hsx7FBv9WVNFo-3PDg5GqgCg1akA.NKIrgkaTMgUK_x99.Dw0ILMCg0LsRDOsSXXwx7QDwJJ0VJ22xHw-kmKJaG9rTMmsFvKcfuMnjtV1T52oAkvZOk5T5xZi1XS7BYHNWU_TFhmLuowSnYs4uPAiMVXwP7-JRg3hsaj6lpQLW_TSyIUtB9AL-V_Rr4Y8dEqAoPbUeRR8EqM5-kJx9ofEuXlDE1ypndg0EozJWfwUEkiDWPcR-VgeBLCXjNtiKgFYxgEKWAQ1Z0FsX4j5Q8qTkDUtr_A.822U24kNkONASv-ypX4m2g \ No newline at end of file diff --git a/tests/testdata/snapshot-keychain/keyring-test/48a7814de526a57c9f78e7215ef52d2b0a118e43.address b/tests/testdata/snapshot-keychain/keyring-test/48a7814de526a57c9f78e7215ef52d2b0a118e43.address deleted file mode 100644 index 5299e11ea..000000000 --- a/tests/testdata/snapshot-keychain/keyring-test/48a7814de526a57c9f78e7215ef52d2b0a118e43.address +++ /dev/null @@ -1 +0,0 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0xMyAyMjo0NDowNS4wOTcwNzI5NzkgKzAwMDAgVVRDIG09KzAuMTQ1MTE4NjM3IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoieEFjTFkySTg3TzVHMkRJeSJ9.v59d8GGlyofMrwZcOTNRpu8cjVL7zQ3hFpF9BBYiH1bXc2f2yrfkUw.y-BnEC4bZ8A0v_p_.7lvd3gzereXKLjj2Xu0ikM1_WkyvaiKbP8eIc-bR5OuCsfgEUVYaKyKE-PePRFyQttQZqct3mHBqk_4xFs7asAGzge3ALkCDRBdG9Ptgy-V7FNODPfqKdIlvKI3w4owCUCK2OepGwtg55d6keSjmIH9RMzLHsgRMe0Ku4oOlVvhLDRPjo19WjhoyIpJlQigKBY8xI1fhjydLLI5FAC3da9U1IXtOZE-yhc7nZJVBeb0mwkeIQlg.Qqm4zv-oJQCZyvricLjJ8w \ No newline at end of file diff --git a/tests/testdata/snapshot-keychain/keyring-test/4d8f6c4d5292348f51b833357c6544d65ae9a6f4.address b/tests/testdata/snapshot-keychain/keyring-test/4d8f6c4d5292348f51b833357c6544d65ae9a6f4.address new file mode 100644 index 000000000..49a8381f3 --- /dev/null +++ b/tests/testdata/snapshot-keychain/keyring-test/4d8f6c4d5292348f51b833357c6544d65ae9a6f4.address @@ -0,0 +1 @@ +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MDo1OS41MjIyNzEgKzAzMDAgTVNLIG09KzAuMDU4NjcxNzkzIiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiSHplSDJHLTJFc2d2SWkzUSJ9.1WSWmBa97cgS1QUUNfdD6EI-LEBCc2b6Zjfx6ZPgBupqQl8bUStF9A.sAC920IoAHq1qPCj.MRZBQKh4iZhbMyIX2QF9d3NjbEpcGKyJiT2TvYggWnTLSicQK4a8YYAK8JbpPUDT5bOBl6MMNrAV2MxhnTcMcP7n_azupqwL05NhTPqPM2fjMcQdUOplmdlJWM7pFtYdn4TC7vmubqjvhQMt1WEZj5Vol4b-8GF-us7v178I9JBprjzXnDQVcBR98p57rd-q1B-xfak7wB_Y2KSAECdwM9T-jjbTjWHadSrcx0Up1q6uMQ.qNgPDLioEntwoV1pB-B91g \ No newline at end of file diff --git a/tests/testdata/snapshot-keychain/keyring-test/97628288901c43e05c5ff1b01751397434fe994b.address b/tests/testdata/snapshot-keychain/keyring-test/97628288901c43e05c5ff1b01751397434fe994b.address deleted file mode 100644 index 44975ed61..000000000 --- a/tests/testdata/snapshot-keychain/keyring-test/97628288901c43e05c5ff1b01751397434fe994b.address +++ /dev/null @@ -1 +0,0 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0xMyAyMjo0NDowNC45MzYxMjA3NzQgKzAwMDAgVVRDIG09KzAuMTQxMDMzOTEzIiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiNFdLSDRjTXFYVHZQdWF3YyJ9.SOoVigii0y8n-ycFcs2XE5Tx1hObCrgrM71Ls0vsWUgDoykuo-f8kQ.RPsbmKSgVG6woXFw.YCnNqiEnvf_1jcvMufl-ByCjpJr8LyFHZJLf9Jjq3cbvNmVuaxf3ei726bWkDn8zy2izefbW36nI1tabz_70mgUw2NFH9UcCO7I4DFCKgEU-8CIKMVoKuP5pUCS0kcWlPIuWL4YNej0KcpP5uZNeK6W9weAz0lq5jfEvnkQ4nzRlpBm2zAU5rHV7x44qBL4-OO8kg9lQwrRPFdjQpvvXCJAMe7c0sK4VarXX6DlDkHSnsw.WWQ1I1uN0pTwwqRMP9Lvhg \ No newline at end of file diff --git a/tests/testdata/snapshot-keychain/keyring-test/9f2129793d7187ea00f49542aa3e487cd48ab2f7.address b/tests/testdata/snapshot-keychain/keyring-test/9f2129793d7187ea00f49542aa3e487cd48ab2f7.address new file mode 100644 index 000000000..28c5abc9d --- /dev/null +++ b/tests/testdata/snapshot-keychain/keyring-test/9f2129793d7187ea00f49542aa3e487cd48ab2f7.address @@ -0,0 +1 @@ +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MDo1OS41OTI4MjYgKzAzMDAgTVNLIG09KzAuMDU5MDUwMzM1IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiT1hKQlpEN3dUSjRkal9XTCJ9.S6rXzVdx1iylzGRvBFxb1O5Plhj-glaxF5qA1sjj5JxjH7_DT7lm7g.A7Nnizcmiq84XXzP.7vP2fTnIWDW1NK2Ee3Yb3mtA3BlW98bErmM4zhtNLcoFkttChDwV_IGR_JLv5yubGnx2EGIXc96CBG0qBm9I3k1ZoEsVERpvpUFsKS4gNNm1w8dKrmlWr4ppxHS4tYZGI_h1kpURt9NMWK6-FkcTprjYAbG74d-9V0GHc18GJgsWHgClDm0sY3zqrD4Ct79QfsUzQADmzjH7i6ZYAA_4_wTbrryxf5gkDJKc1i0dTg9XDXj4iIQ.RZBep3vZ7TZ6KQc1Z1l9_A \ No newline at end of file diff --git a/tests/testdata/snapshot-keychain/keyring-test/bob.info b/tests/testdata/snapshot-keychain/keyring-test/bob.info index 908b0e094..abe13b903 100644 --- a/tests/testdata/snapshot-keychain/keyring-test/bob.info +++ b/tests/testdata/snapshot-keychain/keyring-test/bob.info @@ -1 +1 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0xMyAyMjo0NDowNS4yNDczNTQ3MzcgKzAwMDAgVVRDIG09KzAuMTM0MTQ4NjQ4IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiMjJUU3N5SzVkMTdqdTJoWSJ9.NTV_asoz0683vckPiHWxqIDzvO1whHX_Fpzr7ZL5f3L54nQtmcrj3Q.SSUpvuv5_YZdFmZF.8NmXw0yKKsLbFbmeTq5eKStg_lwq_HoH6sVStGzFaiSoVFIwcCBxG5h2h3IIGL-hWUMQv0yIjOXZ555B2zqN-ZBX7VG3wLg67rYJdWsBv6Ovh6n5y6lcThcEnmllD7yInr8Oo2_df1chIDWFickJKLM9IgQYH6Ff9XuIpqHRtGa8L5rdnCvafMvT72UN5FNg8G8r90SBg5T6lV58FbJ69_wAk4S3xJhkbeJ0jkz6nW7bcUnWWPg_DcZI4SU1ML3YHMcvxg5KqWNLH5GKFVU88fUG4rWRD7KfvbzO4cgCn0MqHzh0s6LtOPDn0-tqA-IvWKb4O3HcWMrezcV3W0QGCZqI2G9L3EpIHNClAlWsZd_SfZJ9wESnBdOPef3tKgKIuqj-b58rAzB5WQLg729DV3l3JqH0KE3RBukF8lMPWdiQ5LNlid_r5cE7.6S6W5MJ7WglDVp3nQ_lhzg \ No newline at end of file +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MDo1OS42NjE0OTMgKzAzMDAgTVNLIG09KzAuMDU3MTE4MzM0IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiUF9wVjNZNzhtdTR2d2hZdSJ9.Rn-_ZEcyqzSNTIUfoagb4yTSakHgc6VN1_jkDUhlW34wh5QVWneQfQ.nQNAzYwhU1x_Wu7F.zswd6t5PDfQ3_j3v62tY0z58SzQVGbaXdSO0XK7ZY2uiIUe1B2ChqumoVCbnTprQWrUgangPtrL4KU9YgWncYB95TOTxZVvd9YLYb77qS6VhU5V6fBwB7eOCZfz7MIdw04VMHF7tkWFnJKfR-VD7DBywCGqru-gZCklQ9CJ23tV9kfCC6vRiufodQ7FlzBIgfgKO8yiRMpq9-OL0cAFcSOXW3IYuespqfMtoQRKQDhiwoY5RLCgPdZ4U4xvs3ykrBq-GpPz-nlLJ1lQ2GZauKyCUZlD7kypT0HYAXHoJNJDBOiLEU7wPHx1grPdaUzPICfctHk3hjLVEeugwKvTS6dD7rPFh9aBa6C6EsuCN2kswgyPqhiIVGJNg372KFUhFPNSZWUmah9ovzeaj_igjFmEAWz-daJPgt0PBuDuwZgrYLTiK7L-e4WHTWJ8nmtnlylVr3OBimT7d9Sjcl8GemXMC.lm7khDjo6prsaq1b4DLUDw \ No newline at end of file diff --git a/tests/testdata/snapshot-keychain/keyring-test/val.info b/tests/testdata/snapshot-keychain/keyring-test/val.info index be0ad196b..c19bc90b5 100644 --- a/tests/testdata/snapshot-keychain/keyring-test/val.info +++ b/tests/testdata/snapshot-keychain/keyring-test/val.info @@ -1 +1 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0xMyAyMjo0NDowNC45Mjk2MTI3MjYgKzAwMDAgVVRDIG09KzAuMTM0NTI1NzY1IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiQ3RmcW1BZFdzZ2NJb3Q0YyJ9.B918CdbfZUYqkGKDJ7FXdzMRdiwgsg6i2bVW6oo3qvwZA-ackYEoMQ.hR0ddYjrsURuPESd.wE7HZu0skJBh-orneQzUk7eHLqY-RJ8TexY9XrAvVhJrbuJ5AI92uJ-B2aQigz3MWV1O6egQ71bzHxfdMx_QoMSNb-hINbaOqgO-tBwXjDHB0lyy2Fp3eXPUrhcNAmPVKBbAvwz-DJ8LMfgNbePBq0SVjgS2DcljK6EMlRfwauTjwb_VUeynm9wfJl25R3XGJkwtZfBGnEJK-fZZxGRmWhZ844ICNkilIOMcamp7Z9IxlxuUkPGRvRxUYaGlAgkPl-tx6SnosVyZsaumF4kao8cEVtsxp7eAtVrasEJHJy745IE1hY7INl56g8tjbQS5S3m01t9VrFW2jnBHrahjWZO-80tu00vQv1dg-gw6Try-CN-qO5I016JX2OZ8yFf6p8AlJwlr47X4kLVqoRVbd4SgSpDkL6SnSOrdSPMC0ZbmqSCfifEysN8E.7iW5v1Icn6biG_7hTrMncw \ No newline at end of file +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MDo1OS41MjA5MTggKzAzMDAgTVNLIG09KzAuMDU3MzE5MDg1IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoicDIyRGhMMjM4V0VFZGU5MyJ9.1l5DmbmkPwVhcX7Pc0U6EAMYqf3LElUmEilKfOMQDTk69rkZYjYYVw.VVNa9CeqeSBJZQjz.qCFzghKJSw84ByWihmVI2AA-5z1OmkmrEPowkqm10ghDOS-f5jYAubk7J5ZK0K4-PL36-NkWms0xhZCgm3bVlzkD8FwrRKwlQFpWKIW2gWx1QVaYnZxpi2Vwcc-1hMx07G1X8DZl4LWNUR7JE4KckN6p8xbMgWTF-DnCcuTVjJ4kwZNo2CAGLSXD2HjhrZGcBfcFTuXrJaWjGOOiUIB0SZplsvPHACGBZo-z38sNfHz_V0N6eYmZSBME5KAOjKqgDs0sEiCvKtUZ3KnB2Jm6XNM5kQ-7u4DKo423eJe3XG7nHrXq7sKUEafHRiZyvBoCPHtDpgK2uLy7SAbms4CZB5JrvMkRKv2JC-k-Q8zMvH5n2fZC92QYjYb0-wKaZT6rGMNKMtZip4nWPHCU8tv50_VNsdWoSM390HRRpeERQc_HtkMUs3i65K0ndUt8My9h4MVuItPW2vV7Sq-kYrn4mWJd.FK9pzyUVbwGY2OT4ydCNsw \ No newline at end of file diff --git a/tests/testdata/snapshot-keychain/keyring-test/writer.info b/tests/testdata/snapshot-keychain/keyring-test/writer.info index f3e586e3f..e45e6326f 100644 --- a/tests/testdata/snapshot-keychain/keyring-test/writer.info +++ b/tests/testdata/snapshot-keychain/keyring-test/writer.info @@ -1 +1 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0xMyAyMjo0NDowNS4wOTAyOTE4MjEgKzAwMDAgVVRDIG09KzAuMTM4MzM3NTgwIiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiUkxES0p1TVhxcWtyeGN3TCJ9.10487GySK2hTNwgxwQhrAFa8CSXWw4Bgi5c4Pp4fPlzolrDP43OPgQ.NV_CbtG7eHBSoeDM.HCqg5eA-F9KAL8T7LtEaLQOykZ2HfqYohOCoI4aiXeQZ3KiTqF992TQxV4gk5cPrvWIFRPg4-z_m6r9Yd54sPy_sg49gtOCS75Mk25GEsVAptVDAlbE7t_zYAz_WKW4SmFQzkrdIoA_utUKw5gnbutY03sgrEU_LO-hOGuqfaw1NEHfxMshD8SUa4bcfRJ-Y7zoNMVcA008RNbZDprHYJdZrCmYQo77_L4uqRGsNBTxcw8HfPGR1xmCW1J_B1Nw5ejOdXHE_PNYEgu6Kjhf2m0uV1IxDnqHhtfvALDdgaumJ3OJeVTMA0M0qTtMXXlnTRmPNk1OVP-tGYydxcKKGcV276cdk1vxSuGp0vHnfWYRo4Zps9ZRG0MlQxYRBMLc9gVeA8dbVcvSOg2YE9XkHotxwQxTvN47DNPbfpBhFdxABE2MJMph4C-l-YGUAYp5knQ.cK2GDjIP3qD66VLqBcTbqg \ No newline at end of file +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MDo1OS41OTE0NyArMDMwMCBNU0sgbT0rMC4wNTc2OTQwMDEiLCJlbmMiOiJBMjU2R0NNIiwicDJjIjo4MTkyLCJwMnMiOiJxYUxyTHVPa2cwUDZyVGo5In0.zQgfTooQG9UxGp4iGEVx13kqPv29oxyDd5RcDGSF9_MV8xJ8Ae1MOQ.Yvk5JzKAHz5XIgFr.ylbq4lJcaN-D0VQLqrr5z9A29AF6H_DEcUbWDSRodZvh-4jLv1G4Wk4mqvOcH9ioxrT0hWzYxb1cZrpSZzN5QKbOsrtTvofk1Mo7GTC3ZjxSlX7YFhWip1scQH0ko-WgeZzhrjo2hLTSK53zHLKXhjj2bE_y-X5BZ_63R_AEn2lfv0Ifw0FnCThUmwb8k8dKvxEcDf151zsU-20DaezlzK0lvrrhAtx_5YIsE3cEcAl8A7tgXZ3KUPfh5VngHow18gf48dloPPT7sOP-O9-inPHWaMAhWhrHvq6cSlrd_C61CeuSQYGDeNskbl3EEW_Hc7F8Fe6Qv80tM9jQ2hAynw2thw0WBXzM4anOv2zxBSRSU3FZQsAdfahcwvf6H_jiYyn-zp9GX_oZfcwm-PAsfx7hqwcWjWavLLHcpYeylKnStUrTvlv2OpDA1iOL94LSKYLKgTeSu110XySGONDswl4kipLnFS6Q4A.IZOhYgv7lMbD8SqGJuf3DQ \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/config/app.toml.tmpl b/tests/testdata/snapshot-many-users/config/app.toml.tmpl index ad6a1aabd..4ada47e12 100644 --- a/tests/testdata/snapshot-many-users/config/app.toml.tmpl +++ b/tests/testdata/snapshot-many-users/config/app.toml.tmpl @@ -8,7 +8,7 @@ # The minimum gas prices a validator is willing to accept for processing a # transaction. A transaction's fees must meet the minimum of any denomination # specified in this config (e.g. 0.25token1,0.0001token2). -minimum-gas-prices = "0uward" +minimum-gas-prices = "0award" # The maximum gas a query coming over rest/grpc may consume. # If this is set to zero, the query can consume an unbounded amount of gas. @@ -251,10 +251,158 @@ enabled = "true" oracle_address = "localhost:8080" # Client Timeout is the time that the client is willing to wait for responses from -# the oracle before timing out. +# the oracle before timing out. The recommended timeout is 3 seconds (3000ms). client_timeout = "2s" # MetricsEnabled determines whether oracle metrics are enabled. Specifically # this enables instrumentation of the oracle client and the interaction between # the oracle and the app. metrics_enabled = "false" + +# PriceTTL is the maximum age of the latest price response before it is considered stale. +# The recommended max age is 10 seconds (10s). If this is greater than 1 minute (1m), the app +# will not start. +price_ttl = "0s" + +# Interval is the time between each price update request. The recommended interval +# is the block time of the chain. Otherwise, 1.5 seconds (1500ms) is a good default. If this +# is greater than 1 minute (1m), the app will not start. +interval = "0s" + +############################################################################### +### EVM Configuration ### +############################################################################### + +[evm] + +# Tracer defines the 'vm.Tracer' type that the EVM will use when the node is run in +# debug mode. To enable tracing use the '--evm.tracer' flag when starting your node. +# Valid types are: json|struct|access_list|markdown +tracer = "" + +# MaxTxGasWanted defines the gas wanted for each eth tx returned in ante handler in check tx mode. +max-tx-gas-wanted = 0 + +############################################################################### +### JSON RPC Configuration ### +############################################################################### + +[json-rpc] + +# Enable defines if the JSONRPC server should be enabled. +enable = true + +# Address defines the EVM RPC HTTP server address to bind to. +address = "127.0.0.1:8545" + +# Address defines the EVM WebSocket server address to bind to. +ws-address = "127.0.0.1:8546" + +# API defines a list of JSON-RPC namespaces that should be enabled +# Example: "eth,txpool,personal,net,debug,web3" +api = "eth,net,web3" + +# GasCap sets a cap on gas that can be used in eth_call/estimateGas (0=infinite). Default: 25,000,000. +gas-cap = 25000000 + +# Allow insecure account unlocking when account-related RPCs are exposed by http +allow-insecure-unlock = true + +# EVMTimeout is the global timeout for eth_call. Default: 5s. +evm-timeout = "5s" + +# TxFeeCap is the global tx-fee cap for send transaction. Default: 1eth. +txfee-cap = 1 + +# FilterCap sets the global cap for total number of filters that can be created +filter-cap = 200 + +# FeeHistoryCap sets the global cap for total number of blocks that can be fetched +feehistory-cap = 100 + +# LogsCap defines the max number of results can be returned from single 'eth_getLogs' query. +logs-cap = 10000 + +# BlockRangeCap defines the max block range allowed for 'eth_getLogs' query. +block-range-cap = 10000 + +# HTTPTimeout is the read/write timeout of http json-rpc server. +http-timeout = "30s" + +# HTTPIdleTimeout is the idle timeout of http json-rpc server. +http-idle-timeout = "2m0s" + +# AllowUnprotectedTxs restricts unprotected (non EIP155 signed) transactions to be submitted via +# the node's RPC when the global parameter is disabled. +allow-unprotected-txs = false + +# MaxOpenConnections sets the maximum number of simultaneous connections +# for the server listener. +max-open-connections = 0 + +# EnableIndexer enables the custom transaction indexer for the EVM (ethereum transactions). +enable-indexer = false + +# MetricsAddress defines the EVM Metrics server address to bind to. Pass --metrics in CLI to enable +# Prometheus metrics path: /debug/metrics/prometheus +metrics-address = "127.0.0.1:6065" + +# Upgrade height for fix of revert gas refund logic when transaction reverted. +fix-revert-gas-refund-height = 0 + +############################################################################### +### TLS Configuration ### +############################################################################### + +[tls] + +# Certificate path defines the cert.pem file path for the TLS configuration. +certificate-path = "" + +# Key path defines the key.pem file path for the TLS configuration. +key-path = "" + +############################################################################### +### Rosetta Configuration ### +############################################################################### + +[rosetta] + +# Enable defines if the Rosetta API server should be enabled. +enable = false + +# Address defines the Rosetta API server to listen on. +address = ":8080" + +# Network defines the name of the blockchain that will be returned by Rosetta. +blockchain = "evmos" + +# Network defines the name of the network that will be returned by Rosetta. +network = "evmos" + +# TendermintRPC defines the endpoint to connect to CometBFT RPC, +# specifying 'tcp://' before is not required, usually it's at port 26657 +tendermint-rpc = "localhost:26657" + +# GRPCEndpoint defines the cosmos application gRPC endpoint +# usually it is located at 9090 port +grpc-endpoint = "localhost:{{ .GRPCPort }}" + +# Retries defines the number of retries when connecting to the node before failing. +retries = 5 + +# Offline defines if Rosetta server should run in offline mode. +offline = false + +# EnableFeeSuggestion indicates to use fee suggestion when 'construction/metadata' is called without gas limit and price. +enable-fee-suggestion = false + +# GasToSuggest defines gas limit when calculating the fee +gas-to-suggest = 300000 + +# DenomToSuggest defines the defult denom for fee suggestion. +# Price must be in minimum-gas-prices. +denom-to-suggest = "aevmos" + +# GasPrices defines the gas prices for fee suggestion +gas-prices = "4000000.000000000000000000aevmos" diff --git a/tests/testdata/snapshot-many-users/config/client.toml.tmpl b/tests/testdata/snapshot-many-users/config/client.toml.tmpl index bb873a3e0..32f4afd09 100644 --- a/tests/testdata/snapshot-many-users/config/client.toml.tmpl +++ b/tests/testdata/snapshot-many-users/config/client.toml.tmpl @@ -6,7 +6,7 @@ ############################################################################### # The network chain ID -chain-id = "warden" +chain-id = "warden_1337-1" # The keyring's backend, where the keys are stored (os|file|kwallet|pass|test|memory) keyring-backend = "test" diff --git a/tests/testdata/snapshot-many-users/config/config.toml.tmpl b/tests/testdata/snapshot-many-users/config/config.toml.tmpl index 351592188..b2ea94669 100644 --- a/tests/testdata/snapshot-many-users/config/config.toml.tmpl +++ b/tests/testdata/snapshot-many-users/config/config.toml.tmpl @@ -8,7 +8,7 @@ # The version of the CometBFT binary that created or # last modified the config file. Do not modify this. -version = "0.38.7" +version = "0.38.11" ####################################################################### ### Main Base Config Options ### @@ -167,6 +167,11 @@ experimental_close_on_slow_client = false # See https://github.com/tendermint/tendermint/issues/3435 timeout_broadcast_tx_commit = "10s" +# Maximum number of requests that can be sent in a batch +# If the value is set to '0' (zero-value), then no maximum batch size will be +# enforced for a JSON-RPC batch request. +max_request_batch_size = 10 + # Maximum size of request body, in bytes max_body_bytes = 1000000 @@ -282,6 +287,17 @@ type = "flood" # you can disable rechecking. recheck = true +# recheck_timeout is the time the application has during the rechecking process +# to return CheckTx responses, once all requests have been sent. Responses that +# arrive after the timeout expires are discarded. It only applies to +# non-local ABCI clients and when recheck is enabled. +# +# The ideal value will strongly depend on the application. It could roughly be estimated as the +# average size of the mempool multiplied by the average time it takes the application to validate one +# transaction. We consider that the ABCI application runs in the same location as the CometBFT binary +# so that the recheck duration is not affected by network delays when making requests and receiving responses. +recheck_timeout = "1s" + # Broadcast (default: true) defines whether the mempool should relay # transactions to other peers. Setting this to false will stop the mempool # from relaying transactions to other peers until they are included in a diff --git a/tests/testdata/snapshot-many-users/config/genesis.json b/tests/testdata/snapshot-many-users/config/genesis.json index 9f701a27e..d1d0eb8d4 100644 --- a/tests/testdata/snapshot-many-users/config/genesis.json +++ b/tests/testdata/snapshot-many-users/config/genesis.json @@ -1,15 +1,17 @@ { "app_name": "wardend", - "app_version": "v0.3.4-alpha-12-gc04601c9-dirty", - "genesis_time": "2024-07-10T10:12:01.8796794Z", - "chain_id": "warden", + "app_version": "v0.4.1-69-g6035cc48-dirty", + "genesis_time": "2024-08-28T15:51:02.06284Z", + "chain_id": "warden_1337-1", "initial_height": 1, "app_hash": null, "app_state": { "06-solomachine": null, "07-tendermint": null, "act": { - "params": {} + "params": {}, + "actions": [], + "rules": [] }, "auth": { "params": { @@ -22,21 +24,21 @@ "accounts": [ { "@type": "/cosmos.auth.v1beta1.BaseAccount", - "address": "warden19u97f0928q306grmkpa7w5hpxcmtf625uzaqg9", + "address": "warden1g2zt4jwxnz4vdnl6meder8lq6rrlr0xck4tfys", "pub_key": null, "account_number": "0", "sequence": "0" }, { "@type": "/cosmos.auth.v1beta1.BaseAccount", - "address": "warden1emghyenumveuu3jc5zgu7ny2zkcj2c5qm3l2g2", + "address": "warden1cmvmgufychwalvmtct74w8qyrp3ncyxsphxuw9", "pub_key": null, "account_number": "1", "sequence": "0" }, { "@type": "/cosmos.auth.v1beta1.BaseAccount", - "address": "warden14xaez22aa8wlk7zdrpv7ea0j9h2g2da9tutenp", + "address": "warden1qhscdj4hmkhyvvlrlckfgupeme4wvddlt8283m", "pub_key": null, "account_number": "2", "sequence": "0" @@ -53,28 +55,28 @@ }, "balances": [ { - "address": "warden19u97f0928q306grmkpa7w5hpxcmtf625uzaqg9", + "address": "warden1qhscdj4hmkhyvvlrlckfgupeme4wvddlt8283m", "coins": [ { - "denom": "uward", + "denom": "award", "amount": "10000000000000000000000000" } ] }, { - "address": "warden14xaez22aa8wlk7zdrpv7ea0j9h2g2da9tutenp", + "address": "warden1g2zt4jwxnz4vdnl6meder8lq6rrlr0xck4tfys", "coins": [ { - "denom": "uward", + "denom": "award", "amount": "10000000000000000000000000" } ] }, { - "address": "warden1emghyenumveuu3jc5zgu7ny2zkcj2c5qm3l2g2", + "address": "warden1cmvmgufychwalvmtct74w8qyrp3ncyxsphxuw9", "coins": [ { - "denom": "uward", + "denom": "award", "amount": "10000000000000000000000000" } ] @@ -82,7 +84,7 @@ ], "supply": [ { - "denom": "uward", + "denom": "award", "amount": "30000000000000000000000000" } ], @@ -100,7 +102,7 @@ "consensus": null, "crisis": { "constant_fee": { - "denom": "uward", + "denom": "award", "amount": "1000" } }, @@ -126,6 +128,53 @@ "evidence": { "evidence": [] }, + "evm": { + "accounts": [], + "params": { + "evm_denom": "aevmos", + "enable_create": true, + "enable_call": true, + "extra_eips": [ + "3855" + ], + "chain_config": { + "homestead_block": "0", + "dao_fork_block": "0", + "dao_fork_support": true, + "eip150_block": "0", + "eip150_hash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "eip155_block": "0", + "eip158_block": "0", + "byzantium_block": "0", + "constantinople_block": "0", + "petersburg_block": "0", + "istanbul_block": "0", + "muir_glacier_block": "0", + "berlin_block": "0", + "london_block": "0", + "arrow_glacier_block": "0", + "gray_glacier_block": "0", + "merge_netsplit_block": "0", + "shanghai_block": "0", + "cancun_block": "0" + }, + "allow_unprotected_txs": false, + "active_precompiles": [ + "0x0000000000000000000000000000000000000100", + "0x0000000000000000000000000000000000000400", + "0x0000000000000000000000000000000000000800", + "0x0000000000000000000000000000000000000801", + "0x0000000000000000000000000000000000000802", + "0x0000000000000000000000000000000000000803", + "0x0000000000000000000000000000000000000804" + ], + "evm_channels": [ + "channel-10", + "channel-31", + "channel-83" + ] + } + }, "feegrant": { "allowances": [] }, @@ -136,6 +185,18 @@ "registered_counterparty_payees": [], "forward_relayers": [] }, + "feemarket": { + "params": { + "no_base_fee": false, + "base_fee_change_denominator": 8, + "elasticity_multiplier": 2, + "enable_height": "0", + "base_fee": "1000000000", + "min_gas_price": "0.000000000000000000", + "min_gas_multiplier": "0.500000000000000000" + }, + "block_gas": "0" + }, "genutil": { "gen_txs": [ { @@ -157,18 +218,18 @@ }, "min_self_delegation": "1", "delegator_address": "", - "validator_address": "wardenvaloper19u97f0928q306grmkpa7w5hpxcmtf625del985", + "validator_address": "wardenvaloper1g2zt4jwxnz4vdnl6meder8lq6rrlr0xc8wfvtp", "pubkey": { "@type": "/cosmos.crypto.ed25519.PubKey", - "key": "7zh6001a4vj9h5hVoLN3VRyYM+H/c4tV0dLPLZgtORE=" + "key": "lLKV1tFwZv97//qUo9zPjDUeRvcsvebX7kZqsFFh9HY=" }, "value": { - "denom": "uward", - "amount": "1000000000" + "denom": "award", + "amount": "1000000000000000000000" } } ], - "memo": "8135796bf9bf192aa19db49fdb8f354bf570c985@172.17.0.2:26656", + "memo": "ac908e15484dc79c515ab0f93e01e40cfeb06449@192.168.88.206:26656", "timeout_height": "0", "extension_options": [], "non_critical_extension_options": [] @@ -177,8 +238,8 @@ "signer_infos": [ { "public_key": { - "@type": "/cosmos.crypto.secp256k1.PubKey", - "key": "A3WSBDuIlhvPywyfs9a7AnJNnbGt0KWxpDA8jlZUpK0w" + "@type": "/ethermint.crypto.v1.ethsecp256k1.PubKey", + "key": "A5Sf8nvNAm9dUkA5Nfs1KkQTYfhCPY3t4Cy/tnd9xe3b" }, "mode_info": { "single": { @@ -197,7 +258,7 @@ "tip": null }, "signatures": [ - "yXPbYRAairCgBY2rAE1snpsJR1FM8e3ynLLO6gzp9xA6qshtik50GBUHKUis+EPgQ1Gq4ShtPJi4gZs7bQ6MMQ==" + "MKtTmQfASczSfQE/P2PJoOIkse5OgL+PIb+2aory35kp8Lc0/eSSRG0zB5o44vUnpW79MgQPA9gwSxi0gE1b1gE=" ] } ] @@ -221,7 +282,7 @@ "params": { "min_deposit": [ { - "denom": "uward", + "denom": "award", "amount": "10000000" } ], @@ -237,7 +298,7 @@ "expedited_threshold": "0.667000000000000000", "expedited_min_deposit": [ { - "denom": "uward", + "denom": "award", "amount": "50000000" } ], @@ -338,7 +399,7 @@ "annual_provisions": "0.000000000000000000" }, "params": { - "mint_denom": "uward", + "mint_denom": "award", "inflation_rate_change": "0.130000000000000000", "inflation_max": "0.200000000000000000", "inflation_min": "0.070000000000000000", @@ -369,8 +430,8 @@ "max_validators": 100, "max_entries": 7, "historical_entries": 10000, - "bond_denom": "uward", - "min_commission_rate": "0.000000000000000000" + "bond_denom": "award", + "min_commission_rate": "0.050000000000000000" }, "last_total_power": "0", "last_validator_powers": [], @@ -397,9 +458,9 @@ "spaces": [ { "id": "1", - "creator": "warden19u97f0928q306grmkpa7w5hpxcmtf625uzaqg9", + "creator": "warden1g2zt4jwxnz4vdnl6meder8lq6rrlr0xck4tfys", "owners": [ - "warden19u97f0928q306grmkpa7w5hpxcmtf625uzaqg9" + "warden1g2zt4jwxnz4vdnl6meder8lq6rrlr0xck4tfys" ], "admin_rule_id": "0", "sign_rule_id": "0" diff --git a/tests/testdata/snapshot-many-users/config/gentx/gentx-8135796bf9bf192aa19db49fdb8f354bf570c985.json b/tests/testdata/snapshot-many-users/config/gentx/gentx-8135796bf9bf192aa19db49fdb8f354bf570c985.json deleted file mode 100644 index 321c5b366..000000000 --- a/tests/testdata/snapshot-many-users/config/gentx/gentx-8135796bf9bf192aa19db49fdb8f354bf570c985.json +++ /dev/null @@ -1 +0,0 @@ -{"body":{"messages":[{"@type":"/cosmos.staking.v1beta1.MsgCreateValidator","description":{"moniker":"testing","identity":"","website":"","security_contact":"","details":""},"commission":{"rate":"0.100000000000000000","max_rate":"0.200000000000000000","max_change_rate":"0.010000000000000000"},"min_self_delegation":"1","delegator_address":"","validator_address":"wardenvaloper19u97f0928q306grmkpa7w5hpxcmtf625del985","pubkey":{"@type":"/cosmos.crypto.ed25519.PubKey","key":"7zh6001a4vj9h5hVoLN3VRyYM+H/c4tV0dLPLZgtORE="},"value":{"denom":"uward","amount":"1000000000"}}],"memo":"8135796bf9bf192aa19db49fdb8f354bf570c985@172.17.0.2:26656","timeout_height":"0","extension_options":[],"non_critical_extension_options":[]},"auth_info":{"signer_infos":[{"public_key":{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"A3WSBDuIlhvPywyfs9a7AnJNnbGt0KWxpDA8jlZUpK0w"},"mode_info":{"single":{"mode":"SIGN_MODE_DIRECT"}},"sequence":"0"}],"fee":{"amount":[],"gas_limit":"200000","payer":"","granter":""},"tip":null},"signatures":["yXPbYRAairCgBY2rAE1snpsJR1FM8e3ynLLO6gzp9xA6qshtik50GBUHKUis+EPgQ1Gq4ShtPJi4gZs7bQ6MMQ=="]} diff --git a/tests/testdata/snapshot-many-users/config/gentx/gentx-ac908e15484dc79c515ab0f93e01e40cfeb06449.json b/tests/testdata/snapshot-many-users/config/gentx/gentx-ac908e15484dc79c515ab0f93e01e40cfeb06449.json new file mode 100644 index 000000000..ac847523b --- /dev/null +++ b/tests/testdata/snapshot-many-users/config/gentx/gentx-ac908e15484dc79c515ab0f93e01e40cfeb06449.json @@ -0,0 +1 @@ +{"body":{"messages":[{"@type":"/cosmos.staking.v1beta1.MsgCreateValidator","description":{"moniker":"testing","identity":"","website":"","security_contact":"","details":""},"commission":{"rate":"0.100000000000000000","max_rate":"0.200000000000000000","max_change_rate":"0.010000000000000000"},"min_self_delegation":"1","delegator_address":"","validator_address":"wardenvaloper1g2zt4jwxnz4vdnl6meder8lq6rrlr0xc8wfvtp","pubkey":{"@type":"/cosmos.crypto.ed25519.PubKey","key":"lLKV1tFwZv97//qUo9zPjDUeRvcsvebX7kZqsFFh9HY="},"value":{"denom":"award","amount":"1000000000000000000000"}}],"memo":"ac908e15484dc79c515ab0f93e01e40cfeb06449@192.168.88.206:26656","timeout_height":"0","extension_options":[],"non_critical_extension_options":[]},"auth_info":{"signer_infos":[{"public_key":{"@type":"/ethermint.crypto.v1.ethsecp256k1.PubKey","key":"A5Sf8nvNAm9dUkA5Nfs1KkQTYfhCPY3t4Cy/tnd9xe3b"},"mode_info":{"single":{"mode":"SIGN_MODE_DIRECT"}},"sequence":"0"}],"fee":{"amount":[],"gas_limit":"200000","payer":"","granter":""},"tip":null},"signatures":["MKtTmQfASczSfQE/P2PJoOIkse5OgL+PIb+2aory35kp8Lc0/eSSRG0zB5o44vUnpW79MgQPA9gwSxi0gE1b1gE="]} diff --git a/tests/testdata/snapshot-many-users/config/node_key.json b/tests/testdata/snapshot-many-users/config/node_key.json index ad188149b..aaa147e34 100644 --- a/tests/testdata/snapshot-many-users/config/node_key.json +++ b/tests/testdata/snapshot-many-users/config/node_key.json @@ -1 +1 @@ -{"priv_key":{"type":"tendermint/PrivKeyEd25519","value":"vzEBtRKpVnjsBUuMnbcDNYu1FuaOIKLjcITRKhiaJZ5Bkz3bT2PIYmnrY/jrQRJ3v60IE/BR11w23MqWG+XQLA=="}} \ No newline at end of file +{"priv_key":{"type":"tendermint/PrivKeyEd25519","value":"invGKWGfj5Y5yBUjQwdACjpTzhhTZ1MWrBEncqGJdZrhavuatiHCOi+EK/xCLagD7ZX9MAWCwonxZAuJBS7VqQ=="}} \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/config/priv_validator_key.json b/tests/testdata/snapshot-many-users/config/priv_validator_key.json index 40963fa3f..3093eb1f0 100644 --- a/tests/testdata/snapshot-many-users/config/priv_validator_key.json +++ b/tests/testdata/snapshot-many-users/config/priv_validator_key.json @@ -1,11 +1,11 @@ { - "address": "F405FAF1BF91A36D9C80AE8E04F8C9912CDDFA9C", + "address": "69B45AD17E91A12970D568DA66F3E549970FE780", "pub_key": { "type": "tendermint/PubKeyEd25519", - "value": "7zh6001a4vj9h5hVoLN3VRyYM+H/c4tV0dLPLZgtORE=" + "value": "lLKV1tFwZv97//qUo9zPjDUeRvcsvebX7kZqsFFh9HY=" }, "priv_key": { "type": "tendermint/PrivKeyEd25519", - "value": "Xt5Tk6FDf3GDrcO7V7Ps3dChHWdWSGa5aUo3nGlH0lbvOHrTTVri+P2HmFWgs3dVHJgz4f9zi1XR0s8tmC05EQ==" + "value": "wpzDnlC2s4y8mLbkCTSn31l35cbMgUN4CfdTMtlY1E6UspXW0XBm/3v/+pSj3M+MNR5G9yy95tfuRmqwUWH0dg==" } } \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/05e186cab7ddae4633e3fe2c947039de6ae635bf.address b/tests/testdata/snapshot-many-users/keyring-test/05e186cab7ddae4633e3fe2c947039de6ae635bf.address new file mode 100644 index 000000000..5ea236258 --- /dev/null +++ b/tests/testdata/snapshot-many-users/keyring-test/05e186cab7ddae4633e3fe2c947039de6ae635bf.address @@ -0,0 +1 @@ +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MTowMi4zOTk3NjcgKzAzMDAgTVNLIG09KzAuMDU5MDcwOTE4IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiR1QzRmFhdlV6RkhoNy05WCJ9.fSlTLKwGb7tLSrkDHcW0BDuc-BXINRwTwwNHveL9hfyugr-yDa7B6Q.hooKZKxhiN-5FsTW.IAoUsr8oxX44usPF_XXsGJBvHxAJYjm9kODoVY6LvUAT8kZlppSp9AU0lUi1yJSmENepZziaBftBAvgZhKy-mr4au1PULb0wdiJzH9CGbOThNNbThh3DNMsJkIMFZXNuF64vJCHysayRW8arCadHAIpsVf4laaKvGpcEfEmQahpfWn7HcnsLDrgnBQlDuzazfGwUZeu-LaujCsX-1_2Fa-BF5kf5SsxNUps8mhwpiffnhK-Ry3s.5N1nDkMKL9_vj3_C9KxTVA \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/101e05d7b782e9dd64b7bee7c6bb248eafacf450.address b/tests/testdata/snapshot-many-users/keyring-test/101e05d7b782e9dd64b7bee7c6bb248eafacf450.address deleted file mode 100644 index 8c507291b..000000000 --- a/tests/testdata/snapshot-many-users/keyring-test/101e05d7b782e9dd64b7bee7c6bb248eafacf450.address +++ /dev/null @@ -1 +0,0 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNy0xMCAxMDoxMjowMi45MTIzMjQzICswMDAwIFVUQyBtPSswLjEzMjc5NjkwMSIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6IjBvWklhUmZkcEFDWTRETVQifQ.K2zazny0-w9x5Hib7fJg1OItKyXsKDH3jwXYA4WSrgTD_BMUEmizkw.a7WnK4qtzzmaWMLZ.Utr0xKbpdV2e9WvxvkWXkPYQBeyPPX5j_mpNrozJFr8Jx0Y7ddJrzjYTp8N_CZvgb-89ukZy4i2mkffJKkRRsnN6b92NpKYej9q_yC0lNQytwAICsybedAwnP3hSAxFTZPgrzg-rFdgPiHOCrygpTmIFVkXGtSvBUOru_rK5XTWBYcJQromtn-iFIJIoRucGmVfS7P23OGqd8dSEggRdtFejQWyRp0h4CRNNUsrcobeGyQ.yF1N9n_1SW9K7lJqcEJ87g \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/139d48da1f68b5c8964e9c1e775578a05df2a9c6.address b/tests/testdata/snapshot-many-users/keyring-test/139d48da1f68b5c8964e9c1e775578a05df2a9c6.address new file mode 100644 index 000000000..666b35b58 --- /dev/null +++ b/tests/testdata/snapshot-many-users/keyring-test/139d48da1f68b5c8964e9c1e775578a05df2a9c6.address @@ -0,0 +1 @@ +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MTowMi42MDc1MDEgKzAzMDAgTVNLIG09KzAuMDU5OTczMzM0IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoic1BqcnM1VmZWY1Z0dFAyQyJ9.eYNGA1qVMfwl8BScEZ2jo561huU7fcK6rPl08Ucghq8_bGOeA_kgCA.6BE8N1prBPisesLJ.MeD39nDRwaL-3PvRdV4g1GN2cgDC5h90x_-Df9Z98OC1_SiYHBIRTPh9uGBMDlkv0pZ0s9B7ZxC3OqcjcpBOAzTOtGTS6tA6RNjfAiNtYEOEHaERKlKiksuJQn_Ls1qbQ-5bLDcEX-Rn-9XI6bnKJ9Xwje3x6HHgSihjBux9ltYDUR3pHnC71VaoHp9RkhI-LKdjJke1NF_THGA7oTKSHHosi44XdGEt786WodcxCKfaMmP6j18.LeEpkSsXBosPDbcj231Zww \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/2d114cd6426dd05095dfaa50a301e3f0595ad380.address b/tests/testdata/snapshot-many-users/keyring-test/2d114cd6426dd05095dfaa50a301e3f0595ad380.address new file mode 100644 index 000000000..586de7ac5 --- /dev/null +++ b/tests/testdata/snapshot-many-users/keyring-test/2d114cd6426dd05095dfaa50a301e3f0595ad380.address @@ -0,0 +1 @@ +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MTowMi41MzU4NDQgKzAzMDAgTVNLIG09KzAuMDU4MDc5MzM0IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiZURLTlF4bHZrSlIzMEJQZyJ9.AESoeVvcCYxf6tSkULAZjtx9Ii5gufoLOSBzIUdVWmUoGIsCx54iIA.Nu-gF_2IhWe3c0DT.UJ55EAeOFYDTWwFMKrl4Yl7DHFtq0-1dY4uoDOMCFp65mYA408u0OqJEBoEXB1JDPCAQfhWZZXd8KpOsPVHP-Ssi-n_UDYpG5DeWDNSpP03R7A3IImIHsc4at-XHKoHjNlizCTx2AErvKSgKw8WP5vUvRGqxT4v81pZqVRZxOWZmEpq4gx8ES_5nf0iX-NG40ff1Hj-mMn7HzrY6fZ2uDwhNc6tdQtVc2UbAT7XLd4LZvg.ZGsQom0C8NUn71U6MX5sOw \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/2f0be4bcaa3822fd207bb07be752e13636b4e954.address b/tests/testdata/snapshot-many-users/keyring-test/2f0be4bcaa3822fd207bb07be752e13636b4e954.address deleted file mode 100644 index 23c03dc6f..000000000 --- a/tests/testdata/snapshot-many-users/keyring-test/2f0be4bcaa3822fd207bb07be752e13636b4e954.address +++ /dev/null @@ -1 +0,0 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNy0xMCAxMDoxMjowMi4yOTEzNjIgKzAwMDAgVVRDIG09KzAuMTQwMTMwNzAxIiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoienVKOEdnLUFDUXo2ZEhPRyJ9.ywBN2MNM7dBfwwmWWZ-5cTpvie0o5AQ1OfsiYk8gIY9sWVcs1iWndQ.xcT2nGjCFyzvjQ1P.AzImQozQRWHrY8H84be0cslK6yVtYHkLlgxksTpbh_246w_LfiX6_Ud6N-FZDxroWgaHyPKpaUXwBc9zH68VJJQfi4vGq5eQf1_OpmAwUYNxk8YLXg2d7UmafI0DxR1Acx1fdHi5poHWjw4Z4EK2-vtOFoGi604QlkUBOU-UWmNC9lYsi75crZ1JIVvnxLBCF4DJz7QFuzQYiK9Z8ZiNJh1U3RMTJ0hazoRdiqbx2-ycVFG387w.k7cLO342PjCYlZFja66QPQ \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/2fd1470a60bdf72875a7f549fe653d7b9c7099cf.address b/tests/testdata/snapshot-many-users/keyring-test/2fd1470a60bdf72875a7f549fe653d7b9c7099cf.address deleted file mode 100644 index 669bf0aad..000000000 --- a/tests/testdata/snapshot-many-users/keyring-test/2fd1470a60bdf72875a7f549fe653d7b9c7099cf.address +++ /dev/null @@ -1 +0,0 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNy0xMCAxMDoxMjowMy4wNTgzNTI1ICswMDAwIFVUQyBtPSswLjEzMDYwOTIwMSIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6IkR4aUxGTDZRUmthTkJZZ1oifQ.bfgS3rPS5lsur6ST5FtsQYqQ4TWhpDrOmuswEV3IJwyHJzJCmWTYXA.wGqLN4y57fcIaYYi.X1HQSCyeB7NkiVEOGNh3bgN5QR6LISqBtgmqgLyWEXYWiiX2BwJm84Ye-R6Nscd1NMNUTHQM4guDJu9d-Tzlf-hdTwuPmA7dAAC_EvmTP1uVLC-gm7gUAjgJvV5RvF4y8_2Dnpk3NByCX4NCLcd4K7TYQJ8eTxuVVv0-YKLV29X-Z115_M5sKmc41VwaKDFUxtQwgSF_yZEPrOt7PUCad05fASfVue7lSzXF4HKA6L6cORtxBM0.5aUwaNR3NpYkPbV0QV1TBA \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/4284bac9c698aac6cffade5b919fe0d0c7f1bcd8.address b/tests/testdata/snapshot-many-users/keyring-test/4284bac9c698aac6cffade5b919fe0d0c7f1bcd8.address new file mode 100644 index 000000000..201057e29 --- /dev/null +++ b/tests/testdata/snapshot-many-users/keyring-test/4284bac9c698aac6cffade5b919fe0d0c7f1bcd8.address @@ -0,0 +1 @@ +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MTowMi4yNTkwMjkgKzAzMDAgTVNLIG09KzAuMDU5NDgyNjI2IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiR1BKcGxMdlZvQm9fcU9PNiJ9.ZBXK-YbD7LQpiV9_QEwY4xJEc0sOe40X-vuU2gjrRmn0Xf5lJ_xG4A.zfpg9FlrKJAPnrAX.7RIF8T9c2MVYZsSEUCSwA2ty1qzpVbmI8R_JN-pNapoDkllYgCXSeeOEl4mhcvJy6bLx1261UVuNrTcBnLVbS62rWLpWw8gFjq-O_VasFXKobDEJphO00DNMzlmRV7IHvarM_TvJiAiEyl7a6jbPHCMmgljunmqdZDTnnXx1T83E35rKdtgAheqsFK3X8FaHVpC2MvxVTTsgCcP1eTuFU4XVwoxyUSTgx1eqFIekSSrMlvYAupY.DD7YuukN72fENUTQ8ienhg \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/6f639d8ac4249286acd5aa5cef894b1d8374468d.address b/tests/testdata/snapshot-many-users/keyring-test/6f639d8ac4249286acd5aa5cef894b1d8374468d.address new file mode 100644 index 000000000..b6f36be5b --- /dev/null +++ b/tests/testdata/snapshot-many-users/keyring-test/6f639d8ac4249286acd5aa5cef894b1d8374468d.address @@ -0,0 +1 @@ +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MTowMi40NjY3MDcgKzAzMDAgTVNLIG09KzAuMDU1NjExNDE4IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiUEFFZklQQ3d0cTFhakFyciJ9._sH-tVqBkbrbfeo_-rtLOm7FVPV3SKiy0scDWcbK_Uuj3DxN5kIivA.Z0f92b6ngqhnvWAE.YYjchYZWOyKAYzKBgwtr48g3Czd71o9caEdWAM-dtuQf-woapyt_gOJ6TbQM0syHKaNpaqBp2f_hxrQqUx1pIXnT2-c2B57rWBVbTU2rLE5LvgFCc6rBaH6vn5Yjv_tdpDeGehcjDwYLsRJ-4WwPCoJLkHV9A0KYUNDdNrhehZTD27dksGo--RqjHd3fPejaoFmoTrHfWRB6iYitRwCpnB37yO2iOVjho3woBTZwLBeC_g.eN-idaab2KVdwATyz8_enQ \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/a9bb91295de9ddfb784d1859ecf5f22dd48537a5.address b/tests/testdata/snapshot-many-users/keyring-test/a9bb91295de9ddfb784d1859ecf5f22dd48537a5.address deleted file mode 100644 index 751cd2069..000000000 --- a/tests/testdata/snapshot-many-users/keyring-test/a9bb91295de9ddfb784d1859ecf5f22dd48537a5.address +++ /dev/null @@ -1 +0,0 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNy0xMCAxMDoxMjowMi42MDgxNjMgKzAwMDAgVVRDIG09KzAuMTQ1NTEzNzAxIiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoibmdrNGxtZjNzVE81WXE3MCJ9.NKU78dpdEpgGjTjslfeoAyze0PeEZQcKB-MT3CwEebU-WUwFI2uzXg.JQ-rNcAs0Fg1FDfP.o1_QiDu_yToaOntwxG01uyLwllx79uacf9oM1RpEriWimFSNGIQi-CPd8oOgJiK3YU7q12Dvr8Hq77g6zD-RoQAmUfqZDTBlwcDBiT7tm7dfaq_iBEFLkV1C9JCbBDifdT4g9mTMq3z-sNrw_cYIxkP7Okpzw2EGgqtrGZa-el2meP1NkW8YtD4JeE7b9p7YT_cSC7DJKlIwtsVhgfEbNOsVyO9BN8esMYe7Mmx-uZDc80FEJ04.PEDJU1JU7NELoS96pal0ng \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/alice.info b/tests/testdata/snapshot-many-users/keyring-test/alice.info index 96b0ae230..760f8dcb6 100644 --- a/tests/testdata/snapshot-many-users/keyring-test/alice.info +++ b/tests/testdata/snapshot-many-users/keyring-test/alice.info @@ -1 +1 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNy0xMCAxMDoxMjowMi4yODUwMjg2ICswMDAwIFVUQyBtPSswLjEzMzc5NzMwMSIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6IkxCWWF6OGdvQ0w1VHdsbHUifQ.v1neMJYtGfDFfiOFU1zS9Rz_Qw8svGSVrRmCel4D0L0HIHXLUGI4yQ.sH2zm-UHUNTw6mkr.lTzcLoLLYrVynHLtGOxISTo-9lEi_uOvjREeOoVegXKQSIQ34kSdRvXq7VlrUjekLfkZj2JX_UdvQsiXHhtCXc7LT6Moi5H6l8V0mzRQ3sPbq9BJJvlDj2NTXu9gzlbeOY9N7jPzwMek-Qst8XQkhgIIqOjmPOCQcd_MOb5YHrngpH9CKmrj45ORtRCTdKXRy5FixzQrSwWX9n2Me0uwL5wcJyGty2-dBCKQy8yjSwe3gRgpRUEsCNyoO0LJamGMnyJS73YqUUnONGT9UzF7WiuGIj8UmXNGFEG0thRouvRbmCuRAGvQe8Yc82cADT3xbQO6aQczNldMJLSQV67aSJMgrHbwa68CB1R62WG902rlqWHALkdGLY6kJ8m_UENvxdbZxyt8UzFQXLEqGJKM8jua5UYp1rgEYXNxWiTPpVe-Yx0y35LbgbVSxY4.IbiEAQ5-bDlZuz39YAY95g \ No newline at end of file +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MTowMi4yNTc1OTYgKzAzMDAgTVNLIG09KzAuMDU4MDQ5NjI2IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiTk1aakNyUHIzRTJNcTVRZCJ9.L8sc1krDuqFc37zmFaToGGTD_WYYbsy8MW4t5kPGt3FWrCANJNRHuA.WHo7iMokfv6RZOTc.q5jIF3yUpRP24nkcyBRpgTMOtwEz6hTIBGLR9VDr29BBl__tRvRdehyN7gJS_Ek57tAXvZAev_sFDZeYz8zIuhqhwKCnNHhxVhOOQ6yslW1geRGSJqX6WCq-BKElgiqvt6GOCO6waCWxFFkjWwNk7IiB1TpvfXdVZvq9VbCrOjaIbKbyxRfCu78rLK-kKshmiHFJjhAbUaddbnAgDvsYoqeUns_Wn1lYZQkZVKtbbzdbDCkiOfW7muGPOe7-kcEFqPRnn8nL5Iz7LrwCXiFGZpgw-oqTh2oByRT96TGJB4iIoCiik4P0vW7O9YTBDUAltHwAP86366pZUQvYWmJi_ZhrhNiLbb-abZxDqFXiwi2qXXif89bGFoPdQVJG_QsUk11zkQaSi95wOaJfphUawE3hc2ggcJ3bixGVy3-NWSCLl11QnJvbQPNTI32zU39XDzwIM_9TlW6LH9gM9nALK7yy7PM.aYiyIkMWRU1uKKL-23h8bg \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/bob.info b/tests/testdata/snapshot-many-users/keyring-test/bob.info index 3b6960b42..07a62cfc5 100644 --- a/tests/testdata/snapshot-many-users/keyring-test/bob.info +++ b/tests/testdata/snapshot-many-users/keyring-test/bob.info @@ -1 +1 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNy0xMCAxMDoxMjowMi40NDE5Nzk4ICswMDAwIFVUQyBtPSswLjEzNDUxMTQwMSIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6ImRvS3Q5RFV0TUVPaUx1b24ifQ.q50SqiyIEICdXZ-OK2yYbUR8-C2pBSCfJZT0Ls3p4vtIf29FlGFi5g.rCsgwnGVMCuRy4O4.fcj7fbsOxdNwwaGpancFMx-_WL0Cau8gGE8N-qhRu_r7mwJeFL2vKO4q7JWCnOBHzI9O1V-FIhKYemH7pdM1coX3vhU2ABu-Wi32EubxGASRZMRKtRXC5G5isOINcSYdQAFB5leIW0aJi7GG3MAo0lGmwG1aJJInm0EoTsUvIUMZ-tw4E6Hwe0hxhWfaV7C4vQD4t2W2BUsawG6LAusufzXghcREj6BTwRGGOouQNEeIwQt20oBfEbImLWCXx1X0OIVQIEnNmKUQ5E22sZzcjYSI-e6VFWn8x7c7TI1E2p2zQwVQ3M5G3VH5zV3zqHWUt_gT-f5o_zxClSvPbVwVEPYsZVl9lalHpgtBVch_uDWaO-BZ8Ta_WRSXGoiFd62IXR9VdCbb80kNXNGvbr9WTBfVBe0_spKeaWJCpKbWqGYy7Lx7ZeqSghoP.iqsBt1q2IzwtNX8Pu0bvZA \ No newline at end of file +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MTowMi4zMjc4NzUgKzAzMDAgTVNLIG09KzAuMDU3MTEwMDQzIiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiV3ozVll2aGpzQWxOZ2dyRiJ9.WAHIQ_mJfJ_ZGJskehKGombsWmNR3iMl9xsuPXZ2BIB24V8haPWR4g.UtCdxixhAY8YmrDi.PRn_bIRiPWiTL-qOirb-xXGCoBZ883E1EymGSkEjX53IW0tUlwLyEngTYIFAVQcU4VIx4gP2vuej6HrqaSawtGcXgfh2nCH9IMeGFmar_gDbuxNFZT4fb243HtvnvuKZRfvmIUK6-SKwgEXxhNzaAbwvQL2_fPqbh3pZiGRUN5hzIjmruyCevTuKQ-dB8KfTO5s7yDaE0Ex5_ahtNyak_vFPdeAblO0Q5bUcfNe3-NH8VGZ01nol6ly3K7xw_qlv7hM5fJUIYyj5nI1TimknOTsVmExpTKfwNJpPEGOaNy5m7UdRBBP1R8XuujqPnJhjJyolZS9trJqSAk0hcUYFMjNKRpq3pj0FU_wDO8EBqa7JmDe7eTP1IfV983TH8z8eZ4y6rHyajwl-YjI9QOqscRUwO9FSyIW1jPrG8hcNaPTDg5HO7BSoxAeVirvW4cPht1ybzK6TjKMMh95xUED0CCkM.kSSaSSSuSerdnmZP3V6J6Q \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/c6d9b47124c5dddfb36bc2fd571c0418633c10d0.address b/tests/testdata/snapshot-many-users/keyring-test/c6d9b47124c5dddfb36bc2fd571c0418633c10d0.address new file mode 100644 index 000000000..a16674592 --- /dev/null +++ b/tests/testdata/snapshot-many-users/keyring-test/c6d9b47124c5dddfb36bc2fd571c0418633c10d0.address @@ -0,0 +1 @@ +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MTowMi4zMjkzMSArMDMwMCBNU0sgbT0rMC4wNTg1NDUyNTEiLCJlbmMiOiJBMjU2R0NNIiwicDJjIjo4MTkyLCJwMnMiOiJJVUc3Zll5MFRKTFNQLWNnIn0.300U1tt0DPraVfR-Aj459OMEFcu1jT103RT62dtKfHmamHl5vdTG9Q.To-erkE1H0nkZZKE.w33nNWkkTrsXqY-RAF9kzc76p3LBElUKFRA5PN79zSJz0DhPrjcXIJ9O3_6rCww8aK2CFJ6l167WUe9cvtWRvAy4kD3noSACV3ZlOs55Cz7hirDng0yrcXOlbMmaaoG8GBYAKLPFW9P7-9on2qDbv2UNnRh7tnwu3kxdwmuwf8wHDf7jE-z7NeJSMxh0JsBm8lhv34hIfiAevqVs-ACRv0syc2RnRLJf8tbx71i-Gv-5jg.-GlZfmprHv3C6Hqpeo9IUA \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/ced172667cdb33ce4658a091cf4c8a15b1256280.address b/tests/testdata/snapshot-many-users/keyring-test/ced172667cdb33ce4658a091cf4c8a15b1256280.address deleted file mode 100644 index f05636487..000000000 --- a/tests/testdata/snapshot-many-users/keyring-test/ced172667cdb33ce4658a091cf4c8a15b1256280.address +++ /dev/null @@ -1 +0,0 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNy0xMCAxMDoxMjowMi40NDcxMDQ4ICswMDAwIFVUQyBtPSswLjEzOTYzNjQwMSIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6Ik91cFo1NlpXeGMweDJxbksifQ.aMMlS9G7Qd-hNNR5j9BQbsbABByaZWtHgEkVPYQE4ACNBGysL2uB_Q.q-CNFRzumQZrs2ah.BVzXrwCF8KVXt_piJTkC5IUbGm7XdZQ98K0o_rNf7jybV78PZGFLfzy8WXwSCYKaldaJGrnj8UGzRv4RZoVkP2V3VfthG81OlJfHqHDdQfqXpkBKSzowQNaUiq4sttCTgsFX1y-sAKLJ0JjVISnJdWRnpXCbbM_F8z5NRFqeWOm3I3GcZ7cRF8BExrxw10N02Xi1zXK6bXQstMpRkmCrstgYNLNWSRbh8MkO3Kh13MrK5A.4GitM7VxmFRmIXubx9CaSg \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/charlie.info b/tests/testdata/snapshot-many-users/keyring-test/charlie.info index fe79cbcf6..274e0749c 100644 --- a/tests/testdata/snapshot-many-users/keyring-test/charlie.info +++ b/tests/testdata/snapshot-many-users/keyring-test/charlie.info @@ -1 +1 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNy0xMCAxMDoxMjowMi41OTkzOTkyICswMDAwIFVUQyBtPSswLjEzNjc0OTkwMSIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6InZ1NkRmTmR4cF9tODNtTWcifQ.ZUAip5WCV167oApqwVAHEEC3O-AsO6cNFmyuho7CAF4AMuQMjDa0Nw.7Fznt6NtmHEnSKPf.7pnfuy-gMbmDqH3BA0UTMfJ2UgQjrVOpZgNNXdvJD1-yEj0j4N0GaueOzmfebq4_EuiDmhkXDSWGu_PPP7KeBusFdwNBk2I9JLznR2xLtyjgNUgP-6Wzrw2MtrMSQYOXZIBgT8NNYl2-cf7rLkqPuD_VTAHnH1FZNBJMWIj2bUgZ65hCsvgueyOtAUklB8G9DsmCbG4WxE2x_obXe3OCbjqh-sdCwrHL5tiqs337o4ZBshvuweMmQx1Pynf5xpLUUzda6BRxWmWELCpqksd7M2gSEPaH1XZk95odPwf8vIjYCiOCGHdWBn5wG8JsB8NN7Sm7AA7PBSw5VZh5bjfJt5EErRU3Zjsyo21K0-7sZzVCOQDaevTFKr70zHbsflrWYgLjDqn5MG0_qIs0NI9rA41mBSjoHqFvXZwmSM8847KGfuFP6wKE7CKqQmqiPDxoptY.LUzaI6_3HGlM1IeYMcujAQ \ No newline at end of file +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MTowMi4zOTg0MTYgKzAzMDAgTVNLIG09KzAuMDU3NzE5NzkzIiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiS2hyZGd1aXdydWJ1T1FfUyJ9.nAmsG6z8VdfvU456RutrRewqTJIODwUA6_F3ChwTQ5o-Epbk7gWZJg.49AyfP_7DTwqBVQW.Fo8Wx9rrq7jnC3S2zniTMpZy-duFzvA6OgIgHKOFGa82J4jQid61b6SzJei0HUIPNn5E_ma00ddzPUC9A0vK6D21Qgoy447VAKJPPD1QA3ylPWJG_GHq6Yndqpi2feT27Qu_3d7DS-hNqaJajlXBRG53f_d_Lo63g8tfoxcNdfAJ78krEY6p2kAQyC2APGhSGoCN-R8yrumrX1v6mqAJDdMo3rtXT9GyIhklPEGXnY5L2x9euOkOaNHKSzAg51KZrIt60TVYyUm8CPl5IvXNjIm7o68MnLPY4yJGNMPJientjM1MB51PwAqAtkZ2tUokEjKCUpNP_FftP6x-mZQ9SS45weHT-4FjqFeSeoWw-C6sYKCXVPQY3uktyvoTnGpuWyRHU3N16Cn0F7iY38Hdp9x5p-XxC63tBQ1o6m4MEcSFXYFS5hjqL1_YbTfP9_qMeKH8UOlmE5VVdm5QbLg3PU-C96f-W4bbCSY.yewwxrD390i9-9XNqTXimA \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/d99e5c8fa41c8df7764a5b12028c0ef5cc4206c2.address b/tests/testdata/snapshot-many-users/keyring-test/d99e5c8fa41c8df7764a5b12028c0ef5cc4206c2.address deleted file mode 100644 index 61fb28946..000000000 --- a/tests/testdata/snapshot-many-users/keyring-test/d99e5c8fa41c8df7764a5b12028c0ef5cc4206c2.address +++ /dev/null @@ -1 +0,0 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNy0xMCAxMDoxMjowMi43NjM3NSArMDAwMCBVVEMgbT0rMC4xNDE1MTAyMDEiLCJlbmMiOiJBMjU2R0NNIiwicDJjIjo4MTkyLCJwMnMiOiI3SlZMcVFRTjU4TFBvTV9yIn0._pkI2vqFr8X4r4sj5B6-Q5nKWhv_qCZqfOIDb3atQ658sqFlz6U95w.B1uZ1HlJG-WfI4sX.7HSiNzxNGn33JXXyjtAEQEmVdj2XBqidCuvFNopR4oZWkJYtOknjRrzQRek_ZZ9Wu5lKvakdRSe7ldRCTNCyp3Ohmdr4ItL05ZSUXFZfZ717D6vVG9d8PNqdkIiR1LY6is0ysN050x7FJiE5U6IyTW1saedIYpJZZyNOJlAmO9nLOKlFHbnXGb-_CElCBXcTwwr-ZPvRsemSSEbnu5y651bJ0-fJKjpHXlwPLo7Z9LuWIw.SPL_FWTtYWxZ9KHr4h26nQ \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/dave.info b/tests/testdata/snapshot-many-users/keyring-test/dave.info index 8ec9d9943..b8ed0cead 100644 --- a/tests/testdata/snapshot-many-users/keyring-test/dave.info +++ b/tests/testdata/snapshot-many-users/keyring-test/dave.info @@ -1 +1 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNy0xMCAxMDoxMjowMi43NTg1OTIxICswMDAwIFVUQyBtPSswLjEzNjM1MjMwMSIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6InJTSG5sTHdJMk03b2hTZ1cifQ.LwH2UVVZo2MxUzuEnrdkI8xeXmpD5sfeSNN6eq9ewVLXibkNJz-9eQ.82DLos-A5zcdFCOC.u71fMd5bS5HMs0SXSehlWTFZY33I3qLGVwvqhfpOUhGddBRJklUq0FxNcfAfOFPpAKkiPXGuo1U_WG2YSDozkwP8EXeZ6Dst-JFaQYeqzB5OGL4H0D3rFdayjQlFh9erQ-ALlg5vX8lpzVNt6lTLEtTbKiPYxiHkkDxAK0xvZAhrwFiJKnncZyd93NTbVp8TcxjstErAG5nEl4B3nK2rmkiHBLcLY2rjS-I_9ameijb0PPpC6Ts7bT3-Ygconr6XY3XIH2le2DuOFUsH3aicQQ1WQsmogKS8rNMtMAHnVPxkJ4oWogYEGvZMbCAZSZKIbG_eCfKQ7PyxAjS4ID19jD68U7N6n-OWIb0BWgYGrIufAUk6j3cRkotHkZVDPrhvTTEyXekXHbWhoGr7eM2wHv2FvIrCoGaYxSPRQIh8OdehsvjduPd2EK3YPQ.N7Z70MGnHPp2uH5f6k-gGg \ No newline at end of file +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MTowMi40NjU0MzcgKzAzMDAgTVNLIG09KzAuMDU0MzQxNDU5IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiVExvUmVDaWVESGItMzc3MCJ9.HcjEHHhuaZgSugKksJaogwR0uAC4nM1L1g5WQ9bPRM-kiiV1MLn8ug.HtHoLl-BAo2-G8f4.fEGBjMwQDGUzG3cBJuqlQGi_ZjU-MtOvJsrq-qSfAG6O-Nrqs_-zrmKopJnVq0pzVFLr8MTxS_MSdqx2gw48V04jTlTQfLek4nOvZ_uEd3bMXqiuIT3sKs_o0HvUFKcbHcrcvCnEN6wB0Mu9z_cjSOZPIGvVRhtfcfb5DJdZFMvg4pS5sSyJbknn_iD8aVhSDWKWjPBFM1KDSNqf2CRPDgmx43U60AmNuwYzdog0KIVXMMATb6glS7vXdnpRj8Hwm3-ysLKTopy2-9LXBhtha5daXELbsaJ-FWFQIh8zb08DYPtZjk06iEtsDpcJtCyziEMzM7FcamorCEQf5VqHKGZFMvgkwR2HJYhFnth_Gpi88ZdqHBp6oaRoy5uDuluuyE3GQSKD2r17-XnGsKlcsBj-VqoWWdJ0iJLky4k3QsuBW6S19bKE88CzXaLU5md-rz_cLnLpDi4Vyvz8Dpdyzwso1g.VMrC1Z1kKrDzfUFJqI-sjg \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/erin.info b/tests/testdata/snapshot-many-users/keyring-test/erin.info index 1384bb158..a0bf06a23 100644 --- a/tests/testdata/snapshot-many-users/keyring-test/erin.info +++ b/tests/testdata/snapshot-many-users/keyring-test/erin.info @@ -1 +1 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNy0xMCAxMDoxMjowMi45MDY5NTI3ICswMDAwIFVUQyBtPSswLjEyNzQyNTMwMSIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6IllPVThKOVF0MUs4TGRlOXgifQ.xv6s8KRED6PtM3uAwwR23bdDgET0uJu97iXya4SAAQDrkaTleqDg4w.IYxwQNs_xgiMc1uP.ySNBjH53YEeCXkstHxkhfeWkkoc1GC58f3d1pbD9-o8eZVZB-bCDFGmR7X3jZNeRq_7LLEsL7Lz80c6i1YegGORjQq7ab4atcmKYKIy67K5c8L457SYKtulUh45ncCmbcLTsVrj7N7P7IUKs24YQgB7tpYQPQkDgOsCdt4hX96RJRpsWo_19Bs6F6ZsE2ek0pL-rFSo-mYwfFJzOqLxoN14egWODO4ec_hbKxGfWkdBxOq5dhuOj9lrlfSyWF-Tp8kokUttzkw_EXHEMer3JH_TG6T49_suc5QtSIzRaexACqUtMh9qcFkGD9B1fJI1jUndqz3Q20WK0tD_xxSAglINsyPXXSSeMeHn2tFy5C35z342BZPsfrc22Ac0M2ZE8kZKQ4zCyV4OtyAITtHyD-L8PDae01DQVdzbsS9G0NyQTAqXzO2jkOl62CQ.BldLgd7nUlE3WcM6xmFRCw \ No newline at end of file +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MTowMi41MzQ1MTggKzAzMDAgTVNLIG09KzAuMDU2NzUzMjA5IiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiNWstOUVyZTQtNWVXSmYwVyJ9.ONzqtqswP1KX4fhtHCVHqQZp2H5_v31uSnVE4jYtomFYFlN_mmamKA.O2dsc1k7naNIm3m0.0-HSxUq4B4w-XotJD32aI7Bf9YqCYn7MfJ2RvCmNpLoQwvaSB8mLMFEuobh1vcZ1YgLWSwsABso_Q-Nidxob2XAPg5ysW6oCMfrfn0QRtUzDswO4xoZOs6ZrI7mBOO1B1p_EQjuopH8UFZux0UICBzYx69R9hbCsTKteFN-uCpQcJIuYIciMJ_x1_vFWerUIxcJoYxGfMwdwPA3v7YWUXn96dyU7LxlRLLZQ7sutSWyaVmio0hK5JRQQF28pZMd1nAxo6g8n6Ub6z1U7lloaT1DAIk5JfKxv9mNHYZCB1aiuqegC2gSKtcAnf_mN7zSdGZVGVELH25rLkgrzs51xTL6Px6iGerT8sAA0-jqPSDCzSnBveOzXNVWXf0gfrM9ViBRQInomqs95zb0F0l38hMDNmqISUdMu8xpno9HnjUUz-44xmX-SiOk77zqh_OGOxdVPyKz6SRUrs5eyXq8FxW9F4g.4jyhmwujkUpZI-ri9zad2A \ No newline at end of file diff --git a/tests/testdata/snapshot-many-users/keyring-test/frank.info b/tests/testdata/snapshot-many-users/keyring-test/frank.info index f778f3b01..35a15f8db 100644 --- a/tests/testdata/snapshot-many-users/keyring-test/frank.info +++ b/tests/testdata/snapshot-many-users/keyring-test/frank.info @@ -1 +1 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wNy0xMCAxMDoxMjowMy4wNTA4NzY0ICswMDAwIFVUQyBtPSswLjEyMzEzMzEwMSIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6IjhGUzdJQnplZ0dxTU9pdkwifQ.6CZZWDFoQ3S7TwzxMOdw3T91LCti8TkvHr-brP0ZcAvz-Apnw9NYyA.kxN8avCzoIl6d65i.IOAM8NSVL5VLdky8niBlTKldKkarl_FoM2b_lsgaO13z4MFR4GgzuPcjH0LB0Abo9FEYUqowvAqMkkmepEhu4EPKw0ygK1sNR1fu9d7_i6R7gwTpvJjduL3IJzeLuS5p1Sxdt8PA8_GGkWMubQleqpzoFQaMM0XAchwfJJzlEMEeyQq9YTb0RoDxI8fB0nPVXBiptm_JtjmcL39inb6noo_g-k74QBPJK51uF-uryO7tDUzOeCTGxc9ryWcBeedEmzCJI_Cl7A0jF_Z7vNIIdRO9dHd-9vDwYFICjP1Px58MTrJdvUHygupvc9GWZijO5jOEv0_UJNz3SxLcSXPnuWzKBopFFjO7gSIGoTBYkla9Th2gUwcrMfj4AeCJvmxuC9u3wRYcJ-LjmazsxbdWi_fKRZ2gS1X_ENaYUanraa_ZDsGiti6VlDrJh0Q.PmJeV6UpBFTyW5ZaGnagyg \ No newline at end of file +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyNC0wOC0yOCAxODo1MTowMi42MDU2ODYgKzAzMDAgTVNLIG09KzAuMDU4MTU4MjUxIiwiZW5jIjoiQTI1NkdDTSIsInAyYyI6ODE5MiwicDJzIjoiV2FBVXNzbGxIdmJXbVBGOCJ9.wn8Swz0FuW-tEUx8PPK7czI5wzLesVMIw9GhS_Dgo6V7zk1nkJGnyw.qSdqu2YVs88ecKwj.gm654UT-1KqAei9R3a8yABJhA38vm9I1XiCSxmoA8Zr7T62VvDu4Dm9ZFOZ_MBs-ydPsUv-mDjykyG-H2xLFX76MFKFA3qu5qz9XnB27Xn04t6LAlQF5pcROEbdT36dOpS5tLu2b0Zjo44QaF1JMMCrKCU0B9Ibk9omRHUZ1cljPXA4XZa0aoF0UtMcLC2sw4V6e5ojO-wd2walJ0bLo92t9UWs7-dcnFEH6tXE2Z3K-_opvReQZWeKEH4j8uz2VRDyBnDjykDXwmzyBqS2_BkBLu8mlxm571aAARsl80LlD6CPvDSDpSRlpGMY-9PcFDJxQlyHp4B8n2CgXD-mErhjx00kSeQQUehlA-WziIDAOSJpZiXJtdEHK6Jm1Vr2caEFLV3TifUJEoAax52-vs1mNR_bpuAWh0m2lSxhG7XJGGyvpv-5O7yqEaQzJl2Gh3UDo1PBo2ASOv1HX5ZMpVwkPZ0M.ISxjVg9vh970XnM2DTRXjw \ No newline at end of file diff --git a/warden/app/ante.go b/warden/app/ante.go index 7a8f17e51..99d0e0473 100644 --- a/warden/app/ante.go +++ b/warden/app/ante.go @@ -15,10 +15,19 @@ import ( wasmkeeper "github.com/CosmWasm/wasmd/x/wasm/keeper" wasmTypes "github.com/CosmWasm/wasmd/x/wasm/types" + + evmante "github.com/evmos/evmos/v18/app/ante/evm" + + errorsmod "cosmossdk.io/errors" + errortypes "github.com/cosmos/cosmos-sdk/types/errors" + authante "github.com/cosmos/cosmos-sdk/x/auth/ante" + cosmosante "github.com/evmos/evmos/v18/app/ante/cosmos" + anteutils "github.com/evmos/evmos/v18/app/ante/utils" + evmtypes "github.com/evmos/evmos/v18/x/evm/types" ) // HandlerOptions extend the SDK's AnteHandler options by requiring the IBC -// channel keeper. +// channel keeper, wasm keeper and EvmOS keepers. type HandlerOptions struct { ante.HandlerOptions @@ -27,30 +36,24 @@ type HandlerOptions struct { WasmKeeper *wasmkeeper.Keeper TXCounterStoreService corestoretypes.KVStoreService CircuitKeeper *circuitkeeper.Keeper -} -// NewAnteHandler constructor -func NewAnteHandler(options HandlerOptions) (sdk.AnteHandler, error) { - if options.AccountKeeper == nil { - return nil, errors.New("account keeper is required for ante builder") - } - if options.BankKeeper == nil { - return nil, errors.New("bank keeper is required for ante builder") - } - if options.SignModeHandler == nil { - return nil, errors.New("sign mode handler is required for ante builder") - } - if options.WasmConfig == nil { - return nil, errors.New("wasm config is required for ante builder") - } - if options.TXCounterStoreService == nil { - return nil, errors.New("wasm store service is required for ante builder") - } - if options.CircuitKeeper == nil { - return nil, errors.New("circuit keeper is required for ante builder") - } + // evmos + FeeMarketKeeper evmante.FeeMarketKeeper + EvmKeeper evmante.EVMKeeper + TxFeeChecker anteutils.TxFeeChecker + AccountKeeper evmtypes.AccountKeeper + BankKeeper evmtypes.BankKeeper + DistributionKeeper anteutils.DistributionKeeper + StakingKeeper anteutils.StakingKeeper + MaxTxGasWanted uint64 +} +func newCosmosAnteHandler(options HandlerOptions) sdk.AnteHandler { anteDecorators := []sdk.AnteDecorator{ + cosmosante.RejectMessagesDecorator{}, // reject MsgEthereumTxs + cosmosante.NewAuthzLimiterDecorator( // disable the Msg types that cannot be included on an authz.MsgExec msgs field + sdk.MsgTypeURL(&evmtypes.MsgEthereumTx{}), + ), ante.NewSetUpContextDecorator(), // outermost AnteDecorator. SetUpContext must be called first wasmkeeper.NewLimitSimulationGasDecorator(options.WasmConfig.SimulationGasLimit), // after setup context to enforce limits early wasmkeeper.NewCountTXDecorator(options.TXCounterStoreService), @@ -60,8 +63,9 @@ func NewAnteHandler(options HandlerOptions) (sdk.AnteHandler, error) { ante.NewValidateBasicDecorator(), ante.NewTxTimeoutHeightDecorator(), ante.NewValidateMemoDecorator(options.AccountKeeper), + cosmosante.NewMinGasPriceDecorator(options.FeeMarketKeeper, options.EvmKeeper), ante.NewConsumeGasForTxSizeDecorator(options.AccountKeeper), - ante.NewDeductFeeDecorator(options.AccountKeeper, options.BankKeeper, options.FeegrantKeeper, options.TxFeeChecker), + ante.NewDeductFeeDecorator(options.AccountKeeper, options.BankKeeper, options.FeegrantKeeper, options.HandlerOptions.TxFeeChecker), ante.NewSetPubKeyDecorator(options.AccountKeeper), // SetPubKeyDecorator must be called before all signature verification decorators ante.NewValidateSigCountDecorator(options.AccountKeeper), ante.NewSigGasConsumeDecorator(options.AccountKeeper, options.SigGasConsumer), @@ -70,5 +74,99 @@ func NewAnteHandler(options HandlerOptions) (sdk.AnteHandler, error) { ibcante.NewRedundantRelayDecorator(options.IBCKeeper), } - return sdk.ChainAnteDecorators(anteDecorators...), nil + return sdk.ChainAnteDecorators(anteDecorators...) +} + +func newMonoEVMAnteHandler(options HandlerOptions) sdk.AnteHandler { + return sdk.ChainAnteDecorators( + evmante.NewMonoDecorator( + options.AccountKeeper, + options.BankKeeper, + options.FeeMarketKeeper, + options.EvmKeeper, + options.DistributionKeeper, + options.StakingKeeper, + options.MaxTxGasWanted, + ), + ) +} + +func ValidateAnteHandlerOptions(options HandlerOptions) error { + if options.AccountKeeper == nil { + return errors.New("account keeper is required for ante builder") + } + if options.BankKeeper == nil { + return errors.New("bank keeper is required for ante builder") + } + if options.SignModeHandler == nil { + return errors.New("sign mode handler is required for ante builder") + } + if options.WasmConfig == nil { + return errors.New("wasm config is required for ante builder") + } + if options.TXCounterStoreService == nil { + return errors.New("wasm store service is required for ante builder") + } + if options.CircuitKeeper == nil { + return errors.New("circuit keeper is required for ante builder") + } + if options.EvmKeeper == nil { + return errors.New("evm keeper is required for ante builder") + } + if options.FeeMarketKeeper == nil { + return errors.New("feemarket keeper is required for ante builder") + } + if options.TxFeeChecker == nil { + return errors.New("tx fee checker is required for ante builder") + } + if options.StakingKeeper == nil { + return errors.New("tx fee checker is required for ante builder") + } + if options.DistributionKeeper == nil { + return errors.New("tx fee checker is required for ante builder") + } + if options.StakingKeeper == nil { + return errors.New("tx fee checker is required for ante builder") + } + + return nil +} + +// NewAnteHandler constructor +func NewAnteHandler(options HandlerOptions) sdk.AnteHandler { + return func( + ctx sdk.Context, tx sdk.Tx, sim bool, + ) (newCtx sdk.Context, err error) { + var anteHandler sdk.AnteHandler + + txWithExtensions, ok := tx.(authante.HasExtensionOptionsTx) + if ok { + opts := txWithExtensions.GetExtensionOptions() + if len(opts) > 0 { + switch typeURL := opts[0].GetTypeUrl(); typeURL { + case "/ethermint.evm.v1.ExtensionOptionsEthereumTx": + // handle as *evmtypes.MsgEthereumTx + anteHandler = newMonoEVMAnteHandler(options) + default: + return ctx, errorsmod.Wrapf( + errortypes.ErrUnknownExtensionOptions, + "rejecting tx with unsupported extension option: %s", typeURL, + ) + } + + return anteHandler(ctx, tx, sim) + } + } + + // handle as totally normal Cosmos SDK tx + switch tx.(type) { + case sdk.Tx: + anteHandler = newCosmosAnteHandler(options) + default: + return ctx, errorsmod.Wrapf(errortypes.ErrUnknownRequest, "invalid transaction type: %T", tx) + } + + return anteHandler(ctx, tx, sim) + } + } diff --git a/warden/app/app.go b/warden/app/app.go index 4877caf84..393706970 100644 --- a/warden/app/app.go +++ b/warden/app/app.go @@ -63,6 +63,7 @@ import ( icahostkeeper "github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts/host/keeper" ibcfeekeeper "github.com/cosmos/ibc-go/v8/modules/apps/29-fee/keeper" ibckeeper "github.com/cosmos/ibc-go/v8/modules/core/keeper" + "github.com/spf13/cast" "github.com/warden-protocol/wardenprotocol/shield/ast" "github.com/warden-protocol/wardenprotocol/warden/x/act/cosmoshield" actmodulekeeper "github.com/warden-protocol/wardenprotocol/warden/x/act/keeper" @@ -77,6 +78,13 @@ import ( "github.com/warden-protocol/wardenprotocol/warden/docs" + evmosante "github.com/evmos/evmos/v18/app/ante" + ethante "github.com/evmos/evmos/v18/app/ante/evm" + srvflags "github.com/evmos/evmos/v18/server/flags" + evmkeeper "github.com/evmos/evmos/v18/x/evm/keeper" + feemarketkeeper "github.com/evmos/evmos/v18/x/feemarket/keeper" + + evmosencodingcodec "github.com/evmos/evmos/v18/encoding/codec" oracleclient "github.com/skip-mev/slinky/service/clients/oracle" marketmapkeeper "github.com/skip-mev/slinky/x/marketmap/keeper" oraclekeeper "github.com/skip-mev/slinky/x/oracle/keeper" @@ -153,6 +161,10 @@ type App struct { OracleKeeper *oraclekeeper.Keeper MarketMapKeeper *marketmapkeeper.Keeper + // evmOS + EvmKeeper *evmkeeper.Keeper + FeeMarketKeeper feemarketkeeper.Keeper + // simulation manager sm *module.SimulationManager @@ -186,10 +198,24 @@ func getGovProposalHandlers() []govclient.ProposalHandler { return govProposalHandlers } +func ProvideCustomRegisterCrypto() runtime.CustomRegisterLegacyAminoCodec { + return evmosencodingcodec.RegisterLegacyAminoCodec +} + +func ProvideCustomRegisterInterfaces() runtime.CustomRegisterInterfaces { + return evmosencodingcodec.RegisterInterfaces +} + // AppConfig returns the default app config. func AppConfig() depinject.Config { return depinject.Configs( + // used in runtime.ProvideApp to register eth signing types + depinject.Provide(ProvideCustomRegisterCrypto), + depinject.Provide(ProvideCustomRegisterInterfaces), + moduleConfig(), + // will be used inside runtime.ProvideInterfaceRegistry + depinject.Provide(ProvideMsgEthereumTxCustomGetSigner), // Loads the ao config from a YAML file. // appconfig.LoadYAML(AppConfigYAML), depinject.Supply( @@ -232,6 +258,8 @@ func New( app.GetCapabilityScopedKeeper, // Supply Wasm keeper, similar to what we do for IBC keeper, since it doesn't support App Wiring yet. app.GetWasmKeeper, + app.GetEvmKeeper, + app.GetFeemarketKeeper, // Supply the logger logger, func() ast.Expander { @@ -410,7 +438,9 @@ func New( return app.App.InitChainer(ctx, req) }) - app.setAnteHandler(app.txConfig, wasmConfig, app.GetKey(wasmtypes.StoreKey)) + maxGasWanted := cast.ToUint64(appOpts.Get(srvflags.EVMMaxTxGasWanted)) + + app.setAnteHandler(app.txConfig, wasmConfig, app.GetKey(wasmtypes.StoreKey), maxGasWanted) app.UpgradeKeeper.SetUpgradeHandler("v01-to-v02", func(ctx context.Context, plan upgradetypes.Plan, fromVM module.VersionMap) (module.VersionMap, error) { fromVM["capability"] = 1 // for some reason this is not set, but it should. If we don't do this the capability module will panic when trying to migrate. @@ -502,6 +532,15 @@ func (app *App) GetMemKey(storeKey string) *storetypes.MemoryStoreKey { return key } +func (app *App) GetTransientKey(storeKey string) *storetypes.TransientStoreKey { + key, ok := app.UnsafeFindStoreKey(storeKey).(*storetypes.TransientStoreKey) + if !ok { + return nil + } + + return key +} + // kvStoreKeys returns all the kv store keys registered inside App. func (app *App) kvStoreKeys() map[string]*storetypes.KVStoreKey { keys := make(map[string]*storetypes.KVStoreKey) @@ -548,6 +587,16 @@ func (app *App) GetWasmKeeper() wasmkeeper.Keeper { return app.WasmKeeper } +// GetEvmKeeper returns the Evm keeper. +func (app *App) GetEvmKeeper(_placeHolder int16) *evmkeeper.Keeper { + return app.EvmKeeper +} + +// GetFeemarketKeeper returns the Feemarket keeper. +func (app *App) GetFeemarketKeeper(_placeHolder int32) feemarketkeeper.Keeper { + return app.FeeMarketKeeper +} + // GetCapabilityScopedKeeper returns the capability scoped keeper. func (app *App) GetCapabilityScopedKeeper(moduleName string) capabilitykeeper.ScopedKeeper { return app.CapabilityKeeper.ScopeToModule(moduleName) @@ -583,27 +632,34 @@ func BlockedAddresses() map[string]bool { return result } -func (app *App) setAnteHandler(txConfig client.TxConfig, wasmConfig wasmtypes.WasmConfig, txCounterStoreKey *storetypes.KVStoreKey) { - anteHandler, err := NewAnteHandler( - HandlerOptions{ - HandlerOptions: ante.HandlerOptions{ - AccountKeeper: app.AccountKeeper, - BankKeeper: app.BankKeeper, - SignModeHandler: txConfig.SignModeHandler(), - FeegrantKeeper: app.FeeGrantKeeper, - SigGasConsumer: ante.DefaultSigVerificationGasConsumer, - }, - IBCKeeper: app.IBCKeeper, - WasmConfig: &wasmConfig, - WasmKeeper: &app.WasmKeeper, - TXCounterStoreService: runtime.NewKVStoreService(txCounterStoreKey), - CircuitKeeper: &app.CircuitBreakerKeeper, +func (app *App) setAnteHandler(txConfig client.TxConfig, wasmConfig wasmtypes.WasmConfig, txCounterStoreKey *storetypes.KVStoreKey, maxGasWanted uint64) { + options := HandlerOptions{ + HandlerOptions: ante.HandlerOptions{ + SignModeHandler: txConfig.SignModeHandler(), + FeegrantKeeper: app.FeeGrantKeeper, + SigGasConsumer: evmosante.SigVerificationGasConsumer, }, - ) - if err != nil { + IBCKeeper: app.IBCKeeper, + WasmConfig: &wasmConfig, + WasmKeeper: &app.WasmKeeper, + TXCounterStoreService: runtime.NewKVStoreService(txCounterStoreKey), + CircuitKeeper: &app.CircuitBreakerKeeper, + EvmKeeper: app.EvmKeeper, + FeeMarketKeeper: app.FeeMarketKeeper, + TxFeeChecker: ethante.NewDynamicFeeChecker(app.EvmKeeper), + AccountKeeper: app.AccountKeeper, + BankKeeper: app.BankKeeper, + DistributionKeeper: app.DistrKeeper, + StakingKeeper: app.StakingKeeper, + MaxTxGasWanted: maxGasWanted, + } + + if err := ValidateAnteHandlerOptions(options); err != nil { panic(fmt.Errorf("failed to create AnteHandler: %s", err)) } + anteHandler := NewAnteHandler(options) + // Set the AnteHandler for the app app.SetAnteHandler(anteHandler) } diff --git a/warden/app/app_config.go b/warden/app/app_config.go index 1fa68b3a3..2a8d33031 100644 --- a/warden/app/app_config.go +++ b/warden/app/app_config.go @@ -32,7 +32,8 @@ import ( evidencetypes "cosmossdk.io/x/evidence/types" "cosmossdk.io/x/feegrant" _ "cosmossdk.io/x/feegrant/module" // import for side-effects - _ "cosmossdk.io/x/upgrade" // import for side-effects + "cosmossdk.io/x/tx/signing" + _ "cosmossdk.io/x/upgrade" // import for side-effects upgradetypes "cosmossdk.io/x/upgrade/types" "github.com/cosmos/cosmos-sdk/runtime" sdk "github.com/cosmos/cosmos-sdk/types" @@ -92,6 +93,9 @@ import ( marketmaptypes "github.com/skip-mev/slinky/x/marketmap/types" _ "github.com/skip-mev/slinky/x/oracle" // import for side-effects oracletypes "github.com/skip-mev/slinky/x/oracle/types" + + evmtypes "github.com/evmos/evmos/v18/x/evm/types" + feemarkettypes "github.com/evmos/evmos/v18/x/feemarket/types" ) func init() { @@ -110,6 +114,11 @@ func init() { config.Seal() } +// ProvideMsgEthereumTxCustomGetSigner provides the CustomGetSigners method for the EthereumTx. +func ProvideMsgEthereumTxCustomGetSigner() signing.CustomGetSigner { + return evmtypes.MsgEthereumTxCustomGetSigner +} + var ( // NOTE: The genutils module must occur after staking so that pools are // properly initialized with tokens from genesis accounts. @@ -131,6 +140,12 @@ var ( minttypes.ModuleName, crisistypes.ModuleName, ibcexported.ModuleName, + // evmOS modules + evmtypes.ModuleName, + // NOTE: feemarket module needs to be initialized before genutil module: + // gentx transactions use MinGasPriceDecorator.AnteHandle + feemarkettypes.ModuleName, + genutiltypes.ModuleName, evidencetypes.ModuleName, authz.ModuleName, @@ -156,6 +171,7 @@ var ( oracletypes.ModuleName, // market map genesis must be called AFTER all consuming modules (i.e. x/oracle, etc.) marketmaptypes.ModuleName, + // this line is used by starport scaffolding # stargate/app/initGenesis } @@ -188,6 +204,10 @@ var ( // slinky modules oracletypes.ModuleName, marketmaptypes.ModuleName, + + // evmOS modules + evmtypes.ModuleName, + feemarkettypes.ModuleName, // this line is used by starport scaffolding # stargate/app/beginBlockers } @@ -214,6 +234,10 @@ var ( // slinky modules oracletypes.ModuleName, marketmaptypes.ModuleName, + + // evmOS modules + evmtypes.ModuleName, + feemarkettypes.ModuleName, // this line is used by starport scaffolding # stargate/app/endBlockers } @@ -236,6 +260,7 @@ var ( {Account: actmoduletypes.ModuleName}, {Account: oracletypes.ModuleName, Permissions: []string{}}, {Account: wardenmoduletypes.ModuleName, Permissions: []string{}}, + {Account: evmtypes.ModuleName, Permissions: []string{authtypes.Minter, authtypes.Burner}}, // used for secure addition and subtraction of balance using module account // this line is used by starport scaffolding # stargate/app/maccPerms } diff --git a/warden/app/legacy.go b/warden/app/legacy.go index b7f38d2dd..9774dd8ff 100644 --- a/warden/app/legacy.go +++ b/warden/app/legacy.go @@ -43,6 +43,7 @@ import ( ibckeeper "github.com/cosmos/ibc-go/v8/modules/core/keeper" solomachine "github.com/cosmos/ibc-go/v8/modules/light-clients/06-solomachine" ibctm "github.com/cosmos/ibc-go/v8/modules/light-clients/07-tendermint" + "github.com/ethereum/go-ethereum/core/vm" "github.com/spf13/cast" // ibctransfer "github.com/cosmos/ibc-go/v8/modules/apps/transfer" @@ -56,6 +57,15 @@ import ( "github.com/warden-protocol/wardenprotocol/warden/x/ibctransfer/keeper" ibctransfer "github.com/warden-protocol/wardenprotocol/warden/x/ibctransfer/module" wardenkeeper "github.com/warden-protocol/wardenprotocol/warden/x/warden/keeper" + + // evmos + srvflags "github.com/evmos/evmos/v18/server/flags" + "github.com/evmos/evmos/v18/x/evm" + evmkeeper "github.com/evmos/evmos/v18/x/evm/keeper" + evmtypes "github.com/evmos/evmos/v18/x/evm/types" + "github.com/evmos/evmos/v18/x/feemarket" + feemarketkeeper "github.com/evmos/evmos/v18/x/feemarket/keeper" + feemarkettypes "github.com/evmos/evmos/v18/x/feemarket/types" // this line is used by starport scaffolding # ibc/app/import ) @@ -75,6 +85,12 @@ func (app *App) registerLegacyModules(appOpts servertypes.AppOptions, wasmOpts [ storetypes.NewTransientStoreKey(paramstypes.TStoreKey), // wasm kv store storetypes.NewKVStoreKey(wasmtypes.StoreKey), + // evm kv store + storetypes.NewKVStoreKey(evmtypes.StoreKey), + storetypes.NewTransientStoreKey(evmtypes.TransientKey), + // feemarket kv store + storetypes.NewKVStoreKey(feemarkettypes.StoreKey), + storetypes.NewTransientStoreKey(feemarkettypes.TransientKey), ); err != nil { panic(err) } @@ -86,6 +102,9 @@ func (app *App) registerLegacyModules(appOpts servertypes.AppOptions, wasmOpts [ app.ParamsKeeper.Subspace(ibctransfertypes.ModuleName).WithKeyTable(ibctransfertypes.ParamKeyTable()) app.ParamsKeeper.Subspace(icacontrollertypes.SubModuleName).WithKeyTable(icacontrollertypes.ParamKeyTable()) app.ParamsKeeper.Subspace(icahosttypes.SubModuleName).WithKeyTable(icahosttypes.ParamKeyTable()) + // evmOS subspaces + app.ParamsKeeper.Subspace(evmtypes.ModuleName).WithKeyTable(evmtypes.ParamKeyTable()) //nolint:staticcheck + app.ParamsKeeper.Subspace(feemarkettypes.ModuleName).WithKeyTable(feemarkettypes.ParamKeyTable()) // add capability keeper and ScopeToModule for ibc module app.CapabilityKeeper = capabilitykeeper.NewKeeper( @@ -240,6 +259,35 @@ func (app *App) registerLegacyModules(appOpts servertypes.AppOptions, wasmOpts [ ) app.ContractKeeper = wasmkeeper.NewDefaultPermissionKeeper(&app.WasmKeeper) + // evmOS keepers + app.FeeMarketKeeper = feemarketkeeper.NewKeeper( + app.appCodec, + authtypes.NewModuleAddress(govtypes.ModuleName), + app.GetKey(feemarkettypes.StoreKey), + app.GetTransientKey(feemarkettypes.TransientKey), + app.GetSubspace(feemarkettypes.ModuleName), + ) + + tracer := cast.ToString(appOpts.Get(srvflags.EVMTracer)) + + app.EvmKeeper = evmkeeper.NewKeeper( + app.appCodec, + app.GetKey(evmtypes.StoreKey), + app.GetTransientKey(evmtypes.TransientKey), + authtypes.NewModuleAddress(govtypes.ModuleName), + app.AccountKeeper, + app.BankKeeper, + app.StakingKeeper, + app.FeeMarketKeeper, + tracer, + app.GetSubspace(evmtypes.ModuleName), + ) + + // NOTE: we are just adding the default Ethereum precompiles here. + // Additional precompiles could be added if desired. + app.EvmKeeper.WithPrecompiles( + vm.PrecompiledContractsBerlin, + ) // integration point for custom authentication modules var noAuthzModule porttypes.IBCModule @@ -294,6 +342,9 @@ func (app *App) registerLegacyModules(appOpts servertypes.AppOptions, wasmOpts [ ibchooks.NewAppModule(app.AccountKeeper), //wasm module wasm.NewAppModule(app.AppCodec(), &app.WasmKeeper, app.StakingKeeper, app.AccountKeeper, app.BankKeeper, app.MsgServiceRouter(), app.GetSubspace(wasmtypes.ModuleName)), + // evmOS modules + feemarket.NewAppModule(app.FeeMarketKeeper, app.GetSubspace(feemarkettypes.ModuleName)), + evm.NewAppModule(app.EvmKeeper, &app.AccountKeeper, app.GetSubspace(evmtypes.ModuleName)), ); err != nil { panic(err) } @@ -314,6 +365,8 @@ func RegisterLegacyModules(registry cdctypes.InterfaceRegistry) map[string]appmo solomachine.ModuleName: solomachine.AppModule{}, gmptypes.ModuleName: gmpmodule.AppModule{}, wasmtypes.ModuleName: wasm.AppModule{}, + evmtypes.ModuleName: evm.AppModule{}, + feemarkettypes.ModuleName: feemarket.AppModule{}, } for _, module := range modules { diff --git a/warden/app/oracle.go b/warden/app/oracle.go index 7a9d52ed2..4aa427c14 100644 --- a/warden/app/oracle.go +++ b/warden/app/oracle.go @@ -238,6 +238,7 @@ func createSlinkyUpgrader(app *App) AppUpgrade { if err != nil { return nil, fmt.Errorf("failed to set x/marketmap params: %w", err) } + return migrations, nil }, StoreUpgrade: storetypes.StoreUpgrades{ diff --git a/wardend.just b/wardend.just index daf60ba12..7d069968e 100644 --- a/wardend.just +++ b/wardend.just @@ -1,6 +1,6 @@ app_name := "warden" binary_name := app_name + "d" -chain_id := app_name +chain_id := "warden_1337-1" tag := `git describe --tags --always` commit := `git rev-parse HEAD` dirty := `git diff --quiet || echo "-dirty"`