diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 2c7cfb9f9b..fb2304a81a 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -17,7 +17,7 @@ jobs: - uses: "actions/checkout@v4" - uses: "actions/setup-python@v5" with: - python-version: 3.8 + python-version: 3.9 - name: "Install dependencies" run: "scripts/install" - name: "Build package & docs" diff --git a/.github/workflows/test-suite.yml b/.github/workflows/test-suite.yml index ae70a6b32b..9ea74686b8 100644 --- a/.github/workflows/test-suite.yml +++ b/.github/workflows/test-suite.yml @@ -14,7 +14,7 @@ jobs: strategy: matrix: - python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] steps: - uses: "actions/checkout@v4" diff --git a/CHANGELOG.md b/CHANGELOG.md index ee0f81f9c3..13bbfcdb79 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). +## [UNRELEASED] + +### Removed + +* Drop support for Python 3.8 + ## 0.28.1 (6th December, 2024) * Fix SSL case where `verify=False` together with client side certificates. diff --git a/README.md b/README.md index 23992d9c24..2ccecd578c 100644 --- a/README.md +++ b/README.md @@ -101,7 +101,7 @@ Or, to include the optional HTTP/2 support, use: $ pip install httpx[http2] ``` -HTTPX requires Python 3.8+. +HTTPX requires Python 3.9+. ## Documentation diff --git a/docs/async.md b/docs/async.md index 089d783191..f01715d84f 100644 --- a/docs/async.md +++ b/docs/async.md @@ -23,7 +23,7 @@ To make asynchronous requests, you'll need an `AsyncClient`. ``` !!! tip - Use [IPython](https://ipython.readthedocs.io/en/stable/) or Python 3.8+ with `python -m asyncio` to try this code interactively, as they support executing `async`/`await` expressions in the console. + Use [IPython](https://ipython.readthedocs.io/en/stable/) or Python 3.9+ with `python -m asyncio` to try this code interactively, as they support executing `async`/`await` expressions in the console. ## API Differences diff --git a/docs/index.md b/docs/index.md index c2210bc74f..90a4f6b6f7 100644 --- a/docs/index.md +++ b/docs/index.md @@ -145,6 +145,6 @@ To include the optional brotli and zstandard decoders support, use: $ pip install httpx[brotli,zstd] ``` -HTTPX requires Python 3.8+ +HTTPX requires Python 3.9+ [sync-support]: https://github.com/encode/httpx/issues/572 diff --git a/pyproject.toml b/pyproject.toml index 675d2ad4c6..eb9e5c9a3d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,7 +6,7 @@ build-backend = "hatchling.build" name = "httpx" description = "The next generation HTTP client." license = "BSD-3-Clause" -requires-python = ">=3.8" +requires-python = ">=3.9" authors = [ { name = "Tom Christie", email = "tom@tomchristie.com" }, ] @@ -20,7 +20,6 @@ classifiers = [ "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", diff --git a/requirements.txt b/requirements.txt index caa094f33a..646cb813d7 100644 --- a/requirements.txt +++ b/requirements.txt @@ -25,6 +25,5 @@ pytest==8.3.4 ruff==0.8.1 trio==0.27.0 trio-typing==0.10.0 -trustme==1.1.0; python_version < '3.9' -trustme==1.2.0; python_version >= '3.9' +trustme==1.2.0 uvicorn==0.32.1