Neovim Config Broke After Updating to 0.12
Workaround available Windows, macOS, Linux Updated October 21, 2026
Quick answer
Neovim 0.12 removed APIs deprecated in 0.10 and changed several defaults, so old plugins and copied configs can throw Lua errors. Update plugins, fix deprecated calls from the 0.12 news, and check health.
Most likely fix: Update every plugin first.
Symptoms
E5108 Lua errors on startup, missing diagnostic signs, broken highlighting or plugins failing in setup() after upgrading.
Why it happens
- Diagnostic signs defined with sign_define() (no longer supported)
- Calls to vim.diagnostic.disable()/is_disabled() (removed) or old vim.diagnostic.enable() signature
- vim.diff renamed to vim.text.diff; get_parser() returns nil instead of throwing
- Outdated plugins, especially nvim-treesitter on the frozen master branch
How to fix it
Try these in order — the most common fix is first.
1. Update every plugin first
- Run :Lazy sync (or vim.pack.update())
- Switch nvim-treesitter to the 'main' branch config
2. Fix removed diagnostic APIs
- Define signs via vim.diagnostic.config({ signs = { text = { ... } } }) instead of sign_define
- Replace vim.diagnostic.disable() with vim.diagnostic.enable(false)
3. Find the culprit
- Read the full error with :messages
- Run :checkhealth and look for deprecation warnings
- Search your config for vim.diff and change it to vim.text.diff
4. Roll back if you're on a deadline
- Install Neovim 0.11.7 from GitHub releases and pin your plugins
- Upgrade later with :help news-0.12 open
This guide also covers
- neovim 0.12 broke config
- neovim update broke plugins
- neovim e5108 error after update
- neovim 0.12 breaking changes
Still not working?
If Neovim keeps failing, you're not alone. See every Neovim problem users report or the alternatives people switch to.
Other Neovim errors
- Neovim LSP Not Working or Not Attaching
- require('lspconfig') Is Deprecated Warning in Neovim
- Neovim Treesitter Highlighting Not Working
- Neovim Clipboard Not Working (clipboard: No provider)
- Neovim Colors Wrong in tmux
- Neovim Escape Key Delay in tmux
- Mason Failed to Install Language Server in Neovim
- Why Is Neovim So Slow? (Startup Lag and Large Files)
- Neovim Autocomplete Not Working (blink.cmp / nvim-cmp)
- Neovim Python Provider Not Working (pynvim)