From a8fe47df3361ff7eb1b332f4345a0db6853bc58c Mon Sep 17 00:00:00 2001 From: klausweiss Date: Thu, 1 Feb 2024 21:15:52 +0100 Subject: [PATCH] Drop Python 3.7 support (#10) --- .github/workflows/ci.yml | 2 +- CHANGELOG.md | 4 ++++ README.md | 2 +- pyproject.toml | 5 ++--- setup.cfg | 5 ++--- .../protocol_extending_another_builder_unhappy_path.py | 4 ++-- 6 files changed, 12 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 08aeb1b..281ce2a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,7 +12,7 @@ jobs: strategy: matrix: # for the list of all versions look here: https://github.com/actions/python-versions/blob/main/versions-manifest.json - python-version: [ '3.7', '3.8', '3.9', '3.10', '3.11', '3.12' ] + python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12' ] steps: - uses: actions/checkout@v3 diff --git a/CHANGELOG.md b/CHANGELOG.md index cd2d592..56fc192 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## 0.4.0 + +Drop support for Python 3.7. + ## 0.3.10 Add support for mypy==1.8.x. diff --git a/README.md b/README.md index 6b8f182..d4b734d 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ See the [examples](#examples) section below. ## Supported versions -The plugin supports python 3.7 up to 3.12 and mypy >= 0.920 and <= 1.8.x. +The plugin supports python 3.8 up to 3.12 and mypy >= 0.920 and <= 1.8.x. ## Installation diff --git a/pyproject.toml b/pyproject.toml index dd03bed..9acec22 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,7 +7,7 @@ build-backend = "setuptools.build_meta" [tool.black] line-length = 120 -target-version = ['py37'] +target-version = ['py38'] include = '\.pyi?$' [tool.isort] @@ -52,7 +52,7 @@ disable = """ [tool.tox] legacy_tox_ini = """ [tox] -envlist = py{37,38,39,310,311,312}-mypy{,0920} +envlist = py{38,39,310,311,312}-mypy{,0920} isolated_build = true [testenv] @@ -86,7 +86,6 @@ deps = [gh-actions] python = - 3.7: py37 3.8: py38 3.9: py39 3.10: py310 diff --git a/setup.cfg b/setup.cfg index 38e0054..00964cf 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,6 +1,6 @@ [metadata] name = typing-protocol-intersection -version = 0.3.10 +version = 0.4.0 description = Protocol intersection for mypy long_description = file: README.md long_description_content_type = text/markdown @@ -9,7 +9,6 @@ project_urls = Bug Tracker = https://github.com/klausweiss/typing-protocol-intersection/issues classifiers = Programming Language :: Python :: 3 - Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 Programming Language :: Python :: 3.10 @@ -23,7 +22,7 @@ classifiers = package_dir = = . packages = find: -python_requires = >=3.7 +python_requires = >=3.8 [options.package_data] * = py.typed, *.pyi diff --git a/tests/testcases/protocol_extending_another_builder_unhappy_path.py b/tests/testcases/protocol_extending_another_builder_unhappy_path.py index 5e279d0..49e87c2 100644 --- a/tests/testcases/protocol_extending_another_builder_unhappy_path.py +++ b/tests/testcases/protocol_extending_another_builder_unhappy_path.py @@ -50,6 +50,6 @@ def main() -> None: # expected stdout -# tests/testcases/protocol_extending_another_builder_unhappy_path.py:44:5: error: "ProtocolIntersection[Y]" has no attribute "base" [attr-defined] -# tests/testcases/protocol_extending_another_builder_unhappy_path.py:50:13: error: Argument 1 to "get_x_y" has incompatible type "Builder[typing_protocol_intersection.types.ProtocolIntersection[X]]"; expected "Builder[typing_protocol_intersection.types.ProtocolIntersection[Y]]" [arg-type] +# tests/testcases/protocol_extending_another_builder_unhappy_path.py:43:5: error: "ProtocolIntersection[Y]" has no attribute "base" [attr-defined] +# tests/testcases/protocol_extending_another_builder_unhappy_path.py:49:13: error: Argument 1 to "get_x_y" has incompatible type "Builder[typing_protocol_intersection.types.ProtocolIntersection[X]]"; expected "Builder[typing_protocol_intersection.types.ProtocolIntersection[Y]]" [arg-type] # Found 2 errors in 1 file (checked 1 source file)