summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2020-08-22 22:22:20 +0100
committerSergei Trofimovich <slyfox@gentoo.org>2020-08-22 22:31:15 +0100
commit360d4307d0ef16b3685caabc441577faaabda5d7 (patch)
tree0ce283ffd2c1fe3cce50e30b13cfb1e03739556c
parentdev-haskell/semirings: new package, a depend of arithmoi-0.11 (diff)
downloadgentoo-360d4307d0ef16b3685caabc441577faaabda5d7.tar.gz
gentoo-360d4307d0ef16b3685caabc441577faaabda5d7.tar.bz2
gentoo-360d4307d0ef16b3685caabc441577faaabda5d7.zip
dev-haskell/quickcheck-classes-base: new package, a depend of arithmoi-0.11
Package-Manager: Portage-3.0.4, Repoman-3.0.1 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
-rw-r--r--dev-haskell/quickcheck-classes-base/Manifest1
-rw-r--r--dev-haskell/quickcheck-classes-base/metadata.xml33
-rw-r--r--dev-haskell/quickcheck-classes-base/quickcheck-classes-base-0.6.0.0.ebuild39
3 files changed, 73 insertions, 0 deletions
diff --git a/dev-haskell/quickcheck-classes-base/Manifest b/dev-haskell/quickcheck-classes-base/Manifest
new file mode 100644
index 000000000000..4aab9890f14a
--- /dev/null
+++ b/dev-haskell/quickcheck-classes-base/Manifest
@@ -0,0 +1 @@
+DIST quickcheck-classes-base-0.6.0.0.tar.gz 25760 BLAKE2B d09794c63da8311836e6422006d262fca21f7d71b473b69f57bd49b3ed2e39f29fcfd18b73fd311db4f6b1cca390cc579f2438481dbd680841c835d7d0d9f557 SHA512 3d0a7c68ab1cdaddbd272df633e0704f5ee3997b3a86fe79cb960f7c84f8546f3360b9d52ada45b9db6344135f0aab1093d5304935ae19f43d235790fba83216
diff --git a/dev-haskell/quickcheck-classes-base/metadata.xml b/dev-haskell/quickcheck-classes-base/metadata.xml
new file mode 100644
index 000000000000..6b8592b1a5b8
--- /dev/null
+++ b/dev-haskell/quickcheck-classes-base/metadata.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>haskell@gentoo.org</email>
+ <name>Gentoo Haskell</name>
+ </maintainer>
+ <use>
+ <flag name="unary-laws">Include infrastructure for testing class laws of unary type constructors.</flag>
+ <flag name="binary-laws">Include infrastructure for testing class laws of binary type constructors.
+Disabling `unary-laws` while keeping `binary-laws` enabled is an unsupported
+configuration.</flag>
+ </use>
+ <longdescription>
+ This libary is a minimal variant of `quickcheck-classes` that
+ only provides laws for typeclasses from `base`. The main purpose
+ of splitting this out is so that `primitive` can depend on
+ `quickcheck-classes-base` in its test suite, avoiding the circular
+ dependency that arises if `quickcheck-classes` is used instead.
+
+ 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 `genvalidity-hspec` and `checkers`.
+ This library differs from other solutions by not introducing
+ any new typeclasses that the user needs to learn.
+
+ /Note:/ on GHC &lt; 8.5, this library uses the higher-kinded typeclasses
+ (&#39;Data.Functor.Classes.Show1&#39;, &#39;Data.Functor.Classes.Eq1&#39;, &#39;Data.Functor.Classes.Ord1&#39;, etc.),
+ but on GHC &gt;= 8.5, it uses `-XQuantifiedConstraints` to express these
+ constraints more cleanly.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-haskell/quickcheck-classes-base/quickcheck-classes-base-0.6.0.0.ebuild b/dev-haskell/quickcheck-classes-base/quickcheck-classes-base-0.6.0.0.ebuild
new file mode 100644
index 000000000000..8b0c61a1e9d7
--- /dev/null
+++ b/dev-haskell/quickcheck-classes-base/quickcheck-classes-base-0.6.0.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# ebuild generated by hackport 0.6.2
+
+CABAL_FEATURES="lib profile haddock hoogle hscolour"
+inherit haskell-cabal
+
+DESCRIPTION="QuickCheck common typeclasses from 'base'"
+HOMEPAGE="https://github.com/andrewthad/quickcheck-classes#readme"
+SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+binary-laws +unary-laws"
+
+RDEPEND=">=dev-haskell/base-orphans-0.1:=[profile?]
+ dev-haskell/bifunctors:=[profile?]
+ dev-haskell/contravariant:=[profile?]
+ dev-haskell/fail:=[profile?]
+ >=dev-haskell/semigroups-0.17:=[profile?]
+ dev-haskell/tagged:=[profile?]
+ >=dev-lang/ghc-8.0.1:=
+ binary-laws? ( >=dev-haskell/quickcheck-2.10.0:2=[profile?] )
+ unary-laws? ( >=dev-haskell/quickcheck-2.10.0:2=[profile?] )
+ !unary-laws? ( !binary-laws? ( >=dev-haskell/quickcheck-2.7:2=[profile?] ) )
+"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.24.0.0
+"
+
+src_configure() {
+ haskell-cabal_src_configure \
+ $(cabal_flag binary-laws binary-laws) \
+ $(cabal_flag unary-laws unary-laws)
+}