github.com/chenfeining/golangci-lint@v1.0.2-0.20230730162517-14c6c67868df/CHANGELOG.md (about)

     1  Follow the news and releases on our [twitter](https://twitter.com/golangci) and our [blog](https://medium.com/golangci).
     2  There is the most valuable changes log:
     3  
     4  ### v1.53.3
     5  
     6  1. updated linters:
     7     * `cyclop`: from 1.2.0 to 1.2.1
     8     * `exhaustive`: from 0.10.0 to 0.11.0
     9     * `forbidigo`: from 1.5.1 to 1.5.3
    10     * `ginkgolinter`: from 0.12.2 to 0.12.1
    11     * `ineffassign`: bump to HEAD
    12     * `nakedret`: from 2.0.1 to 2.0.2
    13     * `zerologlint`: from 0.1.1 to 0.1.2
    14  2. misc.
    15     * codeclimate: reduce memory allocation
    16     * support illumos/amd64
    17  
    18  ### v1.53.2
    19  
    20  1. updated linters
    21     * `depguard`: from v2.0.1 to 2.1.0
    22  2. misc.
    23     * `depguard`: throw error only when the linter is called
    24  
    25  ### v1.53.1
    26  
    27  1. misc.
    28     * `depguard`: fix GOROOT detection
    29     * `importas`: fix duplication detection when aliases use regular expression replacement pattern
    30  
    31  ### v1.53.0
    32  
    33  1. new linters
    34     * `gosmopolitan`: https://github.com/xen0n/gosmopolitan
    35     * `mirror`: https://github.com/butuzov/mirror
    36     * `tagalign`: https://github.com/4meepo/tagalign
    37     * `zerologlint`: https://github.com/ykadowak/zerologlint
    38  2. updated linters
    39     * `bodyclose`: bump to HEAD
    40     * `containedctx`: from 1.0.2 to 1.0.3
    41     * `depguard`: migrate to v2
    42     * `errname`: from 0.1.9 to 0.1.10
    43     * `exhaustive`: from 0.9.5 to 0.10.0
    44     * `forbidigo`: better support for configuring complex rules
    45     * `gci`: improve error message
    46     * `ginkgolinter`: add suppress-async-assertion option
    47     * `ginkgolinter`: from 0.9.0 to 0.12.0
    48     * `go-critic`: from 0.7.0 to 0.8.1
    49     * `go-errorlint`: from 1.4.0 to 1.4.2
    50     * `gofumpt`: from 0.4.0 to 0.5.0
    51     * `gosec`: convert global settings as map with proper key type
    52     * `gosec`: from 2.15.0 to 2.16.0
    53     * `importas`: detect duplicate alias or package in the configuration
    54     * `importas`: fix typo in logs
    55     * `ireturn`: from 0.1.1 to 0.2.0
    56     * `musttag`: from 0.5.0 to 0.7.0
    57     * `nakedret`: to 2.0.1
    58     * `nilnil`: from 0.1.3 to 0.1.5
    59     * `paralleltest`: from 1.0.6 to 1.0.7
    60     * `revive`: from 1.3.1 to 1.3.2
    61     * `tagliatelle`: from 0.4.0 to 0.5.0
    62     * `usestdlibvars`: fix configuration
    63  3. misc.
    64     * `golang.org/x/tools`: from 0.7.0 to 0.9.2
    65     * add loongarch64 to the install script
    66     * output: add colored-tab
    67     * remove warning when the config file is explicitly stdin
    68     * rules: support inverted path match
    69  4. Documentation
    70     * `mnd`: clarify ignore usage examples to be regexps
    71     * `tagliatelle`: update documentation
    72     * improve features section
    73     * update supported Go versions FAQ
    74  
    75  ### v1.52.2
    76  
    77  1. updated linters
    78     * `tparallel`: from 0.3.0 to 0.3.1
    79  2. misc.
    80     * fix: pre-commit `require_serial` and `pass_filenames`
    81  
    82  ### v1.52.1
    83  
    84  1. misc.
    85     * fix: improve panic management
    86     * fix: the combination of --fix and --path-prefix
    87  
    88  ### v1.52.0
    89  
    90  1. updated linters
    91     * `asciicheck`: from 0.1.1 to 0.2.0
    92     * `bidichk`: from 0.2.3 to 0.2.4
    93     * `contextcheck`: from 1.1.3 to 1.1.4
    94     * `dupword`: from 0.0.9 to 0.0.11
    95     * `durationcheck`: from 0.0.9 to 0.0.10
    96     * `errchkjson`: from 0.3.0 to 0.3.1
    97     * `errname`: from 0.1.7 to 0.1.9
    98     * `forbidigo`: from 1.4.0 to 1.5.1
    99     * `gci`: from 0.9.1 to 0.10.1
   100     * `ginkgolinter`: from 0.8.1 to 0.9.0
   101     * `go-critic`: from 0.6.7 to 0.7.0
   102     * `go-errorlint`: from 1.1.0  to 1.4.0
   103     * `godox`: bump to HEAD
   104     * `lll`: skip go command
   105     * `loggercheck`: from 0.9.3 to 0.9.4
   106     * `musttag`: from 0.4.5 to 0.5.0
   107     * `nilnil`: from 0.1.1 to 0.1.3
   108     * `noctx`: from 0.0.1 to 0.0.2
   109     * `revive`: from 1.2.5 to 1.3.1
   110     * `rowserrcheck`: remove limitation related to generics support
   111     * `staticcheck`: from 0.4.2 to 0.4.3
   112     * `testpackage`: from 1.1.0 to 1.1.1
   113     * `tparallel`: from 0.2.1 to 0.3.0
   114     * `wastedassign`: remove limitation related to generics support
   115     * `wrapcheck`: from 2.8.0 to 2.8.1
   116  2. misc.
   117     * Add TeamCity output format
   118     * Consider path prefix when matching path patterns
   119     * Add Go version to version information
   120  3. Documentation
   121     * Add Tekton in Trusted By page
   122     * Clarify that custom linters are not enabled by default
   123     * Remove description for deprecated "go" option
   124  
   125  ### v1.51.2
   126  
   127  1. updated linters
   128     * `forbidigo`: from 1.3.0 to 1.4.0
   129     * `gci`: from 0.9.0 to 0.9.1
   130     * `go-critic`: from 0.6.5 to 0.6.7
   131     * `go-errorlint`: from 1.0.6 to 1.1.0
   132     * `gosec`: from 2.14.0 to 2.15.0
   133     * `musttag`: from 0.4.4 to 0.4.5
   134     * `staticcheck`: from 0.4.0 to 0.4.2
   135     * `tools`: from 0.5.0 to 0.6.0
   136     * `usestdlibvars`: from 1.21.1 to 1.23.0
   137     * `wsl`: from 3.3.0 to 3.4.0
   138     * `govet`: enable `timeformat` by default
   139  2. misc.
   140     * fix: cache status size calculation
   141     * add new source archive
   142  3. Documentation
   143     * Improve installation section
   144     * Replace links to godoc.org with pkg.go.dev
   145  
   146  ### v1.51.1
   147  
   148  1. updated linters
   149     * `ginkgolinter`: from 0.7.1 to 0.8.1
   150     * `ineffassign`: bump to HEAD
   151     * `musttag`: from 0.4.3 to 0.4.4
   152     * `sqlclosecheck`: from 0.3.0 to 0.4.0
   153     * `staticcheck`: bump to v0.4.0
   154     * `wastedassign`: from 2.0.6 to 2.0.7
   155     * `wrapcheck`: from 2.7.0 to 2.8.0
   156  
   157  ### v1.51.0
   158  
   159  1. new linters
   160     * `ginkgolinter`: https://github.com/nunnatsa/ginkgolinter
   161     * `musttag`: https://github.com/tmzane/musttag
   162     * `gocheckcompilerdirectives`: https://github.com/leighmcculloch/gocheckcompilerdirectives
   163  2. updated linters
   164     * `bodyclose`: to HEAD
   165     * `dupword`: from 0.0.7 to 0.0.9
   166     * `errcheck`: from 1.6.2 to 1.6.3
   167     * `exhaustive`: from 0.8.3 to 0.9.5
   168     * `exportloopref`: from 0.1.8 to 0.1.11
   169     * `gci`: from 0.8.1 to 0.9.0
   170     * `ginkgolinter`: from 0.6.0 to 0.7.1
   171     * `go-errorlint`: from 1.0.5 to 1.0.6
   172     * `go-ruleguard`: from 0.3.21 to 0.3.22
   173     * `gocheckcompilerdirectives`: from 1.1.0 to 1.2.1
   174     * `gochecknoglobals`: from 0.1.0 to 0.2.1
   175     * `gomodguard`: from 1.2.4 to 1.3.0
   176     * `gosec`: from 2.13.1 to 2.14.0
   177     * `govet`: Add `timeformat` to analysers
   178     * `grouper`: from 1.1.0 to 1.1.1
   179     * `musttag`: from 0.4.1 to 0.4.3
   180     * `revive`: from 1.2.4 to 1.2.5
   181     * `tagliatelle`: from 0.3.1 to 0.4.0
   182     * `tenv`: from 1.7.0 to 1.7.1
   183     * `unparam`: bump to HEAD
   184     * `usestdlibvars`: from 1.20.0 to 1.21.1
   185     * `wsl`: fix `force-err-cuddling` flag
   186  3. misc.
   187     * go1.20 support
   188     * remove deprecated linters from presets
   189     * Build NetBSD binaries
   190     * Build loong64 binaries
   191  4. Documentation
   192     * `goimport`: improve documentation for local-prefixes
   193     * `gomnd`: add missing always ignored functions
   194     * `nolint`: fix typo
   195     * `tagliatelle` usage typo
   196     * add note about binary requirement for plugin
   197     * cache preserving and colored output on docker runs
   198     * improve documentation about debugging.
   199     * improve Editor Integration section
   200     * More specific default cache directory
   201     * update output example to use valid checkstyle example; add json example
   202  
   203  ### v1.50.1
   204  
   205  1. updated linters
   206     * `contextcheck`: from 1.1.2 to 1.1.3
   207     * `go-mnd`: from 2.5.0 to 2.5.1
   208     * `wrapcheck`: from 2.6.2 to 2.7.0
   209     * `revive`: fix configuration parsing
   210     * `lll`: skip imports
   211  2. misc.
   212     * windows: remove redundant character escape '\/'
   213     * code-climate: add default severity
   214  
   215  ### v1.50.0
   216  
   217  1. new linters
   218     * `dupword`: https://github.com/Abirdcfly/dupword
   219     * `testableexamples`: https://github.com/maratori/testableexamples
   220  2. updated linters
   221     * `contextcheck`: change owner
   222     * `contextcheck`: from 1.0.6 to 1.1.2
   223     * `depguard`: from 1.1.0 to 1.1.1
   224     * `exhaustive`: add missing config
   225     * `exhaustive`: from 0.8.1 to 0.8.3
   226     * `gci`: from 0.6.3 to 0.8.0
   227     * `go-critic`: from 0.6.4 to 0.6.5
   228     * `go-errorlint`: from 1.0.2 to 1.0.5
   229     * `go-reassign`: v0.1.2 to v0.2.0
   230     * `gofmt`: add option `rewrite-rules`
   231     * `gofumpt` from 0.3.1 to 0.4.0
   232     * `goimports`: update to HEAD
   233     * `interfacebloat`: fix configuration loading
   234     * `logrlint`: rename `logrlint` to `loggercheck`
   235     * `paralleltest`: add tests of the ignore-missing option
   236     * `revive`: from 1.2.3 to 1.2.4
   237     * `usestdlibvars`: from 1.13.0 to 1.20.0
   238     * `wsl`: support all configs and update docs
   239  3. misc.
   240     * Normalize `exclude-rules` paths for Windows
   241     * add riscv64 to the install script
   242  4. Documentation
   243     * cli: remove reference to old service
   244  
   245  ### v1.49.0
   246  
   247  IMPORTANT: `varcheck` and `deadcode` has been removed of default linters.
   248  
   249  1. new linters
   250     * `interfacebloat`: https://github.com/sashamelentyev/interfacebloat
   251     * `logrlint`: https://github.com/timonwong/logrlint
   252     * `reassign`: https://github.com/curioswitch/go-reassign
   253  2. updated linters
   254     * `go-colorable`: from 0.1.12 to 0.1.13
   255     * `go-critic`: from 0.6.3 to 0.6.4
   256     * `go-errorlint`: from 1.0.0 to 1.0.2
   257     * `go-exhaustruct`: from 2.2.2 to 2.3.0
   258     * `gopsutil`: from 3.22.6 to 3.22.7
   259     * `gosec`: from 2.12.0 to 2.13.1
   260     * `revive`: from 1.2.1 to 1.2.3
   261     * `usestdlibvars`: from 1.8.0 to 1.13.0
   262     * `contextcheck`: from v1.0.4 to v1.0.6 && re-enable
   263     * `nosnakecase`: This linter is deprecated.
   264     * `varcheck`: This linter is deprecated use `unused` instead.
   265     * `deadcode`: This linter is deprecated use `unused` instead.
   266     * `structcheck`: This linter is deprecated use `unused` instead.
   267  3. documentation
   268     * `revive`: fix wrong URL
   269     * Add a section about default exclusions
   270     * `usestdlibvars`: fix typo in documentation
   271     * `nolintlint`: remove allow-leading-space option
   272     * Update documentation and assets
   273  4. misc.
   274     * dev: rewrite the internal tests framework
   275     * fix: exit early on run --version
   276     * fix: set an explicit `GOROOT` in the Docker image for `go-critic`
   277  
   278  ### v1.48.0
   279  
   280  1. new linters
   281     * `usestdlibvars`:https://github.com/sashamelentyev/usestdlibvars
   282  2. updated linters
   283     * `contextcheck`: disable linter
   284     * `errcheck`: from 1.6.1 to 1.6.2
   285     * `gci`: add missing `custom-order` setting
   286     * `gci`: from 0.5.0 to 0.6.0
   287     * `ifshort`: deprecate linter
   288     * `nolint`: drop allow-leading-space option and add "nolint:all"
   289     * `revgrep`: bump to HEAD
   290  3. documentation
   291     * remove outdated info on source install
   292  4. misc
   293     * go1.19 support
   294  
   295  ### v1.47.3
   296  
   297  1. updated linters:
   298     * remove some go1.18 limitations
   299     * `asasalint`: from 0.0.10 to 0.0.11
   300     * `decorder`: from 0.2.2 to v0.2.3
   301     * `gci`: fix panic with invalid configuration option
   302     * `gci`: from 0.4.3 to v0.5.0
   303     * `go-exhaustruct`: from 2.2.0 to 2.2.2
   304     * `gomodguard`: from 1.2.3 to 1.2.4
   305     * `nosnakecase`: from 1.5.0 to 1.7.0
   306     * `honnef.co/go/tools`: from 0.3.2 to v0.3.3
   307  2. misc
   308     * cgo: fix linters ignoring CGo files
   309  
   310  ### v1.47.2
   311  
   312  1. updated linters:
   313     * `revive`: ignore slow rules
   314  
   315  ### v1.47.1
   316  
   317  1. updated linters:
   318     * `gci`: from 0.4.2 to 0.4.3
   319     * `gci`: remove the use of stdin
   320     * `gci`: fix options display
   321     * `tenv`: from 1.6.0 to 1.7.0
   322     * `unparam`: bump to HEAD
   323  
   324  ### v1.47.0
   325  
   326  1. new linters:
   327     * `asasalint`: https://github.com/alingse/asasalint
   328     * `nosnakecase`: https://github.com/sivchari/nosnakecase
   329  2. updated linters:
   330     * `decorder`: from 0.2.1 to 0.2.2
   331     * `errcheck`: from 1.6.0 to 1.6.1
   332     * `errname`: from 0.1.6 to 0.1.7
   333     * `exhaustive`: from 0.7.11 to 0.8.1
   334     * `gci`: fix issues and re-enable autofix
   335     * `gci`: from 0.3.4 to 0.4.2
   336     * `go-exhaustruct`: from 2.1.0 to 2.2.0
   337     * `go-ruleguard`: from 0.3.19 to 0.3.21
   338     * `gocognit`: from 1.0.5 to 1.0.6
   339     * `gocyclo`: from 0.5.1 to 0.6.0
   340     * `golang.org/x/tools`: bump to HEAD
   341     * `gosec`: allow `global` config
   342     * `gosec`: from 2.11.0 to 2.12.0
   343     * `nonamedreturns`: from 1.0.1 to 1.0.4
   344     * `paralleltest`: from 1.0.3 to 1.0.6
   345     * `staticcheck`: fix generics
   346     * `staticcheck`: from 0.3.1 to 0.3.2
   347     * `tenv`: from 1.5.0 to 1.6.0
   348     * `testpackage`: from 1.0.1 to 1.1.0
   349     * `thelper`: from 0.6.2 to 0.6.3
   350     * `wrapcheck`: from 2.6.1 to 2.6.2
   351  3. documentation:
   352     * add thanks page
   353     * add a clear explanation about the `staticcheck` integration.
   354     * `depguard`: add `ignore-file-rules`
   355     * `depguard`: adjust phrasing
   356     * `gocritic`: add `enable` and `disable` ruleguard settings
   357     * `gomnd`: fix typo
   358     * `gosec`: add configs for all existing rules
   359     * `govet`: add settings for `shadow` and `unusedresult`
   360     * `thelper`: add `fuzz` config and description
   361     * linters: add defaults
   362  
   363  ### v1.46.2
   364  
   365  1. updated linters:
   366     * `execinquery`: bump from v1.2.0 to v1.2.1
   367     * `errorlint`: bump to v1.0.0
   368     * `thelper`: allow to disable one option
   369  2. documentation:
   370     * rename `.golangci.example.yml` to `.golangci.reference.yml`
   371     * add `containedctx` linter to the list of available linters
   372  
   373  ### v1.46.1
   374  
   375  1. updated linters:
   376     * `execinquery`: bump from v0.6.0 to v0.6.1
   377  2. documentation:
   378     * add missing linters
   379  
   380  ### v1.46.0
   381  
   382  1. new linters:
   383     * `execinquery`: https://github.com/lufeee/execinquery
   384     * `nonamedreturns`: https://github.com/firefart/nonamedreturns
   385     * `nosprintfhostport`: https://github.com/stbenjam/no-sprintf-host-port
   386     * `exhaustruct`: https://github.com/GaijinEntertainment/go-exhaustruct
   387  2. updated linters:
   388     * `bidichk`: from 0.2.2 to 0.2.3
   389     * `deadcode`: bump to HEAD
   390     * `errchkjson`: from 0.2.3 to 0.3.0
   391     * `errname`: from 0.1.5 to 0.1.6
   392     * `go-critic`: from 0.6.2 to 0.6.3
   393     * `gocyclo`: from 0.4.0 to 0.5.1
   394     * `gofumpt` from 0.3.0 to 0.3.1
   395     * `gomoddirectives`: from 0.2.2 to 0.2.3
   396     * `gosec`: from 2.10.0 to 2.11.0
   397     * `honnef.co/go/tools`: from 0.2.2to 0.3.1 (go1.18 support)
   398     * `nilnil`: from 0.1.0 to 0.1.1
   399     * `nonamedreturns`: bump from 1.0.0 to 1.0.1
   400     * `predeclared`: from 0.2.1 to 0.2.2
   401     * `promlinter`: bump to v0.2.0
   402     * `revive`: from 1.1.4 to 1.2.1
   403     * `tenv`: from 1.4.7 to 1.5.0
   404     * `thelper`: from 0.5.1 to 0.6.2
   405     * `unused`: fix false-positive
   406     * `varnamelen`: bump to v0.8.0
   407     * `wrapcheck`: from 2.5.0 to 2.6.1
   408     * `exhaustivestruct`: This linter is deprecated use `exhaustruct` instead.
   409  3. documentation:
   410     * Update "Shell Completion" instruction on Linux
   411     * Update FAQ page
   412  4. misc:
   413     * log: enable override coloring based on `CLICOLOR` and `CLICOLOR_FORCE`
   414  
   415  ### v1.45.2
   416  
   417  1. misc:
   418     * fix: help command
   419  
   420  ### v1.45.1
   421  
   422  1. updated linters:
   423     * `interfacer`: inactivate with go1.18
   424     * `govet`: inactivate unsupported analyzers (go1.18)
   425     * `depguard`: reduce requirements
   426     * `structcheck`: inactivate with go1.18
   427     * `varnamelen`: bump from v0.6.0 to v0.6.1
   428  2. misc:
   429     * Automatic Go version detection 🎉 (go1.18)
   430     * docker: update base images (go1.18)
   431  
   432  ### v1.45.0
   433  
   434  1. updated linters:
   435     * `cobra`: from 1.3.0 to 1.4.0
   436     * `containedctx`: from 1.0.1 to 1.0.2
   437     * `errcheck`: add an option to remove default exclusions
   438     * `gci`: from 0.3.1 to 0.3.2
   439     * `go-header`: from 0.4.2 to 0.4.3
   440     * `gofumpt`: add module-path setting
   441     * `gofumpt`: from 0.2.1 to 0.3.0
   442     * `gopsutil`: from 3.22.1 to 3.22.2
   443     * `gosec`: from 2.9.6 to 2.10.0
   444     * `makezero`: from 1.1.0 to 1.1.1
   445     * `revive`: fix default values
   446     * `wrapcheck`: from 2.4.0 to 2.5.0
   447  2. documentation:
   448     * docs: add "back to the top" button
   449     * docs: add `forbidigo` example that uses comments
   450     * docs: improve linters page
   451  3. misc:
   452     * go1.18 support 🎉
   453     * Add an option to manage the targeted version of Go
   454     * Default to YAML when config file has no extension
   455  
   456  ### v1.44.2
   457  
   458  1. updated linters:
   459     * `gci`: bump to HEAD
   460     * `gci`: restore defaults for sections
   461     * `whitespace`: from 0.0.4 to 0.0.5
   462  2. documentation:
   463     * add link to configuration in the linters list
   464  
   465  ### v1.44.1
   466  
   467  1. updated linters:
   468     * `bidichk`: from 0.2.1 to 0.2.2
   469     * `errchkjson`: from 0.2.1 to 0.2.3
   470     * `thelper`: from 0.5.0 to 0.5.1
   471     * `tagliatelle`: from 0.3.0 to 0.3.1
   472     * `gopsutil`: from 3.21.12 to 3.22.1
   473     * `gci`: from 0.2.9 to 0.3.0
   474     * `revive`: from v1.1.3 to v1.1.4
   475     * `varnamelen`: from v0.5.0 to v0.6.0
   476  2. documentation:
   477     * linters: improve configuration pages
   478     * `decorder`: fix `disable-init-func-first-check: false` elaboration
   479  3. misc:
   480     * fix debug output
   481  
   482  ### v1.44.0
   483  
   484  1. new linters:
   485     * `containedctx`: https://github.com/sivchari/containedctx
   486     * `decorder`: https://gitlab.com/bosi/decorder
   487     * `errchkjson`: https://github.com/breml/errchkjson
   488     * `maintidx`: https://github.com/yagipy/maintidx
   489     * `grouper`: https://github.com/leonklingele/grouper
   490  2. updated linters:
   491     * `asciicheck`: bump to v0.1.1
   492     * `bidichk`: from 0.1.1 to 0.2.1
   493     * `bodyclose`: bump to HEAD
   494     * `decorder`: from 0.2.0 to 0.2.1
   495     * `depguard`: from 1.0.1 to 1.1.0
   496     * `errchkjson`: from 0.2.0 to 0.2.1
   497     * `errorlint`: bump to HEAD
   498     * `exhaustive`: drop deprecated/unused settings
   499     * `exhaustive`: from v0.2.3 to 0.7.11
   500     * `forbidigo`: from 1.2.0 to 1.3.0
   501     * `forcetypeassert`: bump to v0.1.0
   502     * `gocritic`: from 0.6.1 to 0.6.2
   503     * `gocritic`: support autofix
   504     * `gocyclo`: from 0.3.1 to 0.4.0
   505     * `godot`: add period option
   506     * `gofumpt`: from 0.1.1 to 0.2.1
   507     * `gomnd`: from 2.4.0 to 2.5.0
   508     * `gomnd`: new configuration
   509     * `gosec`: from 2.9.1 to 2.9.6
   510     * `ifshort`: from 1.0.3 to 1.0.4
   511     * `ineffassign`: bump to HEAD
   512     * `makezero`: to v1.1.0
   513     * `promlinter`: from v0.1.0 to HEAD
   514     * `revive`: fix `enableAllRules`
   515     * `revive`: from 1.1.2 to 1.1.3
   516     * `staticcheck`: from 0.2.1 to 0.2.2
   517     * `tagliatelle`: from 0.2.0 to 0.3.0
   518     * `thelper`: from 0.4.0 to 0.5.0
   519     * `unparam`: bump to HEAD
   520     * `varnamelen`: bump to v0.5.0
   521     * `wrapcheck`: update configuration to include `ignoreSignRegexps`
   522  3. documentation:
   523     * linters: improve pages about configuration
   524     * improve page about false-positive
   525     * `nolintlint`: fix wrong default value in comment
   526     * `revive`: add a more detailed configuration
   527  4. misc:
   528     * outputs: Add support for multiple outputs
   529     * outputs: Print error text in `<failure>` tag content for more readable JUnit output
   530     * outputs: ensure that the Issues key in JSON format is a list
   531     * Return error if any linter fails to run
   532     * cli: Show deprecated mark in the CLI linters help
   533  
   534  ### November 2021
   535  
   536  1. new linters:
   537     * `bidichk`: https://github.com/breml/bidichk
   538  2. update linters:
   539     * `nestif`: from 0.3.0 to 0.3.1
   540     * `rowserrcheck`: from 1.1.0 to 1.1.1
   541     * `gopsutil`: from 3.21.9 to 3.21.10
   542     * `wrapcheck`: from 2.3.1 to 2.4.0
   543     * `gocritic`: add support for variable substitution in `ruleguard` path settings
   544  3. documentation:
   545     * improve `go-critic` documentation
   546     * improve `nolintlint` documentation
   547  4. Misc:
   548     * cli: don't hide `enable-all` option
   549  
   550  ### october 2021
   551  
   552  1. new linters:
   553     * `contextcheck`: https://github.com/kkHAIKE/contextcheck
   554     * `varnamelen`: https://github.com/blizzy78/varnamelen
   555  2. update linters:
   556     * `gochecknoglobals`: to v0.1.0
   557     * `gosec`: filter issues according to the severity and confidence
   558     * `errcheck`: empty selector name.
   559     * `ifshort`: from 1.0.2 to 1.0.3
   560     * `go-critic`: from 0.5.6 to 0.6.0
   561     * `gosec`: from 2.8.1 to 2.9.1
   562     * `durationcheck`: from 0.0.8 to 0.0.9
   563     * `wrapcheck`: from 2.3.0 to 2.3.1
   564     * `revive`: from 1.1.1 to 1.1.2
   565  
   566  ### September 2021
   567  
   568  1. new linters:
   569     * `ireturn`: https://github.com/butuzov/ireturn
   570     * `nilnil`: https://github.com/Antonboom/nilnil
   571     * `tenv`: https://github.com/sivchari/tenv
   572  2. update linters:
   573     * `errcheck`: update to HEAD
   574     * `errname`: from 0.1.4 to 0.1.5
   575     * `gci`: Parse the settings more similarly to the CLI
   576     * `godot`: from 1.4.9  to 1.4.11
   577     * `ireturn`: from 0.1.0 to 0.1.1
   578     * `nlreturn`: add block-size option
   579     * `paralleltest`: from 1.0.2 to 1.0.3
   580  3. Misc:
   581     * new-from-rev: add support for finding issues in entire files in a diff
   582  
   583  ### August 2021
   584  
   585  1. new linters:
   586     * `errname`: https://github.com/Antonboom/errname
   587  2. update linters:
   588     * `errname`: from 0.1.3 to 0.1.4
   589     * `go-critic`: fix invalid type conversions.
   590     * `godot`: from 1.4.8 to 1.4.9
   591     * `gomodguard`: from 1.2.2 to 1.2.3
   592     * `revive`: from 1.0.9 to 1.1.1
   593     * `staticcheck`: bump to 2021.1.1 (v0.2.1)
   594     * `wrapcheck`: bump to v2.3.0
   595  3. Misc:
   596     * build binaries and Docker images with go1.17
   597  
   598  ### July 2021
   599  
   600  1. update linters:
   601     * `errcheck`: allow exclude config without extra file
   602     * `exhaustive`: from 0.1.0 to 0.2.3
   603     * `gocognit`: from 1.0.1 to 1.0.5
   604     * `godot`: from 1.4.7 to 1.4.8
   605     * `gomoddirectives`: from 0.2.1 to 0.2.2
   606     * `revive`: from 1.0.8 to 1.0.9
   607  2. documentation:
   608     * improve `goconst` documentation
   609     * improve `goimports` description
   610  
   611  ### June 2021
   612  
   613  1. update linters:
   614     * `durationcheck`: from 0.0.7 to 0.0.8
   615     * `gci`: from 0.2.8 to 0.2.9
   616     * `goconst`: from 0.5.6 to 0.5.7
   617     * `gofumpt`: Add lang-version option
   618     * `gomodguard`: from 1.2.1 to 1.2.2
   619     * `gosec`: from 2.8.0 to 2.8.1
   620     * `revive`: add enable-all-rules.
   621     * `revive`: allow to disable rule
   622     * `revive`: fix exclude comment rule for const block
   623     * `revive`: from 1.0.7 to 1.0.8
   624     * `wrapcheck`: from 2.1.0 to 2.2.0
   625  2. documentation:
   626     * add all integrations to docs introduction page
   627  3. Misc:
   628     * 🎉 Un-deprecate enable-all option
   629     * output: generate HTML report
   630     * Support RISV64
   631  
   632  ### May 2021
   633  
   634  1. new linters:
   635     * `tagliatelle`: https://github.com/ldez/tagliatelle
   636     * `promlinter`: https://github.com/yeya24/promlinter
   637  2. update linters:
   638     * `durationcheck`: from 0.0.6 to 0.0.7
   639     * `errorlint`: bump to HEAD
   640     * `forbidigo`: from 1.1.0 to 1.2.0
   641     * `go-critic`: from 0.5.5 to 0.5.6
   642     * `godot`: from 1.4.6 to 1.4.7
   643     * âš  `golint`: deprecated
   644     * `gomnd`: from 2.3.2 to 2.4.0
   645     * `gomodguard`: fix problem where duplicate issues were reported
   646     * `gosec`: from 2.7.0 to 2.8.0
   647     * `govet`: fix `sigchanyzer`
   648     * `govet`: Update vet passes
   649     * `importas`: allow repeated aliases
   650     * `importas`: bump to HEAD
   651     * `makezero`: bump to HEAD
   652     * `nolintlint`: fix false positive
   653     * `revive`: convert hard coded excludes into default exclude patterns
   654     * `revive`: fix add-constant rule support
   655     * `revive`: fix excludes
   656     * `revive`: from 1.0.6 to 1.0.7
   657     * `revive`: improve 'exported' rule output
   658     * `rowserrcheck`: bump to v1.1.0
   659     * `staticcheck`: configuration for `staticcheck`, `gosimple`, `stylecheck`
   660     * `staticcheck`: from 0.1.3 to 0.1.4
   661     * `staticcheck`: from v0.1.4 to v0.2.0
   662     * `wastedassign`: from 0.2.0 to 1.0.0
   663     * `wastedassign`: from 1.0.0 to v2.0.6
   664     * `wrapcheck`: from 1.2.0 to 2.1.0
   665  3. documentation:
   666     * improve linters page
   667     * `exhaustivestruct` example explanation
   668     * fix pattern of `forbidigo` in example config yaml
   669     * bump documentation dependencies
   670     * fix typos
   671  4. Misc:
   672     * set the minimum Go version to go1.15
   673     * non-zero exit code when a linter produces a panic
   674  
   675  ### April 2021
   676  
   677  1. new linters:
   678     * `tagliatelle`: https://github.com/ldez/tagliatelle
   679     * `promlinter`: https://github.com/yeya24/promlinter
   680  2. update linters:
   681     * `godot`: from 1.4.4 to 1.4.6
   682     * `wrapcheck`: from 1.0.0 to 1.2.0
   683     * `go-mnd`: from 2.3.1 to 2.3.2
   684     * `wsl`: from 3.2.0 to 3.3.0
   685     * `revive`: from 1.0.5 to 1.0.6
   686     * `importas`: bump to HEAD
   687     * `staticcheck`: configurable Go version
   688     * `gosec`: add configuration
   689     * `typecheck`: improve error stack parsing
   690  3. documentation:
   691     * bump documentation dependencies
   692     * fix typos
   693  4. Misc:
   694     * fix: comma in exclude pattern leads to unexpected results
   695  
   696  ### March 2021
   697  
   698  1. new linters:
   699     * `gomoddirectives`: https://github.com/ldez/gomoddirectives
   700  2. update linters:
   701     * `go-critic`: from 0.5.4 to 0.5.5
   702     * `gofumpt`: from v0.1.0 to v0.1.1
   703     * `gosec`: from 2.6.1 to 2.7.0
   704     * `ifshort`: bump to v1.0.2
   705     * `importas`: bump to HEAD
   706     * `makezero`: bump to HEAD
   707     * `nolintlint`: allow to fix //nolint lines
   708     * `revive`: from 1.0.3 to 1.0.5
   709     * `revive`: the default configuration is only applied when no dedicated configuration
   710     * `rowserrcheck`: bump to HEAD
   711     * âš  `scopelint`: deprecated
   712     * `staticcheck`: from v0.1.2 (2020.2.2) to v0.1.3 (2020.2.3)
   713     * 🎉 `typecheck`: display compilation errors as report instead of error
   714     * `wastedassign`: bump to v0.2.0
   715     * `wrapcheck`: bump to v1.0.0
   716  3. documentation:
   717     * improve [linters page](https://golangci-lint.run/usage/linters/) (versions, deprecation, and presets)
   718     * add [cache directory](https://golangci-lint.run/usage/configuration/#cache) information
   719     * adding missing format options
   720     * fix typos
   721  4. Misc:
   722     * Set `version` command output to Stdout
   723     * fix linters load mode
   724     * Restore fast linters meaning
   725  
   726  ### February 2021
   727  
   728  1. new linters:
   729     * `durationcheck`: https://github.com/charithe/durationcheck
   730     * `revive`: https://github.com/mgechev/revive
   731     * `cyclop`: https://github.com/bkielbasa/cyclop
   732     * `wastedassign`: https://github.com/sanposhiho/wastedassign
   733     * `importas`: https://github.com/julz/importas
   734     * `nilerr`: https://github.com/gostaticanalysis/nilerr
   735     * `forcetypeassert`: https://github.com/gostaticanalysis/forcetypeassert
   736     * `govet`: add `stringintconv` and `ifaceassert`
   737  2. update linters:
   738     * `prealloc`: Use upstream version
   739     * `errcheck`: Use upstream version
   740     * `ineffassign`: Use upstream version
   741     * `gocyclo`: Use upstream version
   742     * `godot` from 1.3.2 to 1.4.3
   743     * `exhaustivestruct` from 1.1.0 to 1.2.0
   744     * `forbidigo` from 1.0.0 to 1.1.0
   745     * `thelper` from 0.2.1 to 0.3.1
   746     * `ruleguard`: print error message and exit with non-zero status when parsing error occurs
   747     * fix wrong load mode for `asciicheck`, `exhaustivestruct`, `exportloopref`, and `makezero`
   748     * `wsl`: bump to v3.2.0
   749     * `durationcheck`: from 0.0.4 to 0.0.6
   750     * `staticcheck`: from 2020.1.6 to v0.1.2 (2020.2.2)
   751     * `thelper` from 0.3.1 to 0.4.0
   752     * `bodyclose`: bump to HEAD
   753     * `go-err113`: bump to HEAD
   754     * âš  `interfacer`: deprecated
   755     * âš  `maligned`: deprecated (govet `fieldalignment` as replacement)
   756     * `govet`: use same default linter as go vet
   757     * `go-printf-func-name`: to `v0.0.0-20200119135958-7558a9eaa5af`
   758     * `godox`: to `v0.0.0-20210227103229-6504466cf951`
   759     * `asciicheck`: to `v0.0.0-20200416200610-e657995f937b`
   760     * `wrapcheck`: to `v0.0.0-20201130113247-1683564d9756`
   761     * `unparam`: to `v0.0.0-20210104141923-aac4ce9116a7`
   762  3. CLI: truncate multiline descriptions
   763  4. fix: new-from-rev for a large repository
   764  5. Support RelatedInformation for analysis Diagnostic
   765  6. use go1.16 to create binaries 
   766  7. fix: MIPS release
   767  8. documentation:
   768     * bump documentation dependencies
   769     * fix `go-header` usage
   770     * improve `gocritic` description
   771     * update deprecated hyperlink for Sublime Text plugin
   772     * add docs on using homebrew tap
   773  
   774  ### January 2021
   775  
   776  1. new linters:
   777     * `predeclared`: https://github.com/nishanths/predeclared
   778     * `ifshort`: https://github.com/esimonov/ifshort
   779  2. update linters:
   780     * `go-critic` from 0.5.2 to 0.5.3
   781     * `thelper` from 0.1.0 to 0.2.1
   782     * Validate `go-critic` settings
   783     * `gofumpt` to v0.1.0
   784     * `gci` to v0.2.8
   785     * `go-mnd` to v2.3.1
   786     * `gosec` from 2.5.0 to 2.6.1
   787     * `godot` from 1.3.2 to 1.4.3
   788     * `ifshort` to v1.0.1
   789     * `rowserrcheck`: fix reports false positive
   790  3. fix: modules-download-mode support
   791  4. documentation:
   792     * bump documentation dependencies
   793  
   794  ### December 2020
   795  
   796  1. new linters:
   797     * `forbidigo`: https://github.com/ashanbrown/forbidigo
   798     * `makezero`: https://github.com/ashanbrown/makezero
   799     * `thelper`: https://github.com/kulti/thelper
   800  2. update linters:
   801     * `go-header` from v0.3.1 to v0.4.2
   802     * `go-mnd` from v2.0.0 to v2.2.0
   803     * `godot` from v1.3.0 to v1.3.2
   804     * `gci` from v0.2.4 to v0.2.7
   805     * `gomodguard` from v1.1.0 to v1.2.0
   806     * `go-errorlint` from v0.0.0-20201006195004-351e25ade6e3 to v0.0.0-20201127212506-19bd8db6546f
   807     * `gofumpt` from v0.0.0-20200802201014-ab5a8192947d to v0.0.0-20201129102820-5c11c50e9475
   808     * `nolintlint` fix comment analysis. (#1571)
   809  3. result/processors: treat all non-Go source as special autogenerated files
   810  4. throw an error on panic. (#1540)
   811  5. resolve custom linters' path relative to config file directory (#1572)
   812  6. treat all non-Go source as special autogenerated files
   813  7. documentation:
   814     * add settings examples for `gocritic` (#1562)
   815     * removing reference to no-longer-existing linter-in-the-cloud (#1553)
   816  8. others:
   817     * bump `gopkg.in/yaml.v2` from 2.3.0 to 2.4.0 (#1528)
   818     * bump `gatsby-remark-responsive-iframe` in /docs (#1533)
   819     * bump `gatsby-remark-images` from 3.3.29 to 3.6.0 in /docs (#1531)
   820     * bump `ini` from 1.3.5 to 1.3.8 in /tools (#1560)
   821     * bump `react-headroom` from 3.0.0 to 3.0.1 in /docs (#1532)
   822     * bump `react-live` from 2.2.2 to 2.2.3 in /docs (#1534)
   823     * bump `react` from 16.13.1 to 16.14.0 in /docs (#1481)
   824     * Fix `forbidigo` linter name in reports (#1590)
   825  
   826  ### November 2020
   827  
   828  1. new linters:
   829     * `paralleltest`: https://github.com/kunwardeep/paralleltest
   830  2. update linters:
   831     * `godot` from v0.4.9 to v1.3.0
   832     * `exportloopref` from v0.1.7 to v0.1.8
   833     * `gosec` from 2.4.0 to 2.5.0
   834     * `goconst` using upstream https://github.com/jgautheron/goconst
   835  3. `DefaultExcludePatterns` should only be used for specified linter (#1494)
   836  4. unknown linter breaks //nolint (#1497)
   837  5. report all unknown linters at once (#1477)
   838  6. CI:
   839     * fix Docker tag for Alpine build
   840  7. documentation:
   841     * missing sort-results in the docs (#1514)
   842     * add description of Homebrew's official formula (#1421)
   843  8. others:
   844     * bump `golang.org/x/text` to v0.3.4 (#1293)
   845     * bump `github.com/fatih/color` to from 1.9.0 to 1.10.0 (#1485)
   846     * bump `lodash` from 4.17.15 to 4.17.19 in /.github/peril (#1252)
   847     * bump `polished` from 3.6.6 to 4.0.3 in /docs (#1482)
   848     * bump `gatsby-alias-imports` from 1.0.4 to 1.0.6 in /docs (#1479)
   849     * bump `puppeteer` from 5.3.1 to 5.4.1 in /docs (#1480)
   850     * bump `gatsby-remark-embedder` from 3.0.0 to 4.0.0 in /docs (#1478)
   851  
   852  ### October 2020
   853  
   854  1. new linters:
   855     * `exhaustivestruct`: https://github.com/mbilski/exhaustivestruct
   856     * `go-errorlint`: https://github.com/polyfloyd/go-errorlint
   857     * `tparallel`: https://github.com/moricho/tparallel
   858     * `wrapcheck`: https://github.com/tomarrell/wrapcheck
   859  2. update linters:
   860     * `honnef.co/go/tools` from 2020.1.5 to 2020.1.6
   861     * `exhaustivestruct` from v1.0.1 to v1.1.0
   862     * `exhaustive` to v0.1.0
   863     * `gochecknoglobals`: use https://github.com/leighmcculloch/gochecknoglobals
   864  3. add support for powershell completion (#1408)
   865  4. add `.golangci.yaml` to list of configuration files searched on startup (#1364)
   866  5. support for only specifying default severity (#1396)
   867  6. documentation:
   868     * mention macports installation procedure on macOS (#1352)
   869     * sort linters (#1451)
   870  7. CI:
   871     * add codeQL scanning (#1405)
   872     * fix version details in Docker image (#1471)
   873     * releasing docker image for arm64 (#1383)
   874     * change interval for npm to monthly (#1424)
   875  8. others:
   876     * use tag version for cobra (#1458)
   877     * bump `nancy` to 1.0.1 (#1410)
   878     * bump `gatsby-plugin-catch-links` in /docs (#1415)
   879     * bump `gatsby-plugin-mdx` from 1.2.40 to 1.2.43 in /docs (#1419)
   880     * bump `gatsby-plugin-sharp` from 2.6.31 to 2.6.40 in /docs (#1423)
   881     * bump `gatsby-plugin-sitemap` from 2.4.12 to 2.4.14 in /docs (#1417)
   882     * bump `github.com/mattn/go-colorable` from 0.1.7 to 0.1.8 (#1413)
   883     * bump `github.com/sirupsen/logrus` from 1.6.0 to 1.7.0 (#1412)
   884     * bump `github.com/sourcegraph/go-diff` from 0.6.0 to 0.6.1 (#1414)
   885     * bump `chenfeining/golangci-lint-action` from v2 to v2.3.0  (#1447) (#1469)
   886     * bump `puppeteer` from 3.3.0 to 5.3.1 in /docs (#1418)
   887  
   888  ### September 2020
   889  
   890  1. update linters:
   891     * `godot` from 0.4.8 to 0.4.9
   892     * `exhaustive` from v0.0.0-20200708172631-8866003e3856 to v0.0.0-20200811152831-6cf413ae40e0
   893     * `gofumpt` from v0.0.0-20200709182408-4fd085cb6d5f to v0.0.0-20200802201014-ab5a8192947d
   894  2. add support for fish completion (#1201)
   895  3. documentation:
   896     * fix typo in performance docs (#1350)
   897  4. CI:
   898     * prevent macos to be marked as passing upon failure (#1381)
   899     * check only for go.mod file (#1397)
   900     * check if go.mod and go.sum are up to dated (#1377)
   901     * trigger Netlify (#1358)
   902  5. others:
   903     * bump `github.com/sourcegraph/go-diff` from 0.5.3 to 0.6.0 (#1353)
   904     * bump `github.com/valyala/quicktemplate` from 1.6.2 to 1.6.3 (#1385)
   905     * ignore known dependency failure in nancy (#1378)
   906     * bump `@mdx-js/mdx` from 1.6.16 to 1.6.18 in /docs (#1401)
   907     * bump `gatsby` from 2.24.52 to 2.24.65 in /docs (#1400)
   908     * bump `gatsby-plugin-canonical-urls` in /docs (#1390)
   909     * bump `gatsby-plugin-google-analytics` in /docs (#1388)
   910     * bump `gatsby-plugin-manifest` from 2.4.23 to 2.4.27 in /docs (#1355)
   911     * bump `gatsby-plugin-mdx` from 1.2.35 to 1.2.40 in /docs (#1386)
   912     * bump `gatsby-plugin-offline` from 3.2.23 to 3.2.27 in /docs (#1368)
   913     * bump `gatsby-plugin-sharp` from 2.6.25 to 2.6.31 in /docs (#1354)
   914     * bump `gatsby-plugin-sitemap` from 2.4.11 to 2.4.12 in /docs (#1344)
   915     * bump `gatsby-remark-autolink-headers` in /docs (#1387)
   916     * bump `gatsby-remark-images` from 3.3.25 to 3.3.28 in /docs (#1345)
   917     * bump `gatsby-remark-images` from 3.3.28 to 3.3.29 in /docs (#1365)
   918     * bump `gatsby-remark-mermaid` from 2.0.0 to 2.1.0 in /docs (#1369)
   919     * bump `gatsby-source-filesystem` in /docs (#1366)
   920     * bump `gatsby-source-filesystem` in /docs (#1389)
   921     * bump `gatsby-transformer-sharp` in /docs (#1402)
   922     * bump `gatsby-transformer-yaml` from 2.4.10 to 2.4.11 in /docs (#1367)
   923     * bump `node-fetch` in /.github/contributors (#1363)
   924     * bump `polished` from 3.6.5 to 3.6.6 in /docs (#1347)
   925  
   926  ### August 2020
   927  
   928  1. new `nlreturn` linter: https://github.com/ssgreg/nlreturn
   929  2. new `gci` linter: https://github.com/daixiang0/gci
   930  3. support `latest` version of golangci-lint in golangci-lint-action
   931  4. update `gosec` linter from 2.3.0 to 2.4.0
   932  5. update `godot` linter from 0.4.2 to 0.4.8
   933  6. update `go-critic` from 0.5.0 to 0.5.2 (#1307)
   934  7. update `nlreturn` from 2.0.1 to 2.0.2 (#1287), 2.0.2 to 2.1.0 (#1327)
   935  8. update `gci` to v0.2.1 (#1292), to v0.2.2 (#1305), to v0.2.4 (#1337),
   936  9. update `funlen` from 0.0.2 to 0.0.3 (#1341)
   937  10. upgrade to golang 1.15 for smaller binary (#1303)
   938  11. support short and json formats for version cmd (#1315)
   939  12. add home directory to config file search paths (#1325)
   940  13. allow for serializing multiple golangci-lint invocations (#1302)
   941  
   942  ### July 2020
   943  
   944  1. `gofumpt` linter:
   945      * update linter
   946      * add `extra-rules` option
   947      * support auto-fixing
   948  2. upgrade `exhaustive` linter
   949  3. upgrade `exportloopref` linter
   950  4. improve 'no such linter' error message
   951  5. sorting result.Issues implementation
   952  6. enhancements in CI:
   953      * Run `nancy` validation for all dependencies
   954      * Move dependabot config to `.github` folder
   955  7. other
   956      * bump `lodash` from 4.17.15 to 4.17.19 in /tools
   957      * bump `chenfeining/golangci-lint-action` from v1.2.2 to v2
   958      * bump `github.com/valyala/quicktemplate` from 1.5.0 to 1.5.1
   959  
   960  
   961  ### June 2020
   962  
   963  1. Add new linters: `gofumpt`
   964  
   965  ### May 2020
   966  
   967  1. Add new linters: `nolintlint`, `goerr113`
   968  2. Updated linters: `godot`, `staticcheck`
   969  3. Launch a [website](https://golangci-lint.run)
   970  
   971  ### April 2020
   972  
   973  1. Add new linters: `testpackage`, `nestif`, `godot`, `gomodguard`, `asciicheck`
   974  2. Add github actions output format
   975  3. Update linters: `wsl`, `gomodguard`, `gosec`
   976  4. Support `disabled-tags` setting for `gocritic`
   977  5. Mitigate OOM and "failed prerequisites"
   978  6. Self-isolate due to unexpected pandemics
   979  7. Support case-sensitive excludes
   980  8. Allow granular re-enabling excludes by ID, e.g. `EXC0002`
   981  
   982  ### September 2019
   983  
   984  1. Support go1.13
   985  2. Add new linters: `funlen`, `whitespace` (with auto-fix) and `godox`
   986  3. Update linters: `gochecknoglobals`, `scopelint`, `gosec`
   987  4. Provide pre-built binary for ARM and FreeBSD
   988  5. 2. Fix false-positives in `unused`
   989  6. Support `--skip-dirs-use-default`
   990  7. Add support for bash completions
   991  
   992  ### July 2019
   993  
   994  1. Fix parallel writes race condition
   995  2. Update bodyclose with fixed panic
   996  
   997  ### June 2019
   998  
   999  1. Treat Go source files as a plain text by `misspell`: it allows detecting issues in strings, variable names, etc.
  1000  2. Implement richer and more stable auto-fix of `misspell` issues.
  1001  
  1002  ### May 2019
  1003  
  1004  1. Add [bodyclose](https://github.com/timakin/bodyclose) linter.
  1005  2. Support junit-xml output.
  1006  
  1007  ### April 2019
  1008  
  1009  1. Update go-critic, new checkers were added: badCall, dupImports, evalOrder, newDeref
  1010  2. Fix staticcheck panic on packages that do not compile
  1011  3. Make install script work on Windows
  1012  4. Fix compatibility with the latest x/tools version and update golang.org/x/tools
  1013  5. Correct import path of module sourcegraph/go-diff
  1014  6. Fix `max-issues-per-linter` name
  1015  7. Fix linting of preprocessed files (e.g. `*.qtpl.go`, goyacc)
  1016  8. Enable auto-fixing when running via pre-commit
  1017  
  1018  ### March 2019
  1019  
  1020  1. Support the newest `go vet` (with `go/analysis`)
  1021  2. Support configuration of `go vet`: e.g. you can set print functions by `linters-settings.govet.settings.printf.funcs`
  1022  3. Update megacheck (staticcheck) to 2019.1.1
  1023  4. Add [information](https://github.com/chenfeining/golangci-lint#memory-usage-of-golangci-lint) about controlling space-time trade-off into README
  1024  5. Exclude issues by source code line regexp by `issues.exclude-rules[i].source`
  1025  6. Build and test on go 1.12
  1026  7. Support `--color` option
  1027  8. Update x/tools to fix c++ issues
  1028  9. Include support for log level
  1029  10. Sort linters list in help commands