From 11f18224395dc285656620ff693c22f7f5742613 Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Fri, 4 Sep 2026 11:09:09 -0500 Subject: [PATCH 1/5] PYTHON-6077 Officially support Python 3.15 --- .evergreen/generated_configs/functions.yml | 1 + .evergreen/generated_configs/tasks.yml | 1146 ++++++++++++------- .evergreen/generated_configs/variants.yml | 2 + .evergreen/scripts/fetch-python.sh | 44 + .evergreen/scripts/generate_config.py | 38 +- .evergreen/scripts/generate_config_utils.py | 22 +- .evergreen/scripts/setup-dev-env.sh | 15 + .github/workflows/dist.yml | 4 +- doc/changelog.rst | 7 + pyproject.toml | 1 + 10 files changed, 870 insertions(+), 410 deletions(-) create mode 100755 .evergreen/scripts/fetch-python.sh diff --git a/.evergreen/generated_configs/functions.yml b/.evergreen/generated_configs/functions.yml index 9fbc1f8500..4007838e04 100644 --- a/.evergreen/generated_configs/functions.yml +++ b/.evergreen/generated_configs/functions.yml @@ -250,6 +250,7 @@ functions: working_dir: src include_expansions_in_env: - TOOLCHAIN_VERSION + - UV_PYTHON - COVERAGE type: test diff --git a/.evergreen/generated_configs/tasks.yml b/.evergreen/generated_configs/tasks.yml index 9fe6b33406..0debb79b6f 100644 --- a/.evergreen/generated_configs/tasks.yml +++ b/.evergreen/generated_configs/tasks.yml @@ -75,7 +75,7 @@ tasks: SUB_TEST_NAME: session-creds TOOLCHAIN_VERSION: 3.14t tags: [auth-aws, auth-aws-session-creds, free-threaded] - - name: test-auth-aws-9.0-web-identity-python3.14-cov + - name: test-auth-aws-9.0-web-identity-python3.14 commands: - func: run server vars: @@ -87,8 +87,7 @@ tasks: TEST_NAME: auth_aws SUB_TEST_NAME: web-identity TOOLCHAIN_VERSION: "3.14" - COVERAGE: "1" - tags: [auth-aws, auth-aws-web-identity, pr] + tags: [auth-aws, auth-aws-web-identity] - name: test-auth-aws-9.0-web-identity-session-name-python3.14 commands: - func: run server @@ -103,7 +102,7 @@ tasks: AWS_ROLE_SESSION_NAME: test TOOLCHAIN_VERSION: "3.14" tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-rapid-regular-python3.10-min-deps + - name: test-auth-aws-rapid-regular-python3.15.0rc2t commands: - func: run server vars: @@ -114,10 +113,9 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: regular - TOOLCHAIN_VERSION: "3.10" - TEST_MIN_DEPS: "1" - tags: [auth-aws, auth-aws-regular] - - name: test-auth-aws-latest-assume-role-python3.11 + UV_PYTHON: 3.15.0rc2t + tags: [auth-aws, auth-aws-regular, free-threaded] + - name: test-auth-aws-latest-assume-role-python3.15.0rc2-cov commands: - func: run server vars: @@ -128,8 +126,9 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: assume-role - TOOLCHAIN_VERSION: "3.11" - tags: [auth-aws, auth-aws-assume-role] + UV_PYTHON: 3.15.0rc2 + COVERAGE: "1" + tags: [auth-aws, auth-aws-assume-role, pr] - name: test-auth-aws-ecs commands: - func: assume ec2 role @@ -378,6 +377,18 @@ tasks: SUB_TEST_NAME: embedded TOOLCHAIN_VERSION: "3.14" tags: [mod_wsgi, pr] + - name: mod-wsgi-embedded-mode-replica-set-python3.15 + commands: + - func: run server + vars: + TOPOLOGY: replica_set + UV_PYTHON: 3.15.0rc2 + - func: run tests + vars: + TEST_NAME: mod_wsgi + SUB_TEST_NAME: embedded + UV_PYTHON: 3.15.0rc2 + tags: [mod_wsgi, pr] # No orchestration tests - name: test-no-orchestration-python3.10-min-deps @@ -388,13 +399,13 @@ tasks: TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [test-no-orchestration, python-3.10] - - name: test-no-orchestration-python3.14 + - name: test-no-orchestration-python3.15.0rc2 commands: - func: assume ec2 role - func: run tests vars: - TOOLCHAIN_VERSION: "3.14" - tags: [test-no-orchestration, python-3.14] + UV_PYTHON: 3.15.0rc2 + tags: [test-no-orchestration, python-3.15] - name: test-no-orchestration-pypy3.11 commands: - func: assume ec2 role @@ -455,8 +466,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -466,8 +477,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -477,8 +488,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -488,8 +499,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -499,8 +510,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -510,8 +521,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -521,19 +532,19 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-latest-python3.14 + - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -542,8 +553,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -553,8 +564,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -564,8 +575,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -575,8 +586,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -586,8 +597,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -597,8 +608,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -608,19 +619,19 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-latest-python3.14 + - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -629,8 +640,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -640,8 +651,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -651,8 +662,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -662,8 +673,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -673,8 +684,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -684,8 +695,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -695,19 +706,19 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-latest-python3.14 + - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -716,8 +727,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -727,8 +738,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -738,8 +749,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -749,8 +760,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -760,8 +771,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -771,8 +782,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -782,19 +793,19 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-latest-python3.14 + - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-soft-fail-v4.4-python3.10-min-deps commands: @@ -803,8 +814,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-soft-fail-v5.0-python3.10-min-deps @@ -814,8 +825,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-soft-fail-v6.0-python3.10-min-deps @@ -825,8 +836,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-soft-fail-v7.0-python3.10-min-deps @@ -836,8 +847,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-soft-fail-v8.0-python3.10-min-deps @@ -847,8 +858,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-soft-fail-v9.0-python3.10-min-deps @@ -858,8 +869,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-soft-fail-rapid-python3.10-min-deps @@ -869,19 +880,19 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-soft-fail-latest-python3.14 + - name: test-ocsp-ecdsa-soft-fail-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-valid-cert-server-staples-v4.4-python3.10-min-deps commands: @@ -890,8 +901,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -905,8 +916,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -920,8 +931,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -935,8 +946,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -950,8 +961,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -965,8 +976,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -980,23 +991,23 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp - ocsp-ecdsa - rapid - ocsp-staple - - name: test-ocsp-ecdsa-valid-cert-server-staples-latest-python3.14-cov + - name: test-ocsp-ecdsa-valid-cert-server-staples-latest-python3.15.0rc2-cov commands: - func: run tests vars: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 COVERAGE: "1" tags: - ocsp @@ -1011,8 +1022,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1026,8 +1037,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1041,8 +1052,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1056,8 +1067,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1071,8 +1082,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1086,8 +1097,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1101,23 +1112,23 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp - ocsp-ecdsa - rapid - ocsp-staple - - name: test-ocsp-ecdsa-invalid-cert-server-staples-latest-python3.14 + - name: test-ocsp-ecdsa-invalid-cert-server-staples-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: - ocsp - ocsp-ecdsa @@ -1130,8 +1141,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1145,8 +1156,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1160,8 +1171,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1175,8 +1186,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1190,8 +1201,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1205,8 +1216,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1220,23 +1231,23 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp - ocsp-ecdsa - rapid - ocsp-staple - - name: test-ocsp-ecdsa-delegate-valid-cert-server-staples-latest-python3.14 + - name: test-ocsp-ecdsa-delegate-valid-cert-server-staples-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: - ocsp - ocsp-ecdsa @@ -1249,8 +1260,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1264,8 +1275,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1279,8 +1290,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1294,8 +1305,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1309,8 +1320,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1324,8 +1335,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1339,23 +1350,23 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp - ocsp-ecdsa - rapid - ocsp-staple - - name: test-ocsp-ecdsa-delegate-invalid-cert-server-staples-latest-python3.14 + - name: test-ocsp-ecdsa-delegate-invalid-cert-server-staples-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: - ocsp - ocsp-ecdsa @@ -1368,8 +1379,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-v5.0-python3.10-min-deps @@ -1379,8 +1390,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-v6.0-python3.10-min-deps @@ -1390,8 +1401,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-v7.0-python3.10-min-deps @@ -1401,8 +1412,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-v8.0-python3.10-min-deps @@ -1412,8 +1423,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-v9.0-python3.10-min-deps @@ -1423,8 +1434,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-rapid-python3.10-min-deps @@ -1434,19 +1445,19 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.14 + - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1455,8 +1466,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v5.0-python3.10-min-deps @@ -1466,8 +1477,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v6.0-python3.10-min-deps @@ -1477,8 +1488,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v7.0-python3.10-min-deps @@ -1488,8 +1499,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v8.0-python3.10-min-deps @@ -1499,8 +1510,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v9.0-python3.10-min-deps @@ -1510,8 +1521,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-rapid-python3.10-min-deps @@ -1521,19 +1532,19 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.14 + - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1542,8 +1553,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-v5.0-python3.10-min-deps @@ -1553,8 +1564,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-v6.0-python3.10-min-deps @@ -1564,8 +1575,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-v7.0-python3.10-min-deps @@ -1575,8 +1586,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-v8.0-python3.10-min-deps @@ -1586,8 +1597,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-v9.0-python3.10-min-deps @@ -1597,8 +1608,8 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-rapid-python3.10-min-deps @@ -1608,19 +1619,19 @@ tasks: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.14 + - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: ecdsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1629,8 +1640,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -1640,8 +1651,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -1651,8 +1662,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -1662,8 +1673,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -1673,8 +1684,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -1684,8 +1695,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -1695,19 +1706,19 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-valid-cert-server-does-not-staple-latest-python3.14 + - name: test-ocsp-rsa-valid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1716,8 +1727,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -1727,8 +1738,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -1738,8 +1749,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -1749,8 +1760,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -1760,8 +1771,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -1771,8 +1782,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -1782,19 +1793,19 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-latest-python3.14 + - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1803,8 +1814,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -1814,8 +1825,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -1825,8 +1836,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -1836,8 +1847,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -1847,8 +1858,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -1858,8 +1869,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -1869,19 +1880,19 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-latest-python3.14 + - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1890,8 +1901,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -1901,8 +1912,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -1912,8 +1923,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -1923,8 +1934,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -1934,8 +1945,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -1945,8 +1956,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -1956,19 +1967,19 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-latest-python3.14 + - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-soft-fail-v4.4-python3.10-min-deps commands: @@ -1977,8 +1988,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-soft-fail-v5.0-python3.10-min-deps @@ -1988,8 +1999,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-soft-fail-v6.0-python3.10-min-deps @@ -1999,8 +2010,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-soft-fail-v7.0-python3.10-min-deps @@ -2010,8 +2021,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-soft-fail-v8.0-python3.10-min-deps @@ -2021,8 +2032,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-soft-fail-v9.0-python3.10-min-deps @@ -2032,8 +2043,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-soft-fail-rapid-python3.10-min-deps @@ -2043,19 +2054,19 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-soft-fail-latest-python3.14 + - name: test-ocsp-rsa-soft-fail-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-valid-cert-server-staples-v4.4-python3.10-min-deps commands: @@ -2064,8 +2075,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2079,8 +2090,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2094,8 +2105,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2109,8 +2120,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2124,8 +2135,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2139,8 +2150,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2154,23 +2165,23 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp - ocsp-rsa - rapid - ocsp-staple - - name: test-ocsp-rsa-valid-cert-server-staples-latest-python3.14-cov + - name: test-ocsp-rsa-valid-cert-server-staples-latest-python3.15.0rc2-cov commands: - func: run tests vars: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 COVERAGE: "1" tags: - ocsp @@ -2185,8 +2196,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2200,8 +2211,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2215,8 +2226,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2230,8 +2241,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2245,8 +2256,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2260,8 +2271,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2275,23 +2286,23 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp - ocsp-rsa - rapid - ocsp-staple - - name: test-ocsp-rsa-invalid-cert-server-staples-latest-python3.14 + - name: test-ocsp-rsa-invalid-cert-server-staples-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: - ocsp - ocsp-rsa @@ -2304,8 +2315,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2319,8 +2330,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2334,8 +2345,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2349,8 +2360,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2364,8 +2375,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2379,8 +2390,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2394,23 +2405,23 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp - ocsp-rsa - rapid - ocsp-staple - - name: test-ocsp-rsa-delegate-valid-cert-server-staples-latest-python3.14 + - name: test-ocsp-rsa-delegate-valid-cert-server-staples-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: - ocsp - ocsp-rsa @@ -2423,8 +2434,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2438,8 +2449,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2453,8 +2464,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2468,8 +2479,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2483,8 +2494,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2498,8 +2509,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2513,23 +2524,23 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp - ocsp-rsa - rapid - ocsp-staple - - name: test-ocsp-rsa-delegate-invalid-cert-server-staples-latest-python3.14 + - name: test-ocsp-rsa-delegate-invalid-cert-server-staples-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: - ocsp - ocsp-rsa @@ -2542,8 +2553,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-v5.0-python3.10-min-deps @@ -2553,8 +2564,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-v6.0-python3.10-min-deps @@ -2564,8 +2575,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-v7.0-python3.10-min-deps @@ -2575,8 +2586,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-v8.0-python3.10-min-deps @@ -2586,8 +2597,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-v9.0-python3.10-min-deps @@ -2597,8 +2608,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-rapid-python3.10-min-deps @@ -2608,19 +2619,19 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.14 + - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -2629,8 +2640,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v5.0-python3.10-min-deps @@ -2640,8 +2651,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v6.0-python3.10-min-deps @@ -2651,8 +2662,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v7.0-python3.10-min-deps @@ -2662,8 +2673,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v8.0-python3.10-min-deps @@ -2673,8 +2684,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v9.0-python3.10-min-deps @@ -2684,8 +2695,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-rapid-python3.10-min-deps @@ -2695,19 +2706,19 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.14 + - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -2716,8 +2727,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "4.4" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-v5.0-python3.10-min-deps @@ -2727,8 +2738,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "5.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-v6.0-python3.10-min-deps @@ -2738,8 +2749,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "6.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-v7.0-python3.10-min-deps @@ -2749,8 +2760,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "7.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-v8.0-python3.10-min-deps @@ -2760,8 +2771,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "8.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-v9.0-python3.10-min-deps @@ -2771,8 +2782,8 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: "9.0" + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-rapid-python3.10-min-deps @@ -2782,19 +2793,19 @@ tasks: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.10" VERSION: rapid + TOOLCHAIN_VERSION: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.14 + - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: ORCHESTRATION_FILE: rsa-basic-tls-ocsp-mustStaple-disableStapling.json OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp - TOOLCHAIN_VERSION: "3.14" VERSION: latest + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] # Oidc tests @@ -2909,7 +2920,7 @@ tasks: tags: [search_index] # Server version tests - - name: test-server-version-python3.14t-async-auth-nossl-replica-set + - name: test-server-version-python3.12-async-auth-nossl-replica-set commands: - func: run server vars: @@ -2921,15 +2932,14 @@ tasks: AUTH: auth SSL: nossl TOPOLOGY: replica_set - TOOLCHAIN_VERSION: 3.14t + TOOLCHAIN_VERSION: "3.12" TEST_NAME: default_async tags: - server-version - - python-3.14t + - python-3.12 - replica_set-auth-nossl - async - - free-threaded - - name: test-server-version-python3.13-sync-auth-nossl-replica-set + - name: test-server-version-python3.11-sync-auth-nossl-replica-set commands: - func: run server vars: @@ -2941,33 +2951,35 @@ tasks: AUTH: auth SSL: nossl TOPOLOGY: replica_set - TOOLCHAIN_VERSION: "3.13" + TOOLCHAIN_VERSION: "3.11" TEST_NAME: default_sync tags: - server-version - - python-3.13 + - python-3.11 - replica_set-auth-nossl - sync - - name: test-server-version-python3.12-async-auth-ssl-replica-set + - name: test-server-version-python3.10-async-auth-ssl-replica-set-min-deps commands: - func: run server vars: AUTH: auth SSL: ssl TOPOLOGY: replica_set + TEST_MIN_DEPS: "1" - func: run tests vars: AUTH: auth SSL: ssl TOPOLOGY: replica_set - TOOLCHAIN_VERSION: "3.12" + TEST_MIN_DEPS: "1" + TOOLCHAIN_VERSION: "3.10" TEST_NAME: default_async tags: - server-version - - python-3.12 + - python-3.10 - replica_set-auth-ssl - async - - name: test-server-version-python3.11-sync-auth-ssl-replica-set + - name: test-server-version-pypy3.11-sync-auth-ssl-replica-set commands: - func: run server vars: @@ -2979,14 +2991,14 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: replica_set - TOOLCHAIN_VERSION: "3.11" + TOOLCHAIN_VERSION: pypy3.11 TEST_NAME: default_sync tags: - server-version - - python-3.11 + - python-pypy3.11 - replica_set-auth-ssl - sync - - name: test-server-version-python3.11-async-noauth-nossl-replica-set-cov + - name: test-server-version-python3.15t-async-noauth-nossl-replica-set-cov commands: - func: run server vars: @@ -3000,39 +3012,38 @@ tasks: SSL: nossl TOPOLOGY: replica_set COVERAGE: "1" - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_async tags: - server-version - - python-3.11 + - python-3.15t - replica_set-noauth-nossl - async - pr - - name: test-server-version-python3.10-sync-noauth-nossl-replica-set-min-deps-cov + - free-threaded + - name: test-server-version-python3.14-sync-noauth-nossl-replica-set-cov commands: - func: run server vars: AUTH: noauth SSL: nossl TOPOLOGY: replica_set - TEST_MIN_DEPS: "1" COVERAGE: "1" - func: run tests vars: AUTH: noauth SSL: nossl TOPOLOGY: replica_set - TEST_MIN_DEPS: "1" COVERAGE: "1" - TOOLCHAIN_VERSION: "3.10" + TOOLCHAIN_VERSION: "3.14" TEST_NAME: default_sync tags: - server-version - - python-3.10 + - python-3.14 - replica_set-noauth-nossl - sync - pr - - name: test-server-version-pypy3.11-async-noauth-ssl-replica-set + - name: test-server-version-python3.14t-async-noauth-ssl-replica-set commands: - func: run server vars: @@ -3044,14 +3055,15 @@ tasks: AUTH: noauth SSL: ssl TOPOLOGY: replica_set - TOOLCHAIN_VERSION: pypy3.11 + TOOLCHAIN_VERSION: 3.14t TEST_NAME: default_async tags: - server-version - - python-pypy3.11 + - python-3.14t - replica_set-noauth-ssl - async - - name: test-server-version-python3.14-sync-noauth-ssl-replica-set + - free-threaded + - name: test-server-version-python3.13-sync-noauth-ssl-replica-set commands: - func: run server vars: @@ -3063,14 +3075,14 @@ tasks: AUTH: noauth SSL: ssl TOPOLOGY: replica_set - TOOLCHAIN_VERSION: "3.14" + TOOLCHAIN_VERSION: "3.13" TEST_NAME: default_sync tags: - server-version - - python-3.14 + - python-3.13 - replica_set-noauth-ssl - sync - - name: test-server-version-python3.14-async-auth-nossl-sharded-cluster + - name: test-server-version-python3.11-async-auth-nossl-sharded-cluster commands: - func: run server vars: @@ -3082,33 +3094,34 @@ tasks: AUTH: auth SSL: nossl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.14" + TOOLCHAIN_VERSION: "3.11" TEST_NAME: default_async tags: - server-version - - python-3.14 + - python-3.11 - sharded_cluster-auth-nossl - async - - name: test-server-version-python3.14t-sync-auth-nossl-sharded-cluster + - name: test-server-version-python3.10-sync-auth-nossl-sharded-cluster-min-deps commands: - func: run server vars: AUTH: auth SSL: nossl TOPOLOGY: sharded_cluster + TEST_MIN_DEPS: "1" - func: run tests vars: AUTH: auth SSL: nossl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: 3.14t + TEST_MIN_DEPS: "1" + TOOLCHAIN_VERSION: "3.10" TEST_NAME: default_sync tags: - server-version - - python-3.14t + - python-3.10 - sharded_cluster-auth-nossl - sync - - free-threaded - name: test-server-version-python3.10-async-auth-ssl-sharded-cluster-min-deps-cov commands: - func: run server @@ -3229,6 +3242,45 @@ tasks: - sharded_cluster-auth-ssl - async - free-threaded + - name: test-server-version-python3.15-async-auth-ssl-sharded-cluster + commands: + - func: run server + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + - func: run tests + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + UV_PYTHON: 3.15.0rc2 + TEST_NAME: default_async + tags: + - server-version + - python-3.15 + - sharded_cluster-auth-ssl + - async + - name: test-server-version-python3.15t-async-auth-ssl-sharded-cluster + commands: + - func: run server + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + - func: run tests + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + UV_PYTHON: 3.15.0rc2t + TEST_NAME: default_async + tags: + - server-version + - python-3.15t + - sharded_cluster-auth-ssl + - async + - free-threaded - name: test-server-version-pypy3.11-async-auth-ssl-sharded-cluster commands: - func: run server @@ -3368,6 +3420,45 @@ tasks: - sharded_cluster-auth-ssl - sync - free-threaded + - name: test-server-version-python3.15-sync-auth-ssl-sharded-cluster + commands: + - func: run server + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + - func: run tests + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + UV_PYTHON: 3.15.0rc2 + TEST_NAME: default_sync + tags: + - server-version + - python-3.15 + - sharded_cluster-auth-ssl + - sync + - name: test-server-version-python3.15t-sync-auth-ssl-sharded-cluster + commands: + - func: run server + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + - func: run tests + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + UV_PYTHON: 3.15.0rc2t + TEST_NAME: default_sync + tags: + - server-version + - python-3.15t + - sharded_cluster-auth-ssl + - sync + - free-threaded - name: test-server-version-pypy3.11-sync-auth-ssl-sharded-cluster commands: - func: run server @@ -3387,7 +3478,7 @@ tasks: - python-pypy3.11 - sharded_cluster-auth-ssl - sync - - name: test-server-version-python3.12-async-noauth-nossl-sharded-cluster + - name: test-server-version-python3.14-async-noauth-nossl-sharded-cluster commands: - func: run server vars: @@ -3399,14 +3490,14 @@ tasks: AUTH: noauth SSL: nossl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.12" + TOOLCHAIN_VERSION: "3.14" TEST_NAME: default_async tags: - server-version - - python-3.12 + - python-3.14 - sharded_cluster-noauth-nossl - async - - name: test-server-version-python3.11-sync-noauth-nossl-sharded-cluster + - name: test-server-version-python3.14t-sync-noauth-nossl-sharded-cluster commands: - func: run server vars: @@ -3418,35 +3509,34 @@ tasks: AUTH: noauth SSL: nossl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.11" + TOOLCHAIN_VERSION: 3.14t TEST_NAME: default_sync tags: - server-version - - python-3.11 + - python-3.14t - sharded_cluster-noauth-nossl - sync - - name: test-server-version-python3.10-async-noauth-ssl-sharded-cluster-min-deps + - free-threaded + - name: test-server-version-python3.13-async-noauth-ssl-sharded-cluster commands: - func: run server vars: AUTH: noauth SSL: ssl TOPOLOGY: sharded_cluster - TEST_MIN_DEPS: "1" - func: run tests vars: AUTH: noauth SSL: ssl TOPOLOGY: sharded_cluster - TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + TOOLCHAIN_VERSION: "3.13" TEST_NAME: default_async tags: - server-version - - python-3.10 + - python-3.13 - sharded_cluster-noauth-ssl - async - - name: test-server-version-pypy3.11-sync-noauth-ssl-sharded-cluster + - name: test-server-version-python3.12-sync-noauth-ssl-sharded-cluster commands: - func: run server vars: @@ -3458,11 +3548,11 @@ tasks: AUTH: noauth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: pypy3.11 + TOOLCHAIN_VERSION: "3.12" TEST_NAME: default_sync tags: - server-version - - python-pypy3.11 + - python-3.12 - sharded_cluster-noauth-ssl - sync - name: test-server-version-python3.13-async-auth-nossl-standalone @@ -3543,31 +3633,29 @@ tasks: - python-3.10 - standalone-auth-ssl - sync - - name: test-server-version-python3.10-async-noauth-nossl-standalone-min-deps-cov + - name: test-server-version-python3.15-async-noauth-nossl-standalone-cov commands: - func: run server vars: AUTH: noauth SSL: nossl TOPOLOGY: standalone - TEST_MIN_DEPS: "1" COVERAGE: "1" - func: run tests vars: AUTH: noauth SSL: nossl TOPOLOGY: standalone - TEST_MIN_DEPS: "1" COVERAGE: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: 3.15.0rc2 TEST_NAME: default_async tags: - server-version - - python-3.10 + - python-3.15 - standalone-noauth-nossl - async - pr - - name: test-server-version-pypy3.11-sync-noauth-nossl-standalone-cov + - name: test-server-version-python3.15t-sync-noauth-nossl-standalone-cov commands: - func: run server vars: @@ -3581,14 +3669,15 @@ tasks: SSL: nossl TOPOLOGY: standalone COVERAGE: "1" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_sync tags: - server-version - - python-pypy3.11 + - python-3.15t - standalone-noauth-nossl - sync - pr + - free-threaded - name: test-server-version-python3.14-async-noauth-ssl-standalone commands: - func: run server @@ -3696,7 +3785,7 @@ tasks: - python-3.12 - sharded_cluster-auth-ssl - sync - - name: test-standard-v4.4-pypy3.11-sync-auth-ssl-sharded-cluster + - name: test-standard-v4.4-python3.15t-sync-auth-ssl-sharded-cluster commands: - func: run server vars: @@ -3710,15 +3799,15 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "4.4" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_sync tags: - test-standard - server-4.4 - - python-pypy3.11 + - python-3.15t - sharded_cluster-auth-ssl - sync - - pypy + - free-threaded - name: test-standard-v4.4-python3.10-sync-noauth-nossl-standalone-min-deps commands: - func: run server @@ -3766,6 +3855,29 @@ tasks: - standalone-noauth-nossl - sync - free-threaded + - name: test-standard-v4.4-pypy3.11-sync-noauth-nossl-standalone + commands: + - func: run server + vars: + AUTH: noauth + SSL: nossl + TOPOLOGY: standalone + VERSION: "4.4" + - func: run tests + vars: + AUTH: noauth + SSL: nossl + TOPOLOGY: standalone + VERSION: "4.4" + TOOLCHAIN_VERSION: pypy3.11 + TEST_NAME: default_sync + tags: + - test-standard + - server-4.4 + - python-pypy3.11 + - standalone-noauth-nossl + - sync + - pypy - name: test-standard-v5.0-python3.11-async-noauth-ssl-replica-set commands: - func: run server @@ -3832,7 +3944,7 @@ tasks: - python-3.12 - sharded_cluster-auth-ssl - async - - name: test-standard-v5.0-pypy3.11-async-auth-ssl-sharded-cluster + - name: test-standard-v5.0-python3.15t-async-auth-ssl-sharded-cluster commands: - func: run server vars: @@ -3846,15 +3958,15 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "5.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_async tags: - test-standard - server-5.0 - - python-pypy3.11 + - python-3.15t - sharded_cluster-auth-ssl - async - - pypy + - free-threaded - name: test-standard-v5.0-python3.10-async-noauth-nossl-standalone-min-deps commands: - func: run server @@ -3902,6 +4014,29 @@ tasks: - standalone-noauth-nossl - async - free-threaded + - name: test-standard-v5.0-pypy3.11-async-noauth-nossl-standalone + commands: + - func: run server + vars: + AUTH: noauth + SSL: nossl + TOPOLOGY: standalone + VERSION: "5.0" + - func: run tests + vars: + AUTH: noauth + SSL: nossl + TOPOLOGY: standalone + VERSION: "5.0" + TOOLCHAIN_VERSION: pypy3.11 + TEST_NAME: default_async + tags: + - test-standard + - server-5.0 + - python-pypy3.11 + - standalone-noauth-nossl + - async + - pypy - name: test-standard-v6.0-python3.10-sync-noauth-ssl-replica-set-min-deps commands: - func: run server @@ -3949,6 +4084,29 @@ tasks: - replica_set-noauth-ssl - sync - free-threaded + - name: test-standard-v6.0-pypy3.11-sync-noauth-ssl-replica-set + commands: + - func: run server + vars: + AUTH: noauth + SSL: ssl + TOPOLOGY: replica_set + VERSION: "6.0" + - func: run tests + vars: + AUTH: noauth + SSL: ssl + TOPOLOGY: replica_set + VERSION: "6.0" + TOOLCHAIN_VERSION: pypy3.11 + TEST_NAME: default_sync + tags: + - test-standard + - server-6.0 + - python-pypy3.11 + - replica_set-noauth-ssl + - sync + - pypy - name: test-standard-v6.0-python3.11-sync-auth-ssl-sharded-cluster commands: - func: run server @@ -4015,6 +4173,28 @@ tasks: - python-3.13 - standalone-noauth-nossl - sync + - name: test-standard-v6.0-python3.15-sync-noauth-nossl-standalone + commands: + - func: run server + vars: + AUTH: noauth + SSL: nossl + TOPOLOGY: standalone + VERSION: "6.0" + - func: run tests + vars: + AUTH: noauth + SSL: nossl + TOPOLOGY: standalone + VERSION: "6.0" + UV_PYTHON: 3.15.0rc2 + TEST_NAME: default_sync + tags: + - test-standard + - server-6.0 + - python-3.15 + - standalone-noauth-nossl + - sync - name: test-standard-v7.0-python3.10-async-noauth-ssl-replica-set-min-deps commands: - func: run server @@ -4053,15 +4233,38 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "7.0" - TOOLCHAIN_VERSION: 3.14t + TOOLCHAIN_VERSION: 3.14t + TEST_NAME: default_async + tags: + - test-standard + - server-7.0 + - python-3.14t + - replica_set-noauth-ssl + - async + - free-threaded + - name: test-standard-v7.0-pypy3.11-async-noauth-ssl-replica-set + commands: + - func: run server + vars: + AUTH: noauth + SSL: ssl + TOPOLOGY: replica_set + VERSION: "7.0" + - func: run tests + vars: + AUTH: noauth + SSL: ssl + TOPOLOGY: replica_set + VERSION: "7.0" + TOOLCHAIN_VERSION: pypy3.11 TEST_NAME: default_async tags: - test-standard - server-7.0 - - python-3.14t + - python-pypy3.11 - replica_set-noauth-ssl - async - - free-threaded + - pypy - name: test-standard-v7.0-python3.11-async-auth-ssl-sharded-cluster commands: - func: run server @@ -4128,6 +4331,28 @@ tasks: - python-3.13 - standalone-noauth-nossl - async + - name: test-standard-v7.0-python3.15-async-noauth-nossl-standalone + commands: + - func: run server + vars: + AUTH: noauth + SSL: nossl + TOPOLOGY: standalone + VERSION: "7.0" + - func: run tests + vars: + AUTH: noauth + SSL: nossl + TOPOLOGY: standalone + VERSION: "7.0" + UV_PYTHON: 3.15.0rc2 + TEST_NAME: default_async + tags: + - test-standard + - server-7.0 + - python-3.15 + - standalone-noauth-nossl + - async - name: test-standard-v8.0-python3.13-sync-noauth-ssl-replica-set commands: - func: run server @@ -4150,6 +4375,28 @@ tasks: - python-3.13 - replica_set-noauth-ssl - sync + - name: test-standard-v8.0-python3.15-sync-noauth-ssl-replica-set + commands: + - func: run server + vars: + AUTH: noauth + SSL: ssl + TOPOLOGY: replica_set + VERSION: "8.0" + - func: run tests + vars: + AUTH: noauth + SSL: ssl + TOPOLOGY: replica_set + VERSION: "8.0" + UV_PYTHON: 3.15.0rc2 + TEST_NAME: default_sync + tags: + - test-standard + - server-8.0 + - python-3.15 + - replica_set-noauth-ssl + - sync - name: test-standard-v8.0-python3.10-sync-auth-ssl-sharded-cluster-min-deps commands: - func: run server @@ -4197,6 +4444,29 @@ tasks: - sharded_cluster-auth-ssl - sync - free-threaded + - name: test-standard-v8.0-pypy3.11-sync-auth-ssl-sharded-cluster + commands: + - func: run server + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + VERSION: "8.0" + - func: run tests + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + VERSION: "8.0" + TOOLCHAIN_VERSION: pypy3.11 + TEST_NAME: default_sync + tags: + - test-standard + - server-8.0 + - python-pypy3.11 + - sharded_cluster-auth-ssl + - sync + - pypy - name: test-standard-v8.0-python3.12-sync-noauth-nossl-standalone commands: - func: run server @@ -4219,7 +4489,7 @@ tasks: - python-3.12 - standalone-noauth-nossl - sync - - name: test-standard-v8.0-pypy3.11-sync-noauth-nossl-standalone + - name: test-standard-v8.0-python3.15t-sync-noauth-nossl-standalone commands: - func: run server vars: @@ -4233,15 +4503,15 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "8.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_sync tags: - test-standard - server-8.0 - - python-pypy3.11 + - python-3.15t - standalone-noauth-nossl - sync - - pypy + - free-threaded - name: test-standard-v9.0-python3.13-async-noauth-ssl-replica-set commands: - func: run server @@ -4264,6 +4534,28 @@ tasks: - python-3.13 - replica_set-noauth-ssl - async + - name: test-standard-v9.0-python3.15-async-noauth-ssl-replica-set + commands: + - func: run server + vars: + AUTH: noauth + SSL: ssl + TOPOLOGY: replica_set + VERSION: "9.0" + - func: run tests + vars: + AUTH: noauth + SSL: ssl + TOPOLOGY: replica_set + VERSION: "9.0" + UV_PYTHON: 3.15.0rc2 + TEST_NAME: default_async + tags: + - test-standard + - server-9.0 + - python-3.15 + - replica_set-noauth-ssl + - async - name: test-standard-v9.0-python3.10-async-auth-ssl-sharded-cluster-min-deps commands: - func: run server @@ -4311,6 +4603,29 @@ tasks: - sharded_cluster-auth-ssl - async - free-threaded + - name: test-standard-v9.0-pypy3.11-async-auth-ssl-sharded-cluster + commands: + - func: run server + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + VERSION: "9.0" + - func: run tests + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + VERSION: "9.0" + TOOLCHAIN_VERSION: pypy3.11 + TEST_NAME: default_async + tags: + - test-standard + - server-9.0 + - python-pypy3.11 + - sharded_cluster-auth-ssl + - async + - pypy - name: test-standard-v9.0-python3.12-async-noauth-nossl-standalone commands: - func: run server @@ -4333,7 +4648,7 @@ tasks: - python-3.12 - standalone-noauth-nossl - async - - name: test-standard-v9.0-pypy3.11-async-noauth-nossl-standalone + - name: test-standard-v9.0-python3.15t-async-noauth-nossl-standalone commands: - func: run server vars: @@ -4347,15 +4662,15 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "9.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_async tags: - test-standard - server-9.0 - - python-pypy3.11 + - python-3.15t - standalone-noauth-nossl - async - - pypy + - free-threaded - name: test-standard-latest-python3.12-async-noauth-ssl-replica-set-cov commands: - func: run server @@ -4381,7 +4696,7 @@ tasks: - replica_set-noauth-ssl - async - pr - - name: test-standard-latest-pypy3.11-async-noauth-ssl-replica-set + - name: test-standard-latest-python3.15t-async-noauth-ssl-replica-set-cov commands: - func: run server vars: @@ -4389,21 +4704,24 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: latest + COVERAGE: "1" - func: run tests vars: AUTH: noauth SSL: ssl TOPOLOGY: replica_set VERSION: latest - TOOLCHAIN_VERSION: pypy3.11 + COVERAGE: "1" + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_async tags: - test-standard - server-latest - - python-pypy3.11 + - python-3.15t - replica_set-noauth-ssl - async - - pypy + - free-threaded + - pr - name: test-standard-latest-python3.13-async-auth-ssl-sharded-cluster-cov commands: - func: run server @@ -4429,6 +4747,31 @@ tasks: - sharded_cluster-auth-ssl - async - pr + - name: test-standard-latest-python3.15-async-auth-ssl-sharded-cluster-cov + commands: + - func: run server + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + VERSION: latest + COVERAGE: "1" + - func: run tests + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + VERSION: latest + COVERAGE: "1" + UV_PYTHON: 3.15.0rc2 + TEST_NAME: default_async + tags: + - test-standard + - server-latest + - python-3.15 + - sharded_cluster-auth-ssl + - async + - pr - name: test-standard-latest-python3.11-async-noauth-nossl-standalone-cov commands: - func: run server @@ -4501,7 +4844,7 @@ tasks: - python-3.12 - replica_set-noauth-ssl - sync - - name: test-standard-rapid-pypy3.11-sync-noauth-ssl-replica-set + - name: test-standard-rapid-python3.15t-sync-noauth-ssl-replica-set commands: - func: run server vars: @@ -4515,15 +4858,15 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: rapid - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_sync tags: - test-standard - server-rapid - - python-pypy3.11 + - python-3.15t - replica_set-noauth-ssl - sync - - pypy + - free-threaded - name: test-standard-rapid-python3.13-sync-auth-ssl-sharded-cluster commands: - func: run server @@ -4546,6 +4889,28 @@ tasks: - python-3.13 - sharded_cluster-auth-ssl - sync + - name: test-standard-rapid-python3.15-sync-auth-ssl-sharded-cluster + commands: + - func: run server + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + VERSION: rapid + - func: run tests + vars: + AUTH: auth + SSL: ssl + TOPOLOGY: sharded_cluster + VERSION: rapid + UV_PYTHON: 3.15.0rc2 + TEST_NAME: default_sync + tags: + - test-standard + - server-rapid + - python-3.15 + - sharded_cluster-auth-ssl + - sync - name: test-standard-rapid-python3.11-sync-noauth-nossl-standalone commands: - func: run server @@ -4592,7 +4957,7 @@ tasks: - sync # String query preview tests - - name: test-string-query-preview-v8.2-python3.14-noauth-ssl-replica-set + - name: test-string-query-preview-v8.2-python3.15-noauth-ssl-replica-set commands: - func: run server vars: @@ -4606,11 +4971,11 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "8.2" - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: 3.15.0rc2 tags: - test-string-query-preview - server-8.2 - - python-3.14 + - python-3.15 - replica_set-noauth-ssl - noauth @@ -4788,7 +5153,7 @@ tasks: - python-3.13 - standalone-noauth-nossl - noauth - - name: test-non-standard-v6.0-python3.11-noauth-ssl-replica-set + - name: test-non-standard-v6.0-python3.15-noauth-ssl-replica-set commands: - func: run server vars: @@ -4802,14 +5167,14 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "6.0" - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: 3.15.0rc2 tags: - test-non-standard - server-6.0 - - python-3.11 + - python-3.15 - replica_set-noauth-ssl - noauth - - name: test-non-standard-v6.0-python3.12-auth-ssl-sharded-cluster + - name: test-non-standard-v6.0-python3.10-auth-ssl-sharded-cluster-min-deps commands: - func: run server vars: @@ -4817,17 +5182,19 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "6.0" + TEST_MIN_DEPS: "1" - func: run tests vars: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster VERSION: "6.0" - TOOLCHAIN_VERSION: "3.12" + TEST_MIN_DEPS: "1" + TOOLCHAIN_VERSION: "3.10" tags: - test-non-standard - server-6.0 - - python-3.12 + - python-3.10 - sharded_cluster-auth-ssl - auth - name: test-non-standard-v6.0-pypy3.11-auth-ssl-sharded-cluster @@ -4852,7 +5219,7 @@ tasks: - sharded_cluster-auth-ssl - auth - pypy - - name: test-non-standard-v6.0-python3.10-noauth-nossl-standalone-min-deps + - name: test-non-standard-v6.0-python3.15t-noauth-nossl-standalone commands: - func: run server vars: @@ -4860,22 +5227,21 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "6.0" - TEST_MIN_DEPS: "1" - func: run tests vars: AUTH: noauth SSL: nossl TOPOLOGY: standalone VERSION: "6.0" - TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: 3.15.0rc2t tags: - test-non-standard - server-6.0 - - python-3.10 + - python-3.15t - standalone-noauth-nossl - noauth - - name: test-non-standard-v7.0-python3.14t-noauth-ssl-replica-set + - free-threaded + - name: test-non-standard-v7.0-python3.12-noauth-ssl-replica-set commands: - func: run server vars: @@ -4889,15 +5255,14 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "7.0" - TOOLCHAIN_VERSION: 3.14t + TOOLCHAIN_VERSION: "3.12" tags: - test-non-standard - server-7.0 - - python-3.14t + - python-3.12 - replica_set-noauth-ssl - noauth - - free-threaded - - name: test-non-standard-v7.0-python3.14-auth-ssl-sharded-cluster + - name: test-non-standard-v7.0-python3.13-auth-ssl-sharded-cluster commands: - func: run server vars: @@ -4911,14 +5276,14 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "7.0" - TOOLCHAIN_VERSION: "3.14" + TOOLCHAIN_VERSION: "3.13" tags: - test-non-standard - server-7.0 - - python-3.14 + - python-3.13 - sharded_cluster-auth-ssl - auth - - name: test-non-standard-v7.0-python3.13-noauth-nossl-standalone + - name: test-non-standard-v7.0-python3.11-noauth-nossl-standalone commands: - func: run server vars: @@ -4932,11 +5297,11 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "7.0" - TOOLCHAIN_VERSION: "3.13" + TOOLCHAIN_VERSION: "3.11" tags: - test-non-standard - server-7.0 - - python-3.13 + - python-3.11 - standalone-noauth-nossl - noauth - name: test-non-standard-v7.0-pypy3.11-noauth-nossl-standalone @@ -4961,7 +5326,7 @@ tasks: - standalone-noauth-nossl - noauth - pypy - - name: test-non-standard-v8.0-python3.11-noauth-ssl-replica-set + - name: test-non-standard-v8.0-python3.14-noauth-ssl-replica-set commands: - func: run server vars: @@ -4975,11 +5340,11 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "8.0" - TOOLCHAIN_VERSION: "3.11" + TOOLCHAIN_VERSION: "3.14" tags: - test-non-standard - server-8.0 - - python-3.11 + - python-3.14 - replica_set-noauth-ssl - noauth - name: test-non-standard-v8.0-pypy3.11-noauth-ssl-replica-set @@ -5004,7 +5369,7 @@ tasks: - replica_set-noauth-ssl - noauth - pypy - - name: test-non-standard-v8.0-python3.12-auth-ssl-sharded-cluster + - name: test-non-standard-v8.0-python3.15t-auth-ssl-sharded-cluster commands: - func: run server vars: @@ -5018,14 +5383,15 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "8.0" - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: 3.15.0rc2t tags: - test-non-standard - server-8.0 - - python-3.12 + - python-3.15t - sharded_cluster-auth-ssl - auth - - name: test-non-standard-v8.0-python3.10-noauth-nossl-standalone-min-deps + - free-threaded + - name: test-non-standard-v8.0-python3.14t-noauth-nossl-standalone commands: - func: run server vars: @@ -5033,22 +5399,21 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "8.0" - TEST_MIN_DEPS: "1" - func: run tests vars: AUTH: noauth SSL: nossl TOPOLOGY: standalone VERSION: "8.0" - TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + TOOLCHAIN_VERSION: 3.14t tags: - test-non-standard - server-8.0 - - python-3.10 + - python-3.14t - standalone-noauth-nossl - noauth - - name: test-non-standard-v9.0-python3.14t-noauth-ssl-replica-set + - free-threaded + - name: test-non-standard-v9.0-python3.10-noauth-ssl-replica-set-min-deps commands: - func: run server vars: @@ -5056,21 +5421,22 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "9.0" + TEST_MIN_DEPS: "1" - func: run tests vars: AUTH: noauth SSL: ssl TOPOLOGY: replica_set VERSION: "9.0" - TOOLCHAIN_VERSION: 3.14t + TEST_MIN_DEPS: "1" + TOOLCHAIN_VERSION: "3.10" tags: - test-non-standard - server-9.0 - - python-3.14t + - python-3.10 - replica_set-noauth-ssl - noauth - - free-threaded - - name: test-non-standard-v9.0-python3.14-auth-ssl-sharded-cluster + - name: test-non-standard-v9.0-python3.11-auth-ssl-sharded-cluster commands: - func: run server vars: @@ -5084,11 +5450,11 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "9.0" - TOOLCHAIN_VERSION: "3.14" + TOOLCHAIN_VERSION: "3.11" tags: - test-non-standard - server-9.0 - - python-3.14 + - python-3.11 - sharded_cluster-auth-ssl - auth - name: test-non-standard-v9.0-pypy3.11-auth-ssl-sharded-cluster @@ -5113,7 +5479,7 @@ tasks: - sharded_cluster-auth-ssl - auth - pypy - - name: test-non-standard-v9.0-python3.13-noauth-nossl-standalone + - name: test-non-standard-v9.0-python3.15-noauth-nossl-standalone commands: - func: run server vars: @@ -5127,14 +5493,14 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "9.0" - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: 3.15.0rc2 tags: - test-non-standard - server-9.0 - - python-3.13 + - python-3.15 - standalone-noauth-nossl - noauth - - name: test-non-standard-latest-python3.14t-noauth-ssl-replica-set + - name: test-non-standard-latest-python3.15t-noauth-ssl-replica-set commands: - func: run server vars: @@ -5148,11 +5514,11 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: latest - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.15.0rc2t tags: - test-non-standard - server-latest - - python-3.14t + - python-3.15t - replica_set-noauth-ssl - noauth - free-threaded @@ -5178,7 +5544,7 @@ tasks: - replica_set-noauth-ssl - noauth - pypy - - name: test-non-standard-latest-python3.14-auth-ssl-sharded-cluster-cov + - name: test-non-standard-latest-python3.15-auth-ssl-sharded-cluster-cov commands: - func: run server vars: @@ -5194,16 +5560,16 @@ tasks: TOPOLOGY: sharded_cluster VERSION: latest COVERAGE: "1" - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: 3.15.0rc2 tags: - test-non-standard - server-latest - - python-3.14 + - python-3.15 - sharded_cluster-auth-ssl - auth - pr - cov - - name: test-non-standard-latest-python3.14-auth-ssl-sharded-cluster + - name: test-non-standard-latest-python3.15-auth-ssl-sharded-cluster commands: - func: run server vars: @@ -5217,15 +5583,15 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: latest - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: 3.15.0rc2 tags: - test-non-standard-no-cov - server-latest - - python-3.14 + - python-3.15 - sharded_cluster-auth-ssl - auth - pr - - name: test-non-standard-latest-python3.13-noauth-nossl-standalone + - name: test-non-standard-latest-python3.14-noauth-nossl-standalone commands: - func: run server vars: @@ -5239,14 +5605,14 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: latest - TOOLCHAIN_VERSION: "3.13" + TOOLCHAIN_VERSION: "3.14" tags: - test-non-standard - server-latest - - python-3.13 + - python-3.14 - standalone-noauth-nossl - noauth - - name: test-non-standard-rapid-python3.11-noauth-ssl-replica-set + - name: test-non-standard-rapid-python3.13-noauth-ssl-replica-set commands: - func: run server vars: @@ -5260,14 +5626,14 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: rapid - TOOLCHAIN_VERSION: "3.11" + TOOLCHAIN_VERSION: "3.13" tags: - test-non-standard - server-rapid - - python-3.11 + - python-3.13 - replica_set-noauth-ssl - noauth - - name: test-non-standard-rapid-python3.12-auth-ssl-sharded-cluster + - name: test-non-standard-rapid-python3.14t-auth-ssl-sharded-cluster commands: - func: run server vars: @@ -5281,14 +5647,15 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: rapid - TOOLCHAIN_VERSION: "3.12" + TOOLCHAIN_VERSION: 3.14t tags: - test-non-standard - server-rapid - - python-3.12 + - python-3.14t - sharded_cluster-auth-ssl - auth - - name: test-non-standard-rapid-python3.10-noauth-nossl-standalone-min-deps + - free-threaded + - name: test-non-standard-rapid-python3.12-noauth-nossl-standalone commands: - func: run server vars: @@ -5296,19 +5663,17 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: rapid - TEST_MIN_DEPS: "1" - func: run tests vars: AUTH: noauth SSL: nossl TOPOLOGY: standalone VERSION: rapid - TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + TOOLCHAIN_VERSION: "3.12" tags: - test-non-standard - server-rapid - - python-3.10 + - python-3.12 - standalone-noauth-nossl - noauth - name: test-non-standard-rapid-pypy3.11-noauth-nossl-standalone @@ -5345,16 +5710,16 @@ tasks: - vector - python-3.10 - test-numpy - - name: test-numpy-python3.14-python3.14-cov + - name: test-numpy-python3.15-python3.15.0rc2-cov commands: - func: test numpy vars: - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: 3.15.0rc2 COVERAGE: "1" tags: - binary - vector - - python-3.14 + - python-3.15 - test-numpy - pr @@ -5620,7 +5985,7 @@ tasks: - sharded_cluster-auth-ssl - auth - pypy - - name: test-standard-auth-latest-python3.11-auth-ssl-sharded-cluster-cov + - name: test-standard-auth-latest-python3.15-auth-ssl-sharded-cluster-cov commands: - func: run server vars: @@ -5636,11 +6001,11 @@ tasks: TOPOLOGY: sharded_cluster VERSION: latest COVERAGE: "1" - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: 3.15.0rc2 tags: - test-standard-auth - server-latest - - python-3.11 + - python-3.15 - sharded_cluster-auth-ssl - auth - pr @@ -5666,7 +6031,7 @@ tasks: - sharded_cluster-auth-ssl - auth - pypy - - name: test-standard-auth-rapid-python3.10-auth-ssl-sharded-cluster-min-deps + - name: test-standard-auth-rapid-python3.15t-auth-ssl-sharded-cluster commands: - func: run server vars: @@ -5674,21 +6039,20 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: rapid - TEST_MIN_DEPS: "1" - func: run tests vars: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster VERSION: rapid - TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: 3.15.0rc2t tags: - test-standard-auth - server-rapid - - python-3.10 + - python-3.15t - sharded_cluster-auth-ssl - auth + - free-threaded - name: test-standard-auth-rapid-pypy3.11-auth-ssl-sharded-cluster commands: - func: run server diff --git a/.evergreen/generated_configs/variants.yml b/.evergreen/generated_configs/variants.yml index 72af2599f7..cc822ab8b0 100644 --- a/.evergreen/generated_configs/variants.yml +++ b/.evergreen/generated_configs/variants.yml @@ -144,6 +144,8 @@ buildvariants: tasks: - name: .test-standard !.server-4.4 !.server-5.0 .python-3.14 - name: .test-standard !.server-4.4 !.server-5.0 .python-3.14t + - name: .test-standard !.server-4.4 !.server-5.0 .python-3.15 + - name: .test-standard !.server-4.4 !.server-5.0 .python-3.15t display_name: Compression zstd Ubuntu-22 run_on: - ubuntu2204-small diff --git a/.evergreen/scripts/fetch-python.sh b/.evergreen/scripts/fetch-python.sh new file mode 100755 index 0000000000..494d251848 --- /dev/null +++ b/.evergreen/scripts/fetch-python.sh @@ -0,0 +1,44 @@ +#!/bin/bash +# Download a Python build from python-build-standalone and print the directory +# uv should use for it. Temporary: uv does not yet index Python 3.15 +# pre-releases, so we fetch the build ourselves until the version is available +# in the Evergreen toolchain. See PYTHON-6077. +set -eu + +version="${UV_PYTHON:?UV_PYTHON must be set}" +# python-build-standalone release tag that carries the builds below. +pbs_tag="20260901" + +case "$version" in + 3.15.0rc2t) interpreter="3.15.0rc2"; variant="-freethreaded" ;; + 3.15.0rc2) interpreter="3.15.0rc2"; variant="" ;; + *) echo "No python-build-standalone build configured for Python $version" >&2; exit 1 ;; +esac + +case "$(uname -s)" in + Darwin) target_os="-apple-darwin"; base_dir="${HOME}" ;; + Linux) target_os="-unknown-linux-gnu"; base_dir="${HOME}" ;; + MSYS* | MINGW* | CYGWIN*) target_os="-pc-windows-msvc"; base_dir="${USERPROFILE:-$HOME}" ;; + *) echo "Unsupported platform $(uname -s)" >&2; exit 1 ;; +esac + +case "$(uname -m)" in + arm64 | aarch64) target_arch="aarch64" ;; + x86_64) target_arch="x86_64" ;; + *) echo "Unsupported architecture $(uname -m)" >&2; exit 1 ;; +esac + +asset="cpython-${interpreter}+${pbs_tag}-${target_arch}${target_os}${variant}-install_only.tar.gz" +url="https://github.com/astral-sh/python-build-standalone/releases/download/${pbs_tag}/${asset//+/%2B}" + +# Use a native path on Windows: bash reports MSYS paths (e.g. /home/user) +# that the native Windows uv binary cannot resolve. Normalize backslashes +# to forward slashes, which both uv and the shell's tar accept. +dest="${base_dir}/.cache/python-build-standalone/${version}/${target_arch}${target_os}" +dest="$(printf '%s' "$dest" | tr '\\' '/')" +if [ ! -d "$dest/python" ]; then + mkdir -p "$dest" + echo "Downloading Python ${version} from python-build-standalone" >&2 + curl -fL --retry 3 "$url" | tar -xz -C "$dest" +fi +echo "$dest/python" diff --git a/.evergreen/scripts/generate_config.py b/.evergreen/scripts/generate_config.py index aaded3130c..631aaedccb 100644 --- a/.evergreen/scripts/generate_config.py +++ b/.evergreen/scripts/generate_config.py @@ -27,6 +27,7 @@ get_variant_name, get_versions_from, handle_c_ext, + set_version_var, write_functions_to_file, write_tasks_to_file, write_variants_to_file, @@ -208,6 +209,8 @@ def create_compression_variants(): tasks = [ ".test-standard !.server-4.4 !.server-5.0 .python-3.14", ".test-standard !.server-4.4 !.server-5.0 .python-3.14t", + ".test-standard !.server-4.4 !.server-5.0 .python-3.15", + ".test-standard !.server-4.4 !.server-5.0 .python-3.15t", ] display_name = get_variant_name(f"Compression {compressor}", host) variants.append( @@ -353,7 +356,8 @@ def create_test_numpy_tasks(): tasks = [] for python in MIN_MAX_PYTHON: tags = ["binary", "vector", f"python-{python}", "test-numpy"] - vars = dict(TOOLCHAIN_VERSION=python) + vars = dict() + set_version_var(vars, python) if python == MIN_MAX_PYTHON[-1]: tags.append("pr") vars["COVERAGE"] = "1" @@ -633,7 +637,7 @@ def create_server_version_tasks(): ) server_func = FunctionCall(func="run server", vars=expansions) test_vars = expansions.copy() - test_vars["TOOLCHAIN_VERSION"] = python + set_version_var(test_vars, python) test_vars["TEST_NAME"] = f"default_{sync}" test_func = FunctionCall(func="run tests", vars=test_vars) tasks.append(EvgTask(name=name, tags=tags, commands=[server_func, test_func])) @@ -695,7 +699,7 @@ def create_test_non_standard_tasks(): name = get_task_name("test-non-standard", python=python, **expansions) server_func = FunctionCall(func="run server", vars=expansions) test_vars = expansions.copy() - test_vars["TOOLCHAIN_VERSION"] = python + set_version_var(test_vars, python) test_func = FunctionCall(func="run tests", vars=test_vars) tasks.append(EvgTask(name=name, tags=tags, commands=[server_func, test_func])) # For each coverage task, also emit a non-coverage companion so that @@ -713,7 +717,7 @@ def create_test_non_standard_tasks(): nc_name = get_task_name("test-non-standard", python=python, **nc_expansions) nc_server_func = FunctionCall(func="run server", vars=nc_expansions) nc_test_vars = nc_expansions.copy() - nc_test_vars["TOOLCHAIN_VERSION"] = python + set_version_var(nc_test_vars, python) nc_test_func = FunctionCall(func="run tests", vars=nc_test_vars) tasks.append( EvgTask(name=nc_name, tags=nc_tags, commands=[nc_server_func, nc_test_func]) @@ -744,7 +748,7 @@ def create_string_query_preview_tasks(): name = get_task_name("test-string-query-preview", python=python, **expansions) server_func = FunctionCall(func="run server", vars=expansions) test_vars = expansions.copy() - test_vars["TOOLCHAIN_VERSION"] = python + set_version_var(test_vars, python) test_func = FunctionCall(func="run tests", vars=test_vars) return [EvgTask(name=name, tags=tags, commands=[server_func, test_func])] @@ -787,7 +791,7 @@ def create_test_standard_auth_tasks(): name = get_task_name("test-standard-auth", python=python, **expansions) server_func = FunctionCall(func="run server", vars=expansions) test_vars = expansions.copy() - test_vars["TOOLCHAIN_VERSION"] = python + set_version_var(test_vars, python) test_func = FunctionCall(func="run tests", vars=test_vars) tasks.append(EvgTask(name=name, tags=tags, commands=[server_func, test_func])) return tasks @@ -827,7 +831,7 @@ def create_standard_tasks(): name = get_task_name("test-standard", python=python, sync=sync, **expansions) server_func = FunctionCall(func="run server", vars=expansions) test_vars = expansions.copy() - test_vars["TOOLCHAIN_VERSION"] = python + set_version_var(test_vars, python) test_vars["TEST_NAME"] = f"default_{sync}" test_func = FunctionCall(func="run tests", vars=test_vars) tasks.append(EvgTask(name=name, tags=tags, commands=[server_func, test_func])) @@ -842,7 +846,8 @@ def create_no_orchestration_tasks(): f"python-{python}", ] assume_func = FunctionCall(func="assume ec2 role") - test_vars = dict(TOOLCHAIN_VERSION=python) + test_vars = dict() + set_version_var(test_vars, python) if python == ALL_PYTHONS[0]: test_vars["TEST_MIN_DEPS"] = "1" name = get_task_name("test-no-orchestration", **test_vars) @@ -892,7 +897,8 @@ def create_aws_tasks(): tags = [*base_tags, f"auth-aws-{test_type}"] if "t" in python: tags.append("free-threaded") - test_vars = dict(TEST_NAME="auth_aws", SUB_TEST_NAME=test_type, TOOLCHAIN_VERSION=python) + test_vars = dict(TEST_NAME="auth_aws", SUB_TEST_NAME=test_type) + set_version_var(test_vars, python) if python == MIN_MAX_PYTHON[0]: test_vars["TEST_MIN_DEPS"] = "1" elif python == MIN_MAX_PYTHON[-1]: @@ -910,8 +916,8 @@ def create_aws_tasks(): TEST_NAME="auth_aws", SUB_TEST_NAME="web-identity", AWS_ROLE_SESSION_NAME="test", - TOOLCHAIN_VERSION=python, ) + set_version_var(test_vars, python) if "t" in python: tags.append("free-threaded") test_func = FunctionCall(func="run tests", vars=test_vars) @@ -958,11 +964,11 @@ def create_mod_wsgi_tasks(): task_name = "mod-wsgi-embedded-mode-" task_name += topology.replace("_", "-") task_name = get_task_name(task_name, python=python) - server_vars = dict(TOPOLOGY=topology, TOOLCHAIN_VERSION=python) + server_vars = dict(TOPOLOGY=topology) + set_version_var(server_vars, python) server_func = FunctionCall(func="run server", vars=server_vars) - vars = dict( - TEST_NAME="mod_wsgi", SUB_TEST_NAME=test.split("-")[0], TOOLCHAIN_VERSION=python - ) + vars = dict(TEST_NAME="mod_wsgi", SUB_TEST_NAME=test.split("-")[0]) + set_version_var(vars, python) test_func = FunctionCall(func="run tests", vars=vars) tags = ["mod_wsgi", "pr"] commands = [server_func, test_func] @@ -984,9 +990,9 @@ def _create_ocsp_tasks(algo, variant, server_type, base_task_name): ORCHESTRATION_FILE=file_name, OCSP_SERVER_TYPE=server_type, TEST_NAME="ocsp", - TOOLCHAIN_VERSION=python, VERSION=version, ) + set_version_var(vars, python) if python == ALL_PYTHONS[0]: vars["TEST_MIN_DEPS"] = "1" tags = ["ocsp", f"ocsp-{algo}", version] @@ -1316,7 +1322,7 @@ def create_run_tests_func(): def create_test_numpy_func(): - includes = ["TOOLCHAIN_VERSION", "COVERAGE"] + includes = ["TOOLCHAIN_VERSION", "UV_PYTHON", "COVERAGE"] test_cmd = get_subprocess_exec( include_expansions_in_env=includes, args=[".evergreen/just.sh", "test-numpy"] ) diff --git a/.evergreen/scripts/generate_config_utils.py b/.evergreen/scripts/generate_config_utils.py index 296d4e2416..138602564c 100644 --- a/.evergreen/scripts/generate_config_utils.py +++ b/.evergreen/scripts/generate_config_utils.py @@ -22,11 +22,29 @@ ############## ALL_VERSIONS = ["4.4", "5.0", "6.0", "7.0", "8.0", "9.0", "rapid", "latest"] -CPYTHONS = ["3.10", "3.11", "3.12", "3.13", "3.14t", "3.14"] +CPYTHONS = ["3.10", "3.11", "3.12", "3.13", "3.14t", "3.14", "3.15t", "3.15"] PYPYS = ["pypy3.11"] MIN_SUPPORT_VERSIONS = ["3.9", "pypy3.9", "pypy3.10"] ALL_PYTHONS = CPYTHONS + PYPYS MIN_MAX_PYTHON = [CPYTHONS[0], CPYTHONS[-1]] +# Python versions not yet provisioned in the Evergreen toolchain, mapped to +# the exact version uv must be requested to install (uv only installs a +# pre-release when asked for its full version). Drop an entry once the +# toolchain provides the version. +UV_PYTHON_VERSIONS = { + "3.15": "3.15.0rc2", + "3.15t": "3.15.0rc2t", +} + + +def set_version_var(env: dict[str, str], version: str) -> None: + """Set the env var on task vars that selects the given Python version.""" + if version in UV_PYTHON_VERSIONS: + env["UV_PYTHON"] = UV_PYTHON_VERSIONS[version] + else: + env["TOOLCHAIN_VERSION"] = version + + BATCHTIME_WEEK = 10080 BATCHTIME_DAY = 1440 AUTH_SSLS = [("auth", "ssl"), ("noauth", "ssl"), ("noauth", "nossl")] @@ -178,7 +196,7 @@ def get_common_name(base: str, sep: str, **kwargs) -> str: display_name = f"{display_name}{sep}{version}" for key, value in kwargs.items(): name = value - if key.lower() in ["python", "toolchain_version"]: + if key.lower() in ["python", "toolchain_version", "uv_python"]: if not value.startswith("pypy"): name = f"Python{value}" else: diff --git a/.evergreen/scripts/setup-dev-env.sh b/.evergreen/scripts/setup-dev-env.sh index e58d6210fe..fbfcf999a2 100755 --- a/.evergreen/scripts/setup-dev-env.sh +++ b/.evergreen/scripts/setup-dev-env.sh @@ -19,6 +19,21 @@ fi # Handle the value for UV_PYTHON. . $HERE/setup-uv-python.sh +# Ensure a bare-version interpreter is available before it is used. uv +# downloads a managed Python only on explicit request and never offers Python +# pre-releases, so try `uv python install` first and fall back to fetching the +# build ourselves. The fallback is temporary until these versions are in the +# Evergreen toolchain. +if [ -n "${UV_PYTHON:-}" ] && [[ "$UV_PYTHON" != /* ]] && [[ "$UV_PYTHON" != ?:/* ]]; then + if ! uv python install "$UV_PYTHON" >/dev/null 2>&1; then + _interpreter="$(bash $HERE/fetch-python.sh)" || { + echo "Failed to obtain a Python $UV_PYTHON interpreter" >&2 + exit 1 + } + export UV_PYTHON="$_interpreter" + fi +fi + # Ensure dependencies are installed. bash $HERE/install-dependencies.sh diff --git a/.github/workflows/dist.yml b/.github/workflows/dist.yml index a68e2e6281..4a8f60eed7 100644 --- a/.github/workflows/dist.yml +++ b/.github/workflows/dist.yml @@ -73,7 +73,7 @@ jobs: # Note: the default manylinux is manylinux_2_28 run: | python -m pip install -U pip - python -m pip install "cibuildwheel>=3.2.0,<4" + python -m pip install "cibuildwheel>=4.2.0,<5" - name: Build wheels env: @@ -92,8 +92,10 @@ jobs: ls wheelhouse/*cp312*.whl ls wheelhouse/*cp313*.whl ls wheelhouse/*cp314*.whl + ls wheelhouse/*cp315*.whl # Free-threading builds: ls wheelhouse/*cp314t*.whl + ls wheelhouse/*cp315t*.whl - uses: actions/upload-artifact@v7 with: diff --git a/doc/changelog.rst b/doc/changelog.rst index d2f49b7fd8..cfb176cc9f 100644 --- a/doc/changelog.rst +++ b/doc/changelog.rst @@ -1,6 +1,13 @@ Changelog ========= +Changes in Version 4.19.0 (2026/XX/XX) +-------------------------------------- + +PyMongo 4.19 brings a number of changes including: + +- Added support for Python 3.15. + Changes in Version 4.18.0 (2026/09/03) -------------------------------------- diff --git a/pyproject.toml b/pyproject.toml index 346df2f427..2adddcd29b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -36,6 +36,7 @@ classifiers = [ "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", + "Programming Language :: Python :: 3.15", "Topic :: Database", "Typing :: Typed", ] From 82afc1a9425dd86a2c35b9d0c9fc14a60e761553 Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Fri, 4 Sep 2026 17:21:05 -0500 Subject: [PATCH 2/5] PYTHON-6077 Always use UV_PYTHON and prefer toolchain pythons --- .evergreen/generated_configs/functions.yml | 3 - .evergreen/generated_configs/tasks.yml | 608 ++++++++++---------- .evergreen/scripts/generate_config.py | 7 +- .evergreen/scripts/generate_config_utils.py | 9 +- .evergreen/scripts/setup-uv-python.sh | 77 +-- 5 files changed, 355 insertions(+), 349 deletions(-) diff --git a/.evergreen/generated_configs/functions.yml b/.evergreen/generated_configs/functions.yml index 4007838e04..57f1182377 100644 --- a/.evergreen/generated_configs/functions.yml +++ b/.evergreen/generated_configs/functions.yml @@ -102,7 +102,6 @@ functions: - SSL - ORCHESTRATION_FILE - UV_PYTHON - - TOOLCHAIN_VERSION - STORAGE_ENGINE - REQUIRE_API_VERSION - DRIVERS_TOOLS @@ -137,7 +136,6 @@ functions: - UV_PYTHON - LIBMONGOCRYPT_URL - MONGODB_URI - - TOOLCHAIN_VERSION - DISABLE_TEST_COMMANDS - GREEN_FRAMEWORK - NO_EXT @@ -249,7 +247,6 @@ functions: - test-numpy working_dir: src include_expansions_in_env: - - TOOLCHAIN_VERSION - UV_PYTHON - COVERAGE type: test diff --git a/.evergreen/generated_configs/tasks.yml b/.evergreen/generated_configs/tasks.yml index 0debb79b6f..d604770728 100644 --- a/.evergreen/generated_configs/tasks.yml +++ b/.evergreen/generated_configs/tasks.yml @@ -20,7 +20,7 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: regular - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [auth-aws, auth-aws-regular] - name: test-auth-aws-5.0-assume-role-python3.11 @@ -34,7 +34,7 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: assume-role - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" tags: [auth-aws, auth-aws-assume-role] - name: test-auth-aws-6.0-ec2-python3.12 commands: @@ -47,7 +47,7 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: ec2 - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" tags: [auth-aws, auth-aws-ec2] - name: test-auth-aws-7.0-env-creds-python3.13 commands: @@ -60,7 +60,7 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: env-creds - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" tags: [auth-aws, auth-aws-env-creds] - name: test-auth-aws-8.0-session-creds-python3.14t commands: @@ -73,7 +73,7 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: session-creds - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t tags: [auth-aws, auth-aws-session-creds, free-threaded] - name: test-auth-aws-9.0-web-identity-python3.14 commands: @@ -86,7 +86,7 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: web-identity - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" tags: [auth-aws, auth-aws-web-identity] - name: test-auth-aws-9.0-web-identity-session-name-python3.14 commands: @@ -100,7 +100,7 @@ tasks: TEST_NAME: auth_aws SUB_TEST_NAME: web-identity AWS_ROLE_SESSION_NAME: test - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" tags: [auth-aws, auth-aws-web-identity] - name: test-auth-aws-rapid-regular-python3.15.0rc2t commands: @@ -322,60 +322,60 @@ tasks: - func: run server vars: TOPOLOGY: replica_set - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" - func: run tests vars: TEST_NAME: mod_wsgi SUB_TEST_NAME: standalone - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" tags: [mod_wsgi, pr] - name: mod-wsgi-embedded-mode-replica-set-python3.11 commands: - func: run server vars: TOPOLOGY: replica_set - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" - func: run tests vars: TEST_NAME: mod_wsgi SUB_TEST_NAME: embedded - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" tags: [mod_wsgi, pr] - name: mod-wsgi-replica-set-python3.12 commands: - func: run server vars: TOPOLOGY: replica_set - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" - func: run tests vars: TEST_NAME: mod_wsgi SUB_TEST_NAME: standalone - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" tags: [mod_wsgi, pr] - name: mod-wsgi-embedded-mode-replica-set-python3.13 commands: - func: run server vars: TOPOLOGY: replica_set - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" - func: run tests vars: TEST_NAME: mod_wsgi SUB_TEST_NAME: embedded - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" tags: [mod_wsgi, pr] - name: mod-wsgi-embedded-mode-replica-set-python3.14 commands: - func: run server vars: TOPOLOGY: replica_set - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" - func: run tests vars: TEST_NAME: mod_wsgi SUB_TEST_NAME: embedded - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" tags: [mod_wsgi, pr] - name: mod-wsgi-embedded-mode-replica-set-python3.15 commands: @@ -396,7 +396,7 @@ tasks: - func: assume ec2 role - func: run tests vars: - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [test-no-orchestration, python-3.10] - name: test-no-orchestration-python3.15.0rc2 @@ -411,7 +411,7 @@ tasks: - func: assume ec2 role - func: run tests vars: - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: [test-no-orchestration, python-pypy3.11] # No toolchain tests @@ -467,7 +467,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -478,7 +478,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -489,7 +489,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -500,7 +500,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -511,7 +511,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -522,7 +522,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -533,7 +533,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-latest-python3.15.0rc2 @@ -554,7 +554,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -565,7 +565,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -576,7 +576,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -587,7 +587,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -598,7 +598,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -609,7 +609,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -620,7 +620,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 @@ -641,7 +641,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -652,7 +652,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -663,7 +663,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -674,7 +674,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -685,7 +685,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -696,7 +696,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -707,7 +707,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-latest-python3.15.0rc2 @@ -728,7 +728,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -739,7 +739,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -750,7 +750,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -761,7 +761,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -772,7 +772,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -783,7 +783,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -794,7 +794,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 @@ -815,7 +815,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-soft-fail-v5.0-python3.10-min-deps @@ -826,7 +826,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-soft-fail-v6.0-python3.10-min-deps @@ -837,7 +837,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-soft-fail-v7.0-python3.10-min-deps @@ -848,7 +848,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-soft-fail-v8.0-python3.10-min-deps @@ -859,7 +859,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-soft-fail-v9.0-python3.10-min-deps @@ -870,7 +870,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-soft-fail-rapid-python3.10-min-deps @@ -881,7 +881,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - name: test-ocsp-ecdsa-soft-fail-latest-python3.15.0rc2 @@ -902,7 +902,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -917,7 +917,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -932,7 +932,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -947,7 +947,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -962,7 +962,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -977,7 +977,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -992,7 +992,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1023,7 +1023,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1038,7 +1038,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1053,7 +1053,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1068,7 +1068,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1083,7 +1083,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1098,7 +1098,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1113,7 +1113,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1142,7 +1142,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1157,7 +1157,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1172,7 +1172,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1187,7 +1187,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1202,7 +1202,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1217,7 +1217,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1232,7 +1232,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1261,7 +1261,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1276,7 +1276,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1291,7 +1291,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1306,7 +1306,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1321,7 +1321,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1336,7 +1336,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1351,7 +1351,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -1380,7 +1380,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-v5.0-python3.10-min-deps @@ -1391,7 +1391,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-v6.0-python3.10-min-deps @@ -1402,7 +1402,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-v7.0-python3.10-min-deps @@ -1413,7 +1413,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-v8.0-python3.10-min-deps @@ -1424,7 +1424,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-v9.0-python3.10-min-deps @@ -1435,7 +1435,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-rapid-python3.10-min-deps @@ -1446,7 +1446,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 @@ -1467,7 +1467,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v5.0-python3.10-min-deps @@ -1478,7 +1478,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v6.0-python3.10-min-deps @@ -1489,7 +1489,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v7.0-python3.10-min-deps @@ -1500,7 +1500,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v8.0-python3.10-min-deps @@ -1511,7 +1511,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v9.0-python3.10-min-deps @@ -1522,7 +1522,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-rapid-python3.10-min-deps @@ -1533,7 +1533,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 @@ -1554,7 +1554,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "4.4"] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-v5.0-python3.10-min-deps @@ -1565,7 +1565,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "5.0"] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-v6.0-python3.10-min-deps @@ -1576,7 +1576,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "6.0"] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-v7.0-python3.10-min-deps @@ -1587,7 +1587,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "7.0"] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-v8.0-python3.10-min-deps @@ -1598,7 +1598,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "8.0"] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-v9.0-python3.10-min-deps @@ -1609,7 +1609,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, "9.0"] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-rapid-python3.10-min-deps @@ -1620,7 +1620,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.15.0rc2 @@ -1641,7 +1641,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -1652,7 +1652,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -1663,7 +1663,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -1674,7 +1674,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -1685,7 +1685,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -1696,7 +1696,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -1707,7 +1707,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-latest-python3.15.0rc2 @@ -1728,7 +1728,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -1739,7 +1739,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -1750,7 +1750,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -1761,7 +1761,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -1772,7 +1772,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -1783,7 +1783,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -1794,7 +1794,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 @@ -1815,7 +1815,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -1826,7 +1826,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -1837,7 +1837,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -1848,7 +1848,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -1859,7 +1859,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -1870,7 +1870,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -1881,7 +1881,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-latest-python3.15.0rc2 @@ -1902,7 +1902,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-v5.0-python3.10-min-deps @@ -1913,7 +1913,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-v6.0-python3.10-min-deps @@ -1924,7 +1924,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-v7.0-python3.10-min-deps @@ -1935,7 +1935,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-v8.0-python3.10-min-deps @@ -1946,7 +1946,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-v9.0-python3.10-min-deps @@ -1957,7 +1957,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-rapid-python3.10-min-deps @@ -1968,7 +1968,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 @@ -1989,7 +1989,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-soft-fail-v5.0-python3.10-min-deps @@ -2000,7 +2000,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-soft-fail-v6.0-python3.10-min-deps @@ -2011,7 +2011,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-soft-fail-v7.0-python3.10-min-deps @@ -2022,7 +2022,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-soft-fail-v8.0-python3.10-min-deps @@ -2033,7 +2033,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-soft-fail-v9.0-python3.10-min-deps @@ -2044,7 +2044,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-soft-fail-rapid-python3.10-min-deps @@ -2055,7 +2055,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - name: test-ocsp-rsa-soft-fail-latest-python3.15.0rc2 @@ -2076,7 +2076,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2091,7 +2091,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2106,7 +2106,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2121,7 +2121,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2136,7 +2136,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2151,7 +2151,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2166,7 +2166,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2197,7 +2197,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2212,7 +2212,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2227,7 +2227,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2242,7 +2242,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2257,7 +2257,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2272,7 +2272,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2287,7 +2287,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2316,7 +2316,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2331,7 +2331,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2346,7 +2346,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2361,7 +2361,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2376,7 +2376,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2391,7 +2391,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2406,7 +2406,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2435,7 +2435,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2450,7 +2450,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2465,7 +2465,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2480,7 +2480,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2495,7 +2495,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2510,7 +2510,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2525,7 +2525,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: - ocsp @@ -2554,7 +2554,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-v5.0-python3.10-min-deps @@ -2565,7 +2565,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-v6.0-python3.10-min-deps @@ -2576,7 +2576,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-v7.0-python3.10-min-deps @@ -2587,7 +2587,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-v8.0-python3.10-min-deps @@ -2598,7 +2598,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-v9.0-python3.10-min-deps @@ -2609,7 +2609,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-rapid-python3.10-min-deps @@ -2620,7 +2620,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 @@ -2641,7 +2641,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v5.0-python3.10-min-deps @@ -2652,7 +2652,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v6.0-python3.10-min-deps @@ -2663,7 +2663,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v7.0-python3.10-min-deps @@ -2674,7 +2674,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v8.0-python3.10-min-deps @@ -2685,7 +2685,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v9.0-python3.10-min-deps @@ -2696,7 +2696,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-rapid-python3.10-min-deps @@ -2707,7 +2707,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 @@ -2728,7 +2728,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "4.4" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "4.4"] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-v5.0-python3.10-min-deps @@ -2739,7 +2739,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "5.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "5.0"] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-v6.0-python3.10-min-deps @@ -2750,7 +2750,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "6.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "6.0"] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-v7.0-python3.10-min-deps @@ -2761,7 +2761,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "7.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "7.0"] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-v8.0-python3.10-min-deps @@ -2772,7 +2772,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "8.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "8.0"] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-v9.0-python3.10-min-deps @@ -2783,7 +2783,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: "9.0" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, "9.0"] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-rapid-python3.10-min-deps @@ -2794,7 +2794,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: rapid - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.15.0rc2 @@ -2916,7 +2916,7 @@ tasks: - func: run tests vars: TEST_NAME: search_index - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" tags: [search_index] # Server version tests @@ -2932,7 +2932,7 @@ tasks: AUTH: auth SSL: nossl TOPOLOGY: replica_set - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" TEST_NAME: default_async tags: - server-version @@ -2951,7 +2951,7 @@ tasks: AUTH: auth SSL: nossl TOPOLOGY: replica_set - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" TEST_NAME: default_sync tags: - server-version @@ -2972,7 +2972,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_NAME: default_async tags: - server-version @@ -2991,7 +2991,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: replica_set - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 TEST_NAME: default_sync tags: - server-version @@ -3035,7 +3035,7 @@ tasks: SSL: nossl TOPOLOGY: replica_set COVERAGE: "1" - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" TEST_NAME: default_sync tags: - server-version @@ -3055,7 +3055,7 @@ tasks: AUTH: noauth SSL: ssl TOPOLOGY: replica_set - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t TEST_NAME: default_async tags: - server-version @@ -3075,7 +3075,7 @@ tasks: AUTH: noauth SSL: ssl TOPOLOGY: replica_set - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" TEST_NAME: default_sync tags: - server-version @@ -3094,7 +3094,7 @@ tasks: AUTH: auth SSL: nossl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" TEST_NAME: default_async tags: - server-version @@ -3115,7 +3115,7 @@ tasks: SSL: nossl TOPOLOGY: sharded_cluster TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_NAME: default_sync tags: - server-version @@ -3138,7 +3138,7 @@ tasks: TOPOLOGY: sharded_cluster TEST_MIN_DEPS: "1" COVERAGE: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_NAME: default_async tags: - server-version @@ -3158,7 +3158,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" TEST_NAME: default_async tags: - server-version @@ -3177,7 +3177,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" TEST_NAME: default_async tags: - server-version @@ -3196,7 +3196,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" TEST_NAME: default_async tags: - server-version @@ -3215,7 +3215,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" TEST_NAME: default_async tags: - server-version @@ -3234,7 +3234,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t TEST_NAME: default_async tags: - server-version @@ -3293,7 +3293,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 TEST_NAME: default_async tags: - server-version @@ -3316,7 +3316,7 @@ tasks: TOPOLOGY: sharded_cluster TEST_MIN_DEPS: "1" COVERAGE: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_NAME: default_sync tags: - server-version @@ -3336,7 +3336,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" TEST_NAME: default_sync tags: - server-version @@ -3355,7 +3355,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" TEST_NAME: default_sync tags: - server-version @@ -3374,7 +3374,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" TEST_NAME: default_sync tags: - server-version @@ -3393,7 +3393,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" TEST_NAME: default_sync tags: - server-version @@ -3412,7 +3412,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t TEST_NAME: default_sync tags: - server-version @@ -3471,7 +3471,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 TEST_NAME: default_sync tags: - server-version @@ -3490,7 +3490,7 @@ tasks: AUTH: noauth SSL: nossl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" TEST_NAME: default_async tags: - server-version @@ -3509,7 +3509,7 @@ tasks: AUTH: noauth SSL: nossl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t TEST_NAME: default_sync tags: - server-version @@ -3529,7 +3529,7 @@ tasks: AUTH: noauth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" TEST_NAME: default_async tags: - server-version @@ -3548,7 +3548,7 @@ tasks: AUTH: noauth SSL: ssl TOPOLOGY: sharded_cluster - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" TEST_NAME: default_sync tags: - server-version @@ -3567,7 +3567,7 @@ tasks: AUTH: auth SSL: nossl TOPOLOGY: standalone - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" TEST_NAME: default_async tags: - server-version @@ -3586,7 +3586,7 @@ tasks: AUTH: auth SSL: nossl TOPOLOGY: standalone - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" TEST_NAME: default_sync tags: - server-version @@ -3605,7 +3605,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: standalone - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" TEST_NAME: default_async tags: - server-version @@ -3626,7 +3626,7 @@ tasks: SSL: ssl TOPOLOGY: standalone TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_NAME: default_sync tags: - server-version @@ -3690,7 +3690,7 @@ tasks: AUTH: noauth SSL: ssl TOPOLOGY: standalone - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" TEST_NAME: default_async tags: - server-version @@ -3709,7 +3709,7 @@ tasks: AUTH: noauth SSL: ssl TOPOLOGY: standalone - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t TEST_NAME: default_sync tags: - server-version @@ -3733,7 +3733,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "4.4" - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" TEST_NAME: default_sync tags: - test-standard @@ -3755,7 +3755,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "4.4" - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" TEST_NAME: default_sync tags: - test-standard @@ -3777,7 +3777,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "4.4" - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" TEST_NAME: default_sync tags: - test-standard @@ -3824,7 +3824,7 @@ tasks: TOPOLOGY: standalone VERSION: "4.4" TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_NAME: default_sync tags: - test-standard @@ -3846,7 +3846,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "4.4" - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t TEST_NAME: default_sync tags: - test-standard @@ -3869,7 +3869,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "4.4" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 TEST_NAME: default_sync tags: - test-standard @@ -3892,7 +3892,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "5.0" - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" TEST_NAME: default_async tags: - test-standard @@ -3914,7 +3914,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "5.0" - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" TEST_NAME: default_async tags: - test-standard @@ -3936,7 +3936,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "5.0" - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" TEST_NAME: default_async tags: - test-standard @@ -3983,7 +3983,7 @@ tasks: TOPOLOGY: standalone VERSION: "5.0" TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_NAME: default_async tags: - test-standard @@ -4005,7 +4005,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "5.0" - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t TEST_NAME: default_async tags: - test-standard @@ -4028,7 +4028,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "5.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 TEST_NAME: default_async tags: - test-standard @@ -4053,7 +4053,7 @@ tasks: TOPOLOGY: replica_set VERSION: "6.0" TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_NAME: default_sync tags: - test-standard @@ -4075,7 +4075,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "6.0" - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t TEST_NAME: default_sync tags: - test-standard @@ -4098,7 +4098,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "6.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 TEST_NAME: default_sync tags: - test-standard @@ -4121,7 +4121,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "6.0" - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" TEST_NAME: default_sync tags: - test-standard @@ -4143,7 +4143,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "6.0" - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" TEST_NAME: default_sync tags: - test-standard @@ -4165,7 +4165,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "6.0" - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" TEST_NAME: default_sync tags: - test-standard @@ -4211,7 +4211,7 @@ tasks: TOPOLOGY: replica_set VERSION: "7.0" TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_NAME: default_async tags: - test-standard @@ -4233,7 +4233,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "7.0" - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t TEST_NAME: default_async tags: - test-standard @@ -4256,7 +4256,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "7.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 TEST_NAME: default_async tags: - test-standard @@ -4279,7 +4279,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "7.0" - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" TEST_NAME: default_async tags: - test-standard @@ -4301,7 +4301,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "7.0" - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" TEST_NAME: default_async tags: - test-standard @@ -4323,7 +4323,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "7.0" - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" TEST_NAME: default_async tags: - test-standard @@ -4367,7 +4367,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "8.0" - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" TEST_NAME: default_sync tags: - test-standard @@ -4413,7 +4413,7 @@ tasks: TOPOLOGY: sharded_cluster VERSION: "8.0" TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_NAME: default_sync tags: - test-standard @@ -4435,7 +4435,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "8.0" - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t TEST_NAME: default_sync tags: - test-standard @@ -4458,7 +4458,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "8.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 TEST_NAME: default_sync tags: - test-standard @@ -4481,7 +4481,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "8.0" - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" TEST_NAME: default_sync tags: - test-standard @@ -4526,7 +4526,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "9.0" - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" TEST_NAME: default_async tags: - test-standard @@ -4572,7 +4572,7 @@ tasks: TOPOLOGY: sharded_cluster VERSION: "9.0" TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" TEST_NAME: default_async tags: - test-standard @@ -4594,7 +4594,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "9.0" - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t TEST_NAME: default_async tags: - test-standard @@ -4617,7 +4617,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "9.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 TEST_NAME: default_async tags: - test-standard @@ -4640,7 +4640,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "9.0" - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" TEST_NAME: default_async tags: - test-standard @@ -4687,7 +4687,7 @@ tasks: TOPOLOGY: replica_set VERSION: latest COVERAGE: "1" - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" TEST_NAME: default_async tags: - test-standard @@ -4738,7 +4738,7 @@ tasks: TOPOLOGY: sharded_cluster VERSION: latest COVERAGE: "1" - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" TEST_NAME: default_async tags: - test-standard @@ -4788,7 +4788,7 @@ tasks: TOPOLOGY: standalone VERSION: latest COVERAGE: "1" - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" TEST_NAME: default_async tags: - test-standard @@ -4813,7 +4813,7 @@ tasks: TOPOLOGY: standalone VERSION: latest COVERAGE: "1" - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" TEST_NAME: default_async tags: - test-standard @@ -4836,7 +4836,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: rapid - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" TEST_NAME: default_sync tags: - test-standard @@ -4881,7 +4881,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: rapid - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" TEST_NAME: default_sync tags: - test-standard @@ -4925,7 +4925,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: rapid - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" TEST_NAME: default_sync tags: - test-standard @@ -4947,7 +4947,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: rapid - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" TEST_NAME: default_sync tags: - test-standard @@ -4994,7 +4994,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "4.4" - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" tags: - test-non-standard - server-4.4 @@ -5015,7 +5015,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "4.4" - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" tags: - test-non-standard - server-4.4 @@ -5038,7 +5038,7 @@ tasks: TOPOLOGY: standalone VERSION: "4.4" TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" tags: - test-non-standard - server-4.4 @@ -5059,7 +5059,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "4.4" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-non-standard - server-4.4 @@ -5081,7 +5081,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "5.0" - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t tags: - test-non-standard - server-5.0 @@ -5103,7 +5103,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "5.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-non-standard - server-5.0 @@ -5125,7 +5125,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "5.0" - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" tags: - test-non-standard - server-5.0 @@ -5146,7 +5146,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "5.0" - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" tags: - test-non-standard - server-5.0 @@ -5190,7 +5190,7 @@ tasks: TOPOLOGY: sharded_cluster VERSION: "6.0" TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" tags: - test-non-standard - server-6.0 @@ -5211,7 +5211,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "6.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-non-standard - server-6.0 @@ -5255,7 +5255,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "7.0" - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" tags: - test-non-standard - server-7.0 @@ -5276,7 +5276,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "7.0" - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" tags: - test-non-standard - server-7.0 @@ -5297,7 +5297,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "7.0" - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" tags: - test-non-standard - server-7.0 @@ -5318,7 +5318,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "7.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-non-standard - server-7.0 @@ -5340,7 +5340,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "8.0" - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" tags: - test-non-standard - server-8.0 @@ -5361,7 +5361,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "8.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-non-standard - server-8.0 @@ -5405,7 +5405,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "8.0" - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t tags: - test-non-standard - server-8.0 @@ -5429,7 +5429,7 @@ tasks: TOPOLOGY: replica_set VERSION: "9.0" TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" tags: - test-non-standard - server-9.0 @@ -5450,7 +5450,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "9.0" - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" tags: - test-non-standard - server-9.0 @@ -5471,7 +5471,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "9.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-non-standard - server-9.0 @@ -5536,7 +5536,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: latest - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-non-standard - server-latest @@ -5605,7 +5605,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: latest - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" tags: - test-non-standard - server-latest @@ -5626,7 +5626,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: rapid - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" tags: - test-non-standard - server-rapid @@ -5647,7 +5647,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: rapid - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t tags: - test-non-standard - server-rapid @@ -5669,7 +5669,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: rapid - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" tags: - test-non-standard - server-rapid @@ -5690,7 +5690,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: rapid - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-non-standard - server-rapid @@ -5704,7 +5704,7 @@ tasks: commands: - func: test numpy vars: - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" tags: - binary - vector @@ -5740,7 +5740,7 @@ tasks: TOPOLOGY: sharded_cluster VERSION: "4.4" TEST_MIN_DEPS: "1" - TOOLCHAIN_VERSION: "3.10" + UV_PYTHON: "3.10" tags: - test-standard-auth - server-4.4 @@ -5761,7 +5761,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "4.4" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-standard-auth - server-4.4 @@ -5783,7 +5783,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "5.0" - TOOLCHAIN_VERSION: "3.11" + UV_PYTHON: "3.11" tags: - test-standard-auth - server-5.0 @@ -5804,7 +5804,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "5.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-standard-auth - server-5.0 @@ -5826,7 +5826,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "6.0" - TOOLCHAIN_VERSION: "3.12" + UV_PYTHON: "3.12" tags: - test-standard-auth - server-6.0 @@ -5847,7 +5847,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "6.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-standard-auth - server-6.0 @@ -5869,7 +5869,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "7.0" - TOOLCHAIN_VERSION: "3.13" + UV_PYTHON: "3.13" tags: - test-standard-auth - server-7.0 @@ -5890,7 +5890,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "7.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-standard-auth - server-7.0 @@ -5912,7 +5912,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "8.0" - TOOLCHAIN_VERSION: 3.14t + UV_PYTHON: 3.14t tags: - test-standard-auth - server-8.0 @@ -5934,7 +5934,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "8.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-standard-auth - server-8.0 @@ -5956,7 +5956,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "9.0" - TOOLCHAIN_VERSION: "3.14" + UV_PYTHON: "3.14" tags: - test-standard-auth - server-9.0 @@ -5977,7 +5977,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "9.0" - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-standard-auth - server-9.0 @@ -6023,7 +6023,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: latest - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-standard-auth - server-latest @@ -6067,7 +6067,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: rapid - TOOLCHAIN_VERSION: pypy3.11 + UV_PYTHON: pypy3.11 tags: - test-standard-auth - server-rapid diff --git a/.evergreen/scripts/generate_config.py b/.evergreen/scripts/generate_config.py index 631aaedccb..20878e6acc 100644 --- a/.evergreen/scripts/generate_config.py +++ b/.evergreen/scripts/generate_config.py @@ -1040,7 +1040,8 @@ def create_aws_lambda_tasks(): def create_search_index_tasks(): assume_func = FunctionCall(func="assume ec2 role") server_func = FunctionCall(func="run server", vars=dict(TEST_NAME="search_index")) - vars = dict(TEST_NAME="search_index", TOOLCHAIN_VERSION=CPYTHONS[0]) + vars = dict(TEST_NAME="search_index") + set_version_var(vars, CPYTHONS[0]) test_func = FunctionCall(func="run tests", vars=vars) task_name = "test-search-index-helpers" tags = ["search_index"] @@ -1272,7 +1273,6 @@ def create_run_server_func(): "SSL", "ORCHESTRATION_FILE", "UV_PYTHON", - "TOOLCHAIN_VERSION", "STORAGE_ENGINE", "REQUIRE_API_VERSION", "DRIVERS_TOOLS", @@ -1299,7 +1299,6 @@ def create_run_tests_func(): "UV_PYTHON", "LIBMONGOCRYPT_URL", "MONGODB_URI", - "TOOLCHAIN_VERSION", "DISABLE_TEST_COMMANDS", "GREEN_FRAMEWORK", "NO_EXT", @@ -1322,7 +1321,7 @@ def create_run_tests_func(): def create_test_numpy_func(): - includes = ["TOOLCHAIN_VERSION", "UV_PYTHON", "COVERAGE"] + includes = ["UV_PYTHON", "COVERAGE"] test_cmd = get_subprocess_exec( include_expansions_in_env=includes, args=[".evergreen/just.sh", "test-numpy"] ) diff --git a/.evergreen/scripts/generate_config_utils.py b/.evergreen/scripts/generate_config_utils.py index 138602564c..341dcabcd3 100644 --- a/.evergreen/scripts/generate_config_utils.py +++ b/.evergreen/scripts/generate_config_utils.py @@ -27,8 +27,8 @@ MIN_SUPPORT_VERSIONS = ["3.9", "pypy3.9", "pypy3.10"] ALL_PYTHONS = CPYTHONS + PYPYS MIN_MAX_PYTHON = [CPYTHONS[0], CPYTHONS[-1]] -# Python versions not yet provisioned in the Evergreen toolchain, mapped to -# the exact version uv must be requested to install (uv only installs a +# Python versions that are not provisioned in the Evergreen toolchain, mapped +# to the exact version uv must be requested to install (uv only installs a # pre-release when asked for its full version). Drop an entry once the # toolchain provides the version. UV_PYTHON_VERSIONS = { @@ -39,10 +39,7 @@ def set_version_var(env: dict[str, str], version: str) -> None: """Set the env var on task vars that selects the given Python version.""" - if version in UV_PYTHON_VERSIONS: - env["UV_PYTHON"] = UV_PYTHON_VERSIONS[version] - else: - env["TOOLCHAIN_VERSION"] = version + env["UV_PYTHON"] = UV_PYTHON_VERSIONS.get(version, version) BATCHTIME_WEEK = 10080 diff --git a/.evergreen/scripts/setup-uv-python.sh b/.evergreen/scripts/setup-uv-python.sh index e83abce4b9..8ad8c461aa 100755 --- a/.evergreen/scripts/setup-uv-python.sh +++ b/.evergreen/scripts/setup-uv-python.sh @@ -1,5 +1,5 @@ #!/bin/bash -# Set up the UV_PYTHON variable. +# Set up the UV_PYTHON variable and put the toolchain pythons on the path. set -eu HERE=$(dirname ${BASH_SOURCE:-$0}) @@ -18,43 +18,56 @@ if [ -f $HERE/test-env.sh ]; then . $HERE/test-env.sh fi +# Always use UV_PYTHON to select the Python version. if [ -z "${UV_PYTHON:-}" ]; then - set -x - # Translate a TOOLCHAIN_VERSION to UV_PYTHON. - if [ -n "${TOOLCHAIN_VERSION:-}" ]; then - _python=$TOOLCHAIN_VERSION - if [ "$(uname -s)" = "Darwin" ]; then - if [[ "$_python" == *"t"* ]]; then - binary_name="python3t" - framework_dir="PythonT" - else - binary_name="python3" - framework_dir="Python" - fi - _python=$(echo "$_python" | sed 's/t//g') - _python="/Library/Frameworks/$framework_dir.Framework/Versions/$_python/bin/$binary_name" - elif [ "Windows_NT" = "${OS:-}" ]; then - _python=$(echo $_python | cut -d. -f1,2 | sed 's/\.//g; s/t//g') - if [[ "$TOOLCHAIN_VERSION" == *"t"* ]]; then - _exe="python${TOOLCHAIN_VERSION}.exe" + export UV_PYTHON="$_python" +fi + +# Prefer a toolchain (system) python over a uv-managed download: resolve a +# bare version like 3.10 or 3.14t to the toolchain interpreter when one is +# installed, and put its directory on the path. Anything else (a path, or a +# version uv must install itself, such as a pre-release) is left alone. +if [[ "$UV_PYTHON" =~ ^3\.[0-9]+t?$ ]]; then + case "$(uname -s)" in + Darwin) + if [[ "$UV_PYTHON" == *"t"* ]]; then + binary_name="python3t" + framework_dir="PythonT" + else + binary_name="python3" + framework_dir="Python" + fi + _version="${UV_PYTHON%t}" + _bin_dir="/Library/Frameworks/${framework_dir}.Framework/Versions/$_version/bin" + if [ -x "$_bin_dir/$binary_name" ]; then + export UV_PYTHON="$_bin_dir/$binary_name" + export PATH="$_bin_dir:$PATH" + fi + ;; + *) + if [ "Windows_NT" = "${OS:-}" ]; then + _dir=$(echo "$UV_PYTHON" | cut -d. -f1,2 | sed 's/\.//g; s/t//g') + if [[ "$UV_PYTHON" == *"t"* ]]; then + _exe="python${UV_PYTHON}.exe" else _exe="python.exe" fi if [ -n "${IS_WIN32:-}" ]; then - _win_python="C:/python/32/Python${_python}/${_exe}" + _bin_dir="C:/python/32/Python${_dir}" else - _win_python="C:/python/Python${_python}/${_exe}" + _bin_dir="C:/python/Python${_dir}" fi - # Fall back to the version string if the toolchain path doesn't exist. - # uv will then download and manage Python itself. - if [ -f "$_win_python" ]; then - _python="$_win_python" - else - _python="$TOOLCHAIN_VERSION" + if [ -f "$_bin_dir/$_exe" ]; then + export UV_PYTHON="$_bin_dir/$_exe" + export PATH="$_bin_dir:$PATH" fi - elif [ -d "/opt/python/$_python/bin" ]; then - _python="/opt/python/$_python/bin/python3" - fi - fi - export UV_PYTHON="$_python" + else + _bin_dir="/opt/python/$UV_PYTHON/bin" + if [ -x "$_bin_dir/python3" ]; then + export UV_PYTHON="$_bin_dir/python3" + export PATH="$_bin_dir:$PATH" + fi + fi + ;; + esac fi From 78b8a2ec30337bb4d5ad53a65e9c00a33bd6a49d Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Fri, 4 Sep 2026 19:16:44 -0500 Subject: [PATCH 3/5] PYTHON-6077 Drop the python-build-standalone fallback for 3.15 --- .evergreen/generated_configs/tasks.yml | 174 ++++++++++---------- .evergreen/scripts/fetch-python.sh | 44 ----- .evergreen/scripts/generate_config_utils.py | 10 +- .evergreen/scripts/setup-dev-env.sh | 16 +- 4 files changed, 92 insertions(+), 152 deletions(-) delete mode 100755 .evergreen/scripts/fetch-python.sh diff --git a/.evergreen/generated_configs/tasks.yml b/.evergreen/generated_configs/tasks.yml index 455da31474..15f90775de 100644 --- a/.evergreen/generated_configs/tasks.yml +++ b/.evergreen/generated_configs/tasks.yml @@ -102,7 +102,7 @@ tasks: AWS_ROLE_SESSION_NAME: test UV_PYTHON: "3.14" tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-rapid-regular-python3.15.0rc2t + - name: test-auth-aws-rapid-regular-python3.15t commands: - func: run server vars: @@ -113,9 +113,9 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: regular - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t tags: [auth-aws, auth-aws-regular, free-threaded] - - name: test-auth-aws-latest-assume-role-python3.15.0rc2-cov + - name: test-auth-aws-latest-assume-role-python3.15-cov commands: - func: run server vars: @@ -126,7 +126,7 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: assume-role - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" COVERAGE: "1" tags: [auth-aws, auth-aws-assume-role, pr] - name: test-auth-aws-ecs @@ -382,12 +382,12 @@ tasks: - func: run server vars: TOPOLOGY: replica_set - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" - func: run tests vars: TEST_NAME: mod_wsgi SUB_TEST_NAME: embedded - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [mod_wsgi, pr] # No orchestration tests @@ -399,12 +399,12 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [test-no-orchestration, python-3.10] - - name: test-no-orchestration-python3.15.0rc2 + - name: test-no-orchestration-python3.15 commands: - func: assume ec2 role - func: run tests vars: - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [test-no-orchestration, python-3.15] - name: test-no-orchestration-pypy3.11 commands: @@ -536,7 +536,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -544,7 +544,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -623,7 +623,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -631,7 +631,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -710,7 +710,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -718,7 +718,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -797,7 +797,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -805,7 +805,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-soft-fail-v4.4-python3.10-min-deps commands: @@ -884,7 +884,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-soft-fail-latest-python3.15.0rc2 + - name: test-ocsp-ecdsa-soft-fail-latest-python3.15 commands: - func: run tests vars: @@ -892,7 +892,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-valid-cert-server-staples-v4.4-python3.10-min-deps commands: @@ -1000,7 +1000,7 @@ tasks: - ocsp-ecdsa - rapid - ocsp-staple - - name: test-ocsp-ecdsa-valid-cert-server-staples-latest-python3.15.0rc2-cov + - name: test-ocsp-ecdsa-valid-cert-server-staples-latest-python3.15-cov commands: - func: run tests vars: @@ -1008,7 +1008,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" COVERAGE: "1" tags: - ocsp @@ -1121,7 +1121,7 @@ tasks: - ocsp-ecdsa - rapid - ocsp-staple - - name: test-ocsp-ecdsa-invalid-cert-server-staples-latest-python3.15.0rc2 + - name: test-ocsp-ecdsa-invalid-cert-server-staples-latest-python3.15 commands: - func: run tests vars: @@ -1129,7 +1129,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: - ocsp - ocsp-ecdsa @@ -1240,7 +1240,7 @@ tasks: - ocsp-ecdsa - rapid - ocsp-staple - - name: test-ocsp-ecdsa-delegate-valid-cert-server-staples-latest-python3.15.0rc2 + - name: test-ocsp-ecdsa-delegate-valid-cert-server-staples-latest-python3.15 commands: - func: run tests vars: @@ -1248,7 +1248,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: - ocsp - ocsp-ecdsa @@ -1359,7 +1359,7 @@ tasks: - ocsp-ecdsa - rapid - ocsp-staple - - name: test-ocsp-ecdsa-delegate-invalid-cert-server-staples-latest-python3.15.0rc2 + - name: test-ocsp-ecdsa-delegate-invalid-cert-server-staples-latest-python3.15 commands: - func: run tests vars: @@ -1367,7 +1367,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: - ocsp - ocsp-ecdsa @@ -1450,7 +1450,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -1458,7 +1458,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1537,7 +1537,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -1545,7 +1545,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1624,7 +1624,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -1632,7 +1632,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1711,7 +1711,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-valid-cert-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-rsa-valid-cert-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -1719,7 +1719,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1798,7 +1798,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -1806,7 +1806,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1885,7 +1885,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -1893,7 +1893,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1972,7 +1972,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -1980,7 +1980,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-soft-fail-v4.4-python3.10-min-deps commands: @@ -2059,7 +2059,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-soft-fail-latest-python3.15.0rc2 + - name: test-ocsp-rsa-soft-fail-latest-python3.15 commands: - func: run tests vars: @@ -2067,7 +2067,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-valid-cert-server-staples-v4.4-python3.10-min-deps commands: @@ -2174,7 +2174,7 @@ tasks: - ocsp-rsa - rapid - ocsp-staple - - name: test-ocsp-rsa-valid-cert-server-staples-latest-python3.15.0rc2 + - name: test-ocsp-rsa-valid-cert-server-staples-latest-python3.15 commands: - func: run tests vars: @@ -2182,7 +2182,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: - ocsp - ocsp-rsa @@ -2293,7 +2293,7 @@ tasks: - ocsp-rsa - rapid - ocsp-staple - - name: test-ocsp-rsa-invalid-cert-server-staples-latest-python3.15.0rc2 + - name: test-ocsp-rsa-invalid-cert-server-staples-latest-python3.15 commands: - func: run tests vars: @@ -2301,7 +2301,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: - ocsp - ocsp-rsa @@ -2412,7 +2412,7 @@ tasks: - ocsp-rsa - rapid - ocsp-staple - - name: test-ocsp-rsa-delegate-valid-cert-server-staples-latest-python3.15.0rc2 + - name: test-ocsp-rsa-delegate-valid-cert-server-staples-latest-python3.15 commands: - func: run tests vars: @@ -2420,7 +2420,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: - ocsp - ocsp-rsa @@ -2531,7 +2531,7 @@ tasks: - ocsp-rsa - rapid - ocsp-staple - - name: test-ocsp-rsa-delegate-invalid-cert-server-staples-latest-python3.15.0rc2 + - name: test-ocsp-rsa-delegate-invalid-cert-server-staples-latest-python3.15 commands: - func: run tests vars: @@ -2539,7 +2539,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: - ocsp - ocsp-rsa @@ -2622,7 +2622,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -2630,7 +2630,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -2709,7 +2709,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -2717,7 +2717,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -2796,7 +2796,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.15.0rc2 + - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.15 commands: - func: run tests vars: @@ -2804,7 +2804,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: [ocsp, ocsp-rsa, latest] # Oidc tests @@ -3011,7 +3011,7 @@ tasks: SSL: nossl TOPOLOGY: replica_set COVERAGE: "1" - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t TEST_NAME: default_async tags: - server-version @@ -3253,7 +3253,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" TEST_NAME: default_async tags: - server-version @@ -3272,7 +3272,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t TEST_NAME: default_async tags: - server-version @@ -3431,7 +3431,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" TEST_NAME: default_sync tags: - server-version @@ -3450,7 +3450,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t TEST_NAME: default_sync tags: - server-version @@ -3646,7 +3646,7 @@ tasks: SSL: nossl TOPOLOGY: standalone COVERAGE: "1" - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" TEST_NAME: default_async tags: - server-version @@ -3668,7 +3668,7 @@ tasks: SSL: nossl TOPOLOGY: standalone COVERAGE: "1" - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t TEST_NAME: default_sync tags: - server-version @@ -3798,7 +3798,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "4.4" - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t TEST_NAME: default_sync tags: - test-standard @@ -3957,7 +3957,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "5.0" - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t TEST_NAME: default_async tags: - test-standard @@ -4186,7 +4186,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "6.0" - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" TEST_NAME: default_sync tags: - test-standard @@ -4344,7 +4344,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "7.0" - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" TEST_NAME: default_async tags: - test-standard @@ -4388,7 +4388,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "8.0" - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" TEST_NAME: default_sync tags: - test-standard @@ -4502,7 +4502,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "8.0" - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t TEST_NAME: default_sync tags: - test-standard @@ -4547,7 +4547,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "9.0" - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" TEST_NAME: default_async tags: - test-standard @@ -4661,7 +4661,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "9.0" - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t TEST_NAME: default_async tags: - test-standard @@ -4711,7 +4711,7 @@ tasks: TOPOLOGY: replica_set VERSION: latest COVERAGE: "1" - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t TEST_NAME: default_async tags: - test-standard @@ -4762,7 +4762,7 @@ tasks: TOPOLOGY: sharded_cluster VERSION: latest COVERAGE: "1" - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" TEST_NAME: default_async tags: - test-standard @@ -4857,7 +4857,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: rapid - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t TEST_NAME: default_sync tags: - test-standard @@ -4902,7 +4902,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: rapid - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" TEST_NAME: default_sync tags: - test-standard @@ -4970,7 +4970,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "8.2" - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: - test-string-query-preview - server-8.2 @@ -5166,7 +5166,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "6.0" - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: - test-non-standard - server-6.0 @@ -5232,7 +5232,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "6.0" - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t tags: - test-non-standard - server-6.0 @@ -5382,7 +5382,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "8.0" - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t tags: - test-non-standard - server-8.0 @@ -5492,7 +5492,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "9.0" - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: - test-non-standard - server-9.0 @@ -5513,7 +5513,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: latest - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t tags: - test-non-standard - server-latest @@ -5559,7 +5559,7 @@ tasks: TOPOLOGY: sharded_cluster VERSION: latest COVERAGE: "1" - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: - test-non-standard - server-latest @@ -5582,7 +5582,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: latest - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: - test-non-standard-no-cov - server-latest @@ -5709,11 +5709,11 @@ tasks: - vector - python-3.10 - test-numpy - - name: test-numpy-python3.15-python3.15.0rc2-cov + - name: test-numpy-python3.15-python3.15-cov commands: - func: test numpy vars: - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" COVERAGE: "1" tags: - binary @@ -6000,7 +6000,7 @@ tasks: TOPOLOGY: sharded_cluster VERSION: latest COVERAGE: "1" - UV_PYTHON: 3.15.0rc2 + UV_PYTHON: "3.15" tags: - test-standard-auth - server-latest @@ -6044,7 +6044,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: rapid - UV_PYTHON: 3.15.0rc2t + UV_PYTHON: 3.15t tags: - test-standard-auth - server-rapid diff --git a/.evergreen/scripts/fetch-python.sh b/.evergreen/scripts/fetch-python.sh deleted file mode 100755 index 494d251848..0000000000 --- a/.evergreen/scripts/fetch-python.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/bash -# Download a Python build from python-build-standalone and print the directory -# uv should use for it. Temporary: uv does not yet index Python 3.15 -# pre-releases, so we fetch the build ourselves until the version is available -# in the Evergreen toolchain. See PYTHON-6077. -set -eu - -version="${UV_PYTHON:?UV_PYTHON must be set}" -# python-build-standalone release tag that carries the builds below. -pbs_tag="20260901" - -case "$version" in - 3.15.0rc2t) interpreter="3.15.0rc2"; variant="-freethreaded" ;; - 3.15.0rc2) interpreter="3.15.0rc2"; variant="" ;; - *) echo "No python-build-standalone build configured for Python $version" >&2; exit 1 ;; -esac - -case "$(uname -s)" in - Darwin) target_os="-apple-darwin"; base_dir="${HOME}" ;; - Linux) target_os="-unknown-linux-gnu"; base_dir="${HOME}" ;; - MSYS* | MINGW* | CYGWIN*) target_os="-pc-windows-msvc"; base_dir="${USERPROFILE:-$HOME}" ;; - *) echo "Unsupported platform $(uname -s)" >&2; exit 1 ;; -esac - -case "$(uname -m)" in - arm64 | aarch64) target_arch="aarch64" ;; - x86_64) target_arch="x86_64" ;; - *) echo "Unsupported architecture $(uname -m)" >&2; exit 1 ;; -esac - -asset="cpython-${interpreter}+${pbs_tag}-${target_arch}${target_os}${variant}-install_only.tar.gz" -url="https://github.com/astral-sh/python-build-standalone/releases/download/${pbs_tag}/${asset//+/%2B}" - -# Use a native path on Windows: bash reports MSYS paths (e.g. /home/user) -# that the native Windows uv binary cannot resolve. Normalize backslashes -# to forward slashes, which both uv and the shell's tar accept. -dest="${base_dir}/.cache/python-build-standalone/${version}/${target_arch}${target_os}" -dest="$(printf '%s' "$dest" | tr '\\' '/')" -if [ ! -d "$dest/python" ]; then - mkdir -p "$dest" - echo "Downloading Python ${version} from python-build-standalone" >&2 - curl -fL --retry 3 "$url" | tar -xz -C "$dest" -fi -echo "$dest/python" diff --git a/.evergreen/scripts/generate_config_utils.py b/.evergreen/scripts/generate_config_utils.py index 341dcabcd3..fac479e60f 100644 --- a/.evergreen/scripts/generate_config_utils.py +++ b/.evergreen/scripts/generate_config_utils.py @@ -27,19 +27,11 @@ MIN_SUPPORT_VERSIONS = ["3.9", "pypy3.9", "pypy3.10"] ALL_PYTHONS = CPYTHONS + PYPYS MIN_MAX_PYTHON = [CPYTHONS[0], CPYTHONS[-1]] -# Python versions that are not provisioned in the Evergreen toolchain, mapped -# to the exact version uv must be requested to install (uv only installs a -# pre-release when asked for its full version). Drop an entry once the -# toolchain provides the version. -UV_PYTHON_VERSIONS = { - "3.15": "3.15.0rc2", - "3.15t": "3.15.0rc2t", -} def set_version_var(env: dict[str, str], version: str) -> None: """Set the env var on task vars that selects the given Python version.""" - env["UV_PYTHON"] = UV_PYTHON_VERSIONS.get(version, version) + env["UV_PYTHON"] = version BATCHTIME_WEEK = 10080 diff --git a/.evergreen/scripts/setup-dev-env.sh b/.evergreen/scripts/setup-dev-env.sh index fbfcf999a2..30d6f006b0 100755 --- a/.evergreen/scripts/setup-dev-env.sh +++ b/.evergreen/scripts/setup-dev-env.sh @@ -19,19 +19,11 @@ fi # Handle the value for UV_PYTHON. . $HERE/setup-uv-python.sh -# Ensure a bare-version interpreter is available before it is used. uv -# downloads a managed Python only on explicit request and never offers Python -# pre-releases, so try `uv python install` first and fall back to fetching the -# build ourselves. The fallback is temporary until these versions are in the -# Evergreen toolchain. +# Ensure the requested interpreter is available before it is used. uv only +# installs a managed Python on explicit request, so install one when +# UV_PYTHON names a version rather than a path. if [ -n "${UV_PYTHON:-}" ] && [[ "$UV_PYTHON" != /* ]] && [[ "$UV_PYTHON" != ?:/* ]]; then - if ! uv python install "$UV_PYTHON" >/dev/null 2>&1; then - _interpreter="$(bash $HERE/fetch-python.sh)" || { - echo "Failed to obtain a Python $UV_PYTHON interpreter" >&2 - exit 1 - } - export UV_PYTHON="$_interpreter" - fi + uv python install "$UV_PYTHON" fi # Ensure dependencies are installed. From 620507f754eebd723272cf5af9123a4d4a4c0389 Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Fri, 4 Sep 2026 19:49:26 -0500 Subject: [PATCH 4/5] Revert "PYTHON-6077 Drop the python-build-standalone fallback for 3.15" This reverts commit 78b8a2ec30337bb4d5ad53a65e9c00a33bd6a49d. --- .evergreen/generated_configs/tasks.yml | 174 ++++++++++---------- .evergreen/scripts/fetch-python.sh | 44 +++++ .evergreen/scripts/generate_config_utils.py | 10 +- .evergreen/scripts/setup-dev-env.sh | 16 +- 4 files changed, 152 insertions(+), 92 deletions(-) create mode 100755 .evergreen/scripts/fetch-python.sh diff --git a/.evergreen/generated_configs/tasks.yml b/.evergreen/generated_configs/tasks.yml index 15f90775de..455da31474 100644 --- a/.evergreen/generated_configs/tasks.yml +++ b/.evergreen/generated_configs/tasks.yml @@ -102,7 +102,7 @@ tasks: AWS_ROLE_SESSION_NAME: test UV_PYTHON: "3.14" tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-rapid-regular-python3.15t + - name: test-auth-aws-rapid-regular-python3.15.0rc2t commands: - func: run server vars: @@ -113,9 +113,9 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: regular - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t tags: [auth-aws, auth-aws-regular, free-threaded] - - name: test-auth-aws-latest-assume-role-python3.15-cov + - name: test-auth-aws-latest-assume-role-python3.15.0rc2-cov commands: - func: run server vars: @@ -126,7 +126,7 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: assume-role - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 COVERAGE: "1" tags: [auth-aws, auth-aws-assume-role, pr] - name: test-auth-aws-ecs @@ -382,12 +382,12 @@ tasks: - func: run server vars: TOPOLOGY: replica_set - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 - func: run tests vars: TEST_NAME: mod_wsgi SUB_TEST_NAME: embedded - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [mod_wsgi, pr] # No orchestration tests @@ -399,12 +399,12 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [test-no-orchestration, python-3.10] - - name: test-no-orchestration-python3.15 + - name: test-no-orchestration-python3.15.0rc2 commands: - func: assume ec2 role - func: run tests vars: - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [test-no-orchestration, python-3.15] - name: test-no-orchestration-pypy3.11 commands: @@ -536,7 +536,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-latest-python3.15 + - name: test-ocsp-ecdsa-valid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -544,7 +544,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -623,7 +623,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-latest-python3.15 + - name: test-ocsp-ecdsa-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -631,7 +631,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -710,7 +710,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-latest-python3.15 + - name: test-ocsp-ecdsa-delegate-valid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -718,7 +718,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -797,7 +797,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-latest-python3.15 + - name: test-ocsp-ecdsa-delegate-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -805,7 +805,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-soft-fail-v4.4-python3.10-min-deps commands: @@ -884,7 +884,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-soft-fail-latest-python3.15 + - name: test-ocsp-ecdsa-soft-fail-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -892,7 +892,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-valid-cert-server-staples-v4.4-python3.10-min-deps commands: @@ -1000,7 +1000,7 @@ tasks: - ocsp-ecdsa - rapid - ocsp-staple - - name: test-ocsp-ecdsa-valid-cert-server-staples-latest-python3.15-cov + - name: test-ocsp-ecdsa-valid-cert-server-staples-latest-python3.15.0rc2-cov commands: - func: run tests vars: @@ -1008,7 +1008,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 COVERAGE: "1" tags: - ocsp @@ -1121,7 +1121,7 @@ tasks: - ocsp-ecdsa - rapid - ocsp-staple - - name: test-ocsp-ecdsa-invalid-cert-server-staples-latest-python3.15 + - name: test-ocsp-ecdsa-invalid-cert-server-staples-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -1129,7 +1129,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: - ocsp - ocsp-ecdsa @@ -1240,7 +1240,7 @@ tasks: - ocsp-ecdsa - rapid - ocsp-staple - - name: test-ocsp-ecdsa-delegate-valid-cert-server-staples-latest-python3.15 + - name: test-ocsp-ecdsa-delegate-valid-cert-server-staples-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -1248,7 +1248,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: - ocsp - ocsp-ecdsa @@ -1359,7 +1359,7 @@ tasks: - ocsp-ecdsa - rapid - ocsp-staple - - name: test-ocsp-ecdsa-delegate-invalid-cert-server-staples-latest-python3.15 + - name: test-ocsp-ecdsa-delegate-invalid-cert-server-staples-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -1367,7 +1367,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: - ocsp - ocsp-ecdsa @@ -1450,7 +1450,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15 + - name: test-ocsp-ecdsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -1458,7 +1458,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1537,7 +1537,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15 + - name: test-ocsp-ecdsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -1545,7 +1545,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1624,7 +1624,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-ecdsa, rapid] - - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.15 + - name: test-ocsp-ecdsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -1632,7 +1632,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-ecdsa, latest] - name: test-ocsp-rsa-valid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1711,7 +1711,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-valid-cert-server-does-not-staple-latest-python3.15 + - name: test-ocsp-rsa-valid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -1719,7 +1719,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1798,7 +1798,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-latest-python3.15 + - name: test-ocsp-rsa-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -1806,7 +1806,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1885,7 +1885,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-latest-python3.15 + - name: test-ocsp-rsa-delegate-valid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -1893,7 +1893,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -1972,7 +1972,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-latest-python3.15 + - name: test-ocsp-rsa-delegate-invalid-cert-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -1980,7 +1980,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-soft-fail-v4.4-python3.10-min-deps commands: @@ -2059,7 +2059,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-soft-fail-latest-python3.15 + - name: test-ocsp-rsa-soft-fail-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -2067,7 +2067,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-valid-cert-server-staples-v4.4-python3.10-min-deps commands: @@ -2174,7 +2174,7 @@ tasks: - ocsp-rsa - rapid - ocsp-staple - - name: test-ocsp-rsa-valid-cert-server-staples-latest-python3.15 + - name: test-ocsp-rsa-valid-cert-server-staples-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -2182,7 +2182,7 @@ tasks: OCSP_SERVER_TYPE: valid TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: - ocsp - ocsp-rsa @@ -2293,7 +2293,7 @@ tasks: - ocsp-rsa - rapid - ocsp-staple - - name: test-ocsp-rsa-invalid-cert-server-staples-latest-python3.15 + - name: test-ocsp-rsa-invalid-cert-server-staples-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -2301,7 +2301,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: - ocsp - ocsp-rsa @@ -2412,7 +2412,7 @@ tasks: - ocsp-rsa - rapid - ocsp-staple - - name: test-ocsp-rsa-delegate-valid-cert-server-staples-latest-python3.15 + - name: test-ocsp-rsa-delegate-valid-cert-server-staples-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -2420,7 +2420,7 @@ tasks: OCSP_SERVER_TYPE: valid-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: - ocsp - ocsp-rsa @@ -2531,7 +2531,7 @@ tasks: - ocsp-rsa - rapid - ocsp-staple - - name: test-ocsp-rsa-delegate-invalid-cert-server-staples-latest-python3.15 + - name: test-ocsp-rsa-delegate-invalid-cert-server-staples-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -2539,7 +2539,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: - ocsp - ocsp-rsa @@ -2622,7 +2622,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15 + - name: test-ocsp-rsa-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -2630,7 +2630,7 @@ tasks: OCSP_SERVER_TYPE: revoked TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -2709,7 +2709,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15 + - name: test-ocsp-rsa-delegate-malicious-invalid-cert-muststaple-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -2717,7 +2717,7 @@ tasks: OCSP_SERVER_TYPE: revoked-delegate TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-v4.4-python3.10-min-deps commands: @@ -2796,7 +2796,7 @@ tasks: UV_PYTHON: "3.10" TEST_MIN_DEPS: "1" tags: [ocsp, ocsp-rsa, rapid] - - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.15 + - name: test-ocsp-rsa-malicious-no-responder-muststaple-server-does-not-staple-latest-python3.15.0rc2 commands: - func: run tests vars: @@ -2804,7 +2804,7 @@ tasks: OCSP_SERVER_TYPE: no-responder TEST_NAME: ocsp VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: [ocsp, ocsp-rsa, latest] # Oidc tests @@ -3011,7 +3011,7 @@ tasks: SSL: nossl TOPOLOGY: replica_set COVERAGE: "1" - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_async tags: - server-version @@ -3253,7 +3253,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 TEST_NAME: default_async tags: - server-version @@ -3272,7 +3272,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_async tags: - server-version @@ -3431,7 +3431,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 TEST_NAME: default_sync tags: - server-version @@ -3450,7 +3450,7 @@ tasks: AUTH: auth SSL: ssl TOPOLOGY: sharded_cluster - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_sync tags: - server-version @@ -3646,7 +3646,7 @@ tasks: SSL: nossl TOPOLOGY: standalone COVERAGE: "1" - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 TEST_NAME: default_async tags: - server-version @@ -3668,7 +3668,7 @@ tasks: SSL: nossl TOPOLOGY: standalone COVERAGE: "1" - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_sync tags: - server-version @@ -3798,7 +3798,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "4.4" - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_sync tags: - test-standard @@ -3957,7 +3957,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "5.0" - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_async tags: - test-standard @@ -4186,7 +4186,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "6.0" - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 TEST_NAME: default_sync tags: - test-standard @@ -4344,7 +4344,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "7.0" - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 TEST_NAME: default_async tags: - test-standard @@ -4388,7 +4388,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "8.0" - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 TEST_NAME: default_sync tags: - test-standard @@ -4502,7 +4502,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "8.0" - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_sync tags: - test-standard @@ -4547,7 +4547,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "9.0" - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 TEST_NAME: default_async tags: - test-standard @@ -4661,7 +4661,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "9.0" - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_async tags: - test-standard @@ -4711,7 +4711,7 @@ tasks: TOPOLOGY: replica_set VERSION: latest COVERAGE: "1" - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_async tags: - test-standard @@ -4762,7 +4762,7 @@ tasks: TOPOLOGY: sharded_cluster VERSION: latest COVERAGE: "1" - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 TEST_NAME: default_async tags: - test-standard @@ -4857,7 +4857,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: rapid - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t TEST_NAME: default_sync tags: - test-standard @@ -4902,7 +4902,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: rapid - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 TEST_NAME: default_sync tags: - test-standard @@ -4970,7 +4970,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "8.2" - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: - test-string-query-preview - server-8.2 @@ -5166,7 +5166,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: "6.0" - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: - test-non-standard - server-6.0 @@ -5232,7 +5232,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "6.0" - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t tags: - test-non-standard - server-6.0 @@ -5382,7 +5382,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: "8.0" - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t tags: - test-non-standard - server-8.0 @@ -5492,7 +5492,7 @@ tasks: SSL: nossl TOPOLOGY: standalone VERSION: "9.0" - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: - test-non-standard - server-9.0 @@ -5513,7 +5513,7 @@ tasks: SSL: ssl TOPOLOGY: replica_set VERSION: latest - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t tags: - test-non-standard - server-latest @@ -5559,7 +5559,7 @@ tasks: TOPOLOGY: sharded_cluster VERSION: latest COVERAGE: "1" - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: - test-non-standard - server-latest @@ -5582,7 +5582,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: latest - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: - test-non-standard-no-cov - server-latest @@ -5709,11 +5709,11 @@ tasks: - vector - python-3.10 - test-numpy - - name: test-numpy-python3.15-python3.15-cov + - name: test-numpy-python3.15-python3.15.0rc2-cov commands: - func: test numpy vars: - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 COVERAGE: "1" tags: - binary @@ -6000,7 +6000,7 @@ tasks: TOPOLOGY: sharded_cluster VERSION: latest COVERAGE: "1" - UV_PYTHON: "3.15" + UV_PYTHON: 3.15.0rc2 tags: - test-standard-auth - server-latest @@ -6044,7 +6044,7 @@ tasks: SSL: ssl TOPOLOGY: sharded_cluster VERSION: rapid - UV_PYTHON: 3.15t + UV_PYTHON: 3.15.0rc2t tags: - test-standard-auth - server-rapid diff --git a/.evergreen/scripts/fetch-python.sh b/.evergreen/scripts/fetch-python.sh new file mode 100755 index 0000000000..494d251848 --- /dev/null +++ b/.evergreen/scripts/fetch-python.sh @@ -0,0 +1,44 @@ +#!/bin/bash +# Download a Python build from python-build-standalone and print the directory +# uv should use for it. Temporary: uv does not yet index Python 3.15 +# pre-releases, so we fetch the build ourselves until the version is available +# in the Evergreen toolchain. See PYTHON-6077. +set -eu + +version="${UV_PYTHON:?UV_PYTHON must be set}" +# python-build-standalone release tag that carries the builds below. +pbs_tag="20260901" + +case "$version" in + 3.15.0rc2t) interpreter="3.15.0rc2"; variant="-freethreaded" ;; + 3.15.0rc2) interpreter="3.15.0rc2"; variant="" ;; + *) echo "No python-build-standalone build configured for Python $version" >&2; exit 1 ;; +esac + +case "$(uname -s)" in + Darwin) target_os="-apple-darwin"; base_dir="${HOME}" ;; + Linux) target_os="-unknown-linux-gnu"; base_dir="${HOME}" ;; + MSYS* | MINGW* | CYGWIN*) target_os="-pc-windows-msvc"; base_dir="${USERPROFILE:-$HOME}" ;; + *) echo "Unsupported platform $(uname -s)" >&2; exit 1 ;; +esac + +case "$(uname -m)" in + arm64 | aarch64) target_arch="aarch64" ;; + x86_64) target_arch="x86_64" ;; + *) echo "Unsupported architecture $(uname -m)" >&2; exit 1 ;; +esac + +asset="cpython-${interpreter}+${pbs_tag}-${target_arch}${target_os}${variant}-install_only.tar.gz" +url="https://github.com/astral-sh/python-build-standalone/releases/download/${pbs_tag}/${asset//+/%2B}" + +# Use a native path on Windows: bash reports MSYS paths (e.g. /home/user) +# that the native Windows uv binary cannot resolve. Normalize backslashes +# to forward slashes, which both uv and the shell's tar accept. +dest="${base_dir}/.cache/python-build-standalone/${version}/${target_arch}${target_os}" +dest="$(printf '%s' "$dest" | tr '\\' '/')" +if [ ! -d "$dest/python" ]; then + mkdir -p "$dest" + echo "Downloading Python ${version} from python-build-standalone" >&2 + curl -fL --retry 3 "$url" | tar -xz -C "$dest" +fi +echo "$dest/python" diff --git a/.evergreen/scripts/generate_config_utils.py b/.evergreen/scripts/generate_config_utils.py index fac479e60f..341dcabcd3 100644 --- a/.evergreen/scripts/generate_config_utils.py +++ b/.evergreen/scripts/generate_config_utils.py @@ -27,11 +27,19 @@ MIN_SUPPORT_VERSIONS = ["3.9", "pypy3.9", "pypy3.10"] ALL_PYTHONS = CPYTHONS + PYPYS MIN_MAX_PYTHON = [CPYTHONS[0], CPYTHONS[-1]] +# Python versions that are not provisioned in the Evergreen toolchain, mapped +# to the exact version uv must be requested to install (uv only installs a +# pre-release when asked for its full version). Drop an entry once the +# toolchain provides the version. +UV_PYTHON_VERSIONS = { + "3.15": "3.15.0rc2", + "3.15t": "3.15.0rc2t", +} def set_version_var(env: dict[str, str], version: str) -> None: """Set the env var on task vars that selects the given Python version.""" - env["UV_PYTHON"] = version + env["UV_PYTHON"] = UV_PYTHON_VERSIONS.get(version, version) BATCHTIME_WEEK = 10080 diff --git a/.evergreen/scripts/setup-dev-env.sh b/.evergreen/scripts/setup-dev-env.sh index 30d6f006b0..fbfcf999a2 100755 --- a/.evergreen/scripts/setup-dev-env.sh +++ b/.evergreen/scripts/setup-dev-env.sh @@ -19,11 +19,19 @@ fi # Handle the value for UV_PYTHON. . $HERE/setup-uv-python.sh -# Ensure the requested interpreter is available before it is used. uv only -# installs a managed Python on explicit request, so install one when -# UV_PYTHON names a version rather than a path. +# Ensure a bare-version interpreter is available before it is used. uv +# downloads a managed Python only on explicit request and never offers Python +# pre-releases, so try `uv python install` first and fall back to fetching the +# build ourselves. The fallback is temporary until these versions are in the +# Evergreen toolchain. if [ -n "${UV_PYTHON:-}" ] && [[ "$UV_PYTHON" != /* ]] && [[ "$UV_PYTHON" != ?:/* ]]; then - uv python install "$UV_PYTHON" + if ! uv python install "$UV_PYTHON" >/dev/null 2>&1; then + _interpreter="$(bash $HERE/fetch-python.sh)" || { + echo "Failed to obtain a Python $UV_PYTHON interpreter" >&2 + exit 1 + } + export UV_PYTHON="$_interpreter" + fi fi # Ensure dependencies are installed. From f6be3d07d2c5cfbea8ea16b2a3d0301a9b484ac6 Mon Sep 17 00:00:00 2001 From: Steven Silvester Date: Fri, 4 Sep 2026 20:15:25 -0500 Subject: [PATCH 5/5] PYTHON-6077 Handle remaining 3.15 CI failures --- .evergreen/generated_configs/tasks.yml | 12 ------------ .evergreen/scripts/generate_config.py | 6 +++++- .evergreen/scripts/setup-dev-env.sh | 12 ++++++------ .evergreen/scripts/setup_tests.py | 3 ++- 4 files changed, 13 insertions(+), 20 deletions(-) diff --git a/.evergreen/generated_configs/tasks.yml b/.evergreen/generated_configs/tasks.yml index 455da31474..bc4fa283af 100644 --- a/.evergreen/generated_configs/tasks.yml +++ b/.evergreen/generated_configs/tasks.yml @@ -377,18 +377,6 @@ tasks: SUB_TEST_NAME: embedded UV_PYTHON: "3.14" tags: [mod_wsgi, pr] - - name: mod-wsgi-embedded-mode-replica-set-python3.15 - commands: - - func: run server - vars: - TOPOLOGY: replica_set - UV_PYTHON: 3.15.0rc2 - - func: run tests - vars: - TEST_NAME: mod_wsgi - SUB_TEST_NAME: embedded - UV_PYTHON: 3.15.0rc2 - tags: [mod_wsgi, pr] # No orchestration tests - name: test-no-orchestration-python3.10-min-deps diff --git a/.evergreen/scripts/generate_config.py b/.evergreen/scripts/generate_config.py index d0c396763c..248567c7e9 100644 --- a/.evergreen/scripts/generate_config.py +++ b/.evergreen/scripts/generate_config.py @@ -18,6 +18,7 @@ PYPYS, SYNCS, TOPOLOGIES, + UV_PYTHON_VERSIONS, create_variant, get_assume_role, get_s3_put, @@ -968,7 +969,10 @@ def create_mod_wsgi_tasks(): for (test, topology), python in zip_cycle( product(["standalone", "embedded-mode"], ["standalone", "replica_set"]), CPYTHONS ): - if "t" in python: + # Skip free-threaded builds and versions not yet in the toolchain: + # mod_wsgi must be compiled against the toolchain python, and no + # mod_wsgi module exists for a version the toolchain lacks. + if "t" in python or python in UV_PYTHON_VERSIONS: continue if test == "standalone": task_name = "mod-wsgi-" diff --git a/.evergreen/scripts/setup-dev-env.sh b/.evergreen/scripts/setup-dev-env.sh index fbfcf999a2..293cbcb32d 100755 --- a/.evergreen/scripts/setup-dev-env.sh +++ b/.evergreen/scripts/setup-dev-env.sh @@ -19,12 +19,12 @@ fi # Handle the value for UV_PYTHON. . $HERE/setup-uv-python.sh -# Ensure a bare-version interpreter is available before it is used. uv -# downloads a managed Python only on explicit request and never offers Python -# pre-releases, so try `uv python install` first and fall back to fetching the -# build ourselves. The fallback is temporary until these versions are in the -# Evergreen toolchain. -if [ -n "${UV_PYTHON:-}" ] && [[ "$UV_PYTHON" != /* ]] && [[ "$UV_PYTHON" != ?:/* ]]; then +# Python 3.15 pre-releases are not yet in the Evergreen toolchain or uv's +# download index, so install them explicitly and fall back to fetching a +# python-build-standalone build when uv cannot provide one. The fallback is +# temporary until these versions reach the toolchain. Other versions resolve +# through the toolchain or uv on their own. +if [ -n "${UV_PYTHON:-}" ] && [[ "$UV_PYTHON" != /* ]] && [[ "$UV_PYTHON" != ?:/* ]] && [[ "$UV_PYTHON" == 3.15* ]]; then if ! uv python install "$UV_PYTHON" >/dev/null 2>&1; then _interpreter="$(bash $HERE/fetch-python.sh)" || { echo "Failed to obtain a Python $UV_PYTHON interpreter" >&2 diff --git a/.evergreen/scripts/setup_tests.py b/.evergreen/scripts/setup_tests.py index 5199fe3959..93db297cfd 100644 --- a/.evergreen/scripts/setup_tests.py +++ b/.evergreen/scripts/setup_tests.py @@ -290,7 +290,8 @@ def handle_test_env() -> None: krb_conf.touch() write_env("KRB5_CONFIG", krb_conf) LOGGER.info("Writing keytab") - keytab = base64.b64decode(config["KEYTAB_BASE64"]) + keytab_b64 = config["KEYTAB_BASE64"] + keytab = base64.b64decode(keytab_b64 + "=" * (-len(keytab_b64) % 4)) keytab_file = ROOT / ".evergreen/drivers.keytab" with keytab_file.open("wb") as fid: fid.write(keytab)