This is an update that corresponds to Python Polars 1.35.2.
As of this version, this package depends on {S7}.
The newly added QueryOptFlags object is an S7 object.
Deprecations
-
The following arguments of certain LazyFrame methods, which were previously used for query optimization, are deprecated in favor of the new
optimizationsargument (#1635).
Some arguments that were intended for internal use have been removed without deprecation.type_coercionpredicate_pushdownprojection_pushdownsimplify_expressionslice_pushdowncomm_subplan_elimcomm_subexpr_elimcluster_with_columnsno_optimization_type_check(removed)_check_order(removed)_eager(removed)
Functions affected are those that gained the
optimizationsargument.
See the next new features section for details.For the experimental
<lazyframe>$lazy_sink_*methods, the above arguments and thecollapse_joinsargument (deprecated as of polars 1.4.0) are removed. -
<lazyframe>$to_dot()s ignored...(dots) argument is deprecated (#1635).
In future versions, an error will be raised if dots are not empty.
New features
- The following functions gain the experimental
optimizationsargument
taking aQueryOptFlagsobject (#1633, #1634, #1635).<lazyframe>$collect()<lazyframe>$explain()<lazyframe>$profile()<lazyframe>$to_dot()<lazyframe>$sink_batches()<lazyframe>$sink_csv()<lazyframe>$sink_ipc()<lazyframe>$sink_parquet()<lazyframe>$sink_ndjson()as_polars_df(<lazyframe>)
- The following functions gain the
engineargument (#1635).<lazyframe>$explain()<lazyframe>$profile()
pl$collect_all()to efficiently collect a list of LazyFrames (#1598, #1635).<lazyframe>$remove()and<dataframe>$remove()as a complement to
$filter()(#1632).- New method
<expr>$is_close()(#1637). - New methods
<group_by>$len()and<lazy_group_by>$len()(#1638).
Bug fixes
- Bump Rust Polars to py-1.35.2 (#1636).