BSD-3-Clause licensed
This version can be pinned in stack with:stm-2.5.1.0@sha256:2728bfed3864c4bd77cb65ffa23be35c30124fd0054b9e103460a8986aac0ea0,2308
Module documentation for 2.5.1.0
- Control
- Control.Concurrent
- Control.Monad
Used by 148 packages in
lts-22.25(full list with versions):
acid-state,
Agda,
alarmclock,
alternators,
amqp,
arbor-lru-cache,
async,
async-pool,
async-refresh,
blank-canvas,
box,
brick,
cabal-install,
cache,
chan,
classy-prelude,
co-log-concurrent,
concurrency,
concurrent-extra,
concurrent-output,
conduit-extra,
core-program,
core-telemetry,
data-ref,
di-core,
di-df1,
di-monad,
effectful,
every,
exceptions,
fast-logger,
flush-queue,
fold-debounce,
ghc,
ghc-lib,
haskeline,
hasql-pool,
hedgehog,
hedis,
HMock,
and many more
2.5.1.0 Aug 2022
- Teach
flushTBQueue
to only flush queue when necessary
- Introduce
Control.Concurrent.STM.TMVar.writeTMVar
- Add
Semigroup
and Monoid
instances for STM
2.5.0.2 Dec 2021
2.5.0.1 May 2020
- Optimise implementation of
peekTQueue
and peekTBQueue
to reduce
probability of transaction conflicts.
2.5.0.0 Sep 2018
-
Removed alwaysSucceeds
and always
, GHC’s invariant checking primitives. (GHC #14324)
-
Add lengthTBQueue
to Control.Concurrent.STM.TBQueue
(gh-9)
-
Add stateTVar :: TVar s -> (s -> (a, s)) -> STM a
combinator (gh-14)
-
Switched newTBQueue
and newTBQueueIO
to accept Natural
as size (gh-17)
-
Switched signalTSemN
and newTSem
to accept Natural
and Integer
respectively (gh-17)
2.4.5.1 Sep 2018
2.4.5.0 Feb 2018
-
Fix space leak in TBQueue
(gh-2, GHC#14494)
-
Make signalTSem
resilient against Int
overflows (gh-4)
-
Make definition of readTQueue
consistent with readTBQueue
(gh-3, GHC#9539)
-
Add flushTQueue
to Control.Concurrent.STM.TQueue
(gh-1)
-
Add flushTBQueue
to Control.Concurrent.STM.TBQueue
(gh-1)
-
Add signalTSemN
operation (gh-5)
2.4.4.1 Dec 2015
2.4.4 Dec 2014
-
Add support for base-4.8.0.0
-
Tighten Safe Haskell bounds
-
Add mkWeakTMVar
to Control.Concurrent.STM.TMVar
-
Add @since
-annotations
2.4.3 Mar 2014
-
Update behaviour of newBroadcastTChanIO
to match
newBroadcastTChan
in causing an error on a read from the
broadcast channel
-
Add mkWeakTVar
-
Add isFullTBQueue
-
Fix TChan
created via newBroadcastTChanIO
to throw same
exception on a readTChan
as when created via newBroadcastTChan
-
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 readTChan
called on a broadcast TChan
2.4 Jul 2012
-
Add Control.Concurrent.STM.TQueue
(a faster TChan
)
-
Add Control.Concurrent.STM.TBQueue
(a bounded channel based on TQueue
)
-
Add Eq
instance for TChan
-
Add newBroadcastTChan
and newBroadcastTChanIO
-
Some performance improvements for TChan
-
Add cloneTChan