Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support building with GHC 9.4 #51

Merged
merged 4 commits into from
Apr 4, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 15 additions & 7 deletions .github/workflows/ci-matrix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,16 +27,14 @@ jobs:
strategy:
fail-fast: false
matrix:
ghc: ['8.8.4', '8.10.7', '9.0.2', '9.2.2']
cabal: ['3.6.2.0']
ghc: ['8.10.7', '9.2.7', '9.4.4']
cabal: ['3.8.1.0']
os: [ubuntu-latest, macOS-latest]
exclude:
- os: macOS-latest
ghc: 8.8.4
- os: macOS-latest
ghc: 8.10.7
- os: macOS-latest
ghc: 9.0.2
ghc: 9.2.7

name: GHC ${{ matrix.ghc }} on ${{ matrix.os }} asl-translator

Expand All @@ -52,8 +50,8 @@ jobs:
ghc-version: ${{ matrix.ghc }}
cabal-version: ${{ matrix.cabal }}

- uses: actions/cache@v2
name: Cache cabal-store
- uses: actions/cache/restore@v3
name: Restore cabal store cache
with:
path: |
${{ steps.setup-haskell.outputs.cabal-store }}
Expand Down Expand Up @@ -82,3 +80,13 @@ jobs:
run: |
cabal v2-test pkg:asl-translator

- uses: actions/cache/save@v3
name: Save cabal store cache
if: always()
with:
path: |
${{ steps.setup-haskell.outputs.cabal-store }}
dist-newstyle
key: |
${{ env.CACHE_VERSION }}-cabal-${{ runner.os }}-${{ matrix.ghc }}-${{ hashFiles(format('cabal.GHC-{0}.config', matrix.ghc)) }}-${{ github.ref }}
${{ env.CACHE_VERSION }}-cabal-${{ runner.os }}-${{ matrix.ghc }}-${{ hashFiles(format('cabal.GHC-{0}.config', matrix.ghc)) }}-
4 changes: 2 additions & 2 deletions asl-translator.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ common shared-properties
ilist,
integer-logarithms,
bimap,
text >= 1 && < 2,
text >= 1 && < 2.1,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know this is not the first PR to make this change, but seeing it repeatedly I'm now wondering: since we constrain base (not tightly, but we do), and since text is a boot library (i.e. builtin to the GHC distribution, per https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/libraries/version-history), should we just remove constraints on text altogether?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

GHC does ship with text, but strictly speaking, it's not tied directly to the GHC version. If you want, you can choose a build plan that picks a different version of text than what GHC ships with. (I had to do quite a bit of testing of this sort with text-2.0 in my own libraries before it was released.) For this reason, I think it's a good idea to be cautious with upper version bounds, although I don't feel too strongly about this.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK. I'm fine with keeping the constraints... I was just thinking about ways to minimize our churn going forward.

mtl,
transformers,
lens,
Expand Down Expand Up @@ -106,7 +106,7 @@ executable asl-translator-exec
what4,
asl-translator,
split,
text >= 1 && < 2
text >= 1 && < 2.1
hs-source-dirs: exe
ghc-options: -Wcompat -Wall -O2 -threaded -rtsopts "-with-rtsopts=-N"
default-language: Haskell2010
Expand Down
1 change: 1 addition & 0 deletions lib/Language/ASL/Formulas.hs
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ semantics, represented as a library of what4 expressions.
{-# LANGUAGE GADTs #-}
{-# LANGUAGE CPP #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE TypeOperators #-}

module Language.ASL.Formulas
( getFunctionFormulas
Expand Down
1 change: 1 addition & 0 deletions lib/Language/ASL/Globals.hs
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@

{-# LANGUAGE AllowAmbiguousTypes #-}
{-# LANGUAGE UndecidableInstances #-}
{-# LANGUAGE UndecidableSuperClasses #-}

{-# OPTIONS_GHC -ddump-splices -ddump-to-file -dth-dec-file #-}
{-# OPTIONS_GHC -fno-warn-orphans #-}
Expand Down
1 change: 1 addition & 0 deletions lib/Language/ASL/Translation/Driver.hs
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ normalized, then written out again.
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE ViewPatterns #-}
{-# LANGUAGE CPP #-}
{-# LANGUAGE TypeOperators #-}

module Language.ASL.Translation.Driver
( TranslatorOptions(..)
Expand Down
2 changes: 1 addition & 1 deletion submodules/crucible
Submodule crucible updated 330 files
2 changes: 1 addition & 1 deletion submodules/dismantle