From 3480789c69dc06b6af0582b309115b19b447f67c Mon Sep 17 00:00:00 2001 From: zakir <80246097+zakir-code@users.noreply.github.com> Date: Fri, 2 Feb 2024 09:37:43 +0800 Subject: [PATCH] chore: make format code (#185) --- .github/workflows/lint_golang.yml | 6 +++--- .golangci.yml | 9 +++++++-- Makefile | 19 ++++++++++++------- ante/ante_test.go | 2 +- ante/fees.go | 4 ++-- app/app.go | 2 +- client/cli/block_result.go | 12 ++++++------ client/cli/debug.go | 2 +- client/cli/keys/import_export.go | 7 ++++--- client/cli/keys/output.go | 2 +- client/cli/keys/show.go | 4 ++-- client/eth_tx.go | 2 +- client/grpc/grpc_client.go | 2 +- client/jsonrpc/json_rpc.go | 8 ++++---- cmd/config.go | 4 +--- cmd/doctor.go | 2 +- cmd/fxcored/main.go | 6 ++++-- cmd/testnet.go | 4 ++-- server/export_state.go | 2 +- server/grpc/auth/grpc_query.go | 6 +++--- server/start.go | 9 +++++---- server/start_test.go | 18 +++++++++--------- server/val_node_key.go | 7 ++++--- tests/crosschain_suite.go | 2 +- tests/erc20_test.go | 8 ++++---- tests/precompile_test.go | 4 ++-- tests/suite.go | 2 +- tests/upgrade_time_calc_test.go | 2 +- testutil/helpers/key.go | 10 +++++----- testutil/helpers/test_helpers.go | 2 +- x/crosschain/keeper/abci.go | 2 +- x/crosschain/keeper/abci_test.go | 2 +- x/crosschain/keeper/bridge_token.go | 4 ++-- x/crosschain/keeper/grpc_query.go | 8 ++++---- x/crosschain/keeper/keeper.go | 12 ++++++------ x/crosschain/keeper/keeper_test.go | 3 +-- x/crosschain/keeper/msg_server_test.go | 2 +- x/crosschain/keeper/oracle_set.go | 4 ++-- x/crosschain/keeper/oracle_set_test.go | 4 ++-- x/crosschain/types/msg_validate.go | 2 +- x/crosschain/types/types.go | 6 +++--- x/erc20/keeper/msg_server.go | 4 ++-- x/evm/keeper/genesis.go | 2 +- x/gov/client/cli/query.go | 4 ---- x/gov/types/params.go | 6 +++--- x/gravity/types/msgs.go | 2 +- x/migrate/client/cli/tx.go | 4 ++-- x/migrate/keeper/distr_staking_test.go | 2 +- x/migrate/keeper/gov.go | 2 +- x/migrate/keeper/keeper.go | 4 ++-- x/staking/client/cli/tx.go | 2 +- x/tron/types/msg_validate.go | 2 +- 52 files changed, 130 insertions(+), 122 deletions(-) diff --git a/.github/workflows/lint_golang.yml b/.github/workflows/lint_golang.yml index 1037d511d..99381116e 100644 --- a/.github/workflows/lint_golang.yml +++ b/.github/workflows/lint_golang.yml @@ -4,17 +4,17 @@ on: push: tags: - v* - branches: - - main paths: - '**.go' - 'go.mod' - 'go.sum' + - '.golangci.yml' pull_request: paths: - '**.go' - 'go.mod' - 'go.sum' + - '.golangci.yml' permissions: contents: read @@ -34,5 +34,5 @@ jobs: go-version: 1.21 - uses: golangci/golangci-lint-action@v3 with: - version: v1.54.2 + version: v1.55.2 args: --timeout 10m diff --git a/.golangci.yml b/.golangci.yml index 85a30786f..4c649079d 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -8,8 +8,8 @@ run: tests: true # Define the Go version limit. - # Mainly related to generics support since go1.19. - # Default: use Go version from the go.mod file, fallback on the env var `GOVERSION`, fallback on 1.19 + # Mainly related to generics support since go1.21. + # Default: use Go version from the go.mod file, fallback on the env var `GOVERSION`, fallback on 1.21 go: '1.21' linters: @@ -19,6 +19,9 @@ linters: - unparam - stylecheck - gocyclo + - errorlint + - prealloc + - gocritic - gci - dogsled - gosec @@ -29,6 +32,8 @@ linters-settings: checks: ["all", "-ST1003"] gocyclo: min-complexity: 15 + gocritic: + disabled-checks: ["assignOp", "ifElseChain", "appendAssign"] gci: custom-order: true sections: diff --git a/Makefile b/Makefile index 177fd4e0d..036dbe7e8 100644 --- a/Makefile +++ b/Makefile @@ -132,23 +132,28 @@ run-local: install ### Linting ### ############################################################################### -golangci_lint_cmd=golangci-lint -golangci_version=v1.54.2 +golangci_version=v1.55.2 lint-install: @echo "--> Installing golangci-lint $(golangci_version)" - go install github.com/golangci/golangci-lint/cmd/golangci-lint@$(golangci_version) + @if golangci-lint version --format json | jq .version | grep -q $(golangci_version); then \ + echo "golangci-lint $(golangci_version) is already installed"; \ + else \ + echo "Installing golangci-lint $(golangci_version)"; \ + go install github.com/golangci/golangci-lint/cmd/golangci-lint@$(golangci_version); \ + fi -lint: +lint: lint-install echo "--> Running linter" $(MAKE) lint-install - $(golangci_lint_cmd) run --build-tags=$(GO_BUILD) --fix --out-format=tab - @if [ $$(find . -name '*.go' -type f | xargs grep 'nolint\|#nosec' | wc -l) -ne 42 ]; then \ + @golangci-lint run --build-tags=$(GO_BUILD) --out-format=tab + @if [ $$(find . -name '*.go' -type f | xargs grep 'nolint\|#nosec' | wc -l) -ne 40 ]; then \ echo "--> increase or decrease nolint, please recheck them"; \ echo "--> list nolint: \`find . -name '*.go' -type f | xargs grep 'nolint\|#nosec'\`"; exit 1;\ fi -format: lint +format: lint-install + @golangci-lint run --build-tags=$(GO_BUILD) --out-format=tab --fix lint-shell: # install shellcheck > https://github.com/koalaman/shellcheck diff --git a/ante/ante_test.go b/ante/ante_test.go index 0990c034f..cee678cb4 100644 --- a/ante/ante_test.go +++ b/ante/ante_test.go @@ -1027,7 +1027,7 @@ func (suite *AnteTestSuite) CreateTestTxBuilder(msg *evmtypes.MsgEthereumTx, pri func (suite *AnteTestSuite) CreateEmptyTestTx(txBuilder client.TxBuilder, privs []cryptotypes.PrivKey, accNums []uint64, accSeqs []uint64) (authsigning.Tx, error) { cliCtx := NewClientCtx() signMode := cliCtx.TxConfig.SignModeHandler().DefaultMode() - var sigsV2 []signing.SignatureV2 + sigsV2 := make([]signing.SignatureV2, 0, len(privs)) for i, priv := range privs { sigV2 := signing.SignatureV2{ PubKey: priv.PubKey(), diff --git a/ante/fees.go b/ante/fees.go index e3bb0d025..bd5541fc0 100644 --- a/ante/fees.go +++ b/ante/fees.go @@ -32,7 +32,7 @@ type DeductFeeDecorator struct { MaxBypassMinFeeMsgGasUsage uint64 } -func NewDeductFeeDecorator(ak AccountKeeper, bk types.BankKeeper, fk FeegrantKeeper, tfc ante.TxFeeChecker, bypassMsgTypes []string, MaxBypassMinFeeMsgGasUsage uint64) DeductFeeDecorator { +func NewDeductFeeDecorator(ak AccountKeeper, bk types.BankKeeper, fk FeegrantKeeper, tfc ante.TxFeeChecker, bypassMsgTypes []string, maxBypassMinFeeMsgGasUsage uint64) DeductFeeDecorator { if tfc == nil { tfc = checkTxFeeWithValidatorMinGasPrices } @@ -43,7 +43,7 @@ func NewDeductFeeDecorator(ak AccountKeeper, bk types.BankKeeper, fk FeegrantKee feegrantKeeper: fk, txFeeChecker: tfc, BypassMinFeeMsgTypes: bypassMsgTypes, - MaxBypassMinFeeMsgGasUsage: MaxBypassMinFeeMsgGasUsage, + MaxBypassMinFeeMsgGasUsage: maxBypassMinFeeMsgGasUsage, } } diff --git a/app/app.go b/app/app.go index 2f26884d8..f1105f5a2 100644 --- a/app/app.go +++ b/app/app.go @@ -163,7 +163,7 @@ func New( } if err := anteOptions.Validate(); err != nil { - panic(fmt.Errorf("failed to ante options validate: %s", err)) + panic(fmt.Errorf("failed to ante options validate: %w", err)) } myApp.SetAnteHandler(fxante.NewAnteHandler(anteOptions)) diff --git a/client/cli/block_result.go b/client/cli/block_result.go index 682ccca1e..77a1bd823 100644 --- a/client/cli/block_result.go +++ b/client/cli/block_result.go @@ -65,21 +65,21 @@ func ParseBlockResults(cdc codec.JSONCodec, blockResults *coretypes.ResultBlockR if err != nil { return nil, err } - var beginBlockEvents []map[string]interface{} + beginBlockEvents := make([]map[string]interface{}, 0, len(blockResults.BeginBlockEvents)) for _, event := range blockResults.BeginBlockEvents { beginBlockEvents = append(beginBlockEvents, map[string]interface{}{ "type": event.Type, "attributes": AttributesToMap(event.Attributes), }) } - var endBlockEvents []map[string]interface{} + endBlockEvents := make([]map[string]interface{}, 0, len(blockResults.EndBlockEvents)) for _, event := range blockResults.EndBlockEvents { endBlockEvents = append(endBlockEvents, map[string]interface{}{ "type": event.Type, "attributes": AttributesToMap(event.Attributes), }) } - var txsResults []map[string]interface{} + txsResults := make([]map[string]interface{}, 0, len(blockResults.TxsResults)) for _, txResult := range blockResults.TxsResults { txsResults = append(txsResults, TxResultToMap(cdc, txResult)) } @@ -106,7 +106,7 @@ func TxResponseToMap(cdc codec.JSONCodec, txResponse *sdk.TxResponse) map[string if txResponse == nil { return map[string]interface{}{} } - var txResultEvents []map[string]interface{} + txResultEvents := make([]map[string]interface{}, 0, len(txResponse.Events)) for _, event := range txResponse.Events { txResultEvents = append(txResultEvents, map[string]interface{}{ "type": event.Type, @@ -153,7 +153,7 @@ func TxResultToMap(cdc codec.JSONCodec, txResult *types.ResponseDeliverTx) map[s if txResult == nil { return map[string]interface{}{} } - var txResultEvents []map[string]interface{} + txResultEvents := make([]map[string]interface{}, 0, len(txResult.Events)) for _, event := range txResult.Events { txResultEvents = append(txResultEvents, map[string]interface{}{ "type": event.Type, @@ -183,7 +183,7 @@ func TxResultToMap(cdc codec.JSONCodec, txResult *types.ResponseDeliverTx) map[s } func AttributesToMap(attrs []types.EventAttribute) []map[string]interface{} { - var attributes []map[string]interface{} + attributes := make([]map[string]interface{}, 0, len(attrs)) for _, attribute := range attrs { attributes = append(attributes, map[string]interface{}{ "index": attribute.Index, diff --git a/client/cli/debug.go b/client/cli/debug.go index 9819f2d2b..43c946092 100644 --- a/client/cli/debug.go +++ b/client/cli/debug.go @@ -275,7 +275,7 @@ $ %s debug pubkey '{"@type":"/cosmos.crypto.ed25519.PubKey","key":"eKlxn6Xoe9LNm RunE: func(cmd *cobra.Command, args []string) (err error) { clientCtx := client.GetClientContextFromCmd(cmd) var pubkey cryptotypes.PubKey - if len(args) <= 0 { + if len(args) == 0 { serverCtx := server.GetServerContextFromCmd(cmd) serverCfg := serverCtx.Config privValidator := privval.LoadFilePV(serverCfg.PrivValidatorKeyFile(), serverCfg.PrivValidatorStateFile()) diff --git a/client/cli/keys/import_export.go b/client/cli/keys/import_export.go index c16f9cc70..4bf9e2f9e 100644 --- a/client/cli/keys/import_export.go +++ b/client/cli/keys/import_export.go @@ -155,11 +155,12 @@ func ImportKeyCommand() *cobra.Command { } algoStr, _ := cmd.Flags().GetString(flags.FlagKeyAlgorithm) var armoPrivKey string - if hd.PubKeyType(algoStr) == hd.Secp256k1Type { + switch hd.PubKeyType(algoStr) { + case hd.Secp256k1Type: armoPrivKey = crypto.EncryptArmorPrivKey(&secp256k1.PrivKey{Key: ethcrypto.FromECDSA(priv)}, "", string(hd.Secp256k1Type)) - } else if hd.PubKeyType(algoStr) == hd2.EthSecp256k1Type { + case hd2.EthSecp256k1Type: armoPrivKey = crypto.EncryptArmorPrivKey(ðsecp256k1.PrivKey{Key: ethcrypto.FromECDSA(priv)}, "", string(hd2.EthSecp256k1Type)) - } else { + default: return fmt.Errorf("provided algorithm %q is not supported", algoStr) } diff --git a/client/cli/keys/output.go b/client/cli/keys/output.go index 68e1935dd..1856e6ad5 100644 --- a/client/cli/keys/output.go +++ b/client/cli/keys/output.go @@ -78,7 +78,7 @@ func checksumHex(addr []byte) []byte { buf[i] -= 32 } } - return buf[:] + return buf } // MkConsKeyOutput create a KeyOutput in with "cons" Bech32 prefixes. diff --git a/client/cli/keys/show.go b/client/cli/keys/show.go index 21627175e..ec1595dca 100644 --- a/client/cli/keys/show.go +++ b/client/cli/keys/show.go @@ -64,14 +64,14 @@ func runShowCmd(cmd *cobra.Command, args []string) (err error) { if len(args) == 1 { k, err = fetchKey(clientCtx.Keyring, args[0]) if err != nil { - return fmt.Errorf("%s is not a valid name or address: %v", args[0], err) + return fmt.Errorf("%s is not a valid name or address: %w", args[0], err) } } else { pks := make([]cryptotypes.PubKey, len(args)) for i, keyref := range args { k, err := fetchKey(clientCtx.Keyring, keyref) if err != nil { - return fmt.Errorf("%s is not a valid name or address: %v", keyref, err) + return fmt.Errorf("%s is not a valid name or address: %w", keyref, err) } key, err := k.GetPubKey() if err != nil { diff --git a/client/eth_tx.go b/client/eth_tx.go index 091028bc0..6da3147cc 100644 --- a/client/eth_tx.go +++ b/client/eth_tx.go @@ -49,7 +49,7 @@ func BuildEthTransaction(ctx context.Context, cli *ethclient.Client, priKey cryp msg := ethereum.CallMsg{From: sender, To: to, GasPrice: gasPrice, GasTipCap: gasTipCap, GasFeeCap: gasFeeCap, Value: value, Data: data} gasLimit, err := cli.EstimateGas(ctx, msg) if err != nil { - return nil, fmt.Errorf("failed to estimate gas needed: %v", err) + return nil, fmt.Errorf("failed to estimate gas needed: %w", err) } gasLimit = gasLimit * 130 / 100 if value == nil { diff --git a/client/grpc/grpc_client.go b/client/grpc/grpc_client.go index db9bebe76..eb54c17a1 100644 --- a/client/grpc/grpc_client.go +++ b/client/grpc/grpc_client.go @@ -329,7 +329,7 @@ func (cli *Client) GetAddressPrefix() (string, error) { if err != nil { return "", err } - if len(response.GetValidators()) <= 0 { + if len(response.GetValidators()) == 0 { return "", errors.New("no found validator") } prefix, _, err := bech32.DecodeAndConvert(response.GetValidators()[0].GetAddress()) diff --git a/client/jsonrpc/json_rpc.go b/client/jsonrpc/json_rpc.go index 9744d591c..8eee27305 100644 --- a/client/jsonrpc/json_rpc.go +++ b/client/jsonrpc/json_rpc.go @@ -126,7 +126,7 @@ func (c *NodeRPC) GetAddressPrefix() (prefix string, err error) { if err = json.Unmarshal(appState[authtypes.ModuleName], &authGen); err != nil { return } - if len(authGen.Accounts) <= 0 { + if len(authGen.Accounts) == 0 { return sdk.Bech32MainPrefix, nil } c.addrPrefix, _, err = bech32.Decode(authGen.Accounts[0].Address) @@ -341,7 +341,7 @@ func (c *NodeRPC) UnconfirmedTxs(limit int) (*ctypes.ResultUnconfirmedTxs, error if err != nil { return nil, errors.Wrap(err, "unconfirmed_txs") } - if len(result.Txs) <= 0 { + if len(result.Txs) == 0 { result.Txs = make([]types.Tx, 0) } return result, nil @@ -362,7 +362,7 @@ func (c *NodeRPC) NetInfo() (*ctypes.ResultNetInfo, error) { if err != nil { return nil, errors.Wrap(err, "NetInfo") } - if len(result.Peers) <= 0 { + if len(result.Peers) == 0 { result.Peers = make([]ctypes.Peer, 0) } return result, nil @@ -374,7 +374,7 @@ func (c *NodeRPC) DumpConsensusState() (*ctypes.ResultDumpConsensusState, error) if err != nil { return nil, errors.Wrap(err, "DumpConsensusState") } - if len(result.Peers) <= 0 { + if len(result.Peers) == 0 { result.Peers = make([]ctypes.PeerStateInfo, 0) } return result, nil diff --git a/cmd/config.go b/cmd/config.go index 4a5f7d715..219d45a01 100644 --- a/cmd/config.go +++ b/cmd/config.go @@ -93,9 +93,7 @@ func preUpgradeCmd() *cobra.Command { Use: "pre-upgrade", Short: "Called by cosmovisor, before migrations upgrade", Args: cobra.NoArgs, - RunE: func(cmd *cobra.Command, args []string) error { - return updateConfig(cmd, args) - }, + RunE: updateConfig, } return cmd } diff --git a/cmd/doctor.go b/cmd/doctor.go index 4a147b5af..fe3085632 100644 --- a/cmd/doctor.go +++ b/cmd/doctor.go @@ -185,7 +185,7 @@ func getBlockchain(cliCtx client.Context, serverCtx *sdkserver.Context) (blockch if len(grpcAddr) > 0 { return nil, err } - if len(serverCtx.Config.RootDir) <= 0 { + if len(serverCtx.Config.RootDir) == 0 { fmt.Printf("%sWarning: Not found root dir\n", SPACE) return nil, nil } diff --git a/cmd/fxcored/main.go b/cmd/fxcored/main.go index 375ddd78a..164d1d9a4 100644 --- a/cmd/fxcored/main.go +++ b/cmd/fxcored/main.go @@ -1,6 +1,7 @@ package main import ( + "errors" "os" "github.com/cosmos/cosmos-sdk/server" @@ -12,8 +13,9 @@ import ( func main() { if err := svrcmd.Execute(cmd.NewRootCmd(), fxtypes.EnvPrefix, fxtypes.GetDefaultNodeHome()); err != nil { - switch e := err.(type) { - case server.ErrorCode: + var e server.ErrorCode + switch { + case errors.As(err, &e): os.Exit(e.Code) default: os.Exit(1) diff --git a/cmd/testnet.go b/cmd/testnet.go index 83dea16a0..39d8173d9 100644 --- a/cmd/testnet.go +++ b/cmd/testnet.go @@ -52,7 +52,7 @@ Example: cmd.Println(fmt.Sprintf("Successfully initialized %d node directories", networkConfig.NumValidators)) dockerImage, _ := cmd.Flags().GetString(flagDockerImage) - if len(dockerImage) <= 0 { + if len(dockerImage) == 0 { return nil } if err = generateDockerComposeYml(validators, outputDir, dockerImage); err != nil { @@ -86,7 +86,7 @@ func generateDockerComposeYml(validators []*network.Validator, outputDir, docker data := map[string]interface{}{ "Subnet": fmt.Sprintf("%s/16", getSubnet(IPAddress)), } - var persistentPeers []string + persistentPeers := make([]string, 0, len(validators)) services := make([]map[string]interface{}, 0) for i, validator := range validators { ip, err := getNextIP(i, IPAddress) diff --git a/server/export_state.go b/server/export_state.go index 1b6e852a5..ddba0ce31 100644 --- a/server/export_state.go +++ b/server/export_state.go @@ -75,7 +75,7 @@ func ExportSateCmd(appExporter types.AppExporter, defaultNodeHome string) *cobra exported, err := appExporter(serverCtx.Logger, db, traceWriter, height, forZeroHeight, jailAllowedAddrs, serverCtx.Viper) if err != nil { - return fmt.Errorf("error exporting state: %v", err) + return fmt.Errorf("error exporting state: %w", err) } doc, err := tmtypes.GenesisDocFromFile(serverCtx.Config.GenesisFile()) diff --git a/server/grpc/auth/grpc_query.go b/server/grpc/auth/grpc_query.go index fcdf8bd4b..9f17ae75c 100644 --- a/server/grpc/auth/grpc_query.go +++ b/server/grpc/auth/grpc_query.go @@ -24,7 +24,7 @@ func (Querier) ConvertAddress(_ context.Context, req *ConvertAddressRequest) (*C if len(req.Address) == 0 { return nil, status.Error(codes.InvalidArgument, "address cannot be empty") } - if len(req.Prefix) <= 0 { + if len(req.Prefix) == 0 { req.Prefix = fxtypes.AddressPrefix } address, err := ConvertBech32Prefix(req.Address, req.Prefix) @@ -38,12 +38,12 @@ func (Querier) ConvertAddress(_ context.Context, req *ConvertAddressRequest) (*C func ConvertBech32Prefix(address, prefix string) (string, error) { _, bz, err := bech32.DecodeAndConvert(address) if err != nil { - return "", fmt.Errorf("cannot decode %s address: %s", address, err) + return "", fmt.Errorf("cannot decode %s address: %w", address, err) } convertedAddress, err := bech32.ConvertAndEncode(prefix, bz) if err != nil { - return "", fmt.Errorf("cannot convert %s address: %s", address, err) + return "", fmt.Errorf("cannot convert %s address: %w", address, err) } return convertedAddress, nil } diff --git a/server/start.go b/server/start.go index c3a83a134..9bcf72a41 100644 --- a/server/start.go +++ b/server/start.go @@ -125,10 +125,10 @@ which accepts a path for the resulting pprof file. serverCtx.Logger = NewFxZeroLogWrapper(zeroLog, filterLogTypes) clientCtx := client.GetClientContextFromCmd(cmd) - if len(clientCtx.ChainID) <= 0 { + if len(clientCtx.ChainID) == 0 { clientCtx.ChainID = fxtypes.ChainId() } - if len(clientCtx.HomeDir) <= 0 { + if len(clientCtx.HomeDir) == 0 { clientCtx.HomeDir = serverCtx.Config.RootDir } @@ -253,7 +253,7 @@ func startStandAlone(svrCtx *server.Context, appCreator types.AppCreator) error svr, err := abciserver.NewServer(addr, transport, app) if err != nil { - return fmt.Errorf("error creating listener: %v", err) + return fmt.Errorf("error creating listener: %w", err) } svr.SetLogger(svrCtx.Logger.With("module", "abci-server")) @@ -609,7 +609,8 @@ func wrapCPUProfile(ctx *server.Context, callback func() error) error { err := callback() time.Sleep(100 * time.Millisecond) - errCode, ok := err.(server.ErrorCode) + var errCode server.ErrorCode + ok := errors.As(err, &errCode) if !ok { return err } diff --git a/server/start_test.go b/server/start_test.go index 9d46889bd..941df71eb 100644 --- a/server/start_test.go +++ b/server/start_test.go @@ -49,7 +49,7 @@ func TestInterceptConfigsPreRunHandlerCreatesConfigFilesWhenMissing(t *testing.T serverCtx := &server.Context{} ctx := context.WithValue(context.Background(), server.ServerContextKey, serverCtx) - if err := cmd.ExecuteContext(ctx); err != errCancelledInPreRun { + if err := cmd.ExecuteContext(ctx); !errors.Is(err, errCancelledInPreRun) { t.Fatalf("function failed with [%T] %v", err, err) } @@ -126,7 +126,7 @@ func TestInterceptConfigsPreRunHandlerReadsConfigToml(t *testing.T) { serverCtx := &server.Context{} ctx := context.WithValue(context.Background(), server.ServerContextKey, serverCtx) - if err := cmd.ExecuteContext(ctx); err != errCancelledInPreRun { + if err := cmd.ExecuteContext(ctx); !errors.Is(err, errCancelledInPreRun) { t.Fatalf("function failed with [%T] %v", err, err) } @@ -163,7 +163,7 @@ func TestInterceptConfigsPreRunHandlerReadsAppToml(t *testing.T) { serverCtx := &server.Context{} ctx := context.WithValue(context.Background(), server.ServerContextKey, serverCtx) - if err := cmd.ExecuteContext(ctx); err != errCancelledInPreRun { + if err := cmd.ExecuteContext(ctx); !errors.Is(err, errCancelledInPreRun) { t.Fatalf("function failed with [%T] %v", err, err) } @@ -191,7 +191,7 @@ func TestInterceptConfigsPreRunHandlerReadsFlags(t *testing.T) { serverCtx := &server.Context{} ctx := context.WithValue(context.Background(), server.ServerContextKey, serverCtx) - if err := cmd.ExecuteContext(ctx); err != errCancelledInPreRun { + if err := cmd.ExecuteContext(ctx); !errors.Is(err, errCancelledInPreRun) { t.Fatalf("function failed with [%T] %v", err, err) } @@ -226,7 +226,7 @@ func TestInterceptConfigsPreRunHandlerReadsEnvVars(t *testing.T) { serverCtx := &server.Context{} ctx := context.WithValue(context.Background(), server.ServerContextKey, serverCtx) - if err := cmd.ExecuteContext(ctx); err != errCancelledInPreRun { + if err := cmd.ExecuteContext(ctx); !errors.Is(err, errCancelledInPreRun) { t.Fatalf("function failed with [%T] %v", err, err) } @@ -330,7 +330,7 @@ func TestInterceptConfigsPreRunHandlerPrecedenceFlag(t *testing.T) { serverCtx := &server.Context{} ctx := context.WithValue(context.Background(), server.ServerContextKey, serverCtx) - if err := testCommon.cmd.ExecuteContext(ctx); err != errCancelledInPreRun { + if err := testCommon.cmd.ExecuteContext(ctx); !errors.Is(err, errCancelledInPreRun) { t.Fatalf("function failed with [%T] %v", err, err) } @@ -346,7 +346,7 @@ func TestInterceptConfigsPreRunHandlerPrecedenceEnvVar(t *testing.T) { serverCtx := &server.Context{} ctx := context.WithValue(context.Background(), server.ServerContextKey, serverCtx) - if err := testCommon.cmd.ExecuteContext(ctx); err != errCancelledInPreRun { + if err := testCommon.cmd.ExecuteContext(ctx); !errors.Is(err, errCancelledInPreRun) { t.Fatalf("function failed with [%T] %v", err, err) } @@ -362,7 +362,7 @@ func TestInterceptConfigsPreRunHandlerPrecedenceConfigFile(t *testing.T) { serverCtx := &server.Context{} ctx := context.WithValue(context.Background(), server.ServerContextKey, serverCtx) - if err := testCommon.cmd.ExecuteContext(ctx); err != errCancelledInPreRun { + if err := testCommon.cmd.ExecuteContext(ctx); !errors.Is(err, errCancelledInPreRun) { t.Fatalf("function failed with [%T] %v", err, err) } @@ -378,7 +378,7 @@ func TestInterceptConfigsPreRunHandlerPrecedenceConfigDefault(t *testing.T) { serverCtx := &server.Context{} ctx := context.WithValue(context.Background(), server.ServerContextKey, serverCtx) - if err := testCommon.cmd.ExecuteContext(ctx); err != errCancelledInPreRun { + if err := testCommon.cmd.ExecuteContext(ctx); !errors.Is(err, errCancelledInPreRun) { t.Fatalf("function failed with [%T] %v", err, err) } diff --git a/server/val_node_key.go b/server/val_node_key.go index 4a17be8e5..d14f8c120 100644 --- a/server/val_node_key.go +++ b/server/val_node_key.go @@ -69,16 +69,17 @@ func UnsafeRestPrivValidatorCmd() *cobra.Command { return err } keyType := serverCtx.Viper.GetString(flagKeyType) - if keyType == "ed25519" { + switch keyType { + case "ed25519": _ = os.Remove(pvKeyFile) valPrivKey := privval.NewFilePV(ed25519.GenPrivKeyFromSecret([]byte(secret)), pvKeyFile, pvStateFile) valPrivKey.Save() - } else if keyType == "secp256k1" { + case "secp256k1": _ = os.Remove(pvKeyFile) pk := secp256k1.GenPrivKeySecp256k1([]byte(secret)) valPrivKey := privval.NewFilePV(pk, pvKeyFile, pvStateFile) valPrivKey.Save() - } else { + default: return fmt.Errorf("invalid key type: %s", keyType) } return nil diff --git a/tests/crosschain_suite.go b/tests/crosschain_suite.go index 3e697af1f..c5e980e10 100644 --- a/tests/crosschain_suite.go +++ b/tests/crosschain_suite.go @@ -305,7 +305,7 @@ func (suite *CrosschainTestSuite) SendToTxClaimWithReceiver(receiver sdk.AccAddr Token: token, }) suite.NoError(err) - if bridgeToken.Denom == fxtypes.DefaultDenom && len(targetIbc) <= 0 { + if bridgeToken.Denom == fxtypes.DefaultDenom && len(targetIbc) == 0 { balances := suite.QueryBalances(receiver) suite.True(balances.IsAllGTE(sdk.NewCoins(sdk.NewCoin(bridgeToken.Denom, amount)))) } diff --git a/tests/erc20_test.go b/tests/erc20_test.go index 7b2bf4db1..2ba16de42 100644 --- a/tests/erc20_test.go +++ b/tests/erc20_test.go @@ -22,8 +22,8 @@ func (suite *IntegrationTest) ERC20TokenOriginTest() { decimals := 18 metadata := fxtypes.GetCrossChainMetadataManyToOne("test token", helpers.NewRandSymbol(), uint32(decimals)) - var aliases []string - var bridgeTokens []crosschaintypes.BridgeToken + aliases := make([]string, 0, len(suite.crosschain)) + bridgeTokens := make([]crosschaintypes.BridgeToken, 0, len(suite.crosschain)) for _, chain := range suite.crosschain { denom, bridgeToken := chain.AddBridgeToken(metadata) aliases = append(aliases, denom) @@ -129,8 +129,8 @@ func (suite *IntegrationTest) ERC20TokenERC20Test() { suite.True(suite.evm.CheckBalanceOf(proxy, common.BytesToAddress(suite.erc20.privKey.PubKey().Address().Bytes()), new(big.Int).Mul(big.NewInt(10000), big.NewInt(1e18)))) metadataBrdige := fxtypes.GetCrossChainMetadataManyToOne("test token", helpers.NewRandSymbol(), uint32(18)) - var aliases []string - var bridgeTokens []crosschaintypes.BridgeToken + aliases := make([]string, 0, len(suite.crosschain)) + bridgeTokens := make([]crosschaintypes.BridgeToken, 0, len(suite.crosschain)) for _, chain := range suite.crosschain { denom, bridgeToken := chain.AddBridgeToken(metadataBrdige) aliases = append(aliases, denom) diff --git a/tests/precompile_test.go b/tests/precompile_test.go index 9fbd21def..414b602ce 100644 --- a/tests/precompile_test.go +++ b/tests/precompile_test.go @@ -161,8 +161,8 @@ func (suite *IntegrationTest) PrecompileCrossChainConvertedDenomTest() { func (suite *IntegrationTest) precompileInit() (*erc20types.TokenPair, []crosschaintypes.BridgeToken) { metadata := fxtypes.GetCrossChainMetadataManyToOne("test token", helpers.NewRandSymbol(), uint32(18)) - var aliases []string - var bridgeTokens []crosschaintypes.BridgeToken + aliases := make([]string, 0, len(suite.crosschain)) + bridgeTokens := make([]crosschaintypes.BridgeToken, 0, len(suite.crosschain)) for _, chain := range suite.crosschain { denom, bridgeToken := chain.AddBridgeToken(metadata) aliases = append(aliases, denom) diff --git a/tests/suite.go b/tests/suite.go index 36676ed60..7fff317a3 100644 --- a/tests/suite.go +++ b/tests/suite.go @@ -176,7 +176,7 @@ func (suite *TestSuite) GetAllValPrivKeys() []cryptotypes.PrivKey { if suite.IsUseLocalNetwork() { return []cryptotypes.PrivKey{suite.GetFirstValPrivKey()} } - var privKeys []cryptotypes.PrivKey + privKeys := make([]cryptotypes.PrivKey, 0, len(suite.network.Config.Mnemonics)) for _, mnemonics := range suite.network.Config.Mnemonics { privKey, err := helpers.PrivKeyFromMnemonic(mnemonics, hd.Secp256k1Type, 0, 0) suite.NoError(err) diff --git a/tests/upgrade_time_calc_test.go b/tests/upgrade_time_calc_test.go index 4e3d49526..05bbb7c1c 100644 --- a/tests/upgrade_time_calc_test.go +++ b/tests/upgrade_time_calc_test.go @@ -21,7 +21,7 @@ func TestCalculateUpgradeHeight(t *testing.T) { // example: UPGRADE_TIME=2023-08-10T08:00:00Z upgradeTime := os.Getenv("UPGRADE_TIME") - if len(upgradeTime) <= 0 { + if len(upgradeTime) == 0 { upgradeTime = time.Now().AddDate(0, 0, 14).Format(time.RFC3339) } expectTime, err := time.Parse(time.RFC3339, upgradeTime) diff --git a/testutil/helpers/key.go b/testutil/helpers/key.go index 16f99d239..179b3b510 100644 --- a/testutil/helpers/key.go +++ b/testutil/helpers/key.go @@ -3,7 +3,6 @@ package helpers import ( "crypto/ecdsa" "encoding/hex" - "fmt" errorsmod "cosmossdk.io/errors" "github.com/cosmos/cosmos-sdk/crypto/hd" @@ -34,12 +33,13 @@ func NewMnemonic() string { func PrivKeyFromMnemonic(mnemonic string, algo hd.PubKeyType, account, index uint32) (cryptotypes.PrivKey, error) { var hdPath *hd.BIP44Params - if algo == hd.Secp256k1Type { + switch algo { + case hd.Secp256k1Type: hdPath = hd.CreateHDPath(118, account, index) - } else if algo == hd2.EthSecp256k1Type { + case hd2.EthSecp256k1Type: hdPath = hd.CreateHDPath(60, account, index) - } else { - return nil, fmt.Errorf("invalid algo") + default: + return nil, errortypes.ErrInvalidPubKey } signAlgo, err := keyring.NewSigningAlgoFromString(string(algo), hd2.SupportedAlgorithms) if err != nil { diff --git a/testutil/helpers/test_helpers.go b/testutil/helpers/test_helpers.go index 08886fa5d..66b1c4d46 100644 --- a/testutil/helpers/test_helpers.go +++ b/testutil/helpers/test_helpers.go @@ -323,7 +323,7 @@ func CheckBalance(t *testing.T, myApp *app.App, addr sdk.AccAddress, balances sd func SignCheckDeliver(t *testing.T, txCfg client.TxConfig, app *baseapp.BaseApp, header tmproto.Header, msgs []sdk.Msg, expSimPass, expPass bool, priv ...cryptotypes.PrivKey, ) (sdk.GasInfo, *sdk.Result, error) { - var accNums, accSeqs []uint64 + accNums, accSeqs := make([]uint64, 0, len(priv)), make([]uint64, 0, len(priv)) for _, key := range priv { response := app.Query(abci.RequestQuery{ Data: legacy.Cdc.MustMarshalJSON(authtypes.QueryAccountRequest{ diff --git a/x/crosschain/keeper/abci.go b/x/crosschain/keeper/abci.go index 64ea5e32c..d3be12f09 100644 --- a/x/crosschain/keeper/abci.go +++ b/x/crosschain/keeper/abci.go @@ -42,7 +42,7 @@ func (k Keeper) isNeedOracleSetRequest(ctx sdk.Context) (*types.OracleSet, bool) powerDiff := fmt.Sprintf("%.8f", types.BridgeValidators(currentOracleSet.Members).PowerDiff(latestOracleSet.Members)) powerDiffDec, err := sdk.NewDecFromStr(powerDiff) if err != nil { - panic(fmt.Errorf("covert power diff to dec err, powerDiff: %v, err: %v", powerDiff, err)) + panic(fmt.Errorf("covert power diff to dec err, powerDiff: %v, err: %w", powerDiff, err)) } oracleSetUpdatePowerChangePercent := k.GetOracleSetUpdatePowerChangePercent(ctx) diff --git a/x/crosschain/keeper/abci_test.go b/x/crosschain/keeper/abci_test.go index a0e31b48a..35f5e7cc7 100644 --- a/x/crosschain/keeper/abci_test.go +++ b/x/crosschain/keeper/abci_test.go @@ -441,7 +441,7 @@ func (suite *KeeperTestSuite) TestOracleDelete() { require.True(suite.T(), sdkmath.NewInt(10*1e3).MulRaw(1e18).Equal(oracleData.DelegateAmount)) - var newOracleAddressList []string + newOracleAddressList := make([]string, 0, len(suite.oracleAddrs)-1) for _, address := range suite.oracleAddrs[1:] { newOracleAddressList = append(newOracleAddressList, address.String()) } diff --git a/x/crosschain/keeper/bridge_token.go b/x/crosschain/keeper/bridge_token.go index 39de637d5..96aee7ba8 100644 --- a/x/crosschain/keeper/bridge_token.go +++ b/x/crosschain/keeper/bridge_token.go @@ -12,7 +12,7 @@ import ( func (k Keeper) GetBridgeTokenDenom(ctx sdk.Context, tokenContract string) *types.BridgeToken { store := ctx.KVStore(k.storeKey) data := store.Get(types.GetDenomToTokenKey(tokenContract)) - if len(data) <= 0 { + if len(data) == 0 { return nil } return &types.BridgeToken{ @@ -24,7 +24,7 @@ func (k Keeper) GetBridgeTokenDenom(ctx sdk.Context, tokenContract string) *type func (k Keeper) GetDenomBridgeToken(ctx sdk.Context, denom string) *types.BridgeToken { store := ctx.KVStore(k.storeKey) data := store.Get(types.GetTokenToDenomKey(denom)) - if len(data) <= 0 { + if len(data) == 0 { return nil } return &types.BridgeToken{ diff --git a/x/crosschain/keeper/grpc_query.go b/x/crosschain/keeper/grpc_query.go index e7fae2e8b..08a1f526a 100644 --- a/x/crosschain/keeper/grpc_query.go +++ b/x/crosschain/keeper/grpc_query.go @@ -230,7 +230,7 @@ func (k Keeper) LastEventNonceByAddr(c context.Context, req *types.QueryLastEven } func (k Keeper) DenomToToken(c context.Context, req *types.QueryDenomToTokenRequest) (*types.QueryDenomToTokenResponse, error) { - if len(req.GetDenom()) <= 0 { + if len(req.GetDenom()) == 0 { return nil, status.Error(codes.InvalidArgument, "denom") } @@ -378,7 +378,7 @@ func (k Keeper) BridgeTokens(c context.Context, _ *types.QueryBridgeTokensReques } func (k Keeper) BridgeCoinByDenom(c context.Context, req *types.QueryBridgeCoinByDenomRequest) (*types.QueryBridgeCoinByDenomResponse, error) { - if len(req.GetDenom()) <= 0 { + if len(req.GetDenom()) == 0 { return nil, status.Error(codes.InvalidArgument, "denom") } ctx := sdk.UnwrapSDKContext(c) @@ -389,7 +389,7 @@ func (k Keeper) BridgeCoinByDenom(c context.Context, req *types.QueryBridgeCoinB bridgeCoinMetaData = metadata return true } - if len(metadata.GetDenomUnits()) <= 0 { + if len(metadata.GetDenomUnits()) == 0 { return false } for _, alias := range metadata.GetDenomUnits()[0].GetAliases() { @@ -400,7 +400,7 @@ func (k Keeper) BridgeCoinByDenom(c context.Context, req *types.QueryBridgeCoinB } return false }) - if len(bridgeCoinMetaData.GetBase()) <= 0 { + if len(bridgeCoinMetaData.GetBase()) == 0 { return nil, status.Error(codes.NotFound, "denom") } diff --git a/x/crosschain/keeper/keeper.go b/x/crosschain/keeper/keeper.go index 9ee0fb744..5b21f5d18 100644 --- a/x/crosschain/keeper/keeper.go +++ b/x/crosschain/keeper/keeper.go @@ -97,14 +97,14 @@ func (k Keeper) GetLastEventBlockHeightByOracle(ctx sdk.Context, oracleAddr sdk. return sdk.BigEndianToUint64(data) } -func (k Keeper) UpdateChainOracles(ctx sdk.Context, Oracles []string) error { - if len(Oracles) > types.MaxOracleSize { +func (k Keeper) UpdateChainOracles(ctx sdk.Context, oracles []string) error { + if len(oracles) > types.MaxOracleSize { return errorsmod.Wrapf(types.ErrInvalid, fmt.Sprintf("oracle length must be less than or equal: %d", types.MaxOracleSize)) } - newOracleMap := make(map[string]bool, len(Oracles)) - for _, oracle := range Oracles { + newOracleMap := make(map[string]bool, len(oracles)) + for _, oracle := range oracles { newOracleMap[oracle] = true } @@ -113,7 +113,7 @@ func (k Keeper) UpdateChainOracles(ctx sdk.Context, Oracles []string) error { allOracles := k.GetAllOracles(ctx, false) proposalOracle, _ := k.GetProposalOracle(ctx) - oldOracleMap := make(map[string]bool, len(Oracles)) + oldOracleMap := make(map[string]bool, len(oracles)) for _, oracle := range proposalOracle.Oracles { oldOracleMap[oracle] = true } @@ -144,7 +144,7 @@ func (k Keeper) UpdateChainOracles(ctx sdk.Context, Oracles []string) error { } // update proposal oracle - k.SetProposalOracle(ctx, &types.ProposalOracle{Oracles: Oracles}) + k.SetProposalOracle(ctx, &types.ProposalOracle{Oracles: oracles}) for _, unbondedOracle := range unbondedOracleList { if err := k.UnbondedOracleFromProposal(ctx, unbondedOracle); err != nil { diff --git a/x/crosschain/keeper/keeper_test.go b/x/crosschain/keeper/keeper_test.go index f7a0d7476..3c9778259 100644 --- a/x/crosschain/keeper/keeper_test.go +++ b/x/crosschain/keeper/keeper_test.go @@ -43,8 +43,7 @@ type KeeperTestSuite struct { } func TestKeeperTestSuite(t *testing.T) { - compile, err := regexp.Compile("^Test") - require.NoError(t, err) + compile := regexp.MustCompile("^Test") subModules := []string{ bsctypes.ModuleName, polygontypes.ModuleName, diff --git a/x/crosschain/keeper/msg_server_test.go b/x/crosschain/keeper/msg_server_test.go index 50a28fc5b..14d3f3b54 100644 --- a/x/crosschain/keeper/msg_server_test.go +++ b/x/crosschain/keeper/msg_server_test.go @@ -883,7 +883,7 @@ func (suite *KeeperTestSuite) TestClaimTest() { func (suite *KeeperTestSuite) TestRequestBatchBaseFee() { // 1. First sets up a valid validator totalPower := sdkmath.ZeroInt() - var delegateAmounts []sdkmath.Int + delegateAmounts := make([]sdkmath.Int, 0, len(suite.oracleAddrs)) for i, oracle := range suite.oracleAddrs { normalMsg := &types.MsgBondedOracle{ OracleAddress: oracle.String(), diff --git a/x/crosschain/keeper/oracle_set.go b/x/crosschain/keeper/oracle_set.go index cc8a1be66..758bd1c2a 100644 --- a/x/crosschain/keeper/oracle_set.go +++ b/x/crosschain/keeper/oracle_set.go @@ -25,7 +25,7 @@ import ( // implementations are involved. func (k Keeper) GetCurrentOracleSet(ctx sdk.Context) *types.OracleSet { allOracles := k.GetAllOracles(ctx, true) - var bridgeValidators []types.BridgeValidator + bridgeValidators := make([]types.BridgeValidator, 0, len(allOracles)) var totalPower uint64 for _, oracle := range allOracles { @@ -51,7 +51,7 @@ func (k Keeper) GetCurrentOracleSet(ctx sdk.Context) *types.OracleSet { // AddOracleSetRequest returns a new instance of the Gravity BridgeValidatorSet func (k Keeper) AddOracleSetRequest(ctx sdk.Context, currentOracleSet *types.OracleSet) { // if currentOracleSet member is empty, not store OracleSet. - if len(currentOracleSet.Members) <= 0 { + if len(currentOracleSet.Members) == 0 { return } k.StoreOracleSet(ctx, currentOracleSet) diff --git a/x/crosschain/keeper/oracle_set_test.go b/x/crosschain/keeper/oracle_set_test.go index 9e06029d3..36373a66c 100644 --- a/x/crosschain/keeper/oracle_set_test.go +++ b/x/crosschain/keeper/oracle_set_test.go @@ -124,7 +124,7 @@ func (suite *KeeperTestSuite) TestKeeper_IterateOracleSetConfirmByNonce() { } func (suite *KeeperTestSuite) TestKeeper_DeleteOracleSetConfirm() { - var member []types.BridgeValidator + member := make([]types.BridgeValidator, 0, len(suite.externalPris)) for i, external := range suite.externalPris { externalAddr := suite.PubKeyToExternalAddr(external.PublicKey) member = append(member, types.BridgeValidator{ @@ -173,7 +173,7 @@ func (suite *KeeperTestSuite) TestKeeper_DeleteOracleSetConfirm() { } func (suite *KeeperTestSuite) TestKeeper_IterateOracleSet() { - var member []types.BridgeValidator + member := make([]types.BridgeValidator, 0, len(suite.externalPris)) for i, external := range suite.externalPris { member = append(member, types.BridgeValidator{ Power: uint64(i), diff --git a/x/crosschain/types/msg_validate.go b/x/crosschain/types/msg_validate.go index 0c5c4bf4a..5ad8642f5 100644 --- a/x/crosschain/types/msg_validate.go +++ b/x/crosschain/types/msg_validate.go @@ -237,7 +237,7 @@ func (b MsgValidate) MsgRequestBatchValidate(m *MsgRequestBatch) (err error) { if _, err = sdk.AccAddressFromBech32(m.Sender); err != nil { return errortypes.ErrInvalidAddress.Wrapf("invalid sender address: %s", err) } - if len(m.Denom) <= 0 { + if len(m.Denom) == 0 { return errortypes.ErrInvalidRequest.Wrap("empty denom") } if m.MinimumFee.IsNil() || !m.MinimumFee.IsPositive() { diff --git a/x/crosschain/types/types.go b/x/crosschain/types/types.go index b0fec1c64..91c8ea243 100644 --- a/x/crosschain/types/types.go +++ b/x/crosschain/types/types.go @@ -59,7 +59,7 @@ func (b BridgeValidators) Len() int { func (b BridgeValidators) Less(i, j int) bool { if b[i].Power == b[j].Power { // Secondary sort on eth address in case powers are equal - return bytes.Compare([]byte(b[i].ExternalAddress)[:], []byte(b[j].ExternalAddress)[:]) == -1 + return bytes.Compare([]byte(b[i].ExternalAddress), []byte(b[j].ExternalAddress)) == -1 } return b[i].Power > b[j].Power } @@ -189,7 +189,7 @@ func (m *OracleSet) GetCheckpoint(gravityIDStr string) ([]byte, error) { } checkpointBytes := []uint8("checkpoint") var checkpoint [32]uint8 - copy(checkpoint[:], checkpointBytes[:]) + copy(checkpoint[:], checkpointBytes) memberAddresses := make([]gethcommon.Address, len(m.Members)) convertedPowers := make([]*big.Int, len(m.Members)) @@ -284,7 +284,7 @@ func (m *OutgoingTxBatch) GetCheckpoint(gravityIDString string) ([]byte, error) // Create the methodName argument which salts the signature methodNameBytes := []uint8("transactionBatch") var batchMethodName [32]uint8 - copy(batchMethodName[:], methodNameBytes[:]) + copy(batchMethodName[:], methodNameBytes) // Run through the elements of the batch and serialize them txAmounts := make([]*big.Int, len(m.Transactions)) diff --git a/x/erc20/keeper/msg_server.go b/x/erc20/keeper/msg_server.go index 5b8002990..baecc06d2 100644 --- a/x/erc20/keeper/msg_server.go +++ b/x/erc20/keeper/msg_server.go @@ -523,10 +523,10 @@ func (k Keeper) UpdateDenomAlias(c context.Context, req *types.MsgUpdateDenomAli func (k Keeper) ToTargetDenom(ctx sdk.Context, denom, base string, aliases []string, fxTarget fxtypes.FxTarget) string { // erc20 - if len(fxTarget.GetTarget()) <= 0 || fxTarget.GetTarget() == types.ModuleName { + if len(fxTarget.GetTarget()) == 0 || fxTarget.GetTarget() == types.ModuleName { return base } - if len(aliases) <= 0 { + if len(aliases) == 0 { return denom } diff --git a/x/evm/keeper/genesis.go b/x/evm/keeper/genesis.go index c26c3af94..e73e291d3 100644 --- a/x/evm/keeper/genesis.go +++ b/x/evm/keeper/genesis.go @@ -54,7 +54,7 @@ func (k *Keeper) InitGenesis(ctx sdk.Context, accountKeeper types.AccountKeeper, // init logic contract initContract := []fxtypes.Contract{fxtypes.GetFIP20(), fxtypes.GetWFX()} for _, contract := range initContract { - if len(contract.Code) <= 0 || contract.Address == common.HexToAddress(fxtypes.EmptyEvmAddress) { + if len(contract.Code) == 0 || contract.Address == common.HexToAddress(fxtypes.EmptyEvmAddress) { panic(fmt.Sprintf("invalid contract: %s", contract.Address.String())) } if err := k.CreateContractWithCode(ctx, contract.Address, contract.Code); err != nil { diff --git a/x/gov/client/cli/query.go b/x/gov/client/cli/query.go index 2e7c4de6a..e5ac0e7c1 100644 --- a/x/gov/client/cli/query.go +++ b/x/gov/client/cli/query.go @@ -42,8 +42,6 @@ func GetQueryCmd() *cobra.Command { } // GetCmdQueryParams implements the query params command. -// -//nolint:staticcheck // this function contains deprecated commands that we need. func GetCmdQueryParams() *cobra.Command { cmd := &cobra.Command{ Use: "params", @@ -85,8 +83,6 @@ $ %s query gov params } // GetCmdQueryEGFParams implements the query params command. -// -//nolint:staticcheck // this function contains deprecated commands that we need. func GetCmdQueryEGFParams() *cobra.Command { cmd := &cobra.Command{ Use: "egf-params", diff --git a/x/gov/types/params.go b/x/gov/types/params.go index 5c6839a86..642089b01 100644 --- a/x/gov/types/params.go +++ b/x/gov/types/params.go @@ -88,7 +88,7 @@ func Erc20ProposalParams(minDeposit []sdk.Coin, minInitialDeposit sdk.Coin, voti sdk.MsgTypeURL(&erc20types.MsgToggleTokenConversion{}), sdk.MsgTypeURL(&erc20types.MsgUpdateDenomAlias{}), } - var baseParams []*Params + baseParams := make([]*Params, 0, len(erc20MsgType)) for _, msgType := range erc20MsgType { baseParams = append(baseParams, NewParam(msgType, minDeposit, minInitialDeposit, votingPeriod, quorum, maxDepositPeriod, threshold, vetoThreshold)) @@ -101,7 +101,7 @@ func EVMProposalParams(minDeposit []sdk.Coin, minInitialDeposit sdk.Coin, voting evmMsgType := []string{ sdk.MsgTypeURL(&evmtypes.MsgCallContract{}), } - var baseParams []*Params + baseParams := make([]*Params, 0, len(evmMsgType)) for _, msgType := range evmMsgType { baseParams = append(baseParams, NewParam(msgType, minDeposit, minInitialDeposit, votingPeriod, quorum, maxDepositPeriod, threshold, vetoThreshold)) @@ -117,7 +117,7 @@ func EGFProposalParams(minDeposit []sdk.Coin, minInitialDeposit sdk.Coin, voting "/cosmos.distribution.v1beta1.CommunityPoolSpendProposal", // TODO v1 MsgServer MsgCommunityPoolSpend pending } - var baseParams []*Params + baseParams := make([]*Params, 0, len(EGFMsgType)) for _, msgType := range EGFMsgType { baseParams = append(baseParams, NewParam(msgType, minDeposit, minInitialDeposit, votingPeriod, quorum, maxDepositPeriod, threshold, vetoThreshold)) diff --git a/x/gravity/types/msgs.go b/x/gravity/types/msgs.go index 633deccd4..a7a7597a2 100644 --- a/x/gravity/types/msgs.go +++ b/x/gravity/types/msgs.go @@ -156,7 +156,7 @@ func (m *MsgRequestBatch) ValidateBasic() error { if _, err := sdk.AccAddressFromBech32(m.Sender); err != nil { return errortypes.ErrInvalidAddress.Wrapf("invalid sender address: %s", err) } - if len(m.Denom) <= 0 { + if len(m.Denom) == 0 { return errortypes.ErrInvalidRequest.Wrap("empty denom") } if m.MinimumFee.IsNil() || !m.MinimumFee.IsPositive() { diff --git a/x/migrate/client/cli/tx.go b/x/migrate/client/cli/tx.go index aa114070c..8dac41ee4 100644 --- a/x/migrate/client/cli/tx.go +++ b/x/migrate/client/cli/tx.go @@ -145,11 +145,11 @@ func getMigrateAccountMsg(cliCtx client.Context, from sdk.AccAddress, to common. toInfo, _ := cliCtx.Keyring.KeyByAddress(sdk.AccAddress(to.Bytes())) sign, _, err := cliCtx.Keyring.Sign(toInfo.Name, types.MigrateAccountSignatureHash(from, to.Bytes())) if err != nil { - return nil, fmt.Errorf("sign migrate signature error %v", err) + return nil, fmt.Errorf("sign migrate signature error %w", err) } msg := types.NewMsgMigrateAccount(from, to, hex.EncodeToString(sign)) if err := msg.ValidateBasic(); err != nil { - return nil, fmt.Errorf("validate basic error %v", err) + return nil, fmt.Errorf("validate basic error %w", err) } return msg, nil } diff --git a/x/migrate/keeper/distr_staking_test.go b/x/migrate/keeper/distr_staking_test.go index 27bd89e87..c9b94ff1f 100644 --- a/x/migrate/keeper/distr_staking_test.go +++ b/x/migrate/keeper/distr_staking_test.go @@ -275,7 +275,7 @@ func buildCommitVotes(t *testing.T, ctx sdk.Context, stakingKeeper stakingkeeper t.Helper() validators := stakingKeeper.GetAllValidators(ctx) - var result []abcitypes.VoteInfo + result := make([]abcitypes.VoteInfo, 0, len(validators)) for _, validator := range validators { if !validator.IsBonded() { continue diff --git a/x/migrate/keeper/gov.go b/x/migrate/keeper/gov.go index 6629eea85..e6be0b100 100644 --- a/x/migrate/keeper/gov.go +++ b/x/migrate/keeper/gov.go @@ -110,7 +110,7 @@ func (m *GovMigrate) Execute(ctx sdk.Context, cdc codec.BinaryCodec, from sdk.Ac govStore.Delete(govtypes.VoteKey(proposalID, from)) govStore.Set(govtypes.VoteKey(proposalID, to.Bytes()), cdc.MustMarshal(&fromVote)) - var options govv1.WeightedVoteOptions = fromVote.Options[:] + var options govv1.WeightedVoteOptions = fromVote.Options // add events events = append(events, sdk.NewEvent( diff --git a/x/migrate/keeper/keeper.go b/x/migrate/keeper/keeper.go index 80ea62047..7b764dbdb 100644 --- a/x/migrate/keeper/keeper.go +++ b/x/migrate/keeper/keeper.go @@ -63,11 +63,11 @@ func (k Keeper) SetMigrateRecord(ctx sdk.Context, from sdk.AccAddress, to common height := sdk.Uint64ToBigEndian(uint64(ctx.BlockHeight())) - copy(bzFrom[:], types.ValuePrefixMigrateFromFlag) + copy(bzFrom, types.ValuePrefixMigrateFromFlag) copy(bzFrom[1:], to.Bytes()) copy(bzFrom[1+addressLen:], height) - copy(bzTo[:], types.ValuePrefixMigrateToFlag) + copy(bzTo, types.ValuePrefixMigrateToFlag) copy(bzTo[1:], from.Bytes()) copy(bzTo[1+addressLen:], height) diff --git a/x/staking/client/cli/tx.go b/x/staking/client/cli/tx.go index be99676c6..922e86fe5 100644 --- a/x/staking/client/cli/tx.go +++ b/x/staking/client/cli/tx.go @@ -74,7 +74,7 @@ Examples: // signature sign, _, err := clientCtx.Keyring.Sign(toInfo.Name, types.GrantPrivilegeSignatureData(valAddr, fromAddr, toAddr)) if err != nil { - return fmt.Errorf("sign grant privilege signature error %v", err) + return fmt.Errorf("sign grant privilege signature error %w", err) } msg := &types.MsgGrantPrivilege{ ValidatorAddress: valAddr.String(), diff --git a/x/tron/types/msg_validate.go b/x/tron/types/msg_validate.go index 9055cc320..1c7e0cbb1 100644 --- a/x/tron/types/msg_validate.go +++ b/x/tron/types/msg_validate.go @@ -169,7 +169,7 @@ func (b TronMsgValidate) MsgRequestBatchValidate(m *crosschaintypes.MsgRequestBa if _, err = sdk.AccAddressFromBech32(m.Sender); err != nil { return errortypes.ErrInvalidAddress.Wrapf("invalid sender address: %s", err) } - if len(m.Denom) <= 0 { + if len(m.Denom) == 0 { return errortypes.ErrInvalidRequest.Wrap("empty denom") } if m.MinimumFee.IsNil() || !m.MinimumFee.IsPositive() {