diff options
author | Daniel Hahler <git@thequod.de> | 2016-10-22 17:35:01 +0200 |
---|---|---|
committer | Daniel Hahler <git@thequod.de> | 2017-01-08 23:26:42 +0100 |
commit | 0583ca63a52e2dea8945475e726d1c7d55da2ec7 (patch) | |
tree | 6df658ede4c80f5db6761a880a1872b8ef187190 | |
parent | 339dd4b1fb25db2c592cd93e01d83a5b03a66f66 (diff) | |
download | rneovim-0583ca63a52e2dea8945475e726d1c7d55da2ec7.tar.gz rneovim-0583ca63a52e2dea8945475e726d1c7d55da2ec7.tar.bz2 rneovim-0583ca63a52e2dea8945475e726d1c7d55da2ec7.zip |
Improve error reporting for Python health check
- s:version_info: return errors from the `import`
- skip report_ok for latest version, in case the current version was
not found. status contains the error that has been reported in that
case already.
-rw-r--r-- | runtime/autoload/health/provider.vim | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/runtime/autoload/health/provider.vim b/runtime/autoload/health/provider.vim index a26ac7e902..1d181f9ac4 100644 --- a/runtime/autoload/health/provider.vim +++ b/runtime/autoload/health/provider.vim @@ -155,13 +155,10 @@ function! s:version_info(python) abort endif let nvim_path = s:trim(s:system([ - \ a:python, - \ '-c', - \ 'import neovim; print(neovim.__file__)'])) - let nvim_path = s:shell_error ? '' : nvim_path - - if empty(nvim_path) - return [python_version, 'unable to find nvim executable', pypi_version, 'unable to get nvim executable'] + \ a:python, '-c', 'import neovim; print(neovim.__file__)'])) + if s:shell_error || empty(nvim_path) + return [python_version, 'unable to load neovim Python module', pypi_version, + \ nvim_path] endif " Assuming that multiple versions of a package are installed, sort them @@ -172,7 +169,7 @@ function! s:version_info(python) abort return a == b ? 0 : a > b ? 1 : -1 endfunction - let nvim_version = 'unable to find nvim version' + let nvim_version = 'unable to find neovim Python module version' let base = fnamemodify(nvim_path, ':h') let metas = glob(base.'-*/METADATA', 1, 1) \ + glob(base.'-*/PKG-INFO', 1, 1) @@ -390,7 +387,7 @@ function! s:check_python(version) abort if s:is_bad_response(status) call health#report_warn(printf('Latest %s-neovim is NOT installed: %s', \ python_bin_name, latest)) - elseif !s:is_bad_response(latest) + elseif !s:is_bad_response(latest) !s:is_bad_response(current) call health#report_ok(printf('Latest %s-neovim is installed: %s', \ python_bin_name, latest)) endif |