From 55cb03bc9bca79abaf37177b7f3134462308519e Mon Sep 17 00:00:00 2001 From: klausweiss Date: Sun, 22 Dec 2024 23:50:48 +0100 Subject: [PATCH] Add support for mypy==1.14.x (#15) This commit was generated with ./tools/prepare-pr-after-mypy-bump.sh --- CHANGELOG.md | 4 ++++ README.md | 2 +- setup.cfg | 2 +- tests/test_mypy_plugin.py | 3 ++- typing_protocol_intersection/mypy_plugin.py | 2 +- 5 files changed, 9 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9a9fc76..b368b23 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## 0.5.2 + +Add support for mypy==1.14.x. + ## 0.5.1 Add support for mypy==1.13.x. diff --git a/README.md b/README.md index f495765..46b60ad 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ See the [examples](#examples) section below. ## Supported versions -The plugin supports python 3.9 up to 3.13 and mypy >= 0.920 and <= 1.13.x. +The plugin supports python 3.9 up to 3.13 and mypy >= 0.920 and <= 1.14.x. ## Installation diff --git a/setup.cfg b/setup.cfg index eaa4c00..1e18360 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,6 +1,6 @@ [metadata] name = typing-protocol-intersection -version = 0.5.1 +version = 0.5.2 description = Protocol intersection for mypy long_description = file: README.md long_description_content_type = text/markdown diff --git a/tests/test_mypy_plugin.py b/tests/test_mypy_plugin.py index fe69acc..a6317da 100644 --- a/tests/test_mypy_plugin.py +++ b/tests/test_mypy_plugin.py @@ -104,7 +104,7 @@ def test_mypy_plugin(testcase_file: _TestCase, run_mypy): [ pytest.param("0.910", id="0.910 - before the first supported 0.920"), pytest.param("0.992", id="0.992 - non-existent version greater than the last tested 0.x"), - pytest.param("1.14.0", id="1.14.0 - first greater than 1.13.x with breaking changes"), + pytest.param("1.15.0", id="1.15.0 - first greater than 1.14.x with breaking changes"), ], ) def test_raises_for_unsupported_mypy_versions(version: str) -> None: @@ -133,6 +133,7 @@ def test_raises_for_unsupported_mypy_versions(version: str) -> None: pytest.param("1.11.0", id="1.11.0 - some 1.11.x version"), pytest.param("1.12.0", id="1.12.0 - some 1.12.x version"), pytest.param("1.13.0", id="1.13.0 - some 1.13.x version"), + pytest.param("1.14.0", id="1.14.0 - some 1.14.x version"), ], ) def test_initializes_for_supported_mypy_versions(version: str) -> None: diff --git a/typing_protocol_intersection/mypy_plugin.py b/typing_protocol_intersection/mypy_plugin.py index f4f2bcd..e7ac739 100644 --- a/typing_protocol_intersection/mypy_plugin.py +++ b/typing_protocol_intersection/mypy_plugin.py @@ -211,7 +211,7 @@ def plugin(version: str) -> typing.Type[mypy.plugin.Plugin]: numeric_prefixes = (_numeric_prefix(x) for x in version_prefix.split(".")) parted_version = tuple(int(prefix) if prefix else None for prefix in numeric_prefixes) if (len(parted_version) == 2 and (0, 920) <= parted_version <= (0, 991)) or ( - len(parted_version) == 3 and (1, 0, 0) <= parted_version < (1, 14, 0) + len(parted_version) == 3 and (1, 0, 0) <= parted_version < (1, 15, 0) ): return ProtocolIntersectionPlugin