nationstates 0.2.0.3 → 0.3.0.0
raw patch · 2 files changed
+8/−8 lines, 2 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
- NationStates.Core: [contextManager] :: Context -> Manager
- NationStates.Core: [contextRateLimit] :: Context -> forall a. IO a -> IO a
- NationStates.Core: [contextUserAgent] :: Context -> String
- NationStates.Core: [queryOptions] :: Query -> Map String String
- NationStates.Core: [queryShards] :: Query -> Map String (Set (Maybe Integer))
- NationStates.Core: instance GHC.Base.Monoid NationStates.Core.Query
- NationStates.Core: instance GHC.Show.Show NationStates.Core.Query
- NationStates.Nation: [unNation] :: Nation a -> NS a
- NationStates.Nation: instance GHC.Base.Applicative NationStates.Nation.Nation
- NationStates.Nation: instance GHC.Base.Functor NationStates.Nation.Nation
- NationStates.Region: [unRegion] :: Region a -> NS a
- NationStates.Region: instance GHC.Base.Applicative NationStates.Region.Region
- NationStates.Region: instance GHC.Base.Functor NationStates.Region.Region
- NationStates.Types: instance GHC.Classes.Eq NationStates.Types.FatherOrMother
- NationStates.Types: instance GHC.Classes.Eq NationStates.Types.WACategory
- NationStates.Types: instance GHC.Classes.Ord NationStates.Types.FatherOrMother
- NationStates.Types: instance GHC.Classes.Ord NationStates.Types.WACategory
- NationStates.Types: instance GHC.Read.Read NationStates.Types.FatherOrMother
- NationStates.Types: instance GHC.Read.Read NationStates.Types.WACategory
- NationStates.Types: instance GHC.Show.Show NationStates.Types.FatherOrMother
- NationStates.Types: instance GHC.Show.Show NationStates.Types.WACategory
+ NationStates.Core: contextManager :: Context -> Manager
+ NationStates.Core: contextRateLimit :: Context -> forall a. IO a -> IO a
+ NationStates.Core: contextUserAgent :: Context -> String
+ NationStates.Core: instance Monoid Query
+ NationStates.Core: instance Show Query
+ NationStates.Core: queryOptions :: Query -> Map String String
+ NationStates.Core: queryShards :: Query -> Map String (Set (Maybe Integer))
+ NationStates.Nation: instance Applicative Nation
+ NationStates.Nation: instance Functor Nation
+ NationStates.Nation: unNation :: Nation a -> NS a
+ NationStates.Region: instance Applicative Region
+ NationStates.Region: instance Functor Region
+ NationStates.Region: unRegion :: Region a -> NS a
+ NationStates.Types: instance Eq FatherOrMother
+ NationStates.Types: instance Eq WACategory
+ NationStates.Types: instance Ord FatherOrMother
+ NationStates.Types: instance Ord WACategory
+ NationStates.Types: instance Read FatherOrMother
+ NationStates.Types: instance Read WACategory
+ NationStates.Types: instance Show FatherOrMother
+ NationStates.Types: instance Show WACategory
Files
- NationStates/RateLimit.hs +7/−7
- nationstates.cabal +1/−1
NationStates/RateLimit.hs view
@@ -38,13 +38,13 @@ -- | Run the given action, pausing as necessary to keep under the rate limit. rateLimit :: RateLimit -> IO a -> IO a rateLimit RateLimit { rateLock = lock, rateDelay = delay } action =- mask $ \restore -> do- prev <- takeMVar lock- now <- getTime Monotonic- threadDelay' $ prev + delay - now- result <- restore action- putMVar lock =<< getTime Monotonic- return result+ bracketOnError+ (takeMVar lock)+ (tryPutMVar lock)+ (\prev -> do+ now <- getTime Monotonic+ threadDelay' $ prev + delay - now+ action `finally` (putMVar lock =<< getTime Monotonic)) threadDelay' :: TimeSpec -> IO ()
nationstates.cabal view
@@ -1,5 +1,5 @@ name: nationstates-version: 0.2.0.3+version: 0.3.0.0 synopsis: NationStates API client description: NationStates API client