39 Commits

Author SHA1 Message Date
Isaev Denis
52c9b88c25
reduce mem. usage of unused and update staticcheck ()
The primary improvement is in early clearing of
analyzed package's TypeInfo, facts, etc for
whole program analyzers (`unused`). Clear it when it
becomes unused and GC collects them early. Initially this
clearing was performed for all analyzers except `unused`.

Update staticcheck from v0.0.1-2019.2.3 to v0.0.1-2020.1.4

Also in this commit:
  * speed up loading packages from export data (2.5s -> 2.1s for std)
    by not using mutex for export data since it was allowed in
    x/tools#07722704da13
  * make an order of execution of linters stable
  * update renameio and robustio
  * use robustio in caching

Relates: , , , 
2020-05-03 15:20:17 +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
9ba730e989
Make incremental analysis ()
Cache linting results. Reanalyze only changed packages
and packages tree depending on them.

Fixes , fixes 
2019-10-13 17:40:51 +03:00
Trevor Pounds
8e0197ec9c Reduce cache directory permissions. ()
Fixes 
2019-10-06 19:21:43 +03:00
Trevor Pounds
fd997edeeb Cleanup nolint directives. () 2019-10-03 19:34:19 +03:00
Trevor Pounds
6d786b50ae Group imports by package. 2019-10-01 18:09:47 -04: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
golangci
5c2e6e9f5a .travis.yml and don't use internal package 2018-05-13 19:20:42 +03:00
golangci
e73a876b0f support patch reading from env var 2018-05-13 12:05:34 +03:00
golangci
05f09371ac validate config and print resources usage 2018-05-12 10:13:37 +03:00
golangci
85ee97f776 support config and fix issues in self project 2018-05-11 22:02:24 +03:00
golangci
07ddc548dc another group of fixes after running on golang source code 2018-05-08 18:08:28 +03:00
golangci
d993d3a264 group of fixes after running on golang source code 2018-05-08 17:13:16 +03:00
golangci
6f384926cf fixes 2018-05-08 13:33:00 +03:00
golangci
e6657e868e don't analyze tests by default 2018-05-08 12:28:36 +03:00
golangci
511b04de5e fixes after testing all linters on self repo 2018-05-08 12:10:24 +03:00
golangci
5dc876c260 pretty printing issues 2018-05-08 11:54:30 +03:00
golangci
073ad51ed9 support diff options 2018-05-08 09:55:38 +03:00
golangci
393733fa6a implement max issues per linter limiting 2018-05-08 08:15:55 +03:00
golangci
4853151835 async issues processing 2018-05-07 21:44:40 +03:00
golangci
c9bb265140 fix small bugs 2018-05-07 17:30:33 +03:00
golangci
0af6cacb28 support goconst 2018-05-07 12:49:17 +03:00
golangci
c6dc47bcbd support interfacer 2018-05-07 11:13:26 +03:00
golangci
7c4ab92d00 support dupl 2018-05-07 09:17:13 +03:00
golangci
51c1751db0 support megacheck 2018-05-06 22:58:04 +03:00
golangci
2bc4eaa8ae support maligned 2018-05-06 21:08:53 +03:00
golangci
b152b3500f support varcheck and structcheck 2018-05-06 20:28:59 +03:00
golangci
5c074ddfc6 load program only once: big speedup 2018-05-06 19:08:34 +03:00
golangci
d02ef1b633 support gocyclo 2018-05-06 15:24:45 +03:00
golangci
062caa018c support exclude patterns 2018-05-06 13:41:42 +03:00
golangci
6025f670f2 build tags support 2018-05-06 13:28:00 +03:00
golangci
30388862d2 support enabling and disabling of linters and linters list command 2018-05-06 13:25:50 +03:00
golangci
1fa57347aa concurrency implemented 2018-05-06 12:10:05 +03:00
golangci
ffd2723a3d support gofmt and goimports 2018-05-06 09:41:48 +03:00
golangci
e65203921b support golint 2018-05-06 07:20:12 +03:00
golangci
0a5924afbc support go vet 2018-05-05 22:22:21 +03:00
golangci
3f1787bf89 support errcheck 2018-05-05 19:43:52 +03:00
golangci
a0ac9b7e0b prepare testing framework 2018-05-05 11:08:14 +03:00
golangci
c17b41c59a use cobra for CLI 2018-05-05 09:24:37 +03:00