packages feed

integer-logarithms 1.0.3 → 1.0.3.1

raw patch · 4 files changed

+88/−56 lines, 4 filesdep +ghc-bignumdep +invalid-cabal-flag-settingsdep ~QuickCheckdep ~basedep ~ghc-primPVP ok

version bump matches the API change (PVP)

Dependencies added: ghc-bignum, invalid-cabal-flag-settings

Dependency ranges changed: QuickCheck, base, ghc-prim, smallcheck, tasty

API changes (from Hackage documentation)

Files

changelog.md view
@@ -1,3 +1,8 @@+1.0.3.1+-------++- GHC-9.0 support+ 1.0.3 ----- @@ -6,7 +11,7 @@ 1.0.2.2 ------- -- GHC-8.6.1 compatible relase+- GHC-8.6.1 compatible release - Fix compilation when `+check-bounds`  1.0.2.1
integer-logarithms.cabal view
@@ -1,16 +1,17 @@ name:               integer-logarithms-version:            1.0.3-cabal-version:      >= 1.10+version:            1.0.3.1+cabal-version:      >=1.10 author:             Daniel Fischer-copyright:          (c) 2011 Daniel Fischer+copyright:+  (c) 2011 Daniel Fischer, 2017-2020 Oleg Grenrus, Andrew Lelechenko+ license:            MIT license-file:       LICENSE maintainer:         Oleg Grenrus <oleg.grenrus@iki.fi> build-type:         Simple stability:          Provisional-homepage:           https://github.com/Bodigrim/integer-logarithms-bug-reports:        https://github.com/Bodigrim/integer-logarithms/issues-+homepage:           https://github.com/haskellari/integer-logarithms+bug-reports:        https://github.com/haskellari/integer-logarithms/issues synopsis:           Integer logarithms. description:   "Math.NumberTheory.Logarithms" and "Math.NumberTheory.Powers.Integer"@@ -21,91 +22,109 @@   additional functions in migrated modules.  category:           Math, Algorithms, Number Theory- tested-with:-  GHC==7.0.4,-  GHC==7.2.2,-  GHC==7.4.2,-  GHC==7.6.3,-  GHC==7.8.4,-  GHC==7.10.3,-  GHC==8.0.2,-  GHC==8.2.2,-  GHC==8.4.4,-  GHC==8.6.4,-  GHC==8.8.1+    GHC ==7.0.4+     || ==7.2.2+     || ==7.4.2+     || ==7.6.3+     || ==7.8.4+     || ==7.10.3+     || ==8.0.2+     || ==8.2.2+     || ==8.4.4+     || ==8.6.4+     || ==8.8.4+     || ==8.10.2+  , GHCJS ==8.4 -extra-source-files  : readme.md changelog.md+extra-source-files:+  changelog.md+  readme.md  flag integer-gmp-  description:  integer-gmp or integer-simple-  default:      True-  manual:       False+  description: integer-gmp or integer-simple+  default:     True+  manual:      False  flag check-bounds-  description:  Replace unsafe array operations with safe ones-  default:      False-  manual:       True+  description: Replace unsafe array operations with safe ones+  default:     False+  manual:      True  library   default-language: Haskell2010-  hs-source-dirs: src+  hs-source-dirs:   src   build-depends:-    base >= 4.3 && < 4.13,-    array >= 0.3 && < 0.6,-    ghc-prim < 0.6+      array     >=0.3 && <0.6+    , base      >=4.3 && <4.16+    , ghc-prim  >=0   && <0.8 -  if !impl(ghc >= 7.10)-    build-depends: nats >= 1.1.2 && <1.2+  if !impl(ghc >=7.10)+    build-depends: nats >=1.1.2 && <1.2 -  if flag(integer-gmp)+  if impl(ghc >=9.0)     build-depends:-      integer-gmp < 1.1+        base        >=4.15+      , ghc-bignum  >=1.0  && <1.1++    if !flag(integer-gmp)+      build-depends: invalid-cabal-flag-settings <0+   else-    build-depends:-      integer-simple+    build-depends: base <4.15 +    if flag(integer-gmp)+      build-depends: integer-gmp <1.1++    else+      build-depends: integer-simple+   exposed-modules:     Math.NumberTheory.Logarithms     Math.NumberTheory.Powers.Integer     Math.NumberTheory.Powers.Natural-    GHC.Integer.Logarithms.Compat++  -- compat module+  exposed-modules:  GHC.Integer.Logarithms.Compat   other-extensions:     BangPatterns     CPP     MagicHash -  ghc-options: -O2 -Wall+  ghc-options:      -O2 -Wall+   if flag(check-bounds)     cpp-options: -DCheckBounds  source-repository head   type:     git-  location: https://github.com/Bodigrim/integer-logarithms+  location: https://github.com/haskellari/integer-logarithms  test-suite spec-  type:                 exitcode-stdio-1.0-  hs-source-dirs:       test-suite-  ghc-options:          -Wall-  main-is:              Test.hs-  default-language:     Haskell2010+  type:             exitcode-stdio-1.0+  hs-source-dirs:   test-suite+  ghc-options:      -Wall+  main-is:          Test.hs+  default-language: Haskell2010   other-extensions:-    StandaloneDeriving     FlexibleContexts     FlexibleInstances     GeneralizedNewtypeDeriving     MultiParamTypeClasses+    StandaloneDeriving+   build-depends:-    base,-    integer-logarithms,-    tasty >= 0.10 && < 1.3,-    tasty-smallcheck >= 0.8 && < 0.9,-    tasty-quickcheck >= 0.8 && < 0.11,-    tasty-hunit >= 0.9 && < 0.11,-    QuickCheck >= 2.10 && < 2.14,-    smallcheck >= 1.1.3 && < 1.2-  if !impl(ghc >= 7.10)-    build-depends: nats >= 1.1 && <1.2+      base+    , integer-logarithms+    , QuickCheck          >=2.14.1 && <2.15+    , smallcheck          >=1.2    && <1.3+    , tasty               >=0.10   && <1.4+    , tasty-hunit         >=0.9    && <0.11+    , tasty-quickcheck    >=0.8    && <0.11+    , tasty-smallcheck    >=0.8    && <0.9++  if !impl(ghc >=7.10)+    build-depends: nats ==1.1.*    other-modules:     Math.NumberTheory.LogarithmsTests
src/Math/NumberTheory/Logarithms.hs view
@@ -44,6 +44,10 @@ import Data.Array.Unboxed import Numeric.Natural +#ifdef MIN_VERSION_ghc_bignum+import qualified GHC.Num.Natural as BN+#endif+ import GHC.Integer.Logarithms.Compat #if MIN_VERSION_base(4,8,0) && defined(MIN_VERSION_integer_gmp) import GHC.Integer.GMP.Internals (Integer (..))@@ -316,11 +320,15 @@ fromNatural = fromIntegral  naturalLog2# :: Natural -> Int#+#ifdef MIN_VERSION_ghc_bignum+naturalLog2# n = word2Int# (BN.naturalLog2# n)+#else #if MIN_VERSION_base(4,8,0) && defined(MIN_VERSION_integer_gmp) naturalLog2# (NatS# b) = wordLog2# b naturalLog2# (NatJ# n) = integerLog2# (Jp# n) #else naturalLog2# n = integerLog2# (toInteger n)+#endif #endif  #if __GLASGOW_HASKELL__ < 707
test-suite/Math/NumberTheory/LogarithmsTests.hs view
@@ -68,7 +68,7 @@ naturalLog2HugeProperty :: Huge (Positive Natural) -> Bool naturalLog2HugeProperty (Huge (Positive n)) = 2 ^ l <= n && 2 ^ (l + 1) > n   where-    l = fromIntegral $ naturalLog2 n+    l = naturalLog2 n  -- | Check that 'naturalLog10' returns the largest natural @l@ such that 10 ^ @l@ <= @n@ and 10 ^ (@l@+1) > @n@. naturalLog10Property :: Positive Natural -> Bool