packages feed

nationstates 0.1.0 → 0.1.0.1

raw patch · 5 files changed

+35/−8 lines, 5 filesdep ~basePVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: base

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/Core.hs view
@@ -33,9 +33,10 @@     ) where  +import Control.Applicative import qualified Data.ByteString.Char8 as BC import Data.Functor.Compose-import Data.Foldable (toList)+import qualified Data.Foldable as F import Data.List import Data.List.Split import Data.Monoid@@ -48,6 +49,7 @@ import qualified Network.HTTP.Types as HTTP import Text.Read import Text.XML.Light+import Prelude  -- GHC 7.10  import NationStates.Types @@ -127,7 +129,7 @@     req = initRequest {         queryString             = HTTP.renderQuery True (HTTP.toQuery $-                toList kindAndName ++ [("q", shards), ("v", show apiVersion)])+                F.toList kindAndName ++ [("q", shards), ("v", show apiVersion)])             <> BC.pack options,         requestHeaders             = ("User-Agent", BC.pack $ contextUserAgent c)@@ -185,7 +187,7 @@ queryToUrl :: Query -> (String, String) queryToUrl q = (shards, options)   where-    shards = intercalate "+" [ name ++ foldMap (\i -> "-" ++ show i) maybeId |+    shards = intercalate "+" [ name ++ F.foldMap (\i -> "-" ++ show i) maybeId |         (name, is) <- Map.toList $ queryShards q,         maybeId <- Set.toList is ]     options = concat [ ";" ++ k ++ "=" ++ v |
NationStates/Nation.hs view
@@ -93,10 +93,12 @@     ) where  +import Control.Applicative import Data.Maybe import qualified Data.Map as Map import qualified Data.MultiSet as MultiSet import Text.XML.Light+import Prelude  -- GHC 7.10  import NationStates.Core 
NationStates/Region.hs view
@@ -53,6 +53,9 @@     ) where  +import Control.Applicative+import Prelude  -- GHC 7.10+ import NationStates.Core  
README.md view
@@ -1,4 +1,4 @@-# NationStates for Haskell+# NationStates for Haskell [![Build Status](https://api.travis-ci.org/lfairy/nationstates.svg)](https://travis-ci.org/lfairy/nationstates)  [NationStates] is an online government simulation game, created by Max Barry. The site generates a wealth of data, some of which can be accessed through its [official API]. @@ -8,11 +8,31 @@ [official API]: https://www.nationstates.net/pages/api.html  +## Features++* **Type safe**: you can't refer to a shard unless you explicitly request it.++* **Automatic rate limiting**, which can be disabled or overridden if you want.++* **HTTP support** via the [tls] library.++* **Free and open source** under the Apache License, version 2.0.++[tls]: https://hackage.haskell.org/package/tls++ ## Dependencies -* GHC 7.10+* GHC 7.6 or newer -    + GHC 7.8 support is planned – patches welcome!++## Installation++`nationstates` is hosted on [Hackage].++    cabal install nationstates++[Hackage]: https://hackage.haskell.org/package/nationstates   ## Example
nationstates.cabal view
@@ -1,5 +1,5 @@ name: nationstates-version: 0.1.0+version: 0.1.0.1 synopsis: NationStates API client description:     NationStates API client@@ -24,7 +24,7 @@         NationStates.Region         NationStates.Types     build-depends:-        base >= 4.8 && < 5,+        base >= 4.6 && < 5,         bytestring,         clock,         containers,