125 Commits

Author SHA1 Message Date
Simon Sawert
4a2147930a
Update wsl to v3.0.0
* Support to force cuddle with error checking
* Support to separate leading comments with empty lines
2020-03-15 13:36:57 +01:00
Markus Walther
cea7e67040
deps: upgrade mnd from v1.1.1 to 2.0.0 2020-03-10 21:08:28 +00:00
Isaev Denis
5f1096cf80
add goprintffuncname linter () 2020-01-19 16:46:51 +03:00
Trevor Pounds
1ac15487b2 Update to go-critic v0.4.1. 2020-01-12 17:36:58 -05:00
gaojingyu
e93138f00f Add rows.Err weather checked linter ()
Add rowserrcheck

Co-authored-by: Isaev Denis <idenx@yandex.com>
2020-01-08 14:08:16 +03:00
Hiroki Suezawa
7368dd3604 Update gosec and add column
Signed-off-by: Hiroki Suezawa <suezawa@gmail.com>
2020-01-04 17:08:51 -05:00
Trevor Pounds
a236783627 Update to github.com/go-critic/go-critic v0.4.0. 2019-12-29 19:43:24 -05:00
Trevor Pounds
2780e6f159 Update to github.com/spf13/viper v1.6.1. 2019-12-29 19:43:24 -05:00
Nuruddin Ashr
70abc4a01c Added the updated vendor 2019-12-19 11:06:03 +07:00
sayboras
bd2921655a Added go-mnd linter ()
* Initial commit

* Fixed goimports

* Update pkg/golinters/mnd.go

Co-Authored-By: Bot from GolangCI <42910462+golangcibot@users.noreply.github.com>

* Run goimports

* Update pkg/golinters/mnd.go

Co-Authored-By: Bot from GolangCI <42910462+golangcibot@users.noreply.github.com>

* Add prefix for goimport local

* Run make README.md

* Incorporate review comments
Add test cases

* Update readme

* Update the description

* Removed subpath in local-prefixes

* Update readme
2019-11-15 19:08:43 -05:00
Simon Sawert
0e5b7a04d5 Bump wsl to v2.0.0 2019-11-15 18:55:54 -05:00
Simon Sawert
8c1e2f004e Revert "Bump wsl to v1.2.7"
This reverts commit 14ebae29060f7c7be67d31a559986aa8afe7cbb0.
2019-11-15 18:55:54 -05:00
Simon Sawert
14ebae2906 Bump wsl to v1.2.7 2019-11-10 19:07:16 -05:00
Simon Sawert
22df2d739f Update WSL to v1.2.5 ()
* Update WSL to v1.2.4

* Fix false positive multiline case
* Fix false positive slice expression
* Fix false positive index expression
* Support to configure/allow cuddle declarations
* Support to configurre/allow case blocks to end with whitespace
* Support cuddle defer http body close

* Re-generate README.md

* Update WSL to v1.2.5

* Support output comments for example functions

* Fix bad field tag for config
2019-10-14 22:50:34 +03:00
Isaev Denis
48599c64ba
Make fine-grained hashing. ()
Speed up golint: don't typecheck packages twice.
Relates: 
2019-10-14 09:50:57 +03:00
Isaev Denis
64b62667c0
Lock by flock to prevent parallel runs () 2019-10-13 18:10:22 +03:00
Trevor Pounds
ee2e17f7e9 Update to latest securego/gosec ()
* Update to latest securego/gosec.

* Fix gosec G204 warnings.

* Add gosec G204 test.
2019-10-08 09:36:21 +03:00
Simon Sawert
d4b4ad8dfe Update WSL to v1.2.1 ()
* Update WSL to v1.2.1

* Add new tests for fixed false positives, don't derive defaults from WSL
2019-10-07 21:22:44 -04:00
Trevor Pounds
7577d548a3 Update to mattn/go-colorable v0.1.4. 2019-10-06 12:45:44 -04:00
Simon Sawert
3e09174bd2 Add WSL linter ()
* Add WSL linter

