diff --git a/.ci/stack-9.6.yaml b/.ci/stack-9.6.yaml new file mode 100644 index 0000000000..1a0341f7f6 --- /dev/null +++ b/.ci/stack-9.6.yaml @@ -0,0 +1,19 @@ +resolver: lts-22.9 + +ghc-options: + "$locals": -Wall -Wcompat + +packages: +- clash-prelude +- clash-prelude-hedgehog +- clash-lib +- clash-lib-hedgehog +- clash-ghc +- clash-cores +- tests + +extra-deps: +- ansi-terminal-0.11.5@sha256:2fe3d006b9ea0dc1a5537a029edb0bc2bbe56a33a6d95264b38b54c58e931e51,3752 +- hedgehog-1.2@sha256:cb20b0f1dad7a7e4461085ea2d8ef084a19d0d5f137133bf88d1fd2f7ce9a5aa,4561 +- hedgehog-fakedata-0.0.1.5@sha256:d8059e4ef9b7b4112bef9791300118f3a2d776bb191e50b41635a411af609428,1424 +- tasty-1.5@sha256:c62c96da1e9d65bf61ce583e9f7085eed1daeb62a45f3106ca252bf9ef87025b,2763 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a2c0ee35fc..5d61731161 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: fail-fast: false matrix: os: ["macOS", "windows"] - ghc: ["8.6", "8.8", "8.10", "9.0", "9.2", "9.4"] + ghc: ["8.6", "8.8", "8.10", "9.0", "9.2", "9.4", "9.6"] exclude: # Some tests fail with a mysterious -11 error code. - os: macOS @@ -64,7 +64,7 @@ jobs: if: ${{ runner.os == 'Windows' }} uses: actions/cache@v3 with: - # On windows we have to use "\" as a path seperator, otherwise caching fails + # On windows we have to use "\" as a path separator, otherwise caching fails path: | ${{ steps.setup-haskell.outputs.stack-root }}\snapshots key: ${{ matrix.os }}-${{ matrix.ghc }}-${{ hashFiles('stack.yaml', '**/*.cabal', '.github/workflows/ci.yml') }} diff --git a/README.md b/README.md index cf87134c49..2a64e57b3d 100644 --- a/README.md +++ b/README.md @@ -65,20 +65,18 @@ Note that release branches might contain non-released patches. ## GHC compatibility | | Linux | Windows | macOS | Clash (released) | Clash (development version) |------|-------|---------|-------|------------------|-------------------------- -| 8.6 | ✔️ | ✔️ | ✔️ | 1.0 - 1.6 | ✔️ -| 8.8 | ✔️ | ❌ | ✔️ | 1.0 - 1.6 | ✔️ -| 8.10 | ✔️ | ✔️ | ❌ | 1.2 - 1.6 | ✔️ -| 9.0 | ✔️ | ✔️² | ✔️ | 1.4 - 1.6 | ✔️ -| 9.2 | ⚠️¹ | ⚠️¹ | ⚠️¹ | | ⚠️¹️ -| 9.4 | ✔️ | ✔️ | ✔️ | | ✔️ -| 9.6 | ✔️ | ❔³ | ❔³ | | ✔️ +| 8.6 | ✔️ | ✔️ | ✔️ | 1.0 - 1.8 | ✔️ +| 8.8 | ✔️ | ❌ | ✔️ | 1.0 - 1.8 | ✔️ +| 8.10 | ✔️ | ✔️ | ❌ | 1.2 - 1.8 | ✔️ +| 9.0 | ✔️ | ✔️² | ✔️ | 1.4 - 1.8 | ✔️ +| 9.2 | ⚠️¹ | ⚠️¹ | ⚠️¹ | 1.8 | ⚠️¹️ +| 9.4 | ✔️ | ✔️ | ✔️ | 1.8 | ✔️ +| 9.6 | ✔️ | ✔️ | ✔️ | 1.8 | ✔️ ¹ GHC 9.2 contains a regression, rendering Clash error messages indecipherable. This change was reverted in 9.4. ² GHC 9.0.2 on Windows fails to compile `clash-cores`. We therefore don't run the Clash testsuite on CI for this combination. -³ We use Stack to test on Windows/macOS. There is no resolver yet that uses GHC 9.6, so this remains untested. - ## Cabal To use Cabal you need both Cabal and GHC installed on your system. We recommend using [ghcup](https://www.haskell.org/ghcup/). For more information, see [https://www.haskell.org/downloads/](https://www.haskell.org/downloads/).