diff --git a/.github/dependabot.yaml b/.github/dependabot.yaml index 5153b81..73aa36f 100644 --- a/.github/dependabot.yaml +++ b/.github/dependabot.yaml @@ -3,14 +3,10 @@ version: 2 updates: - package-ecosystem: gomod directory: / - labels: - - dependencies schedule: interval: daily - package-ecosystem: github-actions directory: / - labels: - - dependencies schedule: interval: daily diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml deleted file mode 100644 index e3501b2..0000000 --- a/.github/workflows/ci.yml +++ /dev/null @@ -1,34 +0,0 @@ -name: CI - -on: - push: - branches: - - master - pull_request: - -jobs: - build: - name: Build - runs-on: ${{ matrix.os }} - strategy: - # Fail fast is disabled because there are Go version specific features and tests - # that should be able to fail independently. - fail-fast: false - matrix: - os: [ubuntu-latest, windows-latest] - go-version: ['1.16', '1.17', '1.18', '1.19', '1.20'] - - steps: - - name: Set up Go - uses: actions/setup-go@v3 - with: - go-version: ${{ matrix.go }} - - - name: Checkout code - uses: actions/checkout@v3 - - - name: Build - run: go build -v ./... - - - name: Test - run: go test -race -v ./... diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..1755fb8 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,39 @@ +on: + push: + branches: [main] + pull_request: +name: Test +permissions: + contents: read +jobs: + test: + strategy: + matrix: + go-version: [1.19.x, 1.20.x, 1.21.x] + platform: [ubuntu-latest, macos-latest, windows-latest] + runs-on: ${{ matrix.platform }} + steps: + - name: Install Go + uses: actions/setup-go@v4 + with: + go-version: ${{ matrix.go-version }} + - name: Install staticcheck + if: matrix.go-version == '1.21.x' + run: go install honnef.co/go/tools/cmd/staticcheck@latest + shell: bash + - name: Update PATH + run: echo "$(go env GOPATH)/bin" >> $GITHUB_PATH + shell: bash + - name: Checkout code + uses: actions/checkout@v3 + - name: Fmt + if: matrix.platform != 'windows-latest' # :( + run: "diff <(gofmt -d .) <(printf '')" + shell: bash + - name: Vet + run: go vet ./... + - name: Staticcheck + if: matrix.go-version == '1.21.x' + run: staticcheck ./... + - name: Test + run: go test -race ./... diff --git a/README.md b/README.md index 58141f0..0e9e145 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,9 @@ # cast -[![Build Status](https://github.com/spf13/cast/actions/workflows/ci.yml/badge.svg)](https://github.com/spf13/cast/actions/workflows/ci.yml) +[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/spf13/cast/ci.yaml?branch=master&style=flat-square)](https://github.com/spf13/cast/actions/workflows/ci.yaml) [![PkgGoDev](https://pkg.go.dev/badge/mod/github.com/spf13/cast)](https://pkg.go.dev/mod/github.com/spf13/cast) ![Go Version](https://img.shields.io/badge/go%20version-%3E=1.16-61CFDD.svg?style=flat-square) -[![Go Report Card](https://goreportcard.com/badge/github.com/spf13/cast)](https://goreportcard.com/report/github.com/spf13/cast) +[![Go Report Card](https://goreportcard.com/badge/github.com/spf13/cast?style=flat-square)](https://goreportcard.com/report/github.com/spf13/cast) Easy and safe casting from one type to another in Go diff --git a/go.mod b/go.mod index 231f764..96d32f2 100644 --- a/go.mod +++ b/go.mod @@ -1,8 +1,8 @@ module github.com/spf13/cast -go 1.18 +go 1.19 -require github.com/frankban/quicktest v1.14.4 +require github.com/frankban/quicktest v1.14.6 require ( github.com/google/go-cmp v0.5.9 // indirect diff --git a/go.sum b/go.sum index 80fb7de..ab408ab 100644 --- a/go.sum +++ b/go.sum @@ -1,6 +1,6 @@ github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= -github.com/frankban/quicktest v1.14.4 h1:g2rn0vABPOOXmZUj+vbmUp0lPoXEMuhTpIluN0XL9UY= -github.com/frankban/quicktest v1.14.4/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= +github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= +github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=