[PATCH 2/2] gnu: idris: Update to 1.3.2.

  • Done
  • quality assurance status badge
Details
One participant
  • ericbavier
Owner
unassigned
Submitted by
ericbavier
Severity
normal
E
E
ericbavier wrote on 17 Sep 2019 05:37
(address . guix-patches@gnu.org)(name . Eric Bavier)(address . bavier@member.fsf.org)
20190917033730.28806-2-ericbavier@centurylink.net
From: Eric Bavier <bavier@member.fsf.org>

* gnu/packages/idris.scm (ghc-network-2.8): New variable.
(idris): Update to 1.3.2.
[source]: Remove patch.
[inputs]: Use ghc-network-2.8.
* gnu/packages/patches/idris-test-no-node.patch: Delete.
* gnu/local.mk (dist_patch_DATA): Remove it.
---
gnu/local.mk | 1 -
gnu/packages/idris.scm | 24 ++++++--
gnu/packages/patches/idris-test-no-node.patch | 61 -------------------
3 files changed, 20 insertions(+), 66 deletions(-)
delete mode 100644 gnu/packages/patches/idris-test-no-node.patch

Toggle diff (133 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 16b63bc951..4beee88e38 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -946,7 +946,6 @@ dist_patch_DATA = \
%D%/packages/patches/icedtea-6-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/idris-test-no-node.patch \
%D%/packages/patches/ilmbase-fix-tests.patch \
%D%/packages/patches/intltool-perl-compatibility.patch \
%D%/packages/patches/irrlicht-use-system-libs.patch \
diff --git a/gnu/packages/idris.scm b/gnu/packages/idris.scm
index 4290d8c21f..376db9cb05 100644
--- a/gnu/packages/idris.scm
+++ b/gnu/packages/idris.scm
@@ -35,10 +35,27 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages))
+;;; 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.*'. Providing a local ghc-network
+;;; works in this case since we use it only for a standalone program.
+(define ghc-network-2.8
+ (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 idris
(package
(name "idris")
- (version "1.3.1")
+ (version "1.3.2")
(source (origin
(method url-fetch)
(uri (string-append
@@ -46,8 +63,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)
@@ -72,7 +88,7 @@
("ghc-ieee754" ,ghc-ieee754)
("ghc-libffi" ,ghc-libffi)
("ghc-megaparsec" ,ghc-megaparsec)
- ("ghc-network" ,ghc-network)
+ ("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)
-+
--
2.23.0
E
E
Eric Bavier wrote on 25 Sep 2019 04:20
Re: [bug#37434] [PATCH 1/2] gnu: ghc-megaparsec: Update to 7.0.5.
(name . Ludovic Courtès)(address . ludo@gnu.org)
1530026973.36474811.1569378028367.JavaMail.zimbra@centurylink.net
----- On Sep 24, 2019, at 12:08 PM, Ludovic Courtès ludo@gnu.org wrote:

Toggle quote (32 lines)
> Hi Eric,
>
> Eric Bavier <ericbavier@centurylink.net> skribis:
>
>> From 832529b71c2c5c7e6aa6e88a206c0db65e8a0c2e Mon Sep 17 00:00:00 2001
>> From: Eric Bavier <bavier@member.fsf.org>
>> Date: Mon, 16 Sep 2019 22:20:23 -0500
>> Subject: [PATCH] gnu: idris: Update to 1.3.2.
>>
>> * gnu/packages/idris.scm (ghc-network-2.8, ghc-megaparsec-7): New variables.
>> (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.
>
> [...]
>> +;;; 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.*'. Providing a local ghc-network
>> +;;; works in this case since we use it only for a standalone program.
>> +(define ghc-network-2.8
>> + (package
>> + (inherit ghc-network)
>
> You should only inherit from packages defined in the same module,
> otherwise we risk hitting the dreaded circular dependency mess (actually
> this particular case is fine because idris.scm is a “leaf”, but still,
> let’s not take this risk.)
>
> So I recommend moving these two ghc-* packages next to their friends.

Makes sense. Done.

Toggle quote (2 lines)
> With this change the patch LGTM.

Pushed with that change and other small adjustments for latest master in commit 4780db2c93.

--
`~Eric
Closed
?