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 GHC 9.10, drop 9.4 #1310

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft
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
8 changes: 5 additions & 3 deletions .github/Dockerfile-crux-llvm
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
# If you update this version number, make sure to update the value of
# LINUX_LLVM_VER in .github/ci.sh (in the install_llvm() function).
ARG LLVM_VER=14
ARG GHC_VER=9.6.5

FROM ubuntu:22.04 AS build
ARG LLVM_VER
ARG GHC_VER

RUN apt-get update && \
apt-get install -y \
Expand All @@ -27,7 +29,7 @@ ADD crux ${CRUX_BUILD_DIR}/crux
ADD crux-llvm ${CRUX_BUILD_DIR}/crux-llvm
ADD dependencies ${CRUX_BUILD_DIR}/dependencies
ADD .github/cabal.project.crux-llvm ${CRUX_BUILD_DIR}/cabal.project
ADD cabal.GHC-9.4.8.config ${CRUX_BUILD_DIR}/cabal.project.freeze
ADD cabal.GHC-${GHC_VER}.config ${CRUX_BUILD_DIR}/cabal.project.freeze
# Workaround until we have a more recent LLVM build available
RUN cp ${CRUX_BUILD_DIR}/crux-llvm/c-src/libcxx-7.1.0.bc ${CRUX_BUILD_DIR}/crux-llvm/c-src/libcxx-${LLVM_VER}.0.0.bc

Expand Down Expand Up @@ -56,8 +58,8 @@ RUN mkdir -p /home/crux-llvm/.local/bin && \
RUN mkdir -p /home/crux-llvm/.ghcup && \
ghcup --version && \
ghcup install cabal 3.10.3.0 && \
ghcup install ghc 9.4.8 && \
ghcup set ghc 9.4.8
ghcup install ghc ${GHC_VER} && \
ghcup set ghc ${GHC_VER}

WORKDIR ${CRUX_BUILD_DIR}
RUN cabal v2-update && \
Expand Down
8 changes: 5 additions & 3 deletions .github/Dockerfile-crux-mir
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,12 @@
# .github/workflows/crux-mir-build.yml
ARG RUST_TOOLCHAIN="nightly-2023-01-23"
ARG CRUX_BUILD_DIR=/crux-mir/build
ARG GHC_VER=9.6.5

FROM ubuntu:22.04 AS build
ARG RUST_TOOLCHAIN
ARG CRUX_BUILD_DIR
ARG GHC_VER

RUN apt-get update && \
apt-get install -y \
Expand All @@ -26,7 +28,7 @@ ADD crux ${CRUX_BUILD_DIR}/crux
ADD crux-mir ${CRUX_BUILD_DIR}/crux-mir
ADD dependencies ${CRUX_BUILD_DIR}/dependencies
ADD .github/cabal.project.crux-mir ${CRUX_BUILD_DIR}/cabal.project
ADD cabal.GHC-9.4.8.config ${CRUX_BUILD_DIR}/cabal.project.freeze
ADD cabal.GHC-${GHC_VER}.config ${CRUX_BUILD_DIR}/cabal.project.freeze

RUN useradd -m crux-mir && chown -R crux-mir:crux-mir /crux-mir
USER crux-mir
Expand Down Expand Up @@ -56,8 +58,8 @@ RUN mkdir -p /home/crux-mir/.local/bin && \
RUN mkdir -p /home/crux-mir/.ghcup && \
ghcup --version && \
ghcup install cabal 3.10.3.0 && \
ghcup install ghc 9.4.8 && \
ghcup set ghc 9.4.8
ghcup install ghc ${GHC_VER} && \
ghcup set ghc ${GHC_VER}

