mirror of https://github.com/folke/lazy.nvim.git
feat: added health checks
This commit is contained in:
parent
8531995ec7
commit
dc2dcd2d5a
|
@ -23,10 +23,10 @@
|
||||||
|
|
||||||
## ✅ TODO
|
## ✅ TODO
|
||||||
|
|
||||||
- [ ] health checks: check merge conflicts async
|
- [x] health checks: check merge conflicts async
|
||||||
- [ ] unsupported props or props from other managers
|
- [x] unsupported props or props from other managers
|
||||||
- [ ] other packages still in site?
|
- [x] other packages still in site?
|
||||||
- [ ] other package manager artifacts still present? compiled etc
|
- [x] other package manager artifacts still present? compiled etc
|
||||||
- [ ] fix plugin details
|
- [ ] fix plugin details
|
||||||
- [ ] show disabled plugins (strikethrough?)
|
- [ ] show disabled plugins (strikethrough?)
|
||||||
- [ ] log file
|
- [ ] log file
|
||||||
|
|
|
@ -0,0 +1,57 @@
|
||||||
|
local Util = require("lazy.util")
|
||||||
|
local Config = require("lazy.core.config")
|
||||||
|
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
function M.check()
|
||||||
|
vim.health.report_start("lazy.nvim")
|
||||||
|
|
||||||
|
local existing = false
|
||||||
|
Util.ls(vim.fn.stdpath("data") .. "/site/pack/", function(path)
|
||||||
|
existing = true
|
||||||
|
vim.health.report_warn("found existing packages at `" .. path .. "`")
|
||||||
|
end)
|
||||||
|
if not existing then
|
||||||
|
vim.health.report_ok("no existing packages found by other package managers")
|
||||||
|
end
|
||||||
|
|
||||||
|
local packer_compiled = vim.fn.stdpath("config") .. "/plugin/packer_compiled.lua"
|
||||||
|
if vim.loop.fs_stat(packer_compiled) then
|
||||||
|
vim.health.report_error("please remove the file `" .. packer_compiled .. "`")
|
||||||
|
else
|
||||||
|
vim.health.report_ok("packer_compiled.lua not found")
|
||||||
|
end
|
||||||
|
|
||||||
|
local valid = {
|
||||||
|
1,
|
||||||
|
"name",
|
||||||
|
"uri",
|
||||||
|
"enabled",
|
||||||
|
"lazy",
|
||||||
|
"dev",
|
||||||
|
"dependencies",
|
||||||
|
"init",
|
||||||
|
"config",
|
||||||
|
"build",
|
||||||
|
"branch",
|
||||||
|
"tag",
|
||||||
|
"commit",
|
||||||
|
"version",
|
||||||
|
"pin",
|
||||||
|
"cmd",
|
||||||
|
"event",
|
||||||
|
"keys",
|
||||||
|
"ft",
|
||||||
|
"dir",
|
||||||
|
"_",
|
||||||
|
}
|
||||||
|
for _, plugin in pairs(Config.plugins) do
|
||||||
|
for key in pairs(plugin) do
|
||||||
|
if not vim.tbl_contains(valid, key) then
|
||||||
|
vim.health.report_warn("{" .. plugin.name .. "}: unknown key <" .. key .. ">")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
return M
|
Loading…
Reference in New Issue