aboutsummaryrefslogtreecommitdiffstats
path: root/lua/mason-registry
diff options
context:
space:
mode:
Diffstat (limited to 'lua/mason-registry')
-rw-r--r--lua/mason-registry/sources/file.lua10
1 files changed, 4 insertions, 6 deletions
diff --git a/lua/mason-registry/sources/file.lua b/lua/mason-registry/sources/file.lua
index 1d97bbe7..84a3d6e1 100644
--- a/lua/mason-registry/sources/file.lua
+++ b/lua/mason-registry/sources/file.lua
@@ -38,10 +38,9 @@ function FileRegistrySource:get_all_package_specs()
return _.filter_map(util.map_registry_spec, self:get_buffer().specs)
end
-function FileRegistrySource:reload()
- if not self:is_installed() then
- return
- end
+---@param specs RegistryPackageSpec[]
+function FileRegistrySource:reload(specs)
+ self.buffer = _.assoc("specs", specs, self.buffer or {})
self.buffer.instances = _.compose(
_.index_by(_.prop "name"),
_.map(util.hydrate_package(self.buffer.instances or {}))
@@ -130,8 +129,7 @@ function FileRegistrySource:install()
return specs
end)
:on_success(function(specs)
- self.buffer = _.assoc("specs", specs, self.buffer or {})
- self:reload()
+ self:reload(specs)
end)
:on_failure(function(err)
log.fmt_error("Failed to install registry %s. %s", self, err)