Commit Graph

74 Commits

Author SHA1 Message Date
Richard Jonas 9e1351499c
Handle golangci_lint warning and error messages correctly (#4182)
* Handle golangci_lint warning and error messages correctly

* Fix linter warning

Co-authored-by: Richard Jonas <richard.jonas@derivco.se>
2022-05-04 20:05:32 +09:00
David Houston ea643b97ab
Add cspell Linter (#3981)
* Add cspell linter

Add cspell linter, with the languages it supports.

Signed-off-by: David Houston <houstdav000@gmail.com>

* Add cspell Global Variables Documentation

Add documentation to /doc/ale.txt with cspell configuration options.

Signed-off-by: David Houston <houstdav000@gmail.com>

* Add cspell to docs, Minor Cleanup

Add cspell for each supported language, adding some spaces and removing
others when caught navigating the file.

Signed-off-by: David Houston <houstdav000@gmail.com>
2021-11-19 07:41:05 +09:00
Yuxuan 'fishy' Wang b749ec702a
Change default of go_staticcheck_lint_package to 1 (#3799)
Fixes https://github.com/dense-analysis/ale/issues/3798.
2021-07-03 18:40:01 +09:00
w0rp 1b08791228
Make staticcheck configurable with GOPATH detection 2021-05-27 22:03:46 +01:00
w0rp f53431331e
Enable gopls by default with GOPATH detection 2021-05-26 22:43:33 +01:00
w0rp 9fe7b1fe6a
Close #2281 - Separate cwd commands from commands
Working directories are now set seperately from the commands so they
can later be swapped out when running linters over projects is
supported, and also better support filename mapping for running linters
on other machines in future.
2021-03-01 20:11:10 +00:00
Rob Watson 26b92f73b5 gopls: add go_gopls_init_options 2021-02-03 14:49:27 +01:00
w0rp 3d5a2690ce
#3325 - ale#path#BufferCdString now generates %s:h 2020-08-28 17:46:43 +01:00
Paco 7265ceb6d0
Support revive for go files (#2933)
Signed-off-by: Penghui Liao <liaoishere@gmail.com>
2020-05-22 06:09:14 -05:00
Elias Martinez Cohen 49db8210f6 Support $GO111MODULE with Go tooling
Allows the user to override $GO111MODULE environment variable through
ale options. This gives control over the default behavior of Go module
resolution.

Golang documentation:
https://github.com/golang/go/wiki/Modules#how-to-use-modules

Add `ale#Go#EnvString()` function to make it easy to add similar Go
environment variables in the future.

Use the new `EnvString` function in all available Go tools callbacks
& update tests

Also add test of linter command callback for `gofmt`
2019-07-01 11:04:33 -04:00
w0rp 2e8c8085a6
Close #2179 - Add support for gopls 2019-04-10 19:23:16 +01:00
Sander van Harmelen b0fac47060 make `gotype` return all errors
When using `gotype` without the `-e` option, it will only output the
first 10 errors. When working on a larger package that ofter means taht
those 10 errors are in other files then the one that you are currently
working on which then seems to indicate that there are no errors.

By adding the `-e` flag, all errors will be returned and shown properly
in the file that you are working on.
2019-03-12 09:32:39 +01:00
w0rp 883978ece9
#2132 - Replace all uses of foo_callback with foo 2019-02-22 18:05:04 +00:00
w0rp 3e11cbd18d
Update syntax checking
* Line continuation characters should be on the same lines.
* .vim file line indentation should be a multiple of 4.
2019-02-06 18:05:13 +00:00
Jerko Steiner 5bbe77101d Add support for bingo (#2165)
* Add support for https://github.com/saibing/bingo
* Add docs for ale-go-bingo
* Use go.mod when found
* Add test for bingo FindProjectRoot
* Simplify ale_linters#go#bingo#GetCommand
2019-01-05 19:12:55 +00:00
w0rp d1d5292178
Fix #2054 - Make golint configurable 2018-11-11 09:42:57 +00:00
Martin Tournoij e82bcdb8a6 Add fixer for Go modules (#1873)
* Add fixer for Go modules
2018-09-19 19:33:23 +01:00
Sascha Grunert 96e25d471c
Change PCRE escape to simple escape 2018-09-14 10:41:35 +02:00
Sascha Grunert 7b62a15739 Add golangci-lint (#1890) 2018-09-06 20:31:12 +01:00
w0rp 7086769289
#1891 Fix the go-langserver tests 2018-09-06 17:05:05 +01:00
Horacio Sanson a9333c2866 Fix #1822 - support go-langserver lsp. 2018-09-06 13:46:59 +09:00
w0rp d476578a40
Improve ALE project style checking
* The project style linter now runs while you type.
* Now the scripts for checking the project require blank lines.
* Many style issues have been found and fixed.
2018-09-04 16:51:18 +01:00
Martin Tournoij 18ec66bd21
Remove "go env" from gobuild linter
I see no reason to do this? It is just setting the environment to what
it already is?

It was originally added in #297, but that entire PR is not a great idea
in the first place; that PR (together with #270) tried to make the Go do
non-standard and non-supported stuff like compiling packages outside of
GOPATH.

That's not something that works well (I tried), so was eventually
removed in #465, but these "go env" calls remained, for no reason in
particular, as far as I can think of.

This will improve on #1834; you will now no longer get a confusing error
(but still won't get a meaningful error; need to think how to do that).
2018-08-23 00:42:19 +01:00
tyru 88ffdb4736 feat: add ale_go_govet_options variable 2018-08-16 11:36:46 +09:00
w0rp 217284360d
Simplify the code for most linters and tests with closures 2018-08-02 23:44:12 +01:00
w0rp d368f090ae
#1754 Require snake_case names for linters in the codebase 2018-07-24 10:05:44 +01:00
w0rp a42999a639
Massively reduce the amount of code needed for linter tests 2018-07-15 18:28:28 +01:00
Ben Paxton 6452c5e2f0 Use govet handler for gosimple, gotype, staticcheck 2018-03-20 14:19:48 +00:00
Ben Paxton 0cb3e36554 Lint whole package for gosimple and gotype
Fixes #936
2018-03-19 15:52:42 +00:00
w0rp c112ee9dff
Fix #1392 - Only check files on disk for gotype 2018-03-18 17:16:13 +00:00
w0rp b6ccd60dd0
Merge pull request #1351 from svanharmelen/f-issue-936
This fixes issue #936 by linting the whole package
2018-02-25 11:54:05 +00:00
John Eikenberry 4941bd8d0e Fix #1358, fix #1369 - Lint the package on save for go vet instead 2018-02-25 11:39:45 +00:00
Sander van Harmelen ab5257c344 This fixes issue #936 by linting the whole package 2018-02-20 16:11:35 +01:00
w0rp 33b3331b04 #1206 Add support for setting options for gobuild, and escape paths better 2018-02-04 13:55:09 +00:00
Jelte Fennema b6d1c41925 Go: Add gotype support (#1099) 2018-01-07 12:11:01 +00:00
Jeff Willette e2a8f759d8 Added option for `gometalinter` to lint package (#1156)
* Added option for `gometalinter` to lint package
* added tests for the `gometalinter` command
* changed gometalinter commands to use BufferCdString
2017-12-04 18:42:36 +00:00
Jeff Willette b9f02ffb27 Added filename key for `go build` linter
- Re: f224ce8a37

- The issues that prompted the above commit which reverted changes made to `go build` and
`gometalinter` seemed to suggest that the main issue was with gometalinter and that
changes should be put into different commits so they are independent of each other

- This commit reinstates the changes to the `go build` linter which seem to be uncontested
and it also seems absolutely necessary to show errors from all files in the package which
may have caused a build failure.
2017-11-20 23:50:14 +09:00
w0rp f224ce8a37 Revert "Show problems from other files for gobuild and gometalinter"
This reverts commit e721f851b4.
2017-11-20 10:43:45 +00:00
Jeff Willette e721f851b4 Show problems from other files for gobuild and gometalinter
* Added filename keys to gobuild and gometalinter
* Removed skipping files not in current package
* Removed `--include` for gometalinter
* Fixed the tests
2017-11-15 16:34:30 +00:00
w0rp 290ed4885b Fix #1131 - Capture both output streams for golint 2017-11-15 16:24:29 +00:00
wuqiong4945 bcc215c4e0
add 'output_stream': 'stderr', let golint work 2017-11-09 21:14:29 +08:00
w0rp 9cd0d75c4f Fix #936 - Check the actual files for gosimple and staticcheck 2017-10-31 13:01:01 +00:00
w0rp 4e9420d1f5 Fix #921 - Capture both output streams for gosimple and staticcheck 2017-09-12 19:53:23 +01:00
w0rp a535d07f28 Ban use of ==# or ==? in the codebase, and prefer is# or is? instead 2017-08-08 08:39:13 +01:00
Sander van Harmelen b2be833744 Fixup #756
The real fix was not using absolute paths anymore (so not expanding with the `:p` option). The regex was correct and should at least include the `^` character to make sure the string starts with the given path/filename and not references the path/filename in some error description.
2017-07-12 09:51:44 +02:00
w0rp 340c0bbac5 #756 Escape the paths used for the --include parameter for gometalinter, which uses RE2 2017-07-11 23:47:21 +01:00
Sander van Harmelen 5c7b55edec Make gometalinter work again
They changed their logic to use related paths instead of absoluut paths (see [here](a04df08be5 (diff-04424ed7c660c10495a54e8d11be89eaR253)))

This fixes the linter by also using relative paths…
2017-07-11 17:13:04 +02:00
w0rp 8315c0e337 Make the executable for gometalinter configurable 2017-07-07 00:10:30 +01:00
w0rp a0e0408ecc Complain about incorrect uses of expand('%...') 2017-06-06 10:22:52 +01:00
Sander van Harmelen 455793dfd9 Improve performance when using gometalinter (#566)
* Improve performance when using gometalinter

Before this change when I opened a big project that had 6000+ warnings/errors it took ages to get the actual warnings/errors and it caused my CPU to be busy for quite some time. The call to gometalinter alone took about 24 seconds, but after that vim was struggling as well.

After this change the gometalinter call just takes 2 seconds and nothing noticable happens with the CPU and/or vim.

* Removed obsolete test

This logic is no longer done by the `ale` plugin, but by `gometalinter` itself.
2017-05-20 11:43:28 +01:00