aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Hart <steve@stevehart.net>2022-03-25 15:43:50 -0400
committerGitHub <noreply@github.com>2022-03-25 20:43:50 +0100
commit53244da3330ada568f80e2a07b4c6fe7268c91fc (patch)
tree5ec71e69855571ea7b89a342e6078ad2a6c289ca
parente187816f64f0c54dc924f8283fe4c75a6e1f67b2 (diff)
Fix CI (#1467)
* CI: Reinstall GHC with docs CI tests were failing because the GHC preinstalled to the CI environment does not include documentation, which is required for running the Haddock tests. This commit causes the CI workflow to reinstall GHC with docs so that tests can succeed.
-rw-r--r--.github/workflows/ci.yml15
-rw-r--r--cabal.project176
-rw-r--r--haddock-library/haddock-library.cabal4
-rw-r--r--haddock-library/test/Documentation/Haddock/Parser/UtilSpec.hs3
-rw-r--r--html-test/ref/Bug574.html2
-rw-r--r--html-test/ref/ConstructorArgs.html2
-rw-r--r--hypsrc-test/ref/src/LinkingIdentifiers.html2
7 files changed, 20 insertions, 184 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 9268c6b7..c147cbdc 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -19,7 +19,6 @@ jobs:
steps:
- uses: actions/checkout@v2
- if: github.event.action == 'opened' || github.event.action == 'synchronize' || github.event.ref == 'refs/heads/ghc-9.2'
- uses: haskell/actions/setup@v1
id: setup-haskell-cabal
@@ -28,9 +27,19 @@ jobs:
ghc-version: ${{ matrix.ghc }}
cabal-version: ${{ matrix.cabal }}
- - name: Prepare environment
- run: echo "$HOME/.ghcup/bin" >> $GITHUB_PATH
+ # GitHub preinstalls recent GHC versions, and haskell/actions/setup uses the
+ # preinstalled version when possible. However, GitHub's preinstalled GHC does
+ # not include documentation, and we need documentation to run Haddock tests.
+ # Therefore, we reinstall GHC to ensure that we have the documentation we
+ # need.
+ # TODO: Only reinstall GHC when the docs are actually missing. (If we're
+ # using a GHC version that is not preinstalled by GitHub, then we will be
+ # using a GHC installed by ghcup, which should have documentation.)
+ - name: Reinstall GHC with docs
+ run: |
+ ghcup rm ghc ${{ matrix.ghc }}
+ ghcup install ghc ${{ matrix.ghc }}
- name: Freeze
run: |
diff --git a/cabal.project b/cabal.project
index 87aca679..bf964dda 100644
--- a/cabal.project
+++ b/cabal.project
@@ -3,22 +3,8 @@ packages: ./
./haddock-library
./haddock-test
-with-compiler: ghc-9.2
-
active-repositories: hackage.haskell.org, head.hackage.ghc.haskell.org:override
-allow-newer:
- Cabal,
- base,
- binary,
- bytestring,
- ghc,
- ghc-prim,
- integer-gmp,
- template-haskell,
- text,
- time
-
repository head.hackage.ghc.haskell.org
url: https://ghc.gitlab.haskell.org/head.hackage/
secure: True
@@ -27,165 +13,3 @@ repository head.hackage.ghc.haskell.org
f76d08be13e9a61a377a85e2fb63f4c5435d40f8feb3e12eb05905edb8cdea89
26021a13b401500c8eb2761ca95c61f2d625bfef951b939a8124ed12ecf07329
7541f32a4ccca4f97aea3b22f5e593ba2c0267546016b992dfadcd2fe944e55d
-
-constraints:
- Cabal ==2.4.1.0 || ==3.0.2.0 || ==3.2.1.0,
- EdisonAPI ==1.3.1,
- EdisonCore ==1.3.2.1,
- FPretty ==1.1,
- HTTP ==4000.3.16,
- HUnit ==1.6.2.0,
- QuickCheck ==2.14.2,
- Spock-core ==0.14.0.0,
- active ==0.2.0.14,
- aeson ==1.5.6.0,
- aivika ==5.9.1,
- aivika-transformers ==5.9.1,
- alex ==3.2.6,
- ansi-pretty ==0.1.2.2,
- arith-encode ==1.0.2,
- attoparsec ==0.13.2.5 || ==0.14.2,
- barbies ==2.0.2.0,
- barbies-th ==0.1.8,
- base-compat ==0.11.2,
- base-compat-batteries ==0.11.2,
- base16-bytestring ==1.0.1.0,
- basement ==0.0.12,
- bits ==0.5.3,
- blaze-builder ==0.4.2.1,
- boomerang ==1.4.7,
- bound ==2.0.3,
- box-tuples ==0.2.0.4,
- byteslice ==0.2.5.2,
- bytesmith ==0.3.7.0,
- bytestring-strict-builder ==0.4.5.4,
- cabal-doctest ==1.0.8,
- cantor-pairing ==0.2.0.1,
- cassava ==0.5.2.0,
- cborg ==0.2.5.0,
- cereal ==0.5.8.1,
- charset ==0.3.9,
- chaselev-deque ==0.5.0.5,
- colour ==2.3.5,
- combinat ==0.2.10.0,
- commonmark-extensions ==0.2.0.4,
- conduit ==1.3.4.1,
- constraints ==0.13,
- constraints-extras ==0.3.1.0,
- cql ==4.0.3,
- critbit ==0.2.0.0,
- cryptonite ==0.28 || ==0.29,
- data-default-instances-new-base ==0.0.2,
- data-dword ==0.3.2,
- data-r-tree ==0.6.0,
- deferred-folds ==0.9.17,
- deriving-compat ==0.5.10,
- diagrams-lib ==1.4.3,
- doctest ==0.16.3 || ==0.18.1,
- drinkery ==0.4,
- emacs-module ==0.1.1,
- endo ==0.3.0.1,
- entropy ==0.4.1.6,
- enumeration ==0.2.0,
- extra ==1.7.9,
- fclabels ==2.0.5,
- filepattern ==0.1.2,
- focus ==1.0.2,
- free-algebras ==0.1.0.1,
- free-functors ==1.2.1,
- generic-deriving ==1.14,
- generic-lens ==2.1.0.0,
- generic-lens-core ==2.1.0.0,
- generic-optics ==2.1.0.0,
- generics-sop ==0.5.1.1,
- happy ==1.20.0,
- hashtables ==1.2.4.1,
- haskeline ==0.7.5.0,
- haskell-src-exts ==1.23.1,
- haskell-src-meta ==0.8.7,
- heterocephalus ==1.0.5.4,
- hgeometry ==0.11.0.0,
- hgeometry-ipe ==0.11.0.0,
- hspec-discover ==2.9.4,
- hspec-expectations ==0.8.2,
- hspec-meta ==2.7.8,
- hspec-wai ==0.11.1,
- http-types ==0.12.3,
- http2 ==3.0.1,
- hvect ==0.4.0.0,
- hxt ==9.3.1.22,
- inj-base ==0.2.0.0,
- inspection-testing ==0.4.5.0,
- integer-roots ==1.0,
- invariant ==0.5.4,
- io-choice ==0.0.7,
- iproute ==1.7.11,
- language-haskell-extract ==0.2.4,
- lens ==4.19.2 || ==5.0.1,
- lens-family-th ==0.5.2.0,
- list-t ==1.0.4,
- memory ==0.15.0 || ==0.16.0,
- monad-validate ==1.2.0.0,
- monadplus ==1.4.2,
- mono-traversable ==1.0.15.1,
- mono-traversable-keys ==0.1.0,
- mustache ==2.3.1,
- network ==3.1.2.1,
- newtype-generics ==0.6,
- numtype-dk ==0.5.0.2,
- obdd ==0.8.2,
- packman ==0.5.0,
- pandoc ==2.13,
- parameterized-utils ==2.1.3.0,
- partial-isomorphisms ==0.2.2.1,
- plots ==0.1.1.2,
- pointed ==5.0.2,
- posix-api ==0.3.4.0,
- primitive ==0.7.3.0,
- primitive-extras ==0.10.1,
- primitive-sort ==0.1.0.0,
- primitive-unlifted ==0.1.3.0,
- proto3-wire ==1.2.2,
- quickcheck-instances ==0.3.25.2,
- random ==1.2.1,
- row-types ==1.0.1.0,
- safe ==0.3.19,
- safecopy ==0.10.4.2,
- salak ==0.3.6,
- semialign ==1.2.0.1,
- semigroupoids ==5.3.6,
- serialise ==0.2.3.0,
- servant ==0.18.2,
- shake ==0.19.4,
- shakespeare ==2.0.25,
- singletons ==2.7 || ==3.0,
- singletons-base ==3.0,
- siphash ==1.0.3,
- streaming-bytestring ==0.2.0,
- streaming-commons ==0.2.2.1,
- subcategories ==0.1.1.0,
- tasty ==1.4.1,
- test-framework ==0.8.2.0,
- text-format ==0.3.2,
- text-short ==0.1.3,
- text-show ==3.9,
- th-desugar ==1.11 || ==1.12,
- tls ==1.5.5,
- tpdb ==2.2.0,
- tree-diff ==0.2.1.1,
- true-name ==0.1.0.3,
- uniplate ==1.6.13,
- vector-builder ==0.3.8.1,
- vector-circular ==0.1.3,
- vector-th-unbox ==0.2.1.9,
- vinyl ==0.13.3,
- wai-extra ==3.1.6,
- wai-middleware-static ==0.9.0,
- warp ==3.3.15,
- winery ==1.3.2,
- witherable ==0.4.1,
- x509-validation ==1.6.11,
- xlsx ==0.8.3,
- xml-hamlet ==0.5.0.1,
- yaml ==0.11.5.0,
- yesod-core ==1.6.20
diff --git a/haddock-library/haddock-library.cabal b/haddock-library/haddock-library.cabal
index a4a04309..a02df882 100644
--- a/haddock-library/haddock-library.cabal
+++ b/haddock-library/haddock-library.cabal
@@ -86,7 +86,7 @@ test-suite spec
Documentation.Haddock.Parser.Identifier
build-depends:
- , base-compat ^>= 0.9.3 || ^>= 0.11.0
+ , base-compat ^>= 0.12.0
, QuickCheck ^>= 2.11 || ^>= 2.13.2 || ^>= 2.14
, deepseq ^>= 1.3.0.0 || ^>= 1.4.0.0
@@ -113,7 +113,7 @@ test-suite fixtures
, base
-- extra dependencies
- , base-compat ^>= 0.9.3 || ^>= 0.11.0
+ , base-compat ^>= 0.12.0
, directory ^>= 1.3.0.2
, filepath ^>= 1.4.1.2
, optparse-applicative ^>= 0.15
diff --git a/haddock-library/test/Documentation/Haddock/Parser/UtilSpec.hs b/haddock-library/test/Documentation/Haddock/Parser/UtilSpec.hs
index 10c701c7..2bb58fdf 100644
--- a/haddock-library/test/Documentation/Haddock/Parser/UtilSpec.hs
+++ b/haddock-library/test/Documentation/Haddock/Parser/UtilSpec.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP #-}
{-# LANGUAGE OverloadedStrings #-}
module Documentation.Haddock.Parser.UtilSpec (main, spec) where
@@ -5,7 +6,9 @@ import Documentation.Haddock.Parser.Monad
import Documentation.Haddock.Parser.Util
import Data.Either.Compat (isLeft)
import Test.Hspec
+#if !(MIN_VERSION_base(4,8,0))
import Control.Applicative
+#endif
main :: IO ()
main = hspec spec
diff --git a/html-test/ref/Bug574.html b/html-test/ref/Bug574.html
index 89f71a01..8264bfc0 100644
--- a/html-test/ref/Bug574.html
+++ b/html-test/ref/Bug574.html
@@ -84,7 +84,7 @@
></p
><div class="doc"
><p
- >Somthing with a spliced type</p
+ >Something with a spliced type</p
></div
></div
></div
diff --git a/html-test/ref/ConstructorArgs.html b/html-test/ref/ConstructorArgs.html
index 9441fd03..ca9bfb8d 100644
--- a/html-test/ref/ConstructorArgs.html
+++ b/html-test/ref/ConstructorArgs.html
@@ -718,7 +718,7 @@
></p
><div class="doc"
><p
- >Not bunded and no argument docs</p
+ >Not bundled and no argument docs</p
></div
></div
></div
diff --git a/hypsrc-test/ref/src/LinkingIdentifiers.html b/hypsrc-test/ref/src/LinkingIdentifiers.html
index 3a6cca56..66998a9a 100644
--- a/hypsrc-test/ref/src/LinkingIdentifiers.html
+++ b/hypsrc-test/ref/src/LinkingIdentifiers.html
@@ -14,7 +14,7 @@
><span id="line-2"
></span
><span class="hs-comment"
- >-- Tests that the identifers/operators are properly linked even when:</span
+ >-- Tests that the identifiers/operators are properly linked even when:</span
><span
>
</span