packages feed

Cabal revisions of random-1.2.1.1

Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.

revision 1
-cabal-version:      >=1.10-name:               random-version:            1.2.1.1-license:            BSD3-license-file:       LICENSE-maintainer:         core-libraries-committee@haskell.org-bug-reports:        https://github.com/haskell/random/issues-synopsis:           Pseudo-random number generation-description:-    This package provides basic pseudo-random number generation, including the-    ability to split random number generators.-    .-    == "System.Random": pure pseudo-random number interface-    .-    In pure code, use 'System.Random.uniform' and 'System.Random.uniformR' from-    "System.Random" to generate pseudo-random numbers with a pure pseudo-random-    number generator like 'System.Random.StdGen'.-    .-    As an example, here is how you can simulate rolls of a six-sided die using-    'System.Random.uniformR':-    .-    >>> let roll = uniformR (1, 6)        :: RandomGen g => g -> (Word, g)-    >>> let rolls = unfoldr (Just . roll) :: RandomGen g => g -> [Word]-    >>> let pureGen = mkStdGen 42-    >>> take 10 (rolls pureGen)           :: [Word]-    [1,1,3,2,4,5,3,4,6,2]-    .-    See "System.Random" for more details.-    .-    == "System.Random.Stateful": monadic pseudo-random number interface-    .-    In monadic code, use 'System.Random.Stateful.uniformM' and-    'System.Random.Stateful.uniformRM' from "System.Random.Stateful" to generate-    pseudo-random numbers with a monadic pseudo-random number generator, or-    using a monadic adapter.-    .-    As an example, here is how you can simulate rolls of a six-sided die using-    'System.Random.Stateful.uniformRM':-    .-    >>> let rollM = uniformRM (1, 6)                 :: StatefulGen g m => g -> m Word-    >>> let pureGen = mkStdGen 42-    >>> runStateGen_ pureGen (replicateM 10 . rollM) :: [Word]-    [1,1,3,2,4,5,3,4,6,2]-    .-    The monadic adapter 'System.Random.Stateful.runStateGen_' is used here to lift-    the pure pseudo-random number generator @pureGen@ into the-    'System.Random.Stateful.StatefulGen' context.-    .-    The monadic interface can also be used with existing monadic pseudo-random-    number generators. In this example, we use the one provided in the-    <https://hackage.haskell.org/package/mwc-random mwc-random> package:-    .-    >>> import System.Random.MWC as MWC-    >>> let rollM = uniformRM (1, 6)       :: StatefulGen g m => g -> m Word-    >>> monadicGen <- MWC.create-    >>> replicateM 10 (rollM monadicGen) :: IO [Word]-    [2,3,6,6,4,4,3,1,5,4]-    .-    See "System.Random.Stateful" for more details.--category:           System-build-type:         Simple-extra-source-files:-    README.md-    CHANGELOG.md-tested-with:         GHC == 7.10.2-                   , GHC == 7.10.3-                   , GHC == 8.0.2-                   , GHC == 8.2.2-                   , GHC == 8.4.3-                   , GHC == 8.4.4-                   , GHC == 8.6.3-                   , GHC == 8.6.4-                   , GHC == 8.6.5-                   , GHC == 8.8.1-                   , GHC == 8.8.2-                   , GHC == 8.10.1--source-repository head-    type:     git-    location: https://github.com/haskell/random.git---library-    exposed-modules:-        System.Random-        System.Random.Internal-        System.Random.Stateful-    other-modules:-        System.Random.GFinite--    hs-source-dirs:   src-    default-language: Haskell2010-    ghc-options:-        -Wall-    if impl(ghc >= 8.0)-        ghc-options:-            -Wincomplete-record-updates -Wincomplete-uni-patterns--    build-depends:-        base >=4.8 && <5,-        bytestring >=0.10.4 && <0.12,-        deepseq >=1.1 && <2,-        mtl >=2.2 && <2.4,-        splitmix >=0.1 && <0.2-    if impl(ghc < 8.0)-       build-depends:-           transformers--test-suite legacy-test-    type:             exitcode-stdio-1.0-    main-is:          Legacy.hs-    hs-source-dirs:   test-legacy-    other-modules:-        T7936-        TestRandomIOs-        TestRandomRs-        Random1283-        RangeTest--    default-language: Haskell2010-    ghc-options:      -with-rtsopts=-M8M-    if impl(ghc >= 8.0)-        ghc-options:-            -Wno-deprecations-    build-depends:-        base,-        containers >=0.5 && <0.7,-        random--test-suite doctests-    type:             exitcode-stdio-1.0-    main-is:          doctests.hs-    hs-source-dirs:   test-    default-language: Haskell2010-    build-depends:-        base,-        doctest >=0.15 && <0.21-    if impl(ghc >= 8.2) && impl(ghc < 8.10)-        build-depends:-            mwc-random >=0.13 && <0.16,-            primitive >=0.6 && <0.8,-            random,-            stm,-            unliftio >=0.2 && <0.3,-            vector >= 0.10 && <0.14--test-suite spec-    type:             exitcode-stdio-1.0-    main-is:          Spec.hs-    hs-source-dirs:   test-    other-modules:-        Spec.Range-        Spec.Run-        Spec.Stateful--    default-language: Haskell2010-    ghc-options:      -Wall-    build-depends:-        base,-        bytestring,-        random,-        smallcheck >=1.2 && <1.3,-        stm,-        tasty >=1.0 && <1.5,-        tasty-smallcheck >=0.8 && <0.9,-        tasty-hunit >=0.10 && <0.11,-        transformers---- Note. Fails when compiled with coverage:--- https://github.com/haskell/random/issues/107-test-suite spec-inspection-    type:             exitcode-stdio-1.0-    main-is:          Spec.hs-    hs-source-dirs:   test-inspection-    build-depends:--    default-language: Haskell2010-    ghc-options:      -Wall-    build-depends:-        base,-        random,-        tasty >=1.0 && <1.5-    if impl(ghc >= 8.0)-        build-depends:-            tasty-inspection-testing-        other-modules:-            Spec.Inspection--benchmark legacy-bench-    type:             exitcode-stdio-1.0-    main-is:          SimpleRNGBench.hs-    hs-source-dirs:   bench-legacy-    other-modules:    BinSearch-    default-language: Haskell2010-    ghc-options:-        -Wall -O2 -threaded -rtsopts -with-rtsopts=-N-    if impl(ghc >= 8.0)-        ghc-options:-            -Wno-deprecations--    build-depends:-        base,-        random,-        rdtsc,-        split >=0.2 && <0.3,-        time >=1.4 && <1.13--benchmark bench-    type:             exitcode-stdio-1.0-    main-is:          Main.hs-    hs-source-dirs:   bench-    default-language: Haskell2010-    ghc-options:      -Wall -O2-    build-depends:-        base,-        mtl,-        primitive >= 0.7.1,-        random,-        splitmix >=0.1 && <0.2,-        tasty-bench+cabal-version:      >=1.10
+name:               random
+version:            1.2.1.1
+x-revision: 1
+license:            BSD3
+license-file:       LICENSE
+maintainer:         core-libraries-committee@haskell.org
+bug-reports:        https://github.com/haskell/random/issues
+synopsis:           Pseudo-random number generation
+description:
+    This package provides basic pseudo-random number generation, including the
+    ability to split random number generators.
+    .
+    == "System.Random": pure pseudo-random number interface
+    .
+    In pure code, use 'System.Random.uniform' and 'System.Random.uniformR' from
+    "System.Random" to generate pseudo-random numbers with a pure pseudo-random
+    number generator like 'System.Random.StdGen'.
+    .
+    As an example, here is how you can simulate rolls of a six-sided die using
+    'System.Random.uniformR':
+    .
+    >>> let roll = uniformR (1, 6)        :: RandomGen g => g -> (Word, g)
+    >>> let rolls = unfoldr (Just . roll) :: RandomGen g => g -> [Word]
+    >>> let pureGen = mkStdGen 42
+    >>> take 10 (rolls pureGen)           :: [Word]
+    [1,1,3,2,4,5,3,4,6,2]
+    .
+    See "System.Random" for more details.
+    .
+    == "System.Random.Stateful": monadic pseudo-random number interface
+    .
+    In monadic code, use 'System.Random.Stateful.uniformM' and
+    'System.Random.Stateful.uniformRM' from "System.Random.Stateful" to generate
+    pseudo-random numbers with a monadic pseudo-random number generator, or
+    using a monadic adapter.
+    .
+    As an example, here is how you can simulate rolls of a six-sided die using
+    'System.Random.Stateful.uniformRM':
+    .
+    >>> let rollM = uniformRM (1, 6)                 :: StatefulGen g m => g -> m Word
+    >>> let pureGen = mkStdGen 42
+    >>> runStateGen_ pureGen (replicateM 10 . rollM) :: [Word]
+    [1,1,3,2,4,5,3,4,6,2]
+    .
+    The monadic adapter 'System.Random.Stateful.runStateGen_' is used here to lift
+    the pure pseudo-random number generator @pureGen@ into the
+    'System.Random.Stateful.StatefulGen' context.
+    .
+    The monadic interface can also be used with existing monadic pseudo-random
+    number generators. In this example, we use the one provided in the
+    <https://hackage.haskell.org/package/mwc-random mwc-random> package:
+    .
+    >>> import System.Random.MWC as MWC
+    >>> let rollM = uniformRM (1, 6)       :: StatefulGen g m => g -> m Word
+    >>> monadicGen <- MWC.create
+    >>> replicateM 10 (rollM monadicGen) :: IO [Word]
+    [2,3,6,6,4,4,3,1,5,4]
+    .
+    See "System.Random.Stateful" for more details.
+
+category:           System
+build-type:         Simple
+extra-source-files:
+    README.md
+    CHANGELOG.md
+tested-with:         GHC == 7.10.2
+                   , GHC == 7.10.3
+                   , GHC == 8.0.2
+                   , GHC == 8.2.2
+                   , GHC == 8.4.3
+                   , GHC == 8.4.4
+                   , GHC == 8.6.3
+                   , GHC == 8.6.4
+                   , GHC == 8.6.5
+                   , GHC == 8.8.1
+                   , GHC == 8.8.2
+                   , GHC == 8.10.1
+
+source-repository head
+    type:     git
+    location: https://github.com/haskell/random.git
+
+
+library
+    exposed-modules:
+        System.Random
+        System.Random.Internal
+        System.Random.Stateful
+    other-modules:
+        System.Random.GFinite
+
+    hs-source-dirs:   src
+    default-language: Haskell2010
+    ghc-options:
+        -Wall
+    if impl(ghc >= 8.0)
+        ghc-options:
+            -Wincomplete-record-updates -Wincomplete-uni-patterns
+
+    build-depends:
+        base >=4.8 && <5,
+        bytestring >=0.10.4 && <0.13,
+        deepseq >=1.1 && <2,
+        mtl >=2.2 && <2.4,
+        splitmix >=0.1 && <0.2
+    if impl(ghc < 8.0)
+       build-depends:
+           transformers
+
+test-suite legacy-test
+    type:             exitcode-stdio-1.0
+    main-is:          Legacy.hs
+    hs-source-dirs:   test-legacy
+    other-modules:
+        T7936
+        TestRandomIOs
+        TestRandomRs
+        Random1283
+        RangeTest
+
+    default-language: Haskell2010
+    ghc-options:      -with-rtsopts=-M8M
+    if impl(ghc >= 8.0)
+        ghc-options:
+            -Wno-deprecations
+    build-depends:
+        base,
+        containers >=0.5 && <0.7,
+        random
+
+test-suite doctests
+    type:             exitcode-stdio-1.0
+    main-is:          doctests.hs
+    hs-source-dirs:   test
+    default-language: Haskell2010
+    build-depends:
+        base,
+        doctest >=0.15 && <0.21
+    if impl(ghc >= 8.2) && impl(ghc < 8.10)
+        build-depends:
+            mwc-random >=0.13 && <0.16,
+            primitive >=0.6 && <0.8,
+            random,
+            stm,
+            unliftio >=0.2 && <0.3,
+            vector >= 0.10 && <0.14
+
+test-suite spec
+    type:             exitcode-stdio-1.0
+    main-is:          Spec.hs
+    hs-source-dirs:   test
+    other-modules:
+        Spec.Range
+        Spec.Run
+        Spec.Stateful
+
+    default-language: Haskell2010
+    ghc-options:      -Wall
+    build-depends:
+        base,
+        bytestring,
+        random,
+        smallcheck >=1.2 && <1.3,
+        stm,
+        tasty >=1.0 && <1.5,
+        tasty-smallcheck >=0.8 && <0.9,
+        tasty-hunit >=0.10 && <0.11,
+        transformers
+
+-- Note. Fails when compiled with coverage:
+-- https://github.com/haskell/random/issues/107
+test-suite spec-inspection
+    type:             exitcode-stdio-1.0
+    main-is:          Spec.hs
+    hs-source-dirs:   test-inspection
+    build-depends:
+
+    default-language: Haskell2010
+    ghc-options:      -Wall
+    build-depends:
+        base,
+        random,
+        tasty >=1.0 && <1.5
+    if impl(ghc >= 8.0)
+        build-depends:
+            tasty-inspection-testing
+        other-modules:
+            Spec.Inspection
+
+benchmark legacy-bench
+    type:             exitcode-stdio-1.0
+    main-is:          SimpleRNGBench.hs
+    hs-source-dirs:   bench-legacy
+    other-modules:    BinSearch
+    default-language: Haskell2010
+    ghc-options:
+        -Wall -O2 -threaded -rtsopts -with-rtsopts=-N
+    if impl(ghc >= 8.0)
+        ghc-options:
+            -Wno-deprecations
+
+    build-depends:
+        base,
+        random,
+        rdtsc,
+        split >=0.2 && <0.3,
+        time >=1.4 && <1.13
+
+benchmark bench
+    type:             exitcode-stdio-1.0
+    main-is:          Main.hs
+    hs-source-dirs:   bench
+    default-language: Haskell2010
+    ghc-options:      -Wall -O2
+    build-depends:
+        base,
+        mtl,
+        primitive >= 0.7.1,
+        random,
+        splitmix >=0.1 && <0.2,
+        tasty-bench