* Use v1.0.0 tag for wsl

* Don't add specific test file skip, use mutex to add errors

* Fix goimports error

* Add more tests for WSL, bump WSL version

* Fix bad go.sum (go mod tidy)
2019-10-04 16:03:40 -04:00
NiseVoid
fbbd24575f Update whitespace to v0.0.4 () 2019-10-04 15:12:07 +03:00
Nuruddin Ashr
92ec1a1f4c Add gocognit linter ()
* Add gocognit linter

* Remove gocognit to the golangci config

* Make changes on README.md

* Remove gocognit from megacheck benchtest

* Remove command line flags

* Comply with new style
2019-10-03 16:22:06 +03:00
Denis Isaev
bbb0e6b208 update bodyclose 2019-09-30 16:45:45 -04:00
Isaev Denis
95ec0cf21e
dramatically reduce memory usage ()
Run all linters per package. It allows unloading package data when it's
processed. It dramatically reduces memory (and CPU because of GC) usage.

Relates: 
2019-09-30 16:19:41 +03:00
Trevor Pounds
baff4ab35b Update to matoous/godox v1.0.
Dependency has to be pinned to commit hash since
tag is not a compatible semver supported by go.mod.
2019-09-29 12:47:53 -04:00
Trevor Pounds
c427c61253 Use separate go.mod/go.sum to manage tool deps. ()
Fixes downstream `go get` issues due to broken/invalid
transitive goreleaser dependencies.

Fixes 
2019-09-24 21:44:57 +03:00
Trevor Pounds
a16b4d872b Use stretchr/testify to mock log.
Simplifies test log usage and removes additional
targets and dependencies to go:generate mocks.
2019-09-24 11:58:40 -04:00
Denis Isaev
a2b2c7a7af Fix : update forked bodyclose 2019-09-24 12:15:43 +03:00
Denis Isaev
4e439b4304 Fix : use forked bodyclose
Until  merged use forked version.
2019-09-23 22:19:41 +03:00
Trevor Pounds
49297189a1 Manage build tools via go.mod. 2019-09-23 21:30:20 +03:00
NiseVoid
9976bdcc5e Update whitespace 2019-09-23 12:16:06 -04:00
Trevor Pounds
1040e34da2 Update to shirou/gopsutil v2.19.8. ()
Note, dependency has to be pinned to a specific release version
commit hashes since it doesn't follow Go module v2+ guidelines.

see:
https://github.com/shirou/gopsutil/issues/663
https://github.com/golang/go/issues/34402
2019-09-20 19:03:50 +03:00
Trevor Pounds
0eed06c99c Update to spf13/pflag v1.0.5. ()
Fixes 
Fixes https://github.com/spf13/pflag/issues/218
2019-09-19 13:58:28 +03:00
Isaev Denis
6a979fb40d
Update staticcheck and cache go/analysis facts ()
* update staticcheck

Don't fork staticcheck: use the upstream version.
Remove unneeded SSA loading.

* Cache go/analysis facts

Don't load unneeded packages for go/analysis.
Repeated run of go/analysis linters now 10x faster
(2s vs 20s on this repo) than before.
2019-09-17 08:42:16 +03:00
Trevor Pounds
0e0cd753d2 Update to valyala/quicktemplate v1.2.0 ()
* Update to valyala/quicktemplate v1.2.0.

* Cleanup out-of-band dep updates that bypass go.mod.
2019-09-16 19:51:29 +03:00
Will Dixon
9161de5b7d Upgrade depguard to fix performance issue with go modules ()
* Upgrade depguard to fix performance issue with go modules

* Fix linting error of unused function
2019-09-15 14:13:16 +03:00
Trevor Pounds
e750fd1d15 Update to latest securego/gosec. ()
Fixes https://github.com/securego/gosec/pull/366.
2019-09-14 19:34:59 +03:00
Trevor Pounds
2e8d83266f Update dependencies. ()
* Update deps.

* Update to Node.js v10.16.3 LTS.

