Oleksandr Redko
d22232ad21
dev: replace hashicorp/go-multierror with errors.Join ( #4291 )
...
Co-authored-by: Fernandez Ludovic <ldez@users.noreply.github.com>
2023-12-29 15:45:29 +01:00
Patrick Ohly
8fde4632fa
rules: support inverted path match ( #3617 )
2023-05-31 17:25:59 +02:00
Patrick Ohly
d92b38cc3e
fix: combination of --fix and --path-prefix ( #3700 )
...
Release a tag / release (push) Has been cancelled
Release a tag / docker-release (map[Dockerfile:build/Dockerfile]) (push) Has been cancelled
Release a tag / docker-release (map[Dockerfile:build/alpine.Dockerfile]) (push) Has been cancelled
Co-authored-by: Fernandez Ludovic <ldez@users.noreply.github.com>
2023-03-20 21:44:36 +01:00
Patrick Ohly
b40a5443b3
fix: consider path prefix when matching path patterns ( #3571 )
2023-03-17 23:29:55 +01:00
Oleksandr Redko
b673c5c1af
dev: replace pkg/errors with native error wrapping ( #3604 )
...
Co-authored-by: Fernandez Ludovic <ldez@users.noreply.github.com>
2023-02-22 01:35:43 +01:00
Oleksandr Redko
e8524ac199
dev: do not print extra whitespace in deprecated lint log ( #3596 )
2023-02-16 10:55:04 +01:00
Ludovic Fernandez
3a6f8408b7
go1.20 support ( #3414 )
2023-02-02 09:08:09 +01:00
Ludovic Fernandez
19a338706a
dev: reference all the debug keys and env vars ( #3196 )
2022-09-06 11:48:25 +00:00
Simon Sawert
b5d8e6982c
Return error if any linter fails to run ( #2471 )
2022-01-15 18:55:36 +01:00
Oleksandr Redko
99c6516c6b
docs: fix grammar issues in comments ( #2352 )
2021-11-11 05:56:36 +01:00
Nate Finch
9b577fcb80
new-from-rev: add support for finding issues in entire files in a diff ( #2264 )
2021-09-30 18:43:31 +02:00
Ludovic Fernandez
625445b1f5
runner: non-zero exit code when a linter produces a panic ( #1979 )
Extra / Vulnerability scanner (push) Has been cancelled
CI / go-mod (push) Has been cancelled
CI / golangci-lint (push) Has been cancelled
Release a tag / release (push) Has been cancelled
CI / tests-on-windows (push) Has been cancelled
CI / tests-on-macos (push) Has been cancelled
CI / tests-on-unix (1.15) (push) Has been cancelled
CI / tests-on-unix (1.16) (push) Has been cancelled
CI / check_generated (push) Has been cancelled
Release a tag / docker-release (map[Dockerfile:build/Dockerfile.alpine]) (push) Has been cancelled
Release a tag / docker-release (map[Dockerfile:build/Dockerfile]) (push) Has been cancelled
2021-05-13 23:49:08 +02:00
Ludovic Fernandez
9cb902cdf2
fix: comma in exclude pattern leads to unexpected results ( #1917 )
2021-04-19 15:20:49 +02:00
Ludovic Fernandez
5d10450bc9
dev: clean configuration, documentation, and code ( #1911 )
...
* Remove dead code related to golangci.com
* remove old build tags
* stale bot: remove bug label from `exemptLabels`
* order `gitignore` entries alphabetically
* doc: order `linters-settings` alphabetically
* remove obsolete exclude rule
* release: add docs prefix to skip the commit in the changelog
2021-04-14 12:48:48 +02:00
Ludovic Fernandez
9aea4aee1c
typecheck: display compilation errors as report instead of error ( #1861 )
Extra / Vulnerability scanner (push) Has been cancelled
CI / go-mod (push) Has been cancelled
CI / golangci-lint (push) Has been cancelled
Release a tag / release (push) Has been cancelled
CI / tests-on-windows (push) Has been cancelled
CI / tests-on-macos (push) Has been cancelled
CI / tests-on-unix (1.14) (push) Has been cancelled
CI / tests-on-unix (1.15) (push) Has been cancelled
CI / tests-on-unix (1.16) (push) Has been cancelled
CI / check_generated (push) Has been cancelled
Release a tag / docker-release (map[Dockerfile:build/Dockerfile.alpine]) (push) Has been cancelled
Release a tag / docker-release (map[Dockerfile:build/Dockerfile]) (push) Has been cancelled
2021-03-25 23:52:55 +01:00
Ludovic Fernandez
8db518cee0
Add versions, improve deprecation system, improve linters page ( #1854 )
2021-03-17 16:17:33 +01:00
Sergey Vilgelm
251b205f54
Deprecate Interfacer
linter ( #1755 )
2021-02-20 18:55:11 -06:00
Ludovic Fernandez
b79e0c5adf
fix: throw an error on panic. ( #1540 )
...
* fix: throw an error on panic.
* current min go version is go1.13
2020-12-12 20:31:17 +00:00
ZhangYunHao
9948153575
DefaultExcludePatterns should only be used for specified linter ( #1494 )
...
Co-authored-by: zhangyunhao <zhangyunhao@bytedance.com>
2020-11-12 15:21:19 +01:00
Oleg Butuzov
6e7c317610
Sorting result.Issues implementation (golangci/golangci-lint#1217) ( #1218 )
2020-07-12 16:35:08 -05:00
Joe Wilner
6550984878
Configure path prefix via processor abstraction ( #1226 )
2020-07-11 09:14:52 +10:00
Ryan Currah
fa7adcbda9
add ability to set issue severity ( #1155 )
...
* add ability to set issue severity for out formats that support it based on severity rules
* fix lint issues
* change log child name
* code climate omit severity if empty
* add tests for severity rules, add support for case sensitive rules, fix lint issues, better doc comments, share processor test
* deduplicated rule logic into a base rule that can be used by multiple rule types, moved severity config to it's own parent key named severity, reduced size of NewRunner function to make it easier to read
* put validate function under base rule struct
* better validation error wording
* add Fingerprint and Description methods to Issue struct, made codeclimate reporter easier to read, checkstyle output is now pretty printed
2020-05-25 08:21:42 -04:00
Isaev Denis
279b6d62d3
speed up a bit ( #1064 )
...
Ensure that `unused` is always the last
in execution order. It can speed up packages loading
a bit.
Refactor enabled linters set to remove extra logging.
Relates: #944
2020-05-05 18:45:19 +03:00
Andrew Shannon Brown
909f628d75
Add linter for nolint
...
Linter can check that nolint statements are properly formatted and also that all
nolint statements are used.
2020-04-26 20:20:17 -07:00
John Starich
36d8d881f9
Preserve API backward compatibility
2020-04-25 14:14:42 -05:00
John Starich
c55e7614d4
Re-enable default excludes by ID
2020-04-25 13:57:57 -05:00
Maciej "Iwan" Iwanowski
d7772f542b
Using ExcludeRulesProcessor
...
Signed-off-by: Maciej "Iwan" Iwanowski <maciej.iwanowski@critical.today>
2020-04-23 09:27:48 +02:00
Maciej "Iwan" Iwanowski
a68b411e4a
Adding case-sensitive exclude processor
...
Signed-off-by: Maciej "Iwan" Iwanowski <maciej.iwanowski@critical.today>
2020-04-22 18:40:10 +02:00
Soichiro Kashima
796b4fffbe
Clear part of package fields before analysis
2020-01-28 17:02:00 +09:00
Soichiro Kashima
bb41e54b04
Fix failed_prerequisites error
2020-01-28 01:57:05 +09:00
Denis Isaev
40d7bcd53e
Fix after #890 : don't propagate linter errors for golangci.com
2020-01-19 16:19:23 +03:00
Sascha Grunert
f3e349fb5c
Propagate error when linter cannot be run
...
We now return an error if any linter is unable to run to
not exit on 0 in that case.
Closes #451
Signed-off-by: Sascha Grunert <sgrunert@suse.com>
2019-12-29 16:52:01 -05:00
Isaev Denis
9ba730e989
Make incremental analysis ( #808 )
...
Cache linting results. Reanalyze only changed packages
and packages tree depending on them.
Fixes #768 , fixes #809
2019-10-13 17:40:51 +03: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 ( #764 )
...
Get rid of AST cache: load AST when needed. Optimize memory allocations
for go/analysis actions.
Relates: #337
2019-10-01 14:52:00 +03:00
Isaev Denis
95ec0cf21e
dramatically reduce memory usage ( #758 )
...
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: #337
2019-09-30 16:19:41 +03:00
Isaev Denis
6a979fb40d
Update staticcheck and cache go/analysis facts ( #699 )
...
* 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
Will Dixon
9161de5b7d
Upgrade depguard to fix performance issue with go modules ( #698 )
...
* 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
Isaev Denis
f1c1dbfab4
Feature/enable autofix on whitespace ( #674 )
...
The whitespace linter was added in #673 . Enable it and fix found issues.
Add auto-fixing to the whitespace linter.
2019-09-10 16:56:44 +03:00
Sean DuBois
f312a0fc4e
fix #416 : Add skip-dirs-use-default ( #630 )
2019-09-10 11:14:25 +03:00
Denis Isaev
3d78f64b60
fix #522 : run misspell in text mode
...
Treat Go source files as plain text files by misspell: it allows detecting
issues in strings, variable names, etc. Also, it's the default mode of
a standalone misspell tool.
Also, implement richer and more stable auto-fix of misspell issues:
now it can fix multiple issues in one line.
2019-06-09 20:14:19 +03:00
Denis Isaev
ed0b551070
Fix linting of preprocessed files
...
Preprocessed files like .qtpl.go quicktemplate Go files can have
//line directives. They map to a source .qtpl file.
This commit fixes linting of such files:
1. don't fail on AST cache loading
2. output Go filename not .qtpl or similar
Also, here we update golint to the upstream version.
Relates: #316 , #466 , #467 , #468
2019-04-20 21:50:26 +03:00
Denis Isaev
8c1237b667
Use the newest go vet
...
The newest go vet based on go/analysis
2019-03-17 23:12:44 +03:00
Denis Isaev
3d2dfac47e
Support excluding issues by source line regexp
...
See issues.exclude-rules[i].source.
Also introduced file data and file lines cache.
2019-03-17 15:17:29 +03:00
Denis Isaev
d437ac8629
Implement auto-fixing for gofmt,goimports,misspell
...
Also, add more identifier marking patterns.
2019-02-17 20:31:31 +03:00
Aleksandr Razumov
a3a04552bb
add support for exclude rules
2019-02-17 18:40:22 +03:00
David López
d9a1bdb831
gocritic: fix code to pass newly added gocritic checks
...
Fix code to pass newly added gocritic checks, mainly pointer receivers and import shadows
2019-01-08 09:59:24 +03:00
Denis Isaev
7dfb9cff3d
rework skip dir algorithm
2018-12-22 12:24:43 +03:00
Denis Isaev
84c9c65f39
fix #243 : support Scopelint linter
2018-11-06 08:11:25 +03:00