diff --git a/.github/workflows/check-easyjson.yml b/.github/workflows/check-easyjson.yml index 2aa4193db80..419f736256a 100644 --- a/.github/workflows/check-easyjson.yml +++ b/.github/workflows/check-easyjson.yml @@ -2,7 +2,7 @@ name: Check easyjson generated files env: # See: https://github.com/actions/setup-go/tree/main#supported-version-syntax - GO_VERSION: "1.23" + GO_VERSION: "1.24" # See: https://docs.github.com/en/actions/reference/events-that-trigger-workflows on: diff --git a/.github/workflows/check-go-dependencies-task.yml b/.github/workflows/check-go-dependencies-task.yml index 6c3dd0a8316..c3d31664168 100644 --- a/.github/workflows/check-go-dependencies-task.yml +++ b/.github/workflows/check-go-dependencies-task.yml @@ -3,7 +3,7 @@ name: Check Go Dependencies env: # See: https://github.com/actions/setup-go/tree/main#supported-version-syntax - GO_VERSION: "1.23" + GO_VERSION: "1.24" # See: https://docs.github.com/actions/using-workflows/events-that-trigger-workflows on: diff --git a/.github/workflows/check-go-task.yml b/.github/workflows/check-go-task.yml index 06cf002052e..4efd2a0b26f 100644 --- a/.github/workflows/check-go-task.yml +++ b/.github/workflows/check-go-task.yml @@ -3,7 +3,7 @@ name: Check Go env: # See: https://github.com/actions/setup-go/tree/main#supported-version-syntax - GO_VERSION: "1.23" + GO_VERSION: "1.24" # See: https://docs.github.com/en/actions/reference/events-that-trigger-workflows on: @@ -116,7 +116,7 @@ jobs: - name: golangci-lint uses: golangci/golangci-lint-action@v6 with: - version: v1.63 + version: v1.64.5 - name: Check style env: diff --git a/.github/workflows/check-i18n-task.yml b/.github/workflows/check-i18n-task.yml index 6529e473c42..0e000fe13b9 100644 --- a/.github/workflows/check-i18n-task.yml +++ b/.github/workflows/check-i18n-task.yml @@ -2,7 +2,7 @@ name: Check Internationalization env: # See: https://github.com/actions/setup-go/tree/main#supported-version-syntax - GO_VERSION: "1.23" + GO_VERSION: "1.24" # See: https://docs.github.com/en/actions/reference/events-that-trigger-workflows on: diff --git a/.github/workflows/check-markdown-task.yml b/.github/workflows/check-markdown-task.yml index c65ac00a55c..02ae36cb159 100644 --- a/.github/workflows/check-markdown-task.yml +++ b/.github/workflows/check-markdown-task.yml @@ -5,7 +5,7 @@ env: # See: https://github.com/actions/setup-node/#readme NODE_VERSION: 16.x # See: https://github.com/actions/setup-go/tree/main#supported-version-syntax - GO_VERSION: "1.23" + GO_VERSION: "1.24" # See: https://docs.github.com/actions/using-workflows/events-that-trigger-workflows on: diff --git a/.github/workflows/check-mkdocs-task.yml b/.github/workflows/check-mkdocs-task.yml index 7962ea205c1..18680faab36 100644 --- a/.github/workflows/check-mkdocs-task.yml +++ b/.github/workflows/check-mkdocs-task.yml @@ -3,7 +3,7 @@ name: Check Website env: # See: https://github.com/actions/setup-go/tree/main#supported-version-syntax - GO_VERSION: "1.23" + GO_VERSION: "1.24" # See: https://github.com/actions/setup-python/tree/main#available-versions-of-python PYTHON_VERSION: "3.9" diff --git a/.github/workflows/check-protobuf-task.yml b/.github/workflows/check-protobuf-task.yml index df8c5fbf2df..c0ecd1cda3d 100644 --- a/.github/workflows/check-protobuf-task.yml +++ b/.github/workflows/check-protobuf-task.yml @@ -2,7 +2,7 @@ name: Check Protocol Buffers env: # See: https://github.com/actions/setup-go/tree/main#supported-version-syntax - GO_VERSION: "1.23" + GO_VERSION: "1.24" # See: https://docs.github.com/en/actions/reference/events-that-trigger-workflows on: diff --git a/.github/workflows/deploy-cobra-mkdocs-versioned-poetry.yml b/.github/workflows/deploy-cobra-mkdocs-versioned-poetry.yml index 8cd5c0c9c9e..76f32ad3eaa 100644 --- a/.github/workflows/deploy-cobra-mkdocs-versioned-poetry.yml +++ b/.github/workflows/deploy-cobra-mkdocs-versioned-poetry.yml @@ -3,7 +3,7 @@ name: Deploy Website env: # See: https://github.com/actions/setup-go/tree/main#supported-version-syntax - GO_VERSION: "1.23" + GO_VERSION: "1.24" # See: https://github.com/actions/setup-python/tree/main#available-versions-of-python PYTHON_VERSION: "3.9" diff --git a/.github/workflows/i18n-weekly-pull.yaml b/.github/workflows/i18n-weekly-pull.yaml index 55f7ad22307..173d8070094 100644 --- a/.github/workflows/i18n-weekly-pull.yaml +++ b/.github/workflows/i18n-weekly-pull.yaml @@ -2,7 +2,7 @@ name: i18n-weekly-pull env: # See: https://github.com/actions/setup-go/tree/main#supported-version-syntax - GO_VERSION: "1.23" + GO_VERSION: "1.24" COVERAGE_ARTIFACT: coverage-data on: diff --git a/.github/workflows/publish-go-tester-task.yml b/.github/workflows/publish-go-tester-task.yml index ccad7398fa0..82dfad0fff1 100644 --- a/.github/workflows/publish-go-tester-task.yml +++ b/.github/workflows/publish-go-tester-task.yml @@ -76,7 +76,7 @@ jobs: create-artifacts: needs: package-name-prefix name: Create artifact ${{ matrix.artifact.name }} - runs-on: ubuntu-latest + runs-on: ${{ matrix.artifact.runner }} strategy: matrix: @@ -84,36 +84,47 @@ jobs: - task: dist:Windows_32bit path: "*Windows_32bit.zip" name: Windows_X86-32 + runner: ubuntu-latest - task: dist:Windows_64bit path: "*Windows_64bit.zip" name: Windows_X86-64 + runner: ubuntu-latest - task: dist:Linux_32bit path: "*Linux_32bit.tar.gz" name: Linux_X86-32 + runner: ubuntu-latest - task: dist:Linux_64bit path: "*Linux_64bit.tar.gz" name: Linux_X86-64 + runner: ubuntu-latest - task: dist:Linux_ARMv6 path: "*Linux_ARMv6.tar.gz" name: Linux_ARMv6 + runner: ubuntu-latest - task: dist:Linux_ARMv7 path: "*Linux_ARMv7.tar.gz" name: Linux_ARMv7 + runner: ubuntu-latest - task: dist:Linux_ARM64 path: "*Linux_ARM64.tar.gz" name: Linux_ARM64 + runner: ubuntu-latest - task: dist:macOS_64bit path: "*macOS_64bit.tar.gz" name: macOS_64 + runner: ubuntu-latest - task: dist:macOS_ARM64 path: "*macOS_ARM64.tar.gz" name: macOS_ARM64 + runner: ubuntu-24.04-arm - task: protoc:collect path: "*_proto.zip" name: rpc-protocol-files + runner: ubuntu-latest - task: dist:jsonschema path: "*configuration.schema.json" name: configuration-schema + runner: ubuntu-latest steps: - name: Checkout repository diff --git a/.github/workflows/test-go-task.yml b/.github/workflows/test-go-task.yml index 98f869598f3..61ecb297cd8 100644 --- a/.github/workflows/test-go-task.yml +++ b/.github/workflows/test-go-task.yml @@ -3,7 +3,7 @@ name: Test Go env: # See: https://github.com/actions/setup-go/tree/main#supported-version-syntax - GO_VERSION: "1.23" + GO_VERSION: "1.24" COVERAGE_ARTIFACT: coverage-data # See: https://docs.github.com/en/free-pro-team@latest/actions/reference/events-that-trigger-workflows diff --git a/.golangci.yml b/.golangci.yml index a39df11a1b5..0890432757a 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -1,6 +1,6 @@ run: timeout: 10m - go: "1.22" + go: "1.24" tests: true linters: diff --git a/.licenses/go/golang.org/x/crypto/hkdf.dep.yml b/.licenses/go/golang.org/x/crypto/hkdf.dep.yml new file mode 100644 index 00000000000..f46b5c38970 --- /dev/null +++ b/.licenses/go/golang.org/x/crypto/hkdf.dep.yml @@ -0,0 +1,63 @@ +--- +name: golang.org/x/crypto/hkdf +version: v0.32.0 +type: go +summary: Package hkdf implements the HMAC-based Extract-and-Expand Key Derivation + Function (HKDF) as defined in RFC 5869. +homepage: https://pkg.go.dev/golang.org/x/crypto/hkdf +license: bsd-3-clause +licenses: +- sources: crypto@v0.32.0/LICENSE + text: | + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +- sources: crypto@v0.32.0/PATENTS + text: | + Additional IP Rights Grant (Patents) + + "This implementation" means the copyrightable works distributed by + Google as part of the Go project. + + Google hereby grants to You a perpetual, worldwide, non-exclusive, + no-charge, royalty-free, irrevocable (except as stated in this section) + patent license to make, have made, use, offer to sell, sell, import, + transfer and otherwise run, modify and propagate the contents of this + implementation of Go, where such license applies only to those patent + claims, both currently owned or controlled by Google and acquired in + the future, licensable by Google that are necessarily infringed by this + implementation of Go. This grant does not include claims that would be + infringed only as a consequence of further modification of this + implementation. If you or your agent or exclusive licensee institute or + order or agree to the institution of patent litigation against any + entity (including a cross-claim or counterclaim in a lawsuit) alleging + that this implementation of Go or any code incorporated within this + implementation of Go constitutes direct or contributory patent + infringement, or inducement of patent infringement, then any patent + rights granted to you under this License for this implementation of Go + shall terminate as of the date such litigation is filed. +notices: [] diff --git a/.licenses/go/golang.org/x/crypto/sha3.dep.yml b/.licenses/go/golang.org/x/crypto/sha3.dep.yml new file mode 100644 index 00000000000..b1ca1e2c757 --- /dev/null +++ b/.licenses/go/golang.org/x/crypto/sha3.dep.yml @@ -0,0 +1,63 @@ +--- +name: golang.org/x/crypto/sha3 +version: v0.32.0 +type: go +summary: Package sha3 implements the SHA-3 fixed-output-length hash functions and + the SHAKE variable-output-length hash functions defined by FIPS-202. +homepage: https://pkg.go.dev/golang.org/x/crypto/sha3 +license: other +licenses: +- sources: crypto@v0.32.0/LICENSE + text: | + Copyright 2009 The Go Authors. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +- sources: crypto@v0.32.0/PATENTS + text: | + Additional IP Rights Grant (Patents) + + "This implementation" means the copyrightable works distributed by + Google as part of the Go project. + + Google hereby grants to You a perpetual, worldwide, non-exclusive, + no-charge, royalty-free, irrevocable (except as stated in this section) + patent license to make, have made, use, offer to sell, sell, import, + transfer and otherwise run, modify and propagate the contents of this + implementation of Go, where such license applies only to those patent + claims, both currently owned or controlled by Google and acquired in + the future, licensable by Google that are necessarily infringed by this + implementation of Go. This grant does not include claims that would be + infringed only as a consequence of further modification of this + implementation. If you or your agent or exclusive licensee institute or + order or agree to the institution of patent litigation against any + entity (including a cross-claim or counterclaim in a lawsuit) alleging + that this implementation of Go or any code incorporated within this + implementation of Go constitutes direct or contributory patent + infringement, or inducement of patent infringement, then any patent + rights granted to you under this License for this implementation of Go + shall terminate as of the date such litigation is filed. +notices: [] diff --git a/DistTasks.yml b/DistTasks.yml index 43beff81061..eb0ce3dbd25 100644 --- a/DistTasks.yml +++ b/DistTasks.yml @@ -19,7 +19,7 @@ version: "3" vars: CONTAINER: "docker.elastic.co/beats-dev/golang-crossbuild" - GO_VERSION: "1.23.4" + GO_VERSION: "1.24.1" tasks: Windows_32bit: @@ -163,9 +163,9 @@ tasks: vars: PLATFORM_DIR: "{{.PROJECT_NAME}}_linux_arm_64" - BUILD_COMMAND: "go build -o {{.DIST_DIR}}/{{.PLATFORM_DIR}}/{{.PROJECT_NAME}} {{.LDFLAGS}}" + BUILD_COMMAND: "go build -buildvcs=false -o {{.DIST_DIR}}/{{.PLATFORM_DIR}}/{{.PROJECT_NAME}} {{.LDFLAGS}}" BUILD_PLATFORM: "linux/arm64" - CONTAINER_TAG: "{{.GO_VERSION}}-arm" + CONTAINER_TAG: "{{.GO_VERSION}}-arm-debian12" PACKAGE_PLATFORM: "Linux_ARM64" PACKAGE_NAME: "{{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.tar.gz" diff --git a/go.mod b/go.mod index 5780055a012..85ae315d3cf 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/arduino/arduino-cli -go 1.23.4 +go 1.24.1 // We must use this fork until https://github.com/mailru/easyjson/pull/372 is merged replace github.com/mailru/easyjson => github.com/cmaglie/easyjson v0.8.1