* Fix mock logutils generation.
2019-09-12 16:02:43 +03:00
Isaev Denis
bf67a3eef3
update gosec () 2019-09-11 17:46:26 +03:00
Isaev Denis
94eaa8f196
update go-critic ()
Go-critic got a new checker `regexpPattern`.
2019-09-11 16:56:33 +03:00
Matouš Dzivjak
58845813da linters: add Godox linter support ()
Godox is linter for TODOs and FIXMEs left in the code.

Signed-off-by: Matous Dzivjak <matous.dzivjak@kiwi.com>
2019-09-11 16:53:40 +03:00
NiseVoid
c7dee2c0b2 Add whitespace linter () 2019-09-10 13:25:01 +03:00
Isaev Denis
6163a8a790
Support go1.13 ()
Setup Travis CI to run on go 1.12 and 1.13.
Update info about go versions in README.
Rebuild go.mod,go.sum on go1.13.
2019-09-09 21:54:56 +03:00
NiseVoid
bb82273160 Add funlen linter () 2019-09-09 16:56:30 +03:00
Luke Shumaker
e87a1cfb83 Fix a false-positive from 'unused' ()
This false-positive is not present in the upstream stand-alone 'unused'
2019.1.1 program that golangci-lint uses.

pkg/lint.ContextLoader.filterPackages() did two things:
 1. It removed synthetic "testmain" packages (packages with .Name=="main"
    and .PkgPath ending with ".test")
 2. It removed pruned subsumed copies of packages; if a package with files
    "a.go" and "a_test.go", it results in packages.Load giving us two
    packages:
      - ID=".../a" GoFiles=[a.go]
      - ID=".../a [.../a.test]" GoFiles=[a.go a_test.go]
    The first package is subsumed in the second, and leaving it around
    results in duplicated work, and confuses the 'deadcode' linter.

However, the 'unused' linter relies on both the ".../a" and
".../a [.../a.test]" packages being present.  Pruning them causes it to
panic in some situations, which lead to this workaround:
af6baa5dc1

While that workaround got it to not panic, it causes incorrect results.

So, split filterPackages() in to two functions: filterTestMainPackages()
and filterDuplicatePackages().  The linter.Context.Packages list only
gets filterTestMainPackages() called on it, while linter.Context.Program
and linter.Context.SSAProgram get both filters applied.

With the source of the panic fixed, roll back a few now-unnecessary
commits in go-tools.
2019-09-09 16:10:49 +03:00
Denis Isaev
d2b1eea2c6
bodyclose: fix race condition 2019-07-14 17:53:55 +03:00
Fernandez Ludovic
7e170af626 fix: body close panic. 2019-07-14 17:15:54 +03:00
Hernan Bandura
f8a5a8cb01 Update depguard version to 1.0.0 (Performance improvements) 2019-06-29 23:53:05 +03:00
Trevor Pounds
22d1ef65c8 Update pkg/errors to v0.8.1. 2019-06-18 22:24:38 +03:00
Denis Isaev
7274db714c fix : update go-critic to fix deps
This update should fix go get issues because of deps.

go-critic:
$ git cherry -v c3db6069acc5
+ fe28ac328f474c02e2383ca2bf44a606929a7048 checkers: add integration
tests with cgo for dupImports ()
+ 48a15b03b630252319474ba5ddc8455d2aebf34f checkers: fix fold-ranges
for floats in boolExprSimplify ()
+ 7bf73388643eb226addf2d5ed8a2c104be244b2e checkers: fix "Output:"
false positive in commentedOutCode ()
+ f6f702b31734df26415c2bd135f272d1a34d2973 checkers: extend
yodaStyleExpr supported ops list ()
+ 07bf84df361735ad1d90f84e79eb60c8386325c7 fix dependencies ()
+ 1df30086654074503eab008bdde4f3ce1921128d checkers: fix collection
URL ()

