Releases: narwhals-dev/narwhals
Narwhals v1.14.2
Changes
✨ Enhancements
- feat: improve error message when casting to invalid type (#1429)
- feat: add support for
Series|Expr.skew
method (#1173) - feat: make sure
from narwhals.stable.v1.dependencies
import works (#1430) - feat: support
constraints
inDataFrame.filter
(#1417) - feat: add
Expr|Series.rolling_mean
method (#1290)
🐞 Bug fixes
- fix: return Python bool instead of pyarrow boolean scalar for Series reductions (#1432)
- fix: correct minimum Polars version for ewm_mean (#1415)
📖 Documentation
- docs: use type hints + from_native/to_native in dataframe.py (#1425)
- docs: explain optional boolean args in from_native (#1421)
- docs: Add documentation for LazyGroupBy (#1423)
- docs: add Plotly to the list of projects using Narwhals in README.md (#1418)
- docs: use type hints + from_native/to_native in dataframe.py (#1411)
- docs: use type hints + from_native/to_native in series.py (#1408)
- docs: add vegafusion to "used by" on readme (#1409)
- docs: use from_native / to_native in series.py (#1406)
- docs: use boolean columns in any/all horizontal docstrings (#1403)
- docs: use from_native / to_native in expr.py (#1404)
🛠️ Other improvements
Thank you to all our contributors for making this release possible!
@CarloLepelaars, @DeaMariaLeon, @FBruzzesi, @MarcoGorelli, @gvwilson, @marenwestermann and @raisadz
Narwhals v1.14.1
Changes
✨ Enhancements
🐞 Bug fixes
- fix: remove rogue "t" in ColumnNotFoundError (#1398)
🛠️ Other improvements
- ci: add plotly to downstream tests (#1376)
- ci: prevent ibis from setting upper bounds (where possible) (#1399)
Thank you to all our contributors for making this release possible! @FBruzzesi, @DeaMariaLeon, and @MarcoGorelli
Narwhals v1.14.0
Changes
✨ Enhancements
- feat: add
Series|Expr.is_finite
method (#1341) - feat: make exceptions module public (#1391)
- feat: consistently raise
ColumnNotFoundError
for missing columns inselect
anddrop
(#1389) - feat: add
Series|Expr.cum_prod
method, addreverse
kw incum_sum
method (#1386) - feat: add
Series|Expr
cum_min
andcum_max
methods (#1384) - feat: Improve error message when comparing Series with list literal, or when using multi-output expressions in unsupported context (#1382)
- feat: add
Series|Expr.cum_count
method (#1380)
📖 Documentation
- docs: add missing description for left join strategy (#1396)
- docs: pandas boolean content tabs (#1394)
- docs: Add page about pandas booleans (#1392)
- docs: Show ExprT as return type for Expr namespaces (#1388)
- docs: Start using Darglint (#1387)
- docs : docstrings examples - dtypes (#1121)
- docs: Document more return types (#1381)
- docs: Avoid copying >>> and ... from clipboard (#1375)
🛠️ Other improvements
- chore: update
InvalidIntoExprError
to mentionnw.lit
(#1393) - chore: Consistent invalid
IntoExpr
error (#1379) - feat: consistently raise
ColumnNotFoundError
for missing columns inselect
anddrop
(#1389) - chore: suggest to add issue number in pr template (#1378)
- chore: More Polars typing, update 'used by', link to roadmap (#1377)
- chore: cleanup tpch execute (#1374)
Thank you to all our contributors for making this release possible!
@DeaMariaLeon, @EdAbati, @FBruzzesi, @LiamConnors, @MarcoGorelli, @anopsy and @raisadz
Narwhals v1.13.5
Changes
🚀 Performance improvements
- perf: simplify pandas-like
with_columns
(#1366)
✨ Enhancements
- feat: add
DataFrame.pivot
for pandas like and Polars backend (#546)
🐞 Bug fixes
- fix: pandas and arrow
to_dummies
with nulls (#1040)
📖 Documentation
- docs: improve
new_series
docstring (#1365)
🛠️ Other improvements
- test: unxfail
test_to_dummies_drop_first_na
for cudf (#1364) - chore: More typing in _polars (#1363)
- chore: Improve typing in _polars/utils (#1358)
- chore: add issue_deprecation_warning to generate_unique_token function (#1359)
- chore: refactor
ArrowDataFrame.with_columns
(#1345)
Thank you to all our contributors for making this release possible!
@FBruzzesi, @MUKESHRAJMAHENDRAN, @MarcoGorelli and @raisadz
Narwhals v1.13.4
Changes
🚀 Performance improvements
- perf: Prefer getitem instead of loc for selecting multiple columns in pandas-like (#1355)
- perf: replace loc with getitem in Dask (#1356)
✨ Enhancements
- feat: support passing index object directly into maybe_set_index (#1319)
- feat: add more parameters to the fill_null method (#1149)
- feat: Adding support for Expr.map_batches (#1269)
- feat: pyarrow automated inference of format
%Y%m%d%H%M%S
(#1326) - feat: add support for
median
(#1212) - feat: allow mapping in
replace_strict
method (#1340)
🐞 Bug fixes
📖 Documentation
- docs: used by
tabmat
(#1339)
🛠️ Other improvements
- test: fix docstrings tests in CI (#1354)
- test: remove cuDF xfail for tests/series_only/to_list_test.py::test_to_list (#1353)
- chore: Rename some internals (#1351)
- ci: remove dask from tpch tests (#1348)
- ci: pin websockets, fixup 3.13 doctests, remove unnecessary xfail (#1343)
- test: Add a hypothesis test for getitem (#1098)
Thank you to all our contributors for making this release possible!
@AlessandroMiola, @DeaMariaLeon, @FBruzzesi, @IsaiasGutierrezCruz, @MarcoGorelli, @Riik, @raisadz and @sjdenny
Narwhals v1.13.3
Changes
- enabled inventory for intersphinx (#1330)
🚀 Performance improvements
- perf: improve
ArrowGroupBy.__iter__
performances (#1334)
✨ Enhancements
- feat: add
replace
andreplace_strict
(#1327) - feat: support to_list for cudf, note limitations (#1335)
- feat: add
maintain_order
to Expr.unique and Series.unique (#1333)
📖 Documentation
- docs: add "returns" documentation to functions.py (#1331)
- docs: update README with entry in Appears on section (#1332)
🛠️ Other improvements
- ci: trigger slow downstream libraries tests suites before release (#1321)
Thank you to all our contributors for making this release possible!
@AlessandroMiola, @EdAbati, @FBruzzesi, @MarcoGorelli, @marenwestermann, @raisadz and @srivarra
Narwhals v1.13.2
Changes
- expand "used by" (#1317)
🚀 Performance improvements
- perf: improve with_columns for pandas-like when using nw.lit (#1324)
📖 Documentation
- docs: add note about conversion as if from utc in convert_time_zone (#1320)
Thank you to all our contributors for making this release possible!
@MarcoGorelli, @pre-commit-ci and @pre-commit-ci[bot]
Narwhals v1.13.1
Changes
- Revert "depr: deprecate
strict
infrom_native
/to_native
in favour ofpass_through
" (#1311)
⚠️ Deprecations
- depr: deprecate
strict
infrom_native
/to_native
in favour ofpass_through
(#1308)
✨ Enhancements
- feat: add is_into_dataframe (#1288)
- Enh: adding automated inferencing of format
%Y-%m-%dT%H:%M
in pyarrow (#1292)
🐞 Bug fixes
- fix: consistent naming of positional arguments in from_native (#1310)
- fix:
narwhals_to_native_dtype
raise if polars dtype is passed (#1307) - fix: fixed-offset datetime weren't being parsed (#1303)
- fix: consistent to_numpy behaviour for tz-aware (#1305)
- fix: np.datetime64 scalar with ns resolution was become int instead of datetime in to_py_scalar (#1304)
📖 Documentation
- docs: document Stable API changes (#1309)
🛠️ Other improvements
- Revert "Revert "depr: deprecate strict in from_native /
to_native
in favour ofpass_through
(#1312) - ci: add vegafusion in ci checks (#1228)
Thank you to all our contributors for making this release possible!
@EdAbati, @FBruzzesi, @MarcoGorelli and @raisadz
Narwhals v1.12.1
Changes
✨ Enhancements
- feat: support dataframe.columns for interchange level (#1285)
🛠️ Other improvements
- ci: add marimo tests back (#1286)
- ci: set pre-commit autoupdate to run monthly instead of weekly (#1281)
Thank you to all our contributors for making this release possible!
@MarcoGorelli and @raisadz
Narwhals v1.12.0
Changes
🚀 Performance improvements
- perf: make to_py_scalar 3x faster when argument is str (#1276)
✨ Enhancements
- feat: support
columns
andselect
for InterchangeFrame if_df
is present (#1283) - RFC, feat: infer datetime format for pyarrow backend (#1195)
- feat: add is_pandas_index, is_modin_index, is_cudf_index, is_pandas_like_index utility functions (#1272)
- err: replace msg = "Please set allow_series=True" with msg = "Please set allow_series=True or series_only=True" (#1280)
🐞 Bug fixes
- fix:
from_native
was sometimes raising unnecessarily withstrict=False
(#1274)
📖 Documentation
- docs: Render table of contents members ordered & removed css reference (#1275)
🛠️ Other improvements
Thank you to all our contributors for making this release possible!
@DeaMariaLeon, @FBruzzesi, @MarcoGorelli, and @raisadz