Changelog for stm-2.5.3.1
Changelog for stm package
2.5.3.1 November 2023
- Drop unused testcase inadvertently introduced in previous reversion
2.5.3.0 November 2023
- Revert array-based reimplementation of
TBQueuedue to #76
2.5.2.1 September 2023
- Eliminate reliance on undefined CPP behavior (#75)
2.5.2.0 September 2023
- Fix strictness of
stateTVar(#30) - Rewrite
TBQueueto use a more-efficient array-based representation (#65) newTBQueue 0now fails as one would expect (#28)- Add
capacityTBQueue(#61) - Add
MArray TArray e IOinstance - Use unlifted
Array#forTArray(#66)
2.5.1.0 Aug 2022
- Teach
flushTBQueueto only flush queue when necessary - Introduce
Control.Concurrent.STM.TMVar.writeTMVar - Add
SemigroupandMonoidinstances forSTM
2.5.0.2 Dec 2021
-
Fix non-exhaustive patterns warning (#49)
-
Document particulars of effect-rollback of
Control.Monad.STM.throwSTM(#32)
2.5.0.1 May 2020
- Optimise implementation of
peekTQueueandpeekTBQueueto reduce probability of transaction conflicts.
2.5.0.0 Sep 2018
-
Removed
alwaysSucceedsandalways, GHC's invariant checking primitives. (GHC #14324) -
Add
lengthTBQueuetoControl.Concurrent.STM.TBQueue(gh-9) -
Add
stateTVar :: TVar s -> (s -> (a, s)) -> STM acombinator (gh-14) -
Switched
newTBQueueandnewTBQueueIOto acceptNaturalas size (gh-17) -
Switched
signalTSemNandnewTSemto acceptNaturalandIntegerrespectively (gh-17)
2.4.5.1 Sep 2018
-
Fix incorrect bookkeeping of write capacity in
flushTBQueue(gh-9) -
Avoid redundant
writeTVars influshTQueueto avoid unnecessarily invalidating other transactions (gh-6)
2.4.5.0 Feb 2018
-
Fix space leak in
TBQueue(gh-2, GHC#14494) -
Make
signalTSemresilient againstIntoverflows (gh-4) -
Make definition of
readTQueueconsistent withreadTBQueue(gh-3, GHC#9539) -
Add
flushTQueuetoControl.Concurrent.STM.TQueue(gh-1) -
Add
flushTBQueuetoControl.Concurrent.STM.TBQueue(gh-1) -
Add
signalTSemNoperation (gh-5)
2.4.4.1 Dec 2015
-
Add support for
base-4.9.0.0 -
Drop support for GHC 6.12 /
base-4.2
2.4.4 Dec 2014
-
Add support for
base-4.8.0.0 -
Tighten Safe Haskell bounds
-
Add
mkWeakTMVartoControl.Concurrent.STM.TMVar -
Add
@since-annotations
2.4.3 Mar 2014
-
Update behaviour of
newBroadcastTChanIOto matchnewBroadcastTChanin causing an error on a read from the broadcast channel -
Add
mkWeakTVar -
Add
isFullTBQueue -
Fix
TChancreated vianewBroadcastTChanIOto throw same exception on areadTChanas when created vianewBroadcastTChan -
Update to Cabal 1.10 format
2.4.2 Nov 2012
-
Add
Control.Concurrent.STM.TSem(transactional semaphore) -
Add Applicative/Alternative instances of STM for GHC <7.0
-
Throw proper exception when
readTChancalled on a broadcastTChan
2.4 Jul 2012
-
Add
Control.Concurrent.STM.TQueue(a fasterTChan) -
Add
Control.Concurrent.STM.TBQueue(a bounded channel based onTQueue) -
Add
Eqinstance forTChan -
Add
newBroadcastTChanandnewBroadcastTChanIO -
Some performance improvements for
TChan -
Add
cloneTChan