packages feed

apiary-clientsession 0.10.0 → 0.11.0

raw patch · 2 files changed

+16/−16 lines, 2 filesdep ~apiarydep ~apiary-cookiePVP ok

version bump matches the API change (PVP)

Dependency ranges changed: apiary, apiary-cookie

API changes (from Hackage documentation)

- Web.Apiary.ClientSession: domain :: SessionConfig -> Maybe ByteString
- Web.Apiary.ClientSession: httpOnly :: SessionConfig -> Bool
- Web.Apiary.ClientSession: keyFile :: SessionConfig -> FilePath
- Web.Apiary.ClientSession: maxAge :: SessionConfig -> DiffTime
- Web.Apiary.ClientSession: path :: SessionConfig -> Maybe ByteString
- Web.Apiary.ClientSession: secure :: SessionConfig -> Bool
- Web.Apiary.ClientSession.Explicit: domain :: SessionConfig -> Maybe ByteString
- Web.Apiary.ClientSession.Explicit: httpOnly :: SessionConfig -> Bool
- Web.Apiary.ClientSession.Explicit: keyFile :: SessionConfig -> FilePath
- Web.Apiary.ClientSession.Explicit: maxAge :: SessionConfig -> DiffTime
- Web.Apiary.ClientSession.Explicit: path :: SessionConfig -> Maybe ByteString
- Web.Apiary.ClientSession.Explicit: secure :: SessionConfig -> Bool
+ Web.Apiary.ClientSession: sessionDomain :: SessionConfig -> Maybe ByteString
+ Web.Apiary.ClientSession: sessionHttpOnly :: SessionConfig -> Bool
+ Web.Apiary.ClientSession: sessionKeyFile :: SessionConfig -> FilePath
+ Web.Apiary.ClientSession: sessionMaxAge :: SessionConfig -> DiffTime
+ Web.Apiary.ClientSession: sessionPath :: SessionConfig -> Maybe ByteString
+ Web.Apiary.ClientSession: sessionSecure :: SessionConfig -> Bool
+ Web.Apiary.ClientSession.Explicit: sessionDomain :: SessionConfig -> Maybe ByteString
+ Web.Apiary.ClientSession.Explicit: sessionHttpOnly :: SessionConfig -> Bool
+ Web.Apiary.ClientSession.Explicit: sessionKeyFile :: SessionConfig -> FilePath
+ Web.Apiary.ClientSession.Explicit: sessionMaxAge :: SessionConfig -> DiffTime
+ Web.Apiary.ClientSession.Explicit: sessionPath :: SessionConfig -> Maybe ByteString
+ Web.Apiary.ClientSession.Explicit: sessionSecure :: SessionConfig -> Bool

Files

apiary-clientsession.cabal view
@@ -1,5 +1,5 @@ name:                apiary-clientsession-version:             0.10.0+version:             0.11.0 synopsis:            clientsession support for apiary web framework. description:   examples:@@ -27,8 +27,8 @@   other-extensions:       build-depends:       base               >=4.6   && <4.8                      , bytestring         >=0.10  && <0.11-                     , apiary             >=0.9   && <0.11-                     , apiary-cookie      >=0.9   && <0.11+                     , apiary             >=0.9   && <0.12+                     , apiary-cookie      >=0.9   && <0.12                      , clientsession      >=0.9   && <0.10                      , time               >=1.4   && <1.5                      , data-default-class >=0.0   && <0.1
src/Web/Apiary/ClientSession/Internal.hs view
@@ -45,12 +45,12 @@     }  data SessionConfig = SessionConfig-    { keyFile               :: FilePath-    , maxAge                :: DiffTime-    , path                  :: Maybe S.ByteString-    , domain                :: Maybe S.ByteString-    , httpOnly              :: Bool-    , secure                :: Bool+    { sessionKeyFile        :: FilePath+    , sessionMaxAge         :: DiffTime+    , sessionPath           :: Maybe S.ByteString+    , sessionDomain         :: Maybe S.ByteString+    , sessionHttpOnly       :: Bool+    , sessionSecure         :: Bool      , angularXsrfCookieName :: Maybe S.ByteString     , csrfTokenCookieName   :: S.ByteString@@ -66,7 +66,7 @@  withSession :: MonadIO m => SessionConfig -> (Session -> m b) -> m b withSession cfg@SessionConfig{..} m = do-    k <- liftIO $ getKey keyFile+    k <- liftIO $ getKey sessionKeyFile     p <- liftIO $ makeSystem >>= newIORef     let sess = Session k p cfg     m sess@@ -85,16 +85,16 @@ mkSessionCookie :: SessionConfig -> Key -> S.ByteString -> S.ByteString -> IO SetCookie mkSessionCookie conf key k v = do     t <- getCurrentTime-    let expire = addUTCTime (realToFrac $ maxAge conf) t+    let expire = addUTCTime (realToFrac $ sessionMaxAge conf) t     v' <- encryptIO key $ L.toStrict $ encode (BinUTCTime expire, v)     return def { setCookieName     = k                , setCookieValue    = v'-               , setCookiePath     = path conf+               , setCookiePath     = sessionPath conf                , setCookieExpires  = Just expire-               , setCookieMaxAge   = Just (maxAge conf)-               , setCookieDomain   = domain conf-               , setCookieHttpOnly = httpOnly conf-               , setCookieSecure   = secure conf+               , setCookieMaxAge   = Just (sessionMaxAge conf)+               , setCookieDomain   = sessionDomain conf+               , setCookieHttpOnly = sessionHttpOnly conf+               , setCookieSecure   = sessionSecure conf                }  getSessionValue :: Session -> UTCTime -- ^ current time