aboutsummaryrefslogtreecommitdiffstats
path: root/lua/nvim-lsp-installer/core/fetch.lua
diff options
context:
space:
mode:
authorWilliam Boman <william@redwill.se>2022-01-07 12:18:47 +0100
committerGitHub <noreply@github.com>2022-01-07 12:18:47 +0100
commit648437aafae63eda06097113c836a8d9ad6f23c1 (patch)
tree52d1ff402bf62dcd3616b795cde3ba7c4c1c0f35 /lua/nvim-lsp-installer/core/fetch.lua
parentfix(ui): less intrusive version check UI (#402) (diff)
downloadmason-648437aafae63eda06097113c836a8d9ad6f23c1.tar
mason-648437aafae63eda06097113c836a8d9ad6f23c1.tar.gz
mason-648437aafae63eda06097113c836a8d9ad6f23c1.tar.bz2
mason-648437aafae63eda06097113c836a8d9ad6f23c1.tar.lz
mason-648437aafae63eda06097113c836a8d9ad6f23c1.tar.xz
mason-648437aafae63eda06097113c836a8d9ad6f23c1.tar.zst
mason-648437aafae63eda06097113c836a8d9ad6f23c1.zip
feat: integrate gh-cli for GitHub API calls (#403)
Closes #248.
Diffstat (limited to 'lua/nvim-lsp-installer/core/fetch.lua')
-rw-r--r--lua/nvim-lsp-installer/core/fetch.lua15
1 files changed, 14 insertions, 1 deletions
diff --git a/lua/nvim-lsp-installer/core/fetch.lua b/lua/nvim-lsp-installer/core/fetch.lua
index 3e601cb6..981ad376 100644
--- a/lua/nvim-lsp-installer/core/fetch.lua
+++ b/lua/nvim-lsp-installer/core/fetch.lua
@@ -4,7 +4,9 @@ local platform = require "nvim-lsp-installer.platform"
---@param url string The url to fetch.
---@param callback fun(err: string|nil, raw_data: string)
-local function fetch(url, callback)
+---@param opts {custom_fetcher: { cmd: string, args: string[] }}
+local function fetch(url, callback, opts)
+ opts = opts or {}
local stdio = process.in_memory_sink()
log.fmt_debug("Fetching URL %s", url)
local on_exit = function(success)
@@ -45,6 +47,17 @@ local function fetch(url, callback)
)
end
+ if opts.custom_fetcher then
+ table.insert(
+ job_variants,
+ 1,
+ process.lazy_spawn(opts.custom_fetcher.cmd, {
+ args = opts.custom_fetcher.args,
+ stdio_sink = stdio.sink,
+ })
+ )
+ end
+
process.attempt {
jobs = job_variants,
on_iterate = function()