diff options
Diffstat (limited to 'lua/lvim/config/_deprecated.lua')
| -rw-r--r-- | lua/lvim/config/_deprecated.lua | 101 | 
1 files changed, 88 insertions, 13 deletions
| diff --git a/lua/lvim/config/_deprecated.lua b/lua/lvim/config/_deprecated.lua index 4cf4381e..d4b15f30 100644 --- a/lua/lvim/config/_deprecated.lua +++ b/lua/lvim/config/_deprecated.lua @@ -41,6 +41,24 @@ function M.handle()      end,    }) +  ---@deprecated +  lvim.builtin.dashboard = {} +  setmetatable(lvim.builtin.dashboard, { +    __newindex = function(_, k, _) +      deprecate("lvim.builtin.dashboard." .. k, "Use `lvim.builtin.alpha` instead. See LunarVim#1906") +    end, +  }) + +  ---@deprecated +  lvim.lsp.popup_border = {} +  setmetatable(lvim.lsp.popup_border, mt) + +  ---@deprecated +  lvim.lang = {} +  setmetatable(lvim.lang, mt) +end + +function M.post_load()    if lvim.lsp.override and not vim.tbl_isempty(lvim.lsp.override) then      deprecate("lvim.lsp.override", "Use `lvim.lsp.automatic_configuration.skipped_servers` instead")      vim.tbl_map(function(c) @@ -64,21 +82,78 @@ function M.handle()      )    end -  ---@deprecated -  lvim.builtin.dashboard = {} -  setmetatable(lvim.builtin.dashboard, { -    __newindex = function(_, k, _) -      deprecate("lvim.builtin.dashboard." .. k, "Use `lvim.builtin.alpha` instead. See LunarVim#1906") -    end, -  }) +  local function convert_spec_to_lazy(spec) +    local alternatives = { +      setup = "init", +      as = "name", +      opt = "lazy", +      run = "build", +      lock = "pin", +      tag = "version", +    } -  ---@deprecated -  lvim.lsp.popup_border = {} -  setmetatable(lvim.lsp.popup_border, mt) +    alternatives.requires = function() +      if type(spec.requires) == "string" then +        spec.dependencies = { spec.requires } +      else +        spec.dependencies = spec.requires +      end -  ---@deprecated -  lvim.lang = {} -  setmetatable(lvim.lang, mt) +      return "Use `dependencies` instead" +    end + +    alternatives.disable = function() +      if type(spec.disabled) == "function" then +        spec.enabled = function() +          return not spec.disabled() +        end +      else +        spec.enabled = not spec.disabled +      end +      return "Use `enabled` instead" +    end + +    alternatives.wants = function() +      return "It's not needed in most cases, otherwise use `dependencies`." +    end +    alternatives.needs = alternatives.wants + +    alternatives.module = function() +      spec.lazy = true +      return "Use `lazy = true` instead." +    end + +    for old_key, alternative in pairs(alternatives) do +      if spec[old_key] ~= nil then +        local message + +        if type(alternative) == "function" then +          message = alternative() +        else +          spec[alternative] = spec[old_key] +        end +        spec[old_key] = nil + +        message = message or string.format("Use `%s` instead.", alternative) +        deprecate( +          string.format("%s` in `lvim.plugins", old_key), +          message .. " See https://github.com/folke/lazy.nvim#-migration-guide" +        ) +      end +    end + +    if spec[1] and spec[1]:match "^http" then +      spec.url = spec[1] +      spec[1] = nil +      deprecate("{ 'http...' }` in `lvim.plugins", "Use { url = 'http...' } instead.") +    end +  end + +  for _, plugin in ipairs(lvim.plugins) do +    if type(plugin) == "table" then +      convert_spec_to_lazy(plugin) +    end +  end  end  return M | 
