diff --git a/CHANGELOG.md b/CHANGELOG.md index 090056f..3d4e12d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,8 @@ All notable changes to `winuvloop` are documented here. - Add formatting and bytecode compilation checks to CI. - Add upstream issue routing links and stronger pull request guidance. - Include tests and maintenance docs in the source distribution. +- Keep Python 3.9 development installs on the compatible Twine line so + Dependabot security updates can resolve. ## 0.2.1 - 2026-04-25 diff --git a/pyproject.toml b/pyproject.toml index 25bc6c5..84f96c4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -71,8 +71,8 @@ dev = [ "pytest>=8.3.5,<9; python_version < '3.10'", "pytest>=9.0.3; python_version >= '3.10'", "ruff>=0.15.12", - "twine>=5.1.1,<6; python_version < '3.9'", - "twine>=6.2.0; python_version >= '3.9'", + "twine>=5.1.1,<6; python_version < '3.10'", + "twine>=6.2.0; python_version >= '3.10'", ] [tool.uv] diff --git a/uv.lock b/uv.lock index 3a74800..459096c 100644 --- a/uv.lock +++ b/uv.lock @@ -427,7 +427,7 @@ name = "id" version = "1.6.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "urllib3", version = "2.6.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.9'" }, + { name = "urllib3", version = "2.6.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/6d/04/c2156091427636080787aac190019dc64096e56a23b7364d3c1764ee3a06/id-1.6.1.tar.gz", hash = "sha256:d0732d624fb46fd4e7bc4e5152f00214450953b9e772c182c1c22964def1a069", size = 18088, upload-time = "2026-02-04T16:19:41.26Z" } wheels = [ @@ -1218,18 +1218,25 @@ name = "twine" version = "5.1.1" source = { registry = "https://pypi.org/simple" } resolution-markers = [ + "python_full_version == '3.9.*'", "python_full_version < '3.9'", ] dependencies = [ { name = "importlib-metadata", version = "8.5.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, + { name = "importlib-metadata", version = "8.7.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.9.*'" }, { name = "keyring", version = "25.5.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, - { name = "pkginfo", marker = "python_full_version < '3.9'" }, + { name = "keyring", version = "25.7.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.9.*'" }, + { name = "pkginfo", marker = "python_full_version < '3.10'" }, { name = "readme-renderer", version = "43.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, + { name = "readme-renderer", version = "44.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.9.*'" }, { name = "requests", version = "2.32.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, - { name = "requests-toolbelt", marker = "python_full_version < '3.9'" }, - { name = "rfc3986", marker = "python_full_version < '3.9'" }, + { name = "requests", version = "2.32.5", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.9.*'" }, + { name = "requests-toolbelt", marker = "python_full_version < '3.10'" }, + { name = "rfc3986", marker = "python_full_version < '3.10'" }, { name = "rich", version = "14.3.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, + { name = "rich", version = "15.0.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.9.*'" }, { name = "urllib3", version = "2.2.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, + { name = "urllib3", version = "2.6.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.9.*'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/77/68/bd982e5e949ef8334e6f7dcf76ae40922a8750aa2e347291ae1477a4782b/twine-5.1.1.tar.gz", hash = "sha256:9aa0825139c02b3434d913545c7b847a21c835e11597f5255842d457da2322db", size = 225531, upload-time = "2024-06-26T15:00:46.58Z" } wheels = [ @@ -1242,20 +1249,17 @@ version = "6.2.0" source = { registry = "https://pypi.org/simple" } resolution-markers = [ "python_full_version >= '3.10'", - "python_full_version == '3.9.*'", ] dependencies = [ - { name = "id", marker = "python_full_version >= '3.9'" }, - { name = "importlib-metadata", version = "8.7.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.9.*'" }, - { name = "keyring", version = "25.7.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.9' and platform_machine != 'ppc64le' and platform_machine != 's390x'" }, - { name = "packaging", marker = "python_full_version >= '3.9'" }, - { name = "readme-renderer", version = "44.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.9'" }, - { name = "requests", version = "2.32.5", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.9.*'" }, + { name = "id", marker = "python_full_version >= '3.10'" }, + { name = "keyring", version = "25.7.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10' and platform_machine != 'ppc64le' and platform_machine != 's390x'" }, + { name = "packaging", marker = "python_full_version >= '3.10'" }, + { name = "readme-renderer", version = "44.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, { name = "requests", version = "2.33.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, - { name = "requests-toolbelt", marker = "python_full_version >= '3.9'" }, - { name = "rfc3986", marker = "python_full_version >= '3.9'" }, - { name = "rich", version = "15.0.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.9'" }, - { name = "urllib3", version = "2.6.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.9'" }, + { name = "requests-toolbelt", marker = "python_full_version >= '3.10'" }, + { name = "rfc3986", marker = "python_full_version >= '3.10'" }, + { name = "rich", version = "15.0.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, + { name = "urllib3", version = "2.6.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/e0/a8/949edebe3a82774c1ec34f637f5dd82d1cf22c25e963b7d63771083bbee5/twine-6.2.0.tar.gz", hash = "sha256:e5ed0d2fd70c9959770dce51c8f39c8945c574e18173a7b81802dab51b4b75cf", size = 172262, upload-time = "2025-09-04T15:43:17.255Z" } wheels = [ @@ -1408,8 +1412,8 @@ dev = [ { name = "pytest", version = "8.4.2", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.9.*'" }, { name = "pytest", version = "9.0.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, { name = "ruff" }, - { name = "twine", version = "5.1.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, - { name = "twine", version = "6.2.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.9'" }, + { name = "twine", version = "5.1.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, + { name = "twine", version = "6.2.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, ] [package.metadata] @@ -1425,8 +1429,8 @@ dev = [ { name = "pytest", marker = "python_full_version < '3.10'", specifier = ">=8.3.5,<9" }, { name = "pytest", marker = "python_full_version >= '3.10'", specifier = ">=9.0.3" }, { name = "ruff", specifier = ">=0.15.12" }, - { name = "twine", marker = "python_full_version < '3.9'", specifier = ">=5.1.1,<6" }, - { name = "twine", marker = "python_full_version >= '3.9'", specifier = ">=6.2.0" }, + { name = "twine", marker = "python_full_version < '3.10'", specifier = ">=5.1.1,<6" }, + { name = "twine", marker = "python_full_version >= '3.10'", specifier = ">=6.2.0" }, ] [[package]]