diff --git a/Yesod/Handler.hs b/Yesod/Handler.hs
--- a/Yesod/Handler.hs
+++ b/Yesod/Handler.hs
@@ -1056,10 +1056,16 @@
 #endif
 
 instance MonadLogger (GHandler sub master) where
+#if MIN_VERSION_monad_logger(0, 3, 0)
+    monadLoggerLog a b c d = do
+        hd <- ask
+        liftIO $ handlerLog hd a b c (toLogStr d)
+#else
     monadLoggerLog a c d = monadLoggerLogSource a "" c d
     monadLoggerLogSource a b c d = do
         hd <- ask
         liftIO $ handlerLog hd a b c (toLogStr d)
+#endif
 
 instance Exception e => Failure e (GHandler sub master) where
     failure = liftIO . throwIO
diff --git a/Yesod/Widget.hs b/Yesod/Widget.hs
--- a/Yesod/Widget.hs
+++ b/Yesod/Widget.hs
@@ -361,5 +361,9 @@
 #endif
 
 instance MonadLogger (GWidget sub master) where
+#if MIN_VERSION_monad_logger(0, 3, 0)
+    monadLoggerLog a b c = lift . monadLoggerLog a b c
+#else
     monadLoggerLog a b = lift . monadLoggerLog a b
     monadLoggerLogSource a b c = lift . monadLoggerLogSource a b c
+#endif
diff --git a/yesod-core.cabal b/yesod-core.cabal
--- a/yesod-core.cabal
+++ b/yesod-core.cabal
@@ -1,5 +1,5 @@
 name:            yesod-core
-version:         1.1.8
+version:         1.1.8.1
 license:         MIT
 license-file:    LICENSE
 author:          Michael Snoyman <michael@snoyman.com>
@@ -79,8 +79,8 @@
                    , vector                >= 0.9      && < 0.11
                    , aeson                 >= 0.5
                    , fast-logger           >= 0.2
-                   , monad-logger          >= 0.2.1    && < 0.3
-                   , conduit               >= 0.5      && < 0.6
+                   , monad-logger          >= 0.2.1    && < 0.4
+                   , conduit               >= 0.5
                    , resourcet             >= 0.3      && < 0.5
                    , lifted-base           >= 0.1
                    , blaze-html            >= 0.5      && < 0.6
