mirror of https://github.com/folke/lazy.nvim.git
feat(ui): check pinned packages that can't be updated (#1139)
* style: fix filter types * feat: check outdated pinned plugins
This commit is contained in:
parent
42fb1e89ad
commit
4446fdb9af
|
@ -409,6 +409,7 @@ return {
|
||||||
concurrency = nil, ---@type number? set to 1 to check for updates very slowly
|
concurrency = nil, ---@type number? set to 1 to check for updates very slowly
|
||||||
notify = true, -- get a notification when new updates are found
|
notify = true, -- get a notification when new updates are found
|
||||||
frequency = 3600, -- check for updates every hour
|
frequency = 3600, -- check for updates every hour
|
||||||
|
check_pinned = false, -- check for pinned packages that can't be updated
|
||||||
},
|
},
|
||||||
change_detection = {
|
change_detection = {
|
||||||
-- automatically check for config file changes and reload the ui
|
-- automatically check for config file changes and reload the ui
|
||||||
|
|
|
@ -119,6 +119,7 @@ M.defaults = {
|
||||||
concurrency = nil, ---@type number? set to 1 to check for updates very slowly
|
concurrency = nil, ---@type number? set to 1 to check for updates very slowly
|
||||||
notify = true, -- get a notification when new updates are found
|
notify = true, -- get a notification when new updates are found
|
||||||
frequency = 3600, -- check for updates every hour
|
frequency = 3600, -- check for updates every hour
|
||||||
|
check_pinned = false, -- check for pinned packages that can't be updated
|
||||||
},
|
},
|
||||||
change_detection = {
|
change_detection = {
|
||||||
-- automatically check for config file changes and reload the ui
|
-- automatically check for config file changes and reload the ui
|
||||||
|
|
|
@ -42,7 +42,14 @@ M.log = {
|
||||||
error("no target commit found")
|
error("no target commit found")
|
||||||
end
|
end
|
||||||
assert(target.commit, self.plugin.name .. " " .. target.branch)
|
assert(target.commit, self.plugin.name .. " " .. target.branch)
|
||||||
if not Git.eq(info, target) then
|
if Git.eq(info, target) then
|
||||||
|
if Config.options.checker.check_pinned then
|
||||||
|
local last_commit = Git.get_commit(self.plugin.dir, target.branch, true)
|
||||||
|
if not Git.eq(info, { commit = last_commit }) then
|
||||||
|
self.plugin._.outdated = true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
self.plugin._.updates = { from = info, to = target }
|
self.plugin._.updates = { from = info, to = target }
|
||||||
end
|
end
|
||||||
table.insert(args, info.commit .. ".." .. target.commit)
|
table.insert(args, info.commit .. ".." .. target.commit)
|
||||||
|
|
|
@ -14,6 +14,7 @@
|
||||||
---@field is_local? boolean
|
---@field is_local? boolean
|
||||||
---@field updates? {from:GitInfo, to:GitInfo}
|
---@field updates? {from:GitInfo, to:GitInfo}
|
||||||
---@field cloned? boolean
|
---@field cloned? boolean
|
||||||
|
---@field outdated? boolean
|
||||||
---@field kind? LazyPluginKind
|
---@field kind? LazyPluginKind
|
||||||
---@field dep? boolean True if this plugin is only in the spec as a dependency
|
---@field dep? boolean True if this plugin is only in the spec as a dependency
|
||||||
---@field cond? boolean
|
---@field cond? boolean
|
||||||
|
|
|
@ -50,14 +50,12 @@ return {
|
||||||
title = "Breaking Changes",
|
title = "Breaking Changes",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
---@param plugin LazyPlugin
|
|
||||||
filter = function(plugin)
|
filter = function(plugin)
|
||||||
return plugin._.updated and plugin._.updated.from ~= plugin._.updated.to
|
return plugin._.updated and plugin._.updated.from ~= plugin._.updated.to
|
||||||
end,
|
end,
|
||||||
title = "Updated",
|
title = "Updated",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
---@param plugin LazyPlugin
|
|
||||||
filter = function(plugin)
|
filter = function(plugin)
|
||||||
return plugin._.cloned
|
return plugin._.cloned
|
||||||
end,
|
end,
|
||||||
|
@ -66,7 +64,7 @@ return {
|
||||||
{
|
{
|
||||||
---@param plugin LazyPlugin
|
---@param plugin LazyPlugin
|
||||||
filter = function(plugin)
|
filter = function(plugin)
|
||||||
return plugin._.updates
|
return plugin._.updates ~= nil
|
||||||
end,
|
end,
|
||||||
title = "Updates",
|
title = "Updates",
|
||||||
},
|
},
|
||||||
|
@ -92,7 +90,13 @@ return {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
filter = function (plugin)
|
filter = function (plugin)
|
||||||
return plugin._.loaded
|
return plugin._.outdated
|
||||||
|
end,
|
||||||
|
title = "Outdated",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filter = function(plugin)
|
||||||
|
return plugin._.loaded ~= nil
|
||||||
end,
|
end,
|
||||||
title = "Loaded",
|
title = "Loaded",
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in New Issue