Skip to content
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
53 changes: 30 additions & 23 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.19.20240708
# version: 0.19.20250330
#
# REGENDATA ("0.19.20240708",["github","--config=cabal.haskell-ci","cabal.project"])
# REGENDATA ("0.19.20250330",["github","--config=cabal.haskell-ci","cabal.project"])
#
name: Haskell-CI
on:
Expand All @@ -23,7 +23,7 @@ on:
jobs:
linux:
name: Haskell-CI - Linux - ${{ matrix.compiler }}
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
timeout-minutes:
60
container:
Expand All @@ -32,19 +32,24 @@ jobs:
strategy:
matrix:
include:
- compiler: ghc-9.12.2
compilerKind: ghc
compilerVersion: 9.12.2
setup-method: ghcup
allow-failure: false
- compiler: ghc-9.10.1
compilerKind: ghc
compilerVersion: 9.10.1
setup-method: ghcup
allow-failure: false
- compiler: ghc-9.8.2
- compiler: ghc-9.8.4
compilerKind: ghc
compilerVersion: 9.8.2
compilerVersion: 9.8.4
setup-method: ghcup
allow-failure: false
- compiler: ghc-9.6.5
- compiler: ghc-9.6.6
compilerKind: ghc
compilerVersion: 9.6.5
compilerVersion: 9.6.6
setup-method: ghcup
allow-failure: false
- compiler: ghc-9.4.8
Expand Down Expand Up @@ -79,15 +84,29 @@ jobs:
allow-failure: false
fail-fast: false
steps:
- name: apt
- name: apt-get install
run: |
apt-get update
apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
- name: Install GHCup
run: |
mkdir -p "$HOME/.ghcup/bin"
curl -sL https://downloads.haskell.org/ghcup/0.1.30.0/x86_64-linux-ghcup-0.1.30.0 > "$HOME/.ghcup/bin/ghcup"
curl -sL https://downloads.haskell.org/ghcup/0.1.50.1/x86_64-linux-ghcup-0.1.50.1 > "$HOME/.ghcup/bin/ghcup"
chmod a+x "$HOME/.ghcup/bin/ghcup"
- name: Install cabal-install
run: |
"$HOME/.ghcup/bin/ghcup" install cabal 3.14.1.1-p1 || (cat "$HOME"/.ghcup/logs/*.* && false)
echo "CABAL=$HOME/.ghcup/bin/cabal-3.14.1.1-p1 -vnormal+nowrap" >> "$GITHUB_ENV"
- name: Install GHC (GHCup)
if: matrix.setup-method == 'ghcup'
run: |
"$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
"$HOME/.ghcup/bin/ghcup" install cabal 3.12.1.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
echo "HC=$HC" >> "$GITHUB_ENV"
echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
env:
HCKIND: ${{ matrix.compilerKind }}
HCNAME: ${{ matrix.compiler }}
Expand All @@ -98,21 +117,12 @@ jobs:
echo "LANG=C.UTF-8" >> "$GITHUB_ENV"
echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
HCDIR=/opt/$HCKIND/$HCVER
HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
echo "HC=$HC" >> "$GITHUB_ENV"
echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
echo "CABAL=$HOME/.ghcup/bin/cabal-3.12.1.0 -vnormal+nowrap" >> "$GITHUB_ENV"
HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
echo "ARG_BENCH=--enable-benchmarks" >> "$GITHUB_ENV"
echo "HEADHACKAGE=false" >> "$GITHUB_ENV"
echo "ARG_COMPILER=--$HCKIND --with-compiler=$HC" >> "$GITHUB_ENV"
echo "GHCJSARITH=0" >> "$GITHUB_ENV"
env:
HCKIND: ${{ matrix.compilerKind }}
HCNAME: ${{ matrix.compiler }}
Expand Down Expand Up @@ -246,9 +256,6 @@ jobs:
echo "package tests" >> cabal.project
echo " ghc-options: -Werror=missing-methods" >> cabal.project
cat >> cabal.project <<EOF
allow-newer: cassava-0.5.2.0:base
allow-newer: vector-th-unbox-0.2.1.7:base
allow-newer: vector-th-unbox-0.2.1.7:template-haskell
EOF
$HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: any.$_ installed\n" unless /^(bin|fin|ral|ral-lens|ral-optics|tests|vec|vec-lens|vec-optics)$/; }' >> cabal.project.local
cat cabal.project
Expand Down Expand Up @@ -353,8 +360,8 @@ jobs:
$CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks --constraint='vec -distributive' --dependencies-only -j2 all
$CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks --constraint='vec -distributive' all
- name: save cache
uses: actions/cache/save@v4
if: always()
uses: actions/cache/save@v4
with:
key: ${{ runner.os }}-${{ matrix.compiler }}-${{ github.sha }}
path: ~/.cabal/store
9 changes: 5 additions & 4 deletions bin/bin.cabal
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
cabal-version: 2.2
name: bin
version: 0.1.4
x-revision: 1
x-revision: 2
synopsis: Bin: binary natural numbers.
category: Data, Dependent Types, Singletons, Math
description:
Expand Down Expand Up @@ -41,9 +41,10 @@ tested-with:
|| ==9.0.2
|| ==9.2.8
|| ==9.4.8
|| ==9.6.5
|| ==9.8.2
|| ==9.6.6
|| ==9.8.4
|| ==9.10.1
|| ==9.12.2

source-repository head
type: git
Expand All @@ -67,7 +68,7 @@ library

-- GHC boot libs
build-depends:
, base >=4.12.0.0 && <4.21
, base >=4.12.0.0 && <4.22
, deepseq >=1.4.4.0 && <1.6

-- siblings
Expand Down
3 changes: 0 additions & 3 deletions cabal.project
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,3 @@ package vec
-- constraints: ral -adjunctions

-- allow-newer: parallel-3.2.2.0:base
allow-newer: cassava-0.5.2.0:base
allow-newer: vector-th-unbox-0.2.1.7:base
allow-newer: vector-th-unbox-0.2.1.7:template-haskell
8 changes: 5 additions & 3 deletions fin/fin.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
cabal-version: 2.2
name: fin
version: 0.3.2
x-revision: 1
synopsis: Nat and Fin: peano naturals and finite numbers
category: Data, Dependent Types, Singletons, Math
description:
Expand Down Expand Up @@ -62,9 +63,10 @@ tested-with:
|| ==9.0.2
|| ==9.2.8
|| ==9.4.8
|| ==9.6.5
|| ==9.8.2
|| ==9.6.6
|| ==9.8.4
|| ==9.10.1
|| ==9.12.2

source-repository head
type: git
Expand All @@ -87,7 +89,7 @@ library

-- GHC boot libs
build-depends:
, base >=4.12.0.0 && <4.21
, base >=4.12.0.0 && <4.22
, deepseq >=1.4.4.0 && <1.6

-- other dependencies
Expand Down
8 changes: 5 additions & 3 deletions ral-lens/ral-lens.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
cabal-version: 2.2
name: ral-lens
version: 0.2.1
x-revision: 1
synopsis: Length-indexed random access lists: lens utilities.
category: Data, Dependent Types, Singletons, Lens
description:
Expand All @@ -23,9 +24,10 @@ tested-with:
|| ==9.0.2
|| ==9.2.8
|| ==9.4.8
|| ==9.6.5
|| ==9.8.2
|| ==9.6.6
|| ==9.8.4
|| ==9.10.1
|| ==9.12.2

source-repository head
type: git
Expand All @@ -45,7 +47,7 @@ library
Data.RAVec.Tree.Lens

build-depends:
, base >=4.12.0.0 && <4.21
, base >=4.12.0.0 && <4.22
, bin ^>=0.1.4
, fin ^>=0.3.1
, lens ^>=5.2.2 || ^>=5.3.2
Expand Down
8 changes: 5 additions & 3 deletions ral-optics/ral-optics.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
cabal-version: 2.2
name: ral-optics
version: 0.2.1
x-revision: 1
synopsis: Length-indexed random access lists: optics utilities.
category: Data, Dependent Types, Singletons, Optics
description:
Expand All @@ -23,9 +24,10 @@ tested-with:
|| ==9.0.2
|| ==9.2.8
|| ==9.4.8
|| ==9.6.5
|| ==9.8.2
|| ==9.6.6
|| ==9.8.4
|| ==9.10.1
|| ==9.12.2

source-repository head
type: git
Expand All @@ -49,7 +51,7 @@ library
Data.RAVec.NonEmpty.Optics.Internal

build-depends:
, base >=4.12.0.0 && <4.21
, base >=4.12.0.0 && <4.22
, bin ^>=0.1.4
, fin ^>=0.3.1
, optics-core ^>=0.4.1.1
Expand Down
9 changes: 5 additions & 4 deletions ral/ral.cabal
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
cabal-version: 2.2
name: ral
version: 0.2.2
x-revision: 1
x-revision: 2
synopsis: Random access lists
category: Data, Dependent Types, Singletons
description:
Expand Down Expand Up @@ -36,9 +36,10 @@ tested-with:
|| ==9.0.2
|| ==9.2.8
|| ==9.4.8
|| ==9.6.5
|| ==9.8.2
|| ==9.6.6
|| ==9.8.4
|| ==9.10.1
|| ==9.12.2

source-repository head
type: git
Expand Down Expand Up @@ -85,7 +86,7 @@ library

-- GHC boot libs
build-depends:
, base >=4.12.0.0 && <4.21
, base >=4.12.0.0 && <4.22
, deepseq >=1.4.4.0 && <1.6

-- siblings
Expand Down
5 changes: 3 additions & 2 deletions tests/tests.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,10 @@ tested-with:
|| ==9.0.2
|| ==9.2.8
|| ==9.4.8
|| ==9.6.5
|| ==9.8.2
|| ==9.6.6
|| ==9.8.4
|| ==9.10.1
|| ==9.12.2

source-repository head
type: git
Expand Down
8 changes: 5 additions & 3 deletions vec-lens/vec-lens.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
cabal-version: 2.2
name: vec-lens
version: 0.4.1
x-revision: 1
synopsis: Vec: length-indexed (sized) list: lens support
category: Data, Dependent Types, Lens
description:
Expand All @@ -26,9 +27,10 @@ tested-with:
|| ==9.0.2
|| ==9.2.8
|| ==9.4.8
|| ==9.6.5
|| ==9.8.2
|| ==9.6.6
|| ==9.8.4
|| ==9.10.1
|| ==9.12.2

source-repository head
type: git
Expand All @@ -47,7 +49,7 @@ library
Data.Vec.Pull.Lens

-- GHC boot libs
build-depends: base >=4.12.0.0 && <4.21
build-depends: base >=4.12.0.0 && <4.22

-- siblings
build-depends:
Expand Down
8 changes: 5 additions & 3 deletions vec-optics/vec-optics.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
cabal-version: 2.2
name: vec-optics
version: 0.4.1
x-revision: 1
synopsis: Vec: length-indexed (sized) list: optics support
category: Data, Dependent Types, Optics
description:
Expand All @@ -26,9 +27,10 @@ tested-with:
|| ==9.0.2
|| ==9.2.8
|| ==9.4.8
|| ==9.6.5
|| ==9.8.2
|| ==9.6.6
|| ==9.8.4
|| ==9.10.1
|| ==9.12.2

source-repository head
type: git
Expand All @@ -47,7 +49,7 @@ library
Data.Vec.Pull.Optics

-- GHC boot libs
build-depends: base >=4.12.0.0 && <4.21
build-depends: base >=4.12.0.0 && <4.22

-- siblings
build-depends:
Expand Down
11 changes: 6 additions & 5 deletions vec/vec.cabal
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
cabal-version: 2.2
name: vec
version: 0.5.1
x-revision: 1
x-revision: 2
synopsis: Vec: length-indexed (sized) list
category: Data, Dependent Types
description:
Expand Down Expand Up @@ -77,9 +77,10 @@ tested-with:
|| ==9.0.2
|| ==9.2.8
|| ==9.4.8
|| ==9.6.5
|| ==9.8.2
|| ==9.6.6
|| ==9.8.4
|| ==9.10.1
|| ==9.12.2

source-repository head
type: git
Expand Down Expand Up @@ -121,7 +122,7 @@ library

-- GHC boot libs
build-depends:
, base >=4.12.0.0 && <4.21
, base >=4.12.0.0 && <4.22
, deepseq >=1.4.4.0 && <1.6
, transformers >=0.5.6.2 && <0.7

Expand Down Expand Up @@ -171,7 +172,7 @@ test-suite inspection
build-depends:
, base
, fin
, inspection-testing ^>=0.5.0.3
, inspection-testing ^>=0.5.0.3 || ^>=0.6
, tagged
, vec

Expand Down