You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# 1.3.0
* Improve floating point value generation and avoid degenerate cases: [#172](haskell/random#172)
* Add `Uniform` instance for `Maybe` and `Either`: [#167](haskell/random#167)
* Add `Seed`, `SeedGen`, `seedSize`, `seedSizeProxy`, `mkSeed` and `unSeed`:
[#162](haskell/random#162)
* Add `mkSeedFromByteString`, `unSeedToByteString`, `withSeed`, `withSeedM`, `withSeedFile`,
`seedGenTypeName`, `nonEmptyToSeed`, `nonEmptyFromSeed`, `withSeedM`, `withSeedMutableGen` and `withSeedMutableGen_`
* Add `SplitGen` and `splitGen`: [#160](haskell/random#160)
* Add `unifromShuffleList` and `unifromShuffleListM`: [#140](haskell/random#140)
* Add `uniformWordR`: [#140](haskell/random#140)
* Add `mkStdGen64`: [#155](haskell/random#155)
* Add `uniformListRM`, `uniformList`, `uniformListR`, `uniforms` and `uniformRs`:
[#154](haskell/random#154)
* Add compatibility with recently added `ByteArray` to `base`:
[#153](haskell/random#153)
* Switch to using `ByteArray` for type class implementation instead of
`ShortByteString`
* Add `unsafeUniformFillMutableByteArray` to `RandomGen` and a helper function
`defaultUnsafeUniformFillMutableByteArray` that makes implementation
for most instances easier.
* Add `uniformByteArray`, `uniformByteString` and `uniformFillMutableByteArray`
* Deprecate `genByteString` in favor of `uniformByteString`
* Add `uniformByteArrayM` to `StatefulGen`
* Add `uniformByteStringM` and `uniformShortByteStringM`
* Deprecate `System.Random.Stateful.uniformShortByteString` in favor of `uniformShortByteStringM` for
consistent naming and a future plan of removing it from `StatefulGen`
type class
* Add a pure `System.Random.uniformShortByteString` generating function.
* Deprecate `genShortByteString` in favor of `System.Random.uniformShortByteString`
* Expose a helper function `fillByteArrayST`, that can be used for
defining implementation for `uniformByteArrayM`
* Deprecate `genShortByteStringST` and `genShortByteStringIO` in favor of `fillByteArrayST`
* Improve `FrozenGen` interface: [#149](haskell/random#149)
* Move `thawGen` from `FreezeGen` into the new `ThawGen` type class. Fixes an issue with
an unlawful instance of `StateGen` for `FreezeGen`.
* Add `modifyGen` and `overwriteGen` to the `FrozenGen` type class
* Switch `splitGenM` to use `SplitGen` and `FrozenGen` instead of deprecated `RandomGenM`
* Add `splitMutableGenM`
* Switch `randomM` and `randomRM` to use `FrozenGen` instead of `RandomGenM`
* Deprecate `RandomGenM` in favor of a more powerful `FrozenGen`
* Add `isInRangeOrd` and `isInRangeEnum` that can be used for implementing `isInRange`:
[#148](haskell/random#148)
* Add `isInRange` to `UniformRange`: [#78](haskell/random#78)
* Add default implementation for `uniformRM` using `Generics`:
[#92](haskell/random#92)
0 commit comments