diff options
author | John Kehayias via Guix-patches via <guix-patches@gnu.org> | 2021-12-24 19:29:27 +0000 |
---|---|---|
committer | Lars-Dominik Braun <lars@6xq.net> | 2022-01-17 20:29:39 +0100 |
commit | c1c2171158bf0cee44e326818c47651a4a02b1d8 (patch) | |
tree | 6c1c497519f71b8de66832e15fca8343206b7a86 /gnu/packages | |
parent | 67e3de56ec48269ce8315b77ae9b2d71ad29f597 (diff) | |
download | guix-c1c2171158bf0cee44e326818c47651a4a02b1d8.tar.gz guix-c1c2171158bf0cee44e326818c47651a4a02b1d8.zip |
gnu: Add ghc-quickcheck-classes.
* gnu/packages/haskell-check.scm (ghc-quickcheck-classes): New variable.
Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/haskell-check.scm | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/gnu/packages/haskell-check.scm b/gnu/packages/haskell-check.scm index e647d65a89..62433cdb15 100644 --- a/gnu/packages/haskell-check.scm +++ b/gnu/packages/haskell-check.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2019 Timothy Sample <samplet@ngyro.com> ;;; Copyright © 2020 John Soo <jsoo1@asu.edu> ;;; Copyright © 2020 Carlo Holl <carloholl@gmail.com> +;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -32,6 +33,7 @@ (define-module (gnu packages haskell-check) #:use-module (gnu packages) #:use-module (gnu packages haskell-crypto) + #:use-module (gnu packages haskell-web) #:use-module (gnu packages haskell-xyz) #:use-module (guix build-system haskell) #:use-module (guix download) @@ -1056,6 +1058,50 @@ See the documentation in \"Test.Inspection\" or the project webpage for more examples and more information.") (license license:expat))) +(define-public ghc-quickcheck-classes + (package + (name "ghc-quickcheck-classes") + (version "0.6.5.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/quickcheck-classes/quickcheck-classes-" + version + ".tar.gz")) + (sha256 + (base32 "19iw15mvb7gws3ljdxqwsbb4pmfc0sfflf8szgmrhiqr3k82mqv2")))) + (build-system haskell-build-system) + (inputs + (list ghc-quickcheck + ghc-primitive + ghc-primitive-addr + ghc-quickcheck-classes-base + ghc-aeson + ghc-semigroupoids + ghc-semirings + ghc-vector)) + (native-inputs + (list ghc-base-orphans + ghc-tagged + ghc-base-orphans + ghc-tagged + ghc-tasty + ghc-tasty-quickcheck)) + (home-page "https://github.com/andrewthad/quickcheck-classes#readme") + (synopsis "QuickCheck common typeclasses") + (description + "This library provides QuickCheck properties to ensure that typeclass +instances adhere to the set of laws that they are supposed to. There are +other libraries that do similar things, such as @code{genvalidity-hspec} and +@code{checkers}. This library differs from other solutions by not introducing +any new typeclasses that the user needs to learn. /Note:/ on GHC < 8.5, this +library uses the higher-kinded typeclasses (@code{Data.Functor.Classes.Show1}, +@code{Data.Functor.Classes.Eq1}, @code{Data.Functor.Classes.Ord1}, etc.), but +on GHC >= 8.5, it uses @code{-XQuantifiedConstraints} to express these +constraints more cleanly.") + (license license:bsd-3))) + (define-public ghc-quickcheck-classes-base (package (name "ghc-quickcheck-classes-base") |