servant/servant-client-core
Ian Shipman 9666f1956b Addresses problems with URL encodings
This changes the way URL encoding for query parameters is handled,
making it possible to correctly encode arbitrary binary data into query
parameter values.

Closes #1418
2021-10-03 09:57:55 -05:00
..
src/Servant/Client Addresses problems with URL encodings 2021-10-03 09:57:55 -05:00
test servant-client-core: Redact Authorization header 2019-11-05 16:31:06 +01:00
CHANGELOG.md Prepare 0.18.3 release (#1430) 2021-06-24 00:38:46 +03:00
LICENSE Changelog and cabal file edits 2018-11-13 09:58:42 +02:00
README.md Review fixes 2017-09-15 09:15:46 -04:00
servant-client-core.cabal remove tested-with (GHC < 8.6.5) from cabal 2021-10-02 13:13:33 +02:00
Setup.hs stylish-haskell servant-client-core 2018-06-30 22:17:08 +03:00

servant-client-core

servant

HTTP-client-agnostic client functions for servant APIs.

This library should mainly be of interest to backend- and combinator-writers.

For backend-writers

If you are creating a new backend, you'll need to:

  1. Define a RunClient instance for your datatype (call it MyMonad)
  2. Define a ClientLike instance. This will look like:
instance ClientLike (MyMonad a) (MyMonad a) where
  mkClient = id
  1. Re-export the module Servant.Client.Core.Reexport so that your end-users can be blissfully unaware of 'servant-client-core', and so each backend-package comes closer to the warm hearth of the drop-in-replacement equivalence class.

For combinator-writers

You'll need to define a new HasClient instance for your combinator. There are plenty of examples to guide you in the HasClient module.