git.iko.soy/typeable/pagerduty
on develop help sign in
10 files changed+25−32
since splitsnapshots
unifiedsplit
pagerduty.cabal+2−2 src/Control/Monad/Trans/PagerDuty.hs+1 src/Network/PagerDuty/Integration.hs+1−1 src/Network/PagerDuty/Internal/Query.hs+2−2 src/Network/PagerDuty/Internal/Types.hs+10−8 src/Network/PagerDuty/REST/EscalationPolicies/EscalationRules.hs+1−1 src/Network/PagerDuty/REST/LogEntries.hs+1−2 stack-7.10.3.yaml−9 stack-8.0.1.yaml−6 stack.yaml+7−1
pagerduty.cabal+2−2
@@ -71,7 +71,7 @@ library
7171 , Network.PagerDuty.Types
7272
7373 build-depends:
74− aeson >= 0.8
74+ aeson >= 2.0
7575 , base >= 4.7 && < 5
7676 , bifunctors >= 4.1
7777 , bytestring >= 0.9
@@ -79,7 +79,7 @@ library
7979 , conduit > 1.1
8080 , data-default-class >= 0.0.1
8181 , exceptions >= 0.6
82− , generics-sop >= 0.2.0.0
82+ , generics-sop >= 0.5.0.0
8383 , http-client >= 0.5 && < 1
8484 , http-types >= 0.8
8585 , lens >= 4.4
src/Control/Monad/Trans/PagerDuty.hs+1
@@ -42,6 +42,7 @@ module Control.Monad.Trans.PagerDuty
4242 ) where
4343
4444import Control.Applicative
45+import Control.Monad
4546import Control.Monad.Base
4647import Control.Monad.Catch
4748import Control.Monad.Except (MonadError (..))
src/Network/PagerDuty/Integration.hs+1−1
@@ -81,7 +81,7 @@ module Network.PagerDuty.Integration
8181import Control.Lens
8282import Control.Monad.IO.Class
8383import Data.Aeson
84−import qualified Data.HashMap.Strict as Map
84+import qualified Data.Aeson.KeyMap as Map
8585import Data.Text (Text)
8686import Network.HTTP.Client (Manager)
8787import qualified Network.HTTP.Client as Client
src/Network/PagerDuty/Internal/Query.hs+2−2
@@ -59,8 +59,8 @@ gqueryWith :: forall a. (Generic a, HasDatatypeInfo a, All2 QueryValues (Code a)
5959 -> a
6060 -> Query
6161gqueryWith o a = case datatypeInfo (Proxy :: Proxy a) of
62− ADT _ _ cs -> go cs (from a)
63− Newtype _ _ c -> go (c :* Nil) (from a)
62+ ADT _ _ cs _ -> go cs (from a)
63+ Newtype _ _ c -> go (c :* Nil) (from a)
6464 where
6565 go :: (All2 QueryValues xss, SListI xss)
6666 => NP ConstructorInfo xss
src/Network/PagerDuty/Internal/Types.hs+10−8
@@ -29,14 +29,14 @@ module Network.PagerDuty.Internal.Types where
2929import Control.Applicative
3030import Control.Lens hiding ((.=), Empty)
3131import Control.Monad.IO.Class
32−import Data.Aeson hiding (Error)
32+import Data.Aeson hiding (Error, Key)
33+import qualified Data.Aeson.KeyMap as Map
3334import Data.Aeson.Types (Parser)
3435import Data.ByteString (ByteString)
3536import qualified Data.ByteString.Char8 as BS
3637import Data.ByteString.Conversion hiding (List)
3738import Data.Default.Class
3839import Data.Function (on)
39−import qualified Data.HashMap.Strict as Map
4040import Data.List (deleteBy, intersperse)
4141import Data.Monoid
4242import Data.String
@@ -53,7 +53,7 @@ import Network.PagerDuty.Internal.TH
5353import Data.Time.Locale.Compat
5454
5555newtype CSV a = CSV [a]
56− deriving (Eq, Show, Monoid)
56+ deriving (Eq, Show, Semigroup, Monoid)
5757
5858makePrisms ''CSV
5959
@@ -70,7 +70,7 @@ instance ToByteString a => ToJSON (CSV a) where
7070 toJSON = String . Text.decodeUtf8 . toByteString'
7171
7272newtype List a = L [a]
73− deriving (Eq, Show, Monoid)
73+ deriving (Eq, Show, Semigroup, Monoid)
7474
7575deriveJSON ''List
7676makePrisms ''List
@@ -310,11 +310,13 @@ data Path where
310310 Path :: Path
311311 Seg :: ToByteString a => a -> Path
312312
313+instance Semigroup Path where
314+ x <> Path = x
315+ Path <> y = y
316+ Seg x <> Seg y = Seg (builder x <> "/" <> builder y)
317+
313318instance Monoid Path where
314− mempty = Path
315− mappend x Path = x
316− mappend Path y = y
317− mappend (Seg x) (Seg y) = Seg (builder x <> "/" <> builder y)
319+ mempty = Path
318320
319321instance IsString Path where
320322 fromString = Seg
src/Network/PagerDuty/REST/EscalationPolicies/EscalationRules.hs+1−1
@@ -67,7 +67,7 @@ module Network.PagerDuty.REST.EscalationPolicies.EscalationRules
6767import Control.Applicative ((<$>))
6868import Control.Lens hiding ((.=))
6969import Data.Aeson
70−import qualified Data.HashMap.Strict as Map
70+import qualified Data.Aeson.KeyMap as Map
7171import Data.Text (Text)
7272import Network.HTTP.Types
7373import Network.PagerDuty.Internal.TH
src/Network/PagerDuty/REST/LogEntries.hs+1−2
@@ -111,12 +111,11 @@ module Network.PagerDuty.REST.LogEntries
111111 , nAddress
112112 ) where
113113
114−import Control.Applicative
115114import Control.Lens hiding (Empty)
116115import Data.Aeson
117116import Data.Aeson.Lens
117+import qualified Data.Aeson.KeyMap as Map
118118import Data.Default.Class
119−import qualified Data.HashMap.Strict as Map
120119import Data.Text (Text)
121120import qualified Data.Text as Text
122121import Data.Time
stack-7.10.3.yamldeleted−9
@@ -1,9 +0,0 @@
1−compiler: ghc-7.10.3
2−resolver: lts-6.9
3−flags: {}
4−extra-deps:
5− - http-conduit-2.2.0
6− - http-client-0.5.0.1
7− - http-client-tls-0.3.0
8−packages:
9− - '.'
stack-8.0.1.yamldeleted−6
@@ -1,6 +0,0 @@
1−compiler: ghc-8.0.1
2−resolver: nightly-2016-09-18
3−flags: {}
4−extra-deps: []
5−packages:
6− - '.'
stack.yamlmode 120000 → 100644+7−1
@@ -1 +0,0 @@
1−stack-8.0.1.yaml
@@ -0,0 +1,7 @@
1+resolver: lts-19.23
2+
3+packages:
4+- .
5+
6+nix:
7+ packages: [zlib]