Fails update vimdoc-ja(using lazy.nvim)
mimikun opened this issue · 10 comments
Sometimes updating vimdoc-ja fails.
Failed (1)
vimdoc-ja h (c)
You have local changes in `/home/username/.local/share/nvim/site/lazy/vimdoc-ja`:
* doc/tags-ja
Please remove them to update.
You can also press `x` to remove the plugin and then `I` to install it again.I need to uninstall and reinstall again.
It's very troublesome.
env
- neovim: nightly
- lazy.nvim: latest
- OS:
- Windows: Windows 11 Pro 22H2
- Ubuntu: 22.04(WSL2)
Windows
エディション Windows 11 Pro
バージョン 22H2
インストール日 2022/09/21
OS ビルド 22621.2500
エクスペリエンス Windows Feature Experience Pack 1000.22677.1000.0neovim
❯ nvim -V1 -v
NVIM v0.10.0-dev-bc850ba
Build type: RelWithDebInfo
LuaJIT 2.1.1697887905
Compilation: /usr/bin/gcc-10 -O2 -g -Og -g -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99
-Wshadow -Wconversion -Wvla -Wdouble-promotion -Wmissing-noreturn -Wmissing-format-attribute -Wmissing-prototypes -fno-common -Wno-unused-result -Wimplicit-fallthrough -fdiagnostics-color=always -fstack-protector-strong -DUNIT_TESTING -DINCLUDE_GENERATED_DECLARATIONS -D_GNU_SOURCE -DNVIM_TS_HAS_SET_MAX_START_DEPTH -I/home/runner/work/neovim/neovim/.deps/usr/include/luajit-2.1 -I/usr/include -I/home/runner/work/neovim/neovim/.deps/usr/include -I/home/runner/work/neovim/neovim/build/src/nvim/auto -I/home/runner/work/neovim/neovim/build/include -I/home/runner/work/neovim/neovim/build/cmake.config -I/home/runner/work/neovim/neovim/src
system vimrc file: "$VIM/sysinit.vim"
fall-back for $VIM: "
/home/runner/work/neovim/neovim/build/nvim.AppDir/usr/share/nvim"
Run :checkhealth for more infoWhether to include doc/tags-ja in the repository was discussed before: vim-jp/vimdoc-ja-working#268
At that time, we decided to include it because Vim's help recommends to do so.
But, this kind of issue has been reported several times: e.g. vim-jp/vimdoc-ja-working#1206
We might need to reconsider it?
(I hope plugin managers handle this correctly, though.)
As far as I've researched, there are only a limited number of plugin managers that address this issue.
- neovim: pckr.nvim
Is it possible to solve this by creating a branch (e.g. release) for installation with the plugin manager and setting it to ignore doc/tags-ja there?
Both dein.vim and dpp.vim also don't have the problem.
Unfortunately, there are more "bad behavior" plugins than "good behavior" plugins.
good behavior plugins
- Shougo/dein.vim (Unmainteined)
- Shougo/dpp.vim
- k-takata/minpac
- lewis6991/pckr.nvim
- wbthomason/packer.nvim (Unmainteined)
bad behavior plugins
The reason that plugin managers like lazy generate doc tags for installed/updated plugins, is that 99% of the plugins do not provide doc tags, or ship outdated doc tags.
vimdoc-ja is in the minority here.
It's also a bad idea to put doc/tags under version control, since they don't really seem to be idempotent.
I'm not planning to add any kind of exceptions for plugin managed doc tags to lazy.nvim
I was able to avoid this issue by implementing a workaround based on https://github.com/delphinus/dotfiles/blob/master/.config/nvim/lua/core/lazy/init.lua.
Thank you!
@mimikun Hmm, I believe merging the PR below resolved this issue.
vim-jp/vimdoc-ja-working#1434
Thank you.
I'll try it once the changes from that commit are reflected in this repository.
It has already been reflected.