packages feed

stratux-http 0.0.4 → 0.0.5

raw patch · 3 files changed

+56/−10 lines, 3 filesdep ~stratux-typesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: stratux-types

API changes (from Hackage documentation)

+ Data.Aviation.Stratux.HTTP: getSettings :: URIAuth -> String -> String -> EitherT String IO Settings
+ Data.Aviation.Stratux.HTTP: getSettings' :: URIAuth -> String -> String -> EitherT String IO Settings
+ Data.Aviation.Stratux.HTTP: getSettingsWith :: HStream x => (x -> Either e Settings) -> URIAuth -> String -> String -> EitherT e IO Settings
+ Data.Aviation.Stratux.HTTP: getWith :: HStream x => String -> (x -> Either e a) -> URIAuth -> String -> String -> EitherT e IO a
- Data.Aviation.Stratux.HTTP: getStatusWith :: HStream x => (x -> Either e a) -> URIAuth -> String -> String -> EitherT e IO a
+ Data.Aviation.Stratux.HTTP: getStatusWith :: HStream x => (x -> Either e Status) -> URIAuth -> String -> String -> EitherT e IO Status

Files

changelog.md view
@@ -1,3 +1,7 @@+0.0.5++* add `getSettings` to get the settings.+ 0.0.4  * Initial.
src/Data/Aviation/Stratux/HTTP.hs view
@@ -1,8 +1,12 @@ module Data.Aviation.Stratux.HTTP(   stratuxHTTP+, getWith , getStatusWith , getStatus , getStatus'+, getSettingsWith+, getSettings+, getSettings' ) where  import Control.Applicative((<$>))@@ -10,6 +14,7 @@ import Control.Monad.Trans.Either(EitherT(EitherT)) import Data.Aeson(eitherDecode, eitherDecode') import Data.Aviation.Stratux.Types.Status(Status)+import Data.Aviation.Stratux.Types.Settings(Settings) import Data.Either(Either) import Data.Maybe(Maybe(Just)) import Data.String(String)@@ -20,24 +25,35 @@  stratuxHTTP ::    HStream b =>-  URIAuth-  -> String-  -> String-  -> String    +  URIAuth -- ^ authority @\/\/anonymous\@www.haskell.org:42@+  -> String -- ^ @\/ghc@+  -> String -- ^ query @?query@+  -> String -- ^ fragment @#frag@       -> IO b stratuxHTTP auth path query fragment =   simpleHTTP (mkRequest GET (URI "http:" (Just auth) path query fragment)) >>= getResponseBody -getStatusWith :: +getWith ::    HStream x =>-  (x -> Either e a)+  String -- ^ @\/ghc@+  -> (x -> Either e a)   -> URIAuth -- ^ authority @\/\/anonymous\@www.haskell.org:42@   -> String -- ^ query @?query@   -> String -- ^ fragment @#frag@   -> EitherT e IO a-getStatusWith d auth query fragment =-  EitherT (d <$> stratuxHTTP auth "/getStatus" query fragment)+getWith path d auth query fragment =+  EitherT (d <$> stratuxHTTP auth path query fragment) +getStatusWith :: +  HStream x =>+  (x -> Either e Status)+  -> URIAuth -- ^ authority @\/\/anonymous\@www.haskell.org:42@+  -> String -- ^ query @?query@+  -> String -- ^ fragment @#frag@+  -> EitherT e IO Status+getStatusWith =+  getWith "/getStatus"+ getStatus ::   URIAuth -- ^ authority @\/\/anonymous\@www.haskell.org:42@   -> String -- ^ query @?query@@@ -53,3 +69,29 @@   -> EitherT String IO Status getStatus' =   getStatusWith eitherDecode'++getSettingsWith :: +  HStream x =>+  (x -> Either e Settings)+  -> URIAuth -- ^ authority @\/\/anonymous\@www.haskell.org:42@+  -> String -- ^ query @?query@+  -> String -- ^ fragment @#frag@+  -> EitherT e IO Settings+getSettingsWith =+  getWith "/getSettings"++getSettings ::+  URIAuth -- ^ authority @\/\/anonymous\@www.haskell.org:42@+  -> String -- ^ query @?query@+  -> String -- ^ fragment @#frag@+  -> EitherT String IO Settings+getSettings =+  getSettingsWith eitherDecode++getSettings' ::+  URIAuth -- ^ authority @\/\/anonymous\@www.haskell.org:42@+  -> String -- ^ query @?query@+  -> String -- ^ fragment @#frag@+  -> EitherT String IO Settings+getSettings' =+  getSettingsWith eitherDecode'
stratux-http.cabal view
@@ -1,5 +1,5 @@ name:               stratux-http-version:            0.0.4+version:            0.0.5 license:            BSD3 license-file:       LICENCE author:             Tony Morris <ʇǝu˙sıɹɹoɯʇ@ןןǝʞsɐɥ>@@ -27,7 +27,7 @@    build-depends:                       base < 5 && >= 4-                    , stratux-types >= 0.0.4 && < 0.1+                    , stratux-types >= 0.0.5 && < 0.1                     , HTTP >= 4000 && < 5000                     , network-uri >= 2.6 && < 3.0                     , aeson >= 0.11 && < 1.0