Skip to content

Commit 4ed679e

Browse files
authored
feat: Update aeson upper version to latest (#42)
1 parent 079c6b5 commit 4ed679e

File tree

14 files changed

+83
-69
lines changed

14 files changed

+83
-69
lines changed

.github/workflows/main.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ jobs:
77
runs-on: ubuntu-latest
88
strategy:
99
matrix:
10-
ghc: ['8.6', '8.8', '8.10']
10+
ghc: ['8.8', '8.10']
1111

1212
steps:
1313
- uses: actions/checkout@v2

rollbar-cli/package.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
name: rollbar-cli
2-
version: 0.1.0
2+
version: 1.0.0
33
github: "stackbuilders/rollbar-haskell"
44
license: MIT
55
author: "Stack Builders Inc."
66
maintainer: "Sebastián Estrella <sestrella@stackbuilders.com>"
77
copyright: "2020 Stack Builders Inc."
8-
tested-with: GHC ==8.6.5, GHC ==8.8.4, GHC ==8.10.2
8+
tested-with: GHC ==8.8.4, GHC ==8.10.2
99

1010
extra-source-files:
1111
- README.md
@@ -22,7 +22,7 @@ ghc-options:
2222
- -Wall
2323

2424
dependencies:
25-
- base >= 4.12 && < 5
25+
- base >= 4.13 && < 5
2626

2727
_exe-ghc-options: &exe-ghc-options
2828
- -threaded
@@ -33,7 +33,7 @@ library:
3333
source-dirs: src
3434
dependencies:
3535
- optparse-applicative >= 0.14 && < 1
36-
- rollbar-client >= 0.1 && < 1
36+
- rollbar-client >= 1.0 && < 2
3737

3838
executables:
3939
rollbar:

rollbar-cli/rollbar-cli.cabal

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ cabal-version: 1.12
77
-- hash: 550be30f2b0d05cb1448d3ac2048f42b360608d96c8bd70aa2815abe73fb9c08
88

99
name: rollbar-cli
10-
version: 0.1.0
10+
version: 1.0.0
1111
synopsis: Simple CLI tool to perform commons tasks such as tracking deploys.
1212
description: Please see the README on GitHub at
1313
<https://github.com/stackbuilders/rollbar-haskell/tree/master/rollbar-cli>
@@ -18,7 +18,7 @@ maintainer: Sebastián Estrella <sestrella@stackbuilders.com>
1818
copyright: 2020 Stack Builders Inc.
1919
license: MIT
2020
license-file: LICENSE
21-
tested-with: GHC ==8.6.5, GHC ==8.8.4, GHC ==8.10.2
21+
tested-with: GHC ==8.8.4, GHC ==8.10.2
2222
build-type: Simple
2323
extra-source-files:
2424
README.md
@@ -37,9 +37,9 @@ library
3737
src
3838
ghc-options: -Wall
3939
build-depends:
40-
base >=4.12 && <5
40+
base >=4.13 && <5
4141
, optparse-applicative >=0.14 && <1
42-
, rollbar-client >=0.1 && <1
42+
, rollbar-client >=1 && <2
4343
default-language: Haskell2010
4444

4545
executable rollbar
@@ -50,7 +50,7 @@ executable rollbar
5050
app
5151
ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N
5252
build-depends:
53-
base >=4.12 && <5
53+
base >=4.13 && <5
5454
, rollbar-cli
5555
, rollbar-client
5656
default-language: Haskell2010
@@ -64,6 +64,6 @@ test-suite spec
6464
test
6565
ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N
6666
build-depends:
67-
base >=4.12 && <5
67+
base >=4.13 && <5
6868
, rollbar-cli
6969
default-language: Haskell2010

rollbar-client/ChangeLog.md

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,14 @@
11
# Changelog for rollbar-client
22

3-
## Unreleased changes
3+
All notable changes to this project will be documented in this file
4+
5+
## [1.0.0] - 2022-12-28
6+
7+
### Changed
8+
9+
- Updated dependency aeson version.
10+
- Updated base version
11+
12+
### Removed
13+
14+
- Support for GHC 8.6.1

rollbar-client/package.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
name: rollbar-client
2-
version: 0.1.0
2+
version: 1.0.0
33
github: "stackbuilders/rollbar-haskell"
44
license: MIT
55
author: "Stack Builders Inc."
66
maintainer: "Sebastián Estrella <sestrella@stackbuilders.com>"
77
copyright: "2020 Stack Builders Inc."
8-
tested-with: GHC ==8.6.5, GHC ==8.8.4, GHC ==8.10.2
8+
tested-with: GHC ==8.8.4, GHC ==8.10.2
99

1010
extra-source-files:
1111
- README.md
@@ -22,7 +22,7 @@ ghc-options:
2222
- -Wall
2323

2424
dependencies:
25-
- base >= 4.12 && < 5
25+
- base >= 4.13 && < 5
2626

2727
flags:
2828
example:
@@ -38,7 +38,7 @@ _exe-ghc-options: &exe-ghc-options
3838
library:
3939
source-dirs: src
4040
dependencies:
41-
- aeson >= 1.4 && < 2
41+
- aeson >= 2.0 && <3
4242
- bytestring >= 0.10 && < 1
4343
- directory >= 1.3 && < 2
4444
- exceptions >= 0.10 && < 1

rollbar-client/rollbar-client.cabal

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ cabal-version: 1.12
77
-- hash: b3e835bcc225cb66a06268126c5a04b48d06fd90b55677e26219ecfe207068d3
88

99
name: rollbar-client
10-
version: 0.1.0
10+
version: 1.0.0
1111
synopsis: Core library to communicate with Rollbar API.
1212
description: Please see the README on GitHub at
1313
<https://github.com/stackbuilders/rollbar-haskell/tree/master/rollbar-client>
@@ -18,7 +18,7 @@ maintainer: Sebastián Estrella <sestrella@stackbuilders.com>
1818
copyright: 2020 Stack Builders Inc.
1919
license: MIT
2020
license-file: LICENSE
21-
tested-with: GHC ==8.6.5, GHC ==8.8.4, GHC ==8.10.2
21+
tested-with: GHC ==8.8.4, GHC ==8.10.2
2222
build-type: Simple
2323
extra-source-files:
2424
README.md
@@ -47,8 +47,8 @@ library
4747
src
4848
ghc-options: -Wall
4949
build-depends:
50-
aeson >=1.4 && <2
51-
, base >=4.12 && <5
50+
aeson >=2.0 && <3
51+
, base >=4.13 && <5
5252
, bytestring >=0.10 && <1
5353
, directory >=1.3 && <2
5454
, exceptions >=0.10 && <1
@@ -68,7 +68,7 @@ executable client-example
6868
example
6969
ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N
7070
build-depends:
71-
base >=4.12 && <5
71+
base >=4.13 && <5
7272
, rollbar-client
7373
, text
7474
if flag(example)
@@ -90,7 +90,7 @@ test-suite spec
9090
hspec-discover:hspec-discover >=2.7 && <3
9191
build-depends:
9292
aeson
93-
, base >=4.12 && <5
93+
, base >=4.13 && <5
9494
, hspec >=2.7 && <3
9595
, mtl
9696
, rollbar-client

rollbar-client/src/Rollbar/Client/Item.hs

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@ module Rollbar.Client.Item
2828
) where
2929