WORKDIR ${CRUX_BUILD_DIR}/crux-mir
RUN ./translate_libs.sh
Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/crucible-go-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,14 @@ jobs:
matrix:
os: [ubuntu-22.04]
cabal: ["3.10.3.0"]
ghc: ["9.4.8", "9.6.5", "9.8.2"]
ghc: ["9.6.5", "9.8.2", "9.10.1"]
include:
- os: macos-14
cabal: 3.10.3.0
ghc: 9.8.2
ghc: 9.10.1
- os: windows-2019
cabal: 3.10.3.0
ghc: 9.8.2
ghc: 9.10.1
name: crucible-go - GHC v${{ matrix.ghc }} - ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -93,6 +93,7 @@ jobs:
9.4.8) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.6.5) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.8.2) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.10.1) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
*) GHC_NIXPKGS=github:nixos/nixpkgs/21.11 ;;
esac
echo NS="nix shell ${GHC_NIXPKGS}#cabal-install ${GHC_NIXPKGS}#${GHC} nixpkgs#gmp nixpkgs#zlib nixpkgs#zlib.dev" >> $GITHUB_ENV
Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/crucible-jvm-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,14 @@ jobs:
matrix:
os: [ubuntu-22.04]
cabal: ["3.10.3.0"]
ghc: ["9.4.8", "9.6.5", "9.8.2"]
ghc: ["9.6.5", "9.8.2", "9.10.1"]
include:
- os: macos-14
cabal: 3.10.3.0
ghc: 9.8.2
ghc: 9.10.1
- os: windows-2019
cabal: 3.10.3.0
ghc: 9.8.2
ghc: 9.10.1
name: crucible-jvm - GHC v${{ matrix.ghc }} - ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -93,6 +93,7 @@ jobs:
9.4.8) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.6.5) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.8.2) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.10.1) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
*) GHC_NIXPKGS=github:nixos/nixpkgs/21.11 ;;
esac
echo NS="nix shell ${GHC_NIXPKGS}#cabal-install ${GHC_NIXPKGS}#${GHC} nixpkgs#gmp nixpkgs#zlib nixpkgs#zlib.dev" >> $GITHUB_ENV
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/crucible-wasm-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,14 @@ jobs:
matrix:
os: [ubuntu-22.04]
cabal: ["3.10.3.0"]
ghc: ["9.4.8", "9.6.5", "9.8.2"]
ghc: ["9.6.5", "9.8.2", "9.10.1"]
include:
- os: macos-14
cabal: 3.10.3.0
ghc: 9.8.2
ghc: 9.10.1
- os: windows-2019
cabal: 3.10.3.0
ghc: 9.8.2
ghc: 9.10.1
name: crucible-wasm - GHC v${{ matrix.ghc }} - ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -90,9 +90,9 @@ jobs:
run: |
GHC=haskell.compiler.ghc$(echo ${{ matrix.ghc }} | sed -e s,\\.,,g)
case ${{ matrix.ghc }} in
9.4.8) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.6.5) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.8.2) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.10.1) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
*) GHC_NIXPKGS=github:nixos/nixpkgs/21.11 ;;
esac
echo NS="nix shell ${GHC_NIXPKGS}#cabal-install ${GHC_NIXPKGS}#${GHC} nixpkgs#gmp nixpkgs#zlib nixpkgs#zlib.dev" >> $GITHUB_ENV
Expand Down
9 changes: 5 additions & 4 deletions .github/workflows/crux-llvm-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,17 +65,17 @@ jobs:
matrix:
os: [ubuntu-22.04]
cabal: ["3.10.3.0"]
ghc: ["9.4.8", "9.6.5", "9.8.2"]
ghc: ["9.6.5", "9.8.2", "9.10.1"]
include:
- os: ubuntu-20.04
cabal: 3.10.3.0
ghc: 9.4.8
ghc: 9.10.1
- os: macos-14
cabal: 3.10.3.0
ghc: 9.4.8
ghc: 9.10.1
- os: windows-2019
cabal: 3.10.3.0
ghc: 9.4.8
ghc: 9.10.1
name: crux-llvm - GHC v${{ matrix.ghc }} - ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -133,6 +133,7 @@ jobs:
9.4.8) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.6.5) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.8.2) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.10.1) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
*) GHC_NIXPKGS=github:nixos/nixpkgs/21.11 ;;
esac
echo NS="nix shell ${GHC_NIXPKGS}#cabal-install ${GHC_NIXPKGS}#${GHC} nixpkgs#gmp nixpkgs#zlib nixpkgs#zlib.dev" >> $GITHUB_ENV
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/crux-mir-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,7 @@ jobs:
9.4.8) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.6.5) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.8.2) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
9.10.1) GHC_NIXPKGS=github:nixos/nixpkgs/nixos-24.05 ;;
*) GHC_NIXPKGS=github:nixos/nixpkgs/21.11 ;;
esac
echo NS="nix shell ${GHC_NIXPKGS}#cabal-install ${GHC_NIXPKGS}#${GHC} nixpkgs#gmp nixpkgs#zlib nixpkgs#zlib.dev" >> $GITHUB_ENV
Expand Down
61 changes: 30 additions & 31 deletions cabal.GHC-9.4.8.config → cabal.GHC-9.10.1.config
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
active-repositories: hackage.haskell.org:merge
constraints: any.BoundedChan ==1.0.3.0,
any.Cabal ==3.8.1.0,
any.Cabal-syntax ==3.8.1.0,
any.Cabal ==3.12.0.0,
any.Cabal-syntax ==3.12.0.0,
any.Glob ==0.10.2,
any.HUnit ==1.6.2.0,
any.IntervalMap ==0.6.2.1,
Expand All @@ -18,7 +18,7 @@ constraints: any.BoundedChan ==1.0.3.0,
any.ansi-terminal ==1.1.2,
ansi-terminal -example,
any.ansi-terminal-types ==1.1,
any.array ==0.5.4.0,
any.array ==0.5.7.0,
any.assoc ==1.1.1,
assoc -tagged,
any.async ==2.2.5,
Expand All @@ -28,15 +28,15 @@ constraints: any.BoundedChan ==1.0.3.0,
any.attoparsec ==0.14.4,
attoparsec -developer,
any.barbies ==2.1.1.0,
any.base ==4.17.2.1,
any.base ==4.20.0.0,
any.base-compat ==0.14.1,
any.base-orphans ==0.9.3,
any.base16-bytestring ==1.0.2.0,
any.base64-bytestring ==1.2.1.0,
any.bifunctors ==5.6.2,
bifunctors +tagged,
any.bimap ==0.5.0,
any.binary ==0.8.9.1,
any.binary ==0.8.9.2,
any.bitvec ==1.1.5.0,
bitvec +simd,
any.bitwise ==1.0.0.1,
Expand All @@ -45,7 +45,7 @@ constraints: any.BoundedChan ==1.0.3.0,
any.boring ==0.2.2,
boring +tagged,
any.bv-sized ==1.0.5,
any.bytestring ==0.11.5.3,
any.bytestring ==0.12.1.0,
any.call-stack ==0.4.0,
any.case-insensitive ==1.2.1.0,
any.cereal ==0.5.8.3,
Expand All @@ -62,7 +62,7 @@ constraints: any.BoundedChan ==1.0.3.0,
any.config-schema ==1.3.0.0,
any.config-value ==0.8.3,
any.constraints ==0.14.2,
any.containers ==0.6.7,
any.containers ==0.7,
any.contravariant ==1.5.5,
contravariant +semigroups +statevar +tagged,
crucible +unsafe-operations,
Expand All @@ -72,9 +72,9 @@ constraints: any.BoundedChan ==1.0.3.0,
any.data-default ==0.8.0.0,
any.data-default-class ==0.2.0.0,
any.data-fix ==0.3.4,
any.deepseq ==1.4.8.0,
any.deepseq ==1.5.0.0,
any.deriving-compat ==0.6.7,
any.directory ==1.3.7.1,
any.directory ==1.3.8.3,
any.distributive ==0.6.2.1,
distributive +semigroups +tagged,
any.dlist ==1.0,
Expand All @@ -84,33 +84,32 @@ constraints: any.BoundedChan ==1.0.3.0,
any.entropy ==0.4.1.11,
entropy -donotgetentropy,
any.erf ==2.0.0.0,
any.exceptions ==0.10.5,
any.exceptions ==0.10.7,
any.extra ==1.8,
any.fgl ==5.8.3.0,
fgl +containers042,
any.fgl-visualize ==0.1.0.1,
any.filemanip ==0.3.6.3,
any.filepath ==1.4.2.2,
any.filepath ==1.5.2.0,
any.fingertree ==0.1.5.0,
any.foldable1-classes-compat ==0.1.1,
foldable1-classes-compat +tagged,
any.free ==5.2,
any.generic-lens ==2.2.2.0,
any.generic-lens-core ==2.2.1.0,
any.generic-random ==1.5.0.1,
generic-random -enable-inspect,
any.generically ==0.1.1,
any.ghc-bignum ==1.3,
any.ghc-boot-th ==9.4.8,
any.ghc-prim ==0.9.1,
any.ghc-boot-th ==9.10.1,
any.ghc-internal ==9.1001.0,
any.ghc-prim ==0.11.0,
any.gitrev ==1.3.1,
any.happy ==1.20.1.1 || ==2.1.4,
any.happy-lib ==2.1.4,
any.hashable ==1.4.7.0,
hashable -arch-native +integer-gmp -random-initial-seed,
any.happy ==1.20.1.1 || ==2.1.5,
any.happy-lib ==2.1.5,
any.hashable ==1.5.0.0,
hashable -arch-native -random-initial-seed,
any.hashtables ==1.4.2,
hashtables -bounds-checking -debug -detailed-profiling -portable -sse42 +unsafe-tricks,
any.haskeline ==0.8.2,
any.haskeline ==0.8.2.1,
any.haskell-lexer ==1.1.2,
any.haskell-src-exts ==1.23.1,
any.haskell-src-meta ==0.8.15,
Expand Down Expand Up @@ -159,7 +158,7 @@ constraints: any.BoundedChan ==1.0.3.0,
any.monad-control ==1.0.3.1,
any.monadLib ==3.10.3,
any.mono-traversable ==1.0.21.0,
any.mtl ==2.2.2,
any.mtl ==2.3.1,
any.named-text ==1.2.1.0,
named-text +with-json,
any.network ==3.2.7.0,
Expand All @@ -168,12 +167,12 @@ constraints: any.BoundedChan ==1.0.3.0,
any.optparse-applicative ==0.18.1.0,
optparse-applicative +process,
any.ordered-containers ==0.2.4,
any.os-string ==2.0.7,
any.os-string ==2.0.2,
any.panic ==0.4.0.1,
any.parallel ==3.2.2.0,
any.parameterized-utils ==2.1.9.0,
parameterized-utils +unsafe-operations,
any.parsec ==3.1.16.1,
any.parsec ==3.1.17.0,
any.parser-combinators ==1.3.0,
parser-combinators -dev,
any.pretty ==1.1.3.6,
Expand All @@ -182,7 +181,7 @@ constraints: any.BoundedChan ==1.0.3.0,
prettyprinter -buildreadme +text,
any.prettyprinter-ansi-terminal ==1.1.3,
any.primitive ==0.9.0.0,
any.process ==1.6.18.0,
any.process ==1.6.19.0,
any.profunctors ==5.6.2,
any.pvar ==1.0.0.0,
any.quickcheck-io ==0.2.0,
Expand Down Expand Up @@ -216,7 +215,7 @@ constraints: any.BoundedChan ==1.0.3.0,
any.split ==0.2.5,
any.splitmix ==0.1.1,
splitmix -optimised-mixer,
any.stm ==2.5.1.0,
any.stm ==2.5.3.1,
any.streaming-commons ==0.2.3.0,
streaming-commons -use-bytestring-builder,
any.strict ==0.5.1,
Expand All @@ -237,11 +236,11 @@ constraints: any.BoundedChan ==1.0.3.0,
any.tasty-quickcheck ==0.11.1,
any.tasty-smallcheck ==0.8.2,
any.tasty-sugar ==2.2.2.0,
any.template-haskell ==2.19.0.0,
any.template-haskell ==2.22.0.0,
any.temporary ==1.3,
any.terminal-size ==0.3.4,
any.terminfo ==0.4.1.5,
any.text ==2.0.2,
any.terminfo ==0.4.1.6,
any.text ==2.1.1,
any.text-conversions ==0.3.1.1,
any.text-iso8601 ==0.1.1,
any.text-short ==0.1.6,
Expand All @@ -257,15 +256,15 @@ constraints: any.BoundedChan ==1.0.3.0,
any.these ==1.2.1,
any.time ==1.12.2,
any.time-compat ==1.9.8,
any.transformers ==0.5.6.2,
any.transformers ==0.6.1.1,
any.transformers-base ==0.4.6,
transformers-base +orphaninstances,
any.transformers-compat ==0.7.2,
transformers-compat -five +five-three -four +generic-deriving +mtl -three -two,
any.typed-process ==0.2.12.0,
any.unbounded-delays ==0.1.1.1,
any.uniplate ==1.6.13,
any.unix ==2.7.3,
any.unix ==2.8.5.1,
any.unix-compat ==0.7.3,
any.unliftio ==0.2.25.0,
any.unliftio-core ==0.2.1.0,
Expand Down Expand Up @@ -293,4 +292,4 @@ constraints: any.BoundedChan ==1.0.3.0,
any.zlib ==0.7.1.0,
zlib -bundled-c-zlib +non-blocking-ffi -pkg-config,
any.zlib-bindings ==0.1.1.5
index-state: hackage.haskell.org 2025-02-05T20:39:53Z
index-state: hackage.haskell.org 2025-02-13T19:25:42Z
4 changes: 4 additions & 0 deletions cabal.project
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@
--
-- export PATH=$PWD/dist-newstyle/build/x86_64-linux/ghc-7.10.3/hpb-0.1.1/c/hpb/build/hpb:$PATH

-- TODO: https://github.com/travitch/itanium-abi/pull/15
allow-newer: itanium-abi:text
allow-newer: boomerang:template-haskell

packages:
crucible/
crucible-cli/
Expand Down
Loading
Loading