summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorTimothy Sample <samplet@ngyro.com>2019-11-15 12:50:30 -0500
committerTimothy Sample <samplet@ngyro.com>2019-11-20 20:48:55 -0500
commit1b84d8ef34b03744185ca831c3a88a890dea2ac4 (patch)
tree073615ef6b489ba81edc1d5d6a41d7e1d4081ebb /gnu/packages
parentc1637311b6331588734791a87376023338b6a4a3 (diff)
downloadguix-1b84d8ef34b03744185ca831c3a88a890dea2ac4.tar.gz
gnu: ghc-haddock-api: Update to 2.22.0.
* gnu/packages/patches/ghc-haddock-api-fix-haddock.patch: New file.
* gnu/local.mk: Add it.
* gnu/packages/haskell-xyz.scm (ghc-haddock-api): Update to 2.22.0.
[source]: Use the new patch.
[arguments]: Change the 'update-constraints' phase to allow newer
versions of 'QuickCheck' and 'hspec'.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/haskell-xyz.scm13
-rw-r--r--gnu/packages/patches/ghc-haddock-api-fix-haddock.patch54
2 files changed, 61 insertions, 6 deletions
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 72e9ccc495..da4e7460b4 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -4740,7 +4740,7 @@ Tor project}.")
 (define-public ghc-haddock-api
   (package
     (name "ghc-haddock-api")
-    (version "2.19.0.1")
+    (version "2.22.0")
     (source
      (origin
        (method url-fetch)
@@ -4748,9 +4748,10 @@ Tor project}.")
              "https://hackage.haskell.org/package/haddock-api/haddock-api-"
              version
              ".tar.gz"))
+       (patches (search-patches "ghc-haddock-api-fix-haddock.patch"))
        (sha256
         (base32
-         "0c6i7sljp7myz25d90gyw68a90i5jcrkajkxcciikp2hjirfaas3"))))
+         "149q4zlf4m7wcrr4af2n2flh0jxjsypshbc229vsj1m0kmz4z014"))))
     (build-system haskell-build-system)
     (arguments
      `(#:phases
@@ -4758,10 +4759,10 @@ Tor project}.")
          (add-before 'configure 'update-constraints
            (lambda _
              (substitute* "haddock-api.cabal"
-               (("Cabal           \\^>= 2\\.0\\.0")
-                "Cabal           ^>= 2.2.0")
-               (("hspec           \\^>= 2\\.4\\.4")
-                "hspec            >= 2.4.4 && < 2.6")))))))
+               (("QuickCheck      \\^>= 2\\.11")
+                "QuickCheck      ^>= 2.13")
+               (("hspec           >= 2\\.4\\.4 && < 2\\.6")
+                "hspec           >= 2.4.4 && < 2.8")))))))
     (inputs
      `(("ghc-paths" ,ghc-paths)
        ("ghc-haddock-library" ,ghc-haddock-library)))
diff --git a/gnu/packages/patches/ghc-haddock-api-fix-haddock.patch b/gnu/packages/patches/ghc-haddock-api-fix-haddock.patch
new file mode 100644
index 0000000000..927cb5b366
--- /dev/null
+++ b/gnu/packages/patches/ghc-haddock-api-fix-haddock.patch
@@ -0,0 +1,54 @@
+This patch is taken from upstream.  It fixes documentation generation.
+The patch has been lightly adapted to apply to the release tarball, but
+the commit message was left untouched, so it refers to some changes not
+included in the patch.
+
+From 0d9a81e20238a6b72f9f5c005f1f7e9cf05f6fb9 Mon Sep 17 00:00:00 2001
+From: Alec Theriault <alec.theriault@gmail.com>
+Date: Sat, 27 Oct 2018 10:05:04 -0700
+Subject: [PATCH] Fix documentation in `haddock-api` (#957)
+
+* Fix misplaced Haddocks in Haddock itself
+
+Haddock should be able to generate documentation for 'haddock-api'
+again.
+
+* Make CI check that documentation can be built.
+
+* Add back a doc that is OK
+---
+ .travis.yml                               |  3 +++
+ haddock-api/src/Haddock/Backends/LaTeX.hs | 10 +++++-----
+ 2 files changed, 8 insertions(+), 5 deletions(-)
+
+diff --git a/src/Haddock/Backends/LaTeX.hs b/src/Haddock/Backends/LaTeX.hs
+index 4e0e6eba..613c6deb 100644
+--- a/src/Haddock/Backends/LaTeX.hs
++++ b/src/Haddock/Backends/LaTeX.hs
+@@ -243,8 +243,8 @@ ppDocGroup lev doc = sec lev <> braces doc
+ 
+ -- | Given a declaration, extract out the names being declared
+ declNames :: LHsDecl DocNameI
+-          -> ( LaTeX           -- ^ to print before each name in an export list
+-             , [DocName]       -- ^ names being declared
++          -> ( LaTeX           --   to print before each name in an export list
++             , [DocName]       --   names being declared
+              )
+ declNames (L _ decl) = case decl of
+   TyClD _ d  -> (empty, [tcdName d])
+@@ -444,9 +444,9 @@ ppLPatSig doc docnames ty unicode
+ -- arguments as needed.
+ ppTypeOrFunSig :: HsType DocNameI
+                -> DocForDecl DocName  -- ^ documentation
+-               -> ( LaTeX             -- ^ first-line (no-argument docs only)
+-                  , LaTeX             -- ^ first-line (argument docs only)
+-                  , LaTeX             -- ^ type prefix (argument docs only)
++               -> ( LaTeX             --   first-line (no-argument docs only)
++                  , LaTeX             --   first-line (argument docs only)
++                  , LaTeX             --   type prefix (argument docs only)
+                   )
+                -> Bool                -- ^ unicode
+                -> LaTeX
+-- 
+2.23.0
+