3030
import qualified Control.Exception as E
31-
import qualified Data.HashMap.Strict as HM
31+
import qualified Data.Aeson.KeyMap as KM
32+
import qualified Data.Aeson.Key as K
3233
import qualified Data.Text as T
3334

3435
import Control.Monad.IO.Class (MonadIO(..))
@@ -239,7 +240,7 @@ data Message = Message
239240

240241
instance ToJSON Message where
241242
toJSON Message{..} = Object $
242-
HM.insert "body" (toJSON messageBody) messageMetadata
243+
KM.insert "body" (toJSON messageBody) messageMetadata
243244

244245
-- | The severity level. One of: "critical", "error", "warning", "info",
245246
-- "debug" Defaults to "error" for exceptions and "info" for messages. The
@@ -308,18 +309,18 @@ getRequestModifier :: (HasSettings m, Monad m) => m (Request -> Request)
308309
getRequestModifier = do
309310
RequestModifiers{..} <- settingsRequestModifiers <$> getSettings
310311
return $ appEndo $ mconcat $ catMaybes
311-
[ withHeaders . excludeNames <$> requestModifiersExcludeHeaders
312-
, withParams . excludeNames <$> requestModifiersExcludeParams
313-
, withHeaders . includeNames <$> requestModifiersIncludeHeaders
314-
, withParams . includeNames <$> requestModifiersIncludeParams
312+
[ withHeaders . excludeNames . fmap K.fromText <$> requestModifiersExcludeHeaders
313+
, withParams . excludeNames . fmap K.fromText <$> requestModifiersExcludeParams
314+
, withHeaders . includeNames . fmap K.fromText <$> requestModifiersIncludeHeaders
315+
, withParams . includeNames . fmap K.fromText <$> requestModifiersIncludeParams
315316
]
316317
where
317318
withHeaders f = Endo $ \request -> request
318319
{ requestHeaders = f $ requestHeaders request }
319320
withParams f = Endo $ \request -> request
320321
{ requestParams = f $ requestParams request }
321-
excludeNames names = HM.filterWithKey $ \name _ -> name `notElem` names
322-
includeNames names = HM.filterWithKey $ \name _ -> name `elem` names
322+
excludeNames names = KM.filterWithKey $ \name _ -> name `notElem` names
323+
includeNames names = KM.filterWithKey $ \name _ -> name `elem` names
323324

324325
-- | Data about the server related to this event.
325326
data Server = Server
@@ -360,7 +361,7 @@ instance ToJSON Notifier where
360361
defaultNotifier :: Notifier
361362
defaultNotifier = Notifier
362363
{ notifierName = "rollbar-client"
363-
, notifierVersion = "0.1.0"
364+
, notifierVersion = "1.0.0"
364365
}
365366

366367
newtype ItemId = ItemId Text

rollbar-client/test/Rollbar/ClientSpec.hs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ module Rollbar.ClientSpec
77
( spec
88
) where
99

10-
import qualified Data.HashMap.Strict as HM
10+
import qualified Data.Aeson.KeyMap as KM
1111

1212
import Control.Monad.Reader
1313
import Data.Aeson
@@ -41,11 +41,11 @@ spec = do
4141
request = Request
4242
{ requestUrl = "http://example.com"
4343
, requestMethod = "GET"
44-
, requestHeaders = HM.fromList
44+
, requestHeaders = KM.fromList
4545
[ ("Host", "example.com")
4646
, ("Secret", "p4ssw0rd")
4747
]
48-
, requestParams = HM.fromList
48+
, requestParams = KM.fromList
4949
[ ("user", "John Doe")
5050
, ("password", "p4ssw0rd")
5151
]
@@ -61,28 +61,28 @@ spec = do
6161
defaultRequestModifiers
6262
{ requestModifiersExcludeHeaders = Just $ pure "Secret" }
6363
in requestModifier request `shouldBe` request
64-
{ requestHeaders = HM.fromList [("Host", "example.com")] }
64+
{ requestHeaders = KM.fromList [("Host", "example.com")] }
6565

6666
it "excludes the params not matching the given names" $
6767
let requestModifier = runReader getRequestModifier $ mkSettings $
6868
defaultRequestModifiers
6969
{ requestModifiersExcludeParams = Just $ pure "password" }
7070
in requestModifier request `shouldBe` request
71-
{ requestParams = HM.fromList [("user", "John Doe")] }
71+
{ requestParams = KM.fromList [("user", "John Doe")] }
7272

7373
it "includes only the headers matching the given names" $
7474
let requestModifier = runReader getRequestModifier $ mkSettings $
7575
defaultRequestModifiers
7676
{ requestModifiersIncludeHeaders = Just $ pure "Host" }
7777
in requestModifier request `shouldBe` request
78-
{ requestHeaders = HM.fromList [("Host", "example.com")] }
78+
{ requestHeaders = KM.fromList [("Host", "example.com")] }
7979

8080
it "includes only the params matching the given names" $
8181
let requestModifier = runReader getRequestModifier $ mkSettings $
8282
defaultRequestModifiers
8383
{ requestModifiersIncludeParams = Just $ pure "user" }
8484
in requestModifier request `shouldBe` request
85-
{ requestParams = HM.fromList [("user", "John Doe")] }
85+
{ requestParams = KM.fromList [("user", "John Doe")] }
8686

8787
describe "defaultNotifier" $
8888
it "matches the package name and version" $ do
@@ -127,7 +127,7 @@ spec = do
127127
itemId <- runRollbar settings $ do
128128
item <- mkItem $ PayloadMessage $ Message
129129
{ messageBody = "Request over threshold of 10 seconds"
130-
, messageMetadata = HM.fromList
130+
, messageMetadata = KM.fromList
131131
[ ("route", "home#index")
132132
, ("time_elapsed", Number 15.23)
133133
]

rollbar-wai/package.yaml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
name: rollbar-wai
2-
version: 0.1.0
2+
version: 1.0.0
33
github: "stackbuilders/rollbar-haskell"
44
license: MIT
55
author: "Stack Builders Inc."
66
maintainer: "Sebastián Estrella <sestrella@stackbuilders.com>"
77
copyright: "2020 Stack Builders Inc."
8-
tested-with: GHC ==8.6.5, GHC ==8.8.4, GHC ==8.10.2
8+
tested-with: GHC ==8.8.4, GHC ==8.10.2
99

1010
extra-source-files:
1111
- README.md
@@ -24,7 +24,7 @@ ghc-options:
2424
- -Wall
2525

2626
dependencies:
27-
- base >= 4.12 && < 5
27+
- base >= 4.13 && < 5
2828

2929
flags:
3030
example:
@@ -40,11 +40,11 @@ _exe-ghc-options: &exe-ghc-options
4040
library:
4141
source-dirs: src
4242
dependencies:
43-
- aeson >= 1.4 && < 2
43+
- aeson >= 2.0 && <3
4444
- bytestring >= 0.10 && < 1
4545
- case-insensitive >= 1.2 && < 2
4646
- http-types >= 0.12 && < 1
47-
- rollbar-client >= 0.1 && < 1
47+
- rollbar-client >= 1.0 && < 2
4848
- text >= 1.2 && < 2
4949
- unordered-containers >= 0.2 && < 1
5050
- wai >= 3.2 && < 4

rollbar-wai/rollbar-wai.cabal

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ cabal-version: 1.12
77
-- hash: 36882de3e15bbc25fa5b54c1ee7d9dbe96436e87f4502b002a3a388508677741
88

99
name: rollbar-wai
10-
version: 0.1.0
10+
version: 1.0.0
1111
synopsis: Provides error reporting capabilities to WAI based applications through Rollbar API.
1212

1313
description: Please see the README on GitHub at
@@ -19,7 +19,7 @@ maintainer: Sebastián Estrella <sestrella@stackbuilders.com>
1919
copyright: 2020 Stack Builders Inc.
2020
license: MIT
2121
license-file: LICENSE
22-
tested-with: GHC ==8.6.5, GHC ==8.8.4, GHC ==8.10.2
22+
tested-with: GHC ==8.8.4, GHC ==8.10.2
2323
build-type: Simple
2424
extra-source-files:
2525
README.md
@@ -43,12 +43,12 @@ library
4343
src
4444
ghc-options: -Wall
4545
build-depends:
46-
aeson >=1.4 && <2
47-
, base >=4.12 && <5
46+
aeson >=2.0 && <3
47+
, base >=4.13 && <5
4848
, bytestring >=0.10 && <1
4949
, case-insensitive >=1.2 && <2
5050
, http-types >=0.12 && <1
51-
, rollbar-client >=0.1 && <1
51+
, rollbar-client >=1.0 && <2
5252
, text >=1.2 && <2
5353
, unordered-containers >=0.2 && <1
5454
, wai >=3.2 && <4
@@ -63,7 +63,7 @@ executable wai-example
6363
example
6464
ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N
6565
build-depends:
66-
base >=4.12 && <5
66+
base >=4.13 && <5
6767
, rollbar-client
6868
, rollbar-wai
6969
, wai
@@ -87,7 +87,7 @@ test-suite spec
8787
hspec-discover:hspec-discover >=2.7 && <3
8888
build-depends:
8989
aeson
90-
, base >=4.12 && <5
90+
, base >=4.13 && <5
9191
, hspec >=2.7 && <3
9292
, http-types
9393
, mtl >=2.2 && <3

0 commit comments

Comments
 (0)