diff --git a/Spock.cabal b/Spock.cabal
--- a/Spock.cabal
+++ b/Spock.cabal
@@ -1,5 +1,5 @@
 name:                Spock
-version:             0.13.0.0
+version:             0.14.0.0
 synopsis:            Another Haskell web framework for rapid development
 description:         This toolbox provides everything you need to get a quick start into web hacking with haskell:
                      .
@@ -24,11 +24,11 @@
 license-file:        LICENSE
 author:              Alexander Thiemann <mail@athiemann.net>
 maintainer:          Alexander Thiemann <mail@athiemann.net>
-copyright:           (c) 2013 - 2017 Alexander Thiemann
+copyright:           (c) 2013 - 2020 Alexander Thiemann
 category:            Web
 build-type:          Simple
-cabal-version:       >=1.8
-tested-with:         GHC==7.10.2, GHC==8.0.1
+cabal-version:       >=2.0
+tested-with:         GHC==8.8.4
 
 extra-source-files:
     README.md
@@ -45,7 +45,7 @@
                 Web.Spock.Internal.Monad,
                 Web.Spock.Internal.Types
   build-depends:
-                       Spock-core >= 0.13,
+                       Spock-core >= 0.14,
                        base >= 4 && < 5,
                        base64-bytestring >=1.0,
                        bytestring >=0.10,
@@ -60,9 +60,9 @@
                        mtl >=2.1,
                        reroute >=0.5,
                        resource-pool >=0.2,
-                       resourcet >= 0.4,
+                       resourcet >= 1.2.2,
                        stm >=2.4,
-                       stm-containers >=0.2,
+                       stm-containers >= 1.1.0.2,
                        text >= 0.11.3.1,
                        time >=1.4,
                        transformers >=0.3,
@@ -71,6 +71,7 @@
                        vault >=0.3,
                        wai >=3.0
   ghc-options: -Wall -fno-warn-orphans
+  default-language:    Haskell2010
 
 test-suite spocktests
   type:                exitcode-stdio-1.0
@@ -98,6 +99,7 @@
                        wai-extra
 
   ghc-options: -Wall -fno-warn-orphans
+  default-language:    Haskell2010
 
 source-repository head
   type:     git
diff --git a/src/Web/Spock/Config.hs b/src/Web/Spock/Config.hs
--- a/src/Web/Spock/Config.hs
+++ b/src/Web/Spock/Config.hs
@@ -43,6 +43,7 @@
      return
        SessionCfg
        { sc_cookieName = "spockcookie"
+       , sc_cookieEOL = CookieValidForever
        , sc_sessionTTL = 3600
        , sc_sessionIdEntropy = 64
        , sc_sessionExpandTTL = True
diff --git a/src/Web/Spock/Internal/SessionManager.hs b/src/Web/Spock/Internal/SessionManager.hs
--- a/src/Web/Spock/Internal/SessionManager.hs
+++ b/src/Web/Spock/Internal/SessionManager.hs
@@ -177,7 +177,7 @@
       value = sess_id sess
       settings =
           defaultCookieSettings
-          { cs_EOL = CookieValidForever
+          { cs_EOL = sc_cookieEOL cfg
           , cs_HTTPOnly = True
           }
 
diff --git a/src/Web/Spock/Internal/SessionVault.hs b/src/Web/Spock/Internal/SessionVault.hs
--- a/src/Web/Spock/Internal/SessionVault.hs
+++ b/src/Web/Spock/Internal/SessionVault.hs
@@ -14,7 +14,7 @@
 import Data.Hashable
 import Focus as F
 import qualified ListT as L
-import qualified STMContainers.Map as STMMap
+import qualified StmContainers.Map as STMMap
 import qualified Data.Text as T
 
 class (Eq (SessionKey s), Hashable (SessionKey s)) => IsSession s where
@@ -46,7 +46,7 @@
 
 -- | Get all sessions as list
 toList :: SessionVault s -> STM [s]
-toList =  liftM (map snd) . L.toList . STMMap.stream . unSessionVault
+toList =  liftM (map snd) . L.toList . STMMap.listT . unSessionVault
 
 -- | Remove all sessions that do not match the predicate
 filterSessions :: IsSession s => (s -> Bool) -> SessionVault s -> STM ()
diff --git a/src/Web/Spock/Internal/Types.hs b/src/Web/Spock/Internal/Types.hs
--- a/src/Web/Spock/Internal/Types.hs
+++ b/src/Web/Spock/Internal/Types.hs
@@ -94,6 +94,8 @@
    = SessionCfg
    { sc_cookieName :: T.Text
      -- ^ name of the client side cookie
+   , sc_cookieEOL :: CookieEOL
+     -- ^ how long the client side cookie should live
    , sc_sessionTTL :: NominalDiffTime
      -- ^ how long shoud a client session live
    , sc_sessionIdEntropy :: Int
