56 lines
1.4 KiB
YAML
56 lines
1.4 KiB
YAML
|
|
run:
|
|||
|
|
timeout: 3m
|
|||
|
|
issues-exit-code: 2
|
|||
|
|
tests: false # 不檢查測試檔案
|
|||
|
|
|
|||
|
|
linters:
|
|||
|
|
enable:
|
|||
|
|
- govet # 官方靜態分析,抓潛在 bug
|
|||
|
|
- staticcheck # 最強 bug/反模式偵測
|
|||
|
|
- revive # golint 進化版,風格與註解規範
|
|||
|
|
- gofmt # 風格格式化檢查
|
|||
|
|
- goimports # import 排序
|
|||
|
|
- errcheck # error 忽略警告
|
|||
|
|
- ineffassign # 無效賦值
|
|||
|
|
- unused # 未使用變數
|
|||
|
|
- bodyclose # HTTP body close
|
|||
|
|
- gosimple # 靜態分析簡化警告(staticcheck 也包含,可選)
|
|||
|
|
- typecheck # 型別檢查
|
|||
|
|
- misspell # 拼字檢查
|
|||
|
|
- gocritic # bug-prone code
|
|||
|
|
- gosec # 資安檢查
|
|||
|
|
- prealloc # slice/array 預分配
|
|||
|
|
- unparam # 未使用參數
|
|||
|
|
|
|||
|
|
issues:
|
|||
|
|
exclude-rules:
|
|||
|
|
- path: _test\.go
|
|||
|
|
linters:
|
|||
|
|
- funlen
|
|||
|
|
- goconst
|
|||
|
|
- cyclop
|
|||
|
|
- gocognit
|
|||
|
|
- lll
|
|||
|
|
- wrapcheck
|
|||
|
|
- contextcheck
|
|||
|
|
|
|||
|
|
linters-settings:
|
|||
|
|
revive:
|
|||
|
|
severity: warning
|
|||
|
|
rules:
|
|||
|
|
- name: blank-imports
|
|||
|
|
severity: error
|
|||
|
|
gofmt:
|
|||
|
|
simplify: true
|
|||
|
|
lll:
|
|||
|
|
line-length: 140
|
|||
|
|
|
|||
|
|
# 可自訂目錄忽略(視專案需求加上)
|
|||
|
|
# skip-dirs:
|
|||
|
|
# - vendor
|
|||
|
|
# - third_party
|
|||
|
|
|
|||
|
|
# 可以設定本機與 CI 上都一致
|
|||
|
|
# env:
|
|||
|
|
# GOLANGCI_LINT_CACHE: ".golangci-lint-cache"
|