magefile / mage

a Make/rake-like dev tool using Go

Home Page:https://magefile.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Bug: Spurious errors reported by gopls with go1.17 (in vscode)

Michael-F-Ellis opened this issue · comments

Bug Description
This is likely gopls problem rather than a mage problem but it seems worth posting here in hopes someone knows a workaround.

I've filed a thorough report at

and created a minimal repository that reproduces the
problem when opened in vscode

Briefly, the problem arises when putting a magefile in a package directory. It seems that the latest gopls doesn't take the go:build mage directive into account and then chokes on seeing a file with package main among the package files. On the other hand, go vet, go build and mage are perfectly happy with the situation and run without errors or warnings.

Changing the magefile package name to match the package pacifies gopls, but then mage no longer works.

This is likely because you have added the "mage" tag to gopls, so it includes the mage files with the rest of the files it analyzes. This is a common problem, and one we hope to fix with #395

@natefinch Do you have a workaround?

@guiyomh with the recent release which adds support for the magefiles directory you could put your mage files there, no need for the tag. See https://magefile.org/magefiles/#magefiles-directory for more details