From e4773791dbaa18963266836ee0a87fbf532c7ce8 Mon Sep 17 00:00:00 2001 From: web3-bot Date: Wed, 15 Sep 2021 22:20:06 +0000 Subject: [PATCH 1/6] bump go.mod to Go 1.16 and run go fix --- go.mod | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go.mod b/go.mod index 22f0347..b042d4e 100644 --- a/go.mod +++ b/go.mod @@ -6,4 +6,4 @@ require ( golang.org/x/sys v0.0.0-20190302025703-b6889370fb10 ) -go 1.15 +go 1.16 From 4a53c441d44f2d654182f61f46c335eda1ccf60b Mon Sep 17 00:00:00 2001 From: web3-bot Date: Wed, 15 Sep 2021 22:20:08 +0000 Subject: [PATCH 2/6] run go mod tidy --- go.sum | 1 - 1 file changed, 1 deletion(-) diff --git a/go.sum b/go.sum index 0230e7d..508c863 100644 --- a/go.sum +++ b/go.sum @@ -9,7 +9,6 @@ github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5Cc github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= golang.org/x/sys v0.0.0-20190302025703-b6889370fb10 h1:xQJI9OEiErEQ++DoXOHqEpzsGMrAv2Q2jyCpi7DmfpQ= golang.org/x/sys v0.0.0-20190302025703-b6889370fb10/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= From e6e62a3006aea4ad35a9621d20509ac8a6d66955 Mon Sep 17 00:00:00 2001 From: web3-bot Date: Wed, 15 Sep 2021 22:20:08 +0000 Subject: [PATCH 3/6] run gofmt -s --- is_hidden.go | 3 ++- is_hidden_windows.go | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/is_hidden.go b/is_hidden.go index 27960ac..9ab08f7 100644 --- a/is_hidden.go +++ b/is_hidden.go @@ -1,4 +1,5 @@ -//+build !windows +//go:build !windows +// +build !windows package files diff --git a/is_hidden_windows.go b/is_hidden_windows.go index 77ea34a..a8b95ca 100644 --- a/is_hidden_windows.go +++ b/is_hidden_windows.go @@ -1,3 +1,4 @@ +//go:build windows // +build windows package files From 75f0eaf56f2d3c1a7a5f3e03bd2631a2e3557b96 Mon Sep 17 00:00:00 2001 From: web3-bot Date: Wed, 15 Sep 2021 22:20:09 +0000 Subject: [PATCH 4/6] update .github/workflows/automerge.yml --- .github/workflows/automerge.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/automerge.yml b/.github/workflows/automerge.yml index 32bcc2e..44fad65 100644 --- a/.github/workflows/automerge.yml +++ b/.github/workflows/automerge.yml @@ -33,7 +33,9 @@ jobs: automerge: needs: automerge-check runs-on: ubuntu-latest - if: ${{ needs.automerge-check.outputs.status == 'true' }} + # The check for the user is redundant here, as this job depends on the automerge-check job, + # but it prevents this job from spinning up, just to be skipped shortly after. + if: github.event.pull_request.user.login == 'web3-bot' && needs.automerge-check.outputs.status == 'true' steps: - name: Wait on tests uses: lewagon/wait-on-check-action@bafe56a6863672c681c3cf671f5e10b20abf2eaa # v0.2 From ed68fb61ce4ecdc69ca583634ddfb70dd65872b1 Mon Sep 17 00:00:00 2001 From: web3-bot Date: Wed, 15 Sep 2021 22:20:09 +0000 Subject: [PATCH 5/6] update .github/workflows/go-test.yml --- .github/workflows/go-test.yml | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/.github/workflows/go-test.yml b/.github/workflows/go-test.yml index 4c7138b..7010dcc 100644 --- a/.github/workflows/go-test.yml +++ b/.github/workflows/go-test.yml @@ -10,7 +10,9 @@ jobs: fail-fast: false matrix: os: [ "ubuntu", "windows", "macos" ] - go: [ "1.15.x", "1.16.x" ] + go: [ "1.16.x", "1.17.x" ] + env: + COVERAGES: "" runs-on: ${{ matrix.os }}-latest name: ${{ matrix.os}} (go ${{ matrix.go }}) steps: @@ -24,24 +26,30 @@ jobs: run: | go version go env + - name: Run repo-specific setup + uses: ./.github/actions/go-test-setup + if: hashFiles('./.github/actions/go-test-setup') != '' - name: Run tests - uses: protocol/multiple-go-modules@v1.0 + uses: protocol/multiple-go-modules@v1.2 with: - run: go test -v -coverprofile coverage.txt ./... + run: go test -v -coverprofile module-coverage.txt ./... - name: Run tests (32 bit) if: ${{ matrix.os != 'macos' }} # can't run 32 bit tests on OSX. - uses: protocol/multiple-go-modules@v1.0 + uses: protocol/multiple-go-modules@v1.2 env: GOARCH: 386 with: run: go test -v ./... - name: Run tests with race detector if: ${{ matrix.os == 'ubuntu' }} # speed things up. Windows and OSX VMs are slow - uses: protocol/multiple-go-modules@v1.0 + uses: protocol/multiple-go-modules@v1.2 with: run: go test -v -race ./... + - name: Collect coverage files + shell: bash + run: echo "COVERAGES=$(find . -type f -name 'module-coverage.txt' | tr -s '\n' ',' | sed 's/,$//')" >> $GITHUB_ENV - name: Upload coverage to Codecov - uses: codecov/codecov-action@a1ed4b322b4b38cb846afb5a0ebfa17086917d27 # v1.5.0 + uses: codecov/codecov-action@51d810878be5422784e86451c0e7c14e5860ec47 # v2.0.2 with: - file: coverage.txt + files: '${{ env.COVERAGES }}' env_vars: OS=${{ matrix.os }}, GO=${{ matrix.go }} From 43c0d0274516ad82aed1608b8577a698bf7c9c6e Mon Sep 17 00:00:00 2001 From: web3-bot Date: Wed, 15 Sep 2021 22:20:09 +0000 Subject: [PATCH 6/6] update .github/workflows/go-check.yml --- .github/workflows/go-check.yml | 34 +++++++++++++++++++++++++++++----- 1 file changed, 29 insertions(+), 5 deletions(-) diff --git a/.github/workflows/go-check.yml b/.github/workflows/go-check.yml index 00ce947..6acdd48 100644 --- a/.github/workflows/go-check.yml +++ b/.github/workflows/go-check.yml @@ -8,17 +8,28 @@ jobs: unit: runs-on: ubuntu-latest name: All + env: + RUNGOGENERATE: false steps: - uses: actions/checkout@v2 with: submodules: recursive - uses: actions/setup-go@v2 with: - go-version: "1.16.x" + go-version: "1.17.x" + - name: Run repo-specific setup + uses: ./.github/actions/go-check-setup + if: hashFiles('./.github/actions/go-check-setup') != '' + - name: Read config + if: hashFiles('./.github/workflows/go-check-config.json') != '' + run: | + if jq -re .gogenerate ./.github/workflows/go-check-config.json; then + echo "RUNGOGENERATE=true" >> $GITHUB_ENV + fi - name: Install staticcheck - run: go install honnef.co/go/tools/cmd/staticcheck@434f5f3816b358fe468fa83dcba62d794e7fe04b # 2021.1 (v0.2.0) + run: go install honnef.co/go/tools/cmd/staticcheck@df71e5d0e0ed317ebf43e6e59cf919430fa4b8f2 # 2021.1.1 (v0.2.1) - name: Check that go.mod is tidy - uses: protocol/multiple-go-modules@v1.0 + uses: protocol/multiple-go-modules@v1.2 with: run: | go mod tidy @@ -37,14 +48,27 @@ jobs: fi - name: go vet if: ${{ success() || failure() }} # run this step even if the previous one failed - uses: protocol/multiple-go-modules@v1.0 + uses: protocol/multiple-go-modules@v1.2 with: run: go vet ./... - name: staticcheck if: ${{ success() || failure() }} # run this step even if the previous one failed - uses: protocol/multiple-go-modules@v1.0 + uses: protocol/multiple-go-modules@v1.2 with: run: | set -o pipefail staticcheck ./... | sed -e 's@\(.*\)\.go@./\1.go@g' + - name: go generate + uses: protocol/multiple-go-modules@v1.2 + if: (success() || failure()) && env.RUNGOGENERATE == 'true' + with: + run: | + git clean -fd # make sure there aren't untracked files / directories + go generate ./... + # check if go generate modified or added any files + if ! $(git add . && git diff-index HEAD --exit-code --quiet); then + echo "go generated caused changes to the repository:" + git status --short + exit 1 + fi