diff --git a/.golangci.yml b/.golangci.yml index 5dd21c484596..8fbfb161e420 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -98,17 +98,9 @@ linters: run: skip-dirs: - test/testdata_etc - skip-files: - - internal/cache/.*_test.go - -issues: - exclude-rules: - - path: internal/(cache|renameio)/ - linters: - - lll - - gochecknoinits - - gocyclo - - funlen + - internal/cache + - internal/renameio + - internal/robustio # golangci.com configuration # https://github.com/golangci/golangci/wiki/Configuration diff --git a/Makefile b/Makefile index 365751a9ef17..e253dea021a7 100644 --- a/Makefile +++ b/Makefile @@ -10,11 +10,13 @@ export GOPROXY = https://proxy.golang.org # Build -fast_build: FORCE - go build -o golangci-lint ./cmd/golangci-lint -build_race: FORCE - go build -race -o golangci-lint ./cmd/golangci-lint build: golangci-lint +.PHONY: build + +build_race: + go build -race -o golangci-lint ./cmd/golangci-lint +.PHONY: build_race + clean: rm -f golangci-lint rm -f test/path @@ -23,20 +25,18 @@ clean: rm -f tools/goreleaser rm -f tools/svg-term rm -rf tools/node_modules -.PHONY: fast_build build build_race clean +.PHONY: clean # Test test: export GOLANGCI_LINT_INSTALLED = true test: build GL_TEST_RUN=1 time ./golangci-lint run -v - time go run ./cmd/golangci-lint/main.go run -v GL_TEST_RUN=1 time ./golangci-lint run --fast --no-config -v --skip-dirs 'test/testdata_etc,internal/(cache|renameio|robustio)' GL_TEST_RUN=1 time ./golangci-lint run --no-config -v --skip-dirs 'test/testdata_etc,internal/(cache|renameio|robustio)' GL_TEST_RUN=1 time go test -v ./... .PHONY: test -test_race: - go build -race -o golangci-lint ./cmd/golangci-lint +test_race: build_race GL_TEST_RUN=1 ./golangci-lint run -v --timeout=5m .PHONY: test_race @@ -47,12 +47,14 @@ test_linters: # Maintenance generate: README.md docs/demo.svg install.sh vendor +.PHONY: generate + fast_generate: README.md vendor +.PHONY: fast_generate maintainer-clean: clean - rm -f docs/demo.svg README.md install.sh - rm -rf vendor -.PHONY: generate maintainer-clean + rm -rf docs/demo.svg README.md install.sh vendor +.PHONY: maintainer-clean check_generated: $(MAKE) --always-make generate @@ -104,6 +106,6 @@ go.mod: FORCE go mod verify go.sum: go.mod -.PHONY: vendor vendor: go.mod go.sum go mod vendor +.PHONY: vendor diff --git a/README.md b/README.md index 176664cdc8c7..2ff98291dff1 100644 --- a/README.md +++ b/README.md @@ -1014,17 +1014,9 @@ linters: run: skip-dirs: - test/testdata_etc - skip-files: - - internal/cache/.*_test.go - -issues: - exclude-rules: - - path: internal/(cache|renameio)/ - linters: - - lll - - gochecknoinits - - gocyclo - - funlen + - internal/cache + - internal/renameio + - internal/robustio # golangci.com configuration # https://github.com/golangci/golangci/wiki/Configuration diff --git a/install.sh b/install.sh index 0dcf60d340cd..ff11846e6cfe 100644 --- a/install.sh +++ b/install.sh @@ -68,21 +68,29 @@ get_binaries() { darwin/arm64) BINARIES="golangci-lint" ;; darwin/armv6) BINARIES="golangci-lint" ;; darwin/armv7) BINARIES="golangci-lint" ;; + darwin/ppc64le) BINARIES="golangci-lint" ;; + darwin/s390x) BINARIES="golangci-lint" ;; freebsd/386) BINARIES="golangci-lint" ;; freebsd/amd64) BINARIES="golangci-lint" ;; freebsd/arm64) BINARIES="golangci-lint" ;; freebsd/armv6) BINARIES="golangci-lint" ;; freebsd/armv7) BINARIES="golangci-lint" ;; + freebsd/ppc64le) BINARIES="golangci-lint" ;; + freebsd/s390x) BINARIES="golangci-lint" ;; linux/386) BINARIES="golangci-lint" ;; linux/amd64) BINARIES="golangci-lint" ;; linux/arm64) BINARIES="golangci-lint" ;; linux/armv6) BINARIES="golangci-lint" ;; linux/armv7) BINARIES="golangci-lint" ;; + linux/ppc64le) BINARIES="golangci-lint" ;; + linux/s390x) BINARIES="golangci-lint" ;; windows/386) BINARIES="golangci-lint" ;; windows/amd64) BINARIES="golangci-lint" ;; windows/arm64) BINARIES="golangci-lint" ;; windows/armv6) BINARIES="golangci-lint" ;; windows/armv7) BINARIES="golangci-lint" ;; + windows/ppc64le) BINARIES="golangci-lint" ;; + windows/s390x) BINARIES="golangci-lint" ;; *) log_crit "platform $PLATFORM is not supported. Make sure this script is up-to-date and file request at https://github.com/${PREFIX}/issues/new" exit 1 @@ -242,8 +250,8 @@ uname_arch_check() { untar() { tarball=$1 case "${tarball}" in - *.tar.gz | *.tgz) tar -xzf "${tarball}" ;; - *.tar) tar -xf "${tarball}" ;; + *.tar.gz | *.tgz) tar --no-same-owner -xzf "${tarball}" ;; + *.tar) tar --no-same-owner -xf "${tarball}" ;; *.zip) unzip "${tarball}" ;; *) log_err "untar unknown archive format for ${tarball}"