diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a4489e609..9f4646e74 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -155,7 +155,7 @@ jobs: strategy: fail-fast: false matrix: - python: ['3.9', '3.10', '3.11', '3.12', '3.13'] + python: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14'] arch: ['x86', 'x64'] lsp: [''] lsp_extract_file: [''] @@ -237,7 +237,7 @@ jobs: strategy: fail-fast: false matrix: - python: ['pypy-3.10', '3.9', '3.10', '3.11', '3.12', '3.13'] + python: ['pypy-3.10', '3.9', '3.10', '3.11', '3.12', '3.13', '3.14'] check_formatting: ['0'] no_test_requirements: ['0'] extra_name: [''] @@ -301,7 +301,7 @@ jobs: strategy: fail-fast: false matrix: - python: ['pypy-3.10', '3.9', '3.10', '3.11', '3.12', '3.13'] + python: ['pypy-3.10', '3.9', '3.10', '3.11', '3.12', '3.13', '3.14'] continue-on-error: >- ${{ ( diff --git a/src/trio/_core/_tests/test_run.py b/src/trio/_core/_tests/test_run.py index 289a35667..7728a6f3d 100644 --- a/src/trio/_core/_tests/test_run.py +++ b/src/trio/_core/_tests/test_run.py @@ -2817,6 +2817,10 @@ def no_other_refs() -> list[object]: sys.implementation.name != "cpython", reason="Only makes sense with refcounting GC", ) +@pytest.mark.xfail( + sys.version_info >= (3, 14), + reason="https://github.com/python/cpython/issues/125603", +) async def test_ki_protection_doesnt_leave_cyclic_garbage() -> None: class MyException(Exception): pass diff --git a/test-requirements.in b/test-requirements.in index 2e29cda42..bf64c568d 100644 --- a/test-requirements.in +++ b/test-requirements.in @@ -12,7 +12,7 @@ cryptography>=41.0.0 # cryptography<41 segfaults on pypy3.10 # Tools black; implementation_name == "cpython" mypy # Would use mypy[faster-cache], but orjson has build issues on pypy -orjson; implementation_name == "cpython" +orjson; implementation_name == "cpython" and python_version < "3.14" # orjson does not yet install on 3.14 ruff >= 0.8.0 astor # code generation uv >= 0.2.24 diff --git a/test-requirements.txt b/test-requirements.txt index 2865e4c4a..8a53682a6 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -92,7 +92,7 @@ nodeenv==1.9.1 # via # pre-commit # pyright -orjson==3.10.15 ; implementation_name == 'cpython' +orjson==3.10.15 ; python_full_version < '3.14' and implementation_name == 'cpython' # via -r test-requirements.in outcome==1.3.0.post0 # via -r test-requirements.in