Add a unimport linter for Python files (#4058)

Unimport (https://github.com/hakancelik96/unimport/) is a linter,
formatter for finding and removing unused import statements.

This introduces linting support, although fixer support could come
later.
This commit is contained in:
Jon Parise
2022-02-07 22:54:25 -08:00
committed by GitHub
parent 2428d4d81d
commit 8b1ea33cc0
9 changed files with 219 additions and 0 deletions

View File

@@ -1066,6 +1066,58 @@ g:ale_python_reorder_python_imports_use_global
See |ale-integrations-local-executables|
===============================================================================
unimport *ale-python-unimport*
`unimport` will be run from a detected project root, per |ale-python-root|.
g:ale_python_unimport_auto_pipenv *g:ale_python_unimport_auto_pipenv*
*b:ale_python_unimport_auto_pipenv*
Type: |Number|
Default: `0`
Detect whether the file is inside a pipenv, and set the executable to `pipenv`
if true. This is overridden by a manually-set executable.
g:ale_python_unimport_auto_poetry *g:ale_python_unimport_auto_poetry*
*b:ale_python_unimport_auto_poetry*
Type: |Number|
Default: `0`
Detect whether the file is inside a poetry, and set the executable to `poetry`
if true. This is overridden by a manually-set executable.
g:ale_python_unimport_executable *g:ale_python_mypy_executable*
*b:ale_python_unimport_executable*
Type: |String|
Default: `'unimport'`
See |ale-integrations-local-executables|
Set this to `'pipenv'` to invoke `'pipenv` `run` `unimport'`.
Set this to `'poetry'` to invoke `'poetry` `run` `unimport'`.
g:ale_python_unimport_options *g:ale_python_mypy_options*
*b:ale_python_unimport_options*
Type: |String|
Default: `''`
This variable can be changed to add command-line arguments to the unimport
invocation.
g:ale_python_unimport_use_global *g:ale_python_mypy_use_global*
*b:ale_python_unimport_use_global*
Type: |Number|
Default: `get(g:, 'ale_use_global_executables', 0)`
See |ale-integrations-local-executables|
===============================================================================
vulture *ale-python-vulture*

View File

@@ -463,6 +463,7 @@ Notes:
* `pyre`
* `pyright`
* `reorder-python-imports`
* `unimport`
* `vulture`!!
* `yapf`
* QML

View File

@@ -3081,6 +3081,7 @@ documented in additional help files.
pyre..................................|ale-python-pyre|
pyright...............................|ale-python-pyright|
reorder-python-imports................|ale-python-reorder_python_imports|
unimport..............................|ale-python-unimport|
vulture...............................|ale-python-vulture|
yapf..................................|ale-python-yapf|
qml.....................................|ale-qml-options|