From c7d7f10bdff703e4a3c0414e8a33d4e45c91eb35 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Sat, 4 Jul 2020 11:12:55 +0200 Subject: go.mod: vendor golangci-lint --- vendor/github.com/OpenPeeDeeP/depguard/README.md | 77 ++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 vendor/github.com/OpenPeeDeeP/depguard/README.md (limited to 'vendor/github.com/OpenPeeDeeP/depguard/README.md') diff --git a/vendor/github.com/OpenPeeDeeP/depguard/README.md b/vendor/github.com/OpenPeeDeeP/depguard/README.md new file mode 100644 index 000000000..d704ce6ad --- /dev/null +++ b/vendor/github.com/OpenPeeDeeP/depguard/README.md @@ -0,0 +1,77 @@ +# Depguard + +Go linter that checks package imports are in a list of acceptable packages. It +supports a white list and black list option and can do prefix or glob matching. +This allows you to allow imports from a whole organization or only +allow specific packages within a repository. It is recommended to use prefix +matching as it is faster than glob matching. The fewer glob matches the better. + +> If a pattern is matched by prefix it does not try to match via glob. + +## Install + +```bash +go get -u github.com/OpenPeeDeeP/depguard +``` + +## Config + +By default, Depguard looks for a file named `.depguard.json` in the current +current working directory. If it is somewhere else, pass in the `-c` flag with +the location of your configuration file. + +The following is an example configuration file. + +```json +{ + "type": "whitelist", + "packages": ["github.com/OpenPeeDeeP/depguard"], + "packageErrorMessages": { + "github.com/OpenPeeDeeP/depguards": "Please use \"github.com/OpenPeeDeeP/depguard\"," + }, + "inTests": ["github.com/stretchr/testify"], + "includeGoStdLib": true +} +``` + +- `type` can be either `whitelist` or `blacklist`. This check is case insensitive. + If not specified the default is `blacklist`. +- `packages` is a list of packages for the list type specified. +- `packageErrorMessages` is a mapping from packages to the error message to display +- `inTests` is a list of packages allowed/disallowed only in test files. +- Set `includeGoStdLib` (`includeGoRoot` for backwards compatability) to true if you want to check the list against standard lib. + If not specified the default is false. + +## Gometalinter + +The binary installation of this linter can be used with +[Gometalinter](github.com/alecthomas/gometalinter). + +If you use a configuration file for Gometalinter then the following will need to +be added to your configuration file. + +```json +{ + "linters": { + "depguard": { + "command": "depguard -c path/to/config.json", + "pattern": "PATH:LINE:COL:MESSAGE", + "installFrom": "github.com/OpenPeeDeeP/depguard", + "isFast": true, + "partitionStrategy": "packages" + } + } +} +``` + +If you prefer the command line way the following will work for you as well. + +```bash +gometalinter --linter='depguard:depguard -c path/to/config.json:PATH:LINE:COL:MESSAGE' +``` + +## Golangci-lint + +This linter was built with +[Golangci-lint](https://github.com/golangci/golangci-lint) in mind. It is compatable +and read their docs to see how to implement all their linters, including this one. -- cgit mrf-deployment