Changes
✨ Enhancements
- feat: Raise on mismatched
*Framejoins (#3055) - feat: Add
Schema.from_{native,<backend>}(#2957) - feat: add multivalue replacement in
.str.replace[_all](#2886) - feat: Allow spark-like backends in
.lazy(backend=...)(#3032)
🐞 Bug fixes
- fix: duckdb
Lazyframe.uniquewas raising when column name was "group" (#3070)
📖 Documentation
🛠️ Other improvements
- refactor: Organizing
Compliant*APIs (#3045) - refactor: Add
CompliantFrameprotocol (#3056) - chore: use
with_callableinfill_nan(#3052) - chore: remove (internal)
ExprKind.NARY(#3050) - chore: fixup duckdb nightly (#3051)
- refactor: Allow
Noneinobject_native_to_narwhals_dtype(#3038) - refactor(typing): Remove
CompliantDataFrame.collect(#3041) - chore(typing): Ignore inferred type in
dask_expr.Series.mask(#3039)
Thank you to all our contributors for making this release possible!
@FBruzzesi, @MarcoGorelli, @camriddell and @dangotbanned