summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJasper Van der Jeugt <m@jaspervdj.be>2020-09-30 14:04:33 +0200
committerGitHub <noreply@github.com>2020-09-30 14:04:33 +0200
commitf24c5873ed5bb091f0ce5ebdf4df7ab160e87c75 (patch)
tree092b2ba35781a2e6b16d9c0bb3ec498b61f4ca3d
parenteead94fde4278ccf78728eec1d5a99c99d40c32b (diff)
downloadhakyll-f24c5873ed5bb091f0ce5ebdf4df7ab160e87c75.tar.gz
Bump template-haskell and pandoc versions
* Bumped bound for pandoc and add Binary-instances for new constructors that were added to pandoc-types * Support most recent template-haskell release * Set lower bound of pandoc to version 2.10 * Update CI configuration * Bump QuickCheck upper bound to 2.15 Co-authored-by: OC4 <oc4@protonmail.com>
-rw-r--r--.github/workflows/main.yml104
-rw-r--r--hakyll.cabal8
-rw-r--r--lib/Hakyll/Web/Pandoc/Binary.hs10
-rw-r--r--stack.yaml11
-rw-r--r--stack.yaml.lock59
5 files changed, 147 insertions, 45 deletions
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 4e2b7c3..bfb65f2 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -1,55 +1,91 @@
-# This Github Actions workflow is modified from
-# https://kodimensional.dev/github-actions
-name: 'CI'
+name: CI
# Trigger the workflow on push or pull request, but only for the master branch
-on: [push, pull_request]
+on:
+ pull_request:
+ push:
+ branches: [master]
jobs:
- build:
+ cabal:
+ name: ${{ matrix.os }} / ghc ${{ matrix.ghc }}
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ os: [ubuntu-latest, macOS-latest, windows-latest]
+ cabal: ["3.2"]
+ ghc:
+ - "8.6.5"
+ - "8.8.3"
+ - "8.10.1"
+ exclude:
+ - os: macOS-latest
+ ghc: 8.8.3
+ - os: macOS-latest
+ ghc: 8.6.5
+ - os: windows-latest
+ ghc: 8.8.3
+ - os: windows-latest
+ ghc: 8.6.5
+
+ steps:
+ - uses: actions/checkout@v2
+ if: github.event.action == 'opened' || github.event.action == 'synchronize' || github.event.ref == 'refs/heads/master'
+
+ - uses: actions/setup-haskell@v1.1.1
+ id: setup-haskell-cabal
+ name: Setup Haskell
+ with:
+ ghc-version: ${{ matrix.ghc }}
+ cabal-version: ${{ matrix.cabal }}
+
+ - name: Freeze
+ run: |
+ cabal freeze
+
+ - uses: actions/cache@v1
+ name: Cache ~/.cabal/store
+ with:
+ path: ${{ steps.setup-haskell-cabal.outputs.cabal-store }}
+ key: ${{ runner.os }}-${{ matrix.ghc }}-${{ hashFiles('cabal.project.freeze') }}
+
+ - name: Build
+ run: |
+ cabal configure --enable-tests --enable-benchmarks --test-show-details=direct
+ cabal build all
+ - name: Test
+ run: |
+ cabal test all
+
+ stack:
+ name: stack / ghc ${{ matrix.ghc }}
+ runs-on: ubuntu-latest
strategy:
matrix:
- os: [ubuntu-latest, windows-latest]
+ stack: ["2.3.1"]
+ ghc: ["8.8.3"]
- env:
- ARGS: --no-terminal --fast
-
- name: ${{ matrix.os }}
- runs-on: ${{ matrix.os }}
-
steps:
- uses: actions/checkout@v2
if: github.event.action == 'opened' || github.event.action == 'synchronize' || github.event.ref == 'refs/heads/master'
- # https://github.com/actions/setup-haskell
- uses: actions/setup-haskell@v1.1
name: Setup Haskell Stack
with:
- stack-version: "latest"
- enable-stack: true
- stack-no-global: true
-
- # https://github.com/actions/cache
- - uses: actions/cache@v2
+ ghc-version: ${{ matrix.ghc }}
+ stack-version: ${{ matrix.stack }}
+
+ - uses: actions/cache@v1
name: Cache ~/.stack
with:
path: ~/.stack
- key: ${{ runner.os }}-${{ hashFiles('stack.yaml') }}
-
- # There are strange problems with CI on Windows, where builds with GHC 8.8.*
- # always fail. Therefore, we distinguish between builds on Ubuntu and Windows
- # and use an older compiler on Windows.
- # See here for bug reports:
- # https://gitlab.haskell.org/ghc/ghc/issues/17599
- # https://gitlab.haskell.org/ghc/ghc/issues/17926
-
- - name: Test (Ubuntu)
+ key: ${{ runner.os }}-${{ matrix.ghc }}-stack
+
+ - name: Build
run: |
- stack test $ARGS --stack-yaml stack.yaml
- if: ${{ runner.os == 'Linux' }}
+ stack build --system-ghc --test --bench --no-run-tests --no-run-benchmarks
- - name: Test (Windows)
+ - name: Test
run: |
- stack test $ARGS --stack-yaml stack.yaml --compiler ghc-8.6.5
- if: ${{ runner.os == 'Windows' }}
+ stack test --system-ghc
diff --git a/hakyll.cabal b/hakyll.cabal
index c80c392..e7af07d 100644
--- a/hakyll.cabal
+++ b/hakyll.cabal
@@ -188,7 +188,7 @@ Library
resourcet >= 1.1 && < 1.3,
scientific >= 0.3.4 && < 0.4,
tagsoup >= 0.13.1 && < 0.15,
- template-haskell >= 2.14 && < 2.16,
+ template-haskell >= 2.14 && < 2.17,
text >= 0.11 && < 1.3,
time >= 1.8 && < 1.10,
time-locale-compat >= 0.1 && < 0.2,
@@ -232,7 +232,7 @@ Library
Other-Modules:
Hakyll.Web.Pandoc.Binary
Build-Depends:
- pandoc >= 2.0.5 && < 2.10,
+ pandoc >= 2.10 && < 2.11,
pandoc-citeproc >= 0.14 && < 0.18
Cpp-options:
-DUSE_PANDOC
@@ -265,7 +265,7 @@ Test-suite hakyll-tests
Build-Depends:
hakyll,
- QuickCheck >= 2.8 && < 2.14,
+ QuickCheck >= 2.8 && < 2.15,
tasty >= 0.11 && < 1.4,
tasty-hunit >= 0.9 && < 0.11,
tasty-quickcheck >= 0.8 && < 0.11,
@@ -327,4 +327,4 @@ Executable hakyll-website
base >= 4 && < 5,
directory >= 1.0 && < 1.4,
filepath >= 1.0 && < 1.5,
- pandoc >= 2.0.5 && < 2.10
+ pandoc >= 2.10 && < 2.11
diff --git a/lib/Hakyll/Web/Pandoc/Binary.hs b/lib/Hakyll/Web/Pandoc/Binary.hs
index deeaf08..5d3efea 100644
--- a/lib/Hakyll/Web/Pandoc/Binary.hs
+++ b/lib/Hakyll/Web/Pandoc/Binary.hs
@@ -14,6 +14,10 @@ import Text.Pandoc
instance Binary Alignment
instance Binary Block
+instance Binary Caption
+instance Binary Cell
+instance Binary ColSpan
+instance Binary ColWidth
instance Binary CSL.Reference
instance Binary Citation
instance Binary CitationMode
@@ -29,5 +33,11 @@ instance Binary REF.Literal
instance Binary REF.RefDate
instance Binary REF.RefType
instance Binary REF.Season
+instance Binary Row
+instance Binary RowHeadColumns
+instance Binary RowSpan
instance Binary STY.Agent
instance Binary STY.Formatted
+instance Binary TableBody
+instance Binary TableFoot
+instance Binary TableHead
diff --git a/stack.yaml b/stack.yaml
index c3958dd..49c9f69 100644
--- a/stack.yaml
+++ b/stack.yaml
@@ -1,4 +1,4 @@
-resolver: lts-15.6
+resolver: lts-16.9
save-hackage-creds: false
flags:
@@ -22,4 +22,11 @@ build:
haddock-hyperlink-source: true
haddock-deps: false
-extra-deps: []
+extra-deps:
+- 'commonmark-0.1.0.2'
+- 'commonmark-extensions-0.2.0.1'
+- 'commonmark-pandoc-0.2.0.1'
+- 'hslua-1.1.2'
+- 'jira-wiki-markup-1.3.2'
+- 'pandoc-2.10.1'
+- 'pandoc-types-1.21'
diff --git a/stack.yaml.lock b/stack.yaml.lock
index ebcdead..5de18d3 100644
--- a/stack.yaml.lock
+++ b/stack.yaml.lock
@@ -3,10 +3,59 @@
# For more information, please see the documentation at:
# https://docs.haskellstack.org/en/stable/lock_files
-packages: []
+packages:
+- completed:
+ hackage: commonmark-0.1.0.2@sha256:fbff7a2ade0ce7d699964a87f765e503a3a9e22542c05f0f02ba7aad64e38af4,3278
+ pantry-tree:
+ size: 1346
+ sha256: 991da6da60804286b9ea23a1522e18ceeabddfdf416787231db9fd047c163f53
+ original:
+ hackage: commonmark-0.1.0.2
+- completed:
+ hackage: commonmark-extensions-0.2.0.1@sha256:647aa8dba5fd46984ddedc15c3693c9c4d9655503d42006576bd8f0dadf8cd39,3176
+ pantry-tree:
+ size: 2927
+ sha256: 89e1ee05938d558834c397a3a22cdacc755a1941c144f4c1f3daf8a1ede943ce
+ original:
+ hackage: commonmark-extensions-0.2.0.1
+- completed:
+ hackage: commonmark-pandoc-0.2.0.1@sha256:529c6e2c6cabf61558b66a28123eafc1d90d3324be29819f59f024e430312c1f,1105
+ pantry-tree:
+ size: 326
+ sha256: d9954a15f73c8fe55a5097e1cc0957fa626d340ef36e2beefb8caae66008c3dc
+ original:
+ hackage: commonmark-pandoc-0.2.0.1
+- completed:
+ hackage: hslua-1.1.2@sha256:6c231b2af447430d1ed04f065d40bb6882ece93cc7f32f4051dc99deb69beeae,9694
+ pantry-tree:
+ size: 6820
+ sha256: 62e61f6d08191159a070dcbaa20284a581835de620105a254dbee1c7ddfabd9d
+ original:
+ hackage: hslua-1.1.2
+- completed:
+ hackage: jira-wiki-markup-1.3.2@sha256:b5f0901208a0ee07aff60f5356aeb851b7aa7950c75a18a15fd34247a35886d8,3819
+ pantry-tree:
+ size: 1180
+ sha256: 90fa545210a211b8ec88b59f92fe2877ebf2f9e55e2ce2fba6103a3615bd0ab9
+ original:
+ hackage: jira-wiki-markup-1.3.2
+- completed:
+ hackage: pandoc-2.10.1@sha256:23d7ec480c7cb86740475a419d6ca4819987b6dd23bbae9b50bc3d42a7ed2f9f,36933
+ pantry-tree:
+ size: 89646
+ sha256: 08c8b20356152b9ee8161bacafda2dc1bed13d7db4cbf38ab040c1977b2d28d5
+ original:
+ hackage: pandoc-2.10.1
+- completed:
+ hackage: pandoc-types-1.21@sha256:b61ed625da4d1a0d8057fcca4c0c5e174c9f45d94b41504db1532f3fc581e945,4037
+ pantry-tree:
+ size: 713
+ sha256: e26eb93747538e29168032985a03b428039a16000fea1a4a8d9b9b032ac98b5f
+ original:
+ hackage: pandoc-types-1.21
snapshots:
- completed:
- size: 491387
- url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/15/6.yaml
- sha256: 8d81505a6de861e167a58534ab62330afb75bfa108735c7db1204f7ef2a39d79
- original: lts-15.6
+ size: 532380
+ url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/16/9.yaml
+ sha256: 14a7cec114424e4286adde73364438927a553ed248cc50f069a30a67e3ee1e69
+ original: lts-16.9