packages feed

io-classes 1.10.1.0 → 1.11.0.0

raw patch · 9 files changed

+38/−46 lines, 9 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

CHANGELOG.md view
@@ -1,10 +1,14 @@ # Revsion history of io-classes -## next+## 1.11.0.0  ### Breaking changes +- Removed the deprecated `withLiftST` (deprecated since `io-classes-1.5.0.0`).+ ### Non-breaking changes++* Repository moved to https://github.com/IntersectMBO/io-sim  ## 1.10.1.0 
NOTICE view
@@ -1,4 +1,4 @@-Copyright 2019-2024 Input Output Global Inc (IOG)+Copyright 2019-2026 Input Output Global Inc (IOG), 2026 Intersect     Licensed under the Apache License, Version 2.0 (the "License");    you may not use this file except in compliance with the License.
README.md view
@@ -12,19 +12,19 @@  We provide also non-standard extensions of this API in **sublibraries**: -* [`io-classes:strict-stm`](https://input-output-hk.github.io/io-sim/io-classes/strict-stm/index.html) strict `TVar`'s, and other mutable `STM` variables, with+* [`io-classes:strict-stm`](https://intersectmbo.github.io/io-sim/io-classes/strict-stm/index.html) strict `TVar`'s, and other mutable `STM` variables, with   support of the [`nothunks`] library;-* [`io-classes:strict-mvar`](https://input-output-hk.github.io/io-sim/io-classes/strict-mvar/index.html): strict `MVar`s-* [`io-classes:si-timers`](https://input-output-hk.github.io/io-sim/io-classes/si-timers/index.html): timers api:+* [`io-classes:strict-mvar`](https://intersectmbo.github.io/io-sim/io-classes/strict-mvar/index.html): strict `MVar`s+* [`io-classes:si-timers`](https://intersectmbo.github.io/io-sim/io-classes/si-timers/index.html): timers api:      - 32-bit safe API using `DiffTime` measured in seconds (rather than time in       microseconds represented as `Int` as in `base`)     - cancellable timeouts. -* [`io-classes:mtl`](https://input-output-hk.github.io/io-sim/io-classes/mtl/index.html):+* [`io-classes:mtl`](https://intersectmbo.github.io/io-sim/io-classes/mtl/index.html):   MTL instances. -[`io-classes:strict-stm`](https://input-output-hk.github.io/io-sim/io-classes/strict-stm/index.html)+[`io-classes:strict-stm`](https://intersectmbo.github.io/io-sim/io-classes/strict-stm/index.html) and [`nothunks`] were successfully used in a large code base to eliminate space leaks and keep that property over long development cycles.@@ -80,7 +80,7 @@ ## Software Transactional Memory API  We provide two interfaces to `stm` API: lazy, included in [`io-classes`][lazy-stm]; and-strict one provided by [`io-classes:strict-stm`](https://input-output-hk.github.io/io-sim/io-classes/strict-stm/index.html).+strict one provided by [`io-classes:strict-stm`](https://intersectmbo.github.io/io-sim/io-classes/strict-stm/index.html).  ## Threads API @@ -164,27 +164,27 @@ [`base`]: https://hackage.haskell.org/package/base [`exceptions`]: https://hackage.haskell.org/package/exceptions [`io-sim`]: https://hackage.haskell.org/package/io-sim-[io-classes:strict-mvar]: https://input-output-hk.github.io/io-sim/io-classes/strict-mvar/index.html-[io-classes:mtl]: https://input-output-hk.github.io/io-sim/io-classes/mtl/index.html+[io-classes:strict-mvar]: https://intersectmbo.github.io/io-sim/io-classes/strict-mvar/index.html+[io-classes:mtl]: https://intersectmbo.github.io/io-sim/io-classes/mtl/index.html [`stm`]: https://hackage.haskell.org/package/stm-[lazy-stm]: https://input-output-hk.github.io/io-sim/io-classes/Control-Concurrent-Class-MonadSTM.html+[lazy-stm]: https://intersectmbo.github.io/io-sim/io-classes/Control-Concurrent-Class-MonadSTM.html [`threadDelay`]: https://hackage.haskell.org/package/io-classes/docs/Control-Monad-Class-MonadTimer.html#v:threadDelay [`time`]: https://hackage.haskell.org/package/time-[contributing]: https://www.github.com/input-output-hk/io-sim/tree/master/CONTRIBUTING.md+[contributing]: https://www.github.com/intersectmbo/io-sim/tree/master/CONTRIBUTING.md [`nothunks`]: https://hackage.haskell.org/package/nothunks [labelThread-base]: https://hackage.haskell.org/package/base-4.17.0.0/docs/GHC-Conc-Sync.html#v:labelThread [io-deadlock]: https://hackage.haskell.org/package/base-4.19.0.0/docs/Control-Exception.html#t:Deadlock -[MonadEventlog]: https://input-output-hk.github.io/io-sim/io-classes/Control-Monad-Class-MonadEventlog.html#t:MonadEventlog+[MonadEventlog]: https://intersectmbo.github.io/io-sim/io-classes/Control-Monad-Class-MonadEventlog.html#t:MonadEventlog [Debug.Trace]: https://hackage.haskell.org/package/base/docs/Debug-Trace.html-[MonadAsync]: https://input-output-hk.github.io/io-sim/io-classes/Control-Monad-Class-MonadAsync.html#t:MonadAsync-[MonadFork]: https://input-output-hk.github.io/io-sim/io-classes/Control-Monad-Class-MonadFork.html#t:MonadFork-[MonadMVar]: https://input-output-hk.github.io/io-sim/io-classes/Control-Concurrent-Class-MonadMVar.html#t:MonadMVar-[`registerDelayCancellable`]: http://input-output-hk.github.io/io-sim/io-classes/si-timers/Control-Monad-Class-MonadTimer-SI.html#v:registerDelayCancellable-[strict-mvar]: https://input-output-hk.github.io/io-sim/io-classes/strict-mvar/Control-Concurrent-Class-MonadMVar-Strict.html-[MonadST]: https://input-output-hk.github.io/io-sim/io-classes/Control-Monad-Class-MonadST.html#t:MonadST-[MonadSay]: https://input-output-hk.github.io/io-sim/io-classes/Control-Monad-Class-MonadSay.html#t:MonadSay-[io-classes-haddocks]: https://input-output-hk.github.io/io-sim+[MonadAsync]: https://intersectmbo.github.io/io-sim/io-classes/Control-Monad-Class-MonadAsync.html#t:MonadAsync+[MonadFork]: https://intersectmbo.github.io/io-sim/io-classes/Control-Monad-Class-MonadFork.html#t:MonadFork+[MonadMVar]: https://intersectmbo.github.io/io-sim/io-classes/Control-Concurrent-Class-MonadMVar.html#t:MonadMVar+[`registerDelayCancellable`]: http://intersectmbo.github.io/io-sim/io-classes/si-timers/Control-Monad-Class-MonadTimer-SI.html#v:registerDelayCancellable+[strict-mvar]: https://intersectmbo.github.io/io-sim/io-classes/strict-mvar/Control-Concurrent-Class-MonadMVar-Strict.html+[MonadST]: https://intersectmbo.github.io/io-sim/io-classes/Control-Monad-Class-MonadST.html#t:MonadST+[MonadSay]: https://intersectmbo.github.io/io-sim/io-classes/Control-Monad-Class-MonadSay.html#t:MonadSay+[io-classes-haddocks]: https://intersectmbo.github.io/io-sim  [bob-conf]: https://youtu.be/uedUGeWN4ZM [zuriHac-2022]: https://youtu.be/tKIYQgJnGkA
io-classes.cabal view
@@ -1,6 +1,6 @@ cabal-version:       3.4 name:                io-classes-version:             1.10.1.0+version:             1.11.0.0 synopsis:            Type classes for concurrency with STM, ST and timing description:   IO Monad class hierarchy compatible with:@@ -27,22 +27,22 @@    = Documentation   Haddocks of all public sublibraries are published-  [here](https://input-output-hk.github.io/io-sim).+  [here](https://intersectmbo.github.io/io-sim).  license:             Apache-2.0 license-files:       LICENSE NOTICE-copyright:           2019-2025 Input Output Global Inc (IOG)+copyright:           2019-2026 Input Output Global Inc (IOG), 2026 Intersect author:              Alexander Vieth, Duncan Coutts, Marcin Szamotulski, Neil Davies, Thomas Winant maintainer:          Duncan Coutts duncan@well-typed.com, Marcin Szamotulski coot@coot.me category:            Control build-type:          Simple extra-doc-files:     CHANGELOG.md README.md strict-stm/README.md strict-mvar/README.md-bug-reports:         https://github.com/input-output-hk/io-sim/issues+bug-reports:         https://github.com/intersectmbo/io-sim/issues tested-with:         GHC == { 9.6, 9.8, 9.10, 9.12, 9.14 }  source-repository head   type:     git-  location: https://github.com/input-output-hk/io-sim+  location: https://github.com/intersectmbo/io-sim   subdir:   io-classes  flag asserts
io-classes/Control/Monad/Class/MonadEventlog.hs view
@@ -1,4 +1,9 @@-module Control.Monad.Class.MonadEventlog (MonadEventlog (..)) where+module Control.Monad.Class.MonadEventlog+  ( MonadEventlog (..)+    -- Re-exports+  , IO.traceEvent+  , IO.traceMarker+  ) where  import Control.Monad.Reader 
io-classes/Control/Monad/Class/MonadST.hs view
@@ -37,21 +37,12 @@   -- | @since 1.4.1.0   stToIO :: ST (PrimState m) a -> m a -  -- | Deprecated. Use 'stToIO' instead.-  withLiftST :: (forall s. (forall a. ST s a -> m a) -> b) -> b-  withLiftST = \k -> k stToIO--{-# DEPRECATED withLiftST "Use the simpler 'stToIO' instead." #-}- instance MonadST IO where   stToIO = stToPrim  instance MonadST (ST s) where   stToIO = stToPrim-  withLiftST = \f -> f id  instance (MonadST m, PrimMonad m) => MonadST (ReaderT r m) where   stToIO :: ST (PrimState m) a -> ReaderT r m a   stToIO f = lift (stToPrim f)--  withLiftST f = withLiftST $ \g -> f (lift . g)
mtl/Control/Monad/Class/MonadST/Trans.hs view
@@ -17,32 +17,24 @@  instance MonadST m => MonadST (ContT r m) where   stToIO = lift . stToIO-  withLiftST f = withLiftST $ \g -> f (lift . g)  instance MonadST m => MonadST (ExceptT e m) where   stToIO = lift . stToIO-  withLiftST f = withLiftST $ \g -> f (lift . g)  instance (Monoid w, MonadST m) => MonadST (Lazy.RWST r w s m) where   stToIO = lift . stToIO-  withLiftST f = withLiftST $ \g -> f (lift . g)  instance (Monoid w, MonadST m) => MonadST (Strict.RWST r w s m) where   stToIO = lift . stToIO-  withLiftST f = withLiftST $ \g -> f (lift . g)  instance MonadST m => MonadST (Lazy.StateT s m) where   stToIO = lift . stToIO-  withLiftST f = withLiftST $ \g -> f (lift . g)  instance MonadST m => MonadST (Strict.StateT s m) where   stToIO = lift . stToIO-  withLiftST f = withLiftST $ \g -> f (lift . g)  instance (Monoid w, MonadST m) => MonadST (Lazy.WriterT w m) where   stToIO = lift . stToIO-  withLiftST f = withLiftST $ \g -> f (lift . g)  instance (Monoid w, MonadST m) => MonadST (Strict.WriterT w m) where   stToIO = lift . stToIO-  withLiftST f = withLiftST $ \g -> f (lift . g)
strict-mvar/README.md view
@@ -4,4 +4,4 @@ variables (`MVar`). It builds on top of `io-classes:io-classes`, and thus it provides the interface for `MVar`s implementations from both [base](https://hackage.haskell.org/package/base-4.17.0.0/docs/Control-Concurrent-MVar.html)-and [io-sim](https://github.com/input-output-hk/io-sim).+and [io-sim](https://github.com/intersectmbo/io-sim).
strict-stm/README.md view
@@ -11,7 +11,7 @@ [`nothunks`] library it was successfully used to eliminate and keep a large system ([`cardano-node`]) space leak free. -[`cardano-node`]: https://www.github.com/input-output-hk/cardano-node+[`cardano-node`]: https://www.github.com/intersectmbo/cardano-node [`io-classes:io-classes`]: https://hackage.haskell.org/package/io-classes [`io-sim`]: https://hackage.haskell.org/package/io-sim [`nothunks`]: https://hackage.haskell.org/package/nothunks