summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-10-19Parse clj-kondo lines that don't include row/col (#3946)Randy Stauner
Some custom linter hooks don't include these numbers.
2021-10-19fix(hadolint): set code field as well (#3943)infokiller
2021-10-16Fix 3941 - add version check to isort fixer (#3942)Horacio Sanson
2021-10-15Fix 3207 - do not send didSave notification if not supported (#3930)Horacio Sanson
2021-10-11erblint as fixer (#3935)Roeland
* fixer erblint * erblint fixer test
2021-10-09Add support for erblint (#3931)Roeland
* support for erblint * fix tests * test for handler * wrong names * typo * doc layout * CI failed?
2021-10-07Implement textDocument/didSave includeText optional argument (#3925)Wilson E. Alvarez
2021-10-07sml: use filenames (fix #1084) (#3860)D. Ben Knoble
2021-10-07codefix: Fix code actions that return Command[] directly instead of ↵Tomáš Janoušek
CodeAction[] (#3929) According to https://microsoft.github.io/language-server-protocol/specifications/specification-3-17/#textDocument_codeAction, the response to textDocument/codeAction is: (Command | CodeAction)[] | null and the code only handled the case where it was a CodeAction that either specified an edit or a command, but didn't handle a direct Command. Note that the specification also says that both can be specified and then the edit is applied first, then the command. Furthermore, there seems to be some hacky code handling arguments directly, which I suspect is non-standard and only works with a specific LSP server that happens to pass the edits in the arguments unmodified.
2021-10-02Add flakehell python linter (#3295) (#3921)a666
2021-10-02feat: add deno lsp for javascript (#3924)Arnold Chand
* feat(js/deno): add deno lsp * fix(doc/typescript): typo * feat(doc/javascript): add deno lsp information * feat(doc/supported-tools): add deno to js list, sorted * fix(doc/javascript): update ToC and supported tools w/ deno
2021-10-02Implement virtual text support for vim (#3915)Magnus Groß
This requires the textprop and popupwin feature (vim 8.2). Fixes #3906
2021-09-23Fix: Failed to execute rubocop fixer on other machine (#3916)Yuto Ito
2021-09-21Add support for jsonnetfmt and jsonnet-lint (#3907)Trevor Whitney
* update to lates Signed-off-by: Trevor Whitney <trevorjwhitney@gmail.com> * fix up docs Signed-off-by: Trevor Whitney <trevorjwhitney@gmail.com> * fix docs Signed-off-by: Trevor Whitney <trevorjwhitney@gmail.com> * get tests passing Signed-off-by: Trevor Whitney <trevorjwhitney@gmail.com> * update regex Signed-off-by: Trevor Whitney <trevorjwhitney@gmail.com> * use ale#Pad and AssertFixer Signed-off-by: Trevor Whitney <trevorjwhitney@gmail.com>
2021-09-17[YAML] CircleCI: skip checking for new tool version (#3902)Götz Christ
This way the tool runs a bit faster and we don't create unneeded network requests. Don't know if there are other network requests still occurring.
2021-09-16ALECodeAction fix: check linter name when searching for nearest error. (#3901)Dalius Dobravolskas
It is easier to explain this fix with an example: * tsserver and LSPs ask for error information when you want to fix error. tsserver `ts@getCodeFixes` command needs tsserver error code. * now let's imagine that user has eslint and tsserver in use. Sometimes both can report same error in different way. * Now there is no guarantee which error will come first and if eslint error comes first then tsserver will not return code fixes as we are passing wrong error code to it. This fix will return proper error code based on linter.
2021-09-16Update ALE test docs to mention NVim 0.5 (#3904)Horacio Sanson
2021-09-15[ale-python-root] add `.pyre_configuration.local` to list of files (#3900)Oliver Albertini
Without this, we have one `pyre` process running across different pyre projects. With this change, files in different projects can be linted with pyre at the same time. Co-authored-by: Oliver Ruben Albertini <ora@fb.com>
2021-09-11Robot framework rflint support (#3715)Samuel Branisa
* Create rflint.vim support for robot framework by creating ale definition for rflint syntax linter * robot framework - rflint support
2021-09-10Fix 3897 - add poetry to isort (#3898)Horacio Sanson
Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-09-10[python/pyre.vim] Fix pyre persistent behavior (#3895)Oliver Albertini
It's necessary to provide a `-l` option to pyre with the closest parent directory containing a `.pyre_configuration.local` file, or simply change directory (cwd) to the root of the pyre project. Thanks to Ken Verbosky for the code that fixes this. Error seen when not using such a solution: ``` 1031.473923 on 6: Dropping message 'ƛ Background task unexpectedly quited: Invalid configuration: Cannot find any source files to analyze. Either `source_directories` or `targets` must be specified. ``` Issue with this approach is that if you are editing files under different projects, the `pyre persistent` process is not re-created for each file. We have to do `:ALEStopAlllsps` in order for the process to start with the new working directory. Co-authored-by: Oliver Ruben Albertini <ora@fb.com>
2021-09-08Improve the thriftcheck handler pattern (#3893)Jon Parise
More recent versions of thriftcheck use a more compliant GCC-style output format which includes a space before the "severity" group. This matches similar tools, like shellcheck. This change adjusts the handler's pattern to parse this format in a backwards-compatible way (even though backwards compatibility isn't critical long-term as thriftcheck itself is close to its 1.0 release).
2021-09-08Fix 3886 - Don't JSON decode completion user data if already a dict (#3894)Horacio Sanson
Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-09-06Fix truncated echo (#3889)Amadeus Demarzi
* Fix truncated echo In typescript, when putting the cursor on a `>` character of an arrow function, the displayString body comes back as an empty string, and means the split operation has 0 items, causing a failure when attempting to call TruncatedEcho. Even if there's a better fix, I'd assume this is a good safety since we are injesting external data. * Convert to use `empty()`
2021-09-05Introduce an ALELSPStarted autocommand (#3878)Jon Parise
This User autocommand is trigged immediately after an LSP process is successfully initialized. This provides a way to perform any additional initialization work, such as setting up buffer-level mappings.
2021-09-03Cppcheck backwards compat 1.34 (#3887)tsjordan-eng
* Add support for cppcheck 1.34 * Add cppcheck 1.34 tests, correct pattern Co-authored-by: Tyler S. Jordan <tsjorda@sandia.gov>
2021-08-25Add fixer for "dotnet format" (#3879)Jelte Fennema
The .NET ecosystem has an official tool for formatting its files: `dotnet format` This adds support for that tool to ALE.
2021-08-21Close #3872 - Add eslint-plugin-jsonc as a linter for JSON, JSONC and JSON5 ↵João Pesce
(#3873) * Add eslint as linter for JSON, JSONC and JSON5 Use the same lint configuration as eslint for javascript. * Add documentation for JSON* eslint support * Fix spacing in documentation * Update docs to be unopinionated about plugins Remove any preference for eslint plugins, since there are more thant one that would work * Reorder languages and tools in alphabetic order * Fix misalignment * Change orders to pass the tests
2021-08-09Dhall fixes: use stdin, doc errors (#3868)toastal
* purs-tidy * Dhall fixes: use stdin, docs errors
2021-08-09purs-tidy fix (#3867)toastal
* purs-tidy * Fixup for purs-tidy
2021-08-09Adds fixer for golines (#3862)pigfrown
* Adds fixer for golines * Repositions golines docs to be in alphabetical order * Fixes golines doc tag * Fixes formatting for golines docs
2021-08-08Fix 3853 - Update :floppy_disk: icon on supported tools list. (#3854)Horacio Sanson
Look for all linters that have "lint_file" set to 1 and verify tools that have it have the :floopy_disk: icon set and those that don't do not have it. Correspondingly added/removed !! on ale-supported-languages-and-tools.txt file. Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-08-08`purs-tidy` for PureScript (#3863)toastal
* purs-tidy * update email address for toastal
2021-08-08Fix 3865 - Disable scriptencoding vint error. (#3866)Horacio Sanson
- Add .vintrc.yaml configuration that disables the scriptencoding check (ProhibitMissingScriptEncoding) that is raised randomly. - Upgrade vint to 0.3.21. Project seems to have stopped here and 0.4.0 was never released. - Ensure the run-test scripts use the correct docker image (e.g. add tag) . Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-08-07Add neovim-05 flag to run-test help output (#3864)Horacio Sanson
Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-08-06Fix lint tests failing due to multibyte chars. (#3858)Horacio Sanson
For some reason CI tests started failing with these errors: > ale_linters/eruby/erb.vim:1:1: Use scriptencoding when multibyte char exists (see :help :scriptencoding) > ale_linters/mail/languagetool.vim:1:1: Use scriptencoding when multibyte char exists (see :help :scriptencoding) Not sure at which point or what changed for this to happen but this MR fixes it by removing the multibyte chars present on the problem files. Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-08-05Use md5(1) when available (#3855)Jon Parise
md5sum isn't available by default on macOS. Instead, it ships the BSD-style md5(1) command, which does the same thing but with different arguments. With this change, run-tests works out-of-the-box on macOS.
2021-08-05Add neovim 0.5 to list of test runtimes. (#3830)Horacio Sanson
* Add neovim 0.5 to list of test runtimes. * Update testbed docker image Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-08-04Add a thriftcheck linter (#3852)Jon Parise
ThriftCheck (https://github.com/pinterest/thriftcheck) is a linter for Thrift IDL files.
2021-08-03Fix link to jsonlint (#3850)Tobias Gruetzmacher
2021-08-03Add missing space before function reference (#3849)Jon Parise
2021-07-31Do not use tempfiles for ansible lint (#3846)Henrik Farre
* Used %s instead of std in * Set lint_file to 1 for ansible-lint so it does not use temp files * Fix test for ansible-lint
2021-07-28Correct the spelling of :ALEComplete (#3843)Jon Parise
2021-07-25Add support for `dart analyze` (#3825)ghsang
2021-07-25Add importMap option to deno Initialization Options (#3827)Arnold Chand
* feat(deno): move init options to handlers * feat(deno): add deno lsp support for js files * feat(deno): use default map option * feat(docs): add deno import map option * feat(deno): add tests for importMap option * fix(deno): use full path in importMap * feat(deno): remove deno as linter for js, separate PR * fix(deno): test for executable * fix(deno-test): include filename to simplify function
2021-07-25Python support poetry (#3834)Daniel Roseman
* Add poetry support to python linters and black fixer. * Update python.vim to detect poetry project. * Update ale.vim, add an option for poetry `g:ale_python_auto_poetry`. * Update ale-python.txt, add poetry support. * Add and update poetry related tests. Co-authored-by: unc0 <unc0@users.noreply.github.com>
2021-07-23Vim popup (#3817)D. Ben Knoble
* implement vim popups for preview Details on implementation ------------------------- - we make use of the |popupwin| api - we split implementations (Nvim* vs. Vim* prefix) and call the right one based on has('nvim') - we follow a similar structure in each function, using the relevant API - popup_list, win_execute, popup_settext in VimShow - popup_create in VimCreate - popup_close in VimClose Some differences ---------------- - we DON'T have VimPrepareWindowContent because we use arguments to popup_create for borders, padding, etc., and it also takes care of buffer creation. - we follow the protocol of setting and using w:preview for information, but we only need the ID - InsertEnter is the only autocommand required, because of popup_create's moved argument. Any cursor movement with 'any' will close the popup. This in turns means VimClose is only called from InsertMode, so no mode-restoration necessary - we don't tweak too much in the buffer because vim's popup buffers already have most relevant settings and aren't editable without calling popup functions. - I enabled scrollbars, close buttons, dragging, and resizing - vim popups get as big as they need to by default, so no worrying about truncating/hiding/size Note: we might want to consider changing w:preview to w:ale_preview to avoid clashes if someone else tries to use the same variable * floating window: document that vim supports it * lint: fix indent/cont. lines
2021-07-21Fix 3801 - Add ALEDummySign some width. (#3832)Horacio Sanson
* Fix 3801 - Add ALEDummySign some width. Due to changes in NeoVim 0.5 the g:ale_sign_column_always configuration stopped working. This PR sets the ALEDummySign to a blank space so when g: ale_sign_column_always is set we have a sign with 1 width allowing the configuration to work as before. https://github.com/neovim/neovim/issues/13635 * Fix visual artifact on dummy sign * Fix visual artifact on dummy sign (attempt 2) Co-authored-by: Horacio Sanson <horacio@allm.inc>
2021-07-20Correct typo in python config filenames (#3826)foobarbyte
* Correct typo in a config file filename. .tool_versions should be .tool-versions * Correct typo in config file names. .tool_versions should be .tool-versions
2021-07-20racket: support racket-langserver lsp (#3808)D. Ben Knoble
* racket: support racket-langserver lsp * racket-langserver: find highest dir with init.rkt * autoload/ale/racket: re-indent to 4 spaces * racket: lint: sort supported tools * racket: lint: function! This is _not_ needed anymore, but the lint wants it. See :help E127 * racket-langserver: do not use new dict format * racket: lint: use snake_case * add tests for racket-langserver * racket-langserver tests: correct result values