packages feed

bluefin 0.4.0.0 → 0.4.0.1

raw patch · 5 files changed

+26/−2 lines, 5 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Bluefin.CloneableHandle: class () => Generic1 (f :: k -> Type)
+ Bluefin.CloneableHandle: class Generic1 (f :: k -> Type)
- Bluefin.CloneableHandle: newtype () => GenericCloneableHandle (h :: k -> Type) (e :: k)
+ Bluefin.CloneableHandle: newtype GenericCloneableHandle (h :: k -> Type) (e :: k)
- Bluefin.Compound: class () => Generic a
+ Bluefin.Compound: class Generic a
- Bluefin.Compound: class () => Handle (h :: Effects -> Type)
+ Bluefin.Compound: class Handle (h :: Effects -> Type)
- Bluefin.Compound: class () => OneWayCoercible (a :: k) (b :: k)
+ Bluefin.Compound: class OneWayCoercible (a :: k) (b :: k)
- Bluefin.Compound: data () => Compound (e1 :: Effects -> Type) (e2 :: Effects -> Type) (ss :: Effects)
+ Bluefin.Compound: data Compound (e1 :: Effects -> Type) (e2 :: Effects -> Type) (ss :: Effects)
- Bluefin.Compound: data () => HandleD (h :: Effects -> Type)
+ Bluefin.Compound: data HandleD (h :: Effects -> Type)
- Bluefin.Compound: newtype () => OneWayCoercibleHandle (a :: k -> Type) (es :: k)
+ Bluefin.Compound: newtype OneWayCoercibleHandle (a :: k -> Type) (es :: k)
- Bluefin.Coroutine: data () => Coroutine a b (e :: Effects)
+ Bluefin.Coroutine: data Coroutine a b (e :: Effects)
- Bluefin.DslBuilder: data () => DslBuilder (h :: Effects -> Type) r
+ Bluefin.DslBuilder: data DslBuilder (h :: Effects -> Type) r
- Bluefin.Eff: class () => (es1 :: Effects) :> (es2 :: Effects)
+ Bluefin.Eff: class (es1 :: Effects) :> (es2 :: Effects)
- Bluefin.Eff: data () => Eff (es :: Effects) a
+ Bluefin.Eff: data Eff (es :: Effects) a
- Bluefin.Eff: data () => Effects
+ Bluefin.Eff: data Effects
- Bluefin.Exception: data () => Exception exn (e :: Effects)
+ Bluefin.Exception: data Exception exn (e :: Effects)
- Bluefin.Exception.GeneralBracket: data () => ( (h1 :: Effects -> Type) :~> (h2 :: Effects -> Type) ) (es :: Effects)
+ Bluefin.Exception.GeneralBracket: data ( (h1 :: Effects -> Type) :~> (h2 :: Effects -> Type) ) (es :: Effects)
- Bluefin.Exception.GeneralBracket: data () => MakeExceptions r a (h :: Effects -> Type) (es :: Effects)
+ Bluefin.Exception.GeneralBracket: data MakeExceptions r a (h :: Effects -> Type) (es :: Effects)
- Bluefin.HandleReader: data () => HandleReader (h :: Effects -> Type) (e :: Effects)
+ Bluefin.HandleReader: data HandleReader (h :: Effects -> Type) (e :: Effects)
- Bluefin.IO: data () => EffReader r (es :: Effects) a
+ Bluefin.IO: data EffReader r (es :: Effects) a
- Bluefin.IO: data () => IOE (e :: Effects)
+ Bluefin.IO: data IOE (e :: Effects)
- Bluefin.Pipes: data () => Proxy a' a b' b (e :: Effects)
+ Bluefin.Pipes: data Proxy a' a b' b (e :: Effects)
- Bluefin.Reader: data () => Reader r (e :: Effects)
+ Bluefin.Reader: data Reader r (e :: Effects)
- Bluefin.State: data () => State s (e :: Effects)
+ Bluefin.State: data State s (e :: Effects)
- Bluefin.StateSource: data () => StateSource (e :: Effects)
+ Bluefin.StateSource: data StateSource (e :: Effects)
- Bluefin.System.IO: data () => Handle (e :: Effects)
+ Bluefin.System.IO: data Handle (e :: Effects)
- Bluefin.Writer: data () => Writer w (e :: Effects)
+ Bluefin.Writer: data Writer w (e :: Effects)

Files

CHANGELOG.md view
@@ -1,3 +1,7 @@+# 0.4.0.1++* Documentation only+ # 0.4.0.0  * Move `mapHandle` out of class `Handle` and remove `handleMapHandle`.
bluefin.cabal view
@@ -1,6 +1,6 @@ cabal-version:      3.0 name:               bluefin-version:            0.4.0.0+version:            0.4.0.1 license:            MIT license-file:       LICENSE author:             Tom Ellis
src/Bluefin/Consume.hs view
@@ -2,6 +2,9 @@   ( -- | 'Consume' allows you to await values during the execution of     -- a Bluefin operation.  It provides similar functionality to     -- @await@ from Conduit or Pipes.+    --+    -- For information about prompt finalization/resource safety when+    -- using Bluefin @Consume@s, see "Bluefin.Coroutine".      -- * Handle     Consume,
src/Bluefin/Coroutine.hs view
@@ -3,9 +3,23 @@     -- [Wikipedia     -- suggests](https://en.wikipedia.org/wiki/Coroutine#Definition_and_types)     -- that Bluefin's coroutines are "second-class stackful-    -- coroutines".  This module is not documented yet.  You might+    -- coroutines".  This module is not documented much yet.  You might     -- want to start with "Bluefin.Stream", which is the most common     -- way to use coroutines.++    -- ** Prompt finalization/resource safety++    -- | Bluefin+    -- 'Bluefin.Stream.Stream'\/'Bluefin.Consume.Consume'\/'Bluefin.Coroutine.Coroutine'+    -- computations have much better resource safety properties than+    -- Conduit and Pipes.  You can use+    -- @Bluefin.Eff.'Bluefin.Eff.bracket'@ within a streaming+    -- computation and the acquired resource is guaranteed to be+    -- released and the end of the bracket, rather than at the end of+    -- the @ResourceT@ scope as it is the case in Conduit and Pipes.+    -- See the blog post [Bluefin streams finalize+    -- promptly](https://h2.jaguarpaw.co.uk/posts/bluefin-streams-finalize-promptly/)+    -- for more details.      -- * Handle     Coroutine,
src/Bluefin/Stream.hs view
@@ -5,6 +5,9 @@     -- handle each element as soon as it is yielded (for example     -- 'forEach') or gather all yielded elements int o a list (for     -- example 'yieldToList').+    --+    -- For information about prompt finalization/resource safety when+    -- using Bluefin @Stream@s, see "Bluefin.Coroutine".      -- * Handle     Stream,