rollbar-wai 0.1.0 → 1.0.0
raw patch · 4 files changed
+22/−15 lines, 4 filesdep ~aesondep ~basedep ~rollbar-clientnew-uploaderPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: aeson, base, rollbar-client
API changes (from Hackage documentation)
Files
- README.md +3/−0
- rollbar-wai.cabal +11/−9
- src/Rollbar/Wai.hs +6/−4
- test/Rollbar/WaiSpec.hs +2/−2
README.md view
@@ -1,5 +1,8 @@ # Rollbar WAI +++ Provides error reporting capabilities to [WAI](http://hackage.haskell.org/package/wai) based applications through [Rollbar API](https://explorer.docs.rollbar.com/).
rollbar-wai.cabal view
@@ -1,17 +1,18 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.33.0.+-- This file has been generated from package.yaml by hpack version 0.34.7. -- -- see: https://github.com/sol/hpack ----- hash: 36882de3e15bbc25fa5b54c1ee7d9dbe96436e87f4502b002a3a388508677741+-- hash: ac188cecfff7139de33d798a8f28d9b0f071045ece47e95a25890f89a77b00c4 name: rollbar-wai-version: 0.1.0+version: 1.0.0 synopsis: Provides error reporting capabilities to WAI based applications through Rollbar API. description: Please see the README on GitHub at <https://github.com/stackbuilders/rollbar-haskell/tree/master/rollbar-wai>+category: Network homepage: https://github.com/stackbuilders/rollbar-haskell#readme bug-reports: https://github.com/stackbuilders/rollbar-haskell/issues author: Stack Builders Inc.@@ -19,7 +20,8 @@ copyright: 2020 Stack Builders Inc. license: MIT license-file: LICENSE-tested-with: GHC ==8.6.5, GHC ==8.8.4, GHC ==8.10.2+tested-with:+ GHC ==8.8.4, GHC ==8.10.2 build-type: Simple extra-source-files: README.md@@ -43,12 +45,12 @@ src ghc-options: -Wall build-depends:- aeson >=1.4 && <2- , base >=4.12 && <5+ aeson >=2.0 && <3+ , base >=4.13 && <5 , bytestring >=0.10 && <1 , case-insensitive >=1.2 && <2 , http-types >=0.12 && <1- , rollbar-client >=0.1 && <1+ , rollbar-client >=1.0 && <2 , text >=1.2 && <2 , unordered-containers >=0.2 && <1 , wai >=3.2 && <4@@ -63,7 +65,7 @@ example ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N build-depends:- base >=4.12 && <5+ base >=4.13 && <5 , rollbar-client , rollbar-wai , wai@@ -87,7 +89,7 @@ hspec-discover:hspec-discover >=2.7 && <3 build-depends: aeson- , base >=4.12 && <5+ , base >=4.13 && <5 , hspec >=2.7 && <3 , http-types , mtl >=2.2 && <3
src/Rollbar/Wai.hs view
@@ -16,7 +16,8 @@ ) where import qualified Data.CaseInsensitive as CI-import qualified Data.HashMap.Strict as HM+import qualified Data.Aeson.KeyMap as KM+import qualified Data.Aeson.Key as K import qualified Data.Text.Encoding as T import qualified Network.Wai as W import qualified Network.Wai.Parse as W@@ -27,6 +28,7 @@ import Control.Monad (void) import Control.Monad.IO.Class (MonadIO(..)) import Data.Aeson+import Data.Bifunctor (first) import Network.HTTP.Types (renderQuery) import Rollbar.Client @@ -83,11 +85,11 @@ , W.rawQueryString req ] , requestMethod = T.decodeUtf8 $ W.requestMethod req- , requestHeaders = HM.fromList $ toHeader <$> W.requestHeaders req+ , requestHeaders = KM.fromList $ map (first K.fromText) $ toHeader <$> W.requestHeaders req , requestParams = mempty- , requestGet = HM.fromList $ toQuery <$> W.queryString req+ , requestGet = KM.fromList $ map (first K.fromText) $ toQuery <$> W.queryString req , requestQueryStrings = T.decodeUtf8 $ renderQuery False $ W.queryString req- , requestPost = HM.fromList $ fmap toParam params+ , requestPost = KM.fromList $ map (first K.fromText) $ fmap toParam params , requestBody = "" , requestUserIp = "" }
test/Rollbar/WaiSpec.hs view
@@ -5,7 +5,7 @@ ( spec ) where -import qualified Data.HashMap.Strict as HM+import qualified Data.Aeson.KeyMap as KM import qualified Data.Text as T import qualified Network.Wai as W import qualified Network.Wai.Handler.Warp as W@@ -50,7 +50,7 @@ ( Request { requestUrl = "http://localhost:" <> portAsText <> "/error" , requestMethod = "GET"- , requestHeaders = HM.fromList+ , requestHeaders = KM.fromList [ ("Accept-Encoding", "gzip") , ("Host", String $ "localhost:" <> portAsText) ]