diff --git a/.golangci.yml b/.golangci.yml index 892293c988..d532e4682c 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -84,16 +84,16 @@ linters-settings: - name: error-naming - name: errorf - name: exported - # - name: if-return + - name: if-return - name: increment-decrement - name: indent-error-flow - name: range - # - name: receiver-naming + - name: receiver-naming # - name: redefines-builtin-id - name: superfluous-else - name: time-naming - name: unexported-return - name: unreachable-code - # - name: unused-parameter + - name: unused-parameter - name: var-declaration - # - name: var-naming \ No newline at end of file + - name: var-naming \ No newline at end of file diff --git a/.revive.toml b/.revive.toml index 1d746d3964..9e28bbaa97 100644 --- a/.revive.toml +++ b/.revive.toml @@ -7,7 +7,7 @@ confidence = 0 # https://github.com/mgechev/revive#configuration -# Recommended configuration, minus [rule.exported] and [rule.package-comments] +# Recommended configuration, minus what's commented out [rule.blank-imports] [rule.context-as-argument] [rule.context-keys-type] @@ -24,7 +24,7 @@ confidence = 0 #[rule.package-comments] [rule.range] [rule.receiver-naming] -[rule.redefines-builtin-id] +#[rule.redefines-builtin-id] [rule.superfluous-else] [rule.time-naming] [rule.unexported-return] diff --git a/ante/ante_test.go b/ante/ante_test.go index f7b6938b37..40079fab2a 100644 --- a/ante/ante_test.go +++ b/ante/ante_test.go @@ -28,7 +28,7 @@ type IntegrationTestSuite struct { } func (s *IntegrationTestSuite) SetupTest() { - app := umeeapp.Setup(s.T(), false, 1) + app := umeeapp.Setup(s.T()) ctx := app.BaseApp.NewContext(false, tmproto.Header{ ChainID: fmt.Sprintf("test-chain-%s", tmrand.Str(4)), Height: 1, diff --git a/app/test_helpers.go b/app/test_helpers.go index 3192304dfc..0a458eadb6 100644 --- a/app/test_helpers.go +++ b/app/test_helpers.go @@ -59,9 +59,9 @@ var DefaultConsensusParams = &abci.ConsensusParams{ type EmptyAppOptions struct{} -func (EmptyAppOptions) Get(o string) interface{} { return nil } +func (EmptyAppOptions) Get(string) interface{} { return nil } -func Setup(t *testing.T, isCheckTx bool, invCheckPeriod uint) *UmeeApp { +func Setup(t *testing.T) *UmeeApp { t.Helper() privVal := mock.NewPV() diff --git a/app/upgrades.go b/app/upgrades.go index ad30cd9cb9..d39cc049be 100644 --- a/app/upgrades.go +++ b/app/upgrades.go @@ -17,7 +17,9 @@ import ( oracletypes "github.com/umee-network/umee/v3/x/oracle/types" ) -func (app UmeeApp) RegisterUpgradeHandlers(experimental bool) { +// RegisterUpgradeHandlersregisters upgrade handlers. +// It takes a boolean parameter to enable or disable experimental features. +func (app UmeeApp) RegisterUpgradeHandlers(bool) { upgradeInfo, err := app.UpgradeKeeper.ReadUpgradeInfoFromDisk() if err != nil { panic(err) @@ -125,7 +127,8 @@ func (app *UmeeApp) registerUpgrade3_0(upgradeInfo upgradetypes.Plan) { oracletypes.ModuleName, leveragetypes.ModuleName, - }}) + }, + }) } func onlyModuleMigrations(app *UmeeApp, planName string) upgradetypes.UpgradeHandler { diff --git a/app/upgradev3/staking_util_test.go b/app/upgradev3/staking_util_test.go index 36bb55fa88..d770125a8f 100644 --- a/app/upgradev3/staking_util_test.go +++ b/app/upgradev3/staking_util_test.go @@ -18,7 +18,7 @@ type MockStakingKeeper struct { } // GetValidator implements StakingKeeper -func (m *MockStakingKeeper) GetValidator(ctx sdk.Context, addr sdk.ValAddress) (types.Validator, bool) { +func (m *MockStakingKeeper) GetValidator(_ sdk.Context, addr sdk.ValAddress) (types.Validator, bool) { var ( validator types.Validator found bool @@ -36,27 +36,27 @@ func (m *MockStakingKeeper) GetValidator(ctx sdk.Context, addr sdk.ValAddress) ( } // BeforeValidatorModified implements StakingKeeper -func (*MockStakingKeeper) BeforeValidatorModified(ctx sdk.Context, valAddr sdk.ValAddress) error { +func (*MockStakingKeeper) BeforeValidatorModified(sdk.Context, sdk.ValAddress) error { return nil } // GetAllValidators implements StakingKeeper -func (m *MockStakingKeeper) GetAllValidators(ctx sdk.Context) (validators []types.Validator) { +func (m *MockStakingKeeper) GetAllValidators(sdk.Context) (validators []types.Validator) { return m.validators } // GetParams implements StakingKeeper -func (m *MockStakingKeeper) GetParams(ctx sdk.Context) types.Params { +func (m *MockStakingKeeper) GetParams(sdk.Context) types.Params { return m.params } // SetParams implements StakingKeeper -func (m *MockStakingKeeper) SetParams(ctx sdk.Context, params types.Params) { +func (m *MockStakingKeeper) SetParams(_ sdk.Context, params types.Params) { m.params = params } // SetValidator implements StakingKeeper -func (m *MockStakingKeeper) SetValidator(ctx sdk.Context, validator types.Validator) { +func (m *MockStakingKeeper) SetValidator(_ sdk.Context, validator types.Validator) { for index, v := range m.validators { if v.GetOperator().Equals(validator.GetOperator()) { m.validators[index] = validator diff --git a/price-feeder/oracle/grpc.go b/price-feeder/oracle/grpc.go index 64e17fbb92..1bed3da050 100644 --- a/price-feeder/oracle/grpc.go +++ b/price-feeder/oracle/grpc.go @@ -6,7 +6,7 @@ import ( "strings" ) -func dialerFunc(ctx context.Context, addr string) (net.Conn, error) { +func dialerFunc(_ context.Context, addr string) (net.Conn, error) { return Connect(addr) } diff --git a/price-feeder/oracle/provider/binance.go b/price-feeder/oracle/provider/binance.go index c8fc9967ea..f6dae0f328 100644 --- a/price-feeder/oracle/provider/binance.go +++ b/price-feeder/oracle/provider/binance.go @@ -239,7 +239,7 @@ func (p *BinanceProvider) getCandlePrices(key string) ([]types.CandlePrice, erro return candleList, nil } -func (p *BinanceProvider) messageReceived(messageType int, bz []byte) { +func (p *BinanceProvider) messageReceived(_ int, bz []byte) { var ( tickerResp BinanceTicker tickerErr error diff --git a/price-feeder/oracle/provider/bitget.go b/price-feeder/oracle/provider/bitget.go index 06a8f2e7ba..83a8e4d0a8 100644 --- a/price-feeder/oracle/provider/bitget.go +++ b/price-feeder/oracle/provider/bitget.go @@ -213,7 +213,7 @@ func (p *BitgetProvider) GetCandlePrices(pairs ...types.CurrencyPair) (map[strin } // messageReceived handles the received data from the Bitget websocket. -func (p *BitgetProvider) messageReceived(messageType int, bz []byte) { +func (p *BitgetProvider) messageReceived(_ int, bz []byte) { var ( tickerResp BitgetTicker tickerErr error diff --git a/price-feeder/oracle/provider/bitget_test.go b/price-feeder/oracle/provider/bitget_test.go index 4f37fe70e1..3bff8033bc 100644 --- a/price-feeder/oracle/provider/bitget_test.go +++ b/price-feeder/oracle/provider/bitget_test.go @@ -22,17 +22,17 @@ func TestBitgetProvider_GetTickerPrices(t *testing.T) { t.Run("valid_request_single_ticker", func(t *testing.T) { lastPrice := "34.69000000" volume := "2396974.02000000" - instId := "ATOMUSDT" + instID := "ATOMUSDT" tickerMap := map[string]BitgetTicker{} - tickerMap[instId] = BitgetTicker{ + tickerMap[instID] = BitgetTicker{ Arg: BitgetSubscriptionArg{ Channel: "tickers", - InstID: instId, + InstID: instID, }, Data: []BitgetTickerData{ { - InstID: instId, + InstID: instID, Price: lastPrice, Volume: volume, }, diff --git a/price-feeder/oracle/provider/coinbase.go b/price-feeder/oracle/provider/coinbase.go index 7b1c7e7dbd..bce35fdffc 100644 --- a/price-feeder/oracle/provider/coinbase.go +++ b/price-feeder/oracle/provider/coinbase.go @@ -307,7 +307,7 @@ func (p *CoinbaseProvider) getTradePrices(key string) ([]CoinbaseTrade, error) { return trades, nil } -func (p *CoinbaseProvider) messageReceived(messageType int, bz []byte) { +func (p *CoinbaseProvider) messageReceived(_ int, bz []byte) { var coinbaseTrade CoinbaseTradeResponse if err := json.Unmarshal(bz, &coinbaseTrade); err != nil { p.logger.Error().Err(err).Msg("unable to unmarshal response") diff --git a/price-feeder/oracle/provider/gate.go b/price-feeder/oracle/provider/gate.go index c987ec39c2..44e672db92 100644 --- a/price-feeder/oracle/provider/gate.go +++ b/price-feeder/oracle/provider/gate.go @@ -248,7 +248,7 @@ func (p *GateProvider) getTickerPrice(cp types.CurrencyPair) (types.TickerPrice, return types.TickerPrice{}, fmt.Errorf("gate failed to get ticker price for %s", gp) } -func (p *GateProvider) messageReceived(messageType int, bz []byte) { +func (p *GateProvider) messageReceived(_ int, bz []byte) { var ( gateEvent GateEvent gateErr error @@ -262,7 +262,6 @@ func (p *GateProvider) messageReceived(messageType int, bz []byte) { case "success": return case "": - break default: return } diff --git a/price-feeder/oracle/provider/mexc.go b/price-feeder/oracle/provider/mexc.go index fe0a5bce60..09d75aa611 100644 --- a/price-feeder/oracle/provider/mexc.go +++ b/price-feeder/oracle/provider/mexc.go @@ -226,7 +226,7 @@ func (p *MexcProvider) getCandlePrices(key string) ([]types.CandlePrice, error) return candleList, nil } -func (p *MexcProvider) messageReceived(messageType int, bz []byte) { +func (p *MexcProvider) messageReceived(_ int, bz []byte) { var ( tickerResp MexcTickerResponse tickerErr error diff --git a/price-feeder/oracle/provider/mock.go b/price-feeder/oracle/provider/mock.go index a89add6d53..3307e1bf13 100644 --- a/price-feeder/oracle/provider/mock.go +++ b/price-feeder/oracle/provider/mock.go @@ -41,7 +41,7 @@ func NewMockProvider() *MockProvider { } // SubscribeCurrencyPairs performs a no-op since mock does not use websockets -func (p MockProvider) SubscribeCurrencyPairs(pairs ...types.CurrencyPair) error { +func (p MockProvider) SubscribeCurrencyPairs(...types.CurrencyPair) error { return nil } diff --git a/price-feeder/oracle/provider/okx.go b/price-feeder/oracle/provider/okx.go index 772a47c0e4..015b1df4e3 100644 --- a/price-feeder/oracle/provider/okx.go +++ b/price-feeder/oracle/provider/okx.go @@ -244,7 +244,7 @@ func (p *OkxProvider) getCandlePrices(cp types.CurrencyPair) ([]types.CandlePric return candleList, nil } -func (p *OkxProvider) messageReceived(messageType int, bz []byte) { +func (p *OkxProvider) messageReceived(_ int, bz []byte) { var ( tickerResp OkxTickerResponse tickerErr error diff --git a/price-feeder/oracle/provider/osmosis.go b/price-feeder/oracle/provider/osmosis.go index fc315310fc..a6f608c95d 100644 --- a/price-feeder/oracle/provider/osmosis.go +++ b/price-feeder/oracle/provider/osmosis.go @@ -73,7 +73,7 @@ func NewOsmosisProvider(endpoint Endpoint) *OsmosisProvider { } // SubscribeCurrencyPairs performs a no-op since osmosis does not use websockets -func (p OsmosisProvider) SubscribeCurrencyPairs(pairs ...types.CurrencyPair) error { +func (OsmosisProvider) SubscribeCurrencyPairs(...types.CurrencyPair) error { return nil } diff --git a/price-feeder/oracle/provider/osmosisv2.go b/price-feeder/oracle/provider/osmosisv2.go index c0fef89a04..55dea2c5a5 100644 --- a/price-feeder/oracle/provider/osmosisv2.go +++ b/price-feeder/oracle/provider/osmosisv2.go @@ -189,7 +189,7 @@ func (p *OsmosisV2Provider) getCandlePrices(key string) ([]types.CandlePrice, er return candleList, nil } -func (p *OsmosisV2Provider) messageReceived(messageType int, bz []byte) { +func (p *OsmosisV2Provider) messageReceived(_ int, bz []byte) { // check if message is an ack first if string(bz) == "ack" { return diff --git a/price-feeder/oracle/provider/provider.go b/price-feeder/oracle/provider/provider.go index e3067b318f..f2517af920 100644 --- a/price-feeder/oracle/provider/provider.go +++ b/price-feeder/oracle/provider/provider.go @@ -80,7 +80,7 @@ func (n Name) String() string { // preventRedirect avoid any redirect in the http.Client the request call // will not return an error, but a valid response with redirect response code. -func preventRedirect(_ *http.Request, _ []*http.Request) error { +func preventRedirect(*http.Request, []*http.Request) error { return http.ErrUseLastResponse } diff --git a/price-feeder/oracle/provider/websocket_controller.go b/price-feeder/oracle/provider/websocket_controller.go index 22a3e76dd1..5dd78a6030 100644 --- a/price-feeder/oracle/provider/websocket_controller.go +++ b/price-feeder/oracle/provider/websocket_controller.go @@ -263,7 +263,7 @@ func (wsc *WebsocketController) reconnect() { // pingHandler is called by the websocket library whenever a ping message is received // and responds with a pong message to the server -func (wsc *WebsocketController) pingHandler(appData string) error { +func (wsc *WebsocketController) pingHandler(string) error { if err := wsc.client.WriteMessage(websocket.PongMessage, []byte("pong")); err != nil { wsc.logger.Error().Err(err).Msg("error sending pong") } diff --git a/price-feeder/oracle/provider/websocket_controller_test.go b/price-feeder/oracle/provider/websocket_controller_test.go index 60384aa81a..0c2ff1933b 100644 --- a/price-feeder/oracle/provider/websocket_controller_test.go +++ b/price-feeder/oracle/provider/websocket_controller_test.go @@ -11,7 +11,7 @@ type TestProvider struct { handlerCalled bool } -func (mp *TestProvider) messageHandler(messageType int, bz []byte) { +func (mp *TestProvider) messageHandler(int, []byte) { mp.handlerCalled = true } diff --git a/x/leverage/client/cli/query.go b/x/leverage/client/cli/query.go index e6698b3625..1590416361 100644 --- a/x/leverage/client/cli/query.go +++ b/x/leverage/client/cli/query.go @@ -17,7 +17,7 @@ const ( ) // GetQueryCmd returns the CLI query commands for the x/leverage module. -func GetQueryCmd(queryRoute string) *cobra.Command { +func GetQueryCmd() *cobra.Command { cmd := &cobra.Command{ Use: types.ModuleName, Short: fmt.Sprintf("Querying commands for the %s module", types.ModuleName), diff --git a/x/leverage/keeper/borrows.go b/x/leverage/keeper/borrows.go index 40bd5f425e..5778516d0c 100644 --- a/x/leverage/keeper/borrows.go +++ b/x/leverage/keeper/borrows.go @@ -33,10 +33,7 @@ func (k Keeper) setBorrow(ctx sdk.Context, borrowerAddr sdk.AccAddress, borrow s newAdjustedAmount := toDec(borrow.Amount).Quo(k.getInterestScalar(ctx, borrow.Denom)) // Set new borrow value - if err := k.setAdjustedBorrow(ctx, borrowerAddr, sdk.NewDecCoinFromDec(borrow.Denom, newAdjustedAmount)); err != nil { - return err - } - return nil + return k.setAdjustedBorrow(ctx, borrowerAddr, sdk.NewDecCoinFromDec(borrow.Denom, newAdjustedAmount)) } // GetTotalBorrowed returns the total borrowed in a given denom. diff --git a/x/leverage/keeper/iter.go b/x/leverage/keeper/iter.go index a4ce124003..408428abfd 100644 --- a/x/leverage/keeper/iter.go +++ b/x/leverage/keeper/iter.go @@ -159,21 +159,6 @@ func (k Keeper) GetBorrowerCollateral(ctx sdk.Context, borrowerAddr sdk.AccAddre return totalCollateral } -// HasCollateral returns true if a borrower has any collateral. -func (k Keeper) HasCollateral(ctx sdk.Context, borrowerAddr sdk.AccAddress) bool { - iter := sdk.KVStorePrefixIterator( - ctx.KVStore(k.storeKey), - types.KeyPrefixCollateralAmount, - ) - defer iter.Close() - - for ; iter.Valid(); iter.Next() { - // Stored collateral amounts are never zero, so this is enough - return true - } - return false -} - // GetEligibleLiquidationTargets returns a list of borrower addresses eligible for liquidation. func (k Keeper) GetEligibleLiquidationTargets(ctx sdk.Context) ([]sdk.AccAddress, error) { prefix := types.KeyPrefixAdjustedBorrow diff --git a/x/leverage/keeper/msg_server.go b/x/leverage/keeper/msg_server.go index c795941097..e52ae6120c 100644 --- a/x/leverage/keeper/msg_server.go +++ b/x/leverage/keeper/msg_server.go @@ -334,13 +334,13 @@ func (s msgServer) GovUpdateRegistry( } // update the token settings - err := s.keeper.SaveOrUpdateTokenSettingsToRegistry(ctx, msg.Authority, msg.UpdateTokens, registeredTokenDenoms, true) + err := s.keeper.SaveOrUpdateTokenSettingsToRegistry(ctx, msg.UpdateTokens, registeredTokenDenoms, true) if err != nil { return &types.MsgGovUpdateRegistryResponse{}, err } // adds the new token settings - err = s.keeper.SaveOrUpdateTokenSettingsToRegistry(ctx, msg.Authority, msg.AddTokens, registeredTokenDenoms, false) + err = s.keeper.SaveOrUpdateTokenSettingsToRegistry(ctx, msg.AddTokens, registeredTokenDenoms, false) if err != nil { return &types.MsgGovUpdateRegistryResponse{}, err } diff --git a/x/leverage/keeper/suite_test.go b/x/leverage/keeper/suite_test.go index ef473e0e8b..fe5f58dfc4 100644 --- a/x/leverage/keeper/suite_test.go +++ b/x/leverage/keeper/suite_test.go @@ -47,7 +47,7 @@ func TestKeeperTestSuite(t *testing.T) { func (s *IntegrationTestSuite) SetupTest() { require := s.Require() - app := umeeapp.Setup(s.T(), false, 1) + app := umeeapp.Setup(s.T()) ctx := app.BaseApp.NewContext(false, tmproto.Header{ ChainID: fmt.Sprintf("test-chain-%s", tmrand.Str(4)), Height: 1, diff --git a/x/leverage/keeper/token.go b/x/leverage/keeper/token.go index a602366ace..f206618eeb 100644 --- a/x/leverage/keeper/token.go +++ b/x/leverage/keeper/token.go @@ -42,7 +42,7 @@ func (k Keeper) GetTokenSettings(ctx sdk.Context, denom string) (types.Token, er // SaveOrUpdateTokenSettingsToRegistry adds new tokens or updates the new tokens settings to registry. func (k Keeper) SaveOrUpdateTokenSettingsToRegistry( - ctx sdk.Context, authority string, tokens []types.Token, registeredTokenDenoms map[string]bool, update bool, + ctx sdk.Context, tokens []types.Token, registeredTokenDenoms map[string]bool, update bool, ) error { for _, token := range tokens { if err := token.Validate(); err != nil { diff --git a/x/leverage/module.go b/x/leverage/module.go index 15e6a48950..e1e78672ab 100644 --- a/x/leverage/module.go +++ b/x/leverage/module.go @@ -65,7 +65,7 @@ func (AppModuleBasic) DefaultGenesis(cdc codec.JSONCodec) json.RawMessage { // ValidateGenesis performs genesis state validation for the x/leverage module. func (AppModuleBasic) ValidateGenesis( cdc codec.JSONCodec, - config client.TxEncodingConfig, + _ client.TxEncodingConfig, bz json.RawMessage, ) error { var genState types.GenesisState @@ -95,7 +95,7 @@ func (a AppModuleBasic) GetTxCmd() *cobra.Command { // GetQueryCmd returns the x/leverage module's root query command. func (AppModuleBasic) GetQueryCmd() *cobra.Command { - return cli.GetQueryCmd(types.StoreKey) + return cli.GetQueryCmd() } // AppModule implements the AppModule interface for the x/leverage module. @@ -134,7 +134,7 @@ func (am AppModule) Route() sdk.Route { func (AppModule) QuerierRoute() string { return types.QuerierRoute } // LegacyQuerierHandler returns a no-op legacy querier. -func (am AppModule) LegacyQuerierHandler(legacyQuerierCdc *codec.LegacyAmino) sdk.Querier { +func (am AppModule) LegacyQuerierHandler(*codec.LegacyAmino) sdk.Querier { return func(sdk.Context, []string, abci.RequestQuery) ([]byte, error) { return nil, fmt.Errorf("legacy querier not supported for the x/%s module", types.ModuleName) } @@ -169,7 +169,7 @@ func (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.Raw } // BeginBlock executes all ABCI BeginBlock logic respective to the x/leverage module. -func (am AppModule) BeginBlock(_ sdk.Context, _ abci.RequestBeginBlock) {} +func (am AppModule) BeginBlock(sdk.Context, abci.RequestBeginBlock) {} // EndBlock executes all ABCI EndBlock logic respective to the x/leverage module. // It returns no validator updates. diff --git a/x/leverage/simulation/operations.go b/x/leverage/simulation/operations.go index 2dea443b95..885d6dc13f 100644 --- a/x/leverage/simulation/operations.go +++ b/x/leverage/simulation/operations.go @@ -50,37 +50,37 @@ func WeightedOperations( weightMsgLiquidate int ) appParams.GetOrGenerate(cdc, OperationWeightMsgSupply, &weightMsgSupply, nil, - func(_ *rand.Rand) { + func(*rand.Rand) { weightMsgSupply = DefaultWeightMsgSupply }, ) appParams.GetOrGenerate(cdc, OperationWeightMsgWithdraw, &weightMsgWithdraw, nil, - func(_ *rand.Rand) { + func(*rand.Rand) { weightMsgWithdraw = DefaultWeightMsgWithdraw }, ) appParams.GetOrGenerate(cdc, OperationWeightMsgBorrow, &weightMsgBorrow, nil, - func(_ *rand.Rand) { + func(*rand.Rand) { weightMsgBorrow = DefaultWeightMsgBorrow }, ) appParams.GetOrGenerate(cdc, OperationWeightMsgCollateralize, &weightMsgCollateralize, nil, - func(_ *rand.Rand) { + func(*rand.Rand) { weightMsgCollateralize = DefaultWeightMsgCollateralize }, ) appParams.GetOrGenerate(cdc, OperationWeightMsgDecollateralize, &weightMsgDecollateralize, nil, - func(_ *rand.Rand) { + func(*rand.Rand) { weightMsgDecollateralize = DefaultWeightMsgDecollateralize }, ) appParams.GetOrGenerate(cdc, OperationWeightMsgRepay, &weightMsgRepay, nil, - func(_ *rand.Rand) { + func(*rand.Rand) { weightMsgRepay = DefaultWeightMsgRepay }, ) appParams.GetOrGenerate(cdc, OperationWeightMsgLiquidate, &weightMsgLiquidate, nil, - func(_ *rand.Rand) { + func(*rand.Rand) { weightMsgLiquidate = DefaultWeightMsgLiquidate }, ) @@ -92,7 +92,7 @@ func WeightedOperations( ), simulation.NewWeightedOperation( weightMsgCollateralize, - SimulateMsgCollateralize(ak, bk, lk), + SimulateMsgCollateralize(ak, bk), ), simulation.NewWeightedOperation( weightMsgBorrow, @@ -176,7 +176,6 @@ func SimulateMsgBorrow(ak simulation.AccountKeeper, bk bankkeeper.Keeper, lk kee func SimulateMsgCollateralize( ak simulation.AccountKeeper, bk bankkeeper.Keeper, - lk keeper.Keeper, ) simtypes.Operation { return func( r *rand.Rand, app *baseapp.BaseApp, ctx sdk.Context, diff --git a/x/leverage/simulation/operations_test.go b/x/leverage/simulation/operations_test.go index 125f55b92d..5b0d67e051 100644 --- a/x/leverage/simulation/operations_test.go +++ b/x/leverage/simulation/operations_test.go @@ -31,7 +31,7 @@ type SimTestSuite struct { // SetupTest creates a new umee base app func (s *SimTestSuite) SetupTest() { checkTx := false - app := umeeapp.Setup(s.T(), checkTx, 1) + app := umeeapp.Setup(s.T()) ctx := app.NewContext(checkTx, tmproto.Header{}) leverage.InitGenesis(ctx, app.LeverageKeeper, *types.DefaultGenesis()) @@ -190,7 +190,7 @@ func (s *SimTestSuite) TestSimulateMsgCollateralize() { s.app.BeginBlock(abci.RequestBeginBlock{Header: tmproto.Header{Height: s.app.LastBlockHeight() + 1, AppHash: s.app.LastCommitID().Hash}}) - op := simulation.SimulateMsgCollateralize(s.app.AccountKeeper, s.app.BankKeeper, s.app.LeverageKeeper) + op := simulation.SimulateMsgCollateralize(s.app.AccountKeeper, s.app.BankKeeper) operationMsg, futureOperations, err := op(r, s.app.BaseApp, s.ctx, accs, "") s.Require().NoError(err) diff --git a/x/leverage/simulation/params.go b/x/leverage/simulation/params.go index 918b0d4c5d..558e645d6d 100644 --- a/x/leverage/simulation/params.go +++ b/x/leverage/simulation/params.go @@ -12,7 +12,7 @@ import ( // ParamChanges defines the parameters that can be modified by param change proposals // on the simulation -func ParamChanges(r *rand.Rand) []simtypes.ParamChange { +func ParamChanges(*rand.Rand) []simtypes.ParamChange { return []simtypes.ParamChange{ simulation.NewSimParamChange(types.ModuleName, string(types.KeyCompleteLiquidationThreshold), func(r *rand.Rand) string { diff --git a/x/leverage/types/genesis.go b/x/leverage/types/genesis.go index 56fc18bc3b..67f407fff4 100644 --- a/x/leverage/types/genesis.go +++ b/x/leverage/types/genesis.go @@ -99,11 +99,7 @@ func (gs GenesisState) Validate() error { } } - if err := gs.UtokenSupply.Validate(); err != nil { - return err - } - - return nil + return gs.UtokenSupply.Validate() } // GetGenesisStateFromAppState returns x/leverage GenesisState given raw application diff --git a/x/leverage/types/msgs.go b/x/leverage/types/msgs.go index f9b929cade..4a509e24cf 100644 --- a/x/leverage/types/msgs.go +++ b/x/leverage/types/msgs.go @@ -12,9 +12,7 @@ import ( "gopkg.in/yaml.v3" ) -var ( - _ sdk.Msg = &MsgGovUpdateRegistry{} -) +var _ sdk.Msg = &MsgGovUpdateRegistry{} // NewMsgUpdateRegistry will creates a new MsgUpdateRegistry instance func NewMsgUpdateRegistry(authority, title, description string, updateTokens, addTokens []Token) *MsgGovUpdateRegistry { diff --git a/x/leverage/types/params.go b/x/leverage/types/params.go index 513a9ab000..016dcf7fd6 100644 --- a/x/leverage/types/params.go +++ b/x/leverage/types/params.go @@ -99,10 +99,7 @@ func (p Params) Validate() error { if err := validateSmallLiquidationSize(p.SmallLiquidationSize); err != nil { return err } - if err := validateDirectLiquidationFee(p.DirectLiquidationFee); err != nil { - return err - } - return nil + return validateDirectLiquidationFee(p.DirectLiquidationFee) } func validateLiquidationThreshold(i interface{}) error { diff --git a/x/leverage/types/tx.go b/x/leverage/types/tx.go index 6d5f11f390..48acd24c7a 100644 --- a/x/leverage/types/tx.go +++ b/x/leverage/types/tx.go @@ -239,10 +239,7 @@ func validateSenderAndAsset(sender string, asset *sdk.Coin) error { if asset == nil { return ErrNilAsset } - if err := asset.Validate(); err != nil { - return err - } - return nil + return asset.Validate() } func validateSenderAndDenom(sender string, denom string) error { @@ -250,8 +247,5 @@ func validateSenderAndDenom(sender string, denom string) error { if err != nil { return err } - if err := sdk.ValidateDenom(denom); err != nil { - return err - } - return nil + return sdk.ValidateDenom(denom) } diff --git a/x/oracle/abci.go b/x/oracle/abci.go index 4ca5f874be..f358b91606 100644 --- a/x/oracle/abci.go +++ b/x/oracle/abci.go @@ -52,7 +52,7 @@ func EndBlocker(ctx sdk.Context, k keeper.Keeper, experimental bool) error { // Iterate through ballots and update exchange rates; drop if not enough votes have been achieved. for _, ballotDenom := range ballotDenomSlice { // Get weighted median of exchange rates - exchangeRate, err := Tally(ctx, ballotDenom.Ballot, params.RewardBand, validatorClaimMap) + exchangeRate, err := Tally(ballotDenom.Ballot, params.RewardBand, validatorClaimMap) if err != nil { return err } @@ -123,7 +123,6 @@ func EndBlocker(ctx sdk.Context, k keeper.Keeper, experimental bool) error { // rewarded, i.e. voted within a reasonable spread from the weighted median to // the store. Note, the ballot is sorted by ExchangeRate. func Tally( - ctx sdk.Context, ballot types.ExchangeRateBallot, rewardBand sdk.Dec, validatorClaimMap map[string]types.Claim, diff --git a/x/oracle/abci_test.go b/x/oracle/abci_test.go index 8320abf195..cc2c7f4992 100644 --- a/x/oracle/abci_test.go +++ b/x/oracle/abci_test.go @@ -39,7 +39,7 @@ const ( func (s *IntegrationTestSuite) SetupTest() { require := s.Require() isCheckTx := false - app := umeeapp.Setup(s.T(), isCheckTx, 1) + app := umeeapp.Setup(s.T()) ctx := app.BaseApp.NewContext(isCheckTx, tmproto.Header{ ChainID: fmt.Sprintf("test-chain-%s", tmrand.Str(4)), Height: int64(types.DefaultMedianPeriod) - 1, diff --git a/x/oracle/client/cli/query.go b/x/oracle/client/cli/query.go index f70f32ad11..6d5cd73250 100644 --- a/x/oracle/client/cli/query.go +++ b/x/oracle/client/cli/query.go @@ -14,7 +14,7 @@ import ( ) // GetQueryCmd returns the CLI query commands for the x/oracle module. -func GetQueryCmd(queryRoute string) *cobra.Command { +func GetQueryCmd() *cobra.Command { cmd := &cobra.Command{ Use: types.ModuleName, Short: fmt.Sprintf("Querying commands for the %s module", types.ModuleName), diff --git a/x/oracle/keeper/hooks.go b/x/oracle/keeper/hooks.go index bb6ed0b9aa..1b42c8ce52 100644 --- a/x/oracle/keeper/hooks.go +++ b/x/oracle/keeper/hooks.go @@ -54,4 +54,4 @@ func (h Hooks) AfterTokenRegistered(ctx sdk.Context, token leveragetypes.Token) // useful to still have price data for assets outside of the scope of the // x/leverage registry. If assets need to be removed, they can always be purged // via param change proposals. -func (h Hooks) AfterRegisteredTokenRemoved(ctx sdk.Context, token leveragetypes.Token) {} +func (h Hooks) AfterRegisteredTokenRemoved(sdk.Context, leveragetypes.Token) {} diff --git a/x/oracle/keeper/keeper_test.go b/x/oracle/keeper/keeper_test.go index 35448f7052..7e4c4a1531 100644 --- a/x/oracle/keeper/keeper_test.go +++ b/x/oracle/keeper/keeper_test.go @@ -46,7 +46,7 @@ const ( func (s *IntegrationTestSuite) SetupTest() { require := s.Require() isCheckTx := false - app := umeeapp.Setup(s.T(), isCheckTx, 1) + app := umeeapp.Setup(s.T()) ctx := app.BaseApp.NewContext(isCheckTx, tmproto.Header{ ChainID: fmt.Sprintf("test-chain-%s", tmrand.Str(4)), Height: 9, diff --git a/x/oracle/module.go b/x/oracle/module.go index 6a19dfcb0d..ed120aba2e 100644 --- a/x/oracle/module.go +++ b/x/oracle/module.go @@ -65,7 +65,7 @@ func (AppModuleBasic) DefaultGenesis(cdc codec.JSONCodec) json.RawMessage { // ValidateGenesis performs genesis state validation for the x/oracle module. func (AppModuleBasic) ValidateGenesis( cdc codec.JSONCodec, - config client.TxEncodingConfig, + _ client.TxEncodingConfig, bz json.RawMessage, ) error { var genState types.GenesisState @@ -78,7 +78,7 @@ func (AppModuleBasic) ValidateGenesis( // Deprecated: RegisterRESTRoutes performs a no-op. Querying is delegated to the // gRPC service. -func (AppModuleBasic) RegisterRESTRoutes(clientCtx client.Context, rtr *mux.Router) {} +func (AppModuleBasic) RegisterRESTRoutes(client.Context, *mux.Router) {} // RegisterGRPCGatewayRoutes registers the gRPC Gateway routes for the x/oracle // module. @@ -95,7 +95,7 @@ func (AppModuleBasic) GetTxCmd() *cobra.Command { // GetQueryCmd returns the x/oracle module's root query command. func (AppModuleBasic) GetQueryCmd() *cobra.Command { - return cli.GetQueryCmd(types.StoreKey) + return cli.GetQueryCmd() } // AppModule implements the AppModule interface for the x/oracle module. @@ -138,7 +138,7 @@ func (am AppModule) Route() sdk.Route { func (AppModule) QuerierRoute() string { return types.QuerierRoute } // LegacyQuerierHandler returns a no-op legacy querier. -func (am AppModule) LegacyQuerierHandler(legacyQuerierCdc *codec.LegacyAmino) sdk.Querier { +func (am AppModule) LegacyQuerierHandler(*codec.LegacyAmino) sdk.Querier { return func(sdk.Context, []string, abci.RequestQuery) ([]byte, error) { return nil, fmt.Errorf("legacy querier not supported for the x/%s module", types.ModuleName) } @@ -156,7 +156,7 @@ func (am AppModule) RegisterServices(cfg module.Configurator) { } // RegisterInvariants registers the x/oracle module's invariants. -func (am AppModule) RegisterInvariants(_ sdk.InvariantRegistry) {} +func (am AppModule) RegisterInvariants(sdk.InvariantRegistry) {} // InitGenesis performs the x/oracle module's genesis initialization. It returns // no validator updates. @@ -177,7 +177,7 @@ func (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.Raw } // BeginBlock executes all ABCI BeginBlock logic respective to the x/oracle module. -func (am AppModule) BeginBlock(_ sdk.Context, _ abci.RequestBeginBlock) {} +func (am AppModule) BeginBlock(sdk.Context, abci.RequestBeginBlock) {} // EndBlock executes all ABCI EndBlock logic respective to the x/oracle module. // It returns no validator updates. @@ -208,8 +208,8 @@ func (am AppModule) ProposalContents(_ module.SimulationState) []simtypes.Weight } // RandomizedParams creates randomized oracle param changes for the simulator. -func (AppModule) RandomizedParams(r *rand.Rand) []simtypes.ParamChange { - return simulation.ParamChanges(r) +func (AppModule) RandomizedParams(*rand.Rand) []simtypes.ParamChange { + return simulation.ParamChanges() } // RegisterStoreDecoder registers a decoder for oracle module's types diff --git a/x/oracle/simulations/operations.go b/x/oracle/simulations/operations.go index 91bba2a005..47f917c51c 100644 --- a/x/oracle/simulations/operations.go +++ b/x/oracle/simulations/operations.go @@ -67,19 +67,19 @@ func WeightedOperations( ) appParams.GetOrGenerate(cdc, OpWeightMsgAggregateExchangeRatePrevote, &weightMsgAggregateExchangeRatePrevote, nil, - func(_ *rand.Rand) { + func(*rand.Rand) { weightMsgAggregateExchangeRatePrevote = simappparams.DefaultWeightMsgSend * 2 }, ) appParams.GetOrGenerate(cdc, OpWeightMsgAggregateExchangeRateVote, &weightMsgAggregateExchangeRateVote, nil, - func(_ *rand.Rand) { + func(*rand.Rand) { weightMsgAggregateExchangeRateVote = simappparams.DefaultWeightMsgSend * 2 }, ) appParams.GetOrGenerate(cdc, OpWeightMsgDelegateFeedConsent, &weightMsgDelegateFeedConsent, nil, - func(_ *rand.Rand) { + func(*rand.Rand) { weightMsgDelegateFeedConsent = simappparams.DefaultWeightMsgSetWithdrawAddress }, ) diff --git a/x/oracle/simulations/params.go b/x/oracle/simulations/params.go index 62df768a30..e9615fbf18 100644 --- a/x/oracle/simulations/params.go +++ b/x/oracle/simulations/params.go @@ -12,7 +12,7 @@ import ( // ParamChanges defines the parameters that can be modified by param change proposals // on the simulation -func ParamChanges(r *rand.Rand) []simtypes.ParamChange { +func ParamChanges() []simtypes.ParamChange { return []simtypes.ParamChange{ simulation.NewSimParamChange(types.ModuleName, string(types.KeyVotePeriod), func(r *rand.Rand) string { diff --git a/x/oracle/types/utils_test.go b/x/oracle/types/utils_test.go index e2226ce1ea..547aa0b03b 100644 --- a/x/oracle/types/utils_test.go +++ b/x/oracle/types/utils_test.go @@ -109,7 +109,7 @@ func (sk MockStakingKeeper) Validators() []MockValidator { return sk.validators } -func (sk MockStakingKeeper) Validator(ctx sdk.Context, address sdk.ValAddress) stakingtypes.ValidatorI { +func (sk MockStakingKeeper) Validator(_ sdk.Context, address sdk.ValAddress) stakingtypes.ValidatorI { for _, validator := range sk.validators { if validator.GetOperator().Equals(address) { return validator @@ -119,15 +119,15 @@ func (sk MockStakingKeeper) Validator(ctx sdk.Context, address sdk.ValAddress) s return nil } -func (MockStakingKeeper) TotalBondedTokens(_ sdk.Context) sdkmath.Int { +func (MockStakingKeeper) TotalBondedTokens(sdk.Context) sdkmath.Int { return sdk.ZeroInt() } -func (k MockStakingKeeper) GetBondedValidatorsByPower(ctx sdk.Context) []stakingtypes.Validator { +func (MockStakingKeeper) GetBondedValidatorsByPower(sdk.Context) []stakingtypes.Validator { return nil } -func (MockStakingKeeper) ValidatorsPowerStoreIterator(ctx sdk.Context) sdk.Iterator { +func (MockStakingKeeper) ValidatorsPowerStoreIterator(sdk.Context) sdk.Iterator { return sdk.KVStoreReversePrefixIterator(nil, nil) } @@ -139,7 +139,7 @@ func (MockStakingKeeper) MaxValidators(sdk.Context) uint32 { return 100 } -func (MockStakingKeeper) PowerReduction(ctx sdk.Context) (res sdkmath.Int) { +func (MockStakingKeeper) PowerReduction(sdk.Context) (res sdkmath.Int) { return sdk.DefaultPowerReduction } @@ -210,7 +210,7 @@ func (v MockValidator) GetBondedTokens() sdkmath.Int { return sdk.TokensFromConsensusPower(v.power, sdk.DefaultPowerReduction) } -func (v MockValidator) GetConsensusPower(powerReduction sdkmath.Int) int64 { +func (v MockValidator) GetConsensusPower(sdkmath.Int) int64 { return v.power } @@ -218,11 +218,11 @@ func (v *MockValidator) SetConsensusPower(power int64) { v.power = power } -func (v MockValidator) GetCommission() sdk.Dec { +func (MockValidator) GetCommission() sdk.Dec { return sdk.ZeroDec() } -func (v MockValidator) GetMinSelfDelegation() sdkmath.Int { +func (MockValidator) GetMinSelfDelegation() sdkmath.Int { return sdk.OneInt() } @@ -230,22 +230,22 @@ func (v MockValidator) GetDelegatorShares() sdk.Dec { return sdk.NewDec(v.power) } -func (v MockValidator) TokensFromShares(sdk.Dec) sdk.Dec { +func (MockValidator) TokensFromShares(sdk.Dec) sdk.Dec { return sdk.ZeroDec() } -func (v MockValidator) TokensFromSharesTruncated(sdk.Dec) sdk.Dec { +func (MockValidator) TokensFromSharesTruncated(sdk.Dec) sdk.Dec { return sdk.ZeroDec() } -func (v MockValidator) TokensFromSharesRoundUp(sdk.Dec) sdk.Dec { +func (MockValidator) TokensFromSharesRoundUp(sdk.Dec) sdk.Dec { return sdk.ZeroDec() } -func (v MockValidator) SharesFromTokens(amt sdkmath.Int) (sdk.Dec, error) { +func (MockValidator) SharesFromTokens(sdkmath.Int) (sdk.Dec, error) { return sdk.ZeroDec(), nil } -func (v MockValidator) SharesFromTokensTruncated(amt sdkmath.Int) (sdk.Dec, error) { +func (MockValidator) SharesFromTokensTruncated(sdkmath.Int) (sdk.Dec, error) { return sdk.ZeroDec(), nil }