diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index e336e7f7..50ef903c 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -44,7 +44,7 @@ jobs: timeout-minutes: 15 strategy: matrix: - go-version: ["1.22", "1.23"] + go-version: ["1.23", "1.24"] steps: - name: Checkout repo uses: actions/checkout@v4 @@ -77,8 +77,13 @@ jobs: timeout-minutes: 15 strategy: matrix: - go-version: ["1.22", "1.23"] - tinygo-version: ["0.33.0", "0.34.0", "0.35.0"] + go-version: ["1.23", "1.24"] + tinygo-version: ["0.34.0", "0.35.0", "0.36.0"] + exclude: + - go-version: "1.24" + tinygo-version: "0.34.0" + - go-version: "1.24" + tinygo-version: "0.35.0" steps: - name: Checkout repo uses: actions/checkout@v4 @@ -108,8 +113,13 @@ jobs: timeout-minutes: 15 strategy: matrix: - go-version: ["1.22", "1.23"] - tinygo-version: ["0.33.0", "0.34.0", "0.35.0"] + go-version: ["1.23", "1.24"] + tinygo-version: ["0.34.0", "0.35.0", "0.36.0"] + exclude: + - go-version: "1.24" + tinygo-version: "0.34.0" + - go-version: "1.24" + tinygo-version: "0.35.0" steps: - name: Checkout repo uses: actions/checkout@v4 @@ -138,7 +148,9 @@ jobs: version: ${{ env.wasmtime-version }} - name: Add Go wasm exec to $PATH - run: echo "$(go env GOROOT)/misc/wasm" >> $GITHUB_PATH + run: | + echo "$(go env GOROOT)/misc/wasm" >> $GITHUB_PATH + echo "$(go env GOROOT)/lib/wasm" >> $GITHUB_PATH - name: Regenerate Go run: make tests/generated @@ -158,8 +170,7 @@ jobs: - name: Test wasm/wasip2 with TinyGo run: tinygo test -v -target=wasip2 ${{ env.go-modules }} - - name: Test generated Go with TinyGo >= 0.34.0 - if: ${{ matrix.tinygo-version != '0.33.0' }} + - name: Test generated Go with TinyGo run: tinygo test -v -target wasip2 ./tests/... - name: Verify repo is unchanged diff --git a/CHANGELOG.md b/CHANGELOG.md index aea53ceb..193e3731 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,7 +14,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), - Breaking: generated `*.wasm.go` files will now have correct WIT kebab-case base name. Interfaces or worlds with `-` in their name will require removal of the previous `*.wasm.go` files. - Breaking: upgraded to `wasm-tools` [v1.227.1](https://github.com/bytecodealliance/wasm-tools/releases/tag/v1.227.1), which [removes support](https://github.com/bytecodealliance/wasm-tools/pull/2050) for multiple return values and flags with > 32 values. To ease migration, this package will continue to support JSON generated by `wasm-tools` v1.225.0 and earlier. -- Dropped support for TinyGo v0.32.0. +- Dropped support for TinyGo v0.32.0 and v0.33.0. +- Added support for Go 1.24 and dropped support for Go 1.22. ### Fixed diff --git a/cm/go.mod b/cm/go.mod index 1f7634d7..f8e24af7 100644 --- a/cm/go.mod +++ b/cm/go.mod @@ -1,3 +1,3 @@ module go.bytecodealliance.org/cm -go 1.22.0 +go 1.23.0 diff --git a/cmd/wit-bindgen-go/main_test.go b/cmd/wit-bindgen-go/main_test.go index 5fdb8fcf..c0cec542 100644 --- a/cmd/wit-bindgen-go/main_test.go +++ b/cmd/wit-bindgen-go/main_test.go @@ -1,3 +1,6 @@ +// TODO: Remove the following go:build line when TinyGo supports Go 1.24. +//go:build !(tinygo && go1.24) + package main import ( diff --git a/go.mod b/go.mod index a22371b8..2c9e2f08 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module go.bytecodealliance.org -go 1.22.0 +go 1.23.0 require ( github.com/coreos/go-semver v0.3.1 diff --git a/go.work b/go.work index df5e2eff..d89b68f7 100644 --- a/go.work +++ b/go.work @@ -1,4 +1,4 @@ -go 1.22.0 +go 1.23.0 use ( . diff --git a/testdata/go.mod b/testdata/go.mod index 24e2e712..f5c060f3 100644 --- a/testdata/go.mod +++ b/testdata/go.mod @@ -1,4 +1,4 @@ // This go.mod file exists to prevent the testdata directory from being included in module distribution. module testdata -go 1.22.0 +go 1.23.0 diff --git a/tests/go.mod b/tests/go.mod index cc00d859..687ce4f9 100644 --- a/tests/go.mod +++ b/tests/go.mod @@ -1,3 +1,3 @@ module tests -go 1.22.0 +go 1.23.0