aboutsummaryrefslogtreecommitdiffstats
path: root/lua/mason-core/package/init.lua
diff options
context:
space:
mode:
authorWilliam Boman <william@redwill.se>2022-12-04 19:59:43 +0100
committerGitHub <noreply@github.com>2022-12-04 19:59:43 +0100
commit98b9091b47bef1795392df0dbcbd9b33f6969c4b (patch)
tree0f257f777bd530c7ba966c9afb34a97a126ce608 /lua/mason-core/package/init.lua
parentfeat(mockdebug): write & link mock-debug-adapter executable (#723) (diff)
downloadmason-98b9091b47bef1795392df0dbcbd9b33f6969c4b.tar
mason-98b9091b47bef1795392df0dbcbd9b33f6969c4b.tar.gz
mason-98b9091b47bef1795392df0dbcbd9b33f6969c4b.tar.bz2
mason-98b9091b47bef1795392df0dbcbd9b33f6969c4b.tar.lz
mason-98b9091b47bef1795392df0dbcbd9b33f6969c4b.tar.xz
mason-98b9091b47bef1795392df0dbcbd9b33f6969c4b.tar.zst
mason-98b9091b47bef1795392df0dbcbd9b33f6969c4b.zip
feat: show warning message when exiting neovim with active installations (#725)
Diffstat (limited to 'lua/mason-core/package/init.lua')
-rw-r--r--lua/mason-core/package/init.lua10
1 files changed, 10 insertions, 0 deletions
diff --git a/lua/mason-core/package/init.lua b/lua/mason-core/package/init.lua
index 81d8ca31..e46219b7 100644
--- a/lua/mason-core/package/init.lua
+++ b/lua/mason-core/package/init.lua
@@ -80,7 +80,17 @@ function Package:new_handle()
log.fmt_trace("Creating new handle for %s", self)
local handle = InstallationHandle.new(self)
self.handle = handle
+
+ -- First emit a private autocmd via the native event bus. This is to enable some internal perf improvements (helps avoid loading some Lua modules).
+ if vim.fn.has "nvim-0.8.0" == 1 then
+ vim.api.nvim_exec_autocmds("User", { pattern = "__MasonPackageHandle", data = self.name })
+ else
+ vim.api.nvim_exec_autocmds("User", { pattern = "__MasonPackageHandle" })
+ end
+
self:emit("handle", handle)
+ registry:emit("package:handle", self, handle)
+
return handle
end