wreq 0.1.0.1 → 0.2.0.0
raw patch · 5 files changed
+29/−12 lines, 5 filesdep +lens-aesondep ~lens
Dependencies added: lens-aeson
Dependency ranges changed: lens
Files
- Network/Wreq/Lens/Machinery.hs +10/−3
- Network/Wreq/Lens/TH.hs +3/−4
- changelog +9/−1
- examples/wreq-examples.cabal +1/−0
- wreq.cabal +6/−4
Network/Wreq/Lens/Machinery.hs view
@@ -1,16 +1,23 @@ module Network.Wreq.Lens.Machinery ( makeLenses+ , fieldName , toCamelCase ) where import Control.Lens ((&), (.~))-import Control.Lens.TH (defaultRules, lensField, makeLensesWith)+import Control.Lens.TH hiding (makeLenses) import Data.Char (toUpper)-import Language.Haskell.TH.Syntax (Dec, Name, Q)+import Language.Haskell.TH.Syntax (Dec, Name, Q, mkName, nameBase) +defaultRules :: LensRules+defaultRules = lensRules++fieldName :: (String -> String) -> [Name] -> Name -> [DefName]+fieldName f _ name = [TopName . mkName . f . nameBase $ name]+ makeLenses :: Name -> Q [Dec]-makeLenses = makeLensesWith (defaultRules & lensField .~ Just)+makeLenses = makeLensesWith (defaultRules & lensField .~ fieldName id) toCamelCase :: String -> String toCamelCase (x0:x0s) = x0 : go x0s
Network/Wreq/Lens/TH.hs view
@@ -60,20 +60,19 @@ ) where import Control.Lens hiding (makeLenses)-import Control.Lens.TH (defaultRules, lensField, makeLensesWith) import Data.ByteString (ByteString) import Data.Text (Text) import Network.Wreq.Internal.Lens (assoc, assoc2)-import Network.Wreq.Lens.Machinery (makeLenses, toCamelCase)+import Network.Wreq.Internal.Link+import Network.Wreq.Lens.Machinery (fieldName, makeLenses, toCamelCase) import qualified Network.HTTP.Client as HTTP import qualified Network.HTTP.Client.MultipartFormData as Form import qualified Network.HTTP.Types.Header as HTTP import qualified Network.HTTP.Types.Status as HTTP import qualified Network.Wreq.Types as Types-import Network.Wreq.Internal.Link makeLenses ''Types.Options-makeLensesWith (defaultRules & lensField .~ Just . toCamelCase) ''HTTP.Cookie+makeLensesWith (lensRules & lensField .~ fieldName toCamelCase) ''HTTP.Cookie makeLenses ''HTTP.Proxy makeLenses ''HTTP.Response makeLenses ''HTTP.Status
changelog view
@@ -1,1 +1,9 @@-.+-*- markdown -*-++2014-08-25 0.2.0.0++* Support for lens 4.4++2014-04-22 0.1.0.0++* Initial release.
examples/wreq-examples.cabal view
@@ -22,6 +22,7 @@ containers, ghc-prim, lens,+ lens-aeson, text, wreq
wreq.cabal view
@@ -1,5 +1,5 @@ name: wreq-version: 0.1.0.1+version: 0.2.0.0 synopsis: An easy-to-use HTTP client library. description: .@@ -71,8 +71,8 @@ Network.Wreq.Internal.Lens Network.Wreq.Internal.Link Network.Wreq.Internal.Types- Network.Wreq.Lens.TH Network.Wreq.Lens.Machinery+ Network.Wreq.Lens.TH Paths_wreq build-depends: aeson >= 0.7.0.3,@@ -83,7 +83,8 @@ http-client >= 0.3.1.1, http-client-tls >= 0.2, http-types >= 0.8,- lens >= 4.1,+ lens >= 4.4,+ lens-aeson, mime-types, template-haskell, text,@@ -125,7 +126,8 @@ bytestring, http-client, http-types,- lens >= 4.1,+ lens >= 4.4,+ lens-aeson, temporary, test-framework, test-framework-hunit,