From 8b58a9c44c58966baedd013bc0742a613c766999 Mon Sep 17 00:00:00 2001 From: Iurii Pliner Date: Wed, 9 Aug 2023 13:35:15 +0100 Subject: [PATCH] Drop Python 3.7 support (#727) * Drop Python 3.7 support * Changelog * Changelog * Fix rebase * Remove unnecessary black argument, it will be inferred https://black.readthedocs.io/en/stable/change_log.html#id24 --- .github/workflows/publish.yml | 2 +- .github/workflows/test-suite.yml | 2 +- CHANGELOG.md | 2 ++ README.md | 2 +- docs/index.md | 2 +- pyproject.toml | 3 +-- scripts/check | 2 +- scripts/lint | 2 +- 8 files changed, 9 insertions(+), 8 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 85350472..d8ecfb99 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -17,7 +17,7 @@ jobs: - uses: "actions/checkout@v3" - uses: "actions/setup-python@v4" with: - python-version: 3.7 + python-version: 3.8 - 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 f5ad75a4..eb1cc7e2 100644 --- a/.github/workflows/test-suite.yml +++ b/.github/workflows/test-suite.yml @@ -14,7 +14,7 @@ jobs: strategy: matrix: - python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"] + python-version: ["3.8", "3.9", "3.10", "3.11"] steps: - uses: "actions/checkout@v3" diff --git a/CHANGELOG.md b/CHANGELOG.md index acd18429..7cbc0031 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Change the type of `Extensions` from `Mapping[Str, Any]` to `MutableMapping[Str, Any]`. (#762) - Handle HTTP/1.1 half-closed connections gracefully. (#641) +- Drop Python 3.7 support. (#727) ## 0.17.3 (July 5th, 2023) @@ -15,6 +16,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - The networking backend interface has [been added to the public API](https://www.encode.io/httpcore/network-backends). Some classes which were previously private implementation detail are now part of the top-level public API. (#699) - Graceful handling of HTTP/2 GoAway frames, with requests being transparently retried on a new connection. (#730) - Add exceptions when a synchronous `trace callback` is passed to an asynchronous request or an asynchronous `trace callback` is passed to a synchronous request. (#717) +- Drop Python 3.7 support. (#727) ## 0.17.2 (May 23th, 2023) diff --git a/README.md b/README.md index 15435494..66a21500 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ Some things HTTP Core does do: ## Requirements -Python 3.7+ +Python 3.8+ ## Installation diff --git a/docs/index.md b/docs/index.md index 61e334b9..6315762f 100644 --- a/docs/index.md +++ b/docs/index.md @@ -25,7 +25,7 @@ Some things HTTP Core does do: ## Requirements -Python 3.7+ +Python 3.8+ ## Installation diff --git a/pyproject.toml b/pyproject.toml index 87c718ee..10da42ca 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,7 +7,7 @@ name = "httpcore" dynamic = ["readme", "version"] description = "A minimal low-level HTTP client." license = "BSD-3-Clause" -requires-python = ">=3.7" +requires-python = ">=3.8" authors = [ { name = "Tom Christie", email = "tom@tomchristie.com" }, ] @@ -21,7 +21,6 @@ classifiers = [ "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", diff --git a/scripts/check b/scripts/check index b7f747a0..cf0dba53 100755 --- a/scripts/check +++ b/scripts/check @@ -9,6 +9,6 @@ export SOURCE_FILES="httpcore tests" set -x ${PREFIX}ruff check --show-source $SOURCE_FILES -${PREFIX}black --exclude '/(_sync|sync_tests)/' --check --diff --target-version=py37 $SOURCE_FILES +${PREFIX}black --exclude '/(_sync|sync_tests)/' --check --diff $SOURCE_FILES ${PREFIX}mypy $SOURCE_FILES scripts/unasync --check diff --git a/scripts/lint b/scripts/lint index 749edb4c..22a40d75 100755 --- a/scripts/lint +++ b/scripts/lint @@ -9,7 +9,7 @@ export SOURCE_FILES="httpcore tests" set -x ${PREFIX}ruff --fix $SOURCE_FILES -${PREFIX}black --target-version=py37 --exclude '/(_sync|sync_tests)/' $SOURCE_FILES +${PREFIX}black --exclude '/(_sync|sync_tests)/' $SOURCE_FILES # Run unasync last because its `--check` mode is not aware of code formatters. # (This means sync code isn't prettified, and that's mostly okay.)