2019-06-12 22:41:28 +03:00
linters :
enable :
- gosimple
- deadcode
- typecheck
- govet
- errcheck
- staticcheck
- unused
- structcheck
- varcheck
- dupl
#- gocyclo # The cyclomatic complexety of a lot of functions is too high, we should refactor those another time.
- gofmt
- misspell
2022-03-21 06:22:34 +03:00
- gocritic
2021-11-17 11:47:28 +03:00
- bidichk
2021-11-18 04:33:06 +03:00
- ineffassign
2022-01-02 22:30:40 +03:00
- revive
2022-01-20 20:46:10 +03:00
- gofumpt
2022-04-01 11:47:50 +03:00
- depguard
2019-06-12 22:41:28 +03:00
enable-all : false
disable-all : true
fast : false
2019-10-08 23:42:30 +03:00
run :
2022-03-21 06:22:34 +03:00
go : 1.18
2022-03-16 05:50:26 +03:00
timeout : 10m
2022-02-12 10:08:53 +03:00
skip-dirs :
- node_modules
- public
- web_src
2019-10-08 23:42:30 +03:00
2019-06-12 22:41:28 +03:00
linters-settings :
gocritic :
disabled-checks :
- ifElseChain
2021-03-09 11:38:18 +03:00
- singleCaseSwitch # Every time this occurred in the code, there was no other way.
2022-01-02 22:30:40 +03:00
revive :
ignore-generated-header : false
severity : warning
confidence : 0.8
errorCode : 1
warningCode : 1
rules :
- name : blank-imports
- name : context-as-argument
- name : context-keys-type
- name : dot-imports
- name : error-return
- name : error-strings
- name : error-naming
- name : exported
- name : if-return
- name : increment-decrement
- name : var-naming
- name : var-declaration
- name : package-comments
- name : range
- name : receiver-naming
- name : time-naming
- name : unexported-return
- name : indent-error-flow
- name : errorf
- name : duplicated-imports
- name : modifies-value-receiver
2022-01-20 20:46:10 +03:00
gofumpt :
extra-rules : true
2022-04-01 11:47:50 +03:00
lang-version : "1.18"
depguard :
# TODO: use depguard to replace import checks in gitea-vet
list-type : denylist
# Check the list against standard lib.
include-go-root : true
packages-with-error-message :
- encoding/json : "use gitea's modules/json instead of encoding/json"
- github.com/unknwon/com : "use gitea's util and replacements"
2019-06-12 22:41:28 +03:00
issues :
exclude-rules :
# Exclude some linters from running on tests files.
- path : _test\.go
linters :
- gocyclo
- errcheck
- dupl
- gosec
- unparam
- staticcheck
- path : models/migrations/v
linters :
- gocyclo
- errcheck
- dupl
- gosec
- linters :
- dupl
text : "webhook"
- linters :
- gocritic
text : "`ID' should not be capitalized"
- path : modules/templates/helper.go
linters :
- gocritic
- linters :
- unused
- deadcode
text : "swagger"
- path : contrib/pr/checkout.go
linters :
- errcheck
- path : models/issue.go
linters :
- errcheck
- path : models/migrations/
linters :
- errcheck
- path : modules/log/
linters :
- errcheck
2019-11-02 18:27:49 +03:00
- path : routers/api/v1/repo/issue_subscription.go
linters :
- dupl
2019-06-12 22:41:28 +03:00
- path : routers/repo/view.go
linters :
- dupl
- path : models/migrations/
linters :
- unused
- linters :
- staticcheck
text : "argument x is overwritten before first use"
- path : modules/httplib/httplib.go
linters :
- staticcheck
# Enabling this would require refactoring the methods and how they are called.
- path : models/issue_comment_list.go
linters :
- dupl
2019-08-14 06:32:38 +03:00
- linters :
- misspell
text : '`Unknwon` is a misspelling of `Unknown`'
2020-02-02 23:27:34 +03:00
- path : models/update.go
linters :
- unused
2020-09-29 12:05:13 +03:00
- path : cmd/dump.go
linters :
- dupl
2020-12-08 13:41:14 +03:00
- path : services/webhook/webhook.go
linters :
- structcheck
2020-10-11 23:27:20 +03:00
- text : "commentFormatting: put a space between `//` and comment text"
linters :
- gocritic
- text : "exitAfterDefer:"
linters :
- gocritic
2021-05-07 12:27:31 +03:00
- path : modules/graceful/manager_windows.go
linters :
- staticcheck
text : "svc.IsAnInteractiveSession is deprecated: Use IsWindowsService instead."
2021-11-17 12:58:31 +03:00
- path : models/user/openid.go
linters :
- golint
2022-04-01 11:47:50 +03:00
- linters :
- staticcheck
2022-03-16 07:08:31 +03:00
text : "strings.Title is deprecated: The rule Title uses for word boundaries does not handle Unicode punctuation properly. Use golang.org/x/text/cases instead."