feat(python) add standard key metadata python bindings - #3206
Open
xanderbailey wants to merge 3 commits into
Open
feat(python) add standard key metadata python bindings#3206xanderbailey wants to merge 3 commits into
xanderbailey wants to merge 3 commits into
Conversation
Report the received and supported key metadata versions, matching the wording expected by PyIceberg. Add Rust and Python regression coverage. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
kevinjqliu
approved these changes
Sep 12, 2026
kevinjqliu
left a comment
Contributor
There was a problem hiding this comment.
LGTM
I pushed a small change to align the error message with python's
I also built the binding and tested locally against pyiceberg, all the existing tests from apache/iceberg-python#3948 passed
Contributor
|
lets see if others have any feedback on this PR |
Contributor
BTW this issue was also flagged by my agent and I looked into it. There's already a fix in the main branch: apache/avro-rs#664 |
25 tasks
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.
Which issue does this PR close?
As discussed in apache/iceberg-python#3948. We think it might be a good idea to push as much of the core logic for encryption in iceberg-python into iceberg-rust. This PR starts with adding encode / decode for standard key metadata. I don't want the iceberg rust side to block progress on the python side but I will track moving things over to the rust implementation as versions of iceberg-rust are published.
What changes are included in this PR?
Registers new
encryptionpython module.Are these changes tested?
Yes
Upstream Avro follow-up
apache-avro0.21 and 0.22 can decode missing or truncated union tags asnull. This pre-existing decoder issue will be addressed upstream rather than with an Iceberg-specific workaround. Upstream issue: TODO: add the apache/avro-rs issue link once filed.AI Disclosure