Documentation
¶
Index ¶
- Constants
- func DecodeHookFunc() mapstructure.DecodeHookFunc
- func IsGoGreaterThanOrEqual(current, limit string) bool
- func NewPlaceholderReplacer(cfg *Config) *strings.Replacer
- type AsasalintSettings
- type BaseConfig
- type BaseLoader
- type BaseRule
- type BiDiChkSettings
- type Config
- type CopyLoopVarSettings
- type CustomLinterSettings
- type CyclopSettings
- type DecorderSettings
- type DepGuardDeny
- type DepGuardList
- type DepGuardSettings
- type DogsledSettings
- type DupWordSettings
- type DuplSettings
- type EmbeddedStructFieldCheckSettings
- type ErrChkJSONSettings
- type ErrcheckSettings
- type ErrorLintAllowPair
- type ErrorLintSettings
- type ExcludeRule
- type ExhaustiveSettings
- type ExhaustructSettings
- type FatcontextSettings
- type ForbidigoPattern
- type ForbidigoSettings
- type Formats
- type FormatterExclusions
- type FormatterSettings
- type Formatters
- type FuncOrderSettings
- type FunlenSettings
- type GciSettings
- type GinkgoLinterSettings
- type GoChecksumTypeSettings
- type GoConstSettings
- type GoCriticCheckSettings
- type GoCriticSettings
- type GoCycloSettings
- type GoFmtRewriteRule
- type GoFmtSettings
- type GoFumptSettings
- type GoHeaderSettings
- type GoImportsSettings
- type GoLinesSettings
- type GoModDirectivesSettings
- type GoModGuardAllowed
- type GoModGuardBlocked
- type GoModGuardModule
- type GoModGuardSettings
- type GoModGuardVersion
- type GoSecSettings
- type GocognitSettings
- type GodoclintSettings
- type GodotSettings
- type GodoxSettings
- type GosmopolitanSettings
- type GovetSettings
- type GrouperSettings
- type INamedParamSettings
- type IfaceSettings
- type ImportAsAlias
- type ImportAsSettings
- type IneffassignSettings
- type InterfaceBloatSettings
- type IotaMixingSettings
- type IreturnSettings
- type Issues
- type JUnitXML
- type LinterExclusions
- type Linters
- type LintersSettings
- type LllSettings
- type LoadOptions
- type Loader
- type LoaderOptions
- type LoggerCheckSettings
- type MaintIdxSettings
- type MakezeroSettings
- type MisspellExtraWords
- type MisspellSettings
- type MndSettings
- type ModernizeSettings
- type MustTagFunction
- type MustTagSettings
- type NakedretSettings
- type NestifSettings
- type NilNilSettings
- type NlreturnSettings
- type NoLintLintSettings
- type NoNamedReturnsSettings
- type Output
- type ParallelTestSettings
- type PerfSprintSettings
- type PreallocSettings
- type PredeclaredSettings
- type PromlinterSettings
- type ProtoGetterSettings
- type ReassignSettings
- type RecvcheckSettings
- type ReviveDirective
- type ReviveRule
- type ReviveSettings
- type RowsErrCheckSettings
- type Run
- type Severity
- type SeverityRule
- type SimpleFormat
- type SlogLintSettings
- type SpancheckSettings
- type StaticCheckSettings
- type Tab
- type TagAlignSettings
- type TagliatelleBase
- type TagliatelleCase
- type TagliatelleExtendedRule
- type TagliatelleOverrides
- type TagliatelleSettings
- type TestifylintBoolCompare
- type TestifylintExpectedActual
- type TestifylintFormatter
- type TestifylintGoRequire
- type TestifylintRequireError
- type TestifylintSettings
- type TestifylintSuiteExtraAssertCall
- type TestpackageSettings
- type Text
- type ThelperOptions
- type ThelperSettings
- type UnconvertSettings
- type UnparamSettings
- type UnqueryvetSettings
- type UnusedSettings
- type UseStdlibVarsSettings
- type UseTestingSettings
- type VarnamelenSettings
- type WSLv4Settingsdeprecated
- type WSLv5Settings
- type WhitespaceSettings
- type WrapcheckSettings
Constants ¶
View Source
const ( GroupStandard = "standard" GroupAll = "all" GroupNone = "none" GroupFast = "fast" )
View Source
const ( GeneratedModeLax = "lax" GeneratedModeStrict = "strict" GeneratedModeDisable = "disable" )
View Source
const ( ExclusionPresetComments = "comments" ExclusionPresetStdErrorHandling = "std-error-handling" ExclusionPresetCommonFalsePositives = "common-false-positives" ExclusionPresetLegacy = "legacy" )
Variables ¶
This section is empty.
Functions ¶
func DecodeHookFunc ¶
func DecodeHookFunc() mapstructure.DecodeHookFunc
func IsGoGreaterThanOrEqual ¶
func NewPlaceholderReplacer ¶ added in v2.1.0
Types ¶
type AsasalintSettings ¶
type BaseConfig ¶
type BaseLoader ¶
type BaseLoader struct {
// contains filtered or unexported fields
}
func NewBaseLoader ¶
func NewBaseLoader(log logutils.Log, v *viper.Viper, opts LoaderOptions, cfg BaseConfig, args []string) *BaseLoader
func (*BaseLoader) Load ¶
func (l *BaseLoader) Load() error
type BaseRule ¶
type BaseRule struct {
Linters []string `mapstructure:"linters"`
Path string `mapstructure:"path"`
PathExcept string `mapstructure:"path-except"`
Text string `mapstructure:"text"`
Source string `mapstructure:"source"`
// For compatibility with exclude-use-default/include.
InternalReference string `mapstructure:"-"`
}
type BiDiChkSettings ¶
type BiDiChkSettings struct {
LeftToRightEmbedding bool `mapstructure:"left-to-right-embedding"`
RightToLeftEmbedding bool `mapstructure:"right-to-left-embedding"`
PopDirectionalFormatting bool `mapstructure:"pop-directional-formatting"`
LeftToRightOverride bool `mapstructure:"left-to-right-override"`
RightToLeftOverride bool `mapstructure:"right-to-left-override"`
LeftToRightIsolate bool `mapstructure:"left-to-right-isolate"`
RightToLeftIsolate bool `mapstructure:"right-to-left-isolate"`
FirstStrongIsolate bool `mapstructure:"first-strong-isolate"`
PopDirectionalIsolate bool `mapstructure:"pop-directional-isolate"`
}
type Config ¶
type Config struct {
Version string `mapstructure:"version"`
Run Run `mapstructure:"run"`
Output Output `mapstructure:"output"`
Linters Linters `mapstructure:"linters"`
Issues Issues `mapstructure:"issues"`
Severity Severity `mapstructure:"severity"`
Formatters Formatters `mapstructure:"formatters"`
InternalCmdTest bool // Option is used only for testing golangci-lint command, don't use it
InternalTest bool // Option is used only for testing golangci-lint code, don't use it
// contains filtered or unexported fields
}
Config encapsulates the config data specified in the golangci-lint YAML config file.
func NewDefault ¶
func NewDefault() *Config
func (*Config) GetBasePath ¶
func (*Config) GetConfigDir ¶
GetConfigDir returns the directory that contains golangci-lint config file.
func (*Config) IsInternalTest ¶
func (*Config) SetConfigDir ¶
SetConfigDir sets the path to directory that contains golangci-lint config file.
type CopyLoopVarSettings ¶
type CopyLoopVarSettings struct {
CheckAlias bool `mapstructure:"check-alias"`
}
type CustomLinterSettings ¶
type CustomLinterSettings struct {
// Type plugin type.
// It can be `goplugin` or `module`.
Type string `mapstructure:"type"`
// Path to a plugin *.so file that implements the private linter.
// Only for Go plugin system.
Path string `mapstructure:"path"`
// Description describes the purpose of the private linter.
Description string `mapstructure:"description"`
// OriginalURL The URL containing the source code for the private linter.
OriginalURL string `mapstructure:"original-url"`
// Settings plugin settings only work with linterdb.PluginConstructor symbol.
Settings any `mapstructure:"settings"`
}
CustomLinterSettings encapsulates the meta-data of a private linter.
func (*CustomLinterSettings) Validate ¶
func (s *CustomLinterSettings) Validate() error
type CyclopSettings ¶
type DecorderSettings ¶
type DecorderSettings struct {
DecOrder []string `mapstructure:"dec-order"`
IgnoreUnderscoreVars bool `mapstructure:"ignore-underscore-vars"`
DisableDecNumCheck bool `mapstructure:"disable-dec-num-check"`
DisableTypeDecNumCheck bool `mapstructure:"disable-type-dec-num-check"`
DisableConstDecNumCheck bool `mapstructure:"disable-const-dec-num-check"`
DisableVarDecNumCheck bool `mapstructure:"disable-var-dec-num-check"`
DisableDecOrderCheck bool `mapstructure:"disable-dec-order-check"`
DisableInitFuncFirstCheck bool `mapstructure:"disable-init-func-first-check"`
}
type DepGuardDeny ¶
type DepGuardList ¶
type DepGuardList struct {
ListMode string `mapstructure:"list-mode"`
Files []string `mapstructure:"files"`
Allow []string `mapstructure:"allow"`
Deny []DepGuardDeny `mapstructure:"deny"`
}
type DepGuardSettings ¶
type DepGuardSettings struct {
Rules map[string]*DepGuardList `mapstructure:"rules"`
}
type DogsledSettings ¶
type DogsledSettings struct {
MaxBlankIdentifiers int `mapstructure:"max-blank-identifiers"`
}
type DupWordSettings ¶
type DuplSettings ¶
type DuplSettings struct {
Threshold int `mapstructure:"threshold"`
}
type EmbeddedStructFieldCheckSettings ¶ added in v2.2.0
type ErrChkJSONSettings ¶
type ErrcheckSettings ¶
type ErrcheckSettings struct {
DisableDefaultExclusions bool `mapstructure:"disable-default-exclusions"`
CheckTypeAssertions bool `mapstructure:"check-type-assertions"`
CheckAssignToBlank bool `mapstructure:"check-blank"`
ExcludeFunctions []string `mapstructure:"exclude-functions"`
Verbose bool `mapstructure:"verbose"`
}
type ErrorLintAllowPair ¶
type ErrorLintSettings ¶
type ErrorLintSettings struct {
Errorf bool `mapstructure:"errorf"`
ErrorfMulti bool `mapstructure:"errorf-multi"`
Asserts bool `mapstructure:"asserts"`
Comparison bool `mapstructure:"comparison"`
AllowedErrors []ErrorLintAllowPair `mapstructure:"allowed-errors"`
AllowedErrorsWildcard []ErrorLintAllowPair `mapstructure:"allowed-errors-wildcard"`
}
type ExcludeRule ¶
type ExcludeRule struct {
BaseRule `mapstructure:",squash"`
}
func (*ExcludeRule) Validate ¶
func (e *ExcludeRule) Validate() error
type ExhaustiveSettings ¶
type ExhaustiveSettings struct {
Check []string `mapstructure:"check"`
DefaultSignifiesExhaustive bool `mapstructure:"default-signifies-exhaustive"`
IgnoreEnumMembers string `mapstructure:"ignore-enum-members"`
IgnoreEnumTypes string `mapstructure:"ignore-enum-types"`
PackageScopeOnly bool `mapstructure:"package-scope-only"`
ExplicitExhaustiveMap bool `mapstructure:"explicit-exhaustive-map"`
ExplicitExhaustiveSwitch bool `mapstructure:"explicit-exhaustive-switch"`
DefaultCaseRequired bool `mapstructure:"default-case-required"`
}
type ExhaustructSettings ¶
type ExhaustructSettings struct {
Include []string `mapstructure:"include"`
Exclude []string `mapstructure:"exclude"`
AllowEmpty bool `mapstructure:"allow-empty"`
AllowEmptyRx []string `mapstructure:"allow-empty-rx"`
AllowEmptyReturns bool `mapstructure:"allow-empty-returns"`
AllowEmptyDeclarations bool `mapstructure:"allow-empty-declarations"`
}
type FatcontextSettings ¶
type FatcontextSettings struct {
CheckStructPointers bool `mapstructure:"check-struct-pointers"`
}
type ForbidigoPattern ¶
type ForbidigoSettings ¶
type ForbidigoSettings struct {
Forbid []ForbidigoPattern `mapstructure:"forbid"`
ExcludeGodocExamples bool `mapstructure:"exclude-godoc-examples"`
AnalyzeTypes bool `mapstructure:"analyze-types"`
}
type Formats ¶
type Formats struct {
Text Text `mapstructure:"text"`
JSON SimpleFormat `mapstructure:"json"`
Tab Tab `mapstructure:"tab"`
HTML SimpleFormat `mapstructure:"html"`
Checkstyle SimpleFormat `mapstructure:"checkstyle"`
CodeClimate SimpleFormat `mapstructure:"code-climate"`
JUnitXML JUnitXML `mapstructure:"junit-xml"`
TeamCity SimpleFormat `mapstructure:"teamcity"`
Sarif SimpleFormat `mapstructure:"sarif"`
}
type FormatterExclusions ¶
type FormatterSettings ¶
type FormatterSettings struct {
Gci GciSettings `mapstructure:"gci"`
GoFmt GoFmtSettings `mapstructure:"gofmt"`
GoFumpt GoFumptSettings `mapstructure:"gofumpt"`
GoImports GoImportsSettings `mapstructure:"goimports"`
GoLines GoLinesSettings `mapstructure:"golines"`
}
type Formatters ¶
type Formatters struct {
Enable []string `mapstructure:"enable"`
Settings FormatterSettings `mapstructure:"settings"`
Exclusions FormatterExclusions `mapstructure:"exclusions"`
}
func (*Formatters) Validate ¶
func (f *Formatters) Validate() error
type FuncOrderSettings ¶ added in v2.1.0
type FunlenSettings ¶
type GciSettings ¶
type GinkgoLinterSettings ¶
type GinkgoLinterSettings struct {
SuppressLenAssertion bool `mapstructure:"suppress-len-assertion"`
SuppressNilAssertion bool `mapstructure:"suppress-nil-assertion"`
SuppressErrAssertion bool `mapstructure:"suppress-err-assertion"`
SuppressCompareAssertion bool `mapstructure:"suppress-compare-assertion"`
SuppressAsyncAssertion bool `mapstructure:"suppress-async-assertion"`
SuppressTypeCompareWarning bool `mapstructure:"suppress-type-compare-assertion"`
ForbidFocusContainer bool `mapstructure:"forbid-focus-container"`
AllowHaveLenZero bool `mapstructure:"allow-havelen-zero"`
ForceExpectTo bool `mapstructure:"force-expect-to"`
ValidateAsyncIntervals bool `mapstructure:"validate-async-intervals"`
ForbidSpecPollution bool `mapstructure:"forbid-spec-pollution"`
ForceSucceedForFuncs bool `mapstructure:"force-succeed"`
ForceAssertionDescription bool `mapstructure:"force-assertion-description"`
ForeToNot bool `mapstructure:"force-tonot"`
}
type GoChecksumTypeSettings ¶
type GoChecksumTypeSettings struct {
DefaultSignifiesExhaustive bool `mapstructure:"default-signifies-exhaustive"`
}
type GoConstSettings ¶
type GoConstSettings struct {
IgnoreStringValues []string `mapstructure:"ignore-string-values"`
MatchWithConstants bool `mapstructure:"match-constant"`
MinStringLen int `mapstructure:"min-len"`
MinOccurrencesCount int `mapstructure:"min-occurrences"`
ParseNumbers bool `mapstructure:"numbers"`
NumberMin int `mapstructure:"min"`
NumberMax int `mapstructure:"max"`
IgnoreCalls bool `mapstructure:"ignore-calls"`
FindDuplicates bool `mapstructure:"find-duplicates"`
EvalConstExpressions bool `mapstructure:"eval-const-expressions"`
// Deprecated: use IgnoreStringValues instead.
IgnoreStrings string `mapstructure:"ignore-strings"`
}
type GoCriticCheckSettings ¶
type GoCriticSettings ¶
type GoCriticSettings struct {
Go string `mapstructure:"-"`
DisableAll bool `mapstructure:"disable-all"`
EnabledChecks []string `mapstructure:"enabled-checks"`
EnableAll bool `mapstructure:"enable-all"`
DisabledChecks []string `mapstructure:"disabled-checks"`
EnabledTags []string `mapstructure:"enabled-tags"`
DisabledTags []string `mapstructure:"disabled-tags"`
SettingsPerCheck map[string]GoCriticCheckSettings `mapstructure:"settings"`
}
type GoCycloSettings ¶
type GoCycloSettings struct {
MinComplexity int `mapstructure:"min-complexity"`
}
type GoFmtRewriteRule ¶
type GoFmtSettings ¶
type GoFmtSettings struct {
Simplify bool `mapstructure:"simplify"`
RewriteRules []GoFmtRewriteRule `mapstructure:"rewrite-rules"`
}
type GoFumptSettings ¶
type GoHeaderSettings ¶
type GoImportsSettings ¶
type GoImportsSettings struct {
LocalPrefixes []string `mapstructure:"local-prefixes"`
}
type GoLinesSettings ¶
type GoModDirectivesSettings ¶
type GoModDirectivesSettings struct {
ReplaceAllowList []string `mapstructure:"replace-allow-list"`
ReplaceLocal bool `mapstructure:"replace-local"`
ExcludeForbidden bool `mapstructure:"exclude-forbidden"`
RetractAllowNoExplanation bool `mapstructure:"retract-allow-no-explanation"`
ToolchainForbidden bool `mapstructure:"toolchain-forbidden"`
ToolchainPattern string `mapstructure:"toolchain-pattern"`
ToolForbidden bool `mapstructure:"tool-forbidden"`
GoDebugForbidden bool `mapstructure:"go-debug-forbidden"`
GoVersionPattern string `mapstructure:"go-version-pattern"`
}
type GoModGuardAllowed ¶
type GoModGuardBlocked ¶
type GoModGuardBlocked struct {
Modules []map[string]GoModGuardModule `mapstructure:"modules"`
Versions []map[string]GoModGuardVersion `mapstructure:"versions"`
LocalReplaceDirectives bool `mapstructure:"local-replace-directives"`
}
type GoModGuardModule ¶
type GoModGuardSettings ¶
type GoModGuardSettings struct {
Allowed GoModGuardAllowed `mapstructure:"allowed"`
Blocked GoModGuardBlocked `mapstructure:"blocked"`
}
type GoModGuardVersion ¶
type GoSecSettings ¶
type GocognitSettings ¶
type GocognitSettings struct {
MinComplexity int `mapstructure:"min-complexity"`
}
type GodoclintSettings ¶ added in v2.5.0
type GodoclintSettings struct {
Default *string `mapstructure:"default"`
Enable []string `mapstructure:"enable"`
Disable []string `mapstructure:"disable"`
Options struct {
MaxLen struct {
Length *uint `mapstructure:"length"`
} `mapstructure:"max-len"`
RequireDoc struct {
IgnoreExported *bool `mapstructure:"ignore-exported"`
IgnoreUnexported *bool `mapstructure:"ignore-unexported"`
} `mapstructure:"require-doc"`
StartWithName struct {
IncludeUnexported *bool `mapstructure:"include-unexported"`
} `mapstructure:"start-with-name"`
} `mapstructure:"options"`
}
type GodotSettings ¶
type GodoxSettings ¶
type GodoxSettings struct {
Keywords []string `mapstructure:"keywords"`
}
type GosmopolitanSettings ¶
type GovetSettings ¶
type GovetSettings struct {
Go string `mapstructure:"-"`
Enable []string `mapstructure:"enable"`
Disable []string `mapstructure:"disable"`
EnableAll bool `mapstructure:"enable-all"`
DisableAll bool `mapstructure:"disable-all"`
Settings map[string]map[string]any `mapstructure:"settings"`
}
func (*GovetSettings) Validate ¶
func (cfg *GovetSettings) Validate() error
type GrouperSettings ¶
type GrouperSettings struct {
ConstRequireSingleConst bool `mapstructure:"const-require-single-const"`
ConstRequireGrouping bool `mapstructure:"const-require-grouping"`
ImportRequireSingleImport bool `mapstructure:"import-require-single-import"`
ImportRequireGrouping bool `mapstructure:"import-require-grouping"`
TypeRequireSingleType bool `mapstructure:"type-require-single-type"`
TypeRequireGrouping bool `mapstructure:"type-require-grouping"`
VarRequireSingleVar bool `mapstructure:"var-require-single-var"`
VarRequireGrouping bool `mapstructure:"var-require-grouping"`
}
type INamedParamSettings ¶
type INamedParamSettings struct {
SkipSingleParam bool `mapstructure:"skip-single-param"`
}
type IfaceSettings ¶
type ImportAsAlias ¶
type ImportAsSettings ¶
type ImportAsSettings struct {
Alias []ImportAsAlias `mapstructure:"alias"`
NoUnaliased bool `mapstructure:"no-unaliased"`
NoExtraAliases bool `mapstructure:"no-extra-aliases"`
}
type IneffassignSettings ¶ added in v2.5.0
type IneffassignSettings struct {
CheckEscapingErrors bool `mapstructure:"check-escaping-errors"`
}
type InterfaceBloatSettings ¶
type InterfaceBloatSettings struct {
Max int `mapstructure:"max"`
}
type IotaMixingSettings ¶ added in v2.5.0
type IotaMixingSettings struct {
ReportIndividual bool `mapstructure:"report-individual"`
}
type IreturnSettings ¶
type Issues ¶
type Issues struct {
MaxIssuesPerLinter int `mapstructure:"max-issues-per-linter"`
MaxSameIssues int `mapstructure:"max-same-issues"`
UniqByLine bool `mapstructure:"uniq-by-line"`
DiffFromRevision string `mapstructure:"new-from-rev"`
DiffFromMergeBase string `mapstructure:"new-from-merge-base"`
DiffPatchFilePath string `mapstructure:"new-from-patch"`
WholeFiles bool `mapstructure:"whole-files"`
Diff bool `mapstructure:"new"`
NeedFix bool `mapstructure:"fix"`
}
type JUnitXML ¶
type JUnitXML struct {
SimpleFormat `mapstructure:",squash"`
Extended bool `mapstructure:"extended"`
}
type LinterExclusions ¶
type LinterExclusions struct {
Generated string `mapstructure:"generated"`
WarnUnused bool `mapstructure:"warn-unused"`
Presets []string `mapstructure:"presets"`
Rules []ExcludeRule `mapstructure:"rules"`
Paths []string `mapstructure:"paths"`
PathsExcept []string `mapstructure:"paths-except"`
}
func (*LinterExclusions) Validate ¶
func (e *LinterExclusions) Validate() error
type Linters ¶
type Linters struct {
Default string `mapstructure:"default"`
Enable []string `mapstructure:"enable"`
Disable []string `mapstructure:"disable"`
FastOnly bool `mapstructure:"fast-only"` // Flag only option.
Settings LintersSettings `mapstructure:"settings"`
Exclusions LinterExclusions `mapstructure:"exclusions"`
}
type LintersSettings ¶
type LintersSettings struct {
FormatterSettings `mapstructure:"-"`
Asasalint AsasalintSettings `mapstructure:"asasalint"`
BiDiChk BiDiChkSettings `mapstructure:"bidichk"`
CopyLoopVar CopyLoopVarSettings `mapstructure:"copyloopvar"`
Cyclop CyclopSettings `mapstructure:"cyclop"`
Decorder DecorderSettings `mapstructure:"decorder"`
Depguard DepGuardSettings `mapstructure:"depguard"`
Dogsled DogsledSettings `mapstructure:"dogsled"`
Dupl DuplSettings `mapstructure:"dupl"`
DupWord DupWordSettings `mapstructure:"dupword"`
EmbeddedStructFieldCheck EmbeddedStructFieldCheckSettings `mapstructure:"embeddedstructfieldcheck"`
Errcheck ErrcheckSettings `mapstructure:"errcheck"`
ErrChkJSON ErrChkJSONSettings `mapstructure:"errchkjson"`
ErrorLint ErrorLintSettings `mapstructure:"errorlint"`
Exhaustive ExhaustiveSettings `mapstructure:"exhaustive"`
Exhaustruct ExhaustructSettings `mapstructure:"exhaustruct"`
Fatcontext FatcontextSettings `mapstructure:"fatcontext"`
Forbidigo ForbidigoSettings `mapstructure:"forbidigo"`
FuncOrder FuncOrderSettings `mapstructure:"funcorder"`
Funlen FunlenSettings `mapstructure:"funlen"`
GinkgoLinter GinkgoLinterSettings `mapstructure:"ginkgolinter"`
Gocognit GocognitSettings `mapstructure:"gocognit"`
GoChecksumType GoChecksumTypeSettings `mapstructure:"gochecksumtype"`
Goconst GoConstSettings `mapstructure:"goconst"`
Gocritic GoCriticSettings `mapstructure:"gocritic"`
Gocyclo GoCycloSettings `mapstructure:"gocyclo"`
Godoclint GodoclintSettings `mapstructure:"godoclint"`
Godot GodotSettings `mapstructure:"godot"`
Godox GodoxSettings `mapstructure:"godox"`
Goheader GoHeaderSettings `mapstructure:"goheader"`
GoModDirectives GoModDirectivesSettings `mapstructure:"gomoddirectives"`
Gomodguard GoModGuardSettings `mapstructure:"gomodguard"`
Gosec GoSecSettings `mapstructure:"gosec"`
Gosmopolitan GosmopolitanSettings `mapstructure:"gosmopolitan"`
Unqueryvet UnqueryvetSettings `mapstructure:"unqueryvet"`
Govet GovetSettings `mapstructure:"govet"`
Grouper GrouperSettings `mapstructure:"grouper"`
Iface IfaceSettings `mapstructure:"iface"`
ImportAs ImportAsSettings `mapstructure:"importas"`
Inamedparam INamedParamSettings `mapstructure:"inamedparam"`
Ineffassign IneffassignSettings `mapstructure:"ineffassign"`
InterfaceBloat InterfaceBloatSettings `mapstructure:"interfacebloat"`
IotaMixing IotaMixingSettings `mapstructure:"iotamixing"`
Ireturn IreturnSettings `mapstructure:"ireturn"`
Lll LllSettings `mapstructure:"lll"`
LoggerCheck LoggerCheckSettings `mapstructure:"loggercheck"`
MaintIdx MaintIdxSettings `mapstructure:"maintidx"`
Makezero MakezeroSettings `mapstructure:"makezero"`
Misspell MisspellSettings `mapstructure:"misspell"`
Mnd MndSettings `mapstructure:"mnd"`
Modernize ModernizeSettings `mapstructure:"modernize"`
MustTag MustTagSettings `mapstructure:"musttag"`
Nakedret NakedretSettings `mapstructure:"nakedret"`
Nestif NestifSettings `mapstructure:"nestif"`
NilNil NilNilSettings `mapstructure:"nilnil"`
Nlreturn NlreturnSettings `mapstructure:"nlreturn"`
NoLintLint NoLintLintSettings `mapstructure:"nolintlint"`
NoNamedReturns NoNamedReturnsSettings `mapstructure:"nonamedreturns"`
ParallelTest ParallelTestSettings `mapstructure:"paralleltest"`
PerfSprint PerfSprintSettings `mapstructure:"perfsprint"`
Prealloc PreallocSettings `mapstructure:"prealloc"`
Predeclared PredeclaredSettings `mapstructure:"predeclared"`
Promlinter PromlinterSettings `mapstructure:"promlinter"`
ProtoGetter ProtoGetterSettings `mapstructure:"protogetter"`
Reassign ReassignSettings `mapstructure:"reassign"`
Recvcheck RecvcheckSettings `mapstructure:"recvcheck"`
Revive ReviveSettings `mapstructure:"revive"`
RowsErrCheck RowsErrCheckSettings `mapstructure:"rowserrcheck"`
SlogLint SlogLintSettings `mapstructure:"sloglint"`
Spancheck SpancheckSettings `mapstructure:"spancheck"`
Staticcheck StaticCheckSettings `mapstructure:"staticcheck"`
TagAlign TagAlignSettings `mapstructure:"tagalign"`
Tagliatelle TagliatelleSettings `mapstructure:"tagliatelle"`
Testifylint TestifylintSettings `mapstructure:"testifylint"`
Testpackage TestpackageSettings `mapstructure:"testpackage"`
Thelper ThelperSettings `mapstructure:"thelper"`
Unconvert UnconvertSettings `mapstructure:"unconvert"`
Unparam UnparamSettings `mapstructure:"unparam"`
Unused UnusedSettings `mapstructure:"unused"`
UseStdlibVars UseStdlibVarsSettings `mapstructure:"usestdlibvars"`
UseTesting UseTestingSettings `mapstructure:"usetesting"`
Varnamelen VarnamelenSettings `mapstructure:"varnamelen"`
Whitespace WhitespaceSettings `mapstructure:"whitespace"`
Wrapcheck WrapcheckSettings `mapstructure:"wrapcheck"`
WSL WSLv4Settings `mapstructure:"wsl"` // Deprecated: use WSLv5 instead.
WSLv5 WSLv5Settings `mapstructure:"wsl_v5"`
Custom map[string]CustomLinterSettings `mapstructure:"custom"`
}
func (*LintersSettings) Validate ¶
func (s *LintersSettings) Validate() error
type LllSettings ¶
type LoadOptions ¶
type Loader ¶
type Loader struct {
*BaseLoader
// contains filtered or unexported fields
}
func NewFormattersLoader ¶ added in v2.0.2
func NewLintersLoader ¶ added in v2.0.2
func (*Loader) Load ¶
func (l *Loader) Load(opts LoadOptions) error
type LoaderOptions ¶
type LoggerCheckSettings ¶
type LoggerCheckSettings struct {
Kitlog bool `mapstructure:"kitlog"`
Klog bool `mapstructure:"klog"`
Logr bool `mapstructure:"logr"`
Slog bool `mapstructure:"slog"`
Zap bool `mapstructure:"zap"`
RequireStringKey bool `mapstructure:"require-string-key"`
NoPrintfLike bool `mapstructure:"no-printf-like"`
Rules []string `mapstructure:"rules"`
}
type MaintIdxSettings ¶
type MaintIdxSettings struct {
Under int `mapstructure:"under"`
}
type MakezeroSettings ¶
type MakezeroSettings struct {
Always bool `mapstructure:"always"`
}
type MisspellExtraWords ¶
type MisspellSettings ¶
type MisspellSettings struct {
Mode string `mapstructure:"mode"`
Locale string `mapstructure:"locale"`
ExtraWords []MisspellExtraWords `mapstructure:"extra-words"`
IgnoreRules []string `mapstructure:"ignore-rules"`
}
type MndSettings ¶
type ModernizeSettings ¶ added in v2.6.0
type ModernizeSettings struct {
Disable []string `mapstructure:"disable"`
}
type MustTagFunction ¶
type MustTagSettings ¶
type MustTagSettings struct {
Functions []MustTagFunction `mapstructure:"functions"`
}
type NakedretSettings ¶
type NakedretSettings struct {
MaxFuncLines uint `mapstructure:"max-func-lines"`
}
type NestifSettings ¶
type NestifSettings struct {
MinComplexity int `mapstructure:"min-complexity"`
}
type NilNilSettings ¶
type NlreturnSettings ¶
type NlreturnSettings struct {
BlockSize int `mapstructure:"block-size"`
}
type NoLintLintSettings ¶
type NoNamedReturnsSettings ¶
type NoNamedReturnsSettings struct {
ReportErrorInDefer bool `mapstructure:"report-error-in-defer"`
}
type Output ¶
type ParallelTestSettings ¶
type PerfSprintSettings ¶
type PerfSprintSettings struct {
IntegerFormat bool `mapstructure:"integer-format"`
IntConversion bool `mapstructure:"int-conversion"`
ErrorFormat bool `mapstructure:"error-format"`
ErrError bool `mapstructure:"err-error"`
ErrorF bool `mapstructure:"errorf"`
StringFormat bool `mapstructure:"string-format"`
SprintF1 bool `mapstructure:"sprintf1"`
StrConcat bool `mapstructure:"strconcat"`
BoolFormat bool `mapstructure:"bool-format"`
HexFormat bool `mapstructure:"hex-format"`
ConcatLoop bool `mapstructure:"concat-loop"`
LoopOtherOps bool `mapstructure:"loop-other-ops"`
}
type PreallocSettings ¶
type PredeclaredSettings ¶
type PromlinterSettings ¶
type ProtoGetterSettings ¶
type ReassignSettings ¶
type ReassignSettings struct {
Patterns []string `mapstructure:"patterns"`
}
type RecvcheckSettings ¶
type ReviveDirective ¶
type ReviveRule ¶
type ReviveSettings ¶
type ReviveSettings struct {
Go string `mapstructure:"-"`
MaxOpenFiles int `mapstructure:"max-open-files"`
Confidence float64 `mapstructure:"confidence"`
Severity string `mapstructure:"severity"`
EnableAllRules bool `mapstructure:"enable-all-rules"`
Rules []ReviveRule `mapstructure:"rules"`
ErrorCode int `mapstructure:"error-code"`
WarningCode int `mapstructure:"warning-code"`
Directives []ReviveDirective `mapstructure:"directives"`
}
type RowsErrCheckSettings ¶
type RowsErrCheckSettings struct {
Packages []string `mapstructure:"packages"`
}
type Run ¶
type Run struct {
Timeout time.Duration `mapstructure:"timeout"`
Concurrency int `mapstructure:"concurrency"`
Go string `mapstructure:"go"`
RelativePathMode string `mapstructure:"relative-path-mode"`
BuildTags []string `mapstructure:"build-tags"`
ModulesDownloadMode string `mapstructure:"modules-download-mode"`
ExitCodeIfIssuesFound int `mapstructure:"issues-exit-code"`
AnalyzeTests bool `mapstructure:"tests"`
AllowParallelRunners bool `mapstructure:"allow-parallel-runners"`
AllowSerialRunners bool `mapstructure:"allow-serial-runners"`
}
Run encapsulates the config options for running the linter analysis.
type Severity ¶
type Severity struct {
Default string `mapstructure:"default"`
Rules []SeverityRule `mapstructure:"rules"`
}
type SeverityRule ¶
type SeverityRule struct {
BaseRule `mapstructure:",squash"`
Severity string `mapstructure:"severity"`
}
func (*SeverityRule) Validate ¶
func (s *SeverityRule) Validate() error
type SimpleFormat ¶
type SimpleFormat struct {
Path string `mapstructure:"path"`
}
type SlogLintSettings ¶
type SlogLintSettings struct {
NoMixedArgs bool `mapstructure:"no-mixed-args"`
KVOnly bool `mapstructure:"kv-only"`
AttrOnly bool `mapstructure:"attr-only"`
NoGlobal string `mapstructure:"no-global"`
Context string `mapstructure:"context"`
StaticMsg bool `mapstructure:"static-msg"`
MsgStyle string `mapstructure:"msg-style"`
NoRawKeys bool `mapstructure:"no-raw-keys"`
KeyNamingCase string `mapstructure:"key-naming-case"`
ForbiddenKeys []string `mapstructure:"forbidden-keys"`
ArgsOnSepLines bool `mapstructure:"args-on-sep-lines"`
}
type SpancheckSettings ¶
type StaticCheckSettings ¶
type StaticCheckSettings struct {
Checks []string `mapstructure:"checks"`
Initialisms []string `mapstructure:"initialisms"` // only for stylecheck
DotImportWhitelist []string `mapstructure:"dot-import-whitelist"` // only for stylecheck
HTTPStatusCodeWhitelist []string `mapstructure:"http-status-code-whitelist"` // only for stylecheck
}
func (*StaticCheckSettings) HasConfiguration ¶
func (s *StaticCheckSettings) HasConfiguration() bool
type Tab ¶
type Tab struct {
SimpleFormat `mapstructure:",squash"`
PrintLinterName bool `mapstructure:"print-linter-name"`
Colors bool `mapstructure:"colors"`
}
type TagAlignSettings ¶
type TagliatelleBase ¶
type TagliatelleCase ¶
type TagliatelleCase struct {
TagliatelleBase `mapstructure:",squash"`
Overrides []TagliatelleOverrides `mapstructure:"overrides"`
}
type TagliatelleExtendedRule ¶
type TagliatelleOverrides ¶
type TagliatelleOverrides struct {
TagliatelleBase `mapstructure:",squash"`
Package string `mapstructure:"pkg"`
Ignore bool `mapstructure:"ignore"`
}
type TagliatelleSettings ¶
type TagliatelleSettings struct {
Case TagliatelleCase `mapstructure:"case"`
}
type TestifylintBoolCompare ¶
type TestifylintBoolCompare struct {
IgnoreCustomTypes bool `mapstructure:"ignore-custom-types"`
}
type TestifylintExpectedActual ¶
type TestifylintExpectedActual struct {
ExpVarPattern string `mapstructure:"pattern"`
}
type TestifylintFormatter ¶
type TestifylintGoRequire ¶
type TestifylintGoRequire struct {
IgnoreHTTPHandlers bool `mapstructure:"ignore-http-handlers"`
}
type TestifylintRequireError ¶
type TestifylintRequireError struct {
FnPattern string `mapstructure:"fn-pattern"`
}
type TestifylintSettings ¶
type TestifylintSettings struct {
EnableAll bool `mapstructure:"enable-all"`
DisableAll bool `mapstructure:"disable-all"`
EnabledCheckers []string `mapstructure:"enable"`
DisabledCheckers []string `mapstructure:"disable"`
BoolCompare TestifylintBoolCompare `mapstructure:"bool-compare"`
ExpectedActual TestifylintExpectedActual `mapstructure:"expected-actual"`
Formatter TestifylintFormatter `mapstructure:"formatter"`
GoRequire TestifylintGoRequire `mapstructure:"go-require"`
RequireError TestifylintRequireError `mapstructure:"require-error"`
SuiteExtraAssertCall TestifylintSuiteExtraAssertCall `mapstructure:"suite-extra-assert-call"`
}
type TestifylintSuiteExtraAssertCall ¶
type TestifylintSuiteExtraAssertCall struct {
Mode string `mapstructure:"mode"`
}
type TestpackageSettings ¶
type Text ¶
type Text struct {
SimpleFormat `mapstructure:",squash"`
PrintLinterName bool `mapstructure:"print-linter-name"`
PrintIssuedLine bool `mapstructure:"print-issued-lines"`
Colors bool `mapstructure:"colors"`
}
type ThelperOptions ¶
type ThelperSettings ¶
type ThelperSettings struct {
Test ThelperOptions `mapstructure:"test"`
Fuzz ThelperOptions `mapstructure:"fuzz"`
Benchmark ThelperOptions `mapstructure:"benchmark"`
TB ThelperOptions `mapstructure:"tb"`
}
type UnconvertSettings ¶
type UnparamSettings ¶
type UnparamSettings struct {
CheckExported bool `mapstructure:"check-exported"`
}
type UnqueryvetSettings ¶ added in v2.5.0
type UnusedSettings ¶
type UnusedSettings struct {
FieldWritesAreUses bool `mapstructure:"field-writes-are-uses"`
PostStatementsAreReads bool `mapstructure:"post-statements-are-reads"`
ExportedFieldsAreUsed bool `mapstructure:"exported-fields-are-used"`
ParametersAreUsed bool `mapstructure:"parameters-are-used"`
LocalVariablesAreUsed bool `mapstructure:"local-variables-are-used"`
GeneratedIsUsed bool `mapstructure:"generated-is-used"`
}
type UseStdlibVarsSettings ¶
type UseStdlibVarsSettings struct {
HTTPMethod bool `mapstructure:"http-method"`
HTTPStatusCode bool `mapstructure:"http-status-code"`
TimeWeekday bool `mapstructure:"time-weekday"`
TimeMonth bool `mapstructure:"time-month"`
TimeLayout bool `mapstructure:"time-layout"`
CryptoHash bool `mapstructure:"crypto-hash"`
DefaultRPCPath bool `mapstructure:"default-rpc-path"`
SQLIsolationLevel bool `mapstructure:"sql-isolation-level"`
TLSSignatureScheme bool `mapstructure:"tls-signature-scheme"`
ConstantKind bool `mapstructure:"constant-kind"`
TimeDateMonth bool `mapstructure:"time-date-month"`
}
type UseTestingSettings ¶
type UseTestingSettings struct {
ContextBackground bool `mapstructure:"context-background"`
ContextTodo bool `mapstructure:"context-todo"`
OSChdir bool `mapstructure:"os-chdir"`
OSMkdirTemp bool `mapstructure:"os-mkdir-temp"`
OSSetenv bool `mapstructure:"os-setenv"`
OSTempDir bool `mapstructure:"os-temp-dir"`
OSCreateTemp bool `mapstructure:"os-create-temp"`
}
type VarnamelenSettings ¶
type VarnamelenSettings struct {
MaxDistance int `mapstructure:"max-distance"`
MinNameLength int `mapstructure:"min-name-length"`
CheckReceiver bool `mapstructure:"check-receiver"`
CheckReturn bool `mapstructure:"check-return"`
CheckTypeParam bool `mapstructure:"check-type-param"`
IgnoreNames []string `mapstructure:"ignore-names"`
IgnoreTypeAssertOk bool `mapstructure:"ignore-type-assert-ok"`
IgnoreMapIndexOk bool `mapstructure:"ignore-map-index-ok"`
IgnoreChanRecvOk bool `mapstructure:"ignore-chan-recv-ok"`
IgnoreDecls []string `mapstructure:"ignore-decls"`
}
type WSLv4Settings
deprecated
added in
v2.2.0
type WSLv4Settings struct {
StrictAppend bool `mapstructure:"strict-append"`
AllowAssignAndCallCuddle bool `mapstructure:"allow-assign-and-call"`
AllowAssignAndAnythingCuddle bool `mapstructure:"allow-assign-and-anything"`
AllowMultiLineAssignCuddle bool `mapstructure:"allow-multiline-assign"`
ForceCaseTrailingWhitespaceLimit int `mapstructure:"force-case-trailing-whitespace"`
AllowTrailingComment bool `mapstructure:"allow-trailing-comment"`
AllowSeparatedLeadingComment bool `mapstructure:"allow-separated-leading-comment"`
AllowCuddleDeclaration bool `mapstructure:"allow-cuddle-declarations"`
AllowCuddleWithCalls []string `mapstructure:"allow-cuddle-with-calls"`
AllowCuddleWithRHS []string `mapstructure:"allow-cuddle-with-rhs"`
AllowCuddleUsedInBlock bool `mapstructure:"allow-cuddle-used-in-block"`
ForceCuddleErrCheckAndAssign bool `mapstructure:"force-err-cuddling"`
ErrorVariableNames []string `mapstructure:"error-variable-names"`
ForceExclusiveShortDeclarations bool `mapstructure:"force-short-decl-cuddling"`
}
Deprecated: use WSLv5Settings instead.
type WSLv5Settings ¶ added in v2.2.0
type WSLv5Settings struct {
AllowFirstInBlock bool `mapstructure:"allow-first-in-block"`
AllowWholeBlock bool `mapstructure:"allow-whole-block"`
BranchMaxLines int `mapstructure:"branch-max-lines"`
CaseMaxLines int `mapstructure:"case-max-lines"`
Default string `mapstructure:"default"`
Enable []string `mapstructure:"enable"`
Disable []string `mapstructure:"disable"`
}
type WhitespaceSettings ¶
type WrapcheckSettings ¶
type WrapcheckSettings struct {
ExtraIgnoreSigs []string `mapstructure:"extra-ignore-sigs"`
IgnoreSigs []string `mapstructure:"ignore-sigs"`
IgnoreSigRegexps []string `mapstructure:"ignore-sig-regexps"`
IgnorePackageGlobs []string `mapstructure:"ignore-package-globs"`
IgnoreInterfaceRegexps []string `mapstructure:"ignore-interface-regexps"`
ReportInternalErrors bool `mapstructure:"report-internal-errors"`
}
Click to show internal directories.
Click to hide internal directories.