From 5eebcdccd33c4b74e34c6c8dbdfd86887cada010 Mon Sep 17 00:00:00 2001 From: Artur Shiriev Date: Sat, 12 Sep 2026 15:47:42 +0300 Subject: [PATCH] ci: run pytest on the free-threaded 3.14t build The standard (section 6) requires the newest stable CPython minor and its free-threaded build in the pytest matrix. Adds the 3.14t entry, a step that imports the package and asserts the GIL is still disabled, and the Free Threading :: 2 - Beta classifier. Refs modern-python/.github#91 --- .github/workflows/_checks.yml | 4 ++++ pyproject.toml | 1 + 2 files changed, 5 insertions(+) diff --git a/.github/workflows/_checks.yml b/.github/workflows/_checks.yml index 071bf08..d8f8d42 100644 --- a/.github/workflows/_checks.yml +++ b/.github/workflows/_checks.yml @@ -27,6 +27,7 @@ jobs: - "3.12" - "3.13" - "3.14" + - "3.14t" steps: - uses: actions/checkout@v6 - uses: extractions/setup-just@v4 @@ -37,6 +38,9 @@ jobs: - run: uv python install ${{ matrix.python-version }} - run: uv python pin ${{ matrix.python-version }} - run: just install + - name: Confirm the interpreter is free-threaded + if: matrix.python-version == '3.14t' + run: uv run --no-sync python -c "import sys, modern_di_taskiq; assert not sys._is_gil_enabled(), 'GIL is enabled on a t-build'" - run: just test-ci links: diff --git a/pyproject.toml b/pyproject.toml index 3be3765..b5dfe73 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,6 +14,7 @@ classifiers = [ "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", + "Programming Language :: Python :: Free Threading :: 2 - Beta", "Typing :: Typed", "Topic :: Software Development :: Libraries", ]