* BaseClient and AsyncClient
* Introduce 'httpx.Client'
* Top level API -> sync
* Top level API -> sync
* Add WSGI support, drop deprecated imports
* Wire up timeouts to urllib3
* Wire up pool_limits
* Add urllib3 proxy support
* Pull #734 into sync Client
* Update AsyncClient docstring
* Simpler WSGI implementation
* Set body=None when no content
* Wrap urllib3 connection/read exceptions
- Drop the url.origin property.
- Drop Origin from the top-level export.
- Use origin = Origin(url) in our internal usage, rather than
url.origin.
Closes#656
Co-authored-by: Tom Christie <tom@tomchristie.com>
* Bump coverage
* Tests for iterative text decoding with 'aiter_text'
* nocover on xfail exception cases
* nocover API that is pending deprecation
* Tweak test to removed uncovered line
* Ingest request body in RedirectBodyUnavailable test case
* Changed behaviour of elapsed on response
* Fixed api docs for Response elapsed
* Minor tweaks to 'request.elapsed'
* Response instantiated with content should have elapsed==0
* Fix elapsed time on immediately closed responses.
* Added docstring and better typing for parsed_header_links
* Added docstring and better typing for links property
Added tests for it too
* Added --diff to black check to see where CI fails
Relaxed travis build on master only
* Fixed black issue removing a \t
* Put noxfile and travis.yml as they were before
* Update IDNA encoding to 2008 spec
* Add Unicode IDNA Compatibility Processing
* Parametrize idna test
* Use rfc3986 iri_reference for IDNA names
* Add test for IRI object
* Remove test_iri as this interface has been removed
* Use response text on `json`
Pass kwargs to the loads call
* Add failing test demonstrating corner case
* Copy `guess_json_utf` function from requests
* "Fix" type hinting and lint
* Actually add tests_utils.py
* Support thread-pooled dispatch
* Add ConcurrencyBackend.run
* Initial work towards support byte-iterators on sync request data
* Test case for byte iterator content
* byte iterator support for RequestData
* Add BaseResponse
* Bridge sync/async data in SyncResponse
* Add BaseClient
* SyncResponse -> Response
* Tweaking type annotation
* Distinct classes for Request, AsyncRequest
* Tweak is_streaming, content in BaseRequest
* Stream handling moves to client
* Handle mediating to AsyncResponse from a standard sync Dispatcher class
* Working on thread-pooled dispatcher
* Support threaded dispatch, inc. streaming requests/responses
* Increase test coverage
* Coverage and tweaks
* Include Accept and User-Agent headers by default