Hello community, here is the log from the commit of package ghc-conduit for openSUSE:Factory checked in at 2016-10-14 09:06:13 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-conduit (Old) and /work/SRC/openSUSE:Factory/.ghc-conduit.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-conduit" Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-conduit/ghc-conduit.changes 2016-08-25 09:57:54.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-conduit.new/ghc-conduit.changes 2016-10-14 09:06:13.000000000 +0200 @@ -1,0 +2,5 @@ +Sat Oct 1 17:18:07 UTC 2016 - [email protected] + +- Update to version 1.2.8 with cabal2obs. + +------------------------------------------------------------------- Old: ---- conduit-1.2.7.tar.gz New: ---- conduit-1.2.8.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-conduit.spec ++++++ --- /var/tmp/diff_new_pack.KbtZBm/_old 2016-10-14 09:06:14.000000000 +0200 +++ /var/tmp/diff_new_pack.KbtZBm/_new 2016-10-14 09:06:14.000000000 +0200 @@ -19,7 +19,7 @@ %global pkg_name conduit %bcond_with tests Name: ghc-%{pkg_name} -Version: 1.2.7 +Version: 1.2.8 Release: 0 Summary: Streaming data processing library License: MIT @@ -30,6 +30,7 @@ BuildRequires: ghc-exceptions-devel BuildRequires: ghc-lifted-base-devel BuildRequires: ghc-mmorph-devel +BuildRequires: ghc-monad-control-devel BuildRequires: ghc-mtl-devel BuildRequires: ghc-resourcet-devel BuildRequires: ghc-rpm-macros ++++++ conduit-1.2.7.tar.gz -> conduit-1.2.8.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conduit-1.2.7/ChangeLog.md new/conduit-1.2.8/ChangeLog.md --- old/conduit-1.2.7/ChangeLog.md 2016-08-08 13:13:50.000000000 +0200 +++ new/conduit-1.2.8/ChangeLog.md 2016-09-27 15:39:10.000000000 +0200 @@ -1,3 +1,11 @@ +## 1.2.8 + +* Implement + [the reskinning idea](http://www.snoyman.com/blog/2016/09/proposed-conduit-reskin): + * `.|` + * `runConduitPure` + * `runConduitRes` + ## 1.2.7 * Expose yieldM for ConduitM [#270](https://github.com/snoyberg/conduit/pull/270) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conduit-1.2.7/Data/Conduit.hs new/conduit-1.2.8/Data/Conduit.hs --- old/conduit-1.2.7/Data/Conduit.hs 2016-08-08 13:13:50.000000000 +0200 +++ new/conduit-1.2.8/Data/Conduit.hs 2016-09-27 15:39:10.000000000 +0200 @@ -1,5 +1,6 @@ {-# LANGUAGE RankNTypes #-} {-# LANGUAGE DeriveFunctor #-} +{-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE Safe #-} -- | If this is your first time with conduit, you should probably start with -- the tutorial: @@ -12,6 +13,7 @@ , Sink , ConduitM -- ** Connect/fuse operators + , (.|) , ($$) , ($=) , (=$) @@ -30,6 +32,8 @@ , yieldM , leftover , runConduit + , runConduitPure + , runConduitRes -- ** Finalization , bracketP @@ -97,6 +101,10 @@ ) where import Data.Conduit.Internal.Conduit +import Data.Void (Void) +import Data.Functor.Identity (Identity, runIdentity) +import Control.Monad.Trans.Resource (ResourceT, runResourceT) +import Control.Monad.Trans.Control (MonadBaseControl) -- | Named function synonym for '$$'. -- @@ -109,3 +117,39 @@ -- Since 1.2.3 fuse :: Monad m => Conduit a m b -> ConduitM b c m r -> ConduitM a c m r fuse = (=$=) + +infixr 2 .| +-- | Combine two @Conduit@s together into a new @Conduit@ (aka 'fuse'). +-- +-- Output from the upstream (left) conduit will be fed into the +-- downstream (right) conduit. Processing will terminate when +-- downstream (right) returns. Leftover data returned from the right +-- @Conduit@ will be discarded. +-- +-- @since 1.2.8 +(.|) :: Monad m + => ConduitM a b m () -- ^ upstream + -> ConduitM b c m r -- ^ downstream + -> ConduitM a c m r +(.|) = fuse +{-# INLINE (.|) #-} + +-- | Run a pure pipeline until processing completes, i.e. a pipeline +-- with @Identity@ as the base monad. This is equivalient to +-- @runIdentity . runConduit@. +-- +-- @since 1.2.8 +runConduitPure :: ConduitM () Void Identity r -> r +runConduitPure = runIdentity . runConduit +{-# INLINE runConduitPure #-} + +-- | Run a pipeline which acquires resources with @ResourceT@, and +-- then run the @ResourceT@ transformer. This is equivalent to +-- @runResourceT . runConduit@. +-- +-- @since 1.2.8 +runConduitRes :: MonadBaseControl IO m + => ConduitM () Void (ResourceT m) r + -> m r +runConduitRes = runResourceT . runConduit +{-# INLINE runConduitRes #-} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/conduit-1.2.7/conduit.cabal new/conduit-1.2.8/conduit.cabal --- old/conduit-1.2.7/conduit.cabal 2016-08-08 13:13:50.000000000 +0200 +++ new/conduit-1.2.8/conduit.cabal 2016-09-27 15:39:10.000000000 +0200 @@ -1,5 +1,5 @@ Name: conduit -Version: 1.2.7 +Version: 1.2.8 Synopsis: Streaming data processing library. description: Hackage documentation generation is not reliable. For up to date documentation, please see: <http://www.stackage.org/package/conduit>. @@ -35,6 +35,7 @@ , transformers >= 0.2.2 , mtl , mmorph + , monad-control if !impl(ghc>=7.9) build-depends: void >= 0.5.5 ghc-options: -Wall
