[Full Changelog](https://github.com/apache/datafusion/compare/19.0.0...20.0.0
Breaking changes:
RuntimeEnv and into SessionState #5477 (alamb)Debug for ExecutionProps and VarProvider #5489 (alamb)Implemented enhancements:
arrow_cast function to support supports arbitrary arrow types #5166 (alamb)ParquetExec predicate preservation #5495 (crepererum)extensions_options macro #5442 (crepererum)Fixed bugs:
Documentation updates:
dyn_eq and dyn_hash #5515 (alamb)Merged pull requests:
ObjectStoreRegistry to datafusion_execution crate #5478 (alamb)arrow_cast function to support supports arbitrary arrow types #5166 (alamb)dyn_eq and dyn_hash #5515 (alamb)RuntimeEnv and into SessionState #5477 (alamb)ParquetExec predicate preservation #5495 (crepererum)Debug for ExecutionProps and VarProvider #5489 (alamb)DataFrame::describe #5468 (jiangzhx)compute_decimal_op_dyn_scalar should not cast lhs array to decimal array #5465 (viirya)extensions_options macro #5442 (crepererum)datafusion-execution crate, start splitting code out #5432 (alamb)push_down_projection and prune_column. #4465 (jackwener)expr_fn::stddev #5409 (jiangzhx)push_down_filter to fix dead-loop and use optimizer_recurse. #5337 (jackwener)bors problem. #5395 (jackwener)