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.
This commit is contained in:
Eric Bavier 2019-09-16 22:20:23 -05:00
parent c463c270dc
commit 4780db2c93
No known key found for this signature in database
GPG Key ID: FD73CAC719D32566
4 changed files with 41 additions and 67 deletions

View File

@ -960,7 +960,6 @@ dist_patch_DATA = \
%D%/packages/patches/icedtea-6-hotspot-gcc-segfault-workaround.patch \ %D%/packages/patches/icedtea-6-hotspot-gcc-segfault-workaround.patch \
%D%/packages/patches/icedtea-7-hotspot-gcc-segfault-workaround.patch \ %D%/packages/patches/icedtea-7-hotspot-gcc-segfault-workaround.patch \
%D%/packages/patches/id3lib-CVE-2007-4460.patch \ %D%/packages/patches/id3lib-CVE-2007-4460.patch \
%D%/packages/patches/idris-test-no-node.patch \
%D%/packages/patches/ilmbase-fix-tests.patch \ %D%/packages/patches/ilmbase-fix-tests.patch \
%D%/packages/patches/ilmbase-openexr-pkg-config.patch \ %D%/packages/patches/ilmbase-openexr-pkg-config.patch \
%D%/packages/patches/intltool-perl-compatibility.patch \ %D%/packages/patches/intltool-perl-compatibility.patch \

View File

@ -62,6 +62,7 @@
#:use-module (guix build-system haskell) #:use-module (guix build-system haskell)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix utils)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)) #: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.") speed, flexibility, and quality of parse errors.")
(license license:bsd-2))) (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 (define-public ghc-memory
(package (package
(name "ghc-memory") (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.") "This package provides a low-level networking interface.")
(license license:bsd-3))) (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 (define-public ghc-network-info
(package (package
(name "ghc-network-info") (name "ghc-network-info")

View File

@ -38,7 +38,7 @@
(define-public idris (define-public idris
(package (package
(name "idris") (name "idris")
(version "1.3.1") (version "1.3.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -46,8 +46,7 @@
"idris-" version "/idris-" version ".tar.gz")) "idris-" version "/idris-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0fn9h58l592j72njwma1ia48h8h87wi2rjqfxs7j2lfmvgfv18fi")) "0wychzkg0yghd2pp8fqz78vp1ayzks191knfpl7mhh8igsmb6bc7"))))
(patches (search-patches "idris-test-no-node.patch"))))
(build-system haskell-build-system) (build-system haskell-build-system)
(native-inputs ;For tests (native-inputs ;For tests
`(("perl" ,perl) `(("perl" ,perl)
@ -71,8 +70,8 @@
("ghc-fsnotify" ,ghc-fsnotify) ("ghc-fsnotify" ,ghc-fsnotify)
("ghc-ieee754" ,ghc-ieee754) ("ghc-ieee754" ,ghc-ieee754)
("ghc-libffi" ,ghc-libffi) ("ghc-libffi" ,ghc-libffi)
("ghc-megaparsec" ,ghc-megaparsec) ("ghc-megaparsec" ,ghc-megaparsec-7)
("ghc-network" ,ghc-network) ("ghc-network" ,ghc-network-2.8)
("ghc-optparse-applicative" ,ghc-optparse-applicative) ("ghc-optparse-applicative" ,ghc-optparse-applicative)
("ghc-regex-tdfa" ,ghc-regex-tdfa) ("ghc-regex-tdfa" ,ghc-regex-tdfa)
("ghc-safe" ,ghc-safe) ("ghc-safe" ,ghc-safe)

View File

@ -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)
+