diff --git a/.changeset/fix_minimum_attrs_version.md b/.changeset/fix_minimum_attrs_version.md new file mode 100644 index 000000000..1d8fe623b --- /dev/null +++ b/.changeset/fix_minimum_attrs_version.md @@ -0,0 +1,10 @@ +--- +default: patch +--- + +# Fix minimum `attrs` version + +The minimum `attrs` dependency version was incorrectly set to 21.3.0. This has been corrected to 22.2.0, the minimum +supported version since `openapi-python-client` 0.19.1. + +Closes #1084, thanks @astralblue! diff --git a/end_to_end_tests/golden-record/pyproject.toml b/end_to_end_tests/golden-record/pyproject.toml index 072129021..feca06dbd 100644 --- a/end_to_end_tests/golden-record/pyproject.toml +++ b/end_to_end_tests/golden-record/pyproject.toml @@ -13,7 +13,7 @@ include = ["CHANGELOG.md", "my_test_api_client/py.typed"] [tool.poetry.dependencies] python = "^3.9" httpx = ">=0.20.0,<0.29.0" -attrs = ">=21.3.0" +attrs = ">=22.2.0" python-dateutil = "^2.8.0" [build-system] diff --git a/end_to_end_tests/literal-enums-golden-record/pyproject.toml b/end_to_end_tests/literal-enums-golden-record/pyproject.toml index 3a2ce20f6..2c4d6b4e3 100644 --- a/end_to_end_tests/literal-enums-golden-record/pyproject.toml +++ b/end_to_end_tests/literal-enums-golden-record/pyproject.toml @@ -13,7 +13,7 @@ include = ["CHANGELOG.md", "my_enum_api_client/py.typed"] [tool.poetry.dependencies] python = "^3.9" httpx = ">=0.20.0,<0.29.0" -attrs = ">=21.3.0" +attrs = ">=22.2.0" python-dateutil = "^2.8.0" [build-system] diff --git a/end_to_end_tests/metadata_snapshots/pdm.pyproject.toml b/end_to_end_tests/metadata_snapshots/pdm.pyproject.toml index 573cc6ebd..c1f8a2a2b 100644 --- a/end_to_end_tests/metadata_snapshots/pdm.pyproject.toml +++ b/end_to_end_tests/metadata_snapshots/pdm.pyproject.toml @@ -7,7 +7,7 @@ readme = "README.md" requires-python = ">=3.9,<4.0" dependencies = [ "httpx>=0.20.0,<0.29.0", - "attrs>=21.3.0", + "attrs>=22.2.0", "python-dateutil>=2.8.0", ] diff --git a/end_to_end_tests/metadata_snapshots/poetry.pyproject.toml b/end_to_end_tests/metadata_snapshots/poetry.pyproject.toml index a2c1df4e8..2e8cd6c04 100644 --- a/end_to_end_tests/metadata_snapshots/poetry.pyproject.toml +++ b/end_to_end_tests/metadata_snapshots/poetry.pyproject.toml @@ -13,7 +13,7 @@ include = ["CHANGELOG.md", "test_3_1_features_client/py.typed"] [tool.poetry.dependencies] python = "^3.9" httpx = ">=0.20.0,<0.29.0" -attrs = ">=21.3.0" +attrs = ">=22.2.0" python-dateutil = "^2.8.0" [build-system] diff --git a/end_to_end_tests/metadata_snapshots/setup.py b/end_to_end_tests/metadata_snapshots/setup.py index a10df7dc1..6c7a58b97 100644 --- a/end_to_end_tests/metadata_snapshots/setup.py +++ b/end_to_end_tests/metadata_snapshots/setup.py @@ -13,6 +13,6 @@ long_description_content_type="text/markdown", packages=find_packages(), python_requires=">=3.9, <4", - install_requires=["httpx >= 0.20.0, < 0.29.0", "attrs >= 21.3.0", "python-dateutil >= 2.8.0, < 3"], + install_requires=["httpx >= 0.20.0, < 0.29.0", "attrs >= 22.2.0", "python-dateutil >= 2.8.0, < 3"], package_data={"test_3_1_features_client": ["py.typed"]}, ) diff --git a/end_to_end_tests/test-3-1-golden-record/pyproject.toml b/end_to_end_tests/test-3-1-golden-record/pyproject.toml index a2c1df4e8..2e8cd6c04 100644 --- a/end_to_end_tests/test-3-1-golden-record/pyproject.toml +++ b/end_to_end_tests/test-3-1-golden-record/pyproject.toml @@ -13,7 +13,7 @@ include = ["CHANGELOG.md", "test_3_1_features_client/py.typed"] [tool.poetry.dependencies] python = "^3.9" httpx = ">=0.20.0,<0.29.0" -attrs = ">=21.3.0" +attrs = ">=22.2.0" python-dateutil = "^2.8.0" [build-system] diff --git a/integration-tests/pyproject.toml b/integration-tests/pyproject.toml index 9eaacea87..cbcff74c6 100644 --- a/integration-tests/pyproject.toml +++ b/integration-tests/pyproject.toml @@ -7,7 +7,7 @@ readme = "README.md" requires-python = ">=3.9,<4.0" dependencies = [ "httpx>=0.20.0,<0.29.0", - "attrs>=21.3.0", + "attrs>=22.2.0", "python-dateutil>=2.8.0", ] diff --git a/openapi_python_client/templates/pyproject.toml.jinja b/openapi_python_client/templates/pyproject.toml.jinja index ca5c5e139..e9344b436 100644 --- a/openapi_python_client/templates/pyproject.toml.jinja +++ b/openapi_python_client/templates/pyproject.toml.jinja @@ -20,7 +20,7 @@ include = ["CHANGELOG.md", "{{ package_name }}/py.typed"] {% if pdm %} dependencies = [ "httpx>=0.20.0,<0.29.0", - "attrs>=21.3.0", + "attrs>=22.2.0", "python-dateutil>=2.8.0", ] @@ -32,7 +32,7 @@ distribution = true [tool.poetry.dependencies] python = "^3.9" httpx = ">=0.20.0,<0.29.0" -attrs = ">=21.3.0" +attrs = ">=22.2.0" python-dateutil = "^2.8.0" {% endif %} diff --git a/openapi_python_client/templates/setup.py.jinja b/openapi_python_client/templates/setup.py.jinja index b4954654d..c7c1a5a94 100644 --- a/openapi_python_client/templates/setup.py.jinja +++ b/openapi_python_client/templates/setup.py.jinja @@ -13,6 +13,6 @@ setup( long_description_content_type="text/markdown", packages=find_packages(), python_requires=">=3.9, <4", - install_requires=["httpx >= 0.20.0, < 0.29.0", "attrs >= 21.3.0", "python-dateutil >= 2.8.0, < 3"], + install_requires=["httpx >= 0.20.0, < 0.29.0", "attrs >= 22.2.0", "python-dateutil >= 2.8.0, < 3"], package_data={"{{ package_name }}": ["py.typed"]}, ) diff --git a/pdm.lock b/pdm.lock index 2fec84c1e..cdcfded1f 100644 --- a/pdm.lock +++ b/pdm.lock @@ -5,7 +5,7 @@ groups = ["default", "dev"] strategy = ["inherit_metadata"] lock_version = "4.5.0" -content_hash = "sha256:e946f3f6822637eec7d5b7779a2bb990055ff957c219ec45a145851c224eef3f" +content_hash = "sha256:7f8035cfb12eec0bca9053eb34cc6b70a1cfbf464921c1abb3ae3c3e63cfeab4" [[metadata.targets]] requires_python = "~=3.9" diff --git a/pdm.minimal.lock b/pdm.minimal.lock index f8ee42188..8b9ef2698 100644 --- a/pdm.minimal.lock +++ b/pdm.minimal.lock @@ -5,7 +5,7 @@ groups = ["default", "dev"] strategy = ["direct_minimal_versions", "inherit_metadata"] lock_version = "4.5.0" -content_hash = "sha256:50f45ddc1fe2529d12869f3f378bf09b25166e6c66cdf84f1c32db1cbe43ff8c" +content_hash = "sha256:7f8035cfb12eec0bca9053eb34cc6b70a1cfbf464921c1abb3ae3c3e63cfeab4" [[metadata.targets]] requires_python = "~=3.9" @@ -43,13 +43,13 @@ files = [ [[package]] name = "attrs" -version = "21.3.0" -requires_python = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +version = "22.2.0" +requires_python = ">=3.6" summary = "Classes Without Boilerplate" groups = ["default"] files = [ - {file = "attrs-21.3.0-py2.py3-none-any.whl", hash = "sha256:8f7335278dedd26b58c38e006338242cc0977f06d51579b2b8b87b9b33bff66c"}, - {file = "attrs-21.3.0.tar.gz", hash = "sha256:50f3c9b216dc9021042f71b392859a773b904ce1a029077f58f6598272432045"}, + {file = "attrs-22.2.0-py3-none-any.whl", hash = "sha256:29e95c7f6778868dbd49170f98f8818f78f3dc5e0e37c0b1f474e3561b240836"}, + {file = "attrs-22.2.0.tar.gz", hash = "sha256:c9227bfc2f01993c03f68db37d1d15c9690188323c067c641f1a35ca58185f99"}, ] [[package]] diff --git a/pyproject.toml b/pyproject.toml index 4e7c63010..a9d5481c2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -10,7 +10,7 @@ dependencies = [ "colorama>=0.4.3; sys_platform == \"win32\"", "shellingham>=1.3.2,<2.0.0", "pydantic>=2.1.1,<3.0.0", - "attrs>=21.3.0", + "attrs>=22.2.0", "python-dateutil>=2.8.1,<3.0.0", "httpx>=0.20.0,<0.29.0", "ruamel.yaml>=0.18.6,<0.19.0",