diff options
author | Eric Bavier <bavier@member.fsf.org> | 2019-09-16 22:20:23 -0500 |
---|---|---|
committer | Eric Bavier <bavier@member.fsf.org> | 2019-09-24 21:15:24 -0500 |
commit | 4780db2c935110ea3254817ba0c519c229b9461e (patch) | |
tree | f070e8f3e3d12989feb7a0c4495449ac17f1c4f9 /gnu/packages | |
parent | c463c270dc0e1690d3c7cc19cd78583ce9bf9bd1 (diff) |
gnu: idris: Update to 1.3.2.
* gnu/packages/haskell-xyz.scm (ghc-network-2.8, ghc-megaparsec-7): New
variables.
* gnu/packages/idris.scm (idris): Update to 1.3.2.
[source]: Remove patch.
[inputs]: Use ghc-network-2.8 and ghc-megaparsec-7.
* gnu/packages/patches/idris-test-no-node.patch: Delete.
* gnu/local.mk (dist_patch_DATA): Remove it.
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/haskell-xyz.scm | 37 | ||||
-rw-r--r-- | gnu/packages/idris.scm | 9 | ||||
-rw-r--r-- | gnu/packages/patches/idris-test-no-node.patch | 61 |
3 files changed, 41 insertions, 66 deletions
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index a36451fa8c..2977398880 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -62,6 +62,7 @@ #:use-module (guix build-system haskell) #:use-module (guix download) #:use-module (guix git-download) + #:use-module (guix utils) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages)) @@ -6070,6 +6071,24 @@ Megaparsec is a feature-rich package that strikes a nice balance between speed, flexibility, and quality of parse errors.") (license license:bsd-2))) +;;; Idris 1.3.2 requires 'megaparse>=7.0.4' but we'd like to keep the public +;;; package at the current Stackage LTS version: +(define-public ghc-megaparsec-7 + (hidden-package + (package + (inherit ghc-megaparsec) + (version "7.0.5") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/megaparsec/" + "megaparsec-" version ".tar.gz")) + (sha256 + (base32 + "0bqx1icbmk8s7wmbcdzsgnlh607c7kzg8l80cp02dxr5valjxp7j")))) + (arguments (strip-keyword-arguments (list #:cabal-revision) + (package-arguments ghc-megaparsec)))))) + (define-public ghc-memory (package (name "ghc-memory") @@ -6740,6 +6759,24 @@ between 2 and 3 times faster than the Mersenne Twister.") "This package provides a low-level networking interface.") (license license:bsd-3))) +;;; Until we update our default GHC to >=8.6 we cannot update our ghc-network +;;; package, since the 'cabal-install' package that supports the current +;;; 'Cabal' module requires 'network==2.6.*'. Here we provide an updated +;;; version to be used for our idris package. +(define-public ghc-network-2.8 + (hidden-package + (package + (inherit ghc-network) + (version "2.8.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/network/" + "network-" version ".tar.gz")) + (sha256 + (base32 + "0im8k51rw3ahmr23ny10pshwbz09jfg0fdpam0hzf2hgxnzmvxb1"))))))) + (define-public ghc-network-info (package (name "ghc-network-info") diff --git a/gnu/packages/idris.scm b/gnu/packages/idris.scm index 894a19f0aa..7e6ee302b0 100644 --- a/gnu/packages/idris.scm +++ b/gnu/packages/idris.scm @@ -38,7 +38,7 @@ (define-public idris (package (name "idris") - (version "1.3.1") + (version "1.3.2") (source (origin (method url-fetch) (uri (string-append @@ -46,8 +46,7 @@ "idris-" version "/idris-" version ".tar.gz")) (sha256 (base32 - "0fn9h58l592j72njwma1ia48h8h87wi2rjqfxs7j2lfmvgfv18fi")) - (patches (search-patches "idris-test-no-node.patch")))) + "0wychzkg0yghd2pp8fqz78vp1ayzks191knfpl7mhh8igsmb6bc7")))) (build-system haskell-build-system) (native-inputs ;For tests `(("perl" ,perl) @@ -71,8 +70,8 @@ ("ghc-fsnotify" ,ghc-fsnotify) ("ghc-ieee754" ,ghc-ieee754) ("ghc-libffi" ,ghc-libffi) - ("ghc-megaparsec" ,ghc-megaparsec) - ("ghc-network" ,ghc-network) + ("ghc-megaparsec" ,ghc-megaparsec-7) + ("ghc-network" ,ghc-network-2.8) ("ghc-optparse-applicative" ,ghc-optparse-applicative) ("ghc-regex-tdfa" ,ghc-regex-tdfa) ("ghc-safe" ,ghc-safe) diff --git a/gnu/packages/patches/idris-test-no-node.patch b/gnu/packages/patches/idris-test-no-node.patch deleted file mode 100644 index c04ad41a8e..0000000000 --- a/gnu/packages/patches/idris-test-no-node.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 6c52e1b902b869c25e2fe39cff6364143a04da61 Mon Sep 17 00:00:00 2001 -From: Niklas Larsson <niklas@mm.st> -Date: Tue, 11 Dec 2018 19:56:22 +0100 -Subject: [PATCH] Only check for Node when required - ---- - test/TestRun.hs | 34 ++++++++++++++++++++-------------- - 1 file changed, 20 insertions(+), 14 deletions(-) - -diff --git a/test/TestRun.hs b/test/TestRun.hs -index c7db9fdcd..4809911f3 100644 ---- a/test/TestRun.hs -+++ b/test/TestRun.hs -@@ -11,6 +11,7 @@ import Data.Proxy - import Data.Typeable - import Options.Applicative - import System.Directory -+import System.Environment - import System.Exit - import System.FilePath ((</>)) - import System.Info -@@ -103,20 +104,25 @@ runTest path flags = do - normalise (x : xs) = x : normalise xs - normalise [] = [] - -+checkNode :: IO () -+checkNode = do -+ nodePath <- findExecutable "node" -+ nodejsPath <- findExecutable "nodejs" -+ let node = nodePath <|> nodejsPath -+ case node of -+ Nothing -> do -+ putStrLn "For running the test suite against Node, node must be installed." -+ exitFailure -+ Just _ -> return () -+ - main :: IO () - main = do -- nodePath <- findExecutable "node" -- nodejsPath <- findExecutable "nodejs" -- let node = nodePath <|> nodejsPath -- case node of -- Nothing -> do -- putStrLn "For running the test suite against Node, node must be installed." -- exitFailure -- Just _ -> do -- defaultMainWithIngredients ingredients $ -+ args <- getArgs -+ when ("--node" `elem` args) checkNode -+ defaultMainWithIngredients ingredients $ - askOption $ \(NodeOpt node) -> -- let (codegen, flags) = if node then (JS, ["--codegen", "node"]) -- else (C , []) -- in -- mkGoldenTests (testFamiliesForCodegen codegen) -- (flags ++ idrisFlags) -+ let (codegen, flags) = if node then (JS, ["--codegen", "node"]) -+ else (C , []) -+ in -+ mkGoldenTests (testFamiliesForCodegen codegen) (flags ++ idrisFlags) -+ |