From 167998b4cdd8e848f768332c4d464d66c4907571 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 2 May 2025 13:26:04 +0000 Subject: [PATCH 1/6] =?UTF-8?q?=E2=AC=86=20Bump=20mxschmitt/action-tmate?= =?UTF-8?q?=20from=203.21=20to=203.22?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [mxschmitt/action-tmate](https://github.com/mxschmitt/action-tmate) from 3.21 to 3.22. - [Release notes](https://github.com/mxschmitt/action-tmate/releases) - [Changelog](https://github.com/mxschmitt/action-tmate/blob/master/RELEASE.md) - [Commits](https://github.com/mxschmitt/action-tmate/compare/v3.21...v3.22) --- updated-dependencies: - dependency-name: mxschmitt/action-tmate dependency-version: '3.22' dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .github/workflows/lint.yml | 2 +- .github/workflows/test.yml | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 8ee7c18..16bc05e 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -75,7 +75,7 @@ jobs: sudo apt install emacs - name: Setup tmate session if: ${{ github.event.inputs.debug == 'true' }} - uses: mxschmitt/action-tmate@v3.21 + uses: mxschmitt/action-tmate@v3.22 with: detached: true timeout-minutes: 60 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 99701ea..1d6c144 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -76,7 +76,7 @@ jobs: sudo apt install emacs - name: setup-ssh-debug if: ${{ github.event.inputs.debug == 'true' }} - uses: mxschmitt/action-tmate@v3.21 + uses: mxschmitt/action-tmate@v3.22 with: detached: true timeout-minutes: 60 @@ -133,7 +133,7 @@ jobs: python-version: ${{ matrix.python-version }} - name: setup-ssh-debug if: ${{ github.event.inputs.debug == 'true' }} - uses: mxschmitt/action-tmate@v3.21 + uses: mxschmitt/action-tmate@v3.22 with: detached: true - name: install-vim-windows @@ -196,7 +196,7 @@ jobs: brew install emacs - name: setup-ssh-debug if: ${{ github.event.inputs.debug == 'true' }} - uses: mxschmitt/action-tmate@v3.21 + uses: mxschmitt/action-tmate@v3.22 with: detached: true - name: Install uv @@ -275,7 +275,7 @@ jobs: sudo apt install emacs - name: setup-ssh-debug if: ${{ github.event.inputs.debug == 'true' }} - uses: mxschmitt/action-tmate@v3.21 + uses: mxschmitt/action-tmate@v3.22 with: detached: true - name: Install uv @@ -334,7 +334,7 @@ jobs: sudo apt install emacs - name: setup-ssh-debug if: ${{ github.event.inputs.debug == 'true' }} - uses: mxschmitt/action-tmate@v3.21 + uses: mxschmitt/action-tmate@v3.22 with: detached: true - name: Install uv @@ -396,7 +396,7 @@ jobs: sudo apt install emacs - name: setup-ssh-debug if: ${{ github.event.inputs.debug == 'true' }} - uses: mxschmitt/action-tmate@v3.21 + uses: mxschmitt/action-tmate@v3.22 with: detached: true - name: Install uv @@ -461,7 +461,7 @@ jobs: brew install emacs - name: setup-ssh-debug if: ${{ github.event.inputs.debug == 'true' }} - uses: mxschmitt/action-tmate@v3.21 + uses: mxschmitt/action-tmate@v3.22 with: detached: true - name: Install uv @@ -532,7 +532,7 @@ jobs: brew install emacs - name: setup-ssh-debug if: ${{ github.event.inputs.debug == 'true' }} - uses: mxschmitt/action-tmate@v3.21 + uses: mxschmitt/action-tmate@v3.22 with: detached: true - name: Install uv @@ -593,7 +593,7 @@ jobs: brew install emacs - name: setup-ssh-debug if: ${{ github.event.inputs.debug == 'true' }} - uses: mxschmitt/action-tmate@v3.21 + uses: mxschmitt/action-tmate@v3.22 with: detached: true - name: Install uv @@ -661,7 +661,7 @@ jobs: uses: rhysd/action-setup-vim@v1 - name: setup-ssh-debug if: ${{ github.event.inputs.debug == 'true' }} - uses: mxschmitt/action-tmate@v3.21 + uses: mxschmitt/action-tmate@v3.22 with: detached: true - name: Add to Just to PATH @@ -735,7 +735,7 @@ jobs: uses: rhysd/action-setup-vim@v1 - name: setup-ssh-debug if: ${{ github.event.inputs.debug == 'true' }} - uses: mxschmitt/action-tmate@v3.21 + uses: mxschmitt/action-tmate@v3.22 with: detached: true - name: Add to Just to PATH @@ -796,7 +796,7 @@ jobs: sudo apt install emacs - name: setup-ssh-debug if: ${{ github.event.inputs.debug == 'true' }} - uses: mxschmitt/action-tmate@v3.21 + uses: mxschmitt/action-tmate@v3.22 with: detached: true - uses: actions/checkout@v4 From 74fcee4cbb2f552d8292b9e98309373de6a1bd92 Mon Sep 17 00:00:00 2001 From: Brian Kohan Date: Fri, 30 May 2025 17:17:04 -0700 Subject: [PATCH 2/6] upgrade typer/click dependencies --- pyproject.toml | 4 ++-- uv.lock | 60 ++++++++++++++++++++++++++++++++++---------------- 2 files changed, 43 insertions(+), 21 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index e12b04a..8fa78cd 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,11 +18,11 @@ homepage = "https://django-typer.readthedocs.io" keywords = ["django", "CLI", "management", "Typer", "commands"] dependencies = [ "Django>=3.2,<6.0", - "click>=8.1.8,<8.2", + "click>=8.1.8,<8.3", # typer's release history is full of breaking changes for minor versions # given the reliance on some of its private internals we peg the typer # version very strictly to bug fix releases for specific minor lines. - "typer-slim>=0.14.0,<0.16.0", + "typer-slim>=0.14.0,<0.17.0", "shellingham>=1.5.4,<2.0", # we need this on 3.9 for ParamSpec "typing-extensions>=3.7.4.3; python_version < '3.10'", diff --git a/uv.lock b/uv.lock index 0e7d999..8e156db 100644 --- a/uv.lock +++ b/uv.lock @@ -264,14 +264,33 @@ wheels = [ name = "click" version = "8.1.8" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version < '3.10'", +] dependencies = [ - { name = "colorama", marker = "sys_platform == 'win32'" }, + { name = "colorama", marker = "python_full_version < '3.10' and sys_platform == 'win32'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/b9/2e/0090cbf739cee7d23781ad4b89a9894a41538e4fcf4c31dcdd705b78eb8b/click-8.1.8.tar.gz", hash = "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a", size = 226593 } wheels = [ { url = "https://files.pythonhosted.org/packages/7e/d4/7ebdbd03970677812aac39c869717059dbb71a4cfc033ca6e5221787892c/click-8.1.8-py3-none-any.whl", hash = "sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2", size = 98188 }, ] +[[package]] +name = "click" +version = "8.2.0" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.11'", + "python_full_version == '3.10.*'", +] +dependencies = [ + { name = "colorama", marker = "python_full_version >= '3.10' and sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/cd/0f/62ca20172d4f87d93cf89665fbaedcd560ac48b465bd1d92bfc7ea6b0a41/click-8.2.0.tar.gz", hash = "sha256:f5452aeddd9988eefa20f90f05ab66f17fce1ee2a36907fd30b05bbb5953814d", size = 235857 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a2/58/1f37bf81e3c689cc74ffa42102fa8915b59085f54a6e4a80bc6265c0f6bf/click-8.2.0-py3-none-any.whl", hash = "sha256:6b303f0b2aa85f1cb4e5303078fadcbcd4e476f114fab9b5007005711839325c", size = 102156 }, +] + [[package]] name = "cmarkgfm" version = "2024.11.20" @@ -427,7 +446,7 @@ wheels = [ [[package]] name = "django" -version = "4.2.20" +version = "4.2.21" source = { registry = "https://pypi.org/simple" } resolution-markers = [ "python_full_version < '3.10'", @@ -437,9 +456,9 @@ dependencies = [ { name = "sqlparse", marker = "python_full_version < '3.10'" }, { name = "tzdata", marker = "python_full_version < '3.10' and sys_platform == 'win32'" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/0a/dd/33d2a11713f6b78493273a32d99bb449f2d93663ed4ec15a8b890d44ba04/Django-4.2.20.tar.gz", hash = "sha256:92bac5b4432a64532abb73b2ac27203f485e40225d2640a7fbef2b62b876e789", size = 10432686 } +sdist = { url = "https://files.pythonhosted.org/packages/c1/bb/2fad5edc1af2945cb499a2e322ac28e4714fc310bd5201ed1f5a9f73a342/django-4.2.21.tar.gz", hash = "sha256:b54ac28d6aa964fc7c2f7335138a54d78980232011e0cd2231d04eed393dcb0d", size = 10424638 } wheels = [ - { url = "https://files.pythonhosted.org/packages/b3/5d/7571ba1c288ead056dda7adad46b25cbf64790576f095565282e996138b1/Django-4.2.20-py3-none-any.whl", hash = "sha256:213381b6e4405f5c8703fffc29cd719efdf189dec60c67c04f76272b3dc845b9", size = 7993584 }, + { url = "https://files.pythonhosted.org/packages/2c/4f/aeaa3098da18b625ed672f3da6d1cd94e188d1b2cc27c2c841b2f9666282/django-4.2.21-py3-none-any.whl", hash = "sha256:1d658c7bf5d31c7d0cac1cab58bc1f822df89255080fec81909256c30e6180b3", size = 7993839 }, ] [[package]] @@ -469,7 +488,7 @@ resolution-markers = [ ] dependencies = [ { name = "asgiref", marker = "python_full_version < '3.10'" }, - { name = "django", version = "4.2.20", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, + { name = "django", version = "4.2.21", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, { name = "django-stubs-ext", version = "5.1.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, { name = "tomli", marker = "python_full_version < '3.10'" }, { name = "types-pyyaml", marker = "python_full_version < '3.10'" }, @@ -509,7 +528,7 @@ resolution-markers = [ "python_full_version < '3.10'", ] dependencies = [ - { name = "django", version = "4.2.20", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, + { name = "django", version = "4.2.21", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, { name = "typing-extensions", marker = "python_full_version < '3.10'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/9f/06/7b210e0073c6cb8824bde82afc25f268e8c410a99d3621297f44fa3f6a6c/django_stubs_ext-5.1.3.tar.gz", hash = "sha256:3e60f82337f0d40a362f349bf15539144b96e4ceb4dbd0239be1cd71f6a74ad0", size = 9613 } @@ -539,8 +558,9 @@ name = "django-typer" version = "3.1.1" source = { editable = "." } dependencies = [ - { name = "click" }, - { name = "django", version = "4.2.20", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, + { name = "click", version = "8.1.8", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, + { name = "click", version = "8.2.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, + { name = "django", version = "4.2.21", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, { name = "django", version = "5.2", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, { name = "shellingham" }, { name = "typer-slim" }, @@ -596,11 +616,11 @@ psycopg3 = [ [package.metadata] requires-dist = [ - { name = "click", specifier = ">=8.1.8,<8.2" }, + { name = "click", specifier = ">=8.1.8,<8.3" }, { name = "django", specifier = ">=3.2,<6.0" }, { name = "rich", marker = "extra == 'rich'", specifier = ">=10.11.0,<15.0.0" }, { name = "shellingham", specifier = ">=1.5.4,<2.0" }, - { name = "typer-slim", specifier = ">=0.14.0,<0.16.0" }, + { name = "typer-slim", specifier = ">=0.14.0,<0.17.0" }, { name = "typing-extensions", marker = "python_full_version < '3.10'", specifier = ">=3.7.4.3" }, ] provides-extras = ["rich"] @@ -1834,7 +1854,7 @@ name = "sphinxcontrib-django" version = "2.5" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "django", version = "4.2.20", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, + { name = "django", version = "4.2.21", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, { name = "django", version = "5.2", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, { name = "pprintpp" }, { name = "sphinx", version = "7.4.7", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, @@ -2044,15 +2064,16 @@ wheels = [ [[package]] name = "typer-slim" -version = "0.15.3" +version = "0.16.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "click" }, + { name = "click", version = "8.1.8", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, + { name = "click", version = "8.2.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, { name = "typing-extensions" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/4a/62/b569dc0bdaf733250afb4693f00a88ef16232b19f8b6b6c3ef1c245e33a7/typer_slim-0.15.3.tar.gz", hash = "sha256:c134ae789afe8957c3f5f420eed07df53621271aca192b8e497d43a29b94c878", size = 101634 } +sdist = { url = "https://files.pythonhosted.org/packages/ae/96/5749d5b6920fab0db15ce39d850b86dfee21518cd1c81b7a5fe5a495a92a/typer_slim-0.16.0.tar.gz", hash = "sha256:d6483c367f98529884a5d45a028f5d2686ae93cd9d33d518661069f382c08546", size = 102664 } wheels = [ - { url = "https://files.pythonhosted.org/packages/92/b1/0f3d4f3e35fd82248ed5bcb70c6249baebb39f0ab3faf7f9818101eec991/typer_slim-0.15.3-py3-none-any.whl", hash = "sha256:626c125b1b01eebafdc2bb12326b401863d1c4752342e3f9c1d9f829939fe300", size = 45310 }, + { url = "https://files.pythonhosted.org/packages/41/2d/dc1f0c872615aef018783408ac993be7832726a4b30032e317e9f2858267/typer_slim-0.16.0-py3-none-any.whl", hash = "sha256:8aa94eef73b876506b9d239cd70cfedefac95541be8f060688aabfc800f53d67", size = 46377 }, ] [package.optional-dependencies] @@ -2107,7 +2128,8 @@ name = "uvicorn" version = "0.34.2" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "click" }, + { name = "click", version = "8.1.8", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, + { name = "click", version = "8.2.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.10'" }, { name = "h11" }, { name = "typing-extensions", marker = "python_full_version < '3.11'" }, ] @@ -2333,9 +2355,9 @@ wheels = [ [[package]] name = "zipp" -version = "3.21.0" +version = "3.22.0" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/3f/50/bad581df71744867e9468ebd0bcd6505de3b275e06f202c2cb016e3ff56f/zipp-3.21.0.tar.gz", hash = "sha256:2c9958f6430a2040341a52eb608ed6dd93ef4392e02ffe219417c1b28b5dd1f4", size = 24545 } +sdist = { url = "https://files.pythonhosted.org/packages/12/b6/7b3d16792fdf94f146bed92be90b4eb4563569eca91513c8609aebf0c167/zipp-3.22.0.tar.gz", hash = "sha256:dd2f28c3ce4bc67507bfd3781d21b7bb2be31103b51a4553ad7d90b84e57ace5", size = 25257 } wheels = [ - { url = "https://files.pythonhosted.org/packages/b7/1a/7e4798e9339adc931158c9d69ecc34f5e6791489d469f5e50ec15e35f458/zipp-3.21.0-py3-none-any.whl", hash = "sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931", size = 9630 }, + { url = "https://files.pythonhosted.org/packages/ad/da/f64669af4cae46f17b90798a827519ce3737d31dbafad65d391e49643dc4/zipp-3.22.0-py3-none-any.whl", hash = "sha256:fe208f65f2aca48b81f9e6fd8cf7b8b32c26375266b009b413d45306b6148343", size = 9796 }, ] From 03461fa9f38f3d22875efd750c842d1f9d8d631b Mon Sep 17 00:00:00 2001 From: Brian Kohan Date: Fri, 30 May 2025 17:26:36 -0700 Subject: [PATCH 3/6] change deprecated import - fix #215 --- src/django_typer/management/commands/shellcompletion.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/django_typer/management/commands/shellcompletion.py b/src/django_typer/management/commands/shellcompletion.py index 9a6bbb5..f079c70 100644 --- a/src/django_typer/management/commands/shellcompletion.py +++ b/src/django_typer/management/commands/shellcompletion.py @@ -31,8 +31,10 @@ from click import get_current_context from click.core import ParameterSource -from click.parser import split_arg_string -from click.shell_completion import CompletionItem +from click.shell_completion import ( + CompletionItem, + split_arg_string, # pyright: ignore[reportPrivateImportUsage] +) from django.core.management import CommandError, ManagementUtility from django.utils.module_loading import import_string from django.utils.translation import gettext_lazy as _ From 10b8805561a3386a0c9a9fa62d0ee875269ea1d9 Mon Sep 17 00:00:00 2001 From: Brian Kohan Date: Fri, 30 May 2025 18:54:05 -0700 Subject: [PATCH 4/6] test against python 3.14 beta 2, add 3.14 classifier., bump version --- .github/workflows/test.yml | 10 +++++++++- doc/source/changelog.rst | 10 +++++++--- pyproject.toml | 3 ++- src/django_typer/__init__.py | 2 +- uv.lock | 2 +- 5 files changed, 20 insertions(+), 7 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 1d6c144..88aaac3 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -33,7 +33,7 @@ jobs: actions: write strategy: matrix: - python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] + python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14.0-beta.2'] django-version: - '3.2' # LTS April 2024 - '4.2' # LTS April 2026 @@ -57,6 +57,14 @@ jobs: django-version: '5.0' - python-version: '3.9' django-version: '5.2' + - python-version: '3.14.0-beta.2' + django-version: '3.2' + - python-version: '3.14.0-beta.2' + django-version: '4.2' + - python-version: '3.14.0-beta.2' + django-version: '5.0' + - python-version: '3.14.0-beta.2' + django-version: '5.1' env: COVERAGE_FILE: py${{ matrix.python-version }}-linux-dj${{ matrix.django-version }}.coverage TEST_PYTHON_VERSION: ${{ matrix.python-version }} diff --git a/doc/source/changelog.rst b/doc/source/changelog.rst index 0b81b36..8e2d2d0 100644 --- a/doc/source/changelog.rst +++ b/doc/source/changelog.rst @@ -4,13 +4,17 @@ Change Log ========== +v3.2.0 (2025-04-30) +=================== + +* Implemented `Support click 8.2 `_ -v3.1.1 (2024-04-30) +v3.1.1 (2025-04-30) =================== * Implemented `Support rich 14 `_ -v3.1.0 (2024-04-02) +v3.1.0 (2025-04-02) =================== * Fixed `Fish shell completion fails for any script named something other than "manage" `_ @@ -29,7 +33,7 @@ v3.1.0 (2024-04-02) * Implemented `Require tests to pass before release action runs. `_ -v3.0.0 (2024-02-16) +v3.0.0 (2025-02-16) =================== * Implemented `Completer for media files. `_ diff --git a/pyproject.toml b/pyproject.toml index 8fa78cd..4df4400 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "django-typer" -version = "3.1.1" +version = "3.2.0" requires-python = ">=3.9,<4.0" description = "Use Typer to define the CLI for your Django management commands." authors = [ @@ -49,6 +49,7 @@ classifiers = [ "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: Site Management", "Topic :: Software Development :: Libraries", diff --git a/src/django_typer/__init__.py b/src/django_typer/__init__.py index aba0114..ce261b7 100644 --- a/src/django_typer/__init__.py +++ b/src/django_typer/__init__.py @@ -33,7 +33,7 @@ and keep a tight version lock on Typer. """ -VERSION = (3, 1, 1) +VERSION = (3, 2, 0) __title__ = "Django Typer" __version__ = ".".join(str(i) for i in VERSION) diff --git a/uv.lock b/uv.lock index 8e156db..cc897c8 100644 --- a/uv.lock +++ b/uv.lock @@ -555,7 +555,7 @@ wheels = [ [[package]] name = "django-typer" -version = "3.1.1" +version = "3.2.0" source = { editable = "." } dependencies = [ { name = "click", version = "8.1.8", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.10'" }, From fe0ac95d803f6c35f89ed253a99797db3ac643f8 Mon Sep 17 00:00:00 2001 From: Brian Kohan Date: Sat, 31 May 2025 09:08:17 -0700 Subject: [PATCH 5/6] fix environment check --- tests/verify_environment.py | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/tests/verify_environment.py b/tests/verify_environment.py index 980b9ec..e788eec 100644 --- a/tests/verify_environment.py +++ b/tests/verify_environment.py @@ -1,6 +1,7 @@ import os import sys -import django +from django import VERSION +from packaging.version import parse as parse_version def test(): @@ -10,17 +11,14 @@ def test(): expected_python = os.environ["TEST_PYTHON_VERSION"] expected_django = os.environ["TEST_DJANGO_VERSION"] - expected_python = tuple(int(v) for v in expected_python.split(".") if v) - assert sys.version_info[: len(expected_python)] == expected_python, ( - f"Python Version Mismatch: {sys.version_info[: len(expected_python)]} != " - f"{expected_python}" + expected_python = parse_version(expected_python) + assert sys.version_info[:2] == (expected_python.major, expected_python.minor), ( + f"Python Version Mismatch: {sys.version_info[:2]} != {expected_python}" ) - try: - expected_django = tuple(int(v) for v in expected_django.split(".") if v) - assert django.VERSION[: len(expected_django)] == expected_django, ( - f"Django Version Mismatch: {django.VERSION[: len(expected_django)]} != " - f"{expected_django}" - ) - except ValueError: - assert expected_django == django.__version__ + dj_actual = VERSION[:2] + expected_django = parse_version(expected_django) + dj_expected = (expected_django.major, expected_django.minor) + assert dj_actual == dj_expected, ( + f"Django Version Mismatch: {dj_actual} != {expected_django}" + ) From b5cf944f09bda3d9771fc342c896cc970ba284c8 Mon Sep 17 00:00:00 2001 From: Brian Kohan Date: Sat, 31 May 2025 09:59:28 -0700 Subject: [PATCH 6/6] fix changelog date --- doc/source/changelog.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/doc/source/changelog.rst b/doc/source/changelog.rst index 8e2d2d0..70f5ba1 100644 --- a/doc/source/changelog.rst +++ b/doc/source/changelog.rst @@ -4,9 +4,10 @@ Change Log ========== -v3.2.0 (2025-04-30) +v3.2.0 (2025-05-31) =================== +* Support Python 3.14 * Implemented `Support click 8.2 `_ v3.1.1 (2025-04-30)