Hello community, here is the log from the commit of package ghc-resourcet for openSUSE:Factory checked in at 2016-11-04 21:01:15 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-resourcet (Old) and /work/SRC/openSUSE:Factory/.ghc-resourcet.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-resourcet" Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-resourcet/ghc-resourcet.changes 2016-09-05 21:20:49.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-resourcet.new/ghc-resourcet.changes 2016-11-04 21:01:16.000000000 +0100 @@ -1,0 +2,5 @@ +Mon Oct 17 15:37:45 UTC 2016 - psim...@suse.com + +- Update to version 1.1.8 with cabal2obs. + +------------------------------------------------------------------- Old: ---- resourcet-1.1.7.5.tar.gz New: ---- resourcet-1.1.8.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-resourcet.spec ++++++ --- /var/tmp/diff_new_pack.pEH4b2/_old 2016-11-04 21:01:17.000000000 +0100 +++ /var/tmp/diff_new_pack.pEH4b2/_new 2016-11-04 21:01:17.000000000 +0100 @@ -19,7 +19,7 @@ %global pkg_name resourcet %bcond_with tests Name: ghc-%{pkg_name} -Version: 1.1.7.5 +Version: 1.1.8 Release: 0 Summary: Deterministic allocation and freeing of scarce resources License: BSD-3-Clause ++++++ resourcet-1.1.7.5.tar.gz -> resourcet-1.1.8.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resourcet-1.1.7.5/ChangeLog.md new/resourcet-1.1.8/ChangeLog.md --- old/resourcet-1.1.7.5/ChangeLog.md 2016-08-08 13:13:50.000000000 +0200 +++ new/resourcet-1.1.8/ChangeLog.md 2016-10-13 14:58:24.000000000 +0200 @@ -1,3 +1,8 @@ +## 1.1.8 + +* Add `instance MonadFix ResourceT` + [#281](https://github.com/snoyberg/conduit/pull/281) + ## 1.1.7.5 * Inline the tutorial from SoH diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resourcet-1.1.7.5/Control/Monad/Trans/Resource/Internal.hs new/resourcet-1.1.8/Control/Monad/Trans/Resource/Internal.hs --- old/resourcet-1.1.7.5/Control/Monad/Trans/Resource/Internal.hs 2016-08-08 13:13:50.000000000 +0200 +++ new/resourcet-1.1.8/Control/Monad/Trans/Resource/Internal.hs 2016-10-13 14:58:24.000000000 +0200 @@ -32,6 +32,7 @@ import Control.Exception (throw,Exception,SomeException) import Control.Applicative (Applicative (..), Alternative(..)) import Control.Monad (MonadPlus(..)) +import Control.Monad.Fix (MonadFix(..)) import Control.Monad.Trans.Control ( MonadTransControl (..), MonadBaseControl (..) ) import Control.Monad.Base (MonadBase, liftBase) @@ -247,6 +248,10 @@ let ResourceT f' = f a f' r +-- | @since 1.1.8 +instance MonadFix m => MonadFix (ResourceT m) where + mfix f = ResourceT $ \r -> mfix $ \a -> unResourceT (f a) r + instance MonadTrans ResourceT where lift = ResourceT . const diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resourcet-1.1.7.5/README.md new/resourcet-1.1.8/README.md --- old/resourcet-1.1.7.5/README.md 2016-08-08 13:13:50.000000000 +0200 +++ new/resourcet-1.1.8/README.md 2016-10-13 14:58:24.000000000 +0200 @@ -20,7 +20,7 @@ ResourceT is a monad transformer which creates a region of code where you can safely allocate resources. Let's write a simple example program: we'll ask the user for some input and pretend like it's a scarce resource that must be released. We'll then do something dangerous (potentially introducing a divide-by-zero error). We then want to immediately release our scarce resource and perform some long-running computation. -```haskell active +```haskell import Control.Monad.Trans.Resource import Control.Monad.IO.Class @@ -46,7 +46,7 @@ In this specific case, we could easily represent our code in terms of bracket with a little refactoring. -```haskell active +```haskell import Control.Exception (bracket) main = do @@ -75,7 +75,7 @@ The first one is pretty easy to demonstrate: -```haskell active +```haskell import Control.Monad.Trans.Resource import Control.Monad.Trans.Class @@ -95,7 +95,7 @@ The `bracket` pattern is designed with nested resource allocations. For example, consider the following program which copies data from one file to another. We'll open up the source file using `withFile`, and then nest within it another `withFile` to open the destination file, and finally do the copying with both file handles. -```haskell active +```haskell {-# START_FILE main.hs #-} import System.IO import qualified Data.ByteString as S @@ -121,7 +121,7 @@ Let's demonstrate the interleaving example described above. To simplify the code, we'll use the conduit package for the actual chunking implementation. Notice when you run the program that there are never more than two file handles open at the same time. -```haskell active +```haskell import Control.Monad.IO.Class (liftIO) import Data.Conduit (addCleanup, runResourceT, ($$), (=$)) import Data.Conduit.Binary (isolate, sinkFile, sourceFile) @@ -190,7 +190,7 @@ from the other. The canonical demonstration of resourcet combined with conduit is the file copy function: -```haskell active +```haskell import Data.Conduit import Data.Conduit.Binary @@ -204,7 +204,7 @@ However, since this function does not actually use any of ResourceT's added functionality, it can easily be implemented with the bracket pattern instead: -```haskell active +```haskell import Data.Conduit import Data.Conduit.Binary import System.IO diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resourcet-1.1.7.5/resourcet.cabal new/resourcet-1.1.8/resourcet.cabal --- old/resourcet-1.1.7.5/resourcet.cabal 2016-08-08 13:13:50.000000000 +0200 +++ new/resourcet-1.1.8/resourcet.cabal 2016-10-13 14:58:24.000000000 +0200 @@ -1,5 +1,5 @@ Name: resourcet -Version: 1.1.7.5 +Version: 1.1.8 Synopsis: Deterministic allocation and freeing of scarce resources. description: Hackage documentation generation is not reliable. For up to date documentation, please see: <http://www.stackage.org/package/resourcet>. License: BSD3