Commit Graph

307 Commits

Author SHA1 Message Date
Tom Christie
db33c071e1
Add 'chat' to docs (#818) 2020-02-19 11:38:14 +00:00
George Kettleborough
b3db9ff0b6
Add Auth.requires_response_body attribute (#803)
* Add Auth.requires_response_body attribute

If set then responses are read by the client before being sent back into the auth flow

* Update tests and docs

* PR fixes

* Change example methods
2020-02-10 12:10:11 +00:00
Colin Bounouar
cfe2278096
Document that iter_* methods are synchronous (#807) 2020-02-06 13:40:42 +01:00
Florimond Manca
6614831739
Use a base_url in app dispatcher examples (#799) 2020-02-03 13:05:56 +01:00
Florimond Manca
82dc6f32f8 Switch to private module names (#785)
* Rename modules

* Update names in package

* Fix tests

* Review docs
2020-01-28 14:34:43 +00:00
Yeray Diaz Diaz
b23420392e
Detect credentials in proxy URLs and create Proxy-authorization header (#780)
* Detect auth in proxy URLs and create Proxy-authorization header

* Add credentials and SOCKS details to proxy documentation

* Use URL.copy_with to remove credentials from URL
2020-01-20 13:50:50 +00:00
Florimond Manca
7d84408cda Add an async example to intro snippets (#750) 2020-01-14 09:01:09 +00:00
Francesco Pongiluppi
7f0e791f9d Fix syntax highlighting (#757)
Fixes syntax highlighting in quickstart documentation
2020-01-13 10:26:00 +00:00
Florimond Manca
bdfabe1e9a Setup custom domain (#751) 2020-01-11 09:38:09 +00:00
wynnw
b7c0d3446c Fix typo on "synonyms" (#748) 2020-01-10 23:46:31 +01:00
Mason Hall
b112b23152 Fix typo in async.md (#747) 2020-01-10 18:31:43 +01:00
Luís Gustavo
c225e95b1d Fix typo in 'Streaming responses' docs (#744) 2020-01-09 12:23:33 +00:00
Tom Christie
97807bf607 Link to changelog 2020-01-09 09:22:54 +00:00
Tom Christie
b932d94d99 Use www.python-httpx.org domain 2020-01-09 09:18:32 +00:00
Tom Christie
2038919b7e
Proposed 0.11 docs (#727)
* Proposed 0.11 docs

* Add async section and link in

* Update docs/advanced.md

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

* Update docs/async.md

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

* Update docs/async.md

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

* Update docs/quickstart.md

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

* Update docs/async.md

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

* Update docs/async.md

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

* Update docs/async.md

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

* Docs updates

* Use context-managed client instances in examples

* Update README with links to docs site, rather than to .md documents

* "99% test coverage"

* Update docs/async.md

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

* Update docs/async.md

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

* Add Client.close method to API docs

* Update docs/async.md

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

Co-authored-by: Florimond Manca <florimond.manca@gmail.com>
2020-01-08 12:51:52 +00:00
Tom Christie
12dd157fea
Public Auth API (#732)
* Public Auth API

* Minor docs tweak

* Request.aread and Request.content

* Support requires_request_body

* Update tests/models/test_requests.py

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

Co-authored-by: Florimond Manca <florimond.manca@gmail.com>
2020-01-07 13:20:23 +00:00
Florimond Manca
ff44d2d1b8 Fix typo in 'Redirection and History' docs (#719) 2020-01-03 21:14:13 +00:00
David Larlet
22663bc66e Update link to timeout fine tuning in quickstart (#696) 2019-12-31 12:02:14 +00:00
Tom Christie
35b7516674
Version 0.10.0 (#691)
* Version 0.10.0

* Update CHANGELOG.md

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

* Include changelog for 'response.request is no longer optional'.

* Add response.elapsed note to changelog

* Also ref original PR for response.elapsed behavior

Co-authored-by: Florimond Manca <florimond.manca@gmail.com>
2019-12-29 17:00:34 +00:00
Tom Christie
6a1ee0eb97
response.elapsed now reflects entire request/response time. (#692)
* 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.
2019-12-29 16:56:18 +00:00
Florimond Manca
e284b84bf9 Rename Client to AsyncClient (with compat synonym) (#680)
* Rename Client to AsyncClient (with compat synonym)

* Document motivation for AsyncClient renaming

Co-authored-by: Tom Christie <tom@tomchristie.com>
2019-12-29 15:34:23 +00:00
Florimond Manca
3462999366 Rename 'next' to 'anext' on Response (#676)
* Rename 'next' to 'anext' on Response

* Drop iscoroutinefunction() check

Co-authored-by: Tom Christie <tom@tomchristie.com>
2019-12-29 15:34:07 +00:00
Florimond Manca
d5da7430a2 Rename 'close' to 'aclose' on Client (#675)
* Switch to aclose on Client

* Fix reference to aclose in API docs
2019-12-29 15:15:09 +00:00
Florimond Manca
f9d18a8758 Rename 'read/close' to 'aread/aclose' on Response (#674)
* Switch to aread/aclose on responses

* Linting

Co-authored-by: Tom Christie <tom@tomchristie.com>
2019-12-29 15:14:53 +00:00
Florimond Manca
e30ec85016
Fix out-of-date methods on Response API docs (#673) 2019-12-21 17:21:14 +01:00
Tom Christie
77da6db8e8 Fix typo on "URLs" (#630) 2019-12-12 12:13:25 +01:00
Tom Christie
5cb48d981f
Update index.md 2019-12-06 15:34:45 +00:00
Tom Christie
ec40d04382
Add aiter methods on response (#610) 2019-12-06 15:20:09 +00:00
Tom Christie
d15dc0b1f8
Tighten up top-level API to only expose public API (#608)
* Tighten up top-level API to only expose public API

* Leave HTTPProxyMode for backwards compat, raising warnings.

* Add missing import
2019-12-06 15:20:01 +00:00
Tom Christie
ddc4885543
Update advanced.md 2019-12-06 11:35:29 +00:00
Tom Christie
1e23855709
Warn if cert / verify / trust_env are passed to client.request() (#597)
* Add cert and verify warnings on Client.request

* Resolve typo

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

* Resolve typo

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

* trust_env should be set on client init

* Update docs for per-Client SSL settings

* Update requests compat docs
2019-12-06 11:29:22 +00:00
Tom Christie
8d8ea8bbba
Add Client.stream() method. (#600)
* Add Client.stream() method.

* Add top-level stream API

* Documentation
2019-12-05 17:25:43 +00:00
Tom Christie
fc95c7e71e
stream -> stream_bytes, raw -> stream_raw (#599) 2019-12-05 11:39:28 +00:00
Tom Christie
f8794cb3ce
Improve backend docs, particularly wrt. autodetection (#595)
* Improve backend docs, particularly wrt. autodetection

* Resolve typo.
2019-12-05 10:27:16 +00:00
Tom Christie
2f54b200de
Allow default+override timeout style (#593)
* Allow styles like: httpx.Timeout(5.0, pool_timeout=None)

* Update timeout docs

* Minor tweaks to sub headings in timeout docs

* Fixing up Timeout docs

* RequestTimeout -> TimeoutException

* Tweak timeout docs
2019-12-05 09:38:48 +00:00
Tom Christie
81edb1b45b
Update index.md 2019-12-04 17:21:42 +00:00
Tom Christie
c08ae7796f
Alpha note, and recommendations on pinning versions (#590) 2019-12-04 11:57:02 +00:00
Tom Christie
c033ed1b65
TimeoutConfig -> Timeout (#591) 2019-12-04 11:39:45 +00:00
Tom Christie
5076952202
Rename http2 switch (#586)
* Simplify HTTP version config, and switch HTTP/2 off by default

* HTTP/2 docs

* HTTP/2 interlinking in docs

* Add concurrency auto-detection

* Add sniffio

* Rename HTTP2 switch on client

* http_2 -> http2
2019-12-02 19:52:29 +00:00
Tom Christie
30229f1652
Better HTTP/2 defaults. (#584)
* Simplify HTTP version config, and switch HTTP/2 off by default

* HTTP/2 docs

* HTTP/2 interlinking in docs
2019-12-02 17:07:04 +00:00
Mattwmaster58
33cb39733f Clarify multipart documentation (#580)
*Clarify multipart behvaiour
2019-12-02 11:56:25 +00:00
Tom Christie
871b0b5cb9
Update advanced.md 2019-11-30 21:46:07 +00:00
Tom Christie
7d45db068b
Link to ASGI docs (#577) 2019-11-30 18:38:27 +00:00
Tom Christie
fdaa01275a
Add Response.is_error (#574) 2019-11-30 17:43:48 +00:00
Florimond Manca
8d55d78574 Drop nox in favor of vanilla scripts (#566)
* Drop nox in favor of vanilla scripts

* Use named stages

* Fix attrs dependency resolution madness

* Add missing mkautodoc dev dependency

* Add missing install step on windows build

* Explicitly define stage order so that timed out Windows build runs last

* Add missing dev dependency on Black

* Clean up contributing guide

* Separate docs into docs-build and docs-serve
2019-11-30 11:50:13 +00:00
Tom Christie
296c9b459e
Drop erronous references to AsyncClient (#559) 2019-11-28 12:33:53 +00:00
Tom Christie
00e150f6a5
Client handles redirect + auth (#552)
* Drop sync client

* Drop unused imports

* Async only

* Update tests/test_decoders.py

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>

* Linting

* Update docs for async-only

* Import sorting

* Add async notes to docs

* Update README for 0.8 async switch

* Move auth away from middleware where possible

* Drop middleware sub-package

* Client.dispatcher -> Client.dispatch

* Docs tweak

* Linting

* Fix type checking issue

* Import ordering

* Fix up docstrings

* Minor docs fixes

* Linting

* Remove unused import
2019-11-27 12:10:10 +00:00
Tom Christie
206c5372a6
Drop sync (#544)
Drop sync client
2019-11-27 10:43:42 +00:00
Florimond Manca
926d6cd6e4
Document when to use AsyncClient (#534)
* Document when to use AsyncClient

* Strip advice on reverting to Requests
2019-11-22 09:19:39 +01:00
Jonas Lundberg
f0e6acb6e2 Add Unix Domain Sockets section to advanced docs page (#542) 2019-11-20 08:48:58 +01:00
Jonas Lundberg
2dbcaf859f Document mocking compatibility (#537) 2019-11-18 12:16:06 +00:00
Florimond Manca
95b2b24302
Add docs on SSL certificates (#510)
* Add docs on SSL certificates

* Update docs on verify and cert params

* Tweak wording

* Tweak wording about localhost

* Remove advanced warning

* Rephrase introduction of local HTTPS section
2019-11-07 10:46:36 +01:00
Florimond Manca
08069e9368
Add DEBUG logs of HTTP requests (#502) 2019-11-06 22:56:25 +01:00
Florimond Manca
07586f97e8
Convert debug logs to trace logs (#500)
* Convert debug logs to trace logs

* Update environment variables docs

* Update logging test
2019-11-02 22:40:15 +01:00
Tom Christie
1ce3cc3269 First pass at autodoc support (#464)
* First pass at autodoc support

* Add mkautodoc requirement for docs builds

* Linting

* pip install httpx when building docs, to make it available to mkautodoc

* Fix code example in docstring slightly

* Use latest mkautodoc to resolve rendering of code snippets in docstrings

* Fill in 'Helper functions' API docs

* First pass at documenting Client

* Add autodoc for Client

* Update to mkautodoc 0.1

* Fix typos
2019-10-30 16:21:39 +01:00
Yeray Diaz Diaz
9ec2cfc5dc
Multipart files tweaks (#482)
* Allow filenames as None in multipart encoding

* Allow str file contents in multipart encode

* Some formatting changes on `advanced.md`

* Document multipart file encoding in the advanced docs

* Update docs/advanced.md

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>
2019-10-20 13:25:00 +01:00
Florimond Manca
ad38db82f9
Document client-level configuration (#488)
* Document client-level configuration

* Fix typo
2019-10-19 15:05:26 +02:00
Yeray Diaz Diaz
09db6ec935 Drop proxies parameter from the high level API (#485)
* Drop `proxies` argument from high level API

* Update state of Digest auth in docs

* Add note on not supporting proxies at request level

* Grammar tweak

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>
2019-10-19 14:51:27 +02:00
Florimond Manca
074cd25b04
Document client block-usage and close() (#487)
* Document client context manager vs close() usage

* Convert client snippets to use context-managed syntax
2019-10-19 13:52:44 +02:00
Mateusz Woś
2984499f28 Add timeout fine-tunning advanced docs section (#476)
* Add timeout fine-tunning advanced docs section

* Rephrase part of timeout documentation
2019-10-16 18:27:45 +02:00
Can Sarıgöl
84731c8be5 Cache netrc authentication per-client (#400) 2019-10-16 08:31:47 -05:00
Florimond Manca
5e4f54d643
Add test script (#451) 2019-10-12 18:14:44 +02:00
Seth Michael Larson
a80c43294b
Add hints for debugging CI issues (#399) 2019-10-10 07:05:22 -05:00
Florimond Manca
65b8593c7c Allow serving docs via nox (#450) 2019-10-10 07:02:17 -05:00
thebigmunch
391786696a Fix some grammar in Advanced docs (#461) 2019-10-09 20:01:37 +02:00
ImPerat0R_
97a104abc3 Add language syntax highlighting in Quickstart (#466) 2019-10-09 18:34:54 +02:00
Jt Miclat
31730e7095 Add documentation for requests.Session compatibility (#449) 2019-10-05 19:20:18 -05:00
nwalsh1995
f504399781 Fix link to parallel page from async page (#440) 2019-10-03 20:08:27 -05:00
Davit Tovmasyan
2f2a4e4ef0 Document the files parameter on .post(), .patch(), and .put() (#409) (#414) 2019-10-03 19:47:19 -05:00
Jt Miclat
85fa89c49c Document compatibility difference for get, delete, head, and options (#418) 2019-10-03 19:46:24 -05:00
Kyle Galbraith
b65bce5924 Fix typos, spelling issues, and grammar in docs (#426) 2019-10-02 11:46:54 -05:00
Dustin Ingram
5df822ca11 Fix broken docs (#415)
* Fix broken link to parallel request page

* Fix incomplete code block on quickstart page
2019-09-30 20:19:53 +01:00
Ahmed Maher
5ced56b5b5 Expose ASGIDispatch & WSGIDispatch in the 'dispatch' namespace. (#407) 2019-09-28 14:55:19 -05:00
Jt Miclat
6752f7d6f6 Remove data, json and files parameters in delete() function (#408) 2019-09-28 12:18:40 -05:00
Florimond Manca
3496525d02
Document supported async libraries (#387)
* Document supported async libraries

* Update async.md
2019-09-26 13:43:56 +02:00
Can Sarıgöl
c9810a79d9 Add support for SSL_CERT_FILE and SSL_CERT_DIR (#307) 2019-09-23 10:24:53 -05:00
Tyrel Souza
5dc646fb9f Adding params to Client (#372) 2019-09-23 09:22:21 -05:00
Florimond Manca
12752466ae
Document the release process (#363)
* Document release process

* Update changelog instructions w/ ref to keepachangelog

* Prettify bullet points

* Add docs deploy to release script
2019-09-21 09:12:53 +02:00
Seth Michael Larson
b0fa0859a8
Configure Proxy from Client (#353)
* Incorporate suggestions

* Start of proxy config

* Incorporate suggestions

* Add proxies to high-level API, docs

* Update client.py
2019-09-20 12:33:06 -05:00
Roy Williams
05ac117679 Add .elapsed onto Response objects tracking how long a request took. (#351)
* Add `.elapsed` onto Response objects tracking how long a request took.

* Move elapsed timing from send methods into _get_response

* Address feedback

* Update tests/test_api.py

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>
2019-09-18 20:29:01 +02:00
Yeray Diaz Diaz
8155352d20
Document digest auth (#348)
* Document authentication

* Fix linting errors

* Tweak wording

* Update docs/quickstart.md

Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>
2019-09-16 12:50:00 +01:00
Florimond Manca
4616031202
Document + recommend async with syntax for AsyncClient (#344) 2019-09-15 18:29:37 +02:00
Paul (xobb) Chubatyy
0c4460e622 Add example of specifying HTTP versions (#337)
Closes #336
2019-09-12 22:39:22 +02:00
Dobrovolsky Bogdan
08edfac37d Add build_request to Client (#319)
* Update documentation

* Update documentation

* Update tests
Rename `_send` -> `_get_response`
Update documentation

* Code format with black

* Change documentation example to OPTIONS *

* Update documentation
Small code reformat

* `echo_headers` return json

* Simplify test

* Fix typo
2019-09-08 08:03:59 -05:00
can
c7af2b1a5d added hstspreload in Dependencies docs 2019-09-05 10:40:06 +03:00
Tomás Farías
db7f2d0df3 Add support for SSLKEYLOGFILE (#301)
* Skip test if OpenSSL version is lower than 1.1.1

* Use bionic dist for Python 3.8 job

* Pass trust_env to SSLConfig use monkeypatch in testing

* Don't raise KeyError if SSLKEYLOGFILE is not set

* Move trust_env after verify and cert
2019-09-01 08:01:11 -05:00
toppk
9e420a5c34 Automatically convert Client.cookies and Client.headers on set (#274) 2019-08-27 19:25:30 -05:00
Seth Michael Larson
6f4f186522
Add easier debug logging for users (#277)
Co-Authored-By: Florimond Manca <florimond.manca@gmail.com>
2019-08-27 11:43:13 -05:00
Seth Michael Larson
e7aa6d6710
Force HTTP/1.1 on short-lived connections (#284) 2019-08-27 07:54:11 -05:00
Tom Christie
c1ec1c33cd
Response.protocol -> Response.http_version (#250)
* Response.protocol -> Response.http_version

* Update docs
2019-08-20 15:15:38 +01:00
Tom Christie
ef9fc0f3a7
Drop raise_app_exceptions Client argument. (#238)
* Drop `raise_app_exceptions` keyword argument
* Improve docstrings for WSGIDispatch and ASGIDispatch
* Add docs for fine grained WSGI/ASGI control
2019-08-19 16:09:11 +01:00
Can Sarıgöl
21939fdaa8 Documented netrc support (#225) 2019-08-17 11:07:04 -05:00
Humberto Rocha
7156c36eb3 Add additional info to Contributing Guide (#213) 2019-08-14 21:37:44 -05:00
Humberto Rocha
079ab33c12 Create a Contributing page in the documentation (#190) 2019-08-06 16:52:54 -05:00
Stephen Brown II
44beaa1c8f Make Origin use scheme, not is_ssl (#168) 2019-07-28 21:43:06 -05:00
Stephen Brown II
72e6f47897 Allow setting headers at the Client level (#159) 2019-07-28 20:39:35 -05:00
Tom Christie
17bb165042
Branding updates for httpx (#130) 2019-07-19 15:36:36 +01:00
Tom Christie
2d09d5b36c
Renaming -> httpx (#129)
* Renaming -> httpx

* Renaming to httpx
2019-07-19 15:15:16 +01:00
Tom Christie
bb8697011d
Support WSGI and ASGI apps. (#94)
* Add 'Client(app=...)' support

* Add ASGI support with Client(app=app)

* Improve exc cases when using client with ASGI

* Tighten up exception handling when using as a test client

* Fix up stream I/O for WSGI/ASGI apps

* Docs for WSGI/ASGI integration
2019-06-18 15:53:33 +01:00
Tom Christie
fdc4ab2a89 Tweak compat docs 2019-06-17 17:28:27 +01:00
Tom Christie
56a7943206
Int status codes (#92)
* Use plain int for response.status_code

* Linting
2019-06-17 16:53:39 +01:00
Tom Christie
d21e3ab2f0 Add multipart docs 2019-06-17 14:51:40 +01:00
Tom Christie
7c6fb5c6ca
Tweaks (#89)
* Close redirect responses

* History should not be reverse-order

* History should not be reverse-order

* Docs updates
2019-06-13 16:19:39 +01:00
Tom Christie
d5d726f66a Add Cookies docs 2019-06-13 14:03:22 +01:00
Tom Christie
f296e6ded9 'For Python 3' 2019-06-12 16:25:48 +01:00
Tom Christie
60dca3da39 Docs tweaks 2019-06-12 16:06:09 +01:00
Tom Christie
c9747aa357
http3 (#86)
* Start fleshing out documentation

* Docs work

* http3

* Update docs

* Include lowercase status codes, for requests compat

* Updating docs

* Docs tweaks
2019-06-12 15:02:16 +01:00