
This change introduces the ability to use the tilde (`~`) character in your `-c/--config` flag value to expand your home directory. If invoking this via the command line with `--config ~/.golangci-lint.yaml`, the user's shell expands the `~` to the home directory. However, if something is invoking the program for you (like an editor) it may not do the expansion. Fixes #289 Signed-off-by: Tim Heckman <t@heckman.io>
go-homedir
This is a Go library for detecting the user's home directory without the use of cgo, so the library can be used in cross-compilation environments.
Usage is incredibly simple, just call homedir.Dir()
to get the home directory
for a user, and homedir.Expand()
to expand the ~
in a path to the home
directory.
Why not just use os/user
? The built-in os/user
package requires
cgo on Darwin systems. This means that any Go code that uses that package
cannot cross compile. But 99% of the time the use for os/user
is just to
retrieve the home directory, which we can do for the current user without
cgo. This library does that, enabling cross-compilation.