Skip to content

Instantly share code, notes, and snippets.

@maxcan
Created June 16, 2014 00:43
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save maxcan/ca1ae069d4283c3fc1fe to your computer and use it in GitHub Desktop.
Save maxcan/ca1ae069d4283c3fc1fe to your computer and use it in GitHub Desktop.
yesod-auth-1.3.1 build failure
Yesod/Auth/GoogleEmail2.hs:78:23:
Could not deduce (transformers-base-0.4.2:Control.Monad.Base.MonadBase
IO m)
arising from a use of ‘liftBase’
from the context (MonadHandler m)
bound by the type signature for
getCreateCsrfToken :: MonadHandler m => m Text
at Yesod/Auth/GoogleEmail2.hs:72:23-46
In a stmt of a 'do' block: stdgen <- liftBase newStdGen
In the expression:
do { stdgen <- liftBase newStdGen;
let token = T.pack $ fst $ randomString 10 stdgen;
setSession csrfKey token;
return token }
In a case alternative:
Nothing
-> do { stdgen <- liftBase newStdGen;
let token = ...;
setSession csrfKey token;
.... }
Yesod/Auth/GoogleEmail2.hs:88:20:
Could not deduce (exceptions-0.6.1:Control.Monad.Catch.MonadThrow
(Yesod.Core.Types.HandlerT Auth (Yesod.Core.Types.HandlerT m IO)))
arising from a use of ‘dispatch’
from the context (YesodAuth m)
bound by the type signature for
authGoogleEmail :: YesodAuth m => Text -> Text -> AuthPlugin m
at Yesod/Auth/GoogleEmail2.hs:(83,20)-(86,31)
or from (YesodAuth m)
bound by a type expected by the context:
YesodAuth m =>
Yesod.Auth.Method
-> [Yesod.Auth.Piece]
-> Yesod.Core.Types.HandlerT
Auth (Yesod.Core.Types.HandlerT m IO) Yesod.Core.Types.TypedContent
at Yesod/Auth/GoogleEmail2.hs:88:5-33
In the second argument of ‘AuthPlugin’, namely ‘dispatch’
In the expression: AuthPlugin pid dispatch login
In an equation for ‘authGoogleEmail’:
authGoogleEmail clientID clientSecret
= AuthPlugin pid dispatch login
where
complete = PluginR pid ["complete"]
getDest ::
MonadHandler m => (Route Auth -> Route (HandlerSite m)) -> m Text
getDest tm
= do { csrf <- getCreateCsrfToken;
.... }
login tm
= do { url <- getDest tm;
.... }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment