-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Added jq support Cleaned up yq.vim file * Updated docs * Updated supported-tools.md * Added yq tests * Fix python linting/formatting error when in virtual environment (#4865) Python fixers and linters were failing when vim is running in a virtual environment that's located in a path containing text `poetry`. The cause of this was the regular expression `poetry\|pipenv\|uv$` which matches `poetry` and `pipenv` if they appear anywhere in the virtualenv path. * Add cljfmt fixer for clojure files (#4860) * When using `actionlint` look for & use a config file (#4858) Actionlint supports a config file and it lives in a very searchable path, as the only files it acts on are in the `.github` directory already. Look for an `actionlint.yml` and `.yaml` in that path, and use the config if its there. * Fix linting with jq (#4765) (#4862) With the 1.6 version of jq the error message start with "parse error". With the last version of jq the error message start with "jq: parse error". Fix it by using a regular expression that works in both cases. * Properly handle optional end_line_no/end_line_pos in sqlfluff (#4867) end_line_no/end_line_pos are optional. Example SQL: `SELECT NULL FROM {{ a_jinja_templated_table }};` `sqlfluff lint --dialect ansi --format json` gives the following error among others: ``` {"start_line_no": 1, "start_line_pos": 21, "code": "TMP", "description": "Undefined jinja template variable: 'a_jinja_templated_table'", "name": "", "warning": false} ``` As one can see there is no end_line_no/end_line_pos. * Add golangci-lint fixer (#4853) Closes #4616 * Fixed copy-paste misstakes and added filter to docs * Added test vader file for yq * Fixed and updated the test case --------- Co-authored-by: Walter Kaunda <[email protected]> Co-authored-by: rudolf ordoyne <[email protected]> Co-authored-by: Bea Hughes <[email protected]> Co-authored-by: benjos1234 <[email protected]> Co-authored-by: Coacher <[email protected]> Co-authored-by: Ian Stapleton Cordasco <[email protected]>
- Loading branch information
1 parent
5b2e69a
commit e82fd24
Showing
9 changed files
with
117 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
" Author: axhav <[email protected]> | ||
call ale#Set('yaml_yq_executable', 'yq') | ||
call ale#Set('yaml_yq_options', '') | ||
call ale#Set('yaml_yq_filters', '.') | ||
|
||
" Matches patterns like the following: | ||
let s:pattern = '^Error\:.* line \(\d\+\)\: \(.\+\)$' | ||
|
||
function! ale_linters#yaml#yq#Handle(buffer, lines) abort | ||
return ale#util#MapMatches(a:lines, s:pattern, {match -> { | ||
\ 'lnum': match[1] + 0, | ||
\ 'text': match[2], | ||
\}}) | ||
endfunction | ||
|
||
call ale#linter#Define('yaml', { | ||
\ 'name': 'yq', | ||
\ 'executable': {b -> ale#Var(b, 'yaml_yq_executable')}, | ||
\ 'output_stream': 'stderr', | ||
\ 'command': '%e', | ||
\ 'callback': 'ale_linters#yaml#yq#Handle', | ||
\}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
call ale#Set('yaml_yq_executable', 'yq') | ||
call ale#Set('yaml_yq_options', '') | ||
call ale#Set('yaml_yq_filters', '.') | ||
|
||
function! ale#fixers#yq#GetExecutable(buffer) abort | ||
return ale#Var(a:buffer, 'yaml_yq_executable') | ||
endfunction | ||
|
||
function! ale#fixers#yq#Fix(buffer) abort | ||
let l:options = ale#Var(a:buffer, 'yaml_yq_options') | ||
let l:filters = ale#Var(a:buffer, 'yaml_yq_filters') | ||
|
||
if empty(l:filters) | ||
return 0 | ||
endif | ||
|
||
return { | ||
\ 'command': ale#Escape(ale#fixers#yq#GetExecutable(a:buffer)) | ||
\ . ' ' . l:filters . ' ' | ||
\ . l:options, | ||
\} | ||
endfunction |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -729,6 +729,7 @@ Notes: | |
* `yamlfix` | ||
* `yamlfmt` | ||
* `yamllint` | ||
* `yq` | ||
* YANG | ||
* `yang-lsp` | ||
* Zeek | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
Before: | ||
runtime ale_linters/yaml/yq.vim | ||
|
||
After: | ||
call ale#linter#Reset() | ||
|
||
Execute (Should parse error correctly): | ||
AssertEqual | ||
\ [ | ||
\ { | ||
\ 'lnum': 2, | ||
\ 'text': "did not find expected ',' or ']'", | ||
\ } | ||
\ ], | ||
\ ale_linters#yaml#yq#Handle(bufnr(''), [ | ||
\ "Error: bad file '-': yaml: line 2: did not find expected ',' or ']'" | ||
\ ]) | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
Before: | ||
call ale#assert#SetUpLinterTest('yaml', 'yq') | ||
|
||
After: | ||
call ale#assert#TearDownLinterTest() | ||
|
||
Execute(The default command should be correct): | ||
AssertLinter 'yq', ale#Escape('yq') |