Johannes Wienke
96b90b45db
Use JSON output with vale
...
Switches all vale instances to JSON output and provides an appropriate
handler for that. Without JSON, no end_col is provided and text
highlighting only catches the first character of every result.
2017-12-17 16:49:57 +01:00
w0rp
c4956657dc
Merge pull request #1220 from languitar/linter-alex
...
Add a linter for alex
2017-12-17 13:11:49 +00:00
Stephen Rathbone
78d1f5f5df
Fix PHP linter to support PHP 7.2 lint output
2017-12-13 21:23:18 +00:00
Johannes Wienke
0d046f5f01
Add a vader test for the message handler
2017-12-13 14:37:49 +01:00
w0rp
d2a6d9a915
Fix #1216 - Suppress trailing whitespace warings for ansible-lint when the option is set
2017-12-13 11:14:31 +00:00
w0rp
7a88a3605c
Disable a test on Windows for now, because Windows is stupid
2017-12-10 10:12:26 +00:00
w0rp
9152effa9f
Get the new test to pass on Windows
2017-12-10 10:07:04 +00:00
w0rp
cebe7c3918
Fix #1210 - Do not report this file as a temporary file in the quickfix list for TSLint
2017-12-10 09:58:33 +00:00
w0rp
c6fc9cdb7b
Merge pull request #1192 from fvictorio/add-solhint-support
...
Add solhint support
2017-12-07 18:50:33 +00:00
Franco Victorio
85e0bd3314
Extract error code from message
2017-12-05 16:02:15 -03: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
Franco Victorio
57e1b03435
Add test for solhint handler
2017-12-04 14:23:46 -03:00
Dave Wongillies
2bd966c5cc
Puppet: allow for when parser doesn't supply column for errors ( #1182 )
...
* puppet: add test for puppet parser validate
* puppet: handle where parser validate doesn't supply the column
* puppet: add test for when parser validate doesn't supply column
* Fix puppet regex to handle Windows paths
2017-12-02 12:29:17 +00:00
Carlos Coêlho
daee4a4722
Add prospector for checking Python code ( #1183 )
2017-12-01 17:04:30 +00:00
w0rp
a43ada93e4
Allow warnings about trailing whitespace to be disabled for pycodestyle, and cover the flake8 code with tests
2017-11-28 10:12:49 +00:00
w0rp
0ab689db0a
Allow warnings about trailing blank lines to be hidden for flake8 and pycodestyle
2017-11-28 10:08:34 +00:00
w0rp
ae7cd2c090
Fix #918 - Save prettier details for Haskell linters
2017-11-26 18:24:10 +00:00
w0rp
ac7f69063d
#1151 - Overhaul the foodcritic linter for checking files on disk
2017-11-21 13:38:33 +00:00
rhysd
d465b71362
redpen: use 'code' key to show validator
...
instead of embedding it into text
2017-11-21 15:49:04 +09: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
Shogo NAMEKI
f20e5a4cf0
Add drafter
for checking API Blueprint files ( #1152 )
2017-11-20 10:57:13 +00: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
w0rp
62904d39ee
#852 - Capture error codes for tflint
2017-11-19 13:37:56 +00:00
w0rp
fa7f0e2b85
#852 - Capture error codes for swiftlint
2017-11-19 13:33:20 +00:00
w0rp
b16c82f2f1
#852 - Capture error codes for swaglint
2017-11-19 12:46:06 +00:00
w0rp
d7a60ade77
#852 - Capture error codes for stylelint
2017-11-19 12:30:20 +00:00
w0rp
01b2971d04
#852 - Capture error codes for slim-lint
2017-11-19 01:08:20 +00:00
w0rp
7123f7236b
#852 - Capture error codes for reek
2017-11-19 00:54:09 +00:00
w0rp
c012563984
#852 - Capture error codes for nimcheck
2017-11-19 00:38:00 +00:00
w0rp
3c8f3221df
#852 - Capture error codes for mcs and mcsc
2017-11-19 00:19:09 +00:00
w0rp
40e26f0bc2
#852 - Capture error codes for luacheck
2017-11-19 00:02:35 +00:00
w0rp
41cb174f3a
#852 - Capture error codes for jscs
2017-11-18 23:55:47 +00:00
w0rp
cefc5dc5b8
#852 - Capture error codes for csslint
2017-11-18 23:15:23 +00:00
w0rp
7455e2e97d
#852 - Capture error codes for checkstyle
2017-11-18 18:29:12 +00:00
w0rp
49ccfb1a00
Fix #516 - Add support for pyflakes for Python
2017-11-17 18:11:28 +00:00
rhysd
ca345ffb62
redpen: fix start column
2017-11-17 15:34:07 +09:00
rhysd
44cd07d39c
redpen support for asciidoc, reST, LaTeX and Re:VIEW
2017-11-17 15:34:07 +09:00
w0rp
1f4f19cbd4
Merge pull request #1133 from nicwest/linter-clj-joker
...
add joker handler for clojure
2017-11-16 11:06:27 +00:00
w0rp
3ddb858881
Merge pull request #1137 from rhysd/redpen
...
Add Redpen support
2017-11-16 10:44:52 +00:00
rhysd
e232ea07c2
redpen: fix trailing comma in test data
2017-11-16 19:42:51 +09:00
rhysd
f1314b285c
redpen: support end_lnum and end_col if possible
2017-11-16 19:28:30 +09:00
w0rp
ee07be5f59
Merge pull request #1135 from aurieh/master
...
Capture error codes for checkmake
2017-11-16 10:15:37 +00:00
rhysd
c9c52ef370
add tests and doc for redpen support
2017-11-16 18:40:10 +09:00
w0rp
71d34fc0c6
Fix #1132 - Parse react error codes again for ESLint
2017-11-16 09:34:24 +00:00
aurieh
7565a45b6f
Modify vader tests for d585123
2017-11-16 01:01:59 +02:00
Nic West
eda20d0585
add joker handler for clojure
...
Adds new linter for clojure using joker
https://github.com/candid82/joker
fixes #975
ref #544 #1040
2017-11-15 22:23:46 +00:00
w0rp
1d65e5692f
#852 Capture error codes for pycodestyle, and consider every code except E999 to be style errors or warnings
2017-11-15 17:47:24 +00:00
w0rp
cf538c3a58
#852 Capture error codes for pylint, throw away the msgid values
2017-11-15 17:35:34 +00:00
w0rp
08f4f8f0fc
#852 Capture error codes for shellcheck
2017-11-15 17:26:52 +00:00
w0rp
b14377915b
Clean up tests to stop people copy and pasting the wrong examples
2017-11-15 17:21:17 +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
8f80708da6
#852 - Capture error codes for cpplint
2017-11-15 11:28:16 +00:00
w0rp
ff5c6b0509
#852 - Capture error codes for ansible-lint
2017-11-15 10:11:32 +00:00
Aliou Diallo
425482116e
#852 - Capture error codes for Rubocop
2017-11-14 17:50:15 +01:00
w0rp
d8f9aef84a
#852 - Capture error codes for flake8
2017-11-14 09:41:29 +00:00
w0rp
037aaae593
#852 - Capture error codes for TSLint
2017-11-13 23:36:15 +00:00
w0rp
8a3a2da87e
#852 Capture error codes for ESLint
2017-11-13 23:23:06 +00:00
w0rp
764a33b1c9
Fix #1124 - Handle stack-build errors with leading spaces
2017-11-13 22:47:19 +00:00
w0rp
6c112dd1cc
Fix #1122 - Handle notes for shellcheck errors again, and use type 'I' for notes
2017-11-13 16:08:09 +00:00
w0rp
7edcb2210b
Show problems from other files for lessc
2017-11-12 11:35:01 +00:00
Eddie Lebow
365d023d0e
perlcritic: all issues are warnings
...
Perlcritic is a style checker, not a syntax validator.
This change was originally proposed by @RsrchBoy in
https://github.com/w0rp/ale/pull/784 .
2017-11-12 10:56:53 +00:00
jnduli
6c60ca24c1
Add rstcheck linter to check for errors in restructured text ( #1090 )
2017-11-12 10:56:53 +00:00
Florian Beeres
52b6024997
Handle flow extra errors ( #946 )
...
Show more information for Flow errors with :ALEDetail
2017-11-12 10:56:53 +00:00
w0rp
a8c5e0f4dc
Simplfy semver handling and share the semver version cache across everything
2017-11-12 10:56:53 +00:00
w0rp
8ef8a35462
Fix #1101 - Ignore no-implicit-dependencies errors until TSLint supports checking via stdin properly
2017-11-09 10:32:41 +00:00
Taylor Blau
248a5eb2f6
ale_linters: add 'dafny' linter
2017-11-07 22:11:49 -08:00
w0rp
34674e088d
Fix #1061 - Handle the filenames returned by javac
2017-11-05 15:33:31 +00:00
w0rp
6e681d9066
Fix #971 - Add an option for turning errors about missing eslint config files off.
2017-10-28 12:11:33 +01:00
Nathaniel Williams
e4456a4e0e
Add tflint fot Terraform
2017-10-26 19:37:04 +01:00
w0rp
2f5b94e07d
Remove redundant code for the GCC handler, and fix bugs with errors for - not being parsed
2017-10-26 00:09:26 +01:00
w0rp
da365134b5
Fix an exception with notes with no previous message
2017-10-25 23:43:09 +01:00
Gerry Agbobada
25d2af0b25
Handle multiple files localtion lists with gcc handler ( #1034 )
...
Handle multiple files in the GCC handler.
2017-10-25 22:29:36 +01:00
w0rp
5029078df3
Set better highlights for write-good
2017-10-25 00:58:16 +01:00
Sumner Evans
7ac07a30b8
Fix #643 - Add support for write-good for many languages
2017-10-25 00:28:06 +01:00
w0rp
1a5ef969a5
Merge branch 'aurieh-master'
2017-10-24 22:45:30 +01:00
aurieh
b401772d23
Add Vader tests
2017-10-25 00:39:54 +03:00
Diego Oliveira
b172cd8b17
Add phan as a linter for php files ( #1026 )
...
Add phan for checking PHP code
2017-10-24 22:25:02 +01:00
w0rp
c4579e1809
Merge pull request #1032 from diegoholiveira/tests_phpmd
...
Fix the regex of phpmd
2017-10-22 18:02:44 +01:00
Diego Oliveira
5b986ce5d3
Fix the regex of phpmd
2017-10-22 14:56:09 -02:00
rhysd
4339af2bb6
add support for remark-lint
2017-10-19 18:17:04 +09:00
w0rp
90d4fb139c
#977 Complain about the lack of configuration files for scalastyle in such a way that users will be directed towards getting it to work
2017-10-15 00:20:43 +01:00
w0rp
dded246aba
Merge pull request #968 from adriaanzon/luacheck-whitespace
...
Luacheck: Respect warn_about_trailing_whitespace option
2017-10-12 22:06:48 +01:00
Adriaan Zonnenberg
221cb0f8cf
Add some extra tests for luacheck whitespace warnings
2017-10-12 22:59:45 +02:00
Linda_pp
70177480ba
Add llc integration for LLVM IR ( #979 )
...
Check LLVM IR with llc
2017-10-10 10:13:09 +01:00
w0rp
4634b1be93
Fix Flow and Idris tests for Windows
2017-10-01 18:41:41 +01:00
w0rp
5731616cd2
Get the mcsc handler tests to pass on Windows
2017-10-01 17:36:47 +01:00
Xristoph Hintermüller
8f6044b8b6
Implemented review recommendations
...
Implements suggestions and recommendations suggested by the first review
of the "Advance C# linter based on mcs -t:module (#952 )" pull request.
- Clarifies and simplifies description of linters and options
- Added links to help file and marked the mcsc linter as to be run only
when file in buffer is saved or loaded.
- Added comments to the mcsc.vim file to clarify code
- removed type checks considered not necessary be reviewer.
- addresses findings by vader
- removed call to getcwd and cd in vim script
- handler expands file names relative to route of source tree into
absolute pathes. Fixes errors not being marked when vim is started
from subdirectory of source tree.
- implements tests for mcs.vim and mcsc.vim linter
2017-09-27 13:21:05 +02:00
w0rp
a59d1ddbf3
Make temporary file detection work on just about all platforms
2017-09-14 00:11:17 +01:00
w0rp
71c2e65d64
Fix a mistake in the flow tests
2017-09-14 00:10:47 +01:00
w0rp
52c933cd72
Report problems in other files for brakeman, and get the tests to pass on Windows
2017-09-13 23:33:13 +01:00
w0rp
3d2bddf4af
Get some more random tests to pass on Windows
2017-09-13 23:30:39 +01:00
w0rp
a7614d9502
Get more tests to pass on Windows
2017-09-11 22:25:15 +01:00
w0rp
1a52a2b880
Get the TSLint handler tests to pass on Windows
2017-09-10 00:06:31 +01:00
w0rp
18f4d5a6da
Simplify some Rust handler code, and get the Rust handler tests passing on Windows
2017-09-10 00:06:31 +01:00
Sven-Hendrik Haase
ff28836616
Add GLSL linter using glslang ( #914 )
...
* Add a glslang linter for GLSL
2017-09-08 11:06:47 +01:00
BlahGeek
73d031d7ea
Add cuda nvcc linter ( #874 )
...
* add cuda nvcc linter
2017-09-07 19:23:58 +01:00
w0rp
c277cdef8c
Add an option for ignoring the output of TSLint if a file contains a single blank line
2017-09-06 11:17:21 +01:00
w0rp
6833e01f23
#894 - Replace ugly temporary filenames for Haskell problems with the buffer's basename
2017-09-03 21:53:48 +01:00
Jake Zimmerman
63e8946fc8
Detect and use CM files for smlnj ( #884 )
...
* Detect and use CM files for smlnj
* Split into two checkers
- one for CM projects
- one for single SML files
* Fix some typos
* Fix error caught by writing tests
We want to actually use `glob` to search in paths upwards from us.
(Previously we were just searching in the current directory every time!)
* Fix errors from former test run
* Write tests for GetCmFile and GetExecutableSmlnj
* Typo in 'smlnj/' fixture filenames
2017-09-03 19:56:14 +01:00
Jon Parise
f4c5d29c64
Add a linter for Apache Thrift IDL files
...
This linter works by invoking the `thrift` compiler with the buffer
contents and reporting any parser and code generation issues.
The handler rolls its own output-matching loop because we have the
(unfortunate) requirement of handling error output that spans multiple
lines.
Unit tests cover both the command callback and handler, and there is
initial documentation for all of the option variables.
2017-08-30 11:08:06 -07:00
w0rp
b9cf450684
Set the end column for some Vint problems
2017-08-26 17:23:20 +01:00
Michael
8f8d015dae
Add pycodestyle Python linter support ( #872 )
...
Add a pycodestyle linter
2017-08-25 12:46:56 +01:00
w0rp
80c7fbcefe
Remove some redundant eslint test code
2017-08-22 21:40:00 +01:00
w0rp
a3299bf03a
Fix #864 - Use the user's configured executable for phpstan for executable() checks
2017-08-21 18:42:18 +01:00
w0rp
cc02eb8a5a
#653 Show errors from other files for mypy
2017-08-20 17:43:42 +01:00
w0rp
7112776d1b
#653 Update tslint to set the filename key for problems in other files
2017-08-20 00:05:15 +01:00
Dmitri Vereshchagin
e9e1bec772
Update SyntaxErl linter tests
2017-08-19 17:18:48 +03:00
w0rp
342e83db60
Include the ruleName for errors in tslint problems
2017-08-16 10:37:36 +01:00
Scott Bonds
322910dc0b
Add linter for Idris ( #838 )
...
* Add linter for Idris
* Fix parsing warnings and column ranges in Idris linter
* Make Idris linter configurable. Fix help tag.
2017-08-10 21:09:58 +01:00
Nick James
a3d2fb5688
Add Tcl nagelfar linter
2017-08-02 23:05:19 +01:00
Junegunn Choi
bc1cf285c2
Rubocop: Show cop name
2017-08-02 13:55:54 +09:00
w0rp
fa33faad9e
#810 - Handle output which is not JSON in many linters
2017-07-27 00:45:25 +01:00
w0rp
ded1bc14df
#810 Ignore output which isn't JSON for brakeman
2017-07-26 23:17:46 +01:00
w0rp
86297a7c65
Fix #804 - Do not run scalac for sbt files
2017-07-26 10:29:46 +01:00
w0rp
a0059cfe03
Fix #795 - Handle GCC errors without column numbers
2017-07-23 00:39:59 +01:00
w0rp
78e37dabb7
Fix #794 - Filter out any preceding lines of Flow output which aren't JSON
2017-07-22 19:21:30 +01:00
w0rp
0b50ebb0f0
Fix #779 - Handle empty output for tslint
2017-07-19 10:26:03 +01:00
w0rp
235fc90e22
Fix #308 - Check Dart files with dartanalyzer
2017-07-18 23:57:33 +01:00
w0rp
aa94d0902a
Fix #710 - Show hlint suggestions as info items, and include end line and column numbers
2017-07-18 13:14:02 +01:00
Matthew Turland
da410caff8
Add yaml swaglint linter ( #771 )
...
* Add yaml swaglint linter
2017-07-17 20:28:21 +01:00
Dmitri Vereshchagin
1aea6a34ff
Add SyntaxErl linter
...
These changes add [SyntaxErl][1] integration. SyntaxErl is a syntax
checker tool for Erlang.
[1]: https://github.com/ten0s/syntaxerl
2017-07-16 15:35:21 +03:00
Kevin Kays
4c50aec79c
Add scalastyle linter ( #766 )
...
* Add support for scalastyle
* Add scalastyle docs
* scalastyle support for column numbers
* off by one column
* Add tests for scalastyle command and handler
* update readme for scalastyle
* allow full scalastyle options instead of just config file
* fix indentation
* allow scalastyle config file in parent directories by a couple names.
* check for missing match args with empty
* remove echo
* use a for loop
2017-07-13 23:41:01 +01:00
w0rp
b50ae96413
#769 Ignore stderr output and output without JSON we can read for rubocop
2017-07-13 22:47:43 +01:00
Eddie Lebow
dcbb0ffee5
Rubocop: handle empty 'files' array in output
...
The handler previously assumed there would be at least one entry in the
'files' array in the output JSON. It looks like this in the normal case:
"files":[{"path":"app/models/image.rb","offenses":[]}]
But if RuboCop's config excludes the specified input files, causing no
files to be linted, the output is emptier:
"files":[]
This change causes the handler to treat that case correctly, and also
exit early if the reported offense_count is zero.
2017-07-12 19:53:58 -04:00
w0rp
5885954197
Fix #760 - Report problems with configuration files for rubocop
2017-07-12 22:41:06 +01:00
Eddie Lebow
bc32e24203
Add rails_best_practices handler ( resolves #655 ) ( #751 )
...
* Move FindRailsRoot() to more general location
* Add rails_best_practices handler (resolves #655 )
* Update documentation for rails_best_practices
Also add brakeman to *ale* documentation.
* rails_best_practices: allow overriding the executable
* rails_best_practices: format help correctly
* rails_best_practices: capture tool output on Windows
2017-07-12 10:43:47 +01:00
Eddie Lebow
eb79b52a9a
Brakeman: Remove unused cache var from tests
2017-07-11 01:30:06 -04:00
w0rp
6a84605c57
Make every test set filenames and switch directories in the same way, and fix some missing escaping for the rubocop linter
2017-07-09 22:43:31 +01:00
Eddie Lebow
ab0e76dbd5
Use rubocop's JSON output format ( resolves #339 ) ( #738 )
...
* Use rubocop's JSON output format (resolves #339 )
Rubocop's emacs formatter seems to have changed format in some
not-so-ancient version. The JSON formatter should provide a more stable
interface than parsing lines with a regex.
The JSON formatter was introduced in mid-2013, so it should be safe to
assume available in any reasonably-modern environment. The oldest
currently-supported version of ruby (according to ruby-lang.org) was
not supported by rubocop until 2014.
* Rubocop: Use global function for GetType
* Rubocop: Use scope prefix in GetType
* Rubocop: Update command_callback test
* Rubocop: add end_col to Handle
2017-07-09 15:48:04 +01:00
w0rp
836a2cfe3b
Fix issues with running individual tests, and get the Vim tests to run on certain machines again
2017-07-09 14:58:21 +01:00
Jonathan Boudreau
7def00d5a9
Use different reporter to support older versions of jscs ( #737 )
...
* Use different reporter to support older versions of jscs
* Add test and make more consistent with other code
* Add documentation for jscs
* Add more test coverage
2017-07-08 18:37:21 +01:00
daa84
46225f3bb1
Fix windows path check on rust linter ( #736 )
...
* Fix rust linter on windows
* Add windows path test
* Use ale#path#IsBufferPath to compare paths
* Fix errors
2017-07-07 17:03:17 +01:00
w0rp
d9a7364dae
#710 - Fix a parsing bug caused by the last fix
2017-07-07 10:59:00 +01:00
w0rp
130928590b
#710 - Show warnings as warnings for ghc
2017-07-07 00:28:22 +01:00
w0rp
bb293b297c
Fix #216 - Filter out errors for other files for ansible-lint
2017-07-03 23:16:39 +01:00
w0rp
fd6f05c9ea
Report exceptions thrown for stylelint
2017-07-03 16:13:10 +01:00
Ryan
2330837747
Adjust output of luacheck
linter to include error code ( #717 )
...
* linters/lua/luacheck: Show error code in message
2017-07-02 00:20:59 +01:00
Gabriel Sobrinho
29746d492e
Fix brakeman handler when there is no output
2017-07-01 11:18:21 -03:00
w0rp
f984c5fb83
Merge pull request #699 from jwoudenberg/master
...
Elm linter shows full error ranges
2017-06-27 22:24:48 +01:00
Jasper Woudenberg
72161b82ef
Elm linter shows full error ranges
2017-06-27 20:16:29 +02:00
Nick Krichevsky
14cca6d115
Remove style classification from E999 ( #696 )
...
* Remove style classification from E999
* Update test_flake8_handler to reflect E999 changes
2017-06-27 15:07:26 +01:00
John Sivak
539a76c5ae
Change regex to better handle messages with multiple groups of parentheses.
2017-06-25 20:19:39 -04:00
w0rp
1917e9157c
Fix #694 - Ignore BEGIN failed errors for Perl only for certain errors
2017-06-25 21:49:57 +01:00
John Sivak
a9b29fef28
Feature/restore display of symbol ( #693 )
...
* Add display of the pylint symbol name after the message.
* Update test to pass.
2017-06-25 18:22:13 +01:00
Jasper Woudenberg
c2f69b7750
Improve elm linter ( #637 )
...
* Improve elm linter
Some types of errors do not return nice JSON.
Show them on the first line instead of showing nothing.
* Remove unnecessary properties from elm linter
* Add a vader test for elm-make linter
* Test non-JSON elm-make errors are shown
2017-06-25 17:12:40 +01:00
w0rp
93473a4101
Fix #690 - Filter out errors from other files for Haskell
2017-06-25 17:08:57 +01:00
w0rp
229a1c092a
#684 Handle tslint errors without the severity included, and use character instead of position for the columns
2017-06-25 16:40:44 +01:00
w0rp
4eaa990fe8
Fix #684 - Use the JSON format for tslint, for consistency betwen versions, and handling of end line and column numbers
2017-06-25 13:56:51 +01:00
w0rp
fbf8ccb882
Fix #677 - Ignore errors from other files for cppcheck
2017-06-22 14:08:58 +01:00
w0rp
47401a6eda
Fix the Perl tests in Docker
2017-06-22 13:51:18 +01:00