packages feed

pinboard 0.9.3 → 0.9.4

raw patch · 5 files changed

+21/−13 lines, 5 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Pinboard.ApiTypes: instance GHC.Generics.Constructor Pinboard.ApiTypes.C1_0DoneResult
+ Pinboard.ApiTypes: instance GHC.Generics.Constructor Pinboard.ApiTypes.C1_0JsonTagMap
+ Pinboard.ApiTypes: instance GHC.Generics.Constructor Pinboard.ApiTypes.C1_0Note
+ Pinboard.ApiTypes: instance GHC.Generics.Constructor Pinboard.ApiTypes.C1_0NoteList
+ Pinboard.ApiTypes: instance GHC.Generics.Constructor Pinboard.ApiTypes.C1_0NoteListItem
+ Pinboard.ApiTypes: instance GHC.Generics.Constructor Pinboard.ApiTypes.C1_0Post
+ Pinboard.ApiTypes: instance GHC.Generics.Constructor Pinboard.ApiTypes.C1_0PostDates
+ Pinboard.ApiTypes: instance GHC.Generics.Constructor Pinboard.ApiTypes.C1_0Posts
+ Pinboard.ApiTypes: instance GHC.Generics.Constructor Pinboard.ApiTypes.C1_0Suggested
+ Pinboard.ApiTypes: instance GHC.Generics.Constructor Pinboard.ApiTypes.C1_0TextResult
+ Pinboard.ApiTypes: instance GHC.Generics.Constructor Pinboard.ApiTypes.C1_0UpdateTime
+ Pinboard.ApiTypes: instance GHC.Generics.Constructor Pinboard.ApiTypes.C1_1Suggested
+ Pinboard.ApiTypes: instance GHC.Generics.Datatype Pinboard.ApiTypes.D1DoneResult
+ Pinboard.ApiTypes: instance GHC.Generics.Datatype Pinboard.ApiTypes.D1JsonTagMap
+ Pinboard.ApiTypes: instance GHC.Generics.Datatype Pinboard.ApiTypes.D1Note
+ Pinboard.ApiTypes: instance GHC.Generics.Datatype Pinboard.ApiTypes.D1NoteList
+ Pinboard.ApiTypes: instance GHC.Generics.Datatype Pinboard.ApiTypes.D1NoteListItem
+ Pinboard.ApiTypes: instance GHC.Generics.Datatype Pinboard.ApiTypes.D1Post
+ Pinboard.ApiTypes: instance GHC.Generics.Datatype Pinboard.ApiTypes.D1PostDates
+ Pinboard.ApiTypes: instance GHC.Generics.Datatype Pinboard.ApiTypes.D1Posts
+ Pinboard.ApiTypes: instance GHC.Generics.Datatype Pinboard.ApiTypes.D1Suggested
+ Pinboard.ApiTypes: instance GHC.Generics.Datatype Pinboard.ApiTypes.D1TextResult
+ Pinboard.ApiTypes: instance GHC.Generics.Datatype Pinboard.ApiTypes.D1UpdateTime
+ Pinboard.ApiTypes: instance GHC.Generics.Generic Pinboard.ApiTypes.DoneResult
+ Pinboard.ApiTypes: instance GHC.Generics.Generic Pinboard.ApiTypes.JsonTagMap
+ Pinboard.ApiTypes: instance GHC.Generics.Generic Pinboard.ApiTypes.Note
+ Pinboard.ApiTypes: instance GHC.Generics.Generic Pinboard.ApiTypes.NoteList
+ Pinboard.ApiTypes: instance GHC.Generics.Generic Pinboard.ApiTypes.NoteListItem
+ Pinboard.ApiTypes: instance GHC.Generics.Generic Pinboard.ApiTypes.Post
+ Pinboard.ApiTypes: instance GHC.Generics.Generic Pinboard.ApiTypes.PostDates
+ Pinboard.ApiTypes: instance GHC.Generics.Generic Pinboard.ApiTypes.Posts
+ Pinboard.ApiTypes: instance GHC.Generics.Generic Pinboard.ApiTypes.Suggested
+ Pinboard.ApiTypes: instance GHC.Generics.Generic Pinboard.ApiTypes.TextResult
+ Pinboard.ApiTypes: instance GHC.Generics.Generic Pinboard.ApiTypes.UpdateTime
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_0DoneResult
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_0JsonTagMap
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_0Note
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_0NoteList
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_0NoteListItem
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_0Post
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_0PostDates
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_0Posts
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_0TextResult
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_0UpdateTime
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_1Note
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_1NoteList
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_1NoteListItem
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_1Post
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_1PostDates
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_1Posts
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_2Note
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_2NoteListItem
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_2Post
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_2PostDates
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_2Posts
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_3Note
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_3NoteListItem
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_3Post
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_4Note
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_4NoteListItem
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_4Post
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_5Note
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_5NoteListItem
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_5Post
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_6Note
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_6Post
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_7Post
+ Pinboard.ApiTypes: instance GHC.Generics.Selector Pinboard.ApiTypes.S1_0_8Post

Files

