From 26d8de046e8717b30e410f9473c9e92d18a514d0 Mon Sep 17 00:00:00 2001 From: Paul Hewlett Date: Mon, 28 Apr 2025 18:24:14 +0100 Subject: [PATCH] Go 1.24 AB#10382 Signed-off-by: Paul Hewlett --- .env.tools | 1 + .github/dependabot.yml | 24 +++--------------------- .github/workflows/ci.yml | 8 ++++---- Taskfile.yml | 1 + eventsv1/go.mod | 2 +- eventsv1/test_results/main.out | 23 +++++++++++++++++++++-- taskfiles/Taskfile_codeqa.yml | 14 ++++++++++++++ taskfiles/Taskfile_gotest.yml | 4 ++-- 8 files changed, 47 insertions(+), 30 deletions(-) create mode 100644 .env.tools diff --git a/.env.tools b/.env.tools new file mode 100644 index 0000000..a256ddc --- /dev/null +++ b/.env.tools @@ -0,0 +1 @@ +export TOOLS_BUILDNUMBER=20250415.2 diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 578e313..0fcfd67 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,32 +1,14 @@ # refer: https://github.com/dependabot/dependabot-core/blob/main/.github/dependabot.yml version: 2 -registries: - github-octocat: - type: git - url: https://github.com - username: x-access-token - password: ${{ secrets.DEPENDABOT_PAT }} updates: # Maintain dependencies for GitHub Actions - package-ecosystem: "github-actions" - registries: - - github-octocat directory: "/" schedule: # Check for updates managed by Composer once a week interval: "weekly" - day: "sunday" - time: "16:00" - - # Maintain dependencies for Golang - - package-ecosystem: "gomod" - registries: - - github-octocat - directory: "eventsv1/" - schedule: - # Check for updates managed by Composer once a week - interval: "weekly" - day: "sunday" - time: "16:00" + day: "tuesday" + time: "03:01" + timezone: "Europe/London" diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cef2b6f..c7b79b7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,14 +11,14 @@ jobs: steps: - uses: actions/checkout@v4 - name: Setup go-task - uses: arduino/setup-task@v1 + uses: arduino/setup-task@v2 with: version: 3.x repo-token: ${{ secrets.GITHUB_TOKEN }} - name: Setup Go - uses: actions/setup-go@v4 + uses: actions/setup-go@v5 with: - go-version: '1.23.x' + go-version: '1.24.x' token: ${{ secrets.GITHUB_TOKEN }} cache-dependency-path: | datatrails-common-api/go.sum @@ -28,7 +28,7 @@ jobs: go install golang.org/x/tools/cmd/goimports@v0.1.7 go install github.com/axw/gocov/gocov@v1.1.0 go install github.com/jstemmer/go-junit-report/v2@v2.1.0 - curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.60.3 + curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.64.2 - name: Code Quality run: | diff --git a/Taskfile.yml b/Taskfile.yml index f2744c5..5bcd67b 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -35,6 +35,7 @@ tasks: cmds: - task: codeqa:format - task: codeqa:lint + - task: codeqa:vulncheck build: desc: ensure go build works for all packages diff --git a/eventsv1/go.mod b/eventsv1/go.mod index 2ed8060..1ade7bc 100644 --- a/eventsv1/go.mod +++ b/eventsv1/go.mod @@ -1,6 +1,6 @@ module github.com/datatrails/go-datatrails-serialization/eventsv1 -go 1.23.0 +go 1.24 require ( github.com/stretchr/testify v1.10.0 diff --git a/eventsv1/test_results/main.out b/eventsv1/test_results/main.out index 766f55e..501ab16 100644 --- a/eventsv1/test_results/main.out +++ b/eventsv1/test_results/main.out @@ -1,2 +1,21 @@ -mode: atomic -github.com/datatrails/go-datatrails-serialization/eventsv1/test.go:3.17,5.2 1 1 +=== RUN Tesgithub.com/datatrails/go-datatrails-serialization/eventsv1/serializer.go:28.63,34.16 3 0 +github.com/datatrails/go-datatrails-serialization/eventsv1/serializer.go:34.16,36.3 1 0 +github.com/datatrails/go-datatrails-serialization/eventsv1/serializer.go:38.2,38.38 1 0 +github.com/datatrails/go-datatrails-serialization/eventsv1/serializer.go:43.58,47.16 2 13 +github.com/datatrails/go-datatrails-serialization/eventsv1/serializer.go:47.16,49.3 1 0 +github.com/datatrails/go-datatrails-serialization/eventsv1/serializer.go:54.2,55.16 2 13 +github.com/datatrails/go-datatrails-serialization/eventsv1/serializer.go:55.16,57.3 1 0 +github.com/datatrails/go-datatrails-serialization/eventsv1/serializer.go:59.2,59.36 1 13 +S: TestSerializeEventFromProtoConsistency/same_attributes_and_trails_in_same_order (0.00s) + --- PASS: TestSerializeEventFromProtoConsistency/same_attributes_and_trails_in_same_order_and_event_type (0.00s) + --- PASS: TestSerializeEventFromProtoConsistency/same_attributes_and_trails,_attributes_in_different_order (0.00s) + --- PASS: TestSerializeEventFromProtoConsistency/same_attributes_and_trails,_trails_in_different_order (0.00s) + --- PASS: TestSerializeEventFromProtoConsistency/same_trails_and_different_attributes_in_same_order (0.00s) + --- PASS: TestSerializeEventFromProtoConsistency/same_attributes_and_different_trails_in_same_order (0.00s) +=== RUN TestSerializableEvent_Serialize +=== RUN TestSerializableEvent_Serialize/all_attribute_types_no_error +--- PASS: TestSerializableEvent_Serialize (0.00s) + --- PASS: TestSerializableEvent_Serialize/all_attribute_types_no_error (0.00s) +PASS +coverage: 41.7% of statements +ok github.com/datatrails/go-datatrails-serialization/eventsv1 1.016s coverage: 41.7% of statements diff --git a/taskfiles/Taskfile_codeqa.yml b/taskfiles/Taskfile_codeqa.yml index a10c3d4..f47351d 100644 --- a/taskfiles/Taskfile_codeqa.yml +++ b/taskfiles/Taskfile_codeqa.yml @@ -61,6 +61,20 @@ tasks: go vet ./... golangci-lint {{.VERBOSE}} run --timeout 10m ./... + vulncheck: + desc: Vulnerability checks + dir: ../ + vars: + GO_MOD_DIRS: + sh: find . -type f -name 'go.mod' + cmds: + - for: { var: GO_MOD_DIRS, as: MODULE} + cmd: | + NAME=$(basename $(dirname {{.MODULE}})) + echo "Vulncheck: $NAME" + cd $(dirname {{.MODULE}}) + go run golang.org/x/vuln/cmd/govulncheck@latest -show verbose ./... + modules: desc: Make all go.mod files consistent dir: ../ diff --git a/taskfiles/Taskfile_gotest.yml b/taskfiles/Taskfile_gotest.yml index e144585..b930d56 100644 --- a/taskfiles/Taskfile_gotest.yml +++ b/taskfiles/Taskfile_gotest.yml @@ -37,6 +37,6 @@ tasks: -v \ -coverprofile={{.UNITTEST_DIR}}/main.out \ ./... \ - 2>&1 + 2>&1 | tee {{.UNITTEST_DIR}}/main.out - gocov convert {{.UNITTEST_DIR}}/main.out > {{.UNITTEST_DIR}}/coverage.json \ No newline at end of file + # gocov convert {{.UNITTEST_DIR}}/main.out > {{.UNITTEST_DIR}}/coverage.json