fb 2.1.1.1 → 2.1.1.2
raw patch · 3 files changed
+28/−5 lines, 3 filesdep +attoparsec-aesondep ~aesonPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependencies added: attoparsec-aeson
Dependency ranges changed: aeson
API changes (from Hackage documentation)
- Facebook: createAction :: (MonadResource m, MonadUnliftIO m, MonadThrow m, MonadIO m) => Action -> [Argument] -> Maybe AppAccessToken -> UserAccessToken -> FacebookT Auth m Id
+ Facebook: createAction :: forall (m :: Type -> Type). (MonadResource m, MonadUnliftIO m, MonadThrow m, MonadIO m) => Action -> [Argument] -> Maybe AppAccessToken -> UserAccessToken -> FacebookT Auth m Id
- Facebook: createCheckin :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => Id -> GeoCoordinates -> [Argument] -> UserAccessToken -> FacebookT Auth m Id
+ Facebook: createCheckin :: forall (m :: Type -> Type). (MonadResource m, MonadUnliftIO m, MonadThrow m) => Id -> GeoCoordinates -> [Argument] -> UserAccessToken -> FacebookT Auth m Id
- Facebook: createTestUser :: (MonadResource m, MonadUnliftIO m, MonadThrow m, MonadIO m) => CreateTestUser -> AppAccessToken -> FacebookT Auth m TestUser
+ Facebook: createTestUser :: forall (m :: Type -> Type). (MonadResource m, MonadUnliftIO m, MonadThrow m, MonadIO m) => CreateTestUser -> AppAccessToken -> FacebookT Auth m TestUser
- Facebook: data FacebookT auth m a
+ Facebook: data FacebookT auth (m :: Type -> Type) a
- Facebook: debugToken :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => AppAccessToken -> AccessTokenData -> FacebookT Auth m DebugToken
+ Facebook: debugToken :: forall (m :: Type -> Type). (MonadResource m, MonadUnliftIO m, MonadThrow m) => AppAccessToken -> AccessTokenData -> FacebookT Auth m DebugToken
- Facebook: deleteObject :: (MonadResource m, MonadUnliftIO m, MonadThrow m, FromJSON a) => Text -> [Argument] -> AccessToken anyKind -> FacebookT Auth m a
+ Facebook: deleteObject :: forall (m :: Type -> Type) a anyKind. (MonadResource m, MonadUnliftIO m, MonadThrow m, FromJSON a) => Text -> [Argument] -> AccessToken anyKind -> FacebookT Auth m a
- Facebook: disassociateTestuser :: (MonadUnliftIO m, MonadThrow m, MonadResource m, MonadIO m) => TestUser -> AppAccessToken -> FacebookT Auth m Bool
+ Facebook: disassociateTestuser :: forall (m :: Type -> Type). (MonadUnliftIO m, MonadThrow m, MonadResource m, MonadIO m) => TestUser -> AppAccessToken -> FacebookT Auth m Bool
- Facebook: extendUserAccessToken :: (MonadResource m, MonadUnliftIO m, MonadThrow m, MonadIO m) => UserAccessToken -> FacebookT Auth m (Either FacebookException UserAccessToken)
+ Facebook: extendUserAccessToken :: forall (m :: Type -> Type). (MonadResource m, MonadUnliftIO m, MonadThrow m, MonadIO m) => UserAccessToken -> FacebookT Auth m (Either FacebookException UserAccessToken)
- Facebook: fetchAllNextPages :: (Monad m, FromJSON a, MonadUnliftIO n, MonadThrow n) => Pager a -> FacebookT anyAuth m (ConduitT () a n ())
+ Facebook: fetchAllNextPages :: forall (m :: Type -> Type) a (n :: Type -> Type) anyAuth. (Monad m, FromJSON a, MonadUnliftIO n, MonadThrow n) => Pager a -> FacebookT anyAuth m (ConduitT () a n ())
- Facebook: fetchAllPreviousPages :: (Monad m, FromJSON a, MonadUnliftIO n, MonadThrow n) => Pager a -> FacebookT anyAuth m (ConduitT () a n ())
+ Facebook: fetchAllPreviousPages :: forall (m :: Type -> Type) a (n :: Type -> Type) anyAuth. (Monad m, FromJSON a, MonadUnliftIO n, MonadThrow n) => Pager a -> FacebookT anyAuth m (ConduitT () a n ())
- Facebook: fetchNextPage :: (MonadResource m, FromJSON a, MonadThrow m, MonadUnliftIO m) => Pager a -> FacebookT anyAuth m (Maybe (Pager a))
+ Facebook: fetchNextPage :: forall (m :: Type -> Type) a anyAuth. (MonadResource m, FromJSON a, MonadThrow m, MonadUnliftIO m) => Pager a -> FacebookT anyAuth m (Maybe (Pager a))
- Facebook: fetchPreviousPage :: (MonadResource m, FromJSON a, MonadThrow m, MonadUnliftIO m) => Pager a -> FacebookT anyAuth m (Maybe (Pager a))
+ Facebook: fetchPreviousPage :: forall (m :: Type -> Type) a anyAuth. (MonadResource m, FromJSON a, MonadThrow m, MonadUnliftIO m) => Pager a -> FacebookT anyAuth m (Maybe (Pager a))
- Facebook: fqlQuery :: (MonadResource m, MonadUnliftIO m, MonadThrow m, FromJSON a) => Text -> Maybe (AccessToken anyKind) -> FacebookT anyAuth m (Pager a)
+ Facebook: fqlQuery :: forall (m :: Type -> Type) a anyKind anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m, FromJSON a) => Text -> Maybe (AccessToken anyKind) -> FacebookT anyAuth m (Pager a)
- Facebook: getApiVersion :: MonadIO m => FacebookT anyAuth m ApiVersion
+ Facebook: getApiVersion :: forall (m :: Type -> Type) anyAuth. MonadIO m => FacebookT anyAuth m ApiVersion
- Facebook: getAppAccessToken :: (MonadResource m, MonadUnliftIO m, MonadThrow m, MonadIO m) => FacebookT Auth m AppAccessToken
+ Facebook: getAppAccessToken :: forall (m :: Type -> Type). (MonadResource m, MonadUnliftIO m, MonadThrow m, MonadIO m) => FacebookT Auth m AppAccessToken
- Facebook: getCheckin :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => Id -> [Argument] -> Maybe UserAccessToken -> FacebookT anyAuth m Checkin
+ Facebook: getCheckin :: forall (m :: Type -> Type) anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m) => Id -> [Argument] -> Maybe UserAccessToken -> FacebookT anyAuth m Checkin
- Facebook: getFriendListMembers :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => Id -> [Argument] -> UserAccessToken -> FacebookT anyAuth m (Pager Friend)
+ Facebook: getFriendListMembers :: forall (m :: Type -> Type) anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m) => Id -> [Argument] -> UserAccessToken -> FacebookT anyAuth m (Pager Friend)
- Facebook: getObject :: (MonadResource m, MonadUnliftIO m, MonadThrow m, FromJSON a) => Text -> [Argument] -> Maybe (AccessToken anyKind) -> FacebookT anyAuth m a
+ Facebook: getObject :: forall (m :: Type -> Type) a anyKind anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m, FromJSON a) => Text -> [Argument] -> Maybe (AccessToken anyKind) -> FacebookT anyAuth m a
- Facebook: getOrder :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => OrderId -> UserAccessToken -> FacebookT anyAuth m Order
+ Facebook: getOrder :: forall (m :: Type -> Type) anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m) => OrderId -> UserAccessToken -> FacebookT anyAuth m Order
- Facebook: getPage :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => Id -> [Argument] -> Maybe UserAccessToken -> FacebookT anyAuth m Page
+ Facebook: getPage :: forall (m :: Type -> Type) anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m) => Id -> [Argument] -> Maybe UserAccessToken -> FacebookT anyAuth m Page
- Facebook: getPage_ :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => Id -> [Argument] -> Maybe AppAccessToken -> FacebookT anyAuth m Page
+ Facebook: getPage_ :: forall (m :: Type -> Type) anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m) => Id -> [Argument] -> Maybe AppAccessToken -> FacebookT anyAuth m Page
- Facebook: getRealTimeUpdateNotifications :: (Monad m, FromJSON a, MonadIO m) => ByteString -> ByteString -> FacebookT Auth m (Maybe (RealTimeUpdateNotification a))
+ Facebook: getRealTimeUpdateNotifications :: forall (m :: Type -> Type) a. (Monad m, FromJSON a, MonadIO m) => ByteString -> ByteString -> FacebookT Auth m (Maybe (RealTimeUpdateNotification a))
- Facebook: getTestUsers :: (MonadResource m, MonadUnliftIO m, MonadThrow m, MonadIO m) => AppAccessToken -> FacebookT Auth m (Pager TestUser)
+ Facebook: getTestUsers :: forall (m :: Type -> Type). (MonadResource m, MonadUnliftIO m, MonadThrow m, MonadIO m) => AppAccessToken -> FacebookT Auth m (Pager TestUser)
- Facebook: getUser :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => UserId -> [Argument] -> Maybe UserAccessToken -> FacebookT anyAuth m User
+ Facebook: getUser :: forall (m :: Type -> Type) anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m) => UserId -> [Argument] -> Maybe UserAccessToken -> FacebookT anyAuth m User
- Facebook: getUserAccessTokenStep1 :: (Monad m, MonadIO m) => RedirectUrl -> [Permission] -> FacebookT Auth m Text
+ Facebook: getUserAccessTokenStep1 :: forall (m :: Type -> Type). (Monad m, MonadIO m) => RedirectUrl -> [Permission] -> FacebookT Auth m Text
- Facebook: getUserAccessTokenStep2 :: (MonadResource m, MonadUnliftIO m, MonadThrow m, MonadIO m) => RedirectUrl -> [Argument] -> FacebookT Auth m UserAccessToken
+ Facebook: getUserAccessTokenStep2 :: forall (m :: Type -> Type). (MonadResource m, MonadUnliftIO m, MonadThrow m, MonadIO m) => RedirectUrl -> [Argument] -> FacebookT Auth m UserAccessToken
- Facebook: getUserCheckins :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => UserId -> [Argument] -> UserAccessToken -> FacebookT anyAuth m (Pager Checkin)
+ Facebook: getUserCheckins :: forall (m :: Type -> Type) anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m) => UserId -> [Argument] -> UserAccessToken -> FacebookT anyAuth m (Pager Checkin)
- Facebook: getUserFriendLists :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => UserId -> [Argument] -> UserAccessToken -> FacebookT anyAuth m (Pager FriendList)
+ Facebook: getUserFriendLists :: forall (m :: Type -> Type) anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m) => UserId -> [Argument] -> UserAccessToken -> FacebookT anyAuth m (Pager FriendList)
- Facebook: getUserFriends :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => UserId -> [Argument] -> UserAccessToken -> FacebookT anyAuth m (Pager Friend)
+ Facebook: getUserFriends :: forall (m :: Type -> Type) anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m) => UserId -> [Argument] -> UserAccessToken -> FacebookT anyAuth m (Pager Friend)
- Facebook: getUserLogoutUrl :: Monad m => UserAccessToken -> RedirectUrl -> FacebookT Auth m Text
+ Facebook: getUserLogoutUrl :: forall (m :: Type -> Type). Monad m => UserAccessToken -> RedirectUrl -> FacebookT Auth m Text
- Facebook: isValid :: (MonadResource m, MonadUnliftIO m) => AccessToken anyKind -> FacebookT anyAuth m Bool
+ Facebook: isValid :: forall (m :: Type -> Type) anyKind anyAuth. (MonadResource m, MonadUnliftIO m) => AccessToken anyKind -> FacebookT anyAuth m Bool
- Facebook: listSubscriptions :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => AppAccessToken -> FacebookT Auth m [RealTimeUpdateSubscription]
+ Facebook: listSubscriptions :: forall (m :: Type -> Type). (MonadResource m, MonadUnliftIO m, MonadThrow m) => AppAccessToken -> FacebookT Auth m [RealTimeUpdateSubscription]
- Facebook: makeFriendConn :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => TestUser -> TestUser -> FacebookT Auth m ()
+ Facebook: makeFriendConn :: forall (m :: Type -> Type). (MonadResource m, MonadUnliftIO m, MonadThrow m) => TestUser -> TestUser -> FacebookT Auth m ()
- Facebook: modifySubscription :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => RealTimeUpdateObject -> [RealTimeUpdateField] -> RealTimeUpdateUrl -> RealTimeUpdateToken -> AppAccessToken -> FacebookT Auth m ()
+ Facebook: modifySubscription :: forall (m :: Type -> Type). (MonadResource m, MonadUnliftIO m, MonadThrow m) => RealTimeUpdateObject -> [RealTimeUpdateField] -> RealTimeUpdateUrl -> RealTimeUpdateToken -> AppAccessToken -> FacebookT Auth m ()
- Facebook: parseSignedRequest :: (FromJSON a, Monad m, MonadIO m) => ByteString -> FacebookT Auth m (Maybe a)
+ Facebook: parseSignedRequest :: forall a (m :: Type -> Type). (FromJSON a, Monad m, MonadIO m) => ByteString -> FacebookT Auth m (Maybe a)
- Facebook: postObject :: (MonadResource m, MonadUnliftIO m, MonadThrow m, FromJSON a) => Text -> [Argument] -> AccessToken anyKind -> FacebookT Auth m a
+ Facebook: postObject :: forall (m :: Type -> Type) a anyKind. (MonadResource m, MonadUnliftIO m, MonadThrow m, FromJSON a) => Text -> [Argument] -> AccessToken anyKind -> FacebookT Auth m a
- Facebook: removeTestUser :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => TestUser -> AppAccessToken -> FacebookT Auth m Bool
+ Facebook: removeTestUser :: forall (m :: Type -> Type). (MonadResource m, MonadUnliftIO m, MonadThrow m) => TestUser -> AppAccessToken -> FacebookT Auth m Bool
- Facebook: searchObjects :: (MonadResource m, MonadUnliftIO m, MonadThrow m, FromJSON a) => Text -> Text -> [Argument] -> Maybe UserAccessToken -> FacebookT anyAuth m (Pager a)
+ Facebook: searchObjects :: forall (m :: Type -> Type) a anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m, FromJSON a) => Text -> Text -> [Argument] -> Maybe UserAccessToken -> FacebookT anyAuth m (Pager a)
- Facebook: searchPages :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => Text -> [Argument] -> Maybe UserAccessToken -> FacebookT anyAuth m (Pager Page)
+ Facebook: searchPages :: forall (m :: Type -> Type) anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m) => Text -> [Argument] -> Maybe UserAccessToken -> FacebookT anyAuth m (Pager Page)
- Facebook: searchUsers :: (MonadResource m, MonadUnliftIO m, MonadThrow m) => Text -> [Argument] -> Maybe UserAccessToken -> FacebookT anyAuth m (Pager User)
+ Facebook: searchUsers :: forall (m :: Type -> Type) anyAuth. (MonadResource m, MonadUnliftIO m, MonadThrow m) => Text -> [Argument] -> Maybe UserAccessToken -> FacebookT anyAuth m (Pager User)
- Facebook: setApiVersion :: MonadIO m => ApiVersion -> FacebookT anyAuth m ()
+ Facebook: setApiVersion :: forall (m :: Type -> Type) anyAuth. MonadIO m => ApiVersion -> FacebookT anyAuth m ()
- Facebook: verifyRealTimeUpdateNotifications :: (Monad m, MonadIO m) => ByteString -> ByteString -> FacebookT Auth m (Maybe ByteString)
+ Facebook: verifyRealTimeUpdateNotifications :: forall (m :: Type -> Type). (Monad m, MonadIO m) => ByteString -> ByteString -> FacebookT Auth m (Maybe ByteString)
Files
- CHANGELOG.md +4/−0
- fb.cabal +16/−5
- src/Facebook/Base.hs +8/−0
CHANGELOG.md view
@@ -1,3 +1,7 @@+# Version 2.1.1.2++* Add support for Aeson v2.2+.+ # Version 2.1.1.1 * Add support for Aeson v2+.
fb.cabal view
@@ -1,11 +1,11 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.34.5.+-- This file has been generated from package.yaml by hpack version 0.37.0. -- -- see: https://github.com/sol/hpack name: fb-version: 2.1.1.1+version: 2.1.1.2 synopsis: Bindings to Facebook's API. description: This package exports bindings to Facebook's APIs (see <http://developers.facebook.com/>). Does not have any external@@ -45,6 +45,11 @@ manual: False default: False +flag pre-aeson-2-2-compat+ description: Build with aeson < 2.2 where the attoparsec-aeson package didn't exist.+ manual: False+ default: False+ library exposed-modules: Facebook@@ -69,8 +74,7 @@ src ghc-options: -Wall build-depends:- aeson >=0.8.0.2- , attoparsec >=0.10.4+ attoparsec >=0.10.4 , base ==4.* , bytestring >=0.9 , conduit >=1.3.0@@ -90,9 +94,16 @@ , unliftio , unliftio-core , unordered-containers+ default-language: Haskell2010 if flag(debug) cpp-options: -DDEBUG- default-language: Haskell2010+ if flag(pre-aeson-2-2-compat)+ build-depends:+ aeson >=0.8.0.2+ else+ build-depends:+ aeson >=2.2.0.0+ , attoparsec-aeson >=2.1.0.0 test-suite runtests type: exitcode-stdio-1.0
src/Facebook/Base.hs view
@@ -25,6 +25,9 @@ import qualified Control.Monad.Trans.Resource as R import qualified Data.Aeson as A import qualified Data.Attoparsec.ByteString.Char8 as AT+#if MIN_VERSION_aeson(2,2,0)+import qualified Data.Aeson.Parser.Internal as AesonParserInternal+#endif import qualified Data.ByteString as B import qualified Data.Conduit as C import Data.Conduit ((.|))@@ -114,7 +117,12 @@ _ <- liftIO $ printf "asJsonHelper: %s\n" (show bs) val <- either (fail . ("asJsonHelper: A.decode returned " ++)) return (A.eitherDecode bs) #else+ -- aeson-2.2 moved this to new package `attoparsec-aeson`+#if MIN_VERSION_aeson(2,2,0)+ val <- C.runConduit $ (H.responseBody response) .| C.sinkParser AesonParserInternal.json'+#else val <- C.runConduit $ (H.responseBody response) .| C.sinkParser A.json'+#endif #endif case A.fromJSON val of A.Success r -> return r