function PLUGIN:Available(ctx)
local http = require("http")
local result = {}
local seen = {}
local resp, err = http.get({
url = "https://www.lua.org/ftp/",
})
if err ~= nil then
error("Failed to fetch Lua versions: " .. err)
end
if resp.status_code ~= 200 then
error("Failed to fetch Lua versions, status: " .. resp.status_code)
end
for version in string.gmatch(resp.body, "lua%-(%d+%.%d+[%.%d]*).tar.gz") do
if not seen[version] then
seen[version] = true
table.insert(result, {
version = version,
})
end
end
return result
end