packages feed

yesod-auth-oauth2 0.7.1.3 → 0.7.2.0

raw patch · 3 files changed

+23/−6 lines, 3 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

+ Yesod.Auth.OAuth2.GitHub: oauth2GitHubScopedWidget :: YesodAuth m => WidgetFor m () -> [Text] -> Text -> Text -> AuthPlugin m
+ Yesod.Auth.OAuth2.GitHub: oauth2GitHubWidget :: YesodAuth m => WidgetFor m () -> Text -> Text -> AuthPlugin m
+ Yesod.Auth.OAuth2.Prelude: omitField :: ToJSON a => a -> Bool
+ Yesod.Auth.OAuth2.Prelude: omittedField :: FromJSON a => Maybe a
- Network.OAuth.OAuth2.Compat: data OAuth2Token
+ Network.OAuth.OAuth2.Compat: data () => OAuth2Token
- Network.OAuth.OAuth2.Compat: newtype AccessToken
+ Network.OAuth.OAuth2.Compat: newtype () => AccessToken
- Network.OAuth.OAuth2.Compat: newtype ExchangeToken
+ Network.OAuth.OAuth2.Compat: newtype () => ExchangeToken
- Network.OAuth.OAuth2.Compat: newtype RefreshToken
+ Network.OAuth.OAuth2.Compat: newtype () => RefreshToken
- Yesod.Auth.OAuth2: data Creds master
+ Yesod.Auth.OAuth2: data () => Creds master
- Yesod.Auth.OAuth2: data Manager
+ Yesod.Auth.OAuth2: data () => Manager
- Yesod.Auth.OAuth2: data OAuth2Token
+ Yesod.Auth.OAuth2: data () => OAuth2Token
- Yesod.Auth.OAuth2.Prelude: (.=) :: (KeyValue kv, ToJSON v) => Key -> v -> kv
+ Yesod.Auth.OAuth2.Prelude: (.=) :: (KeyValue e kv, ToJSON v) => Key -> v -> kv
- Yesod.Auth.OAuth2.Prelude: class FromJSON a
+ Yesod.Auth.OAuth2.Prelude: class () => FromJSON a
- Yesod.Auth.OAuth2.Prelude: class ToJSON a
+ Yesod.Auth.OAuth2.Prelude: class () => ToJSON a
- Yesod.Auth.OAuth2.Prelude: data AuthPlugin master
+ Yesod.Auth.OAuth2.Prelude: data () => AuthPlugin master
- Yesod.Auth.OAuth2.Prelude: data Creds master
+ Yesod.Auth.OAuth2.Prelude: data () => Creds master
- Yesod.Auth.OAuth2.Prelude: data Manager
+ Yesod.Auth.OAuth2.Prelude: data () => Manager
- Yesod.Auth.OAuth2.Prelude: data OAuth2Token
+ Yesod.Auth.OAuth2.Prelude: data () => OAuth2Token
- Yesod.Auth.OAuth2.Prelude: data Text
+ Yesod.Auth.OAuth2.Prelude: data () => Text
- Yesod.Auth.OAuth2.Prelude: newtype AccessToken
+ Yesod.Auth.OAuth2.Prelude: newtype () => AccessToken
- Yesod.Auth.OAuth2.Prelude: newtype Host
+ Yesod.Auth.OAuth2.Prelude: newtype () => Host
- Yesod.Auth.OAuth2.Prelude: newtype RefreshToken
+ Yesod.Auth.OAuth2.Prelude: newtype () => RefreshToken
- Yesod.Auth.OAuth2.Prelude: throwIO :: (MonadThrow m, Exception e) => e -> m a
+ Yesod.Auth.OAuth2.Prelude: throwIO :: (HasCallStack, MonadThrow m, Exception e) => e -> m a

Files

CHANGELOG.md view
@@ -1,4 +1,9 @@-## [_Unreleased_](https://github.com/thoughtbot/yesod-auth-oauth2/compare/v0.7.1.3...main)+## [_Unreleased_](https://github.com/thoughtbot/yesod-auth-oauth2/compare/v0.7.2.0...main)++## [v0.7.2.0](https://github.com/thoughtbot/yesod-auth-oauth2/compare/v0.7.1.3...v0.7.2.0)++- Add `oauth2GitHubWidget` and `oauth2GitHubScopedWidget`+  [@jaanisfehling](https://github.com/freckle/yesod-auth-oauth2/pull/181)  ## [v0.7.1.3](https://github.com/thoughtbot/yesod-auth-oauth2/compare/v0.7.1.2...v0.7.1.3) 
src/Yesod/Auth/OAuth2/GitHub.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE QuasiQuotes #-}  -- | --@@ -8,12 +9,14 @@ -- * Uses github user id as credentials identifier module Yesod.Auth.OAuth2.GitHub   ( oauth2GitHub+  , oauth2GitHubWidget   , oauth2GitHubScoped+  , oauth2GitHubScopedWidget   ) where -import Yesod.Auth.OAuth2.Prelude- import qualified Data.Text as T+import Yesod.Auth.OAuth2.Prelude+import Yesod.Core (WidgetFor, whamlet)  newtype User = User Int @@ -29,9 +32,18 @@ oauth2GitHub :: YesodAuth m => Text -> Text -> AuthPlugin m oauth2GitHub = oauth2GitHubScoped defaultScopes +oauth2GitHubWidget+  :: YesodAuth m => WidgetFor m () -> Text -> Text -> AuthPlugin m+oauth2GitHubWidget widget = oauth2GitHubScopedWidget widget defaultScopes+ oauth2GitHubScoped :: YesodAuth m => [Text] -> Text -> Text -> AuthPlugin m-oauth2GitHubScoped scopes clientId clientSecret =-  authOAuth2 pluginName oauth2 $ \manager token -> do+oauth2GitHubScoped =+  oauth2GitHubScopedWidget [whamlet|Login via #{pluginName}|]++oauth2GitHubScopedWidget+  :: YesodAuth m => WidgetFor m () -> [Text] -> Text -> Text -> AuthPlugin m+oauth2GitHubScopedWidget widget scopes clientId clientSecret =+  authOAuth2Widget widget pluginName oauth2 $ \manager token -> do     (User userId, userResponse) <-       authGetProfile         pluginName
yesod-auth-oauth2.cabal view
@@ -1,6 +1,6 @@ cabal-version:   1.18 name:            yesod-auth-oauth2-version:         0.7.1.3+version:         0.7.2.0 license:         MIT license-file:    LICENSE maintainer:      engineering@freckle.com