Skip to content

Commit

Permalink
Fix 4586 - Make golangci-lint lint package on by default. (#4730)
Browse files Browse the repository at this point in the history
Checking whole packages instead of individual files is more sensible
default for golang projects. Without this we get many cryptic
`typecheck` errors in ALE that do not show when running in terminal or
CI.
  • Loading branch information
hsanson committed Feb 28, 2024
1 parent 8d199d8 commit 24a937e
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 13 deletions.
2 changes: 1 addition & 1 deletion ale_linters/go/golangci_lint.vim
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

call ale#Set('go_golangci_lint_options', '')
call ale#Set('go_golangci_lint_executable', 'golangci-lint')
call ale#Set('go_golangci_lint_package', 0)
call ale#Set('go_golangci_lint_package', 1)

function! ale_linters#go#golangci_lint#GetCommand(buffer) abort
let l:filename = expand('#' . a:buffer . ':t')
Expand Down
21 changes: 9 additions & 12 deletions test/linter/test_golangci_lint.vader
Original file line number Diff line number Diff line change
Expand Up @@ -14,37 +14,34 @@ After:
Execute(The golangci-lint defaults should be correct):
AssertLinterCwd '%s:h',
AssertLinter 'golangci-lint',
\ ale#Escape('golangci-lint')
\ . ' run ' . ale#Escape(expand('%' . ':t'))
\ . ' '
\ ale#Escape('golangci-lint') . ' run '

Execute(The golangci-lint callback should use a configured executable):
let b:ale_go_golangci_lint_executable = 'something else'

AssertLinter 'something else',
\ ale#Escape('something else')
\ . ' run ' . ale#Escape(expand('%' . ':t'))
\ . ' '
\ . ' run '

Execute(The golangci-lint callback should use configured options):
let b:ale_go_golangci_lint_options = '--foobar'

AssertLinter 'golangci-lint',
\ ale#Escape('golangci-lint')
\ . ' run ' . ale#Escape(expand('%' . ':t'))
\ . ' --foobar'
\ . ' run '
\ . '--foobar'

Execute(The golangci-lint callback should support environment variables):
let b:ale_go_go111module = 'on'

AssertLinter 'golangci-lint',
\ ale#Env('GO111MODULE', 'on')
\ . ale#Escape('golangci-lint')
\ . ' run ' . ale#Escape(expand('%' . ':t'))
\ . ' '
\ . ' run '

Execute(The golangci-lint `lint_package` option should use the correct command):
let b:ale_go_golangci_lint_package = 1

let b:ale_go_golangci_lint_package = 0
AssertLinter 'golangci-lint',
\ ale#Escape('golangci-lint') . ' run '
\ ale#Escape('golangci-lint')
\ . ' run ' . ale#Escape(expand('%' . ':t'))
\ . ' '

0 comments on commit 24a937e

Please sign in to comment.