BharatDeva opened a new pull request, #1675: URL: https://github.com/apache/datafusion-python/pull/1675
# Which issue does this PR close? Closes #1669. # Rationale for this change `register_table_factory` accepts FFI table-provider-factory exporters whose `__datafusion_table_provider_factory__` method needs the logical extension codec capsule as an argument. The shared `from_pycapsule!` helper only supported zero-argument dunder methods, so this call site had to keep its own PyCapsule decoding logic. # What changes are included in this PR? This adds an argument-aware arm to `from_pycapsule!` and uses it to expose `table_provider_factory_from_pycapsule`. `SessionContext.register_table_factory` now uses that shared helper for raw table-provider-factory capsules and exportable objects, while keeping the existing Python-wrapper path for plain Python table factories. # Are there any user-facing changes? No API change is intended. This is an internal cleanup that lets the existing FFI table-provider-factory path use the same capsule validation/conversion helper as the other FFI capsule paths. # Testing - `cargo fmt --check` - `git diff --check` - `wsl bash -lc "cd /mnt/c/Users/bhara/OneDrive/Desktop/Python/datafusion-python && cargo check -p datafusion-python"` - `wsl bash -lc "cd /mnt/c/Users/bhara/OneDrive/Desktop/Python/datafusion-python && cargo test -p datafusion-python-util"` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