x/tools:
$ git cherry -v 685fecacd0a0 521d6ed310dd | fgrep -v internal/lsp
+ fe54fb35175bb1c0c175e2335e23d7fa90ca987a apidiff: represent a Report as a list of Changes
+ 15bbd99efc6f20619676dec93f914d12e5139e83 all: run go mod tidy
+ bb3b3ca95aec36bfc4a5cb10b58022e64aca735b go/packages: add some documentation for extractPackage
+ 4bf14f7f0668366a4275c6ef5e99bd8e807da1d3 internal/span: fix off-by-one in ToUTF16Column
+ cb2dda6eabdf9160e66ca7293897f984154a7f8b go/packages: deduplicate file parsing
+ 9e44c1c403071e0c2831952513e7b948587d94af go/internal/gccgoimporter: update package to match std lib version
+ 36563e24a2627da92566d43aa1c7a2dd895fc60d cmd/vet: verify potentially-recursive Stringers are actually Stringers
+ 31fd60d6bfdcfb2861856aa5b333bb135f6bbfd8 x/tools/go/packages/packagestest: fix GOPROXY file URLs for Windows
+ 2d660fb8a000e1c288dc2f2150401b364922ebe9 go/packages/packagestest: fix GOPROXY file URLs for Windows
+ 7af746645d5165109de0b5cb499980c22812dfc2 internal/span: fix another off-by-one in ToUTF16Column
+ 9d4d845e86f14303813298ede731a971dd65b593 cmd/goimports: add -format-only flag
+ 83df196e5764ed2415c28c1f39ba6cb3db747da0 internal/span: add a filename only print for spans
+ 5cec639030af3a6ada2732d9bfa1d3731ed55106 go/analysis: proposed fact enumeration API
+ 9cb3dcf692a103de0fd68c26f4f04183e0933f7c internal/span: update the offset if the end offset should be valid but is not
+ 2d16b83fe98cd1bed9e2ce9fdc86bd438d14aab7 go/vcs: ignore "mod" VCS type
+ 95299016986435f846545c27f956768ad3c3cb2f lostcancel: do not analyze cancel variable which defined outside current function scope
+ 8a42e17289ea392d63892321ce1f40bd07efcc9f compilebench: clean up different benchmark types
+ eeb76a0c47a3b97e99f330dc14174ef14777d2ba compilebench: factor running build tool commands
+ 60140f09094406e46618ef436a26dd8394983503 compilebench: add a linker benchmark
+ e31d36578abb3d202c4007c3747bf8ebb7c51011 compilebench: handle missing MemStats more gracefully
+ d996b19ee77cd9c8df974510f23b0696cedf1ca1 go/analysis/analysistest: fix word usage
+ 73554e0f78058c37e5421bc48273a72400172221 go/analysis/passes: fix bugs discovered in std
+ 35884eef200b5fc81c9044f644a8d9d911262488 cmd/vet: print help to stdout only
+ 45e43b2cb4facd370abb846ebf35575161849f3b go/packages/packagestest: fix MustCopyFileTree so that file fragments are always slash form
+ d81a07b7e58487eed036bf115fa834653590d6cd go/analysis/passes/bools: eliminate quadratic runtime, output
+ 2a413a02cc735933997fa1b467a7b27bc1b82567 godoc/static: let client use vet check returned by /compile endpoint
+ 4789ca9922f080dd3a8fc3c74df1c1306db2bb0b go/analysis/internal/analysisflags: call gob.Register on deleted analyzers
+ d1a3278ee74994e9aa609e9e711c616bba677d5d godoc/util: serve SVG files raw
+ 1da8801a9502f29f3f03edfc3149b947e6e1913c godoc: declare small victory over the punched card tyranny
+ 757ca719ca9689950c69081c10c5300fbb8e35db imports: rename to internal/imports
+ 0133cac3176f225883c5d817146de8633ed07ebc cmd/goimports: reuse cached state
+ 26647e34d3c04fd3eaef6fb824493b00af7b1b26 imports: allow nil Options in Process
2019-06-10 11:33:31 +03:00