Commit Graph

71 Commits

Author SHA1 Message Date
Alex Grönholm
4fb9528c2f
Drop Python 3.8 support (#3592) 2025-06-27 12:45:12 +02:00
Tom Christie
f06171fd5a
Revert "Removed leading $ from cli code blocks" (#3192)
Co-authored-by: Kar Petrosyan <92274156+karpetrosyan@users.noreply.github.com>
2024-09-23 00:16:32 +04:00
Shiny
fa6dac8383
Removed leading $ from cli code blocks (#3174)
Co-authored-by: Tom Christie <tom@tomchristie.com>
2024-05-05 17:24:16 +01:00
Kien Dang
be56b74735
Fix doc links for making requests directly to WSGI/ASGI apps (#3186) 2024-05-02 11:07:09 +01:00
Michiel W. Beijen
392dbe45f0
Add support for zstd decoding (#3139)
This adds support for zstd decoding using the python package zstandard.
This is similar to how it is implemented in urllib3. I also chose the
optional installation option httpx[zstd] to mimic the same option in
urllib3.

zstd decoding is similar to brotli, but in benchmarks it is supposed to
be even faster. The zstd compression is described in RFC 8878.

See https://github.com/encode/httpx/discussions/1986

Co-authored-by: Kamil Monicz <kamil@monicz.dev>
2024-03-21 10:17:15 +00:00
Kar Petrosyan
73e688875a
Fix sections references (#3058) 2024-01-15 11:15:31 +00:00
Iurii Pliner
b40c04dfa6
Drop support for Python 3.7 (#2813)
* Drop Python 3.7 support

* Fix lint

* Changelog
2023-08-09 10:02:28 +01:00
Tom Christie
57daabf673
Drop rfc3986 requirement. (#2252)
* Drop RawURL

* First pass at adding urlparse

* Update urlparse

* Add urlparse

* Add urlparse

* Unicode non-printables can be valid in IDNA hostnames

* Update _urlparse.py docstring

* Linting

* Trim away ununsed codepaths

* Tweaks for path validation depending on scheme and authority presence

* Minor cleanups

* Minor cleanups

* full_path -> raw_path, forr internal consistency

* Linting fixes

* Drop rfc3986 dependency

* Add test for #1833

* Linting

* Drop 'rfc3986' dependancy from README and docs homepage

Co-authored-by: Thomas Grainger <tagrain@gmail.com>
2023-01-10 10:36:15 +00:00
Fred Thomsen
5af6123fff
Update docs to reflect supported python versions (#2338)
Replaces Python 3.6 references with Python 3.7.

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
2022-08-16 17:20:35 -05:00
Tom Christie
1c33a2854e
Make charset auto-detection optional. (#2165)
* Add Response(..., default_encoding=...)

* Add tests for Response(..., default_encoding=...)

* Add Client(..., default_encoding=...)

* Switch default encoding to 'utf-8' instead of 'autodetect'

* Make charset_normalizer an optional dependancy, not a mandatory one.

* Documentation

* Use callable for default_encoding

* Update tests for new charset autodetection API

* Update docs for new charset autodetection API

* Update requirements

* Drop charset_normalizer from requirements
2022-05-23 16:27:32 +01:00
Ofek Lev
67c297069f
Drop EOL Python 3.6 (#2097)
Co-authored-by: Florimond Manca <florimond.manca@protonmail.com>
Co-authored-by: Tom Christie <tom@tomchristie.com>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
2022-03-30 17:31:05 +02:00
Tom Christie
2072aa2361
Docs tweaks (#2075) 2022-02-09 16:05:20 +00:00
Tom Christie
8dc9b6bd59
SOCKS proxy support (#2034) 2022-01-19 14:58:19 +00:00
Tom Christie
b4f60694eb
Version 0.21 release notes (#1938) 2021-11-15 14:35:09 +00:00
Tom Christie
35164b7a64
Version 0.20 (#1890)
* Version 0.20

* Add date to changelog

* Freeze charset-normalizer to a known version for testing consistency
2021-10-13 10:43:58 +01:00
Marcelo Trylesinski
deb1a2b921
Update index.md (#1883)
Co-authored-by: Tom Christie <tom@tomchristie.com>
2021-10-06 13:26:49 +01:00
Tom Christie
e1abaf146f
Tidy up the formatting of HTTP/2 requests (#1860)
* Tidy up the formatting of HTTP/2 requests

* Black linting
2021-09-14 13:36:22 +01:00
Tom Christie
7e01677f0a
List 'click' and 'rich' in the project dependencies (#1858) 2021-09-14 10:44:07 +01:00
Tom Christie
ee9250d60b
Add cli support (#1855)
* Add cli support

* Add setup.py

* Import main to 'httpx.main'

* Add 'cli' to requirements

* Add tests for command-line client

* Drop most CLI tests

* Add test_json

* Add test_redirects

* Coverage exclusion over _main.py in order to test more clearly

* Black formatting

* Add test_follow_redirects

* Add test_post, test_verbose, test_auth

* Add test_errors

* Remove test_errors

* Add test_download

* Change test_errors - perhaps the empty host header was causing the socket error?

* Update test_errors to not break socket

* Update docs

* Update version to 1.0.0.beta0

* Tweak CHANGELOG

* Fix up images in README

* Tweak images in README

* Update README
2021-09-14 09:44:43 +01:00
Tom Christie
0d7c4caada
Version 0.19.0 (#1809)
* Update CHANGELOG

* Update CHANGELOG

* Version 0.19.0

* Update CHANGELOG
2021-08-19 12:37:25 +01:00
Tom Christie
d5143120d1
Use either brotli or brotlicffi. (#1618)
* Use either brotli (recommended for CPython) or brotlicffi (Recommended for PyPy and others)

* Add comments in places where we switch behaviour depending on brotli/brotlicffi

Co-authored-by: Florimond Manca <florimond.manca@gmail.com>
2021-08-13 11:52:45 +01:00
Tom Christie
acb5e6ac50
Add charset_normalizer detection. (#1791)
* Add charset_normalizer detection

* Tweak JSON tests for slightly different charset decoding behaviour

* Add charset-normalizer to docs
2021-08-13 11:38:53 +01:00
Tom Christie
760af43b4f
Update brotli support to use the brotlicffi package (#1605)
* Update brotli support to use the brotlicffi package
2021-04-28 10:09:29 +01:00
Tom Christie
0c2cb240df
Version 0.18.0 (#1576)
* Version 0.18.0
2021-04-27 15:20:22 +01:00
Tom Christie
8fd5b71016
Drop StreamContextManager in favour of contextlib.contextmanager/asynccontextmanager (#1577)
* Drop StreamContextManager in favour of using contextlib.contextmanager/asyncontextmanager

* Use type: ignore to avoid mypy errors on 3.6
2021-04-19 11:07:07 +01:00
Tom Christie
437b55c520
Refine project workflow (#1534)
* Refine project workflow

* Fix link to third party packages
2021-03-24 16:48:57 +00:00
Tom Christie
59f65e2b98
Version 0.17.0 (#1403)
* Version 0.17.0

* Update changelog

* Tweak verbs

* Fix backtick

Co-authored-by: Jamie Hewland <jamie.hewland@hpe.com>

Co-authored-by: Florimond Manca <florimond.manca@gmail.com>
Co-authored-by: Jamie Hewland <jamie.hewland@hpe.com>
2021-02-28 17:05:01 +01:00
nkitsaini
181639322e
Update README to reflect new estimate for v1.0 release (#1445)
Co-authored-by: Ankit <ankit@jpqr.com>
Co-authored-by: Florimond Manca <florimond.manca@gmail.com>
2021-01-07 07:57:25 +01:00
Tom Christie
ceccb964e6
Update butterfly logo (#1382) 2020-11-10 10:16:07 +00:00
Kyungmin Lee
84dca25b8e
Fix typo (#1386)
* Fix typo

three greater-than signs -> three dots

* Fix typo

three greater-than signs -> three dots

* Fix typo

three greater-than signs -> three dots
2020-11-08 10:28:38 +01:00
Tom Christie
dbbcf438cd
Version 0.16 (#1347) 2020-10-06 15:29:40 +01:00
Tom Christie
c923f1af91
Update docs for 0.15 (#1306) 2020-09-22 11:57:14 +01:00
Tom Christie
ff0febbaa9
Update README.md (#1291)
* Update README.md

* Update index.md
2020-09-17 09:11:41 +01:00
Florimond Manca
8fa87650b2
Drop urllib3 in favor of public gist (#1182)
* Drop urllib3 in favor of public gist

* Drop urllib3 coverage omit

* Drop recommendation to use urllib3 transport during Requests migration

* Add urllib3-transport to 3p pkgs

* Drop urllib3 from dependencies list in README / docs home page

Co-authored-by: Tom Christie <tom@tomchristie.com>
2020-09-04 22:56:36 +02:00
Joe
15c1e42c20
Packaging dependancy tweaks (#1206)
* Remove idna and add brotli to extras

* Update dependency docs

* Update BrotliDecoder error message

* Add nocover

Co-authored-by: Tom Christie <tom@tomchristie.com>
2020-08-21 12:30:57 +01:00
Tom Christie
f4b407a7c4
Adjust 1.0 expectations. (#1202)
* Adjust 1.0 expectations.

Not sure why I thought saying "expected September 2020" was a good idea.
Like *maybe* that'll happen, but no problem with us taking our time if there's areas we want to be really firm about first. *Eg finer details in the Transport API*.

* Update index.md
2020-08-20 16:30:45 +01:00
Hugo van Kemenade
d10b7cdc51
Use pycon for Python console code blocks (#1187)
Co-authored-by: Florimond Manca <florimond.manca@gmail.com>
2020-08-18 15:17:44 +02:00
Tom Christie
8c7729e42c
Version 0.14.0 (#1083)
* Version 0.14.0

* Update CHANGELOG

* Update CHANGELOG.md

Co-authored-by: Stephen Brown II <Stephen.Brown2@gmail.com>

* Update CHANGELOG

* max_keepalive_connections

* Add deprecation test

* Update CHANGELOG.md

* Undate dependency pin callout

* Update expected 1.0 release date

Co-authored-by: Stephen Brown II <Stephen.Brown2@gmail.com>
2020-08-07 15:50:25 +01:00
Tom Christie
8d9dfb54fc
HTTP/2 becomes fully optional (#1140)
* HTTP/2 becomes fully optional

* Fix linting, coverage
2020-08-07 15:16:21 +01:00
Florimond Manca
78cf16ace9
Drop HSTS Preloading (#1110)
* Drop HSTS Preloading

* Update test_client.py

Co-authored-by: Tom Christie <tom@tomchristie.com>
2020-08-05 13:05:45 +01:00
Tom Christie
2c2c6a71a9
Version 0.13 (#971)
* Version 0.13

* Update docs to 0.13 as the latest

* Whitespacing tweak

* More explicit notes about transport API renamings

* Update changelog

Co-authored-by: florimondmanca <florimond.manca@gmail.com>
2020-05-22 09:41:02 +01:00
Tom Christie
99a5c78bbb
Update dependencies in docs (#969)
* Update dependencies in docs

* Update README.md

Co-authored-by: Florimond Manca <florimond.manca@gmail.com>

* Update docs/index.md

Co-authored-by: Florimond Manca <florimond.manca@gmail.com>

Co-authored-by: Florimond Manca <florimond.manca@gmail.com>
2020-05-21 13:43:34 +01:00
Tom Christie
bed3d8bd38
Version 0.13.0.dev0 (#915)
* Version 0.13.0.dev0

* Bump httpcore

* Include packaging in requirements

* Include note on UDS support

* Update CHANGELOG
2020-04-30 17:09:49 +01:00
Tom Christie
19bf2112a1
Test Suite on GitHub Actions (#907)
* Test Suite on GitHub Actions

* Add linting checks

* Update badges. Drop unused codecov, pending GitHub action support,
2020-04-24 16:46:45 +01:00
Florimond Manca
21f533774f
Add 'Third Party Packages' docs page (#876) 2020-03-26 15:43:04 +01:00
Tom Christie
6e40c1b26a
Version 0.12 (#852)
* Version 0.12

* Update docs to reference 0.12
2020-03-09 10:18:34 +00:00
Florimond Manca
7d84408cda Add an async example to intro snippets (#750) 2020-01-14 09:01:09 +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