From 95ca710e47fdd65407d4a776a966963e455b56c7 Mon Sep 17 00:00:00 2001 From: William Boman Date: Fri, 14 Oct 2022 16:38:32 +0200 Subject: feat(fetch): add Accept headers where appropriate (#554) --- lua/mason-core/managers/cargo/client.lua | 6 +++++- lua/mason-core/managers/github/client.lua | 6 +++++- lua/mason-registry/api.lua | 6 +++++- 3 files changed, 15 insertions(+), 3 deletions(-) (limited to 'lua') diff --git a/lua/mason-core/managers/cargo/client.lua b/lua/mason-core/managers/cargo/client.lua index d5ecb283..82dc85aa 100644 --- a/lua/mason-core/managers/cargo/client.lua +++ b/lua/mason-core/managers/cargo/client.lua @@ -8,7 +8,11 @@ local M = {} ---@param crate string ---@return Result # Result function M.fetch_crate(crate) - return fetch(("https://crates.io/api/v1/crates/%s"):format(crate)):map_catching(vim.json.decode) + return fetch(("https://crates.io/api/v1/crates/%s"):format(crate), { + headers = { + Accept = "application/json", + }, + }):map_catching(vim.json.decode) end return M diff --git a/lua/mason-core/managers/github/client.lua b/lua/mason-core/managers/github/client.lua index e375c45a..9583ab6d 100644 --- a/lua/mason-core/managers/github/client.lua +++ b/lua/mason-core/managers/github/client.lua @@ -25,7 +25,11 @@ local function gh_api_call(path, opts) .gh({ "api", path, env = { CLICOLOR_FORCE = 0 } }) :map(_.prop "stdout") :recover_catching(function() - return fetch(("https://api.github.com/%s"):format(path)):get_or_throw() + return fetch(("https://api.github.com/%s"):format(path), { + headers = { + Accept = "application/vnd.github.v3+json; q=1.0, application/json; q=0.8", + }, + }):get_or_throw() end) :map_catching(vim.json.decode) end diff --git a/lua/mason-registry/api.lua b/lua/mason-registry/api.lua index 3fcd9423..037d7fd6 100644 --- a/lua/mason-registry/api.lua +++ b/lua/mason-registry/api.lua @@ -17,7 +17,11 @@ function api.get(path, opts) local params = stringify_params(opts.params) path = ("%s?%s"):format(path, params) end - return fetch(("%s%s"):format(BASE_URL, path)):map_catching(vim.json.decode) + return fetch(("%s%s"):format(BASE_URL, path), { + headers = { + Accept = "application/vnd.mason-registry.v1+json; q=1.0, application/json; q=0.8", + }, + }):map_catching(vim.json.decode) end return api -- cgit v1.2.3-70-g09d2