From 2955e25577ac5ed6a8d650c85caa6d4475ac731b Mon Sep 17 00:00:00 2001 From: Alexander Alderman Webb Date: Mon, 10 Nov 2025 11:48:20 +0100 Subject: [PATCH 01/10] ci: Pin Pytest version for 3.14 Django tests --- scripts/populate_tox/config.py | 1 + tox.ini | 1 + 2 files changed, 2 insertions(+) diff --git a/scripts/populate_tox/config.py b/scripts/populate_tox/config.py index 69263f92a3..ae26c83734 100644 --- a/scripts/populate_tox/config.py +++ b/scripts/populate_tox/config.py @@ -103,6 +103,7 @@ "Werkzeug<2.1.0", ], "<3.1": ["pytest-django<4.0"], + "py3.14,py3.14t": ["pytest<7.11.1"], }, }, "dramatiq": { diff --git a/tox.ini b/tox.ini index 7a1fd39f03..3fefca0e45 100644 --- a/tox.ini +++ b/tox.ini @@ -622,6 +622,7 @@ deps = django-v3.2.25: Werkzeug<2.1.0 django-v1.11.29: pytest-django<4.0 django-v2.2.28: pytest-django<4.0 + {py3.14,py3.14t}-django: pytest<7.11.1 flask-v1.1.4: flask==1.1.4 flask-v2.3.3: flask==2.3.3 From 15c104a905c6c357389c4bb679ce0d020a5d6d75 Mon Sep 17 00:00:00 2001 From: Alexander Alderman Webb Date: Mon, 10 Nov 2025 13:03:09 +0100 Subject: [PATCH 02/10] pytest iteration --- tox.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tox.ini b/tox.ini index 3fefca0e45..6cafdf1220 100644 --- a/tox.ini +++ b/tox.ini @@ -622,7 +622,7 @@ deps = django-v3.2.25: Werkzeug<2.1.0 django-v1.11.29: pytest-django<4.0 django-v2.2.28: pytest-django<4.0 - {py3.14,py3.14t}-django: pytest<7.11.1 + {py3.14,py3.14t}-django: pytest<8.4.2 flask-v1.1.4: flask==1.1.4 flask-v2.3.3: flask==2.3.3 From 6acae8f62ddc7f9dfb2c858a9d70d289e19e1800 Mon Sep 17 00:00:00 2001 From: Alexander Alderman Webb Date: Mon, 10 Nov 2025 13:10:05 +0100 Subject: [PATCH 03/10] new version --- tox.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tox.ini b/tox.ini index 6cafdf1220..752e016409 100644 --- a/tox.ini +++ b/tox.ini @@ -622,7 +622,7 @@ deps = django-v3.2.25: Werkzeug<2.1.0 django-v1.11.29: pytest-django<4.0 django-v2.2.28: pytest-django<4.0 - {py3.14,py3.14t}-django: pytest<8.4.2 + {py3.14,py3.14t}-django: pytest==9.0.0 flask-v1.1.4: flask==1.1.4 flask-v2.3.3: flask==2.3.3 From fb54be95a85bec5237e38a5e988c824ee74ad6b5 Mon Sep 17 00:00:00 2001 From: Alexander Alderman Webb Date: Mon, 10 Nov 2025 13:18:57 +0100 Subject: [PATCH 04/10] iteration --- tox.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tox.ini b/tox.ini index 752e016409..fa7721bdf2 100644 --- a/tox.ini +++ b/tox.ini @@ -622,7 +622,7 @@ deps = django-v3.2.25: Werkzeug<2.1.0 django-v1.11.29: pytest-django<4.0 django-v2.2.28: pytest-django<4.0 - {py3.14,py3.14t}-django: pytest==9.0.0 + {py3.14,py3.14t}-django: pytest<8.1 flask-v1.1.4: flask==1.1.4 flask-v2.3.3: flask==2.3.3 From fdef991e80132e1753054d6458ec71ed168144e4 Mon Sep 17 00:00:00 2001 From: Alexander Alderman Webb Date: Mon, 10 Nov 2025 13:33:57 +0100 Subject: [PATCH 05/10] . --- tox.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tox.ini b/tox.ini index fa7721bdf2..aac54564ad 100644 --- a/tox.ini +++ b/tox.ini @@ -622,7 +622,7 @@ deps = django-v3.2.25: Werkzeug<2.1.0 django-v1.11.29: pytest-django<4.0 django-v2.2.28: pytest-django<4.0 - {py3.14,py3.14t}-django: pytest<8.1 + {py3.14,py3.14t}-django: pytest<8.0 flask-v1.1.4: flask==1.1.4 flask-v2.3.3: flask==2.3.3 From 424a1165321b827ddeee5b54641d403e029861dc Mon Sep 17 00:00:00 2001 From: Alexander Alderman Webb Date: Mon, 10 Nov 2025 14:16:36 +0100 Subject: [PATCH 06/10] fix --- tox.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tox.ini b/tox.ini index aac54564ad..43694942d9 100644 --- a/tox.ini +++ b/tox.ini @@ -622,7 +622,7 @@ deps = django-v3.2.25: Werkzeug<2.1.0 django-v1.11.29: pytest-django<4.0 django-v2.2.28: pytest-django<4.0 - {py3.14,py3.14t}-django: pytest<8.0 + {py3.14,py3.14t}-django: coverage==7.11.0 flask-v1.1.4: flask==1.1.4 flask-v2.3.3: flask==2.3.3 From cb69a6033e13db3804fcd3925979c1dddd2fa86c Mon Sep 17 00:00:00 2001 From: Alexander Alderman Webb Date: Mon, 10 Nov 2025 14:27:55 +0100 Subject: [PATCH 07/10] . --- scripts/populate_tox/config.py | 1 - 1 file changed, 1 deletion(-) diff --git a/scripts/populate_tox/config.py b/scripts/populate_tox/config.py index ae26c83734..69263f92a3 100644 --- a/scripts/populate_tox/config.py +++ b/scripts/populate_tox/config.py @@ -103,7 +103,6 @@ "Werkzeug<2.1.0", ], "<3.1": ["pytest-django<4.0"], - "py3.14,py3.14t": ["pytest<7.11.1"], }, }, "dramatiq": { From 233eb585b9f22a3fb640440cd81d06feef02ce11 Mon Sep 17 00:00:00 2001 From: Alexander Alderman Webb Date: Mon, 10 Nov 2025 14:33:38 +0100 Subject: [PATCH 08/10] forgot to push config.py --- scripts/populate_tox/config.py | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/populate_tox/config.py b/scripts/populate_tox/config.py index 69263f92a3..cff6ee6045 100644 --- a/scripts/populate_tox/config.py +++ b/scripts/populate_tox/config.py @@ -103,6 +103,7 @@ "Werkzeug<2.1.0", ], "<3.1": ["pytest-django<4.0"], + "py3.14,py3.14t": ["coverage==7.11.0"], }, }, "dramatiq": { From 817dc63cc969cc7a26a14a20611c4ceb96f203cc Mon Sep 17 00:00:00 2001 From: Alexander Alderman Webb Date: Mon, 10 Nov 2025 16:18:47 +0100 Subject: [PATCH 09/10] skip flaky tests --- tests/profiler/test_transaction_profiler.py | 1 + tests/tracing/test_decorator.py | 2 ++ 2 files changed, 3 insertions(+) diff --git a/tests/profiler/test_transaction_profiler.py b/tests/profiler/test_transaction_profiler.py index 142fd7d78c..795e6b9190 100644 --- a/tests/profiler/test_transaction_profiler.py +++ b/tests/profiler/test_transaction_profiler.py @@ -266,6 +266,7 @@ def test_minimum_unique_samples_required( @pytest.mark.forked +@pytest.mark.skipif(sys.version_info == (3, 14), reason="Test flakes blocking release.") def test_profile_captured( sentry_init, capture_envelopes, diff --git a/tests/tracing/test_decorator.py b/tests/tracing/test_decorator.py index 15432f5862..cab27650d6 100644 --- a/tests/tracing/test_decorator.py +++ b/tests/tracing/test_decorator.py @@ -1,4 +1,5 @@ import inspect +import sys from unittest import mock import pytest @@ -69,6 +70,7 @@ async def test_trace_decorator_async(): @pytest.mark.asyncio +@pytest.mark.skipif(sys.version_info == (3, 14), reason="Test flakes blocking release.") async def test_trace_decorator_async_no_trx(): with patch_start_tracing_child(fake_transaction_is_none=True): with mock.patch.object(logger, "debug", mock.Mock()) as fake_debug: From 1678ac23000d4dbc82357d3863b74bd3e276da1e Mon Sep 17 00:00:00 2001 From: Alexander Alderman Webb Date: Mon, 10 Nov 2025 16:23:41 +0100 Subject: [PATCH 10/10] . --- tests/profiler/test_transaction_profiler.py | 2 +- tests/tracing/test_decorator.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/profiler/test_transaction_profiler.py b/tests/profiler/test_transaction_profiler.py index 795e6b9190..b2c10a9afd 100644 --- a/tests/profiler/test_transaction_profiler.py +++ b/tests/profiler/test_transaction_profiler.py @@ -266,7 +266,7 @@ def test_minimum_unique_samples_required( @pytest.mark.forked -@pytest.mark.skipif(sys.version_info == (3, 14), reason="Test flakes blocking release.") +@pytest.mark.skipif(sys.version_info >= (3, 14), reason="Test flakes blocking release.") def test_profile_captured( sentry_init, capture_envelopes, diff --git a/tests/tracing/test_decorator.py b/tests/tracing/test_decorator.py index cab27650d6..4d9ebf8dde 100644 --- a/tests/tracing/test_decorator.py +++ b/tests/tracing/test_decorator.py @@ -70,7 +70,7 @@ async def test_trace_decorator_async(): @pytest.mark.asyncio -@pytest.mark.skipif(sys.version_info == (3, 14), reason="Test flakes blocking release.") +@pytest.mark.skipif(sys.version_info >= (3, 14), reason="Test flakes blocking release.") async def test_trace_decorator_async_no_trx(): with patch_start_tracing_child(fake_transaction_is_none=True): with mock.patch.object(logger, "debug", mock.Mock()) as fake_debug: