Cargo Features

polars-core = { version = "0.41.3", default-features = false, features = ["simd", "nightly", "avx512", "temporal", "random", "algorithm_group_by", "docs", "performant", "strings", "object", "fmt", "fmt_no_tty", "rows", "zip_with", "round_series", "checked_arithmetic", "is_first_distinct", "is_last_distinct", "row_hash", "reinterpret", "take_opt_iter", "group_by_list", "rolling_window", "rolling_window_by", "diagonal_concat", "product", "unique_counts", "describe", "timezones", "dynamic_group_by", "arrow_rs", "dtype-date", "dtype-datetime", "dtype-time", "dtype-array", "dtype-i16", "dtype-decimal", "dtype-u16", "dtype-categorical", "dtype-struct", "bigidx", "python", "serde", "serde-lazy", "docs-selection"] }
default = algorithm_group_by

The algorithm_group_by feature is set by default whenever polars-core is added without default-features = false somewhere in the dependency tree.

simd nightly?

Enables simd of polars-arrow and polars-compute

nightly = simd

Enables nightly of polars-arrow, hashbrown, and polars-utils

temporal docs-selection? dtype-date? dtype-datetime? dtype-duration? dtype-time? = chrono, regex

Enables regex of polars-error

Affects chunked_array::temporal

random docs-selection? = rand, rand_distr

Affects polars-core::random

algorithm_group_by default docs-selection?

Affects frame::group_by

lazy docs docs-selection?
performant = reinterpret

~40% faster collect, needed until trustedlength iter stabilizes
more fast paths, slower compilation

Enables performant of polars-arrow

Affects owned::coerce_lhs_rhs_owned

strings docs-selection? = regex

extra utilities for StringChunked

Enables strings of polars-arrow, regex of polars-error

object docs-selection? = serde_json

support for ObjectChunked<T> (downcastable Series of any type)

Affects chunked_array::object, any_value::OwnedObject, datatypes::ObjectType, datatypes::ObjectChunked, series_trait::SeriesTrait.get_object, series_trait::SeriesTrait.get_object_chunked_unchecked, frame::row


Enables tty of comfy-table

fmt_no_tty = comfy-table
rows docs-selection?

opt-in features
create from row values
and include pivot operation

Affects frame::row

zip_with docs-selection?


Affects ops::zip

checked_arithmetic docs-selection?

Affects borrowed::checked, series_trait::SeriesTrait.checked_div

is_first_distinct docs-selection?

Affects ops::IsFirstDistinct

is_last_distinct docs-selection?

Affects ops::IsLastDistinct

dot_product row_hash docs-selection?
reinterpret performant?

Affects ops::Reinterpret


allow group_by operation on list type

rolling_window docs-selection?

rolling window functions

Affects ops::ChunkRollApply, series_trait::SeriesTrait.rolling_map

rolling_window_by docs-selection?
diagonal_concat docs-selection?

Affects functions::concat_df_diagonal

dataframe_arithmetic product docs-selection?
partition_by describe docs-selection?
timezones = chrono-tz

Enables chrono-tz and timezones of polars-arrow

Affects temporal::validate_time_zone, temporal::parse_time_zone, temporal::parse_fixed_offset

dynamic_group_by = dtype-date, dtype-datetime
arrow_rs = arrow-array

Enables arrow_rs of polars-arrow

dtype-date dynamic_group_by? = temporal

opt-in datatypes for Series

Affects chunked_array::temporal

dtype-datetime dynamic_group_by? = temporal

Affects fmt::PlTzAware, chunked_array::temporal

dtype-duration dtype-time = temporal

Enables dtype-array of polars-arrow and polars-compute

Affects builder::fixed_size_list, iterator::FixedSizeListIterNoNull, datatypes::FixedSizeListType, datatypes::ArrayChunked

dtype-i8 dtype-i16
dtype-decimal docs-selection?

Enables dtype-decimal of polars-arrow

Affects datatypes::Int128Type, datatypes::Int128Chunked, fmt::get_trim_decimal_zeros, fmt::set_trim_decimal_zeros, fmt::fmt_decimal

dtype-u8 dtype-u16
dtype-categorical docs-selection?

Affects logical::categorical, dtype::create_enum_data_type


Affects iterator::StructIter


scale to terabytes?

Enables bigidx of polars-arrow and polars-utils

Affects aliases::IdxCa, aliases::IDX_DTYPE, aliases::IdxType

serde serde-lazy?

Enables serde of bitflags, serde of smartstring and serde

activate if you want serde support for Series and DataFrames

Affects polars-core::serde

serde-lazy = serde

Enables serde of polars-arrow, chrono, indexmap, and smartstring

docs-selection = algorithm_group_by, checked_arithmetic, dataframe_arithmetic, describe, diagonal_concat, docs, dot_product, dtype-categorical, dtype-decimal, is_first_distinct, is_last_distinct, lazy, ndarray, object, partition_by, product, random, rolling_window, rolling_window_by, row_hash, rows, strings, temporal, zip_with

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

arrow-array arrow_rs?
chrono serde-lazy? temporal?
chrono-tz timezones?

Enables chrono-tz ^0.8.1

comfy-table fmt? fmt_no_tty?
ndarray docs-selection?
rand random?
rand_distr random?
regex strings? temporal?
serde_json object?