dev: web: fix build with ghc <9.2

This commit is contained in:
Simon Michael 2024-09-30 12:48:17 -10:00
parent 10465ffbe5
commit 1c45496f1c
8 changed files with 37 additions and 15 deletions

View File

@ -137,15 +137,18 @@ jobs:
run: | run: |
$stack install --test --bench hledger-web --fast --ghc-options=-Werror $stack install --test --bench hledger-web --fast --ghc-options=-Werror
# XXX disable until this is fixed: shelltestrunner-1.10/src/shelltest.hs:125:20: error:
# shelltestrunner > Not in scope: configFailFast
# shelltestrunner > Perhaps you meant configFastFail (imported from Test.Hspec.Core.Runner)
- name: Install shelltestrunner # - name: Install shelltestrunner
run: | # run: |
export PATH=~/.local/bin:$PATH # export PATH=~/.local/bin:$PATH
if [[ ! -x ~/.local/bin/shelltest ]]; then $stack install shelltestrunner-1.10; fi # if [[ ! -x ~/.local/bin/shelltest ]]; then $stack install shelltestrunner-1.10; fi
shelltest --version # shelltest --version
- name: Test functional tests (excluding addons) # - name: Test functional tests (excluding addons)
run: | # run: |
export PATH=~/.local/bin:$PATH # export PATH=~/.local/bin:$PATH
COLUMNS=80 $stack exec -- shelltest --execdir -j16 hledger/test -x /_ -x /addons -x ledger-compat/ledger-baseline -x ledger-compat/ledger-regress -x ledger-compat/ledger-collected # COLUMNS=80 $stack exec -- shelltest --execdir -j16 hledger/test -x /_ -x /addons -x ledger-compat/ledger-baseline -x ledger-compat/ledger-regress -x ledger-compat/ledger-collected
# XXX run the bin/ func tests corresponding to the GHC version enabled above, only # # XXX run the bin/ func tests corresponding to the GHC version enabled above, only

View File

@ -124,7 +124,7 @@ library
, ansi-terminal >=0.9 , ansi-terminal >=0.9
, array , array
, base >=4.14 && <4.21 , base >=4.14 && <4.21
, base-compat , base-compat >=0.14.0
, blaze-html , blaze-html
, blaze-markup >=0.5.1 , blaze-markup >=0.5.1
, bytestring , bytestring
@ -188,7 +188,7 @@ test-suite doctest
, ansi-terminal >=0.9 , ansi-terminal >=0.9
, array , array
, base >=4.14 && <4.21 , base >=4.14 && <4.21
, base-compat , base-compat >=0.14.0
, blaze-html , blaze-html
, blaze-markup >=0.5.1 , blaze-markup >=0.5.1
, bytestring , bytestring
@ -255,7 +255,7 @@ test-suite unittest
, ansi-terminal >=0.9 , ansi-terminal >=0.9
, array , array
, base >=4.14 && <4.21 , base >=4.14 && <4.21
, base-compat , base-compat >=0.14.0
, blaze-html , blaze-html
, blaze-markup >=0.5.1 , blaze-markup >=0.5.1
, bytestring , bytestring

View File

@ -40,7 +40,7 @@ extra-source-files:
dependencies: dependencies:
- base >=4.14 && <4.21 - base >=4.14 && <4.21
- base-compat - base-compat >=0.14.0
- aeson >=1 && <2.3 - aeson >=1 && <2.3
- aeson-pretty - aeson-pretty
- ansi-terminal >=0.9 - ansi-terminal >=0.9

View File

@ -9,7 +9,7 @@
module Hledger.Web.Handler.RegisterR where module Hledger.Web.Handler.RegisterR where
import qualified Data.List.NonEmpty as NonEmpty import qualified Data.List.NonEmpty.Compat as NonEmpty -- from base-compat for ghc 8.10
import Data.List (intersperse, nub, partition) import Data.List (intersperse, nub, partition)
import qualified Data.Text as T import qualified Data.Text as T
import Text.Hamlet (hamletFile) import Text.Hamlet (hamletFile)

View File

@ -161,6 +161,7 @@ library
Decimal >=0.5.1 Decimal >=0.5.1
, aeson >=1 && <2.3 , aeson >=1 && <2.3
, base >=4.14 && <4.21 , base >=4.14 && <4.21
, base-compat >=0.14.0
, base64 , base64
, blaze-html , blaze-html
, blaze-markup , blaze-markup
@ -226,6 +227,7 @@ executable hledger-web
cpp-options: -DVERSION="1.40.99" cpp-options: -DVERSION="1.40.99"
build-depends: build-depends:
base >=4.14 && <4.21 base >=4.14 && <4.21
, base-compat >=0.14.0
, hledger-web , hledger-web
default-language: Haskell2010 default-language: Haskell2010
if (flag(dev)) || (flag(library-only)) if (flag(dev)) || (flag(library-only))
@ -250,6 +252,7 @@ test-suite test
cpp-options: -DVERSION="1.40.99" cpp-options: -DVERSION="1.40.99"
build-depends: build-depends:
base >=4.14 && <4.21 base >=4.14 && <4.21
, base-compat >=0.14.0
, hledger-web , hledger-web
default-language: Haskell2010 default-language: Haskell2010
if (flag(dev)) || (flag(library-only)) if (flag(dev)) || (flag(library-only))

View File

@ -87,6 +87,7 @@ when:
dependencies: dependencies:
- base >=4.14 && <4.21 - base >=4.14 && <4.21
- base-compat >=0.14.0
library: library:
source-dirs: . source-dirs: .

View File

@ -14,6 +14,8 @@ packages:
- hledger-web - hledger-web
extra-deps: extra-deps:
- base-compat-0.14.0
- base-compat-batteries-0.14.0
# for hledger-lib # for hledger-lib
- Cabal-3.12.0.0 - Cabal-3.12.0.0
- Cabal-syntax-3.12.0.0 - Cabal-syntax-3.12.0.0

View File

@ -8,8 +8,21 @@ packages:
- hledger-ui - hledger-ui
- hledger-web - hledger-web
# I give up, go with this for now
allow-newer: true
extra-deps: extra-deps:
- safe-0.3.21 - safe-0.3.21
- base-compat-0.14.0
# needed for the above:
- base-compat-batteries-0.14.0
- data-array-byte-0.1.0.1
- foldable1-classes-compat-0.1
- hashable-1.4.7.0
- OneTuple-0.4.2
# etc etc etc.
# for hledger-lib: # for hledger-lib:
- doctest-0.20.0 - doctest-0.20.0
- ansi-terminal-0.11.4 - ansi-terminal-0.11.4