X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/4a78fd4617908546be15d2c101f5cab512c71f8e..47956fa0c24efcdcba3493f0231c30e9a39ec7df:/gnu/packages/haskell-check.scm diff --git a/gnu/packages/haskell-check.scm b/gnu/packages/haskell-check.scm index 9593e4c109..19eb40eaa4 100644 --- a/gnu/packages/haskell-check.scm +++ b/gnu/packages/haskell-check.scm @@ -3,11 +3,13 @@ ;;; Copyright © 2015 Eric Bavier ;;; Copyright © 2015 Federico Beffa ;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus -;;; Copyright © 2016 Nils Gillmann +;;; Copyright © 2016 ng0 ;;; Copyright © 2016 David Craven ;;; Copyright © 2017 Danny Milosavljevic ;;; Copyright © 2017 rsiddharth ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice +;;; Copyright © 2018 Tonton +;;; Copyright © 2018 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -27,6 +29,7 @@ (define-module (gnu packages haskell-check) #:use-module (gnu packages) #:use-module (gnu packages haskell) + #:use-module (gnu packages haskell-crypto) #:use-module (guix build-system haskell) #:use-module (guix download) #:use-module ((guix licenses) #:prefix license:) @@ -36,7 +39,7 @@ (define-public ghc-tasty-ant-xml (package (name "ghc-tasty-ant-xml") - (version "1.0.2") + (version "1.1.4") (source (origin (method url-fetch) @@ -46,12 +49,11 @@ ".tar.gz")) (sha256 (base32 - "0pgz2lclg2hp72ykljcbxd88pjanfdfk8m5vb2qzcyjr85kwrhxv")))) + "0v0gsb90kh6hwlgxbclzawsskywc6yf7n8xhiifia97l4y0yx2m8")))) (build-system haskell-build-system) (inputs `(("ghc-generic-deriving" ,ghc-generic-deriving) ("ghc-xml" ,ghc-xml) - ("ghc-mtl" ,ghc-mtl) ("ghc-stm" ,ghc-stm) ("ghc-tagged" ,ghc-tagged) ("ghc-tasty" ,ghc-tasty))) @@ -94,7 +96,7 @@ Haskell test framework.") (define-public ghc-tasty-quickcheck (package (name "ghc-tasty-quickcheck") - (version "0.8.4") + (version "0.10") (source (origin (method url-fetch) @@ -103,7 +105,7 @@ Haskell test framework.") "tasty-quickcheck-" version ".tar.gz")) (sha256 (base32 - "15rjxib5jmjq0hzj47x15kgp3awc73va4cy1pmpf7k3hvfv4qprn")))) + "0vr6szbbz3s5461i0zr8zpq347zfvidfzv5gf3xwxhm0yk731z8h")))) (build-system haskell-build-system) (inputs `(("ghc-quickcheck" ,ghc-quickcheck) @@ -122,7 +124,7 @@ Haskell test framework.") (define-public ghc-tasty-golden (package (name "ghc-tasty-golden") - (version "2.3.1.1") + (version "2.3.2") (source (origin (method url-fetch) @@ -132,12 +134,11 @@ Haskell test framework.") ".tar.gz")) (sha256 (base32 - "0pcf5hsyp5mmbqn7krdm49jxpkjm6rb4j83j28f76h7q55dzm1wy")))) + "0k3ibjhjc9vcwzrjnl4rnwvfm8l81q347nb7dgvcib6n5wm3s404")))) (build-system haskell-build-system) (inputs `(("ghc-temporary" ,ghc-temporary) ("ghc-tasty" ,ghc-tasty) - ("ghc-mtl" ,ghc-mtl) ("ghc-optparse-applicative" ,ghc-optparse-applicative) ("ghc-tagged" ,ghc-tagged) ("ghc-async" ,ghc-async) @@ -180,7 +181,7 @@ timer functions of different operating systems via a unified API.") (define-public ghc-tasty (package (name "ghc-tasty") - (version "0.11.0.4") + (version "1.1.0.3") (source (origin (method url-fetch) @@ -190,19 +191,18 @@ timer functions of different operating systems via a unified API.") ".tar.gz")) (sha256 (base32 - "05pxjzgbgjdn7477xry0ssjrnmnsydqiq6nm6ck8n2da1baliqp0")))) + "14riid753hjqr6lca1kgxpnvq0wykf0k3qc5jpag42hh8bszav22")))) (build-system haskell-build-system) (inputs `(("ghc-stm" ,ghc-stm) - ("ghc-mtl" ,ghc-mtl) ("ghc-tagged" ,ghc-tagged) ("ghc-regex-tdfa" ,ghc-regex-tdfa) - ("ghc-regex-tdfa-rc" ,ghc-regex-tdfa-rc) ("ghc-optparse-applicative" ,ghc-optparse-applicative) ("ghc-unbounded-delays" ,ghc-unbounded-delays) ("ghc-async" ,ghc-async) ("ghc-ansi-terminal" ,ghc-ansi-terminal) - ("ghc-clock-bootstrap" ,ghc-clock-bootstrap))) + ("ghc-clock-bootstrap" ,ghc-clock-bootstrap) + ("ghc-wcwidth" ,ghc-wcwidth-bootstrap))) (home-page "http://documentup.com/feuerbach/tasty") (synopsis "Modern and extensible testing framework") (description "Tasty is a modern testing framework for Haskell. It lets @@ -213,7 +213,7 @@ and any other types of tests into a single test suite.") (define-public ghc-tasty-hunit (package (name "ghc-tasty-hunit") - (version "0.9.2") + (version "0.10.0.1") (source (origin (method url-fetch) @@ -223,10 +223,11 @@ and any other types of tests into a single test suite.") ".tar.gz")) (sha256 (base32 - "08qnxaw34wfnzi9irs1jd4d0zczqm3k5ffkd4zwhkz0dflmgq7mf")))) + "0j3hgga6c3s8h5snzivb8a75h96207ia2rlbxzj07xbf4zpkp44g")))) (build-system haskell-build-system) (inputs - `(("ghc-tasty" ,ghc-tasty))) + `(("ghc-call-stack" ,ghc-call-stack-boot) + ("ghc-tasty" ,ghc-tasty))) (home-page "http://documentup.com/feuerbach/tasty") (synopsis "HUnit support for the Tasty test framework") (description "This package provides HUnit support for the Tasty Haskell @@ -247,7 +248,6 @@ test framework.") (build-system haskell-build-system) (inputs `(("ghc-tasty" ,ghc-tasty) - ("ghc-mtl" ,ghc-mtl) ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) ("ghc-tasty-hunit" ,ghc-tasty-hunit))) (home-page "https://github.com/vincenthz/tasty-kat") @@ -260,7 +260,7 @@ tasty.") (define-public ghc-tasty-th (package (name "ghc-tasty-th") - (version "0.1.4") + (version "0.1.7") (source (origin (method url-fetch) @@ -269,10 +269,12 @@ tasty.") version ".tar.gz")) (sha256 (base32 - "0dff9si8i1qp0s7p4hlk0l29vq7wxfglw6mvlgmld43h7rllv88q")))) + "0b2ivrw2257m4cy4rjnkwqlarh83j1y3zywnmaqqqbvy667sqnj3")))) (build-system haskell-build-system) (inputs - `(("ghc-tasty" ,ghc-tasty))) + `(("ghc-haskell-src-exts" ,ghc-haskell-src-exts) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit))) (home-page "https://github.com/bennofs/tasty-th") (synopsis "Automatically generate tasty TestTrees") (description @@ -285,7 +287,7 @@ test-framework.") (define-public ghc-tasty-rerun (package (name "ghc-tasty-rerun") - (version "1.1.8") + (version "1.1.12") (source (origin (method url-fetch) (uri (string-append @@ -293,11 +295,10 @@ test-framework.") "tasty-rerun-" version ".tar.gz")) (sha256 (base32 - "0yg8cicfn3qaazvp4rbanzy3dyk95k3y1kkd4bykvkl9v4076788")))) + "05lp4zy6lwd916snq6hs43848n62j9vdfl3s8sfivqydrax0vvd8")))) (build-system haskell-build-system) (inputs - `(("ghc-mtl" ,ghc-mtl) - ("ghc-optparse-applicative" ,ghc-optparse-applicative) + `(("ghc-optparse-applicative" ,ghc-optparse-applicative) ("ghc-reducers" ,ghc-reducers) ("ghc-split" ,ghc-split) ("ghc-stm" ,ghc-stm) @@ -314,7 +315,7 @@ been added since previous test run.") (define-public ghc-tasty-expected-failure (package (name "ghc-tasty-expected-failure") - (version "0.11.0.4") + (version "0.11.1.1") (source (origin (method url-fetch) @@ -323,7 +324,7 @@ been added since previous test run.") version ".tar.gz")) (sha256 (base32 - "0r555f18d2gj96pjyc13chn1nxaxl81am4xgip3mvvjhw8s5mva1")))) + "1i2s809m644b7hgiblqay9j364r3fjj1rwbrahsn1pgr5q6mr6ji")))) (build-system haskell-build-system) (inputs `(("ghc-tagged" ,ghc-tagged) @@ -340,7 +341,7 @@ development.") (define-public ghc-quickcheck-instances (package (name "ghc-quickcheck-instances") - (version "0.3.16.1") + (version "0.3.18") (source (origin (method url-fetch) @@ -350,8 +351,11 @@ development.") version ".tar.gz")) (sha256 (base32 - "01v5bs7r9yvhkvb4yc9bqnacy8r6cy2gr9lnmwx40n5apgi0gcbz")))) + "1bh1pzz5fdcqvzdcirqxna6fnjms02min5md716299g5niz46w55")))) (build-system haskell-build-system) + (arguments + `(#:cabal-revision + ("1" "1sngfq3v71bvgjsl8cj5kh65m3fziwy8dkvwjzs0kxfrzr87faly"))) (inputs `(("ghc-quickcheck" ,ghc-quickcheck) ("ghc-base-compat" ,ghc-base-compat) @@ -421,7 +425,7 @@ use HUnit assertions as QuickCheck properties.") (define-public ghc-quickcheck (package (name "ghc-quickcheck") - (version "2.10.1") + (version "2.11.3") (outputs '("out" "doc")) (source (origin @@ -432,11 +436,10 @@ use HUnit assertions as QuickCheck properties.") ".tar.gz")) (sha256 (base32 - "1rfmns3lj3hl93k1jws85ajkkw7z9ll8cw292n9m7zald1w5dfqx")))) + "0xhqk35fkzlbjcqbabg6962jkv8d688nzmz7ng4bm84x2d95d328")))) (build-system haskell-build-system) (arguments - `(#:tests? #f ; FIXME: currently missing libraries used for tests. - #:configure-flags '("-f base4"))) + `(#:tests? #f)) ; FIXME: currently missing libraries used for tests. (inputs `(("ghc-random" ,ghc-random) ("ghc-tf-random" ,ghc-tf-random))) @@ -450,24 +453,10 @@ hold in a large number of randomly generated cases. Specifications are expressed in Haskell, using combinators defined in the QuickCheck library.") (license license:bsd-3))) -(define-public ghc-quickcheck-latest - (package (inherit ghc-quickcheck) - (version "2.11.3") - (source - (origin - (method url-fetch) - (uri (string-append - "https://hackage.haskell.org/package/QuickCheck/QuickCheck-" - version - ".tar.gz")) - (sha256 - (base32 - "0xhqk35fkzlbjcqbabg6962jkv8d688nzmz7ng4bm84x2d95d328")))))) - (define-public ghc-test-framework (package (name "ghc-test-framework") - (version "0.8.1.1") + (version "0.8.2.0") (source (origin (method url-fetch) @@ -475,10 +464,17 @@ expressed in Haskell, using combinators defined in the QuickCheck library.") "test-framework-" version ".tar.gz")) (sha256 (base32 - "0wxjgdvb1c4ykazw774zlx86550848wbsvgjgcrdzcgbb9m650vq")))) + "1hhacrzam6b8f10hyldmjw8pb7frdxh04rfg3farxcxwbnhwgbpm")))) (build-system haskell-build-system) (arguments - `(#:configure-flags (list "--allow-newer=time"))) + `(#:tests? #f ; FIXME: Tests do not build. + #:phases + (modify-phases %standard-phases + (add-before 'configure 'update-constraints + (lambda _ + (substitute* "test-framework.cabal" + (("QuickCheck >= 2\\.3 && < 2\\.10") + "QuickCheck >= 2.3 && < 2.12"))))))) (native-inputs `(("ghc-hunit" ,ghc-hunit) ("ghc-quickcheck" ,ghc-quickcheck))) @@ -490,7 +486,8 @@ expressed in Haskell, using combinators defined in the QuickCheck library.") ("ghc-random" ,ghc-random) ("ghc-regex-posix" ,ghc-regex-posix) ("ghc-xml" ,ghc-xml) - ("ghc-libxml" ,ghc-libxml))) + ("ghc-libxml" ,ghc-libxml) + ("ghc-semigroups" ,ghc-semigroups-bootstrap))) (home-page "https://batterseapower.github.io/test-framework/") (synopsis "Framework for running and organising tests") (description @@ -515,6 +512,9 @@ reporting and test statistics output.") (base32 "1y0b6vg8nfm43v90lxxcydhi6qlxhfy4vpxbzm5ic2w55bh8xjwm")))) (build-system haskell-build-system) + (arguments + `(#:cabal-revision + ("3" "0i9mlalv7cl1iq43ld5myrnpszq5rxmd79hk495dcb08rglhgl3z"))) (inputs `(("ghc-extensible-exceptions" ,ghc-extensible-exceptions) ("ghc-hunit" ,ghc-hunit) @@ -539,6 +539,9 @@ reporting and test statistics output.") (base32 "0vj834337r6jzr3258cv68ly2sv5999mklpsrfngyk51kywsyqyp")))) (build-system haskell-build-system) + (arguments + `(#:cabal-revision + ("1" "147ngmfdkskyg7mwsp5w73a4dbx3rp5s38bci3z03kn1m093lxff"))) (inputs `(("ghc-extensible-exceptions" ,ghc-extensible-exceptions) ("ghc-quickcheck" ,ghc-quickcheck) @@ -588,19 +591,21 @@ using Template Haskell") (define-public ghc-hunit (package (name "ghc-hunit") - (version "1.3.1.2") + (version "1.6.0.0") (outputs '("out" "doc")) (source (origin (method url-fetch) - (uri (string-append - "https://hackage.haskell.org/package/HUnit/HUnit-" - version - ".tar.gz")) + (uri (string-append "https://hackage.haskell.org/package/HUnit/" + "HUnit-" version ".tar.gz")) (sha256 (base32 - "10akdh4fl615rrshxi3m5gf414il1q42z4zqyb6q4jasmscvzpms")))) + "1pnhwqq5v8h48gbp3ibv3skfj25mf4zs5svxcavq93p9cswycj3l")))) (build-system haskell-build-system) + (inputs + ;; We cannot use ghc-call-stack there, because it depends on + ;; ghc-nanospec, which depends on ghc-hunit. + `(("ghc-call-stack" ,ghc-call-stack-boot))) (home-page "http://hunit.sourceforge.net/") (synopsis "Unit testing framework for Haskell") (description @@ -611,21 +616,20 @@ JUnit tool for Java.") (define-public hspec-discover (package (name "hspec-discover") - (version "2.2.4") + (version "2.5.5") (source (origin (method url-fetch) - (uri (string-append - "https://hackage.haskell.org/package/hspec-discover/hspec-discover-" - version - ".tar.gz")) + (uri (string-append "https://hackage.haskell.org/package/" + "hspec-discover/hspec-discover-" + version ".tar.gz")) (sha256 (base32 - "1bz7wb8v0bx1amiz4bpj34xq97d1ia29n3f654wcrh6lacydp3dv")))) + "04aidzi91ccr9bygmfkjzshz34z9vh8wvqj4zinx2clxq6r7gqfz")))) (build-system haskell-build-system) - (arguments `(#:haddock? #f)) ; Haddock phase fails because there are no - ; documentation files. - (inputs `(("ghc-hspec-meta" ,ghc-hspec-meta))) + (native-inputs + `(("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-hspec-meta" ,ghc-hspec-meta))) (home-page "https://hspec.github.io/") (synopsis "Automatically discover and run Hspec tests") (description "hspec-discover is a tool which automatically discovers and @@ -635,23 +639,22 @@ runs Hspec tests.") (define-public ghc-hspec-core (package (name "ghc-hspec-core") - (version "2.2.4") + (version "2.5.5") (source (origin (method url-fetch) - (uri (string-append - "https://hackage.haskell.org/package/hspec-core/hspec-core-" - version - ".tar.gz")) + (uri (string-append "https://hackage.haskell.org/package/hspec-core/" + "hspec-core-" version ".tar.gz")) (sha256 (base32 - "0x845ngfl6vf65fnpb5mm3wj0ql45pz11bnm0x4gxc4ybd9c52ij")))) + "1vfrqlpn32s9wiykmkxbnrnd5p56yznw20pf8fwzw78ar4wpz55x")))) (build-system haskell-build-system) (arguments `(#:tests? #f)) ; FIXME: testing libraries are missing. (inputs `(("ghc-setenv" ,ghc-setenv) ("ghc-ansi-terminal" ,ghc-ansi-terminal) ("ghc-async" ,ghc-async) + ("ghc-clock" ,ghc-clock) ("ghc-quickcheck-io" ,ghc-quickcheck-io) ("ghc-hunit" ,ghc-hunit) ("ghc-quickcheck" ,ghc-quickcheck) @@ -666,17 +669,15 @@ be used to extend Hspec's functionality.") (define-public ghc-hspec-meta (package (name "ghc-hspec-meta") - (version "2.2.1") + (version "2.4.6") (source (origin (method url-fetch) - (uri (string-append - "https://hackage.haskell.org/package/hspec-meta/hspec-meta-" - version - ".tar.gz")) + (uri (string-append "https://hackage.haskell.org/package/hspec-meta/" + "hspec-meta-" version ".tar.gz")) (sha256 (base32 - "1m1pkrxiglxzwv8gdj5jr1bdbhxvvg6sbl9m61w4565d7k1m8yxa")))) + "0qmvk01n79j6skn79r6zalg2pd0x0nqqn9qn8mhg0pgyzcdnfc9b")))) (build-system haskell-build-system) (inputs `(("ghc-quickcheck" ,ghc-quickcheck) @@ -696,17 +697,15 @@ used to test the in-development version of Hspec.") (define-public ghc-hspec (package (name "ghc-hspec") - (version "2.2.4") + (version "2.5.5") (source (origin (method url-fetch) - (uri (string-append - "https://hackage.haskell.org/package/hspec/hspec-" - version - ".tar.gz")) + (uri (string-append "https://hackage.haskell.org/package/hspec/" + "hspec-" version ".tar.gz")) (sha256 (base32 - "1cf90gqvg1iknja6ymxqxyabpahcxni3blqllh81ywbir3whljvj")))) + "1yv4k5b5kkig2q3waj28587sq28wms7wfav5a3lq4dra6jybimfm")))) (build-system haskell-build-system) (inputs `(("ghc-hspec-core" ,ghc-hspec-core) @@ -725,7 +724,7 @@ Haskell, inspired by the Ruby library RSpec.") (define-public ghc-hspec-contrib (package (name "ghc-hspec-contrib") - (version "0.3.0") + (version "0.5.0") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" @@ -733,7 +732,7 @@ Haskell, inspired by the Ruby library RSpec.") version ".tar.gz")) (sha256 (base32 - "006syw8xagfhsx06ws9ywig1qx5lk4cgl7sq6pbid1s64c72mxn4")))) + "13579xdqwbsy8k0vxdcvgy932d4p76mij1rzkzbpqbspfn7399yv")))) (build-system haskell-build-system) (inputs `(("ghc-hspec-core" ,ghc-hspec-core) @@ -751,18 +750,19 @@ Haskell, inspired by the Ruby library RSpec.") (define-public ghc-hspec-expectations (package (name "ghc-hspec-expectations") - (version "0.7.2") + (version "0.8.2") (source (origin (method url-fetch) - (uri (string-append - "https://hackage.haskell.org/package/hspec-expectations/hspec-expectations-" - version - ".tar.gz")) + (uri (string-append "https://hackage.haskell.org/package/" + "hspec-expectations/hspec-expectations-" + version ".tar.gz")) (sha256 (base32 - "1w56jiqfyl237sr207gh3b0l8sr9layy0mdsgd5wknzb49mif6ip")))) + "1vxl9zazbaapijr6zmcj72j9wf7ka1pirrjbwddwwddg3zm0g5l1")))) (build-system haskell-build-system) + ;; Tests depend on ghc-nanospec. + (arguments '(#:tests? #f)) (inputs `(("ghc-hunit" ,ghc-hunit))) (home-page "https://github.com/sol/hspec-expectations") (synopsis "Catchy combinators for HUnit") @@ -793,3 +793,32 @@ Haskell, inspired by the Ruby library RSpec.") "Nanospec is a lightweight implementation of a subset of Hspec's API with minimal dependencies.") (license license:expat))) + +(define-public ghc-crypto-cipher-tests + (package + (name "ghc-crypto-cipher-tests") + (version "0.0.11") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "crypto-cipher-tests-" version "/" + "crypto-cipher-tests-" version ".tar.gz")) + (sha256 + (base32 + "19wqignlq90qwpam01hnmmrxaxh5lkax9l1l6rlbi4a07nvp1dnz")))) + (build-system haskell-build-system) + (inputs `(("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-hunit" ,ghc-hunit) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-byteable" ,ghc-byteable) + ("ghc-securemem" ,ghc-securemem) + ("ghc-crypto-cipher-types" ,ghc-crypto-cipher-types))) + (home-page "https://github.com/vincenthz/hs-crypto-cipher") + (synopsis "Generic cryptography cipher tests for Haskell") + (description " This Haskell package contains generic tests for +cryptographic ciphers, and is used by the test runners of various Haskell +implementations of cryptographic ciphers.") + (license license:bsd-3)))