From 30ea0960d6f773cc2e8e18ba5113960d1f5faf08 Mon Sep 17 00:00:00 2001 From: Ramya Achutha Rao Date: Sat, 18 Mar 2017 21:37:18 -0700 Subject: [PATCH] Fixes #874 Install delve if OS is not OSX --- src/goInstallTools.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/goInstallTools.ts b/src/goInstallTools.ts index d16fb1639..b13777f1c 100644 --- a/src/goInstallTools.ts +++ b/src/goInstallTools.ts @@ -57,6 +57,9 @@ function getTools(goVersion: SemVersion): { [key: string]: string } { tools['go-langserver'] = 'github.com/sourcegraph/go-langserver'; } + if (process.platform !== 'darwin') { + tools['dlv'] = 'github.com/derekparker/delve/cmd/dlv'; + } return tools; } @@ -152,8 +155,9 @@ function installTools(goVersion: SemVersion, missing?: string[]) { missing.reduce((res: Promise, tool: string) => { return res.then(sofar => new Promise((resolve, reject) => { // gometalinter expects its linters to be in the user's GOPATH - // Therefore, cannot use an isolated GOPATH for installing gometalinter - let env = (envWithSeparateGoPathForTools && tool !== 'gometalinter') ? envWithSeparateGoPathForTools : envForTools; + // Debugger doesnt have access to settings, so cannot read `go.toolsGopath` + // Therefore, cannot use an isolated GOPATH for installing gometalinter or dlv + let env = (envWithSeparateGoPathForTools && tool !== 'gometalinter' && tool !== 'dlv') ? envWithSeparateGoPathForTools : envForTools; cp.execFile(goRuntimePath, ['get', '-u', '-v', tools[tool]], { env }, (err, stdout, stderr) => { if (err) { outputChannel.appendLine('Installing ' + tool + ' FAILED');