Changes
🚀 Performance improvements
- perf: Dont export
stableinnarwhals/__init__.py, instead requireimport narwhals.stable(#2480) - perf: Avoid module-level
importlib.util.find_spec(#2391) - perf: Optimize, generalize
_DelayedCategories->_DeferredIterable(#2421)
✨ Enhancements
- feat: add
dt.truncate(#2465)
🐞 Bug fixes
- patch: Filter
is_sparseDeprecationWarning in test suite (#2476)
📖 Documentation
- docs: Use Google-Style admonition (#2475)
- docs: Add
_translatedocs (#2455) - docs: Correct sortedness requirement for
join_asof(#2457)
🛠️ Other improvements
- ci: switch from pdm to uv in tea-tasting downstream tests (#2466)
- chore: bump
pyarrow-stubs==19.2(#2458) - test: cudf fixup, address pandas deprecationwarning (#2496)
- chore: Adopting more
ruffcomplexity rules (#2460) - chore: Use
_with_callablefor narwhals expr namespaces (#2477) - refactor: remove
Implementation._aliasin favor of non-auto values (#2432) - chore: Remove name-preserving Dask operations (#2473)
- docs: Add
_translatedocs (#2455) - ci: Fix TPCH test data generation in CI (#2470)
- ci: reenable tubular tests (#2467)
- chore: Add
Compliant*.to_narwhals(#2461) - perf: Optimize, generalize
_DelayedCategories->_DeferredIterable(#2421)
Thank you to all our contributors for making this release possible!
@FBruzzesi, @MarcoGorelli, @dangotbanned, @dependabot[bot], @e10v, @raisadz and dependabot[bot]