Skip to content

Commit

Permalink
Test with GHC 9.4.1 (#466)
Browse files Browse the repository at this point in the history
  • Loading branch information
arybczak authored Aug 23, 2022
1 parent 62d6cef commit 667264f
Show file tree
Hide file tree
Showing 11 changed files with 23 additions and 36 deletions.
36 changes: 10 additions & 26 deletions .github/workflows/haskell-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@
#
# For more information, see https://github.com/haskell-CI/haskell-ci
#
# version: 0.15.20220609
# version: 0.15.20220808
#
# REGENDATA ("0.15.20220609",["github","--config=cabal.haskell-ci","cabal.project"])
# REGENDATA ("0.15.20220808",["github","--config=cabal.haskell-ci","cabal.project"])
#
name: Haskell-CI
on:
Expand All @@ -37,14 +37,14 @@ jobs:
compilerVersion: "8.4"
setup-method: hvr-ppa
allow-failure: false
- compiler: ghc-9.4.0.20220523
- compiler: ghc-9.4.1
compilerKind: ghc
compilerVersion: 9.4.0.20220523
compilerVersion: 9.4.1
setup-method: ghcup
allow-failure: true
- compiler: ghc-9.2.3
allow-failure: false
- compiler: ghc-9.2.4
compilerKind: ghc
compilerVersion: 9.2.3
compilerVersion: 9.2.4
setup-method: ghcup
allow-failure: false
- compiler: ghc-9.0.2
Expand Down Expand Up @@ -98,9 +98,8 @@ jobs:
apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
if [ "${{ matrix.setup-method }}" = ghcup ]; then
mkdir -p "$HOME/.ghcup/bin"
curl -sL https://downloads.haskell.org/ghcup/0.1.17.8/x86_64-linux-ghcup-0.1.17.8 > "$HOME/.ghcup/bin/ghcup"
curl -sL https://downloads.haskell.org/ghcup/0.1.18.0/x86_64-linux-ghcup-0.1.18.0 > "$HOME/.ghcup/bin/ghcup"
chmod a+x "$HOME/.ghcup/bin/ghcup"
if $HEADHACKAGE; then "$HOME/.ghcup/bin/ghcup" config add-release-channel https://raw.githubusercontent.com/haskell/ghcup-metadata/master/ghcup-prereleases-0.0.7.yaml; fi
"$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
"$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
else
Expand All @@ -111,7 +110,7 @@ jobs:
apt-get update
if [ $((GHCJSARITH)) -ne 0 ] ; then apt-get install -y "$HCNAME" ghc-8.4.4 nodejs ; else apt-get install -y "$HCNAME" ; fi
mkdir -p "$HOME/.ghcup/bin"
curl -sL https://downloads.haskell.org/ghcup/0.1.17.8/x86_64-linux-ghcup-0.1.17.8 > "$HOME/.ghcup/bin/ghcup"
curl -sL https://downloads.haskell.org/ghcup/0.1.18.0/x86_64-linux-ghcup-0.1.18.0 > "$HOME/.ghcup/bin/ghcup"
chmod a+x "$HOME/.ghcup/bin/ghcup"
"$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
fi
Expand Down Expand Up @@ -145,7 +144,7 @@ jobs:
echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
echo "ARG_BENCH=--enable-benchmarks" >> "$GITHUB_ENV"
if [ $((! GHCJSARITH && HCNUMVER >= 90400)) -ne 0 ] ; then echo "HEADHACKAGE=true" >> "$GITHUB_ENV" ; else echo "HEADHACKAGE=false" >> "$GITHUB_ENV" ; fi
echo "HEADHACKAGE=false" >> "$GITHUB_ENV"
echo "ARG_COMPILER=--$HCKIND --with-compiler=$HC" >> "$GITHUB_ENV"
env:
HCKIND: ${{ matrix.compilerKind }}
Expand Down Expand Up @@ -173,18 +172,6 @@ jobs:
repository hackage.haskell.org
url: http://hackage.haskell.org/
EOF
if $HEADHACKAGE; then
cat >> $CABAL_CONFIG <<EOF
repository head.hackage.ghc.haskell.org
url: https://ghc.gitlab.haskell.org/head.hackage/
secure: True
root-keys: 7541f32a4ccca4f97aea3b22f5e593ba2c0267546016b992dfadcd2fe944e55d
26021a13b401500c8eb2761ca95c61f2d625bfef951b939a8124ed12ecf07329
f76d08be13e9a61a377a85e2fb63f4c5435d40f8feb3e12eb05905edb8cdea89
key-threshold: 3
active-repositories: hackage.haskell.org, head.hackage.ghc.haskell.org:override
EOF
fi
cat >> $CABAL_CONFIG <<EOF
program-default-options
ghc-options: $GHCJOBS +RTS -M3G -RTS
Expand Down Expand Up @@ -295,9 +282,6 @@ jobs:
echo " ghc-options: -Werror=missing-methods" >> cabal.project
cat >> cabal.project <<EOF
EOF
if $HEADHACKAGE; then
echo "allow-newer: $($HCPKG list --simple-output | sed -E 's/([a-zA-Z-]+)-[0-9.]+/*:\1,/g')" >> cabal.project
fi
$HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: $_ installed\n" unless /^(indexed-profunctors|metametapost|optics|optics-core|optics-extra|optics-sop|optics-th|optics-vl|template-haskell-optics)$/; }' >> cabal.project.local
cat cabal.project
cat cabal.project.local
Expand Down
2 changes: 1 addition & 1 deletion indexed-profunctors/indexed-profunctors.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ build-type: Simple
maintainer: optics@well-typed.com
author: Adam Gundry, Andres Löh, Andrzej Rybczak, Oleg Grenrus
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
|| ==9.0.2 || ==9.2.3 || ==9.4.1, GHCJS ==8.4
|| ==9.0.2 || ==9.2.4 || ==9.4.1, GHCJS ==8.4
synopsis: Utilities for indexed profunctors
category: Data, Optics, Lenses, Profunctors
description:
Expand Down
2 changes: 1 addition & 1 deletion metametapost/metametapost.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ license: BSD-3-Clause
license-file: LICENSE
build-type: Simple
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
|| ==9.0.2 || ==9.2.3 || ==9.4.1, GHCJS ==8.4
|| ==9.0.2 || ==9.2.4 || ==9.4.1, GHCJS ==8.4
maintainer: oleg@well-typed.com
synopsis: Generate optics documentation diagrams
category: Optics, Examples
Expand Down
2 changes: 1 addition & 1 deletion optics-core/optics-core.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ build-type: Simple
maintainer: optics@well-typed.com
author: Adam Gundry, Andres Löh, Andrzej Rybczak, Oleg Grenrus
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
|| ==9.0.2 || ==9.2.3 || ==9.4.1, GHCJS ==8.4
|| ==9.0.2 || ==9.2.4 || ==9.4.1, GHCJS ==8.4
synopsis: Optics as an abstract interface: core definitions
category: Data, Optics, Lenses
description:
Expand Down
2 changes: 1 addition & 1 deletion optics-extra/optics-extra.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ build-type: Simple
maintainer: optics@well-typed.com
author: Andrzej Rybczak
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
|| ==9.0.2 || ==9.2.3 || ==9.4.1, GHCJS ==8.4
|| ==9.0.2 || ==9.2.4 || ==9.4.1, GHCJS ==8.4
synopsis: Extra utilities and instances for optics-core
category: Data, Optics, Lenses
description:
Expand Down
2 changes: 1 addition & 1 deletion optics-sop/optics-sop.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ build-type: Simple
maintainer: optics@well-typed.com
author: Adam Gundry, Andres Löh, Andrzej Rybczak
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
|| ==9.0.2 || ==9.2.3 || ==9.4.1, GHCJS ==8.4
|| ==9.0.2 || ==9.2.4 || ==9.4.1, GHCJS ==8.4
synopsis: Optics for generics-sop, and using generics-sop
category: Data, Optics, Lenses, Generics
description:
Expand Down
2 changes: 1 addition & 1 deletion optics-th/optics-th.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ build-type: Simple
maintainer: optics@well-typed.com
author: Andrzej Rybczak
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
|| ==9.0.2 || ==9.2.3 || ==9.4.1, GHCJS ==8.4
|| ==9.0.2 || ==9.2.4 || ==9.4.1, GHCJS ==8.4
synopsis: Optics construction using TemplateHaskell
category: Data, Optics, Lenses
description:
Expand Down
2 changes: 1 addition & 1 deletion optics-vl/optics-vl.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ build-type: Simple
maintainer: optics@well-typed.com
author: Andrzej Rybczak
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
|| ==9.0.2 || ==9.2.3 || ==9.4.1, GHCJS ==8.4
|| ==9.0.2 || ==9.2.4 || ==9.4.1, GHCJS ==8.4
synopsis: Utilities for compatibility with van Laarhoven optics
category: Data, Optics, Lenses
description:
Expand Down
2 changes: 1 addition & 1 deletion optics/optics.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ build-type: Simple
maintainer: optics@well-typed.com
author: Adam Gundry, Andres Löh, Andrzej Rybczak, Oleg Grenrus
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
|| ==9.0.2 || ==9.2.3 || ==9.4.1, GHCJS ==8.4
|| ==9.0.2 || ==9.2.4 || ==9.4.1, GHCJS ==8.4
synopsis: Optics as an abstract interface
category: Data, Optics, Lenses
description:
Expand Down
5 changes: 4 additions & 1 deletion optics/tests/Optics/Tests/Labels/Generic.hs
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,10 @@ label3rhs Human{fish} = case fish of

label4lhs, label4rhs :: Human a -> String -> Human a
label4lhs s b = set (#fish % #name) b s
label4rhs s b = s { fish = (fish s) { name = b } }
label4rhs s b = s { fish = case fish s of
GoldFish{} -> GoldFish b
Herring{} -> Herring b
}

label5lhs, label5rhs :: Human Mammal -> Bool -> Human Mammal
label5lhs s b = set (#pets % traversed % gafield @"lazy") b s
Expand Down
2 changes: 1 addition & 1 deletion template-haskell-optics/template-haskell-optics.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ maintainer: optics@well-typed.com
author: Andrzej Rybczak
cabal-version: 1.18
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
|| ==9.0.2 || ==9.2.3 || ==9.4.1, GHCJS ==8.4
|| ==9.0.2 || ==9.2.4 || ==9.4.1, GHCJS ==8.4
synopsis: Optics for template-haskell types
category: Data, Optics, Lenses
description:
Expand Down

0 comments on commit 667264f

Please sign in to comment.