changelog.md view
@@ -1,3 +1,7 @@+__v0.9.4__++derive generic+ __v0.9.3__  Add lenses
pinboard.cabal view
@@ -1,5 +1,5 @@ name:                pinboard-version:             0.9.3+version:             0.9.4 synopsis:            Access to the Pinboard API license:             MIT license-file:        LICENSE
src/Pinboard/ApiTypes.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-}@@ -20,6 +21,7 @@ import Data.Text           (Text, words, unwords, unpack, pack) import Data.Time           (UTCTime) import Data.Time.Calendar  (Day)+import GHC.Generics        (Generic)  import qualified Data.HashMap.Strict as HM import qualified Data.Vector as V@@ -41,7 +43,7 @@       postsDate         :: !UTCTime     , postsUser         :: !Text     , postsPosts        :: [Post]-    } deriving (Show, Eq, Data, Typeable, Ord)+    } deriving (Show, Eq, Data, Typeable, Generic, Ord)  instance FromJSON Posts where    parseJSON (Object o) =@@ -66,7 +68,7 @@     , postShared       :: !Bool     , postToRead       :: !Bool     , postTags         :: [Tag]-    } deriving (Show, Eq, Data, Typeable, Ord)+    } deriving (Show, Eq, Data, Typeable, Generic, Ord)  instance FromJSON Post where    parseJSON (Object o) =@@ -105,7 +107,7 @@       postDatesUser     :: !Text     , postDatesTag      :: !Text     , postDatesCount    :: [(Day, Int)]-    } deriving (Show, Eq, Data, Typeable, Ord)+    } deriving (Show, Eq, Data, Typeable, Generic, Ord)  instance FromJSON PostDates where    parseJSON (Object o) =@@ -135,7 +137,7 @@ data NoteList = NoteList {       noteListCount     :: !Int     , noteListItems     :: [NoteListItem]-    } deriving (Show, Eq, Data, Typeable, Ord)+    } deriving (Show, Eq, Data, Typeable, Generic, Ord)  instance FromJSON NoteList where    parseJSON (Object o) =@@ -155,7 +157,7 @@     , noteListItemLength :: !Int     , noteListItemCreatedAt :: !UTCTime     , noteListItemUpdatedAt :: !UTCTime-    } deriving (Show, Eq, Data, Typeable, Ord)+    } deriving (Show, Eq, Data, Typeable, Generic, Ord)  instance FromJSON NoteListItem where    parseJSON (Object o) =@@ -185,7 +187,7 @@     , noteLength :: !Int     , noteCreatedAt :: !UTCTime     , noteUpdatedAt :: !UTCTime-    } deriving (Show, Eq, Data, Typeable, Ord)+    } deriving (Show, Eq, Data, Typeable, Generic, Ord)  instance FromJSON Note where    parseJSON (Object o) =@@ -225,7 +227,7 @@ type TagMap = HashMap Tag Int  newtype JsonTagMap = ToJsonTagMap {fromJsonTagMap :: TagMap}-    deriving (Show, Eq, Data, Typeable)+  deriving (Show, Eq, Data, Typeable, Generic)  instance FromJSON JsonTagMap where   parseJSON = return . toTags@@ -238,7 +240,7 @@  data Suggested = Popular [Text]                | Recommended [Text]-    deriving (Show, Eq, Data, Typeable, Ord)+    deriving (Show, Eq, Data, Typeable, Generic, Ord)  instance FromJSON Suggested where    parseJSON (Object o)@@ -258,7 +260,7 @@ -- * Scalars  newtype DoneResult = ToDoneResult {fromDoneResult :: ()}-    deriving (Show, Eq, Data, Typeable, Ord)+    deriving (Show, Eq, Data, Typeable, Generic, Ord)  instance FromJSON DoneResult where   parseJSON (Object o) = parseDone =<< (o .: "result" <|> o .: "result_code")@@ -269,14 +271,14 @@   parseJSON _ = error "bad parse"  newtype TextResult = ToTextResult {fromTextResult :: Text}-    deriving (Show, Eq, Data, Typeable, Ord)+    deriving (Show, Eq, Data, Typeable, Generic, Ord)  instance FromJSON TextResult where   parseJSON (Object o) = ToTextResult <$> (o .: "result")   parseJSON _ = error "bad parse"  newtype UpdateTime = ToUpdateTime {fromUpdateTime :: UTCTime}-    deriving (Show, Eq, Data, Typeable, Ord)+    deriving (Show, Eq, Data, Typeable, Generic, Ord)  instance FromJSON UpdateTime where   parseJSON (Object o) = ToUpdateTime <$> (o .: "update_time")
src/Pinboard/ApiTypesLens.hs view
@@ -441,6 +441,7 @@            (Popular y1_acHt) -> Right y1_acHt            _ -> Left x_acHs)            (either pure (fmap Popular)) . right'+{-# INLINE popularP #-}         recommendedP :: Prism_' Suggested [Text]@@ -449,4 +450,5 @@            (Recommended y1_acHw) -> Right y1_acHw            _ -> Left x_acHv)           (either pure (fmap Recommended)) . right' +{-# INLINE recommendedP #-} 
src/Pinboard/Client.hs view
@@ -155,7 +155,7 @@ buildReq url = do   req <- liftIO $ parseUrl $ "https://api.pinboard.in/v1/" <> url   return $ req -    { requestHeaders = [("User-Agent","pinboard.hs/0.9.3")]+    { requestHeaders = [("User-Agent","pinboard.hs/0.9.4")]     , checkStatus = \_ _ _ -> Nothing     }