servant-auth-token 0.5.0.0 → 0.5.1.0
raw patch · 7 files changed
+46/−36 lines, 7 filesdep ~aeson-injectordep ~servant-auth-token-apidep ~timePVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: aeson-injector, servant-auth-token-api, time
API changes (from Hackage documentation)
- Servant.Server.Auth.Token: class MonadIO m => HasStorage m where getUserImpl = lift . getUserImpl getUserImplByLogin = lift . getUserImplByLogin listUsersPaged = (lift .) . listUsersPaged getUserImplPermissions = lift . getUserImplPermissions deleteUserPermissions = lift . deleteUserPermissions insertUserPerm = lift . insertUserPerm insertUserImpl = lift . insertUserImpl replaceUserImpl = (lift .) . replaceUserImpl deleteUserImpl = lift . deleteUserImpl hasPerm = (lift .) . hasPerm getFirstUserByPerm = lift . getFirstUserByPerm selectUserImplGroups = lift . selectUserImplGroups clearUserImplGroups = lift . clearUserImplGroups insertAuthUserGroup = lift . insertAuthUserGroup insertAuthUserGroupUsers = lift . insertAuthUserGroupUsers insertAuthUserGroupPerms = lift . insertAuthUserGroupPerms getAuthUserGroup = lift . getAuthUserGroup listAuthUserGroupPermissions = lift . listAuthUserGroupPermissions listAuthUserGroupUsers = lift . listAuthUserGroupUsers replaceAuthUserGroup = (lift .) . replaceAuthUserGroup clearAuthUserGroupUsers = lift . clearAuthUserGroupUsers clearAuthUserGroupPerms = lift . clearAuthUserGroupPerms deleteAuthUserGroup = lift . deleteAuthUserGroup listGroupsPaged = (lift .) . listGroupsPaged setAuthUserGroupName = (lift .) . setAuthUserGroupName setAuthUserGroupParent = (lift .) . setAuthUserGroupParent insertSingleUseCode = lift . insertSingleUseCode setSingleUseCodeUsed = (lift .) . setSingleUseCodeUsed getUnusedCode suc = (lift .) . getUnusedCode suc invalidatePermanentCodes = (lift .) . invalidatePermanentCodes selectLastRestoreCode = (lift .) . selectLastRestoreCode insertUserRestore = lift . insertUserRestore findRestoreCode uid = (lift .) . findRestoreCode uid replaceRestoreCode = (lift .) . replaceRestoreCode findAuthToken = (lift .) . findAuthToken findAuthTokenByValue = lift . findAuthTokenByValue insertAuthToken = lift . insertAuthToken replaceAuthToken = (lift .) . replaceAuthToken
+ Servant.Server.Auth.Token: class MonadIO m => HasStorage m
- Servant.Server.Auth.Token: withAuthToken :: (WithAuthToken a, PermsList perms) => a -> MToken perms -> a
+ Servant.Server.Auth.Token: withAuthToken :: (WithAuthToken a, (PermsList perms)) => a -> MToken perms -> a
- Servant.Server.Auth.Token.Config: class Monad m => HasAuthConfig m where getAuthConfig = lift getAuthConfig
+ Servant.Server.Auth.Token.Config: class Monad m => HasAuthConfig m
- Servant.Server.Auth.Token.Model: class MonadIO m => HasStorage m where getUserImpl = lift . getUserImpl getUserImplByLogin = lift . getUserImplByLogin listUsersPaged = (lift .) . listUsersPaged getUserImplPermissions = lift . getUserImplPermissions deleteUserPermissions = lift . deleteUserPermissions insertUserPerm = lift . insertUserPerm insertUserImpl = lift . insertUserImpl replaceUserImpl = (lift .) . replaceUserImpl deleteUserImpl = lift . deleteUserImpl hasPerm = (lift .) . hasPerm getFirstUserByPerm = lift . getFirstUserByPerm selectUserImplGroups = lift . selectUserImplGroups clearUserImplGroups = lift . clearUserImplGroups insertAuthUserGroup = lift . insertAuthUserGroup insertAuthUserGroupUsers = lift . insertAuthUserGroupUsers insertAuthUserGroupPerms = lift . insertAuthUserGroupPerms getAuthUserGroup = lift . getAuthUserGroup listAuthUserGroupPermissions = lift . listAuthUserGroupPermissions listAuthUserGroupUsers = lift . listAuthUserGroupUsers replaceAuthUserGroup = (lift .) . replaceAuthUserGroup clearAuthUserGroupUsers = lift . clearAuthUserGroupUsers clearAuthUserGroupPerms = lift . clearAuthUserGroupPerms deleteAuthUserGroup = lift . deleteAuthUserGroup listGroupsPaged = (lift .) . listGroupsPaged setAuthUserGroupName = (lift .) . setAuthUserGroupName setAuthUserGroupParent = (lift .) . setAuthUserGroupParent insertSingleUseCode = lift . insertSingleUseCode setSingleUseCodeUsed = (lift .) . setSingleUseCodeUsed getUnusedCode suc = (lift .) . getUnusedCode suc invalidatePermanentCodes = (lift .) . invalidatePermanentCodes selectLastRestoreCode = (lift .) . selectLastRestoreCode insertUserRestore = lift . insertUserRestore findRestoreCode uid = (lift .) . findRestoreCode uid replaceRestoreCode = (lift .) . replaceRestoreCode findAuthToken = (lift .) . findAuthToken findAuthTokenByValue = lift . findAuthTokenByValue insertAuthToken = lift . insertAuthToken replaceAuthToken = (lift .) . replaceAuthToken
+ Servant.Server.Auth.Token.Model: class MonadIO m => HasStorage m
- Servant.Server.Auth.Token.Monad: class Monad m => HasAuthConfig m where getAuthConfig = lift getAuthConfig
+ Servant.Server.Auth.Token.Monad: class Monad m => HasAuthConfig m
Files
- CHANGELOG.md +5/−0
- example/acid/servant-auth-token-example-acid.cabal +4/−4
- example/leveldb/servant-auth-token-example-leveldb.cabal +6/−6
- example/persistent/servant-auth-token-example-persistent.cabal +6/−6
- servant-auth-token.cabal +4/−4
- src/Servant/Server/Auth/Token.hs +10/−0
- stack.yaml +11/−16
CHANGELOG.md view
@@ -1,3 +1,8 @@+0.5.1.0+=======++* Versions bounds are relaxed.+ 0.5.0.0 =======
example/acid/servant-auth-token-example-acid.cabal view
@@ -26,22 +26,22 @@ base >= 4.7 && < 5 , acid-state >= 0.14 && < 0.15 , aeson >= 0.11 && < 1.3- , aeson-injector >= 1.0 && < 1.1+ , aeson-injector >= 1.1 && < 1.2 , bytestring >= 0.10 && < 0.11 , exceptions >= 0.8 && < 0.9 , http-types >= 0.9 && < 0.10 , monad-control >= 1.0 && < 1.1 , monad-logger >= 0.3 && < 0.4 , mtl >= 2.2 && < 2.3- , optparse-applicative >= 0.12 && < 0.14+ , optparse-applicative >= 0.12 && < 0.15 , safecopy >= 0.9 && < 0.10 , servant >= 0.9 && < 0.12 , servant-auth-token >= 0.5 && < 0.6 , servant-auth-token-acid >= 0.5 && < 0.6- , servant-auth-token-api >= 0.4 && < 0.5+ , servant-auth-token-api >= 0.5 && < 0.6 , servant-server >= 0.9 && < 0.12 , text >= 1.2 && < 1.3- , time >= 1.6 && < 1.7+ , time >= 1.6 && < 1.9 , transformers-base >= 0.4 && < 0.5 , wai >= 3.2 && < 3.3 , wai-extra >= 3.0 && < 3.1
example/leveldb/servant-auth-token-example-leveldb.cabal view
@@ -1,5 +1,5 @@ name: servant-auth-token-example-leveldb-version: 0.5.0.0+version: 0.5.1.0 synopsis: Example server for token auth for leveldb backend description: Please see README.md homepage: https://github.com/ncrashed/servant-auth-token#readme@@ -25,7 +25,7 @@ base >= 4.7 && < 5 , acid-state >= 0.14 && < 0.15 , aeson >= 0.11 && < 1.3- , aeson-injector >= 1.0 && < 1.1+ , aeson-injector >= 1.1 && < 1.2 , bytestring >= 0.10 && < 0.11 , exceptions >= 0.8 && < 0.9 , http-types >= 0.9 && < 0.10@@ -33,15 +33,15 @@ , monad-control >= 1.0 && < 1.1 , monad-logger >= 0.3 && < 0.4 , mtl >= 2.2 && < 2.3- , optparse-applicative >= 0.12 && < 0.14- , safecopy-store >= 0.9 && < 0.10+ , optparse-applicative >= 0.12 && < 0.15+ , safecopy >= 0.9 && < 0.10 , servant >= 0.11 && < 0.12 , servant-auth-token >= 0.5 && < 0.6- , servant-auth-token-api >= 0.4 && < 0.5+ , servant-auth-token-api >= 0.5 && < 0.6 , servant-auth-token-leveldb >= 0.5 && < 0.6 , servant-server >= 0.9 && < 0.12 , text >= 1.2 && < 1.3- , time >= 1.6 && < 1.7+ , time >= 1.6 && < 1.9 , transformers-base >= 0.4 && < 0.5 , wai >= 3.2 && < 3.3 , wai-extra >= 3.0 && < 3.1
example/persistent/servant-auth-token-example-persistent.cabal view
@@ -24,23 +24,23 @@ build-depends: base >= 4.7 && < 5 , aeson >= 0.11 && < 1.3- , aeson-injector >= 1.0 && < 1.1+ , aeson-injector >= 1.1 && < 1.2 , bytestring >= 0.10 && < 0.11 , exceptions >= 0.8 && < 0.9 , http-types >= 0.9 && < 0.10 , monad-control >= 1.0 && < 1.1 , monad-logger >= 0.3 && < 0.4 , mtl >= 2.2 && < 2.3- , optparse-applicative >= 0.12 && < 0.14- , persistent >= 2.6 && < 2.7- , persistent-postgresql >= 2.6 && < 2.7+ , optparse-applicative >= 0.12 && < 0.15+ , persistent >= 2.6 && < 2.8+ , persistent-postgresql >= 2.6 && < 2.8 , servant >= 0.11 && < 0.12 , servant-auth-token >= 0.5 && < 0.6- , servant-auth-token-api >= 0.4 && < 0.5+ , servant-auth-token-api >= 0.5 && < 0.6 , servant-auth-token-persistent >= 0.6 && < 0.7 , servant-server >= 0.9 && < 0.12 , text >= 1.2 && < 1.3- , time >= 1.6 && < 1.7+ , time >= 1.6 && < 1.9 , transformers-base >= 0.4 && < 0.5 , wai >= 3.2 && < 3.3 , wai-extra >= 3.0 && < 3.1
servant-auth-token.cabal view
@@ -1,5 +1,5 @@ name: servant-auth-token-version: 0.5.0.0+version: 0.5.1.0 synopsis: Servant based API and server for token based authorisation description: Please see README.md homepage: https://github.com/ncrashed/servant-auth-token#readme@@ -61,17 +61,17 @@ Servant.Server.Auth.Token.SingleUse build-depends: base >= 4.8 && < 5- , aeson-injector >= 1.0.4 && < 1.1+ , aeson-injector >= 1.1 && < 1.2 , bytestring >= 0.10 && < 0.11 , containers >= 0.5 && < 0.6 , http-api-data >= 0.3.5 && < 0.4 , mtl >= 2.2 && < 2.3 , pwstore-fast >= 2.4 && < 2.5- , servant-auth-token-api >= 0.4.2 && < 0.5 , servant >= 0.11 && < 0.12+ , servant-auth-token-api >= 0.5 && < 0.6 , servant-server >= 0.11 && < 0.12 , text >= 1.2 && < 1.3- , time >= 1.5 && < 1.7+ , time >= 1.5 && < 1.9 , transformers >= 0.4 && < 0.6 , uuid >= 1.3 && < 1.4 , wai >= 3.2 && < 3.3
src/Servant/Server/Auth/Token.hs view
@@ -104,6 +104,7 @@ authServer :: AuthHandler m => ServerT AuthAPI m authServer = authSignin+ :<|> authSigninPost :<|> authSigninGetCode :<|> authSigninPostCode :<|> authTouch@@ -147,6 +148,15 @@ Just user@(WithField _ UserImpl{..}) -> if passToByteString pass `verifyPassword` passToByteString userImplPassword then return user else err++-- | Implementation of "signin" method+authSigninPost :: AuthHandler m+ => AuthSigninPostBody -- ^ Holds login, password and token lifetime+ -> m (OnlyField "token" SimpleToken) -- ^ If everything is OK, return token+authSigninPost AuthSigninPostBody{..} = authSignin+ (Just authSigninBodyLogin)+ (Just authSigninBodyPassword)+ authSigninBodySeconds -- | Helper to get or generate new token for user getAuthToken :: AuthHandler m
stack.yaml view
@@ -15,7 +15,7 @@ # resolver: # name: custom-snapshot # location: "./custom-snapshot.yaml"-resolver: lts-8.19+resolver: lts-10.0 # User packages to be built. # Various formats can be used as shown in the example below.@@ -44,30 +44,25 @@ - 'example/acid' - 'example/persistent' - 'example/leveldb'+#- '../safecopy'+#- '../servant-auth-token-api' # - location: # git: https://github.com/NCrashed/servant-auth-token-api.git # commit: d011f7bfecd18d07ff67ce9f67f8741e110a2719 # extra-dep: true # - '../servant-auth-token-api'-- location:- git: https://github.com/serokell/rocksdb-haskell.git- commit: 325427fc709183c8fdf777ad5ea09f8d92bf8585- extra-dep: true+#- location:+# git: https://github.com/serokell/rocksdb-haskell.git+# commit: 325427fc709183c8fdf777ad5ea09f8d92bf8585+# extra-dep: true # Dependency packages to be pulled from upstream that are not in the resolver # (e.g., acme-missiles-0.3) extra-deps:-- aeson-1.2.1.0-- aeson-injector-1.0.8.0-- cabal-doctest-1.0.2-- concurrent-extra-0.7.0.11-- rocksdb-haskell-1.0.0-- safecopy-store-0.9.4-- servant-0.11-- servant-auth-token-api-0.4.2.2-- servant-docs-0.10.0.1-- servant-server-0.11-- servant-swagger-1.1.3+- acid-state-0.14.3+- rocksdb-haskell-1.0.1+- safecopy-store-0.9.6+- servant-auth-token-api-0.5.1.0 # Override default flag values for local packages and extra-deps flags: {}