git.iko.soy/typeable/pagerduty
on 0698ce8 help sign in
31 files changed+274−247
since splitsnapshots
unifiedsplit
.travis.yml+30−4 pagerduty.cabal+3−3 script/generate-pages−25 script/travis-lifecycle-before_install+16 script/travis-lifecycle-install+13 script/travis-lifecycle-script+9 script/travis-timeout+15 script/upload-documentation−37 src/Network/PagerDuty/Internal/Options.hs+3−3 src/Network/PagerDuty/Internal/Query.hs+8−7 src/Network/PagerDuty/Internal/TH.hs+5−5 src/Network/PagerDuty/Internal/Types.hs+4−4 src/Network/PagerDuty/REST/Alerts.hs+6−6 src/Network/PagerDuty/REST/EscalationPolicies.hs+13−13 src/Network/PagerDuty/REST/EscalationPolicies/EscalationRules.hs+9−9 src/Network/PagerDuty/REST/Incidents.hs+4−3 src/Network/PagerDuty/REST/Incidents/Notes.hs+11−11 src/Network/PagerDuty/REST/LogEntries.hs+5−5 src/Network/PagerDuty/REST/MaintenanceWindows.hs+9−9 src/Network/PagerDuty/REST/Reports.hs+10−10 src/Network/PagerDuty/REST/Schedules.hs+13−13 src/Network/PagerDuty/REST/Schedules/Overrides.hs+11−11 src/Network/PagerDuty/REST/Services.hs+15−15 src/Network/PagerDuty/REST/Services/EmailFilters.hs+13−13 src/Network/PagerDuty/REST/Users.hs+17−16 src/Network/PagerDuty/REST/Users/ContactMethods.hs+9−9 src/Network/PagerDuty/REST/Users/NotificationRules.hs+9−9 src/Network/PagerDuty/REST/Webhooks.hs+3−2 stack-7.10.2.yaml+5 stack-7.8.4.yaml+5 stack.yaml+1−5
.travis.yml+30−4
@@ -1,4 +1,30 @@
1−language: haskell
2−ghc: 7.8.4
3−install: []
4−script: [make all]
1+sudo: false
2+
3+cache:
4+ apt: true
5+ directories:
6+ - ~/.stack
7+
8+branches:
9+ only:
10+ - master
11+ - develop
12+
13+before_install:
14+ - export PATH=/opt/ghc/$GHCVER/bin:$PATH
15+ - export PATH=~/.local/bin:$PATH
16+ - ./script/travis-lifecycle-before_install
17+
18+install:
19+ - ./script/travis-lifecycle-install
20+
21+script:
22+ - ./script/travis-lifecycle-script
23+
24+matrix:
25+ fast_finish: true
26+ include:
27+ - env: GHCVER=7.10.2
28+ addons: { apt: { packages: [ghc-7.10.2], sources: [hvr-ghc] } }
29+ - env: GHCVER=7.8.4
30+ addons: { apt: { packages: [ghc-7.8.4], sources: [hvr-ghc] } }
pagerduty.cabal+3−3
@@ -1,5 +1,5 @@
11name: pagerduty
2−version: 0.0.3.2
2+version: 0.0.3.3
33synopsis: Client library for PagerDuty Integration and REST APIs.
44homepage: http://github.com/brendanhay/pagerduty
55license: OtherLicense
@@ -71,8 +71,8 @@ library
7171 , Network.PagerDuty.Types
7272
7373 build-depends:
74− aeson >= 0.8
75− , base >= 4.5 && < 5
74+ aeson >= 0.8 && < 0.10
75+ , base >= 4.7 && < 5
7676 , bifunctors >= 4.1
7777 , bytestring >= 0.9
7878 , bytestring-conversion >= 0.2.1
script/generate-pagesdeleted−25
@@ -1,25 +0,0 @@
1−#!/usr/bin/env bash
2−
3−set -e
4−set -x
5−set -o errexit
6−
7−branch=$(git symbolic-ref -q HEAD)
8−branch=${branch##refs/heads/}
9−branch=${branch:-HEAD}
10−
11−cabal configure --disable-tests
12−
13−DOCDIR=`mktemp -d -t pages.XXXXXX`
14−cabal haddock --haddock-option=-o$DOCDIR
15−
16−HEAD=`git rev-parse HEAD`
17−
18−git checkout gh-pages
19−
20−mv $DOCDIR/* .
21−
22−git add *.html *.js *.css *.gif *.png
23−git commit -m "Generated documentation from $HEAD on $branch"
24−git push origin gh-pages
25−git checkout $branch
script/travis-lifecycle-before_installnew file+16
@@ -0,0 +1,16 @@
1+#!/usr/bin/env bash
2+
3+set -e
4+
5+dir=~/.local/bin
6+remote=https://github.com/commercialhaskell/stack/releases/download/v0.1.3.1/stack-0.1.3.1-x86_64-linux.gz
7+local=$dir/stack
8+
9+mkdir -p $dir
10+
11+curl -L $remote | gunzip > $local
12+
13+chmod a+x $local
14+
15+ghc --version
16+stack --version
script/travis-lifecycle-installnew file+13
@@ -0,0 +1,13 @@
1+#!/usr/bin/env bash
2+
3+set -e
4+
5+GHCVER=${GHCVER?"GHCVER needs to be set."}
6+
7+path=$(cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd)
8+
9+$path/travis-timeout \
10+ stack --no-terminal --skip-ghc-check --stack-yaml stack-$GHCVER.yaml setup
11+
12+$path/travis-timeout \
13+ stack --no-terminal --skip-ghc-check --stack-yaml stack-$GHCVER.yaml test pagerduty --only-snapshot
script/travis-lifecycle-scriptnew file+9
@@ -0,0 +1,9 @@
1+#!/usr/bin/env bash
2+
3+set -e
4+
5+GHCVER=${GHCVER?"GHCVER needs to be set."}
6+
7+path=$(cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd)
8+
9+stack --no-terminal --skip-ghc-check --stack-yaml stack-$GHCVER.yaml test pagerduty
script/travis-timeoutnew file+15
@@ -0,0 +1,15 @@
1+#!/usr/bin/env bash
2+
3+$* &
4+pidA=$!
5+minutes=0
6+
7+while true; do sleep 60; ((minutes++)); echo -e "\033[0;32m$minutes minute(s) elapsed running '$*'\033[0m."; done &
8+pidB=$!
9+wait $pidA
10+resA=$?
11+
12+echo -e "\033[0;32m'$*' exited with status ${resA}.\033[0m"
13+kill -9 $pidB
14+
15+exit $resA
script/upload-documentationdeleted−37
@@ -1,37 +0,0 @@
1−#!/usr/bin/env bash
2−
3−set -e
4−
5−package=${PWD##*/}
6−
7−echo "Package: ${package}"
8−read -p "Version: " version
9−read -p "Hackage user: " user
10−read -sp "Hackage password (not echoed): " password
11−
12−echo
13−echo "BUILDING"
14−echo
15−
16−cabal configure
17−cabal build
18−cabal haddock \
19− --hyperlink-source \
20− --html-location='/package/$pkg-$version/docs' \
21− --contents-location='/package/$pkg'
22−
23−echo
24−echo "ARCHIVING"
25−echo
26−
27−cd dist/doc/html
28−DDIR="${package}-${version}-docs"
29−cp -r "${package}" "${DDIR}" && gtar -c -v -z -Hustar -f "${DDIR}.tar.gz" "${DDIR}"
30−
31−echo
32−echo "UPLOADING"
33−echo
34−
35−curl -X PUT -H 'Content-Type: application/x-tar' \
36− -H 'Content-Encoding: gzip' --data-binary "@${DDIR}.tar.gz" \
37− "http://${user}:${password}@hackage.haskell.org/package/${package}-${version}/docs"
src/Network/PagerDuty/Internal/Options.hs+3−3
@@ -14,9 +14,9 @@ module Network.PagerDuty.Internal.Options
1414 , underscored
1515 ) where
1616
17−import Data.Aeson.Types
18−import Data.Char
19−import Data.List
17+import Data.Aeson.Types
18+import Data.Char
19+import Data.List
2020
2121dropped :: Int -> Options -> Options
2222dropped n o = o
src/Network/PagerDuty/Internal/Query.hs+8−7
@@ -1,5 +1,6 @@
11{-# LANGUAGE ConstraintKinds #-}
22{-# LANGUAGE DefaultSignatures #-}
3+{-# LANGUAGE FlexibleContexts #-}
34{-# LANGUAGE GADTs #-}
45{-# LANGUAGE OverloadedStrings #-}
56{-# LANGUAGE ScopedTypeVariables #-}
@@ -23,14 +24,14 @@ module Network.PagerDuty.Internal.Query
2324
2425import Data.Aeson.Types
2526import Data.Bifunctor
26−import Data.ByteString (ByteString)
27−import qualified Data.ByteString.Char8 as BS
27+import Data.ByteString (ByteString)
28+import qualified Data.ByteString.Char8 as BS
2829import Data.ByteString.Conversion
29−import Data.Function (on)
30−import Data.List (groupBy)
31−import Data.Monoid ((<>))
32−import Data.Text (Text)
33−import qualified Data.Text.Encoding as Text
30+import Data.Function (on)
31+import Data.List (groupBy)
32+import Data.Monoid ((<>))
33+import Data.Text (Text)
34+import qualified Data.Text.Encoding as Text
3435import Generics.SOP
3536import Network.HTTP.Types
3637import Network.PagerDuty.Internal.Options
src/Network/PagerDuty/Internal/TH.hs+5−5
@@ -40,15 +40,15 @@ module Network.PagerDuty.Internal.TH
4040
4141import Control.Applicative
4242import Control.Lens
43−import qualified Data.Aeson.TH as Aeson
43+import qualified Data.Aeson.TH as Aeson
4444import Data.Aeson.Types
45−import Data.ByteString (ByteString)
46−import qualified Data.Text.Encoding as Text
45+import Data.ByteString (ByteString)
46+import qualified Data.Text.Encoding as Text
4747import Generics.SOP.TH
4848import Language.Haskell.TH
4949import Network.HTTP.Types.QueryLike
50−import Network.PagerDuty.Internal.Query
5150import Network.PagerDuty.Internal.Options
51+import Network.PagerDuty.Internal.Query
5252
5353jsonRequest :: Name -> Q [Dec]
5454jsonRequest n = concat <$> sequence
@@ -61,7 +61,7 @@ queryRequest :: Name -> Q [Dec]
6161queryRequest n = concat <$> sequence
6262 [ deriveGeneric n
6363 , makeLenses n
64− , [d|instance ToJSON $(conT n) where toJSON = const (toJSON (object []))|]
64+ , [d|instance ToJSON $(conT n) where toJSON = const emptyObject|]
6565 , [d|instance QueryLike $(conT n) where toQuery = gquery|]
6666 ]
6767
src/Network/PagerDuty/Internal/Types.hs+4−4
@@ -27,7 +27,7 @@
2727module Network.PagerDuty.Internal.Types where
2828
2929import Control.Applicative
30−import Control.Lens hiding ((.=))
30+import Control.Lens hiding ((.=), Empty)
3131import Control.Monad.IO.Class
3232import Data.Aeson hiding (Error)
3333import Data.Aeson.Types (Parser)
@@ -43,7 +43,7 @@ import Data.String
4343import Data.Text (Text)
4444import qualified Data.Text as Text
4545import qualified Data.Text.Encoding as Text
46−import Data.Time
46+import Data.Time (UTCTime, TimeZone, formatTime, utc, timeZoneName)
4747import GHC.TypeLits
4848import Network.HTTP.Client (Manager)
4949import Network.HTTP.Types
@@ -133,8 +133,8 @@ data Security = Basic | Token
133133 deriving (Eq, Show)
134134
135135data Auth (a :: Security) where
136− AuthBasic :: ByteString -> ByteString -> Auth Basic
137− AuthToken :: ByteString -> Auth Token
136+ AuthBasic :: ByteString -> ByteString -> Auth 'Basic
137+ AuthToken :: ByteString -> Auth 'Token
138138
139139deriving instance Eq (Auth a)
140140deriving instance Show (Auth a)
src/Network/PagerDuty/REST/Alerts.hs+6−6
@@ -43,12 +43,12 @@ module Network.PagerDuty.REST.Alerts
4343 , alertAddress
4444 ) where
4545
46−import Control.Lens
47−import Data.Aeson.Lens
48−import Data.Time
49−import Network.PagerDuty.REST.Users (User)
50−import Network.PagerDuty.Internal.TH
51−import Network.PagerDuty.Internal.Types
46+import Control.Lens hiding (Empty)
47+import Data.Aeson.Lens
48+import Data.Time
49+import Network.PagerDuty.Internal.TH
50+import Network.PagerDuty.Internal.Types
51+import Network.PagerDuty.REST.Users (User)
5252
5353alerts :: Path
5454alerts = "alerts"
src/Network/PagerDuty/REST/EscalationPolicies.hs+13−13
@@ -1,8 +1,8 @@
1−{-# LANGUAGE ExtendedDefaultRules #-}
2−{-# LANGUAGE DataKinds #-}
3−{-# LANGUAGE OverloadedStrings #-}
4−{-# LANGUAGE TemplateHaskell #-}
5−{-# LANGUAGE TypeFamilies #-}
1+{-# LANGUAGE DataKinds #-}
2+{-# LANGUAGE ExtendedDefaultRules #-}
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE TemplateHaskell #-}
5+{-# LANGUAGE TypeFamilies #-}
66
77{-# OPTIONS_GHC -fno-warn-type-defaults #-}
88
@@ -60,15 +60,15 @@ module Network.PagerDuty.REST.EscalationPolicies
6060 , pServices
6161 ) where
6262
63−import Control.Lens
64−import Data.Aeson.Lens
65−import Data.Text (Text)
66−import Network.HTTP.Types
67−import Network.PagerDuty.REST.Services (Service)
68−import Network.PagerDuty.Internal.TH
69−import Network.PagerDuty.Internal.Types
63+import Control.Lens hiding (Empty)
64+import Data.Aeson.Lens
65+import Data.Text (Text)
66+import Network.HTTP.Types
67+import Network.PagerDuty.Internal.TH
68+import Network.PagerDuty.Internal.Types
69+import Network.PagerDuty.REST.Services (Service)
7070
71−import Network.PagerDuty.REST.EscalationPolicies.EscalationRules
71+import Network.PagerDuty.REST.EscalationPolicies.EscalationRules
7272
7373default (Path)
7474
src/Network/PagerDuty/REST/EscalationPolicies/EscalationRules.hs+9−9
@@ -1,7 +1,7 @@
1−{-# LANGUAGE ExtendedDefaultRules #-}
2−{-# LANGUAGE FlexibleInstances #-}
3−{-# LANGUAGE OverloadedStrings #-}
4−{-# LANGUAGE TemplateHaskell #-}
1+{-# LANGUAGE ExtendedDefaultRules #-}
2+{-# LANGUAGE FlexibleInstances #-}
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE TemplateHaskell #-}
55
66{-# OPTIONS_GHC -fno-warn-type-defaults #-}
77
@@ -64,15 +64,15 @@ module Network.PagerDuty.REST.EscalationPolicies.EscalationRules
6464 , rTargets
6565 ) where
6666
67−import Control.Applicative ((<$>))
68−import Control.Lens hiding ((.=))
67+import Control.Applicative ((<$>))
68+import Control.Lens hiding ((.=))
6969import Data.Aeson
70−import qualified Data.HashMap.Strict as Map
71−import Data.Text (Text)
70+import qualified Data.HashMap.Strict as Map
71+import Data.Text (Text)
7272import Network.HTTP.Types
73−import Network.PagerDuty.REST.Users
7473import Network.PagerDuty.Internal.TH
7574import Network.PagerDuty.Internal.Types
75+import Network.PagerDuty.REST.Users
7676
7777default (Path)
7878
src/Network/PagerDuty/REST/Incidents.hs+4−3
@@ -130,9 +130,10 @@ module Network.PagerDuty.REST.Incidents
130130 ) where
131131
132132import Control.Applicative hiding (empty)
133−import Control.Lens
133+import Control.Lens hiding (Empty)
134134import Data.Aeson
135−import Data.ByteString.Conversion (ToByteString(..), toByteString')
135+import Data.ByteString.Conversion (ToByteString (..),
136+ toByteString')
136137import Data.Default.Class
137138import Data.Maybe
138139import Data.Monoid hiding (All)
@@ -566,7 +567,7 @@ updateIncidents r = auth updateIncidentsBasic & query .~ [("requester_id", r)]
566567
567568-- | A version of 'updateIncidents' which uses HTTP Basic authentication and
568569-- doesn't require a 'RequesterId'.
569−updateIncidentsBasic :: Request UpdateIncidents Basic [UpdatedIncidents]
570+updateIncidentsBasic :: Request UpdateIncidents 'Basic [UpdatedIncidents]
570571updateIncidentsBasic =
571572 mk UpdateIncidents
572573 { _uiIncidents' = []
src/Network/PagerDuty/REST/Incidents/Notes.hs+11−11
@@ -1,6 +1,6 @@
1−{-# LANGUAGE ExtendedDefaultRules #-}
2−{-# LANGUAGE OverloadedStrings #-}
3−{-# LANGUAGE TemplateHaskell #-}
1+{-# LANGUAGE ExtendedDefaultRules #-}
2+{-# LANGUAGE OverloadedStrings #-}
3+{-# LANGUAGE TemplateHaskell #-}
44
55{-# OPTIONS_GHC -fno-warn-type-defaults #-}
66
@@ -36,14 +36,14 @@ module Network.PagerDuty.REST.Incidents.Notes
3636 , nContent
3737 ) where
3838
39−import Control.Lens hiding ((.=))
40−import Data.Aeson
41−import Data.Text (Text)
42−import Data.Time
43−import Network.HTTP.Types
44−import Network.PagerDuty.REST.Users
45−import Network.PagerDuty.Internal.TH
46−import Network.PagerDuty.Internal.Types
39+import Control.Lens hiding ((.=))
40+import Data.Aeson
41+import Data.Text (Text)
42+import Data.Time
43+import Network.HTTP.Types
44+import Network.PagerDuty.Internal.TH
45+import Network.PagerDuty.Internal.Types
46+import Network.PagerDuty.REST.Users
4747
4848default (Path)
4949
src/Network/PagerDuty/REST/LogEntries.hs+5−5
@@ -112,18 +112,18 @@ module Network.PagerDuty.REST.LogEntries
112112 ) where
113113
114114import Control.Applicative
115−import Control.Lens
115+import Control.Lens hiding (Empty)
116116import Data.Aeson
117117import Data.Aeson.Lens
118118import Data.Default.Class
119−import qualified Data.HashMap.Strict as Map
120−import Data.Text (Text)
121−import qualified Data.Text as Text
119+import qualified Data.HashMap.Strict as Map
120+import Data.Text (Text)
121+import qualified Data.Text as Text
122122import Data.Time
123123import Network.HTTP.Types
124−import Network.PagerDuty.REST.Users (User)
125124import Network.PagerDuty.Internal.TH
126125import Network.PagerDuty.Internal.Types
126+import Network.PagerDuty.REST.Users (User)
127127
128128logs :: Path
129129logs = "log_entries"
src/Network/PagerDuty/REST/MaintenanceWindows.hs+9−9
@@ -74,14 +74,14 @@ module Network.PagerDuty.REST.MaintenanceWindows
7474 , mwServices
7575 ) where
7676
77−import Control.Lens
78−import Data.Monoid
79−import Data.Text (Text)
80−import Data.Time
81−import Network.HTTP.Types
82−import Network.PagerDuty.REST.Users (User)
83−import Network.PagerDuty.Internal.TH
84−import Network.PagerDuty.Internal.Types
77+import Control.Lens hiding (Empty)
78+import Data.Monoid
79+import Data.Text (Text)
80+import Data.Time
81+import Network.HTTP.Types
82+import Network.PagerDuty.Internal.TH
83+import Network.PagerDuty.Internal.Types
84+import Network.PagerDuty.REST.Users (User)
8585
8686windows :: Path
8787windows = "maintenance_windows"
@@ -214,7 +214,7 @@ createWindow r s e xs =
214214createWindowBasic :: UTCTime -- ^ 'cwStartTime'
215215 -> UTCTime -- ^ 'cwEndTime'
216216 -> [ServiceId] -- ^ 'cwServiceIds'
217− -> Request CreateWindow Basic MaintenanceWindow
217+ -> Request CreateWindow 'Basic MaintenanceWindow
218218createWindowBasic s e xs =
219219 mk CreateWindow
220220 { _cwRequesterId' = Nothing
src/Network/PagerDuty/REST/Reports.hs+10−10
@@ -1,8 +1,8 @@
1−{-# LANGUAGE DataKinds #-}
2−{-# LANGUAGE ExtendedDefaultRules #-}
3−{-# LANGUAGE OverloadedStrings #-}
4−{-# LANGUAGE TemplateHaskell #-}
5−{-# LANGUAGE TypeFamilies #-}
1+{-# LANGUAGE DataKinds #-}
2+{-# LANGUAGE ExtendedDefaultRules #-}
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE TemplateHaskell #-}
5+{-# LANGUAGE TypeFamilies #-}
66
77{-# OPTIONS_GHC -fno-warn-type-defaults #-}
88
@@ -58,11 +58,11 @@ module Network.PagerDuty.REST.Reports
5858 , irNumberOfIncidents
5959 ) where
6060
61−import Control.Lens
62−import Data.Aeson.Lens
63−import Data.Time
64−import Network.PagerDuty.Internal.TH
65−import Network.PagerDuty.Internal.Types
61+import Control.Lens hiding (Empty)
62+import Data.Aeson.Lens
63+import Data.Time
64+import Network.PagerDuty.Internal.TH
65+import Network.PagerDuty.Internal.Types
6666
6767default (Path)
6868
src/Network/PagerDuty/REST/Schedules.hs+13−13
@@ -1,8 +1,8 @@
1−{-# LANGUAGE DataKinds #-}
2−{-# LANGUAGE ExtendedDefaultRules #-}
3−{-# LANGUAGE OverloadedStrings #-}
4−{-# LANGUAGE TemplateHaskell #-}
5−{-# LANGUAGE TypeFamilies #-}
1+{-# LANGUAGE DataKinds #-}
2+{-# LANGUAGE ExtendedDefaultRules #-}
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE TemplateHaskell #-}
5+{-# LANGUAGE TypeFamilies #-}
66
77{-# OPTIONS_GHC -fno-warn-type-defaults #-}
88
@@ -110,14 +110,14 @@ module Network.PagerDuty.REST.Schedules
110110 , sFinalSchedule
111111 ) where
112112
113−import Control.Lens hiding ((.=))
114−import Data.Aeson
115−import Data.Text (Text)
116−import Data.Time
117−import Network.HTTP.Types
118−import Network.PagerDuty.REST.Users (User)
119−import Network.PagerDuty.Internal.TH
120−import Network.PagerDuty.Internal.Types
113+import Control.Lens hiding (Empty, (.=))
114+import Data.Aeson
115+import Data.Text (Text)
116+import Data.Time
117+import Network.HTTP.Types
118+import Network.PagerDuty.Internal.TH
119+import Network.PagerDuty.Internal.Types
120+import Network.PagerDuty.REST.Users (User)
121121
122122default (Path)
123123
src/Network/PagerDuty/REST/Schedules/Overrides.hs+11−11
@@ -1,8 +1,8 @@
1−{-# LANGUAGE DataKinds #-}
2−{-# LANGUAGE ExtendedDefaultRules #-}
3−{-# LANGUAGE OverloadedStrings #-}
4−{-# LANGUAGE TemplateHaskell #-}
5−{-# LANGUAGE TypeFamilies #-}
1+{-# LANGUAGE DataKinds #-}
2+{-# LANGUAGE ExtendedDefaultRules #-}
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE TemplateHaskell #-}
5+{-# LANGUAGE TypeFamilies #-}
66
77{-# OPTIONS_GHC -fno-warn-type-defaults #-}
88
@@ -50,12 +50,12 @@ module Network.PagerDuty.REST.Schedules.Overrides
5050 , oUser
5151 ) where
5252
53−import Control.Lens
54−import Data.Time
55−import Network.HTTP.Types
56−import Network.PagerDuty.REST.Users
57−import Network.PagerDuty.Internal.TH
58−import Network.PagerDuty.Internal.Types
53+import Control.Lens
54+import Data.Time
55+import Network.HTTP.Types
56+import Network.PagerDuty.Internal.TH
57+import Network.PagerDuty.Internal.Types
58+import Network.PagerDuty.REST.Users
5959
6060overrides :: ScheduleId -> Path
6161overrides i = "schedules" % i % "overrides"
src/Network/PagerDuty/REST/Services.hs+15−15
@@ -1,8 +1,8 @@
1−{-# LANGUAGE DataKinds #-}
2−{-# LANGUAGE ExtendedDefaultRules #-}
3−{-# LANGUAGE OverloadedStrings #-}
4−{-# LANGUAGE TemplateHaskell #-}
5−{-# LANGUAGE TypeFamilies #-}
1+{-# LANGUAGE DataKinds #-}
2+{-# LANGUAGE ExtendedDefaultRules #-}
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE TemplateHaskell #-}
5+{-# LANGUAGE TypeFamilies #-}
66
77{-# OPTIONS_GHC -fno-warn-type-defaults #-}
88
@@ -106,14 +106,14 @@ module Network.PagerDuty.REST.Services
106106 , svcSeverityFilter
107107 ) where
108108
109−import Control.Lens
110−import Data.Aeson.Lens
111−import Data.Text (Text)
112−import Data.Time
113−import Network.HTTP.Types
114−import Network.PagerDuty.REST.Services.EmailFilters
115−import Network.PagerDuty.Internal.TH
116−import Network.PagerDuty.Internal.Types
109+import Control.Lens hiding (Empty)
110+import Data.Aeson.Lens
111+import Data.Text (Text)
112+import Data.Time
113+import Network.HTTP.Types
114+import Network.PagerDuty.Internal.TH
115+import Network.PagerDuty.Internal.Types
116+import Network.PagerDuty.REST.Services.EmailFilters
117117
118118default (Path)
119119
@@ -483,7 +483,7 @@ enableService r i =
483483
484484-- | A version of 'enableService' which uses HTTP Basic authentication and
485485-- doesn't require a 'RequesterId'.
486−enableServiceBasic :: ServiceId -> Request Empty Basic Empty
486+enableServiceBasic :: ServiceId -> Request Empty 'Basic Empty
487487enableServiceBasic i = empty & meth .~ PUT & path .~ services % i % "enable"
488488
489489-- | Disable a service. Once a service is disabled, it will not be able to
@@ -498,7 +498,7 @@ disableService r i =
498498
499499-- | A version of 'disableService' which uses HTTP Basic authentication and
500500-- doesn't require a 'RequesterId'.
501−disableServiceBasic :: ServiceId -> Request Empty Basic Empty
501+disableServiceBasic :: ServiceId -> Request Empty 'Basic Empty
502502disableServiceBasic i = empty & meth .~ PUT & path .~ services % i % "disable"
503503
504504-- | Regenerate a new service key for an existing service.
src/Network/PagerDuty/REST/Services/EmailFilters.hs+13−13
@@ -1,6 +1,6 @@
1−{-# LANGUAGE ExtendedDefaultRules #-}
2−{-# LANGUAGE OverloadedStrings #-}
3−{-# LANGUAGE TemplateHaskell #-}
1+{-# LANGUAGE ExtendedDefaultRules #-}
2+{-# LANGUAGE OverloadedStrings #-}
3+{-# LANGUAGE TemplateHaskell #-}
44
55{-# OPTIONS_GHC -fno-warn-type-defaults #-}
66
@@ -39,15 +39,15 @@ module Network.PagerDuty.REST.Services.EmailFilters
3939 , efId
4040 ) where
4141
42−import Control.Applicative hiding (empty)
43−import Control.Lens hiding ((.=))
44−import Data.Aeson
45−import Data.Default.Class
46−import Data.Monoid
47−import Data.Text (Text)
48−import Network.HTTP.Types
49−import Network.PagerDuty.Internal.TH
50−import Network.PagerDuty.Internal.Types
42+import Control.Applicative hiding (empty)
43+import Control.Lens hiding ((.=))
44+import Data.Aeson
45+import Data.Default.Class
46+import Data.Monoid
47+import Data.Text (Text)
48+import Network.HTTP.Types
49+import Network.PagerDuty.Internal.TH
50+import Network.PagerDuty.Internal.Types
5151
5252default (Path)
5353
@@ -65,7 +65,7 @@ deriveNullaryWith hyphenated ''MatchMode
6565-- FIXME: Tighten up this type! Make the regex required for match/no-match and
6666-- encode the conditional invariants.
6767data EmailFilterInfo = EmailFilterInfo
68− { _efSubjectMode' :: Maybe MatchMode
68+ { _efSubjectMode' :: Maybe MatchMode
6969 , _efSubjectRegex' :: Maybe Text
7070 , _efBodyMode' :: Maybe MatchMode
7171 , _efBodyRegex' :: Maybe Text
src/Network/PagerDuty/REST/Users.hs+17−16
@@ -1,10 +1,11 @@
1−{-# LANGUAGE DataKinds #-}
2−{-# LANGUAGE ExtendedDefaultRules #-}
3−{-# LANGUAGE OverloadedStrings #-}
4−{-# LANGUAGE TemplateHaskell #-}
5−{-# LANGUAGE TypeFamilies #-}
1+{-# LANGUAGE DataKinds #-}
2+{-# LANGUAGE ExtendedDefaultRules #-}
3+{-# LANGUAGE OverloadedStrings #-}
4+{-# LANGUAGE TemplateHaskell #-}
5+{-# LANGUAGE TypeFamilies #-}
66
77{-# OPTIONS_GHC -fno-warn-type-defaults #-}
8+{-# OPTIONS_GHC -ddump-splices #-}
89
910-- Module : Network.PagerDuty.REST.Users
1011-- Copyright : (c) 2013-2015 Brendan Hay <brendan.g.hay@gmail.com>
@@ -81,16 +82,16 @@ module Network.PagerDuty.REST.Users
8182 , uJobTitle
8283 ) where
8384
84−import Control.Applicative hiding (empty)
85−import Control.Lens hiding ((.=))
86−import Data.Aeson
87−import Data.Default.Class
88−import Data.Monoid
89−import Data.Text (Text)
90−import Data.Time
91−import Network.HTTP.Types
92−import Network.PagerDuty.Internal.TH
93−import Network.PagerDuty.Internal.Types
85+import Control.Applicative hiding (empty)
86+import Control.Lens hiding (Empty, (.=))
87+import Data.Aeson
88+import Data.Default.Class
89+import Data.Monoid
90+import Data.Text (Text)
91+import Data.Time
92+import Network.HTTP.Types
93+import Network.PagerDuty.Internal.TH
94+import Network.PagerDuty.Internal.Types
9495
9596default (Path)
9697
@@ -315,7 +316,7 @@ createUser r n e = auth (createUserBasic n e) & query .~ [("requester_id", r)]
315316-- doesn't require a 'RequesterId'.
316317createUserBasic :: Text -- ^ 'cuName'
317318 -> Address -- ^ 'cuEmail'
318− -> Request CreateUser Basic User
319+ -> Request CreateUser 'Basic User
319320createUserBasic n e =
320321 mk CreateUser
321322 { _cuName' = n
src/Network/PagerDuty/REST/Users/ContactMethods.hs+9−9
@@ -1,6 +1,6 @@
1−{-# LANGUAGE ExtendedDefaultRules #-}
2−{-# LANGUAGE OverloadedStrings #-}
3−{-# LANGUAGE TemplateHaskell #-}
1+{-# LANGUAGE ExtendedDefaultRules #-}
2+{-# LANGUAGE OverloadedStrings #-}
3+{-# LANGUAGE TemplateHaskell #-}
44
55{-# OPTIONS_GHC -fno-warn-type-defaults #-}
66
@@ -56,12 +56,12 @@ module Network.PagerDuty.REST.Users.ContactMethods
5656 , Contact
5757 ) where
5858
59−import Control.Lens
60−import Data.Aeson.Lens
61−import Data.Text (Text)
62−import Network.HTTP.Types
63−import Network.PagerDuty.Internal.TH
64−import Network.PagerDuty.Internal.Types
59+import Control.Lens
60+import Data.Aeson.Lens
61+import Data.Text (Text)
62+import Network.HTTP.Types
63+import Network.PagerDuty.Internal.TH
64+import Network.PagerDuty.Internal.Types
6565
6666default (Path)
6767
src/Network/PagerDuty/REST/Users/NotificationRules.hs+9−9
@@ -1,6 +1,6 @@
1−{-# LANGUAGE ExtendedDefaultRules #-}
2−{-# LANGUAGE OverloadedStrings #-}
3−{-# LANGUAGE TemplateHaskell #-}
1+{-# LANGUAGE ExtendedDefaultRules #-}
2+{-# LANGUAGE OverloadedStrings #-}
3+{-# LANGUAGE TemplateHaskell #-}
44
55{-# OPTIONS_GHC -fno-warn-type-defaults #-}
66
@@ -51,12 +51,12 @@ module Network.PagerDuty.REST.Users.NotificationRules
5151 , rContactMethod
5252 ) where
5353
54−import Control.Lens
55−import Data.Aeson.Lens
56−import Network.HTTP.Types
57−import Network.PagerDuty.REST.Users.ContactMethods
58−import Network.PagerDuty.Internal.TH
59−import Network.PagerDuty.Internal.Types
54+import Control.Lens
55+import Data.Aeson.Lens
56+import Network.HTTP.Types
57+import Network.PagerDuty.Internal.TH
58+import Network.PagerDuty.Internal.Types
59+import Network.PagerDuty.REST.Users.ContactMethods
6060
6161default (Path)
6262
src/Network/PagerDuty/REST/Webhooks.hs+3−2
@@ -35,13 +35,14 @@ module Network.PagerDuty.REST.Webhooks
3535import Control.Applicative hiding (empty)
3636import Control.Lens
3737import Data.Aeson
38−import Data.ByteString.Conversion (ToByteString(..), toByteString')
38+import Data.ByteString.Conversion (ToByteString (..),
39+ toByteString')
3940import Data.Text (Text)
4041import qualified Data.Text.Encoding as Text
4142import Data.Time
42−import Network.PagerDuty.REST.Incidents
4343import Network.PagerDuty.Internal.TH
4444import Network.PagerDuty.Internal.Types
45+import Network.PagerDuty.REST.Incidents
4546
4647data WebhookType
4748 = WTrigger
stack-7.10.2.yamlnew file+5
@@ -0,0 +1,5 @@
1+resolver: nightly-2015-10-24
2+flags: {}
3+extra-deps: []
4+packages:
5+ - '.'
stack-7.8.4.yamlnew file+5
@@ -0,0 +1,5 @@
1+resolver: lts-2.21
2+flags: {}
3+extra-deps: []
4+packages:
5+ - '.'
stack.yamlmode 100644 → 120000+1−5
@@ -1,5 +0,0 @@
1−flags: {}
2−packages:
3−- '.'
4−extra-deps: []
5−resolver: nightly-2015-06-17
@@ -0,0 +1 @@
1+stack-7.10.2.yaml