Skip to content

Commit 25d34c2

Browse files
authored
Merge pull request #65 from haskellari/ghc-9.4
Allow base-4.17
2 parents b1746de + 3fd46c3 commit 25d34c2

File tree

4 files changed

+50
-27
lines changed

4 files changed

+50
-27
lines changed

.github/workflows/haskell-ci.yml

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@
88
#
99
# For more information, see https://github.com/haskell-CI/haskell-ci
1010
#
11-
# version: 0.13.20211116
11+
# version: 0.15.20220808
1212
#
13-
# REGENDATA ("0.13.20211116",["github","cabal.project"])
13+
# REGENDATA ("0.15.20220808",["github","cabal.project"])
1414
#
1515
name: Haskell-CI
1616
on:
@@ -23,7 +23,7 @@ on:
2323
jobs:
2424
linux:
2525
name: Haskell-CI - Linux - ${{ matrix.compiler }}
26-
runs-on: ubuntu-18.04
26+
runs-on: ubuntu-20.04
2727
timeout-minutes:
2828
60
2929
container:
@@ -37,15 +37,20 @@ jobs:
3737
compilerVersion: "8.4"
3838
setup-method: hvr-ppa
3939
allow-failure: false
40-
- compiler: ghc-9.2.1
40+
- compiler: ghc-9.4.1
4141
compilerKind: ghc
42-
compilerVersion: 9.2.1
42+
compilerVersion: 9.4.1
4343
setup-method: ghcup
4444
allow-failure: false
45-
- compiler: ghc-9.0.1
45+
- compiler: ghc-9.2.4
4646
compilerKind: ghc
47-
compilerVersion: 9.0.1
48-
setup-method: hvr-ppa
47+
compilerVersion: 9.2.4
48+
setup-method: ghcup
49+
allow-failure: false
50+
- compiler: ghc-9.0.2
51+
compilerKind: ghc
52+
compilerVersion: 9.0.2
53+
setup-method: ghcup
4954
allow-failure: false
5055
- compiler: ghc-8.10.4
5156
compilerKind: ghc
@@ -118,10 +123,10 @@ jobs:
118123
apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
119124
if [ "${{ matrix.setup-method }}" = ghcup ]; then
120125
mkdir -p "$HOME/.ghcup/bin"
121-
curl -sL https://downloads.haskell.org/ghcup/0.1.17.3/x86_64-linux-ghcup-0.1.17.3 > "$HOME/.ghcup/bin/ghcup"
126+
curl -sL https://downloads.haskell.org/ghcup/0.1.18.0/x86_64-linux-ghcup-0.1.18.0 > "$HOME/.ghcup/bin/ghcup"
122127
chmod a+x "$HOME/.ghcup/bin/ghcup"
123-
"$HOME/.ghcup/bin/ghcup" install ghc "$HCVER"
124-
"$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0
128+
"$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
129+
"$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
125130
else
126131
apt-add-repository -y 'ppa:hvr/ghc'
127132
if [ $((GHCJSARITH)) -ne 0 ] ; then apt-add-repository -y 'ppa:hvr/ghcjs' ; fi
@@ -130,9 +135,9 @@ jobs:
130135
apt-get update
131136
if [ $((GHCJSARITH)) -ne 0 ] ; then apt-get install -y "$HCNAME" ghc-8.4.4 nodejs ; else apt-get install -y "$HCNAME" ; fi
132137
mkdir -p "$HOME/.ghcup/bin"
133-
curl -sL https://downloads.haskell.org/ghcup/0.1.17.3/x86_64-linux-ghcup-0.1.17.3 > "$HOME/.ghcup/bin/ghcup"
138+
curl -sL https://downloads.haskell.org/ghcup/0.1.18.0/x86_64-linux-ghcup-0.1.18.0 > "$HOME/.ghcup/bin/ghcup"
134139
chmod a+x "$HOME/.ghcup/bin/ghcup"
135-
"$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0
140+
"$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
136141
fi
137142
env:
138143
HCKIND: ${{ matrix.compilerKind }}
@@ -290,7 +295,7 @@ jobs:
290295
${CABAL} -vnormal check
291296
- name: haddock
292297
run: |
293-
if [ $((! GHCJSARITH && HCNUMVER >= 70800)) -ne 0 ] ; then $CABAL v2-haddock $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH all ; fi
298+
if [ $((! GHCJSARITH && HCNUMVER >= 70800)) -ne 0 ] ; then $CABAL v2-haddock --haddock-all $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH all ; fi
294299
- name: unconstrained build
295300
run: |
296301
rm -f cabal.project.local

ChangeLog.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
## 0.2.2
2+
3+
- Add instances for base and primitive's `ByteArray`s.
4+
15
## 0.2.1.1
26

37
- Support `base-4.16` (GHC-9.2)

src/Data/TreeDiff/Class.hs

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,11 @@ import qualified Data.Strict as Strict
106106
import Data.These (These (..))
107107

