1c061b153a
## Summary: In principle, it's not a problem to have test-only deps in your go.mod, because they won't end up in your importers' builds (and in newer Go versions may not even be downloaded. (Which is why there's no annotation to do so.) In practice, that doesn't really work for golangci-lint, because it doesn't really use semver (reasonably, in that any updated linter may break lint in your codebase). And we don't really need it other than to run the binary at a particular version. So now, I put it in its own go module. This requires a bit more throat-clearing to run it (we can't just `go run`), but it's not so bad and avoids anyone getting annoyed at us because we upgraded their golangci-lint for them. We could do the same for `internal/integration`, which adds quite a lot, including gqlgen, to our dependency tree, but it's not clear there's a need. Fixes #62. Issue: https://github.com/Khan/genqlient/issues/62 ## Test plan: make check Author: benjaminjkraft Reviewers: dnerdy, StevenACoffman, benjaminjkraft, aberkan, MiguelCastillo Required Reviewers: Approved By: dnerdy, StevenACoffman Checks: ✅ Test (1.17), ✅ Test (1.16), ✅ Test (1.15), ✅ Test (1.14), ✅ Test (1.13), ✅ Lint, ✅ Test (1.17), ✅ Test (1.16), ✅ Test (1.15), ✅ Test (1.14), ✅ Test (1.13), ✅ Lint Pull Request URL: https://github.com/Khan/genqlient/pull/80
9 lines
450 B
Go
9 lines
450 B
Go
// Package lint exists to pin a version of golangci-lint, but to keep it out of
|
|
// our main go.mod. This is useful because end-users typically want to pin
|
|
// their own version of golangci-lint (since any new lint check may fail on
|
|
// their codebase) but go mod doesn't really like doing that. Luckily, we only
|
|
// need it for lint, so we just put it in a separate module.
|
|
package lint
|
|
|
|
import _ "github.com/golangci/golangci-lint/cmd/golangci-lint"
|