From 51f7db436e9db62cf8de9f27e541f90d41233bee Mon Sep 17 00:00:00 2001 From: William Boman Date: Sat, 30 Jul 2022 00:30:29 +0200 Subject: fix(go): improve parsing package mod (#197) --- lua/mason-core/managers/go/init.lua | 7 ++++++- tests/mason-core/managers/go_spec.lua | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lua/mason-core/managers/go/init.lua b/lua/mason-core/managers/go/init.lua index 2bb22058..ecb3f82d 100644 --- a/lua/mason-core/managers/go/init.lua +++ b/lua/mason-core/managers/go/init.lua @@ -100,7 +100,12 @@ function M.parse_package_mod(pkg) components[4], -- repo })) else - return trim_wildcard_suffix(pkg) + local components = _.split("/", pkg) + return trim_wildcard_suffix(_.join("/", { + components[1], + components[2], + components[3], + })) end end diff --git a/tests/mason-core/managers/go_spec.lua b/tests/mason-core/managers/go_spec.lua index c1d2258d..e841c1f3 100644 --- a/tests/mason-core/managers/go_spec.lua +++ b/tests/mason-core/managers/go_spec.lua @@ -169,5 +169,6 @@ gopls: go1.18 assert.equals("golang.org/x/tools/gopls", go.parse_package_mod "golang.org/x/tools/gopls/...") assert.equals("golang.org/x/crypto", go.parse_package_mod "golang.org/x/crypto/...") assert.equals("github.com/go-delve/delve", go.parse_package_mod "github.com/go-delve/delve/cmd/dlv") + assert.equals("mvdan.cc/sh/v3", go.parse_package_mod "mvdan.cc/sh/v3/cmd/shfmt") end) end) -- cgit v1.2.3-70-g09d2