packages feed

arithmoi 0.6.0.0 → 0.6.0.1

raw patch · 3 files changed

+22/−14 lines, 3 filesdep ~QuickCheckdep ~smallcheckdep ~tastyPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: QuickCheck, smallcheck, tasty, tasty-quickcheck

API changes (from Hackage documentation)

- Math.NumberTheory.Curves.Montgomery: instance (GHC.TypeLits.KnownNat a24, GHC.TypeLits.KnownNat n) => GHC.Show.Show (Math.NumberTheory.Curves.Montgomery.Point a24 n)
- Math.NumberTheory.Curves.Montgomery: instance GHC.TypeLits.KnownNat n => GHC.Classes.Eq (Math.NumberTheory.Curves.Montgomery.Point a24 n)
- Math.NumberTheory.Moduli.Class: instance GHC.TypeLits.KnownNat m => GHC.Num.Num (Math.NumberTheory.Moduli.Class.Mod m)
- Math.NumberTheory.Moduli.Class: instance GHC.TypeLits.KnownNat m => GHC.Real.Fractional (Math.NumberTheory.Moduli.Class.Mod m)
- Math.NumberTheory.Moduli.Class: instance GHC.TypeLits.KnownNat m => GHC.Show.Show (Math.NumberTheory.Moduli.Class.Mod m)
+ Math.NumberTheory.Curves.Montgomery: instance (GHC.TypeNats.KnownNat a24, GHC.TypeNats.KnownNat n) => GHC.Show.Show (Math.NumberTheory.Curves.Montgomery.Point a24 n)
+ Math.NumberTheory.Curves.Montgomery: instance GHC.TypeNats.KnownNat n => GHC.Classes.Eq (Math.NumberTheory.Curves.Montgomery.Point a24 n)
+ Math.NumberTheory.Moduli.Class: instance GHC.TypeNats.KnownNat m => GHC.Num.Num (Math.NumberTheory.Moduli.Class.Mod m)
+ Math.NumberTheory.Moduli.Class: instance GHC.TypeNats.KnownNat m => GHC.Real.Fractional (Math.NumberTheory.Moduli.Class.Mod m)
+ Math.NumberTheory.Moduli.Class: instance GHC.TypeNats.KnownNat m => GHC.Show.Show (Math.NumberTheory.Moduli.Class.Mod m)

Files

Changes view
@@ -1,3 +1,6 @@+0.6.0.1:+    Switch to smallcheck 1.1.3.+ 0.6.0.0:     This release supports GHC 7.8, 7.10, 8.0 and 8.2. 
arithmoi.cabal view
@@ -1,5 +1,5 @@ name                : arithmoi-version             : 0.6.0.0+version             : 0.6.0.1 cabal-version       : >= 1.10 author              : Daniel Fischer copyright           : (c) 2011 Daniel Fischer, 2016-2017 Andrew Lelechenko, Carter Schonwald@@ -22,7 +22,7 @@  category            : Math, Algorithms, Number Theory -tested-with         : GHC==7.8.4, GHC==7.10.3, GHC==8.0.2, GHC==8.2.1+tested-with         : GHC==7.8.4, GHC==7.10.3, GHC==8.0.2, GHC==8.2.2  extra-source-files  : Changes @@ -137,11 +137,13 @@                       , tasty-quickcheck >= 0.9 && < 0.10                       , tasty-hunit >= 0.9 && < 0.10                       , QuickCheck >= 2.10 && < 2.11-                      , smallcheck >= 1.1 && < 1.2                       , transformers >= 0.5                       , integer-gmp < 1.1   if impl(ghc < 7.10)-    build-depends     : nats >= 1 && <1.2+    build-depends     : smallcheck >= 1.1 && < 1.1.3,+                        nats >= 1 && <1.2+  else+    build-depends     : smallcheck >= 1.1.3 && < 1.2   if impl(ghc < 8.0)     build-depends     : semigroups >= 0.8 
test-suite/Math/NumberTheory/TestUtils.hs view
@@ -49,11 +49,12 @@  import Test.SmallCheck.Series (Positive(..), NonNegative(..), Serial(..), Series, generate) -import Control.Applicative-import Data.Bits #if !(MIN_VERSION_base(4,8,0))+import Control.Applicative import Data.Word #endif++import Data.Bits import GHC.Exts import Numeric.Natural @@ -62,25 +63,27 @@ import Math.NumberTheory.TestUtils.MyCompose import Math.NumberTheory.TestUtils.Wrappers +instance Arbitrary Natural where+  arbitrary = fromInteger <$> (arbitrary `suchThat` (>= 0))+  shrink = map fromInteger . filter (>= 0) . shrink . toInteger++instance Arbitrary GaussianInteger where+  arbitrary = (:+) <$> arbitrary <*> arbitrary+  shrink (x :+ y) = (:+) <$> shrink x <*> shrink y++#if !(MIN_VERSION_smallcheck(1,1,3)) instance Monad m => Serial m Word where   series =     generate (\d -> if d >= 0 then pure 0 else empty) <|> nats     where       nats = generate $ \d -> if d > 0 then [1 .. fromInteger (toInteger d)] else empty -instance Arbitrary Natural where-  arbitrary = fromInteger <$> (arbitrary `suchThat` (>= 0))-  shrink = map fromInteger . filter (>= 0) . shrink . toInteger- instance Monad m => Serial m Natural where   series =     generate (\d -> if d >= 0 then pure 0 else empty) <|> nats     where       nats = generate $ \d -> if d > 0 then [1 .. fromInteger (toInteger d)] else empty--instance Arbitrary GaussianInteger where-  arbitrary = (:+) <$> arbitrary <*> arbitrary-  shrink (x :+ y) = (:+) <$> shrink x <*> shrink y+#endif  instance Monad m => Serial m GaussianInteger where   series = cons2 (:+)