108108
-- primitive
109-
-- import qualified Data.Primitive as Prim
109+
import qualified Data.Primitive as Prim
110+
111+
#if MIN_VERSION_base(4,17,0)
112+
import Data.Array.Byte (ByteArray (..))
113+
#endif
110114

111115
-- $setup
112116
-- >>> :set -XDeriveGeneric
@@ -593,4 +597,14 @@ instance (ToExpr a, ToExpr b) => ToExpr (These a b) where
593597
-- primitive
594598
-------------------------------------------------------------------------------
595599

596-
-- TODO: add instances
600+
-- | @since 0.2.2
601+
instance ToExpr Prim.ByteArray where
602+
toExpr ba = App "Prim.byteArrayFromList" [toExpr (Prim.foldrByteArray (:) [] ba :: [Word8])]
603+
604+
#if MIN_VERSION_base(4,17,0)
605+
-- | @since 0.2.2
606+
instance ToExpr ByteArray where
607+
toExpr (ByteArray ba) = App "byteArrayFromList" [toExpr (Prim.foldrByteArray (:) [] (Prim.ByteArray ba) :: [Word8])]
608+
#endif
609+
610+
-- TODO: add more instances

tree-diff.cabal

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
cabal-version: 2.2
22
name: tree-diff
3-
version: 0.2.1.1
4-
x-revision: 2
3+
version: 0.2.2
54
synopsis: Diffing of (expression) trees.
65
category: Data, Testing
76
description:
@@ -55,8 +54,9 @@ tested-with:
5554
|| ==8.6.5
5655
|| ==8.8.4
5756
|| ==8.10.4
58-
|| ==9.0.1
59-
|| ==9.2.1
57+
|| ==9.0.2
58+
|| ==9.2.4
59+
|| ==9.4.1
6060
, GHCJS ==8.4
6161

6262
extra-source-files:
@@ -85,39 +85,39 @@ library
8585

8686
-- GHC boot libraries
8787
build-depends:
88-
, base >=4.5 && <4.17
88+
, base >=4.5 && <4.18
8989
, bytestring ^>=0.9.2.1 || ^>=0.10.0.2 || ^>=0.11.0.0
9090
, containers ^>=0.4.2.1 || ^>=0.5.0.0 || ^>=0.6.0.1
9191
, deepseq ^>=1.3.0.0 || ^>=1.4.0.0
9292
, parsec ^>=3.1.13.0
9393
, pretty ^>=1.1.1.0
9494
, text ^>=1.2.3.0 || ^>=2.0
95-
, time ^>=1.4 || ^>=1.5.0.1 || ^>=1.6.0.1 || ^>=1.8.0.2 || ^>=1.9.3 || ^>=1.10 || ^>=1.11 || ^>=1.12
95+
, time >=1.4 && <1.5 || >=1.5.0.1 && <1.6 || >=1.6.0.1 && <1.7 || >=1.8.0.2 && <1.9 || >=1.9.3 && <1.13
9696

9797
build-depends:
9898
, aeson ^>=1.4.6.0 || ^>=1.5.6.0 || ^>=2.0.0.0 || ^>=2.1.0.0
9999
, ansi-terminal >=0.10 && <0.12
100100
, ansi-wl-pprint ^>=0.6.8.2
101-
, base-compat ^>=0.10.5 || ^>=0.11.0 || ^>=0.12
101+
, base-compat >=0.10.5 && <0.11 || >=0.11.0 && <0.13
102102
, bytestring-builder ^>=0.10.8.2.0
103103
, hashable ^>=1.2.7.0 || ^>=1.3.0.0 || ^>=1.4.0.1
104104
, parsers ^>=0.12.10
105105
, primitive ^>=0.7.1.0
106106
, QuickCheck ^>=2.14.2
107107
, scientific ^>=0.3.6.2
108-
, semialign >=1.1 && <1.3
108+
, semialign ^>=1.2.0.1
109109
, strict ^>=0.4.0.1
110110
, tagged ^>=0.8.6
111111
, these ^>=1.1.1.1
112112
, unordered-containers ^>=0.2.8.0
113113
, uuid-types ^>=1.0.3
114-
, vector ^>=0.12 || ^>=0.13
114+
, vector ^>=0.12.0.0 || ^>=0.13.0.0
115115

116116
if impl(ghc <7.5)
117117
build-depends: ghc-prim
118118

119119
if !impl(ghc >=8.0)
120-
build-depends: semigroups ^>=0.19.1 || ^>=0.20
120+
build-depends: semigroups >=0.19.1 && <0.21
121121

122122
if !impl(ghc >=7.8)
123123
build-depends: generic-deriving >=1.13.1 && <1.15
@@ -186,5 +186,5 @@ benchmark tree-diff-bench
186186

187187
-- extra dependencies
188188
build-depends:
189-
, criterion ^>=1.5.9.0
189+
, criterion ^>=1.6.0.0
190190
, Diff ^>=0.4.0

0 commit comments

Comments
 (0)