packages feed

atelier-core 0.8.0.0 → 0.8.1.0

raw patch · 3 files changed

+21/−2 lines, 3 files

Files

CHANGELOG.md view
@@ -7,6 +7,14 @@  ## [Unreleased] +## [0.8.1.0] - 2026-10-23++### Added++- `Atelier.Effects.Console.runConsoleOut` and `Atelier.Effects.Console.Output`:+  to run `Console` effects against specific well-known handlers, like `stdout`+  and `stderr`.+ ## [0.8.0.0] - 2026-10-20  ### Added
atelier-core.cabal view
@@ -5,7 +5,7 @@ -- see: https://github.com/sol/hpack  name:           atelier-core-version:        0.8.0.0+version:        0.8.1.0 synopsis:       Foundational Effectful-based effects and utilities description:    Core effects and utilities for effect-based applications, built on Effectful — part of the atelier toolkit. category:       Control
src/Atelier/Effects/Console.hs view
@@ -6,6 +6,7 @@ module Atelier.Effects.Console     ( -- * Effect       Console+    , Output (..)     , putStrLn     , putStr     , putTextLn@@ -15,6 +16,7 @@     , runConsoleHandle     , runConsole     , runConsoleToList+    , runConsoleOut     ) where @@ -22,7 +24,7 @@ import Effectful.Dispatch.Dynamic (interpret_, reinterpret_) import Effectful.State.Static.Shared (modify, runState) import Effectful.TH (makeEffect)-import System.IO (Handle, stdout)+import System.IO (Handle, stderr, stdout) import Prelude  import Data.ByteString.Char8 qualified as B8@@ -34,6 +36,9 @@     PutStr :: ByteString -> Console m ()  +data Output = Stdout | Stderr++ makeEffect ''Console  @@ -68,3 +73,9 @@ runConsoleToList :: Eff (Console : es) a -> Eff es (a, [ByteString]) runConsoleToList = reinterpret_ (fmap (second reverse) . runState []) \case     PutStr s -> modify (s :)+++runConsoleOut :: (IOE :> es) => Output -> Eff (Console : es) a -> Eff es a+runConsoleOut = \case+    Stderr -> runConsoleHandle stderr+    Stdout -> runConsoleHandle stdout