mirror of
https://github.com/barrucadu/dejafu.git
synced 2024-11-25 01:13:03 +03:00
Fix formatting issues in CHANGELOGs
This commit is contained in:
parent
99b654190d
commit
ee99cbb975
@ -46,7 +46,7 @@ Fixed
|
|||||||
|
|
||||||
|
|
||||||
1.11.0.0 (2020-05-14)
|
1.11.0.0 (2020-05-14)
|
||||||
--------------------
|
---------------------
|
||||||
|
|
||||||
* Git: :tag:`concurrency-1.11.0.0`
|
* Git: :tag:`concurrency-1.11.0.0`
|
||||||
* Hackage: :hackage:`concurrency-1.11.0.0`
|
* Hackage: :hackage:`concurrency-1.11.0.0`
|
||||||
@ -171,10 +171,10 @@ Added
|
|||||||
|
|
||||||
* (:issue:`286`) Copy across additions from the :hackage:`stm` package:
|
* (:issue:`286`) Copy across additions from the :hackage:`stm` package:
|
||||||
|
|
||||||
* ``Control.Concurrent.Classy.STM.TQueue.flushTQueue``
|
* ``Control.Concurrent.Classy.STM.TQueue.flushTQueue``
|
||||||
* ``Control.Concurrent.Classy.STM.TBQueue.flushTBQueue``
|
* ``Control.Concurrent.Classy.STM.TBQueue.flushTBQueue``
|
||||||
* ``Control.Concurrent.Classy.STM.TBQueue.lengthTBQueue``
|
* ``Control.Concurrent.Classy.STM.TBQueue.lengthTBQueue``
|
||||||
* ``Control.Concurrent.Classy.STM.TVar.stateTVar``
|
* ``Control.Concurrent.Classy.STM.TVar.stateTVar``
|
||||||
|
|
||||||
* (:issue:`287`) The ``Control.Concurrent.Classy.STM.TSem`` module.
|
* (:issue:`287`) The ``Control.Concurrent.Classy.STM.TSem`` module.
|
||||||
|
|
||||||
@ -183,10 +183,8 @@ Changed
|
|||||||
|
|
||||||
* (:issue:`286`) Copy across changes from the :hackage:`stm` package:
|
* (:issue:`286`) Copy across changes from the :hackage:`stm` package:
|
||||||
|
|
||||||
* Make definition of ``readTQueue`` consistent with
|
* Make definition of ``readTQueue`` consistent with ``readTBQueue``
|
||||||
``readTBQueue``
|
* Performance improvements to ``peekTQueue`` and ``peekTBQueue``.
|
||||||
|
|
||||||
* Performance improvements to ``peekTQueue`` and ``peekTBQueue``.
|
|
||||||
|
|
||||||
Miscellaneous
|
Miscellaneous
|
||||||
~~~~~~~~~~~~~
|
~~~~~~~~~~~~~
|
||||||
@ -235,9 +233,9 @@ Miscellaneous
|
|||||||
|
|
||||||
* GHC 7.10 support is dropped. Dependency lower bounds are:
|
* GHC 7.10 support is dropped. Dependency lower bounds are:
|
||||||
|
|
||||||
* :hackage:`base`: 4.9
|
* :hackage:`base`: 4.9
|
||||||
* :hackage:`array`: 0.5.1
|
* :hackage:`array`: 0.5.1
|
||||||
* :hackage:`transformers`: 0.5
|
* :hackage:`transformers`: 0.5
|
||||||
|
|
||||||
|
|
||||||
1.4.0.2 (2018-03-11)
|
1.4.0.2 (2018-03-11)
|
||||||
@ -276,8 +274,8 @@ Changed
|
|||||||
* ``Control.Monad.Conc.Class.peekTicket'`` has a more concrete type,
|
* ``Control.Monad.Conc.Class.peekTicket'`` has a more concrete type,
|
||||||
to make deriving newtype instances of ``MonadConc`` possible:
|
to make deriving newtype instances of ``MonadConc`` possible:
|
||||||
|
|
||||||
* Old: ``MonadConc m => proxy m -> Ticket m a -> a``
|
* Old: ``MonadConc m => proxy m -> Ticket m a -> a``
|
||||||
* New: ``MonadConc m => Proxy m -> Ticket m a -> a``
|
* New: ``MonadConc m => Proxy m -> Ticket m a -> a``
|
||||||
|
|
||||||
|
|
||||||
1.3.0.0 - The Bound Thread Release (2017-12-23)
|
1.3.0.0 - The Bound Thread Release (2017-12-23)
|
||||||
@ -294,21 +292,21 @@ Added
|
|||||||
|
|
||||||
* (:pull:`145`) Bound thread variants of the ``withAsync`` functions:
|
* (:pull:`145`) Bound thread variants of the ``withAsync`` functions:
|
||||||
|
|
||||||
* ``Control.Concurrent.Classy.Async.asyncBound``
|
* ``Control.Concurrent.Classy.Async.asyncBound``
|
||||||
* ``Control.Concurrent.Classy.Async.asyncBoundN``
|
* ``Control.Concurrent.Classy.Async.asyncBoundN``
|
||||||
* ``Control.Concurrent.Classy.Async.withAsyncBound``
|
* ``Control.Concurrent.Classy.Async.withAsyncBound``
|
||||||
* ``Control.Concurrent.Classy.Async.withAsyncBoundN``
|
* ``Control.Concurrent.Classy.Async.withAsyncBoundN``
|
||||||
|
|
||||||
* (:pull:`145`) Bound thread functions in ``MonadConc``:
|
* (:pull:`145`) Bound thread functions in ``MonadConc``:
|
||||||
|
|
||||||
* ``Control.Monad.Conc.Class.forkOS``
|
* ``Control.Monad.Conc.Class.forkOS``
|
||||||
* ``Control.Monad.Conc.Class.forkOSN``
|
* ``Control.Monad.Conc.Class.forkOSN``
|
||||||
* ``Control.Monad.Conc.Class.isCurrentThreadBound``
|
* ``Control.Monad.Conc.Class.isCurrentThreadBound``
|
||||||
|
|
||||||
* (:pull:`145`) Helper functions for bound threads:
|
* (:pull:`145`) Helper functions for bound threads:
|
||||||
|
|
||||||
* ``Control.Monad.Conc.Class.runInBoundThread``
|
* ``Control.Monad.Conc.Class.runInBoundThread``
|
||||||
* ``Control.Monad.Conc.Class.runInUnboundThread``
|
* ``Control.Monad.Conc.Class.runInUnboundThread``
|
||||||
|
|
||||||
Changed
|
Changed
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
@ -328,10 +326,10 @@ Added
|
|||||||
|
|
||||||
* (:issue:`148`) Named thread variants of the ``withAsync`` functions:
|
* (:issue:`148`) Named thread variants of the ``withAsync`` functions:
|
||||||
|
|
||||||
* ``Control.Concurrent.Classy.Async.withAsyncN``
|
* ``Control.Concurrent.Classy.Async.withAsyncN``
|
||||||
* ``Control.Concurrent.Classy.Async.withAsyncOnN``
|
* ``Control.Concurrent.Classy.Async.withAsyncOnN``
|
||||||
* ``Control.Concurrent.Classy.Async.withAsyncWithUnmaskN``
|
* ``Control.Concurrent.Classy.Async.withAsyncWithUnmaskN``
|
||||||
* ``Control.Concurrent.Classy.Async.withAsyncOnWithUnmaskN``
|
* ``Control.Concurrent.Classy.Async.withAsyncOnWithUnmaskN``
|
||||||
|
|
||||||
|
|
||||||
1.2.2.0 (2017-11-05)
|
1.2.2.0 (2017-11-05)
|
||||||
@ -345,12 +343,12 @@ Added
|
|||||||
|
|
||||||
* (:issue:`144`) ``IsConc`` and ``IsSTM`` wrapper types:
|
* (:issue:`144`) ``IsConc`` and ``IsSTM`` wrapper types:
|
||||||
|
|
||||||
* ``Control.Monad.Conc.Class.IsConc`` (constructor unexported)
|
* ``Control.Monad.Conc.Class.IsConc`` (constructor unexported)
|
||||||
* ``Control.Monad.Conc.Class.toIsConc``
|
* ``Control.Monad.Conc.Class.toIsConc``
|
||||||
* ``Control.Monad.Conc.Class.fromIsConc``
|
* ``Control.Monad.Conc.Class.fromIsConc``
|
||||||
* ``Control.Monad.STM.Class.IsSTM`` (constructor unexported)
|
* ``Control.Monad.STM.Class.IsSTM`` (constructor unexported)
|
||||||
* ``Control.Monad.STM.Class.toIsSTM``
|
* ``Control.Monad.STM.Class.toIsSTM``
|
||||||
* ``Control.Monad.STM.Class.fromIsSTM``
|
* ``Control.Monad.STM.Class.fromIsSTM``
|
||||||
|
|
||||||
Changed
|
Changed
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
@ -398,10 +396,10 @@ Added
|
|||||||
|
|
||||||
* (:pull:`125`) Named thread variants of the ``async`` functions:
|
* (:pull:`125`) Named thread variants of the ``async`` functions:
|
||||||
|
|
||||||
* ``Control.Concurrent.Classy.Async.asyncN``
|
* ``Control.Concurrent.Classy.Async.asyncN``
|
||||||
* ``Control.Concurrent.Classy.Async.asyncOnN``
|
* ``Control.Concurrent.Classy.Async.asyncOnN``
|
||||||
* ``Control.Concurrent.Classy.Async.asyncWithUnmaskN``
|
* ``Control.Concurrent.Classy.Async.asyncWithUnmaskN``
|
||||||
* ``Control.Concurrent.Classy.Async.asyncOnWithUnmaskN``
|
* ``Control.Concurrent.Classy.Async.asyncOnWithUnmaskN``
|
||||||
|
|
||||||
|
|
||||||
1.2.0.0 (2017-09-16)
|
1.2.0.0 (2017-09-16)
|
||||||
@ -446,12 +444,12 @@ Added
|
|||||||
|
|
||||||
* Missing functions copied from :hackage:`async`:
|
* Missing functions copied from :hackage:`async`:
|
||||||
|
|
||||||
* ``Control.Concurrent.Classy.Async.uninterruptibleCancel``
|
* ``Control.Concurrent.Classy.Async.uninterruptibleCancel``
|
||||||
* ``Control.Concurrent.Classy.Async.replicateConcurrently``
|
* ``Control.Concurrent.Classy.Async.replicateConcurrently``
|
||||||
* ``Control.Concurrent.Classy.Async.concurrently_``
|
* ``Control.Concurrent.Classy.Async.concurrently_``
|
||||||
* ``Control.Concurrent.Classy.Async.mapConcurrently_``
|
* ``Control.Concurrent.Classy.Async.mapConcurrently_``
|
||||||
* ``Control.Concurrent.Classy.Async.forConcurrently_``
|
* ``Control.Concurrent.Classy.Async.forConcurrently_``
|
||||||
* ``Control.Concurrent.Classy.Async.replicateConcurrently_``
|
* ``Control.Concurrent.Classy.Async.replicateConcurrently_``
|
||||||
|
|
||||||
* ``Control.Concurrent.Classy.Async.Concurrently`` has a ``Semigroup``
|
* ``Control.Concurrent.Classy.Async.Concurrently`` has a ``Semigroup``
|
||||||
instance when built with :hackage:`base` >= 4.9.
|
instance when built with :hackage:`base` >= 4.9.
|
||||||
|
@ -139,8 +139,9 @@ Added
|
|||||||
|
|
||||||
* Thread action constructors for the ``MonadConc`` ``getMaskingState``
|
* Thread action constructors for the ``MonadConc`` ``getMaskingState``
|
||||||
function:
|
function:
|
||||||
* ``Test.DejaFu.Types.ThreadAction``, ``GetMaskingState``
|
|
||||||
* ``Test.DejaFu.Types.Lookahead``, ``WillGetMaskingState``
|
* ``Test.DejaFu.Types.ThreadAction``, ``GetMaskingState``
|
||||||
|
* ``Test.DejaFu.Types.Lookahead``, ``WillGetMaskingState``
|
||||||
|
|
||||||
Miscellaneous
|
Miscellaneous
|
||||||
~~~~~~~~~~~~~
|
~~~~~~~~~~~~~
|
||||||
@ -194,50 +195,57 @@ Miscellaneous
|
|||||||
Added
|
Added
|
||||||
~~~~~
|
~~~~~
|
||||||
|
|
||||||
* The ``Test.DejaFu.Types.MonadDejaFu`` typeclass, containing the
|
* The ``Test.DejaFu.Types.MonadDejaFu`` typeclass, containing the primitives
|
||||||
primitives needed to run a concurrent program. There are instances
|
needed to run a concurrent program. There are instances for:
|
||||||
for:
|
|
||||||
* ``IO``, which is probably the ``MonadConc`` instance people used
|
|
||||||
previously, so there is no breaking change there.
|
|
||||||
* ``CatchT (ST t)``, meaning that concurrent programs can be run
|
|
||||||
without ``IO`` once more.
|
|
||||||
|
|
||||||
* Thread action constructors for ``MonadConc``
|
* ``IO``, which is probably the ``MonadConc`` instance people used previously,
|
||||||
``supportsBoundThreads`` function:
|
so there is no breaking change there.
|
||||||
* ``Test.DejaFu.Types.ThreadAction``, ``SupportsBoundThreads``
|
* ``CatchT (ST t)``, meaning that concurrent programs can be run without
|
||||||
* ``Test.DejaFu.Types.Lookahead``, ``WillSupportsBoundThreads``
|
``IO`` once more.
|
||||||
|
|
||||||
|
* Thread action constructors for ``MonadConc`` ``supportsBoundThreads``
|
||||||
|
function:
|
||||||
|
|
||||||
|
* ``Test.DejaFu.Types.ThreadAction``, ``SupportsBoundThreads``
|
||||||
|
* ``Test.DejaFu.Types.Lookahead``, ``WillSupportsBoundThreads``
|
||||||
|
|
||||||
Changed
|
Changed
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
|
|
||||||
* Many functions which had a ``MonadConc`` constraint now have a
|
* Many functions which had a ``MonadConc`` constraint now have a ``MonadDejaFu``
|
||||||
``MonadDejaFu`` constraint:
|
constraint:
|
||||||
* In ``Test.DejaFu``
|
|
||||||
* ``autocheck``
|
* In ``Test.DejaFu``
|
||||||
* ``autocheckWay``
|
|
||||||
* ``autocheckWithSettings``
|
* ``autocheck``
|
||||||
* ``dejafu``
|
* ``autocheckWay``
|
||||||
* ``dejafuWay``
|
* ``autocheckWithSettings``
|
||||||
* ``dejafuWithSettings``
|
* ``dejafu``
|
||||||
* ``dejafus``
|
* ``dejafuWay``
|
||||||
* ``dejafusWay``
|
* ``dejafuWithSettings``
|
||||||
* ``dejafusWithSettings``
|
* ``dejafus``
|
||||||
* ``runTest``
|
* ``dejafusWay``
|
||||||
* ``runTestWay``
|
* ``dejafusWithSettings``
|
||||||
* ``runTestWithSettings``
|
* ``runTest``
|
||||||
* In ``Test.DejaFu.Conc``
|
* ``runTestWay``
|
||||||
* ``runConcurrent``
|
* ``runTestWithSettings``
|
||||||
* ``recordSnapshot``
|
|
||||||
* ``runSnapshot``
|
* In ``Test.DejaFu.Conc``
|
||||||
* In ``Test.DejaFu.SCT``
|
|
||||||
* ``runSCT``
|
* ``runConcurrent``
|
||||||
* ``resultsSet``
|
* ``recordSnapshot``
|
||||||
* ``runSCT'``
|
* ``runSnapshot``
|
||||||
* ``resultsSet'``
|
|
||||||
* ``runSCTWithSettings``
|
* In ``Test.DejaFu.SCT``
|
||||||
* ``resultsSetWithSettings``
|
|
||||||
* ``runSCTWithSettings'``
|
* ``runSCT``
|
||||||
* ``resultsSetWithSettings'``
|
* ``resultsSet``
|
||||||
|
* ``runSCT'``
|
||||||
|
* ``resultsSet'``
|
||||||
|
* ``runSCTWithSettings``
|
||||||
|
* ``resultsSetWithSettings``
|
||||||
|
* ``runSCTWithSettings'``
|
||||||
|
* ``resultsSetWithSettings'``
|
||||||
|
|
||||||
Miscellaneous
|
Miscellaneous
|
||||||
~~~~~~~~~~~~~
|
~~~~~~~~~~~~~
|
||||||
@ -269,26 +277,29 @@ Added
|
|||||||
|
|
||||||
* The ``Program`` types and their constructors (re-exported from
|
* The ``Program`` types and their constructors (re-exported from
|
||||||
``Test.DejaFu``):
|
``Test.DejaFu``):
|
||||||
* ``Test.DejaFu.Conc.Program``
|
|
||||||
* ``Test.DejaFu.Conc.Basic``
|
* ``Test.DejaFu.Conc.Program``
|
||||||
* ``Test.DejaFu.Conc.WithSetup``
|
* ``Test.DejaFu.Conc.Basic``
|
||||||
* ``Test.DejaFu.Conc.WithSetupAndTeardown``
|
* ``Test.DejaFu.Conc.WithSetup``
|
||||||
* ``Test.DejaFu.Conc.withSetup``
|
* ``Test.DejaFu.Conc.WithSetupAndTeardown``
|
||||||
* ``Test.DejaFu.Conc.withTeardown``
|
* ``Test.DejaFu.Conc.withSetup``
|
||||||
* ``Test.DejaFu.Conc.withSetupAndTeardown``
|
* ``Test.DejaFu.Conc.withTeardown``
|
||||||
|
* ``Test.DejaFu.Conc.withSetupAndTeardown``
|
||||||
|
|
||||||
* The ``Invariant`` type and associated functions (re-exported from
|
* The ``Invariant`` type and associated functions (re-exported from
|
||||||
``Test.DejaFu``):
|
``Test.DejaFu``):
|
||||||
* ``Test.DejaFu.Conc.Invariant``
|
|
||||||
* ``Test.DejaFu.Conc.registerInvariant``
|
* ``Test.DejaFu.Conc.Invariant``
|
||||||
* ``Test.DejaFu.Conc.inspectIORef``
|
* ``Test.DejaFu.Conc.registerInvariant``
|
||||||
* ``Test.DejaFu.Conc.inspectMVar``
|
* ``Test.DejaFu.Conc.inspectIORef``
|
||||||
* ``Test.DejaFu.Conc.inspectTVar``
|
* ``Test.DejaFu.Conc.inspectMVar``
|
||||||
|
* ``Test.DejaFu.Conc.inspectTVar``
|
||||||
|
|
||||||
* New snapshotting functions:
|
* New snapshotting functions:
|
||||||
* ``Test.DejaFu.Conc.Snapshot``
|
|
||||||
* ``Test.DejaFu.Conc.recordSnapshot``
|
* ``Test.DejaFu.Conc.Snapshot``
|
||||||
* ``Test.DejaFu.Conc.runSnapshot``
|
* ``Test.DejaFu.Conc.recordSnapshot``
|
||||||
|
* ``Test.DejaFu.Conc.runSnapshot``
|
||||||
|
|
||||||
* ``Test.DejaFu.Settings.llengthBound``, which now applies to all ways
|
* ``Test.DejaFu.Settings.llengthBound``, which now applies to all ways
|
||||||
of testing.
|
of testing.
|
||||||
@ -299,14 +310,15 @@ Added
|
|||||||
* ``Test.DejaFu.runTestWithSettings`` function.
|
* ``Test.DejaFu.runTestWithSettings`` function.
|
||||||
|
|
||||||
* A simplified form of the concurrency state:
|
* A simplified form of the concurrency state:
|
||||||
* ``Test.DejaFu.Types.ConcurrencyState``
|
|
||||||
* ``Test.DejaFu.Types.isBuffered``
|
* ``Test.DejaFu.Types.ConcurrencyState``
|
||||||
* ``Test.DejaFu.Types.numBuffered``
|
* ``Test.DejaFu.Types.isBuffered``
|
||||||
* ``Test.DejaFu.Types.isFull``
|
* ``Test.DejaFu.Types.numBuffered``
|
||||||
* ``Test.DejaFu.Types.canInterrupt``
|
* ``Test.DejaFu.Types.isFull``
|
||||||
* ``Test.DejaFu.Types.canInterruptL``
|
* ``Test.DejaFu.Types.canInterrupt``
|
||||||
* ``Test.DejaFu.Types.isMaskedInterruptible``
|
* ``Test.DejaFu.Types.canInterruptL``
|
||||||
* ``Test.DejaFu.Types.isMaskedUninterruptible``
|
* ``Test.DejaFu.Types.isMaskedInterruptible``
|
||||||
|
* ``Test.DejaFu.Types.isMaskedUninterruptible``
|
||||||
|
|
||||||
Changed
|
Changed
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
@ -318,75 +330,83 @@ Changed
|
|||||||
return a representative trace for each unique condition.
|
return a representative trace for each unique condition.
|
||||||
|
|
||||||
* Functions which took a ``ConcT`` now take a ``Program pty``:
|
* Functions which took a ``ConcT`` now take a ``Program pty``:
|
||||||
* ``Test.DejaFu.autocheck``
|
|
||||||
* ``Test.DejaFu.autocheckWay``
|
* ``Test.DejaFu.autocheck``
|
||||||
* ``Test.DejaFu.autocheckWithSettings``
|
* ``Test.DejaFu.autocheckWay``
|
||||||
* ``Test.DejaFu.dejafu``
|
* ``Test.DejaFu.autocheckWithSettings``
|
||||||
* ``Test.DejaFu.dejafuWay``
|
* ``Test.DejaFu.dejafu``
|
||||||
* ``Test.DejaFu.dejafuWithSettings``
|
* ``Test.DejaFu.dejafuWay``
|
||||||
* ``Test.DejaFu.dejafus``
|
* ``Test.DejaFu.dejafuWithSettings``
|
||||||
* ``Test.DejaFu.dejafusWay``
|
* ``Test.DejaFu.dejafus``
|
||||||
* ``Test.DejaFu.dejafusWithSettings``
|
* ``Test.DejaFu.dejafusWay``
|
||||||
* ``Test.DejaFu.runTest``
|
* ``Test.DejaFu.dejafusWithSettings``
|
||||||
* ``Test.DejaFu.runTestWay``
|
* ``Test.DejaFu.runTest``
|
||||||
* ``Test.DejaFu.runTestWithSettings``
|
* ``Test.DejaFu.runTestWay``
|
||||||
* ``Test.DejaFu.Conc.runConcurrent``
|
* ``Test.DejaFu.runTestWithSettings``
|
||||||
* ``Test.DejaFu.SCT.runSCT``
|
* ``Test.DejaFu.Conc.runConcurrent``
|
||||||
* ``Test.DejaFu.SCT.resultsSet``
|
* ``Test.DejaFu.SCT.runSCT``
|
||||||
* ``Test.DejaFu.SCT.runSCT'``
|
* ``Test.DejaFu.SCT.resultsSet``
|
||||||
* ``Test.DejaFu.SCT.resultsSet'``
|
* ``Test.DejaFu.SCT.runSCT'``
|
||||||
* ``Test.DejaFu.SCT.runSCTWithSettings``
|
* ``Test.DejaFu.SCT.resultsSet'``
|
||||||
* ``Test.DejaFu.SCT.resultsSetWithSettings``
|
* ``Test.DejaFu.SCT.runSCTWithSettings``
|
||||||
* ``Test.DejaFu.SCT.runSCTWithSettings'``
|
* ``Test.DejaFu.SCT.resultsSetWithSettings``
|
||||||
* ``Test.DejaFu.SCT.resultsSetWithSettings'``
|
* ``Test.DejaFu.SCT.runSCTWithSettings'``
|
||||||
|
* ``Test.DejaFu.SCT.resultsSetWithSettings'``
|
||||||
|
|
||||||
* ``Test.DejaFu.Conc.ConcT`` is an alias for ``Program Basic``.
|
* ``Test.DejaFu.Conc.ConcT`` is an alias for ``Program Basic``.
|
||||||
|
|
||||||
* ``Test.DejaFu.Types.Bounds``:
|
* ``Test.DejaFu.Types.Bounds``:
|
||||||
* Removed ``boundLength`` field.
|
|
||||||
|
* Removed ``boundLength`` field.
|
||||||
|
|
||||||
* ``Test.DejaFu.Types.Condition``:
|
* ``Test.DejaFu.Types.Condition``:
|
||||||
* Added ``InvariantFailure`` constructor
|
|
||||||
* Removed ``STMDeadlock`` constructor
|
* Added ``InvariantFailure`` constructor
|
||||||
|
* Removed ``STMDeadlock`` constructor
|
||||||
|
|
||||||
* ``Test.DejaFu.Types.Error``:
|
* ``Test.DejaFu.Types.Error``:
|
||||||
* Removed ``NestedSubconcurrency``, ``MultithreadedSubconcurrency``,
|
|
||||||
and ``LateDontCheck`` constructors.
|
* Removed ``NestedSubconcurrency``, ``MultithreadedSubconcurrency``, and
|
||||||
|
``LateDontCheck`` constructors.
|
||||||
|
|
||||||
* ``Test.DejaFu.Types.Lookahead``:
|
* ``Test.DejaFu.Types.Lookahead``:
|
||||||
* Added ``WillRegisterInvariant`` constructor
|
|
||||||
* Removed ``WillSubconcurrency``, ``WillStopSubconcurrency``, and
|
* Added ``WillRegisterInvariant`` constructor
|
||||||
``WillDontCheck`` constructors
|
* Removed ``WillSubconcurrency``, ``WillStopSubconcurrency``, and
|
||||||
|
``WillDontCheck`` constructors
|
||||||
|
|
||||||
* ``Test.DejaFu.Types.ThreadAction``:
|
* ``Test.DejaFu.Types.ThreadAction``:
|
||||||
* Added ``RegisterInvariant`` constructor
|
|
||||||
* Removed ``Subconcurrency``, ``StopSubconcurrency``, and
|
* Added ``RegisterInvariant`` constructor
|
||||||
``DontCheck`` constructors
|
* Removed ``Subconcurrency``, ``StopSubconcurrency``, and
|
||||||
|
``DontCheck`` constructors
|
||||||
|
|
||||||
Removed
|
Removed
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
|
|
||||||
* The deprecated functions:
|
* The deprecated functions:
|
||||||
* ``Test.DejaFu.dejafuDiscard``
|
|
||||||
* ``Test.DejaFu.SCT.runSCTDiscard``
|
* ``Test.DejaFu.dejafuDiscard``
|
||||||
* ``Test.DejaFu.SCT.runSCTDiscard'``
|
* ``Test.DejaFu.SCT.runSCTDiscard``
|
||||||
* ``Test.DejaFu.SCT.resultsSetDiscard``
|
* ``Test.DejaFu.SCT.runSCTDiscard'``
|
||||||
* ``Test.DejaFu.SCT.resultsSetDiscard'``
|
* ``Test.DejaFu.SCT.resultsSetDiscard``
|
||||||
* ``Test.DejaFu.SCT.sctBound``
|
* ``Test.DejaFu.SCT.resultsSetDiscard'``
|
||||||
* ``Test.DejaFu.SCT.sctBoundDiscard``
|
* ``Test.DejaFu.SCT.sctBound``
|
||||||
* ``Test.DejaFu.SCT.sctUniformRandom``
|
* ``Test.DejaFu.SCT.sctBoundDiscard``
|
||||||
* ``Test.DejaFu.SCT.sctUniformRandomDiscard``
|
* ``Test.DejaFu.SCT.sctUniformRandom``
|
||||||
* ``Test.DejaFu.SCT.sctWeightedRandom``
|
* ``Test.DejaFu.SCT.sctUniformRandomDiscard``
|
||||||
* ``Test.DejaFu.SCT.sctWeightedRandomDiscard``
|
* ``Test.DejaFu.SCT.sctWeightedRandom``
|
||||||
|
* ``Test.DejaFu.SCT.sctWeightedRandomDiscard``
|
||||||
|
|
||||||
* The deprecated type ``Test.DejaFu.Types.Failure``
|
* The deprecated type ``Test.DejaFu.Types.Failure``
|
||||||
|
|
||||||
* Old snapshotting functions:
|
* Old snapshotting functions:
|
||||||
* ``Test.DejaFu.Conc.DCSnapshot``
|
|
||||||
* ``Test.DejaFu.Conc.runForDCSnapshot``
|
* ``Test.DejaFu.Conc.DCSnapshot``
|
||||||
* ``Test.DejaFu.Conc.runWithDCSnapshot``
|
* ``Test.DejaFu.Conc.runForDCSnapshot``
|
||||||
* ``Test.DejaFu.Conc.canDCSnapshot``
|
* ``Test.DejaFu.Conc.runWithDCSnapshot``
|
||||||
* ``Test.DejaFu.Conc.threadsFromDCSnapshot``
|
* ``Test.DejaFu.Conc.canDCSnapshot``
|
||||||
|
* ``Test.DejaFu.Conc.threadsFromDCSnapshot``
|
||||||
|
|
||||||
* ``Test.DejaFu.Conc.dontCheck``
|
* ``Test.DejaFu.Conc.dontCheck``
|
||||||
|
|
||||||
@ -408,8 +428,9 @@ Added
|
|||||||
|
|
||||||
* ``Test.DejaFu.Types.Error`` for internal errors and misuses, with
|
* ``Test.DejaFu.Types.Error`` for internal errors and misuses, with
|
||||||
predicates:
|
predicates:
|
||||||
* ``Test.DejaFu.Types.isSchedulerError``
|
|
||||||
* ``Test.DejaFu.Types.isIncorrectUsage``
|
* ``Test.DejaFu.Types.isSchedulerError``
|
||||||
|
* ``Test.DejaFu.Types.isIncorrectUsage``
|
||||||
|
|
||||||
* Deprecated ``Test.DejaFu.Types.Failure`` type synonym for
|
* Deprecated ``Test.DejaFu.Types.Failure`` type synonym for
|
||||||
``Condition``.
|
``Condition``.
|
||||||
@ -652,9 +673,9 @@ Miscellaneous
|
|||||||
|
|
||||||
* GHC 7.10 support is dropped. Dependency lower bounds are:
|
* GHC 7.10 support is dropped. Dependency lower bounds are:
|
||||||
|
|
||||||
* :hackage:`base`: 4.9
|
* :hackage:`base`: 4.9
|
||||||
* :hackage:`concurrency`: 1.5
|
* :hackage:`concurrency`: 1.5
|
||||||
* :hackage:`transformers`: 0.5
|
* :hackage:`transformers`: 0.5
|
||||||
|
|
||||||
* The upper bound on :hackage:`concurrency` is 1.6.
|
* The upper bound on :hackage:`concurrency` is 1.6.
|
||||||
|
|
||||||
@ -699,8 +720,8 @@ Added
|
|||||||
|
|
||||||
* (:issue:`183`) SCT settings for trace simplification:
|
* (:issue:`183`) SCT settings for trace simplification:
|
||||||
|
|
||||||
* ``Test.DejaFu.Settings.lequality``
|
* ``Test.DejaFu.Settings.lequality``
|
||||||
* ``Test.DejaFu.Settings.lsimplify``
|
* ``Test.DejaFu.Settings.lsimplify``
|
||||||
|
|
||||||
* (:pull:`248`) ``Test.DejaFu.Utils.toTIdTrace`` to extract thread IDs
|
* (:pull:`248`) ``Test.DejaFu.Utils.toTIdTrace`` to extract thread IDs
|
||||||
from a trace.
|
from a trace.
|
||||||
@ -726,23 +747,23 @@ Added
|
|||||||
|
|
||||||
* (:pull:`246`) ``Generic`` instances for:
|
* (:pull:`246`) ``Generic`` instances for:
|
||||||
|
|
||||||
* ``Test.DejaFu.Types.ThreadId``
|
* ``Test.DejaFu.Types.ThreadId``
|
||||||
* ``Test.DejaFu.Types.CRefId``
|
* ``Test.DejaFu.Types.CRefId``
|
||||||
* ``Test.DejaFu.Types.MVarId``
|
* ``Test.DejaFu.Types.MVarId``
|
||||||
* ``Test.DejaFu.Types.TVarId``
|
* ``Test.DejaFu.Types.TVarId``
|
||||||
* ``Test.DejaFu.Types.Id``
|
* ``Test.DejaFu.Types.Id``
|
||||||
* ``Test.DejaFu.Types.ThreadAction``
|
* ``Test.DejaFu.Types.ThreadAction``
|
||||||
* ``Test.DejaFu.Types.Lookahead``
|
* ``Test.DejaFu.Types.Lookahead``
|
||||||
* ``Test.DejaFu.Types.TAction``
|
* ``Test.DejaFu.Types.TAction``
|
||||||
* ``Test.DejaFu.Types.Decision``
|
* ``Test.DejaFu.Types.Decision``
|
||||||
* ``Test.DejaFu.Types.Failure``
|
* ``Test.DejaFu.Types.Failure``
|
||||||
* ``Test.DejaFu.Types.Bounds``
|
* ``Test.DejaFu.Types.Bounds``
|
||||||
* ``Test.DejaFu.Types.PreemptionBound``
|
* ``Test.DejaFu.Types.PreemptionBound``
|
||||||
* ``Test.DejaFu.Types.FairBound``
|
* ``Test.DejaFu.Types.FairBound``
|
||||||
* ``Test.DejaFu.Types.LengthBound``
|
* ``Test.DejaFu.Types.LengthBound``
|
||||||
* ``Test.DejaFu.Types.Discard``
|
* ``Test.DejaFu.Types.Discard``
|
||||||
* ``Test.DejaFu.Types.MemType``
|
* ``Test.DejaFu.Types.MemType``
|
||||||
* ``Test.DejaFu.Types.MonadFailException``
|
* ``Test.DejaFu.Types.MonadFailException``
|
||||||
|
|
||||||
* (:pull:`246`) ``NFData`` instance for
|
* (:pull:`246`) ``NFData`` instance for
|
||||||
``Test.DejaFu.Types.MonadFailException``
|
``Test.DejaFu.Types.MonadFailException``
|
||||||
@ -817,49 +838,55 @@ Added
|
|||||||
|
|
||||||
* (:pull:`238`) A record-based approach to SCT configuration:
|
* (:pull:`238`) A record-based approach to SCT configuration:
|
||||||
|
|
||||||
* ``Test.DejaFu.Settings``
|
* ``Test.DejaFu.Settings`` (re-exported from ``Test.Dejafu`` and
|
||||||
(re-exported from ``Test.Dejafu`` and ``Test.DejaFu.SCT``)
|
``Test.DejaFu.SCT``)
|
||||||
* ``Test.DejaFu.Settings.Settings``
|
* ``Test.DejaFu.Settings.Settings``
|
||||||
* ``Test.DejaFu.Settings.defaultSettings``
|
* ``Test.DejaFu.Settings.defaultSettings``
|
||||||
* ``Test.DejaFu.Settings.fromWayAndMemType``
|
* ``Test.DejaFu.Settings.fromWayAndMemType``
|
||||||
* Lenses:
|
|
||||||
* ``Test.DejaFu.Settings.lway``
|
* Lenses:
|
||||||
* ``Test.DejaFu.Settings.lmemtype``
|
|
||||||
* ``Test.DejaFu.Settings.ldiscard``
|
* ``Test.DejaFu.Settings.lway``
|
||||||
* ``Test.DejaFu.Settings.learlyExit``
|
* ``Test.DejaFu.Settings.lmemtype``
|
||||||
* ``Test.DejaFu.Settings.ldebugShow``
|
* ``Test.DejaFu.Settings.ldiscard``
|
||||||
* ``Test.DejaFu.Settings.ldebugPrint``
|
* ``Test.DejaFu.Settings.learlyExit``
|
||||||
* Lens helpers:
|
* ``Test.DejaFu.Settings.ldebugShow``
|
||||||
* ``Test.DejaFu.Settings.get``
|
* ``Test.DejaFu.Settings.ldebugPrint``
|
||||||
* ``Test.DejaFu.Settings.set``
|
|
||||||
* Runners:
|
* Lens helpers:
|
||||||
* ``Test.DejaFu.SCT.runSCTWithSettings``
|
|
||||||
* ``Test.DejaFu.SCT.runSCTWithSettings'``
|
* ``Test.DejaFu.Settings.get``
|
||||||
* ``Test.DejaFu.SCT.resultsSetWithSettings``
|
* ``Test.DejaFu.Settings.set``
|
||||||
* ``Test.DejaFu.SCT.resultsSetWithSettings'``
|
|
||||||
|
* Runners:
|
||||||
|
|
||||||
|
* ``Test.DejaFu.SCT.runSCTWithSettings``
|
||||||
|
* ``Test.DejaFu.SCT.runSCTWithSettings'``
|
||||||
|
* ``Test.DejaFu.SCT.resultsSetWithSettings``
|
||||||
|
* ``Test.DejaFu.SCT.resultsSetWithSettings'``
|
||||||
|
|
||||||
* (:pull:`238`) Settings-based test functions:
|
* (:pull:`238`) Settings-based test functions:
|
||||||
|
|
||||||
* ``Test.DejaFu.autocheckWithSettings``
|
* ``Test.DejaFu.autocheckWithSettings``
|
||||||
* ``Test.DejaFu.dejafuWithSettings``
|
* ``Test.DejaFu.dejafuWithSettings``
|
||||||
* ``Test.DejaFu.dejafusWithSettings``
|
* ``Test.DejaFu.dejafusWithSettings``
|
||||||
* ``Test.DejaFu.runTestWithSettings``
|
* ``Test.DejaFu.runTestWithSettings``
|
||||||
|
|
||||||
Deprecated
|
Deprecated
|
||||||
~~~~~~~~~~
|
~~~~~~~~~~
|
||||||
|
|
||||||
* (:pull:`238`) SCT function variants:
|
* (:pull:`238`) SCT function variants:
|
||||||
|
|
||||||
* ``Test.DejaFu.SCT.runSCTDiscard``
|
* ``Test.DejaFu.SCT.runSCTDiscard``
|
||||||
* ``Test.DejaFu.SCT.resultSetDiscard``
|
* ``Test.DejaFu.SCT.resultSetDiscard``
|
||||||
* ``Test.DejaFu.SCT.runSCTDiscard'``
|
* ``Test.DejaFu.SCT.runSCTDiscard'``
|
||||||
* ``Test.DejaFu.SCT.resultSetDiscard'``
|
* ``Test.DejaFu.SCT.resultSetDiscard'``
|
||||||
* ``Test.DejaFu.SCT.sctBound``
|
* ``Test.DejaFu.SCT.sctBound``
|
||||||
* ``Test.DejaFu.SCT.sctBoundDiscard``
|
* ``Test.DejaFu.SCT.sctBoundDiscard``
|
||||||
* ``Test.DejaFu.SCT.sctUniformRandom``
|
* ``Test.DejaFu.SCT.sctUniformRandom``
|
||||||
* ``Test.DejaFu.SCT.sctUniformRandomDiscard``
|
* ``Test.DejaFu.SCT.sctUniformRandomDiscard``
|
||||||
* ``Test.DejaFu.SCT.sctWeightedRandom``
|
* ``Test.DejaFu.SCT.sctWeightedRandom``
|
||||||
* ``Test.DejaFu.SCT.sctWeightedRandomDiscard``
|
* ``Test.DejaFu.SCT.sctWeightedRandomDiscard``
|
||||||
|
|
||||||
* (:pull:`238`) The ``Test.DejaFu.Defaults`` module. Import
|
* (:pull:`238`) The ``Test.DejaFu.Defaults`` module. Import
|
||||||
``Test.DejaFu.Settings`` instead.
|
``Test.DejaFu.Settings`` instead.
|
||||||
@ -915,18 +942,18 @@ Added
|
|||||||
* (:pull:`219`) The testing-only ``Test.DejaFu.Conc.dontCheck``
|
* (:pull:`219`) The testing-only ``Test.DejaFu.Conc.dontCheck``
|
||||||
function, and associated definitions:
|
function, and associated definitions:
|
||||||
|
|
||||||
* ``Test.DejaFu.Types.DontCheck``
|
* ``Test.DejaFu.Types.DontCheck``
|
||||||
* ``Test.DejaFu.Types.WillDontCheck``
|
* ``Test.DejaFu.Types.WillDontCheck``
|
||||||
* ``Test.DejaFu.Types.IllegalDontCheck``
|
* ``Test.DejaFu.Types.IllegalDontCheck``
|
||||||
* ``Test.DejaFu.Types.isIllegalDontCheck``
|
* ``Test.DejaFu.Types.isIllegalDontCheck``
|
||||||
|
|
||||||
* (:pull:`219`) A snapshotting approach based on
|
* (:pull:`219`) A snapshotting approach based on
|
||||||
``Test.DejaFu.Conc.dontCheck``:
|
``Test.DejaFu.Conc.dontCheck``:
|
||||||
|
|
||||||
* ``Test.DejaFu.Conc.runForDCSnapshot``
|
* ``Test.DejaFu.Conc.runForDCSnapshot``
|
||||||
* ``Test.DejaFu.Conc.runWithDCSnapshot``
|
* ``Test.DejaFu.Conc.runWithDCSnapshot``
|
||||||
* ``Test.DejaFu.Conc.canDCSnapshot``
|
* ``Test.DejaFu.Conc.canDCSnapshot``
|
||||||
* ``Test.DejaFu.Conc.threadsFromDCSnapshot``
|
* ``Test.DejaFu.Conc.threadsFromDCSnapshot``
|
||||||
|
|
||||||
Changed
|
Changed
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
@ -1011,10 +1038,10 @@ Added
|
|||||||
|
|
||||||
* (:pull:`145`) Thread action and lookahead values for bound threads:
|
* (:pull:`145`) Thread action and lookahead values for bound threads:
|
||||||
|
|
||||||
* ``Test.DejaFu.Types.ForkOS``
|
* ``Test.DejaFu.Types.ForkOS``
|
||||||
* ``Test.DejaFu.Types.IsCurrentThreadBound``
|
* ``Test.DejaFu.Types.IsCurrentThreadBound``
|
||||||
* ``Test.DejaFu.Types.WillForkOS``
|
* ``Test.DejaFu.Types.WillForkOS``
|
||||||
* ``Test.DejaFu.Types.WillIsCurrentThreadBound``
|
* ``Test.DejaFu.Types.WillIsCurrentThreadBound``
|
||||||
|
|
||||||
* (:issue:`155`) ``Test.DejaFu.Types`` and ``Test.DejaFu.Utils``
|
* (:issue:`155`) ``Test.DejaFu.Types`` and ``Test.DejaFu.Utils``
|
||||||
modules, each containing some of what was in ``Test.DejaFu.Common``.
|
modules, each containing some of what was in ``Test.DejaFu.Common``.
|
||||||
@ -1064,15 +1091,15 @@ Removed
|
|||||||
|
|
||||||
* The ``IO`` specific testing functions:
|
* The ``IO`` specific testing functions:
|
||||||
|
|
||||||
* ``Test.DejaFu.autocheckIO``
|
* ``Test.DejaFu.autocheckIO``
|
||||||
* ``Test.DejaFu.dejafuIO``
|
* ``Test.DejaFu.dejafuIO``
|
||||||
* ``Test.DejaFu.dejafusIO``
|
* ``Test.DejaFu.dejafusIO``
|
||||||
* ``Test.DejaFu.autocheckWayIO``
|
* ``Test.DejaFu.autocheckWayIO``
|
||||||
* ``Test.DejaFu.dejafuWayIO``
|
* ``Test.DejaFu.dejafuWayIO``
|
||||||
* ``Test.DejaFu.dejafusWayIO``
|
* ``Test.DejaFu.dejafusWayIO``
|
||||||
* ``Test.DejaFu.dejafuDiscardIO``
|
* ``Test.DejaFu.dejafuDiscardIO``
|
||||||
* ``Test.DejaFu.runTestM``
|
* ``Test.DejaFu.runTestM``
|
||||||
* ``Test.DejaFu.runTestWayM``
|
* ``Test.DejaFu.runTestWayM``
|
||||||
|
|
||||||
* The ``Test.DejaFu.Conc.ConcST`` type alias.
|
* The ``Test.DejaFu.Conc.ConcST`` type alias.
|
||||||
|
|
||||||
@ -1214,16 +1241,16 @@ Added
|
|||||||
|
|
||||||
* Failure predicates (also exported from ``Test.DejaFu``):
|
* Failure predicates (also exported from ``Test.DejaFu``):
|
||||||
|
|
||||||
* ``Test.DejaFu.Common.isAbort``
|
* ``Test.DejaFu.Common.isAbort``
|
||||||
* ``Test.DejaFu.Common.isDeadlock``
|
* ``Test.DejaFu.Common.isDeadlock``
|
||||||
* ``Test.DejaFu.Common.isIllegalSubconcurrency``
|
* ``Test.DejaFu.Common.isIllegalSubconcurrency``
|
||||||
* ``Test.DejaFu.Common.isInternalError``
|
* ``Test.DejaFu.Common.isInternalError``
|
||||||
* ``Test.DejaFu.Common.isUncaughtException``
|
* ``Test.DejaFu.Common.isUncaughtException``
|
||||||
|
|
||||||
* Thread action and lookahead values for ``threadDelay``:
|
* Thread action and lookahead values for ``threadDelay``:
|
||||||
|
|
||||||
* ``Test.DejaFu.Common.ThreadDelay``
|
* ``Test.DejaFu.Common.ThreadDelay``
|
||||||
* ``Test.DejaFu.Common.WillThreadDelay``
|
* ``Test.DejaFu.Common.WillThreadDelay``
|
||||||
|
|
||||||
Changed
|
Changed
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
@ -1350,8 +1377,8 @@ Performance
|
|||||||
* (:issue:`64`) Greatly reduce memory usage in systematic testing when
|
* (:issue:`64`) Greatly reduce memory usage in systematic testing when
|
||||||
discarding traces by using an alternative data structure.
|
discarding traces by using an alternative data structure.
|
||||||
|
|
||||||
* Old: ``O(max trace length * number of executions)``
|
* Old: ``O(max trace length * number of executions)``
|
||||||
* New: ``O(max trace length * number of traces kept)``
|
* New: ``O(max trace length * number of traces kept)``
|
||||||
|
|
||||||
|
|
||||||
0.7.1.0 - The Discard Release (2017-08-10)
|
0.7.1.0 - The Discard Release (2017-08-10)
|
||||||
@ -1365,15 +1392,15 @@ Added
|
|||||||
|
|
||||||
* (:issue:`90`) A way to selectively discard results or traces:
|
* (:issue:`90`) A way to selectively discard results or traces:
|
||||||
|
|
||||||
* Type: ``Test.DejaFu.SCT.Discard``
|
* Type: ``Test.DejaFu.SCT.Discard``
|
||||||
* Functions: ``Test.DejaFu.SCT.runSCTDiscard``,
|
* Functions: ``Test.DejaFu.SCT.runSCTDiscard``, ``resultsSetDiscard``,
|
||||||
``resultsSetDiscard``, ``sctBoundDiscard``,
|
``sctBoundDiscard``, ``sctUniformRandomDiscard``, and
|
||||||
``sctUniformRandomDiscard``, and ``sctWeightedRandomDiscard``.
|
``sctWeightedRandomDiscard``.
|
||||||
|
|
||||||
* (:issue:`90`) Discarding variants of the testing functions:
|
* (:issue:`90`) Discarding variants of the testing functions:
|
||||||
|
|
||||||
* ``Test.DejaFu.dejafuDiscard``
|
* ``Test.DejaFu.dejafuDiscard``
|
||||||
* ``Test.DejaFu.dejafuDiscardIO``
|
* ``Test.DejaFu.dejafuDiscardIO``
|
||||||
|
|
||||||
* (:issue:`90`) ``Test.DejaFu.Defaults.defaultDiscarder``.
|
* (:issue:`90`) ``Test.DejaFu.Defaults.defaultDiscarder``.
|
||||||
|
|
||||||
@ -1439,13 +1466,12 @@ Added
|
|||||||
* Smart constructors for ``Test.DejaFu.SCT.Way`` (also re-exported
|
* Smart constructors for ``Test.DejaFu.SCT.Way`` (also re-exported
|
||||||
from ``Test.DejaFu``):
|
from ``Test.DejaFu``):
|
||||||
|
|
||||||
* ``Test.DejaFu.SCT.systematically``, like the old
|
* ``Test.DejaFu.SCT.systematically``, like the old ``Systematically``.
|
||||||
``Systematically``.
|
* ``Test.DejaFu.SCT.randomly``, like the old ``Randomly``.
|
||||||
* ``Test.DejaFu.SCT.randomly``, like the old ``Randomly``.
|
* ``Test.DejaFu.SCT.uniformly``, a new uniform (as opposed to weighted) random
|
||||||
* ``Test.DejaFu.SCT.uniformly``, a new uniform (as opposed to
|
scheduler.
|
||||||
weighted) random scheduler.
|
* ``Test.DejaFu.SCT.swarmy``, like the old ``Randomly`` but which can use the
|
||||||
* ``Test.DejaFu.SCT.swarmy``, like the old ``Randomly`` but which
|
same weights for multiple executions.
|
||||||
can use the same weights for multiple executions.
|
|
||||||
|
|
||||||
Changed
|
Changed
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
@ -1463,8 +1489,8 @@ Removed
|
|||||||
* The ``Test.DejaFu.SCT.Way`` type is now abstract, so its
|
* The ``Test.DejaFu.SCT.Way`` type is now abstract, so its
|
||||||
constructors are no longer exported:
|
constructors are no longer exported:
|
||||||
|
|
||||||
* ``Test.DejaFu.SCT.Systematically``
|
* ``Test.DejaFu.SCT.Systematically``
|
||||||
* ``Test.DejaFu.SCT.Randomly``
|
* ``Test.DejaFu.SCT.Randomly``
|
||||||
|
|
||||||
* The ``Test.DejaFu.SCT.sctPreBound``, ``sctFairBound``, and
|
* The ``Test.DejaFu.SCT.sctPreBound``, ``sctFairBound``, and
|
||||||
``sctLengthBound`` functions.
|
``sctLengthBound`` functions.
|
||||||
@ -1571,25 +1597,25 @@ Added
|
|||||||
|
|
||||||
* ``NFData`` instances for:
|
* ``NFData`` instances for:
|
||||||
|
|
||||||
* ``Test.DejaFu.Result``
|
* ``Test.DejaFu.Result``
|
||||||
* ``Test.DejaFu.Common.ThreadId``
|
* ``Test.DejaFu.Common.ThreadId``
|
||||||
* ``Test.DejaFu.Common.CRefId``
|
* ``Test.DejaFu.Common.CRefId``
|
||||||
* ``Test.DejaFu.Common.MVarId``
|
* ``Test.DejaFu.Common.MVarId``
|
||||||
* ``Test.DejaFu.Common.TVarId``
|
* ``Test.DejaFu.Common.TVarId``
|
||||||
* ``Test.DejaFu.Common.IdSource``
|
* ``Test.DejaFu.Common.IdSource``
|
||||||
* ``Test.DejaFu.Common.ThreadAction``
|
* ``Test.DejaFu.Common.ThreadAction``
|
||||||
* ``Test.DejaFu.Common.Lookahead``
|
* ``Test.DejaFu.Common.Lookahead``
|
||||||
* ``Test.DejaFu.Common.ActionType``
|
* ``Test.DejaFu.Common.ActionType``
|
||||||
* ``Test.DejaFu.Common.TAction``
|
* ``Test.DejaFu.Common.TAction``
|
||||||
* ``Test.DejaFu.Common.Decision``
|
* ``Test.DejaFu.Common.Decision``
|
||||||
* ``Test.DejaFu.Common.Failure``
|
* ``Test.DejaFu.Common.Failure``
|
||||||
* ``Test.DejaFu.Common.MemType``
|
* ``Test.DejaFu.Common.MemType``
|
||||||
* ``Test.DejaFu.SCT.Bounds``
|
* ``Test.DejaFu.SCT.Bounds``
|
||||||
* ``Test.DejaFu.SCT.PreemptionBound``
|
* ``Test.DejaFu.SCT.PreemptionBound``
|
||||||
* ``Test.DejaFu.SCT.FairBound``
|
* ``Test.DejaFu.SCT.FairBound``
|
||||||
* ``Test.DejaFu.SCT.LengthBound``
|
* ``Test.DejaFu.SCT.LengthBound``
|
||||||
* ``Test.DejaFu.SCT.Way``
|
* ``Test.DejaFu.SCT.Way``
|
||||||
* ``Test.DejaFu.STM.Result``
|
* ``Test.DejaFu.STM.Result``
|
||||||
|
|
||||||
* ``Eq``, ``Ord``, and ``Show`` instances for
|
* ``Eq``, ``Ord``, and ``Show`` instances for
|
||||||
``Test.DejaFu.Common.IdSource``.
|
``Test.DejaFu.Common.IdSource``.
|
||||||
@ -1661,8 +1687,8 @@ Added
|
|||||||
|
|
||||||
* Thread action and lookahead values for ``tryReadMVar``:
|
* Thread action and lookahead values for ``tryReadMVar``:
|
||||||
|
|
||||||
* ``Test.DejaFu.Common.TryReadMVar``
|
* ``Test.DejaFu.Common.TryReadMVar``
|
||||||
* ``Test.DejaFu.Common.WillTryReadMVar``
|
* ``Test.DejaFu.Common.WillTryReadMVar``
|
||||||
|
|
||||||
* The testing-only ``Test.DejaFu.Conc.subconcurrency`` function.
|
* The testing-only ``Test.DejaFu.Conc.subconcurrency`` function.
|
||||||
|
|
||||||
|
@ -90,43 +90,47 @@ Added
|
|||||||
~~~~~
|
~~~~~
|
||||||
|
|
||||||
* Re-exports for the ``Program`` types and their constructors:
|
* Re-exports for the ``Program`` types and their constructors:
|
||||||
* ``Test.HUnit.DejaFu.Program``
|
|
||||||
* ``Test.HUnit.DejaFu.Basic``
|
* ``Test.HUnit.DejaFu.Program``
|
||||||
* ``Test.HUnit.DejaFu.ConcT``
|
* ``Test.HUnit.DejaFu.Basic``
|
||||||
* ``Test.HUnit.DejaFu.ConcIO``
|
* ``Test.HUnit.DejaFu.ConcT``
|
||||||
* ``Test.HUnit.DejaFu.WithSetup``
|
* ``Test.HUnit.DejaFu.ConcIO``
|
||||||
* ``Test.HUnit.DejaFu.WithSetupAndTeardown``
|
* ``Test.HUnit.DejaFu.WithSetup``
|
||||||
* ``Test.HUnit.DejaFu.withSetup``
|
* ``Test.HUnit.DejaFu.WithSetupAndTeardown``
|
||||||
* ``Test.HUnit.DejaFu.withTeardown``
|
* ``Test.HUnit.DejaFu.withSetup``
|
||||||
* ``Test.HUnit.DejaFu.withSetupAndTeardown``
|
* ``Test.HUnit.DejaFu.withTeardown``
|
||||||
|
* ``Test.HUnit.DejaFu.withSetupAndTeardown``
|
||||||
|
|
||||||
* Re-exports for the ``Invariant`` type and its functions:
|
* Re-exports for the ``Invariant`` type and its functions:
|
||||||
* ``Test.HUnit.DejaFu.Invariant``
|
|
||||||
* ``Test.HUnit.DejaFu.registerInvariant``
|
* ``Test.HUnit.DejaFu.Invariant``
|
||||||
* ``Test.HUnit.DejaFu.inspectIORef``
|
* ``Test.HUnit.DejaFu.registerInvariant``
|
||||||
* ``Test.HUnit.DejaFu.inspectMVar``
|
* ``Test.HUnit.DejaFu.inspectIORef``
|
||||||
* ``Test.HUnit.DejaFu.inspectTVar``
|
* ``Test.HUnit.DejaFu.inspectMVar``
|
||||||
|
* ``Test.HUnit.DejaFu.inspectTVar``
|
||||||
|
|
||||||
Changed
|
Changed
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
|
|
||||||
* Functions which took a ``ConcIO`` now take a ``Program pty IO``:
|
* Functions which took a ``ConcIO`` now take a ``Program pty IO``:
|
||||||
* ``Test.HUnit.DejaFu.testAuto``
|
|
||||||
* ``Test.HUnit.DejaFu.testAutoWay``
|
* ``Test.HUnit.DejaFu.testAuto``
|
||||||
* ``Test.HUnit.DejaFu.testAutoWithSettings``
|
* ``Test.HUnit.DejaFu.testAutoWay``
|
||||||
* ``Test.HUnit.DejaFu.testDejafu``
|
* ``Test.HUnit.DejaFu.testAutoWithSettings``
|
||||||
* ``Test.HUnit.DejaFu.testDejafuWay``
|
* ``Test.HUnit.DejaFu.testDejafu``
|
||||||
* ``Test.HUnit.DejaFu.testDejafuWithSettings``
|
* ``Test.HUnit.DejaFu.testDejafuWay``
|
||||||
* ``Test.HUnit.DejaFu.testDejafus``
|
* ``Test.HUnit.DejaFu.testDejafuWithSettings``
|
||||||
* ``Test.HUnit.DejaFu.testDejafusWay``
|
* ``Test.HUnit.DejaFu.testDejafus``
|
||||||
* ``Test.HUnit.DejaFu.testDejafusWithSettings``
|
* ``Test.HUnit.DejaFu.testDejafusWay``
|
||||||
|
* ``Test.HUnit.DejaFu.testDejafusWithSettings``
|
||||||
|
|
||||||
Removed
|
Removed
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
|
|
||||||
* The deprecated functions:
|
* The deprecated functions:
|
||||||
* ``Test.HUnit.DejaFu.testDejafuDiscard``
|
|
||||||
* ``Test.HUnit.DejaFu.testDejafusDiscard``
|
* ``Test.HUnit.DejaFu.testDejafuDiscard``
|
||||||
|
* ``Test.HUnit.DejaFu.testDejafusDiscard``
|
||||||
|
|
||||||
Miscellaneous
|
Miscellaneous
|
||||||
~~~~~~~~~~~~~
|
~~~~~~~~~~~~~
|
||||||
@ -235,9 +239,9 @@ Miscellaneous
|
|||||||
|
|
||||||
* GHC 7.10 support is dropped. Dependency lower bounds are:
|
* GHC 7.10 support is dropped. Dependency lower bounds are:
|
||||||
|
|
||||||
* :hackage:`base`: 4.9
|
* :hackage:`base`: 4.9
|
||||||
* :hackage:`dejafu`: 1.5
|
* :hackage:`dejafu`: 1.5
|
||||||
* :hackage:`HUnit`: 1.3.1
|
* :hackage:`HUnit`: 1.3.1
|
||||||
|
|
||||||
* The upper bound on :hackage:`dejafu` is 1.6.
|
* The upper bound on :hackage:`dejafu` is 1.6.
|
||||||
|
|
||||||
@ -289,9 +293,9 @@ Added
|
|||||||
|
|
||||||
* (:pull:`238`) Settings-based test functions:
|
* (:pull:`238`) Settings-based test functions:
|
||||||
|
|
||||||
* ``Test.HUnit.DejaFu.testAutoWithSettings``
|
* ``Test.HUnit.DejaFu.testAutoWithSettings``
|
||||||
* ``Test.HUnit.DejaFu.testDejafuWithSettings``
|
* ``Test.HUnit.DejaFu.testDejafuWithSettings``
|
||||||
* ``Test.HUnit.DejaFu.testDejafusWithSettings``
|
* ``Test.HUnit.DejaFu.testDejafusWithSettings``
|
||||||
|
|
||||||
* (:pull:`238`) Re-export of ``Test.DejaFu.Settings``.
|
* (:pull:`238`) Re-export of ``Test.DejaFu.Settings``.
|
||||||
|
|
||||||
|
@ -158,43 +158,47 @@ Added
|
|||||||
~~~~~
|
~~~~~
|
||||||
|
|
||||||
* Re-exports for the ``Program`` types and their constructors:
|
* Re-exports for the ``Program`` types and their constructors:
|
||||||
* ``Test.Tasty.DejaFu.Program``
|
|
||||||
* ``Test.Tasty.DejaFu.Basic``
|
* ``Test.Tasty.DejaFu.Program``
|
||||||
* ``Test.Tasty.DejaFu.ConcT``
|
* ``Test.Tasty.DejaFu.Basic``
|
||||||
* ``Test.Tasty.DejaFu.ConcIO``
|
* ``Test.Tasty.DejaFu.ConcT``
|
||||||
* ``Test.Tasty.DejaFu.WithSetup``
|
* ``Test.Tasty.DejaFu.ConcIO``
|
||||||
* ``Test.Tasty.DejaFu.WithSetupAndTeardown``
|
* ``Test.Tasty.DejaFu.WithSetup``
|
||||||
* ``Test.Tasty.DejaFu.withSetup``
|
* ``Test.Tasty.DejaFu.WithSetupAndTeardown``
|
||||||
* ``Test.Tasty.DejaFu.withTeardown``
|
* ``Test.Tasty.DejaFu.withSetup``
|
||||||
* ``Test.Tasty.DejaFu.withSetupAndTeardown``
|
* ``Test.Tasty.DejaFu.withTeardown``
|
||||||
|
* ``Test.Tasty.DejaFu.withSetupAndTeardown``
|
||||||
|
|
||||||
* Re-exports for the ``Invariant`` type and its functions:
|
* Re-exports for the ``Invariant`` type and its functions:
|
||||||
* ``Test.Tasty.DejaFu.Invariant``
|
|
||||||
* ``Test.Tasty.DejaFu.registerInvariant``
|
* ``Test.Tasty.DejaFu.Invariant``
|
||||||
* ``Test.Tasty.DejaFu.inspectIORef``
|
* ``Test.Tasty.DejaFu.registerInvariant``
|
||||||
* ``Test.Tasty.DejaFu.inspectMVar``
|
* ``Test.Tasty.DejaFu.inspectIORef``
|
||||||
* ``Test.Tasty.DejaFu.inspectTVar``
|
* ``Test.Tasty.DejaFu.inspectMVar``
|
||||||
|
* ``Test.Tasty.DejaFu.inspectTVar``
|
||||||
|
|
||||||
Changed
|
Changed
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
|
|
||||||
* Functions which took a ``ConcIO`` now take a ``Program pty IO``:
|
* Functions which took a ``ConcIO`` now take a ``Program pty IO``:
|
||||||
* ``Test.Tasty.DejaFu.testAuto``
|
|
||||||
* ``Test.Tasty.DejaFu.testAutoWay``
|
* ``Test.Tasty.DejaFu.testAuto``
|
||||||
* ``Test.Tasty.DejaFu.testAutoWithSettings``
|
* ``Test.Tasty.DejaFu.testAutoWay``
|
||||||
* ``Test.Tasty.DejaFu.testDejafu``
|
* ``Test.Tasty.DejaFu.testAutoWithSettings``
|
||||||
* ``Test.Tasty.DejaFu.testDejafuWay``
|
* ``Test.Tasty.DejaFu.testDejafu``
|
||||||
* ``Test.Tasty.DejaFu.testDejafuWithSettings``
|
* ``Test.Tasty.DejaFu.testDejafuWay``
|
||||||
* ``Test.Tasty.DejaFu.testDejafus``
|
* ``Test.Tasty.DejaFu.testDejafuWithSettings``
|
||||||
* ``Test.Tasty.DejaFu.testDejafusWay``
|
* ``Test.Tasty.DejaFu.testDejafus``
|
||||||
* ``Test.Tasty.DejaFu.testDejafusWithSettings``
|
* ``Test.Tasty.DejaFu.testDejafusWay``
|
||||||
|
* ``Test.Tasty.DejaFu.testDejafusWithSettings``
|
||||||
|
|
||||||
Removed
|
Removed
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
|
|
||||||
* The deprecated functions:
|
* The deprecated functions:
|
||||||
* ``Test.Tasty.DejaFu.testDejafuDiscard``
|
|
||||||
* ``Test.Tasty.DejaFu.testDejafusDiscard``
|
* ``Test.Tasty.DejaFu.testDejafuDiscard``
|
||||||
|
* ``Test.Tasty.DejaFu.testDejafusDiscard``
|
||||||
|
|
||||||
Miscellaneous
|
Miscellaneous
|
||||||
~~~~~~~~~~~~~
|
~~~~~~~~~~~~~
|
||||||
@ -327,8 +331,8 @@ Miscellaneous
|
|||||||
|
|
||||||
* GHC 7.10 support is dropped. Dependency lower bounds are:
|
* GHC 7.10 support is dropped. Dependency lower bounds are:
|
||||||
|
|
||||||
* :hackage:`base`: 4.9
|
* :hackage:`base`: 4.9
|
||||||
* :hackage:`dejafu`: 1.5
|
* :hackage:`dejafu`: 1.5
|
||||||
|
|
||||||
* The upper bound on :hackage:`dejafu` is 1.6.
|
* The upper bound on :hackage:`dejafu` is 1.6.
|
||||||
|
|
||||||
@ -368,9 +372,9 @@ Added
|
|||||||
|
|
||||||
* (:pull:`238`) Settings-based test functions:
|
* (:pull:`238`) Settings-based test functions:
|
||||||
|
|
||||||
* ``Test.Tasty.DejaFu.testAutoWithSettings``
|
* ``Test.Tasty.DejaFu.testAutoWithSettings``
|
||||||
* ``Test.Tasty.DejaFu.testDejafuWithSettings``
|
* ``Test.Tasty.DejaFu.testDejafuWithSettings``
|
||||||
* ``Test.Tasty.DejaFu.testDejafusWithSettings``
|
* ``Test.Tasty.DejaFu.testDejafusWithSettings``
|
||||||
|
|
||||||
* (:pull:`238`) Re-export of ``Test.DejaFu.Settings``.
|
* (:pull:`238`) Re-export of ``Test.DejaFu.Settings``.
|
||||||
|
|
||||||
@ -611,8 +615,8 @@ Added
|
|||||||
* Orphan ``IsOption`` instance for ``Test.DejaFu.SCT.Way``.
|
* Orphan ``IsOption`` instance for ``Test.DejaFu.SCT.Way``.
|
||||||
Command-line parameters are:
|
Command-line parameters are:
|
||||||
|
|
||||||
* "systematically": systematic testing with the default bounds
|
* "systematically": systematic testing with the default bounds
|
||||||
* "randomly": 100 executions with a fixed random seed
|
* "randomly": 100 executions with a fixed random seed
|
||||||
|
|
||||||
Changed
|
Changed
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
@ -670,9 +674,9 @@ Added
|
|||||||
* Orphan ``IsOption`` instances for ``Test.DejaFu.SCT.Bounds`` and
|
* Orphan ``IsOption`` instances for ``Test.DejaFu.SCT.Bounds`` and
|
||||||
``MemType``. Command-line parameters are:
|
``MemType``. Command-line parameters are:
|
||||||
|
|
||||||
* "sc": sequential consistency
|
* "sc": sequential consistency
|
||||||
* "tso": total store order
|
* "tso": total store order
|
||||||
* "pso": partial store order
|
* "pso": partial store order
|
||||||
|
|
||||||
* Re-export ``Test.DejaFu.SCT.Bounds``.
|
* Re-export ``Test.DejaFu.SCT.Bounds``.
|
||||||
|
|
||||||
@ -687,8 +691,8 @@ Miscellaneous
|
|||||||
|
|
||||||
* Git: :tag:`tasty-dejafu-0.1.1.0`
|
* Git: :tag:`tasty-dejafu-0.1.1.0`
|
||||||
|
|
||||||
**Note:** this was misnumbered (it should have been 0.2.1.0) *and* was
|
**Note:** this was misnumbered (it should have been 0.2.1.0) *and* was never
|
||||||
never pushed to Hackage, whoops!
|
pushed to Hackage, whoops!
|
||||||
|
|
||||||
Miscellaneous
|
Miscellaneous
|
||||||
~~~~~~~~~~~~~
|
~~~~~~~~~~~~~
|
||||||
|
Loading…
Reference in New Issue
Block a user