Spec resync 7/22/2026#2953
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
…python-driver into spec-resync-7-22-2026
| @@ -1,232 +0,0 @@ | |||
| diff --git a/test/client-side-encryption/etc/data/encryptedFields-prefix-suffix-ci-di.json b/test/client-side-encryption/etc/data/encryptedFields-prefix-suffix-ci-di.json | |||
There was a problem hiding this comment.
thanks to waiting out the predicted back and forth, we've waited out the changes and we don't have to do this anymore LOLOL
| PLACEHOLDER_MAP[placeholder] = value | ||
|
|
||
| # accessToken kmsProviders (schema 1.28, DRIVERS-3392). | ||
| for provider_name, token_env in [ |
There was a problem hiding this comment.
i believe this is the only change needed to support schema version 1.28?
| @@ -1,8 +0,0 @@ | |||
| { | |||
There was a problem hiding this comment.
these are from DRIVERS-3329 which isn't finished yet, i'm letting the resync script remove it and add it later once DRIVERS-3329 is properly completed (also not sure why it was on our main to begin with?? lol i thought i only merged this into the branch,,)
| }, | ||
| { | ||
| "description": "timeoutMS can be configured for an operation - createChangeStream on client", | ||
| "runOnRequirements": [ |
There was a problem hiding this comment.
I believe these CSOT changes are for PYTHON-5918
There was a problem hiding this comment.
Pull request overview
Manual spec resync to align the test suite and Evergreen CSFLE/KMS setup with updated upstream specifications (notably Unified Test Format schema 1.28 and CSFLE Azure/GCP accessToken support).
Changes:
- Bump Unified Test Format runner schema support to 1.28 and add placeholder handling for Azure/GCP
accessToken. - Resync CSFLE-related fixtures/spec tests (Azure masterKey/keyMaterial updates; new QE substring test; substring parameter updates).
- Update CSOT spec tests’
runOnRequirementstopology gating and adjust Evergreen scripts to opt into corporate Azure credentials.
Reviewed changes
Copilot reviewed 27 out of 27 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| test/unified_format.py | Updates supported unified test schema version to 1.28 (sync runner). |
| test/unified_format_shared.py | Adds placeholder mapping for Azure/GCP accessToken fields. |
| test/test_encryption.py | Updates Azure KMS masterKey fixture values (sync tests). |
| test/srv_seedlist/replica-set/identical-hostnames-valid-three-parts.json | Removes SRV seedlist spec case (file deleted). |
| test/srv_seedlist/replica-set/identical-hostnames-valid-four-parts.json | Removes SRV seedlist spec case (file deleted). |
| test/csot/retryability-timeoutMS.json | Adds topology-specific runOnRequirements variants for change stream retryability cases. |
| test/csot/retryability-legacy-timeouts.json | Adds topology-specific runOnRequirements variants for legacy timeout change stream cases. |
| test/csot/override-operation-timeoutMS.json | Adds topology-specific runOnRequirements variants for override timeout change stream cases. |
| test/client-side-encryption/spec/unified/rewrapManyDataKey.json | Resyncs Azure masterKey and keyMaterial fixture data. |
| test/client-side-encryption/spec/unified/QE-Text-substringPreview.json | Updates substring preview parameters/expected safeContent list. |
| test/client-side-encryption/spec/unified/QE-Text-substring.json | Adds new QE substring unified spec test file. |
| test/client-side-encryption/spec/unified/namedKMS-rewrapManyDataKey.json | Resyncs named Azure KMS provider fixtures. |
| test/client-side-encryption/spec/unified/namedKMS-createDataKey.json | Resyncs named Azure KMS provider fixtures. |
| test/client-side-encryption/spec/unified/createDataKey.json | Resyncs Azure KMS provider fixtures. |
| test/client-side-encryption/spec/unified/azureKMS.json | Resyncs Azure DEK fixture data. |
| test/client-side-encryption/spec/legacy/azureKMS.json | Resyncs legacy Azure DEK fixture data. |
| test/client-side-encryption/etc/data/encryptedFields-substring.json | Updates encryptedFields queryType/params for substring. |
| test/client-side-encryption/etc/data/encryptedFields-substring-preview.json | Adds encryptedFields fixture for substringPreview. |
| test/client-side-encryption/etc/data/encryptedFields-substring-ci-di.json | Updates encryptedFields queryType/params for substring (ci/di variant). |
| test/client-side-encryption/custom/azure-dek.json | Resyncs custom Azure DEK fixture data. |
| test/client-side-encryption/corpus/corpus-key-azure.json | Resyncs corpus Azure key fixture data. |
| test/asynchronous/unified_format.py | Updates supported unified test schema version to 1.28 (async runner). |
| test/asynchronous/test_encryption.py | Updates Azure KMS masterKey fixture values (async tests). |
| .evergreen/spec-patch/PYTHON-5799.patch | Removes obsolete spec patch file (file deleted). |
| .evergreen/spec-patch/PYTHON-5759.patch | Updates stored spec patch content (blob index lines). |
| .evergreen/scripts/setup_tests.py | Sets FLE_AZURE_USE_CORPORATE=YES for encryption test setup. |
| .evergreen/scripts/kms_tester.py | Sets FLE_AZURE_USE_CORPORATE=YES for Azure KMS tester setup. |
| """ | ||
|
|
||
| SCHEMA_VERSION = Version.from_string("1.26") | ||
| SCHEMA_VERSION = Version.from_string("1.28") |
| "azure": { | ||
| "keyVaultEndpoint": "key-vault-csfle.vault.azure.net", | ||
| "keyName": "key-name-csfle", | ||
| "keyVaultEndpoint": "drivers-3392-key-vault.vault.azure.net", | ||
| "keyName": "drivers-3392-keyname", | ||
| }, |
| { | ||
| "fields": [ | ||
| { | ||
| "keyId": { | ||
| "$binary": { |
| "keyMaterial": { | ||
| "$binary": { | ||
| "base64": "n+HWZ0ZSVOYA3cvQgP7inN4JSXfOH85IngmeQxRpQHjCCcqT3IFqEWNlrsVHiz3AELimHhX4HKqOLWMUeSIT6emUDDoQX9BAv8DR1+E1w4nGs/NyEneac78EYFkK3JysrFDOgl2ypCCTKAypkn9CkAx1if4cfgQE93LW4kczcyHdGiH36CIxrCDGv1UzAvERN5Qa47DVwsM6a+hWsF2AAAJVnF0wYLLJU07TuRHdMrrphPWXZsFgyV+lRqJ7DDpReKNO8nMPLV/mHqHBHGPGQiRdb9NoJo8CvokGz4+KE8oLwzKf6V24dtwZmRkrsDV4iOhvROAzz+Euo1ypSkL3mw==", | ||
| "base64": "Vlza0NjSsxbiJbHUM++3EWyhd5/m4QHv0ZaH87LsljVDltHNZyR9YBFOTDFE1RKeY/uGSW35IdOLVxpHvo1/qBz7E6Iv14obBmniRetWZq0wxerm72LlF+VPTHHmNn1sIv3TY/HsHSx7S1U/ILaKukD7hBKZ5/4A2tPOXtdnTzC4Rpc8bRjaM8heQSNEWbTBPqcQ9xD4YLi+uQlzbLZjQA+Ljr540QJEwa7RGw8J22eo1sb3vSeDAhR24GH6RPJ5v72yElGcOZrKCjxnbd4mrCtSHssfOzCnK2Dw3mHikSLeBFGjnlXydBWiTn2AlhOs+YpXdAJ6Zm3xjkdJOXKytg==", |
| @@ -0,0 +1,467 @@ | |||
| { | |||
|
I believe the remaining test failures captured in PYTHON-5955 |
NoahStapp
left a comment
There was a problem hiding this comment.
LGTM assuming tests pass!
Doing the resync manually this week since the the script failed to auto generate one due to the master -> main change