Summary
Several utility and introspection methods on SessionContext from upstream DataFusion v53 are not yet exposed in datafusion-python.
Missing Methods
Upstream Reference
Implementation
- Rust bindings:
crates/core/src/context.rs
- Python wrappers:
python/datafusion/context.py
Notes
Some of these (optimizer/analyzer rules) may require exposing additional Rust types to Python, which could be complex. parse_sql_expr and execute_logical_plan are likely the most immediately useful.
Note: This gap analysis was performed using an AI agent comparing upstream DataFusion v53 documentation against the current datafusion-python codebase.
Summary
Several utility and introspection methods on SessionContext from upstream DataFusion v53 are not yet exposed in datafusion-python.
Missing Methods
parse_sql_expr— parse a SQL expression string into a logical expressionexecute_logical_plan— execute a logical plan and return a DataFramerefresh_catalogs— refresh catalog metadatasession_start_time— get the session start timeenable_ident_normalization— configure whether identifiers are normalized (lowercased)add_optimizer_rule— add a custom optimizer ruleremove_optimizer_rule— remove an optimizer rule by nameadd_analyzer_rule— add a custom analyzer ruletable_provider— get a TableProvider by nameUpstream Reference
Implementation
crates/core/src/context.rspython/datafusion/context.pyNotes
Some of these (optimizer/analyzer rules) may require exposing additional Rust types to Python, which could be complex.
parse_sql_exprandexecute_logical_planare likely the most immediately useful.