From 649bce6e736635dc60bdb8602fcceaef84b9cdfb Mon Sep 17 00:00:00 2001 From: "neovim-backports[bot]" <175700243+neovim-backports[bot]@users.noreply.github.com> Date: Sun, 30 Mar 2025 08:09:07 +0800 Subject: [PATCH] fix(provider): misleading :checkhealth if user sets g:loaded_python3_provider=1 #32696 Problem: :checkhealth shows a confusing message if user sets g:loaded_python3_provider=1. Solution: - Show a warning if that var is set to 1. - Update provider modules to default to 0. Any user code that is checking for 1, is like already broken because these may be set to 2. (cherry picked from commit b4906577c9f1f0a8bcfa096288d1a56630b142f3) Co-authored-by: Sathya Pramodh <94102031+sathya-pramodh@users.noreply.github.com> --- runtime/autoload/provider/clipboard.vim | 6 +++--- runtime/autoload/provider/node.vim | 4 ++-- runtime/autoload/provider/perl.vim | 2 +- runtime/autoload/provider/python3.vim | 2 +- runtime/autoload/provider/ruby.vim | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/runtime/autoload/provider/clipboard.vim b/runtime/autoload/provider/clipboard.vim index abbd41d62a..7e7feb50e0 100644 --- a/runtime/autoload/provider/clipboard.vim +++ b/runtime/autoload/provider/clipboard.vim @@ -5,11 +5,11 @@ if exists('g:loaded_clipboard_provider') finish endif -" Default to 1. provider#clipboard#Executable() may set 2. +" Default to 0. provider#clipboard#Executable() may set 2. " To force a reload: " :unlet g:loaded_clipboard_provider " :runtime autoload/provider/clipboard.vim -let g:loaded_clipboard_provider = 1 +let g:loaded_clipboard_provider = 0 let s:copy = {} let s:paste = {} @@ -284,4 +284,4 @@ function! provider#clipboard#Call(method, args) abort endfunction " eval_has_provider() decides based on this variable. -let g:loaded_clipboard_provider = empty(provider#clipboard#Executable()) ? 1 : 2 +let g:loaded_clipboard_provider = empty(provider#clipboard#Executable()) ? 0 : 2 diff --git a/runtime/autoload/provider/node.vim b/runtime/autoload/provider/node.vim index 3e7b8b4ef9..7cd5cab864 100644 --- a/runtime/autoload/provider/node.vim +++ b/runtime/autoload/provider/node.vim @@ -1,7 +1,7 @@ if exists('g:loaded_node_provider') finish endif -let g:loaded_node_provider = 1 +let g:loaded_node_provider = 0 function! s:is_minimum_version(version, min_version) abort if empty(a:version) @@ -152,7 +152,7 @@ endfunction let s:err = '' let [s:prog, s:_] = provider#node#Detect() -let g:loaded_node_provider = empty(s:prog) ? 1 : 2 +let g:loaded_node_provider = empty(s:prog) ? 0 : 2 if g:loaded_node_provider != 2 let s:err = 'Cannot find the "neovim" node package. Try :checkhealth' diff --git a/runtime/autoload/provider/perl.vim b/runtime/autoload/provider/perl.vim index b439f751ae..5ebcc28aaf 100644 --- a/runtime/autoload/provider/perl.vim +++ b/runtime/autoload/provider/perl.vim @@ -11,5 +11,5 @@ function! provider#perl#Require(host) abort endfunction let s:prog = v:lua.vim.provider.perl.detect() -let g:loaded_perl_provider = empty(s:prog) ? 1 : 2 +let g:loaded_perl_provider = empty(s:prog) ? 0 : 2 call v:lua.require'vim.provider.perl'.start() diff --git a/runtime/autoload/provider/python3.vim b/runtime/autoload/provider/python3.vim index 43c14122d0..8c8a466e0d 100644 --- a/runtime/autoload/provider/python3.vim +++ b/runtime/autoload/provider/python3.vim @@ -11,5 +11,5 @@ function! provider#python3#Require(host) abort endfunction let s:prog = v:lua.vim.provider.python.detect_by_module('neovim') -let g:loaded_python3_provider = empty(s:prog) ? 1 : 2 +let g:loaded_python3_provider = empty(s:prog) ? 0 : 2 call v:lua.require'vim.provider.python'.start() diff --git a/runtime/autoload/provider/ruby.vim b/runtime/autoload/provider/ruby.vim index 07b4aca23f..9bcbcfc9dd 100644 --- a/runtime/autoload/provider/ruby.vim +++ b/runtime/autoload/provider/ruby.vim @@ -11,6 +11,6 @@ function! provider#ruby#Call(method, args) abort endfunction let s:prog = v:lua.vim.provider.ruby.detect() -let g:loaded_ruby_provider = empty(s:prog) ? 1 : 2 +let g:loaded_ruby_provider = empty(s:prog) ? 0 : 2 let s:plugin_path = expand(':p:h') . '/script_host.rb' call v:lua.require'vim.provider.ruby'.start(s:plugin_path)