580 Commits

Author SHA1 Message Date
Trevor Pounds
c2447f0d8e Regenerate README. () 2019-10-03 16:22:26 +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
Chris Nesbitt-Smith
dbf0231f74 fix misplaced backtick in example config in readme
sorry, I'm a pedant 😄
2019-10-03 09:08:53 -04:00
Trevor Pounds
13e3a1a375 Update to latest godownloader/goreleaser versions.
Fixes 
2019-10-02 14:01:03 -04:00
M. Ángel
5e54b3334e Add version command to print golangci-lint version
Fixes 
2019-10-01 18:13:24 -04:00
Trevor Pounds
6d786b50ae Group imports by package. 2019-10-01 18:09:47 -04:00
Isaev Denis
df4f6766ba
reduce 1.5x memory usage on large repos on repeated runs ()
Get rid of AST cache: load AST when needed. Optimize memory allocations
for go/analysis actions.

Relates: 
2019-10-01 14:52:00 +03:00
Trevor Pounds
ea417ffa0b Fix incorrect description. 2019-09-30 17:28:43 -04: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
Aleksandr Razumov
fe494af887 govet: skip internal analyzers ()
Some analyzers are not intended for direct usage and are
just build blocks for other analyzers.
Seems like we can distinguish them by ResultType nillness.
2019-09-30 16:04:06 +03:00
Trevor Pounds
605c9c2954 Add Alpine Linux images ()
* Add Alpine Linux images.

Fixes 
Fixes 

* Move Dockerfiles to build directory.
2019-09-30 12:51:57 +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
Robin Yue
7a93526db7 add cyclone to the list of great projects 2019-09-29 12:02:19 -04:00
Aleksandr Razumov
7e09842e2b govet: add more analyzers 2019-09-29 12:00:35 -04:00
Trevor Pounds
6cc10f0615 Update to latest timakin/bodyclose. ()
Fixes 733
Fixes https://github.com/timakin/bodyclose/pull/20
2019-09-27 13:43:56 +03:00
Trevor Pounds
d63d23537d Fix broken dominikh/go-tools URLs. ()
Fixes 
2019-09-25 18:25:58 +03:00
Isaev Denis
2cadaf5beb
dev: enable whitespace, dogsled, funlen on the repo () 2019-09-25 18:08:28 +03:00
Trevor Pounds
86d7c05c6b Build godownloader/goreleaser tools before use. () 2019-09-25 17:26:46 +03: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 
v1.19.1
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
Trevor Pounds
abad4c9933 Cleanup obsolete go.mod/go.sum diff. ()
Unnecessary since Go 1.11 is no longer supported.
2019-09-24 08:42:22 +03:00
Denis Isaev
9d1610b1e9
dev: update deprecated parts of .goreleaser.yml 2019-09-24 00:09:31 +03:00
Denis Isaev
8510e2477c
dev: trigger CI build on tag push 2019-09-23 23:06:40 +03:00
Trevor Pounds
27ac4c7884 Update minimum Go version to 1.12. v1.19.0 2019-09-23 15:41:57 -04:00
Trevor Pounds
21fda1d67c Enable consistent GOPROXY Go 1.12/1.13 behavior. 2019-09-23 15:30:15 -04:00
Denis Isaev
4e439b4304 Fix : use forked bodyclose
Until  merged use forked version.
2019-09-23 22:19:41 +03:00
Denis Isaev
2fc8b7b788 Drop memory usage of go/analysis linters 5x
Set analysis pass results to nil early to garbage collect them
soon.
Memory can be reduced for the following linters:
  - staticcheck
  - stylecheck
  - gosimple
  - govet
  - bodyclose
  - any future go/analysis linter

Relates: , , , , , , 
2019-09-23 21:58:47 +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
Denis Isaev
3aade55e05 Reduce memory usage of go/analysis 2019-09-23 09:52:54 +03:00
Trevor Pounds
358ce7c20c Enable Go module support across all commands. () 2019-09-21 08:35:45 +03:00
Trevor Pounds
a653032409 Fix flaky cgo test failures. ()
Fixes flaky cgo test failures caused by duplicate printf
format checks in staticcheck and go vet that use slightly
different reporting formats.
2019-09-20 19:05:01 +03: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
Trevor Pounds
92168d033d Add dogsled linter. () 2019-09-17 08:44:53 +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
Trevor Pounds
b8145d6fe6 Update to latest mvdan.cc/unparam. () 2019-09-16 19:50:17 +03:00
Aleksandr Razumov
f3f5dfc3eb govet: implement analyzers config () 2019-09-16 00:15:08 +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
Denis Isaev
fc8d614b2b
speedup skip-dirs processing by caching 2019-09-14 20:15:11 +03:00
Denis Isaev
4fd88b9b7e
dev: update go.sum 2019-09-14 19:36: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
6ec8ff2271 Update Dockerfile to Go 1.13. ()
Fixes .
2019-09-14 19:33:10 +03:00
Isaev Denis
c9a9255238
Speed up packages loading ()
Don't perform extra go env calls in go/packages.
Load only needed go env vars in golangci-lint.
Stay in sync by enabled analyzers in go vet: remove nilness and
atomicalign analyzers, add errorsas analyzer.
Don't build SSA for govet.

Standalone govet runs 25% faster than before. All runs can be 5-10% faster
than before.
Relates: 
2019-09-14 18:48:18 +03:00
Denis Isaev
4ffe85cae8
docs: update changelog 2019-09-14 14:15:27 +03:00
David López
064c0e3d67 readme: split changelog into own file ()
split changelog into own file. closes .
2019-09-14 14:07:14 +03:00
Trevor Pounds
bf68434103 Fix replaced dependencies ()
* Update to ultraware/funlen v0.0.2.

Fixes https://github.com/ultraware/funlen/pull/1.

* Update to latest golang.org/x/tools.

Fixes .
Fixes https://github.com/golang/tools/pull/139.
2019-09-14 14:06:10 +03:00