diff options
| author | William Boman <william@redwill.se> | 2023-04-16 03:22:37 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-04-16 03:22:37 +0200 |
| commit | 5b25e13f905b26cd4ab2be64fec072c18a943220 (patch) | |
| tree | ca2b9f51b21ea0325cfaa4f75db2620d250e4cfb /lua | |
| parent | chore: migrate julia-lsp (#1217) (diff) | |
| download | mason-5b25e13f905b26cd4ab2be64fec072c18a943220.tar mason-5b25e13f905b26cd4ab2be64fec072c18a943220.tar.gz mason-5b25e13f905b26cd4ab2be64fec072c18a943220.tar.bz2 mason-5b25e13f905b26cd4ab2be64fec072c18a943220.tar.lz mason-5b25e13f905b26cd4ab2be64fec072c18a943220.tar.xz mason-5b25e13f905b26cd4ab2be64fec072c18a943220.tar.zst mason-5b25e13f905b26cd4ab2be64fec072c18a943220.zip | |
feat(github): add $MASON_VERSION to build context (#1218)
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/mason-core/installer/registry/init.lua | 4 | ||||
| -rw-r--r-- | lua/mason-core/installer/registry/providers/github.lua | 18 |
2 files changed, 15 insertions, 7 deletions
diff --git a/lua/mason-core/installer/registry/init.lua b/lua/mason-core/installer/registry/init.lua index 23b1a379..3ece857d 100644 --- a/lua/mason-core/installer/registry/init.lua +++ b/lua/mason-core/installer/registry/init.lua @@ -40,7 +40,7 @@ end ---@class InstallerProvider ---@field parse fun(source: RegistryPackageSource, purl: Purl, opts: PackageInstallOpts): Result ----@field install async fun(ctx: InstallContext, source: ParsedPackageSource): Result +---@field install async fun(ctx: InstallContext, source: ParsedPackageSource, purl: Purl): Result ---@class ParsedPackageSource @@ -166,7 +166,7 @@ function M.compile(spec, opts) return function(ctx) return Result.try(function(try) -- Run installer - try(parsed.provider.install(ctx, parsed.source)) + try(parsed.provider.install(ctx, parsed.source, parsed.purl)) -- Expand & register links if spec.bin then diff --git a/lua/mason-core/installer/registry/providers/github.lua b/lua/mason-core/installer/registry/providers/github.lua index 243f021d..4b552d8f 100644 --- a/lua/mason-core/installer/registry/providers/github.lua +++ b/lua/mason-core/installer/registry/providers/github.lua @@ -30,7 +30,8 @@ local build = { ---@async ---@param ctx InstallContext ---@param source ParsedGitHubBuildSource - install = function(ctx, source) + ---@param purl Purl + install = function(ctx, source, purl) local std = require "mason-core.installer.managers.std" return Result.try(function(try) try(std.clone(source.repo, { rev = source.rev })) @@ -44,11 +45,18 @@ local build = { async_uv.shutdown(stdin) async_uv.close(stdin) end), + env = { + MASON_VERSION = purl.version, + }, } end, win = function() local powershell = require "mason-core.managers.powershell" - return powershell.command(source.build.run, {}, ctx.spawn) + return powershell.command(source.build.run, { + env = { + MASON_VERSION = purl.version, + }, + }, ctx.spawn) end, }) end) @@ -188,11 +196,11 @@ end ---@async ---@param ctx InstallContext ---@param source ParsedGitHubReleaseSource | ParsedGitHubBuildSource -function M.install(ctx, source) +function M.install(ctx, source, purl) if source.asset then - return release.install(ctx, source) + return release.install(ctx, source, purl) elseif source.build then - return build.install(ctx, source) + return build.install(ctx, source, purl) else return Result.failure "Unknown source type." end |
