Repository navigation
PYTHON-6146 Fix the rewrap_many_data_key example - #3139
Merged
Merged
Conversation
The example in the docstring of ClientEncryption.rewrap_many_data_key passed the provider inside master_key, which raises a ConfigurationError because no provider is given. Pass the provider as its own argument and use the fields of an Azure master key.
NoahStapp
approved these changes
Oct 22, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PYTHON-6146
Changes in this PR
The example in the docstring of
ClientEncryption.rewrap_many_data_keypassed the provider insidemaster_key, which raisesConfigurationError("A provider must be given if a master_key is given"). The provider is now its own argument andmaster_keyuses the fields of an Azure master key (keyVaultEndpoint,keyName) as documented increate_data_key. Docstring only. The synchronous copy was regenerated withtools/synchro.py. No changelog entry, as for earlier docstring fixes.AI disclosure: I used an AI assistant (Claude Code) to help find the cause and write the fix. I read the change and I understand it.
Test Plan
Docs only, so no new test. I checked that the old example raises
ConfigurationErrorand that the new one binds to the real signature and passes the argument checks.sphinx -Wbuilds without warnings and the rendered example is correct.ruff,ruff format, the pre-commit hooks and thesynchroself-test pass, and runningtools/synchro.pyagain leaves a clean tree. The encryption tests that need KMS credentials cannot run in my environment, and the rewrap tests fail identically onmainthere.Checklist
Checklist for Author
Checklist for Reviewer