[package]
edition = "2024"
name = "polars-python"
version = "0.53.0"
authors = ["Ritchie Vink <ritchie46@gmail.com>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Enable running Polars workloads in Python"
homepage = "https://www.pola.rs/"
readme = "README.md"
license = "MIT"
repository = "https://github.com/pola-rs/polars"
resolver = "2"
[features]
allocator = []
allow_unused = []
approx_unique = ["polars/approx_unique"]
array_any_all = [
"polars/array_any_all",
"polars/dtype-array",
]
array_count = [
"polars/array_count",
"polars/dtype-array",
]
asof_join = ["polars/asof_join"]
async = [
"polars-lazy/async",
"polars-io/async",
]
avro = ["polars/avro"]
binary_encoding = ["polars/binary_encoding"]
bitwise = ["polars/bitwise"]
c_api = []
catalog = ["polars-lazy/catalog"]
clipboard = ["arboard"]
cloud = [
"polars/cloud",
"polars/aws",
"polars/gcp",
"polars/azure",
"polars/http",
]
cross_join = ["polars/cross_join"]
cse = ["polars/cse"]
csv = [
"polars/csv",
"polars-mem-engine/csv",
]
cutqcut = ["polars/cutqcut"]
decompress = ["polars/decompress"]
default = ["full"]
default_alloc = []
dtype-array = []
dtype-f16 = []
dtype-i128 = []
dtype-i16 = []
dtype-i8 = []
dtype-u128 = []
dtype-u16 = []
dtype-u8 = []
dtypes = [
"dtype-array",
"dtype-i16",
"dtype-i8",
"dtype-u16",
"dtype-u8",
"dtype-i128",
"dtype-u128",
"dtype-f16",
"object",
]
extract_groups = ["polars/extract_groups"]
extract_jsonpath = ["polars/extract_jsonpath"]
ffi_plugin = ["polars-lazy/ffi_plugin"]
find_many = ["polars/find_many"]
full = [
"async",
"pymethods",
"optimizations",
"io",
"operations",
"dtypes",
"meta",
"decompress",
"regex",
"sql",
"binary_encoding",
"ffi_plugin",
"polars_cloud_client",
"new_streaming",
]
hist = ["polars/hist"]
iejoin = ["polars/iejoin"]
index_of = ["polars/index_of"]
io = [
"json",
"parquet",
"ipc",
"ipc_streaming",
"avro",
"csv",
"scan_lines",
"cloud",
"clipboard",
]
ipc = [
"polars/ipc",
"polars-mem-engine/ipc",
]
ipc_streaming = ["polars/ipc_streaming"]
is_in = ["polars/is_in"]
json = [
"polars/serde",
"polars-buffer/serde",
"serde_json",
"polars/json",
"polars-utils/serde",
"polars-mem-engine/json",
]
list_any_all = ["polars/list_any_all"]
list_count = ["polars/list_count"]
list_drop_nulls = ["polars/list_drop_nulls"]
list_filter = ["polars/list_filter"]
list_gather = ["polars/list_gather"]
list_sample = ["polars/list_sample"]
list_sets = ["polars-lazy/list_sets"]
merge_sorted = ["polars/merge_sorted"]
meta = ["polars/meta"]
new_streaming = ["polars-lazy/new_streaming"]
nightly = ["polars/nightly"]
object = ["polars/object"]
operations = [
"approx_unique",
"array_any_all",
"array_count",
"bitwise",
"is_in",
"repeat_by",
"trigonometry",
"sign",
"performant",
"list_gather",
"list_filter",
"list_count",
"list_sets",
"list_any_all",
"list_drop_nulls",
"list_sample",
"cutqcut",
"rle",
"extract_groups",
"pivot",
"extract_jsonpath",
"asof_join",
"cross_join",
"pct_change",
"index_of",
"search_sorted",
"merge_sorted",
"top_k",
"propagate_nans",
"timezones",
"peaks",
"hist",
"find_many",
"string_normalize",
]
optimizations = [
"cse",
"polars/fused",
]
parquet = [
"polars/parquet",
"polars-parquet",
"polars-mem-engine/parquet",
]
pct_change = ["polars/pct_change"]
peaks = ["polars/peaks"]
performant = ["polars/performant"]
pivot = ["polars/pivot"]
polars_cloud_client = ["polars/polars_cloud_client"]
polars_cloud_server = ["polars/polars_cloud_server"]
propagate_nans = ["polars/propagate_nans"]
pymethods = []
regex = ["polars/regex"]
repeat_by = ["polars/repeat_by"]
rle = ["polars/rle"]
rt32 = []
rt64 = ["polars/bigidx"]
rtcompat = ["polars/bigidx"]
scan_lines = [
"polars/scan_lines",
"polars-mem-engine/scan_lines",
]
search_sorted = ["polars/search_sorted"]
sign = ["polars/sign"]
sql = ["polars/sql"]
string_normalize = ["polars/string_normalize"]
timezones = ["polars/timezones"]
top_k = ["polars/top_k"]
trigonometry = ["polars/trigonometry"]
[lib]
name = "polars_python"
path = "src/lib.rs"
[dependencies.arboard]
version = "3.4.0"
optional = true
default-features = false
[dependencies.arrow]
version = "0.53.0"
features = [
"compute_aggregate",
"compute_arithmetics",
"compute_bitwise",
"compute_boolean",
"compute_boolean_kleene",
"compute_comparison",
]
default-features = false
package = "polars-arrow"
[dependencies.bincode]
version = "2.0"
features = [
"serde",
"std",
]
[dependencies.bytemuck]
version = "1.22"
features = [
"derive",
"extern_crate_alloc",
]
[dependencies.bytes]
version = "1.11"
[dependencies.chrono]
version = "<=0.4.41"
features = ["std"]
default-features = false
[dependencies.chrono-tz]
version = "0.10"
[dependencies.either]
version = "1.14"
[dependencies.flate2]
version = "1"
default-features = false
[dependencies.hashbrown]
version = "0.16.0"
features = [
"rayon",
"serde",
]
[dependencies.itoa]
version = "1.0.6"
[dependencies.libc]
version = "0.2"
[dependencies.ndarray]
version = "0.17"
default-features = false
[dependencies.num-traits]
version = "0.2"
[dependencies.numpy]
version = "0.27"
[dependencies.parking_lot]
version = "0.12"
[dependencies.polars]
version = "0.53.0"
features = [
"abs",
"approx_unique",
"array_any_all",
"arg_where",
"bitwise",
"business",
"concat_str",
"cum_agg",
"cumulative_eval",
"dataframe_arithmetic",
"month_start",
"month_end",
"offset_by",
"diagonal_concat",
"diff",
"dot_diagram",
"dot_product",
"dtype-categorical",
"dtype-extension",
"dtype-full",
"dynamic_group_by",
"ewma",
"ewma_by",
"fmt",
"fused",
"interpolate",
"interpolate_by",
"is_first_distinct",
"is_last_distinct",
"is_unique",
"is_between",
"is_close",
"lazy",
"list_eval",
"list_to_struct",
"list_arithmetic",
"array_arithmetic",
"array_to_struct",
"log",
"mode",
"moment",
"ndarray",
"partition_by",
"product",
"random",
"range",
"rank",
"reinterpret",
"replace",
"rolling_window",
"rolling_window_by",
"round_series",
"row_hash",
"rows",
"semi_anti_join",
"serde-lazy",
"string_encoding",
"string_normalize",
"string_reverse",
"string_to_integer",
"string_pad",
"strings",
"temporal",
"to_dummies",
"true_div",
"unique_counts",
"zip_with",
"cov",
]
default-features = false
[dependencies.polars-buffer]
version = "0.53.0"
default-features = false
[dependencies.polars-compute]
version = "0.53.0"
default-features = false
[dependencies.polars-core]
version = "0.53.0"
features = ["python"]
default-features = false
[dependencies.polars-dtype]
version = "0.53.0"
default-features = false
[dependencies.polars-error]
version = "0.53.0"
default-features = false
[dependencies.polars-expr]
version = "0.53.0"
default-features = false
[dependencies.polars-ffi]
version = "0.53.0"
default-features = false
[dependencies.polars-io]
version = "0.53.0"
default-features = false
[dependencies.polars-lazy]
version = "0.53.0"
features = ["python"]
default-features = false
[dependencies.polars-mem-engine]
version = "0.53.0"
features = ["python"]
default-features = false
[dependencies.polars-ops]
version = "0.53.0"
features = ["bitwise"]
default-features = false
[dependencies.polars-parquet]
version = "0.53.0"
optional = true
default-features = false
[dependencies.polars-plan]
version = "0.53.0"
default-features = false
[dependencies.polars-row]
version = "0.53.0"
default-features = false
[dependencies.polars-testing]
version = "0.53.0"
default-features = false
[dependencies.polars-time]
version = "0.53.0"
default-features = false
[dependencies.polars-utils]
version = "0.53.0"
features = ["python"]
default-features = false
[dependencies.pyo3]
version = "0.27"
features = [
"abi3-py310",
"chrono",
"chrono-tz",
"multiple-pymethods",
]
[dependencies.rayon]
version = "1.9"
[dependencies.recursive]
version = "0.1"
[dependencies.serde_json]
version = "1"
optional = true
[build-dependencies.version_check]
version = "0.9.4"
[target.'cfg(all(target_family = "unix", not(target_os = "macos"), not(target_os = "emscripten")))'.dependencies.tikv-jemallocator]
version = "0.6.0"
features = [
"disable_initial_exec_tls",
"background_threads",
]
[target.'cfg(all(target_family = "unix", target_os = "macos"))'.dependencies.tikv-jemallocator]
version = "0.6.0"
features = ["disable_initial_exec_tls"]
[target.'cfg(any(not(target_family = "unix"), target_os = "emscripten"))'.dependencies.mimalloc]
version = "0.1"
default-features = false
[lints.clippy]
collapsible_if = "allow"