diff --git a/yackage.cabal b/yackage.cabal
--- a/yackage.cabal
+++ b/yackage.cabal
@@ -1,5 +1,5 @@
 Name:                yackage
-Version:             0.6.0.5
+Version:             0.7.0
 Synopsis:            Personal Hackage replacement for testing new packages.
 Description:
     This package installs a yackage executable that runs a simplistic hackage-like server. It allows you to upload packages produced via cabal sdist and install them via cabal. The trick is to add the yackage repository to your cabal config file, with a line such as:
@@ -22,7 +22,7 @@
 Executable yackage
   Main-is:             yackage.hs
   Build-depends:       base >= 4 && < 5
-                     , yesod-core >= 1.1
+                     , yesod-core >= 1.2
                      , warp >= 1.3
                      , Cabal
                      , bytestring
@@ -33,10 +33,10 @@
                      , directory
                      , yaml
                      , cmdargs
-                     , wai >= 1.3
+                     , wai >= 1.4
                      , transformers
                      , hamlet
-                     , yesod-form >= 1.1
+                     , yesod-form >= 1.3
                      , http-types >= 0.6
                      , blaze-html >= 0.5
                      , vector
@@ -47,7 +47,7 @@
   Main-is:             yackage-upload.hs
   if flag(upload)
       Build-depends:       base >= 4 && < 5
-                         , http-conduit >= 1.5
+                         , http-conduit >= 1.9
                          , blaze-builder >= 0.2.1.3
                          , bytestring
   else
diff --git a/yackage.hs b/yackage.hs
--- a/yackage.hs
+++ b/yackage.hs
@@ -5,12 +5,7 @@
 {-# LANGUAGE TypeSynonymInstances #-}
 {-# LANGUAGE FlexibleInstances #-}
 import Yesod.Core
-import Yesod.Dispatch
-import Yesod.Handler
-import Yesod.Widget
-import Yesod.Content
 import Yesod.Form
-import Yesod.Request
 import Text.Hamlet
 import Control.Monad.IO.Class (liftIO)
 import Distribution.Package
@@ -36,7 +31,7 @@
 import Data.Text.Encoding.Error (lenientDecode)
 import qualified Data.ByteString.Lazy as L
 import Data.Maybe (fromMaybe)
-import Data.Yaml
+import Data.Yaml hiding (array)
 import Control.Monad (join, unless)
 import System.Console.CmdArgs
 import Network.Wai
@@ -151,7 +146,7 @@
     content <-
         case lookup "file" files of
             Nothing -> error "No file upload found"
-            Just fi -> fmap L.fromChunks $ lift $ fileSource fi $$ consume
+            Just fi -> fmap L.fromChunks $ fileSource fi $$ consume
     let entries = Tar.read $ decompress content
     let cabal =
             case getCabal entries of
