codeium.vim
codeium.vim copied to clipboard
[Bug] Neovim hangs on :wq (possible race condition)
Description
I hit a bug with codeium that prevent neovim from closing and let it hang indefinitely. It is not easy to determine exactly the required condition but here is what I found:
- the filetype needs to be ignored
- you don't need to modify the file in the current session but the file cannot be empty for the whole session
Repro
- disable codeium for python. For me using lazy.nvim that looks like that (init is executed before loading codeium):
{
"Exafunction/codeium.vim",
init = function()
vim.g.codeium_filetypes = { python = false }
end,
}
- open a new python file
- write something in the file
def fib():
pass
- Quit with
:wq - Sometime neovim doesn't hang on this one, reopen the file, and quit right away with
:wq
As far as I can tell :wqa and :q do not trigger the bug.
Other interesting informations
- I use Neovim v0.9.5 on Archlinux
- Codeium.vim is on commit 31dd296
- when the file is opened
ps -eshows onelanguage_serverprocess, but when the editor is hangingps -eshows 2 processes. Both processes are new as their PID is greater the initiallanguage_server