build(deps): github.com/macabu/inamedparam from 0.1.2 to 0.1.3 (#4261)

This commit is contained in:
Matheus Macabu 2023-12-17 16:51:50 +01:00 committed by GitHub
parent 815556a868
commit 32e5b2bf11
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 57 additions and 10 deletions

View File

@ -1236,6 +1236,11 @@ linters-settings:
- pkg: knative.dev/serving/pkg/apis/(\w+)/(v[\w\d]+) - pkg: knative.dev/serving/pkg/apis/(\w+)/(v[\w\d]+)
alias: $1$2 alias: $1$2
inamedparam:
# Skips check for interface methods with only a single parameter.
# Default: false
skip-single-param: true
interfacebloat: interfacebloat:
# The maximum number of methods allowed for an interface. # The maximum number of methods allowed for an interface.
# Default: 10 # Default: 10

4
go.mod
View File

@ -68,7 +68,7 @@ require (
github.com/ldez/tagliatelle v0.5.0 github.com/ldez/tagliatelle v0.5.0
github.com/leonklingele/grouper v1.1.1 github.com/leonklingele/grouper v1.1.1
github.com/lufeee/execinquery v1.2.1 github.com/lufeee/execinquery v1.2.1
github.com/macabu/inamedparam v0.1.2 github.com/macabu/inamedparam v0.1.3
github.com/maratori/testableexamples v1.0.0 github.com/maratori/testableexamples v1.0.0
github.com/maratori/testpackage v1.1.1 github.com/maratori/testpackage v1.1.1
github.com/matoous/godox v0.0.0-20230222163458-006bad1f9d26 github.com/matoous/godox v0.0.0-20230222163458-006bad1f9d26
@ -194,7 +194,7 @@ require (
golang.org/x/mod v0.14.0 // indirect golang.org/x/mod v0.14.0 // indirect
golang.org/x/sync v0.5.0 // indirect golang.org/x/sync v0.5.0 // indirect
golang.org/x/sys v0.15.0 // indirect golang.org/x/sys v0.15.0 // indirect
golang.org/x/text v0.13.0 // indirect golang.org/x/text v0.14.0 // indirect
google.golang.org/protobuf v1.28.0 // indirect google.golang.org/protobuf v1.28.0 // indirect
gopkg.in/ini.v1 v1.67.0 // indirect gopkg.in/ini.v1 v1.67.0 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect

10
go.sum generated
View File

@ -358,8 +358,8 @@ github.com/lufeee/execinquery v1.2.1 h1:hf0Ems4SHcUGBxpGN7Jz78z1ppVkP/837ZlETPCE
github.com/lufeee/execinquery v1.2.1/go.mod h1:EC7DrEKView09ocscGHC+apXMIaorh4xqSxS/dy8SbM= github.com/lufeee/execinquery v1.2.1/go.mod h1:EC7DrEKView09ocscGHC+apXMIaorh4xqSxS/dy8SbM=
github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 h1:6E+4a0GO5zZEnZ81pIr0yLvtUWk2if982qA3F3QD6H4= github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 h1:6E+4a0GO5zZEnZ81pIr0yLvtUWk2if982qA3F3QD6H4=
github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0/go.mod h1:zJYVVT2jmtg6P3p1VtQj7WsuWi/y4VnjVBn7F8KPB3I= github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0/go.mod h1:zJYVVT2jmtg6P3p1VtQj7WsuWi/y4VnjVBn7F8KPB3I=
github.com/macabu/inamedparam v0.1.2 h1:RR5cnayM6Q7cDhQol32DE2BGAPGMnffJ31LFE+UklaU= github.com/macabu/inamedparam v0.1.3 h1:2tk/phHkMlEL/1GNe/Yf6kkR/hkcUdAEY3L0hjYV1Mk=
github.com/macabu/inamedparam v0.1.2/go.mod h1:Xg25QvY7IBRl1KLPV9Rbml8JOMZtF/iAkNkmV7eQgjw= github.com/macabu/inamedparam v0.1.3/go.mod h1:93FLICAIk/quk7eaPPQvbzihUdn/QkGDwIZEoLtpH6I=
github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo= github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo=
github.com/magiconair/properties v1.8.6/go.mod h1:y3VJvCyxH9uVvJTWEGAELF3aiYNyPKd5NZ3oSwXrF60= github.com/magiconair/properties v1.8.6/go.mod h1:y3VJvCyxH9uVvJTWEGAELF3aiYNyPKd5NZ3oSwXrF60=
github.com/maratori/testableexamples v1.0.0 h1:dU5alXRrD8WKSjOUnmJZuzdxWOEQ57+7s93SLMxb2vI= github.com/maratori/testableexamples v1.0.0 h1:dU5alXRrD8WKSjOUnmJZuzdxWOEQ57+7s93SLMxb2vI=
@ -411,7 +411,7 @@ github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6
github.com/onsi/ginkgo/v2 v2.13.0 h1:0jY9lJquiL8fcf3M4LAXN5aMlS/b2BV86HFFPCPMgE4= github.com/onsi/ginkgo/v2 v2.13.0 h1:0jY9lJquiL8fcf3M4LAXN5aMlS/b2BV86HFFPCPMgE4=
github.com/onsi/gomega v1.28.1 h1:MijcGUbfYuznzK/5R4CPNoUP/9Xvuo20sXfEm6XxoTA= github.com/onsi/gomega v1.28.1 h1:MijcGUbfYuznzK/5R4CPNoUP/9Xvuo20sXfEm6XxoTA=
github.com/otiai10/copy v1.2.0/go.mod h1:rrF5dJ5F0t/EWSYODDu4j9/vEeYHMkc8jt0zJChqQWw= github.com/otiai10/copy v1.2.0/go.mod h1:rrF5dJ5F0t/EWSYODDu4j9/vEeYHMkc8jt0zJChqQWw=
github.com/otiai10/copy v1.11.0 h1:OKBD80J/mLBrwnzXqGtFCzprFSGioo30JcmR4APsNwc= github.com/otiai10/copy v1.14.0 h1:dCI/t1iTdYGtkvCuBG2BgR6KZa83PTclw4U5n2wAllU=
github.com/otiai10/curr v0.0.0-20150429015615-9b4961190c95/go.mod h1:9qAhocn7zKJG+0mI8eUu6xqkFDYS2kb2saOteoSB3cE= github.com/otiai10/curr v0.0.0-20150429015615-9b4961190c95/go.mod h1:9qAhocn7zKJG+0mI8eUu6xqkFDYS2kb2saOteoSB3cE=
github.com/otiai10/curr v1.0.0/go.mod h1:LskTG5wDwr8Rs+nNQ+1LlxRjAtTZZjtJW4rMXl6j4vs= github.com/otiai10/curr v1.0.0/go.mod h1:LskTG5wDwr8Rs+nNQ+1LlxRjAtTZZjtJW4rMXl6j4vs=
github.com/otiai10/mint v1.3.0/go.mod h1:F5AjcsTsWUqX+Na9fpHb52P8pcRX2CI6A3ctIT91xUo= github.com/otiai10/mint v1.3.0/go.mod h1:F5AjcsTsWUqX+Na9fpHb52P8pcRX2CI6A3ctIT91xUo=
@ -816,8 +816,8 @@ golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.6.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.6.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k= golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=

View File

@ -74,6 +74,9 @@ var defaultLintersSettings = LintersSettings{
MaxDeclLines: 1, MaxDeclLines: 1,
MaxDeclChars: 30, MaxDeclChars: 30,
}, },
Inamedparam: INamedParamSettings{
SkipSingleParam: false,
},
InterfaceBloat: InterfaceBloatSettings{ InterfaceBloat: InterfaceBloatSettings{
Max: 10, Max: 10,
}, },
@ -216,6 +219,7 @@ type LintersSettings struct {
Grouper GrouperSettings Grouper GrouperSettings
Ifshort IfshortSettings Ifshort IfshortSettings
ImportAs ImportAsSettings ImportAs ImportAsSettings
Inamedparam INamedParamSettings
InterfaceBloat InterfaceBloatSettings InterfaceBloat InterfaceBloatSettings
Ireturn IreturnSettings Ireturn IreturnSettings
Lll LllSettings Lll LllSettings
@ -614,6 +618,10 @@ type ImportAsAlias struct {
Alias string Alias string
} }
type INamedParamSettings struct {
SkipSingleParam bool `mapstructure:"skip-single-param"`
}
type InterfaceBloatSettings struct { type InterfaceBloatSettings struct {
Max int `mapstructure:"max"` Max int `mapstructure:"max"`
} }

View File

@ -4,16 +4,27 @@ import (
"github.com/macabu/inamedparam" "github.com/macabu/inamedparam"
"golang.org/x/tools/go/analysis" "golang.org/x/tools/go/analysis"
"github.com/golangci/golangci-lint/pkg/config"
"github.com/golangci/golangci-lint/pkg/golinters/goanalysis" "github.com/golangci/golangci-lint/pkg/golinters/goanalysis"
) )
func NewINamedParam() *goanalysis.Linter { func NewINamedParam(settings *config.INamedParamSettings) *goanalysis.Linter {
a := inamedparam.Analyzer a := inamedparam.Analyzer
var cfg map[string]map[string]any
if settings != nil {
cfg = map[string]map[string]any{
a.Name: {
"skip-single-param": settings.SkipSingleParam,
},
}
}
return goanalysis.NewLinter( return goanalysis.NewLinter(
a.Name, a.Name,
a.Doc, a.Doc,
[]*analysis.Analyzer{a}, []*analysis.Analyzer{a},
nil, cfg,
).WithLoadMode(goanalysis.LoadModeSyntax) ).WithLoadMode(goanalysis.LoadModeSyntax)
} }

View File

@ -105,6 +105,7 @@ func (m Manager) GetAllSupportedLinterConfigs() []*linter.Config {
grouperCfg *config.GrouperSettings grouperCfg *config.GrouperSettings
ifshortCfg *config.IfshortSettings ifshortCfg *config.IfshortSettings
importAsCfg *config.ImportAsSettings importAsCfg *config.ImportAsSettings
inamedparamCfg *config.INamedParamSettings
interfaceBloatCfg *config.InterfaceBloatSettings interfaceBloatCfg *config.InterfaceBloatSettings
ireturnCfg *config.IreturnSettings ireturnCfg *config.IreturnSettings
lllCfg *config.LllSettings lllCfg *config.LllSettings
@ -189,6 +190,7 @@ func (m Manager) GetAllSupportedLinterConfigs() []*linter.Config {
grouperCfg = &m.cfg.LintersSettings.Grouper grouperCfg = &m.cfg.LintersSettings.Grouper
ifshortCfg = &m.cfg.LintersSettings.Ifshort ifshortCfg = &m.cfg.LintersSettings.Ifshort
importAsCfg = &m.cfg.LintersSettings.ImportAs importAsCfg = &m.cfg.LintersSettings.ImportAs
inamedparamCfg = &m.cfg.LintersSettings.Inamedparam
interfaceBloatCfg = &m.cfg.LintersSettings.InterfaceBloat interfaceBloatCfg = &m.cfg.LintersSettings.InterfaceBloat
ireturnCfg = &m.cfg.LintersSettings.Ireturn ireturnCfg = &m.cfg.LintersSettings.Ireturn
lllCfg = &m.cfg.LintersSettings.Lll lllCfg = &m.cfg.LintersSettings.Lll
@ -584,7 +586,7 @@ func (m Manager) GetAllSupportedLinterConfigs() []*linter.Config {
WithLoadForGoAnalysis(). WithLoadForGoAnalysis().
WithURL("https://github.com/julz/importas"), WithURL("https://github.com/julz/importas"),
linter.NewConfig(golinters.NewINamedParam()). linter.NewConfig(golinters.NewINamedParam(inamedparamCfg)).
WithSince("v1.55.0"). WithSince("v1.55.0").
WithPresets(linter.PresetStyle). WithPresets(linter.PresetStyle).
WithURL("https://github.com/macabu/inamedparam"), WithURL("https://github.com/macabu/inamedparam"),

View File

@ -0,0 +1,3 @@
linters-settings:
inamedparam:
skip-single-param: true

View File

@ -0,0 +1,18 @@
//golangcitest:args -Einamedparam
//golangcitest:config_path testdata/configs/inamedparam_skip_single_param.yml
package testdata
import "context"
type NamedParam interface {
Void()
SingleParam(string) error
WithName(ctx context.Context, number int, toggle bool) (bool, error)
WithoutName(
context.Context, // want "interface method WithoutName must have named param for type context.Context"
int, // want "interface method WithoutName must have named param for type int"
)
}