diff --git a/Text/Libyaml.hs b/Text/Libyaml.hs
--- a/Text/Libyaml.hs
+++ b/Text/Libyaml.hs
@@ -40,7 +40,6 @@
 import Data.Data
 
 import Control.Monad.IO.Class
-import Control.Monad.Trans.Class (lift)
 
 import Control.Exception (throwIO, Exception, finally)
 import Control.Applicative
@@ -152,12 +151,6 @@
 foreign import ccall unsafe "fclose_helper"
     c_fclose_helper :: File -> IO ()
 
-withForeignPtr' :: MonadIO m => ForeignPtr a -> (Ptr a -> m b) -> m b
-withForeignPtr' fp f = do
-    r <- f $ unsafeForeignPtrToPtr fp
-    liftIO $ touchForeignPtr fp
-    return r
-
 foreign import ccall unsafe "yaml_parser_parse"
     c_yaml_parser_parse :: Parser -> EventRaw -> IO CInt
 
@@ -560,7 +553,7 @@
            => FilePath
            -> C.Sink Event m ()
 encodeFile filePath = C.Sink $ do
-    (releaseKey, file) <- flip withIO c_fclose $ do
+    (_releaseKey, file) <- flip withIO c_fclose $ do
         file <- liftIO $ withCString filePath $
                     \filePath' -> withCString "w" $
                     \w' -> c_fopen filePath' w'
@@ -590,7 +583,7 @@
         c_yaml_emitter_delete emitter
         free emitter
     push (emitter, _) e = do
-        liftIO $ toEventRaw e $ c_yaml_emitter_emit emitter
+        _ <- liftIO $ toEventRaw e $ c_yaml_emitter_emit emitter
         return C.Processing
     close (_, a) = liftIO $ closeI a
 
diff --git a/yaml.cabal b/yaml.cabal
--- a/yaml.cabal
+++ b/yaml.cabal
@@ -1,5 +1,5 @@
 name:            yaml
-version:         0.5.1.1
+version:         0.5.1.2
 license:         BSD3
 license-file:    LICENSE
 author:          Michael Snoyman <michael@snoyman.com>, Anton Ageev <antage@gmail.com>,Kirill Simonov 
@@ -30,7 +30,7 @@
     build-depends:   base >= 4 && < 5
                    , transformers >= 0.1 && < 0.3
                    , bytestring >= 0.9.1.4 && < 0.10
-                   , conduit >= 0.0 && < 0.1
+                   , conduit
                    , aeson >= 0.5
                    , containers
                    , unordered-containers
