aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilliam Boman <william@redwill.se>2022-10-14 00:09:01 +0200
committerGitHub <noreply@github.com>2022-10-14 00:09:01 +0200
commitb0a37ecf1d31c898dbd379a5e0abab5e75984c61 (patch)
treea0653ac615c5aa60db95afa3e56e4307371d35d4
parentfeat(registry): selene and stylua support for luau (#548) (diff)
downloadmason-b0a37ecf1d31c898dbd379a5e0abab5e75984c61.tar
mason-b0a37ecf1d31c898dbd379a5e0abab5e75984c61.tar.gz
mason-b0a37ecf1d31c898dbd379a5e0abab5e75984c61.tar.bz2
mason-b0a37ecf1d31c898dbd379a5e0abab5e75984c61.tar.lz
mason-b0a37ecf1d31c898dbd379a5e0abab5e75984c61.tar.xz
mason-b0a37ecf1d31c898dbd379a5e0abab5e75984c61.tar.zst
mason-b0a37ecf1d31c898dbd379a5e0abab5e75984c61.zip
refactor(api): use new endpoints (#550)
-rw-r--r--lua/mason-core/managers/github/client.lua4
-rw-r--r--lua/mason-core/managers/npm/init.lua2
-rw-r--r--lua/mason-registry/api.lua6
-rw-r--r--tests/mason-core/managers/npm_spec.lua4
4 files changed, 9 insertions, 7 deletions
diff --git a/lua/mason-core/managers/github/client.lua b/lua/mason-core/managers/github/client.lua
index dd77f39d..e375c45a 100644
--- a/lua/mason-core/managers/github/client.lua
+++ b/lua/mason-core/managers/github/client.lua
@@ -62,7 +62,7 @@ end
---@return Result # Result<GitHubRelease>
function M.fetch_latest_release(repo, opts)
opts = opts or { include_prerelease = false }
- local path = ("/api/repo/%s/latest-release"):format(repo)
+ local path = ("/api/repo/%s/releases/latest"):format(repo)
return api.get(path, {
params = {
include_prerelease = opts.include_prerelease and "true" or "false",
@@ -84,7 +84,7 @@ end
---@param repo string The GitHub repo ("username/repo").
---@return Result # Result<string> The latest tag name.
function M.fetch_latest_tag(repo)
- local path = ("/api/repo/%s/latest-tag"):format(repo)
+ local path = ("/api/repo/%s/tags/latest"):format(repo)
return api.get(path):map(_.prop "tag")
end
diff --git a/lua/mason-core/managers/npm/init.lua b/lua/mason-core/managers/npm/init.lua
index 0fe9fafb..9cfa2be7 100644
--- a/lua/mason-core/managers/npm/init.lua
+++ b/lua/mason-core/managers/npm/init.lua
@@ -112,7 +112,7 @@ function M.check_outdated_primary_package(receipt, install_dir)
local primary_package = receipt.primary_source.package
return M.get_installed_primary_package_version(receipt, install_dir)
:and_then(function(installed_version)
- return api.get(("/api/npm/%s/latest-version"):format(primary_package)):map(function(response)
+ return api.get(("/api/npm/%s/versions/latest"):format(primary_package)):map(function(response)
return {
installed = installed_version,
latest = response.version,
diff --git a/lua/mason-registry/api.lua b/lua/mason-registry/api.lua
index 1fa01b26..3fcd9423 100644
--- a/lua/mason-registry/api.lua
+++ b/lua/mason-registry/api.lua
@@ -3,6 +3,9 @@ local fetch = require "mason-core.fetch"
local api = {}
+-- https://github.com/williamboman/mason-registry-api
+local BASE_URL = "https://api.mason-registry.dev"
+
local stringify_params = _.compose(_.join "&", _.map(_.join "="), _.sort_by(_.head), _.to_pairs)
---@async
@@ -14,8 +17,7 @@ function api.get(path, opts)
local params = stringify_params(opts.params)
path = ("%s?%s"):format(path, params)
end
- -- https://github.com/williamboman/mason-registry-api
- return fetch(("https://api.mason-registry.dev%s"):format(path)):map_catching(vim.json.decode)
+ return fetch(("%s%s"):format(BASE_URL, path)):map_catching(vim.json.decode)
end
return api
diff --git a/tests/mason-core/managers/npm_spec.lua b/tests/mason-core/managers/npm_spec.lua
index 71d93301..f42680a6 100644
--- a/tests/mason-core/managers/npm_spec.lua
+++ b/tests/mason-core/managers/npm_spec.lua
@@ -122,7 +122,7 @@ describe("npm version check", function()
"should return outdated primary package",
async_test(function()
stub(api, "get")
- api.get.on_call_with("/api/npm/bash-language-server/latest-version").returns(Result.success {
+ api.get.on_call_with("/api/npm/bash-language-server/versions/latest").returns(Result.success {
name = "bash-language-server",
version = "2.0.0",
})
@@ -180,7 +180,7 @@ describe("npm version check", function()
}
end)
stub(api, "get")
- api.get.on_call_with("/api/npm/bash-language-server/latest-version").returns(Result.success {
+ api.get.on_call_with("/api/npm/bash-language-server/versions/latest").returns(Result.success {
name = "bash-language-server",
version = "1.17.0",
})