Working directories are now set seperately from the commands so they
can later be swapped out when running linters over projects is
supported, and also better support filename mapping for running linters
on other machines in future.
Allows the user to override $GO111MODULE environment variable through
ale options. This gives control over the default behavior of Go module
resolution.
Golang documentation:
https://github.com/golang/go/wiki/Modules#how-to-use-modules
Add `ale#Go#EnvString()` function to make it easy to add similar Go
environment variables in the future.
Use the new `EnvString` function in all available Go tools callbacks
& update tests
Also add test of linter command callback for `gofmt`
* Added filename keys to gobuild and gometalinter
* Removed skipping files not in current package
* Removed `--include` for gometalinter
* Fixed the tests
The real fix was not using absolute paths anymore (so not expanding with the `:p` option). The regex was correct and should at least include the `^` character to make sure the string starts with the given path/filename and not references the path/filename in some error description.