$ arrow-cast

v57.2.0

Cast kernel and utilities for Apache Arrow

Downloads: 44.3M
Recent: 9.2M
Versions: 51
Updated: January 11, 2026

Latest Update Summary

Crate

Name: arrow-cast New version: 57.0.0 Release date: 2025-10-23T11:00:57Z

Crate readme

Short description Native Rust implementation of Apache Arrow and Apache Parquet

Long description This repository contains the core Rust implementation for Apache Arrow, an in-memory columnar format, and Apache Parquet, a columnar file format. It includes crates for core Arrow functionality (memory layout, arrays, computations), the Arrow-Flight IPC protocol, and support for reading and writing Parquet files. A derive crate is also provided for simpler struct serialization. The project follows Semantic Versioning and aims for monthly releases, with major API changes at most quarterly. It is built and tested with stable Rust, maintaining a rolling MSRV that is at least six months old.

Featuresarrowarrow-flightparquetparquet_derive

Code Examples Core functionality crates

 arrow
parquet
arrow-flight
parquet_derive

Related project crates

 object_store
datafusion
ballista
parquet_opendal

Example workflow

 you can write SQL queries or a `DataFrame` (using the
[`datafusion`] crate) to read a parquet file (using the [`parquet`] crate), evaluate it in-memory using Arrow's columnar format (using the [`arrow`] crate), and send to another process (using the [`arrow-flight`] crate).

Deprecated API example

 #[deprecated(since = "51.0.0", note = "Use `date_part` instead")

Linkshttps://www.rust-lang.org/https://arrow.apache.org/https://crates.io/crates/arrowhttps://crates.io/crates/parquethttps://crates.io/crates/parquet-derivehttps://crates.io/crates/arrow-flighthttps://crates.io/crates/object-storehttps://crates.io/crates/datafusionhttps://crates.io/crates/ballistahttps://crates.io/crates/parquet_opendalhttps://github.com/apache/arrow-rs/issues/7835https://github.com/apache/arrow-rs/milestone/3https://github.com/apache/arrow-rs/milestone/5https://github.com/apache/arrow-rs/milestone/6https://github.com/apache/arrow-rs/issues/5368https://semver.org/https://github.com/apache/arrow-rs/issues/6737https://arrow.apache.org/community/https://s.apache.org/slack-invitehttps://github.com/apache/arrow-rs/discussionshttps://discord.gg/YAb2TdazKQhttps://github.com/apache/arrow-rs/issueshttps://github.com/apache/arrow-rs/blob/main/CONTRIBUTING.md#breaking-changeshttps://docs.rs/arrow/latesthttps://docs.rs/arrow-flight/latesthttps://docs.rs/parquet/latesthttps://docs.rs/parquet-derive/latesthttps://arrow.apache.org/rusthttps://github.com/apache/arrow-rs-object-storehttps://github.com/apache/datafusion/blob/main/README.mdhttps://github.com/apache/datafusion-ballista/blob/main/README.mdhttps://github.com/apache/opendal/blob/main/integrations/parquet/README.mdhttps://github.com/apache/arrow-rs-object-store/blob/main/README.mdhttp://www.apache.org/licenses/LICENSE-2.0https://github.com/apache/arrow-rs/tree/57.0.0https://github.com/apache/arrow-rs/compare/56.2.0...57.0.0https://github.com/apache/arrow-rs/pull/8626https://github.com/apache/arrow-rs/pull/8596https://github.com/apache/arrow-rs/pull/8595https://github.com/apache/arrow-rs/pull/8587https://github.com/apache/arrow-rs/pull/8570https://github.com/apache/arrow-rs/pull/8569https://github.com/apache/arrow-rs/pull/8530https://github.com/apache/arrow-rs/pull/8529https://github.com/apache/arrow-rs/pull/8470https://github.com/apache/arrow-rs/pull/8447https://github.com/apache/arrow-rs/pull/8425https://github.com/apache/arrow-rs/pull/8424https://github.com/apache/arrow-rs/pull/8405https://github.com/apache/arrow-rs/pull/8396https://github.com/apache/arrow-rs/pull/8291https://github.com/apache/arrow-rs/pull/8290https://github.com/apache/arrow-rs/pull/8286https://github.com/apache/arrow-rs/issues/4886https://github.com/apache/arrow-rs/issues/8639https://github.com/apache/arrow-rs/issues/8614https://github.com/apache/arrow-rs/issues/8612https://github.com/apache/arrow-rs/issues/8610https://github.com/apache/arrow-rs/issues/8609https://github.com/apache/arrow-rs/issues/8606https://github.com/apache/arrow-rs/issues/8591https://github.com/apache/arrow-rs/issues/8559https://github.com/apache/arrow-rs/issues/8531https://github.com/apache/arrow-rs/issues/8523https://github.com/apache/arrow-rs/issues/8517https://github.com/apache/arrow-rs/issues/8515https://github.com/apache/arrow-rs/issues/8513https://github.com/apache/arrow-rs/issues/8503https://github.com/apache/arrow-rs/issues/8497https://github.com/apache/arrow-rs/issues/8469https://github.com/apache/arrow-rs/issues/8461https://github.com/apache/arrow-rs/issues/8451https://github.com/apache/arrow-rs/issues/8439https://github.com/apache/arrow-rs/issues/8412https://github.com/apache/arrow-rs/issues/8411https://github.com/apache/arrow-rs/issues/8398https://github.com/apache/arrow-rs/issues/8389https://github.com/apache/arrow-rs/issues/8386https://github.com/apache/arrow-rs/issues/8370https://github.com/apache/arrow-rs/issues/8361https://github.com/apache/arrow-rs/issues/8347https://github.com/apache/arrow-rs/issues/8337https://github.com/apache/arrow-rs/issues/8336https://github.com/apache/arrow-rs/issues/8334https://github.com/apache/arrow-rs/issues/8332https://github.com/apache/arrow-rs/issues/8331https://github.com/apache/arrow-rs/issues/8330https://github.com/apache/arrow-rs/issues/8303https://github.com/apache/arrow-rs/issues/8285https://github.com/apache/arrow-rs/issues/8281https://github.com/apache/arrow-rs/issues/8631https://github.com/apache/arrow-rs/issues/8579https://github.com/apache/arrow-rs/issues/8542https://github.com/apache/arrow-rs/issues/8539https://github.com/apache/arrow-rs/issues/8534https://github.com/apache/arrow-rs/issues/8533https://github.com/apache/arrow-rs/issues/8526https://github.com/apache/arrow-rs/issues/8505https://github.com/apache/arrow-rs/issues/8443https://github.com/apache/arrow-rs/issues/8435https://github.com/apache/arrow-rs/issues/8406https://github.com/apache/arrow-rs/issues/8404https://github.com/apache/arrow-rs/issues/8403https://github.com/apache/arrow-rs/issues/8382https://github.com/apache/arrow-rs/issues/8319https://github.com/apache/arrow-rs/issues/8296https://github.com/apache/arrow-rs/pull/8383https://github.com/apache/arrow-rs/issues/8588https://github.com/apache/arrow-rs/pull/8654https://github.com/apache/arrow-rs/pull/8583https://github.com/apache/arrow-rs/pull/8574https://github.com/apache/arrow-rs/pull/8527https://github.com/apache/arrow-rs/pull/8388https://github.com/apache/arrow-rs/issues/8601https://github.com/apache/arrow-rs/issues/8538https://github.com/apache/arrow-rs/issues/8504https://github.com/apache/arrow-rs/issues/8418https://github.com/apache/arrow-rs/issues/8410https://github.com/apache/arrow-rs/issues/8380https://github.com/apache/arrow-rs/issues/8377https://github.com/apache/arrow-rs/issues/8374https://github.com/apache/arrow-rs/pull/8642https://github.com/apache/arrow-rs/pull/8636https://github.com/apache/arrow-rs/pull/8634https://github.com/apache/arrow-rs/pull/8633https://github.com/apache/arrow-rs/pull/8629https://github.com/apache/arrow-rs/pull/8627https://github.com/apache/arrow-rs/pull/8625https://github.com/apache/arrow-rs/pull/8621https://github.com/apache/arrow-rs/pull/8620https://github.com/apache/arrow-rs/pull/8617https://github.com/apache/arrow-rs/pull/8616https://github.com/apache/arrow-rs/pull/8615https://github.com/apache/arrow-rs/pull/8613https://github.com/apache/arrow-rs/pull/8611https://github.com/apache/arrow-rs/pull/8604https://github.com/apache/arrow-rs/pull/8603https://github.com/apache/arrow-rs/pull/8599https://github.com/apache/arrow-rs/pull/8598https://github.com/apache/arrow-rs/pull/8597https://github.com/apache/arrow-rs/pull/8594https://github.com/apache/arrow-rs/pull/8592https://github.com/apache/arrow-rs/pull/8586https://github.com/apache/arrow-rs/pull/8585https://github.com/apache/arrow-rs/pull/8584https://github.com/apache/arrow-rs/pull/8582https://github.com/apache/arrow-rs/pull/8581https://github.com/apache/arrow-rs/pull/8580https://github.com/apache/arrow-rs/pull/8578https://github.com/apache/arrow-rs/pull/8577https://github.com/apache/arrow-rs/pull/8576https://github.com/apache/arrow-rs/pull/8575https://github.com/apache/arrow-rs/pull/8573https://github.com/apache/arrow-rs/pull/8563https://github.com/apache/arrow-rs/pull/8562https://github.com/apache/arrow-rs/pull/8560https://github.com/apache/arrow-rs/pull/8558https://github.com/apache/arrow-rs/pull/8557https://github.com/apache/arrow-rs/pull/8556https://github.com/apache/arrow-rs/pull/8555https://github.com/apache/arrow-rs/pull/8554https://github.com/apache/arrow-rs/pull/8552https://github.com/apache/arrow-rs/pull/8550https://github.com/apache/arrow-rs/pull/8546https://github.com/apache/arrow-rs/pull/8545https://github.com/apache/arrow-rs/pull/8544https://github.com/apache/arrow-rs/pull/8543https://github.com/apache/arrow-rs/pull/8541https://github.com/apache/arrow-rs/pull/8540https://github.com/apache/arrow-rs/pull/8536https://github.com/apache/arrow-rs/pull/8535https://github.com/apache/arrow-rs/pull/8525https://github.com/apache/arrow-rs/pull/8524https://github.com/apache/arrow-rs/pull/8522https://github.com/apache/arrow-rs/pull/8519https://github.com/apache/arrow-rs/pull/8516https://github.com/apache/arrow-rs/pull/8514https://github.com/apache/arrow-rs/pull/8512https://github.com/apache/arrow-rs/pull/8511https://github.com/apache/arrow-rs/pull/8510https://github.com/apache/arrow-rs/pull/8509https://github.com/apache/arrow-rs/pull/8508https://github.com/apache/arrow-rs/pull/8507https://github.com/apache/arrow-rs/pull/8506https://github.com/apache/arrow-rs/pull/8502https://github.com/apache/arrow-rs/pull/8501https://github.com/apache/arrow-rs/pull/8500https://github.com/apache/arrow-rs/pull/8499https://github.com/apache/arrow-rs/pull/8498https://github.com/apache/arrow-rs/pull/8494https://github.com/apache/arrow-rs/pull/8493https://github.com/apache/arrow-rs/pull/8492https://github.com/apache/arrow-rs/pull/8491https://github.com/apache/arrow-rs/pull/8490https://github.com/apache/arrow-rs/pull/8489https://github.com/apache/arrow-rs/pull/8488https://github.com/apache/arrow-rs/pull/8487https://github.com/apache/arrow-rs/pull/8486https://github.com/apache/arrow-rs/pull/8485https://github.com/apache/arrow-rs/pull/8484https://github.com/apache/arrow-rs/pull/8483https://github.com/apache/arrow-rs/pull/8482https://github.com/apache/arrow-rs/pull/8481https://github.com/apache/arrow-rs/pull/8478https://github.com/apache/arrow-rs/pull/8475https://github.com/apache/arrow-rs/pull/8473https://github.com/apache/arrow-rs/pull/8471https://github.com/apache/arrow-rs/pull/8468https://github.com/apache/arrow-rs/pull/8462https://github.com/apache/arrow-rs/pull/8459https://github.com/apache/arrow-rs/pull/8458https://github.com/apache/arrow-rs/pull/8457https://github.com/apache/arrow-rs/pull/8456https://github.com/apache/arrow-rs/pull/8455https://github.com/apache/arrow-rs/pull/8454https://github.com/apache/arrow-rs/pull/8453https://github.com/apache/arrow-rs/pull/8452https://github.com/apache/arrow-rs/pull/8450https://github.com/apache/arrow-rs/pull/8449https://github.com/apache/arrow-rs/pull/8448https://github.com/apache/arrow-rs/pull/8444https://github.com/apache/arrow-rs/pull/8438https://github.com/apache/arrow-rs/pull/8436https://github.com/apache/arrow-rs/pull/8434https://github.com/apache/arrow-rs/pull/8433https://github.com/apache/arrow-rs/pull/8432https://github.com/apache/arrow-rs/pull/8431https://github.com/apache/arrow-rs/pull/8429https://github.com/apache/arrow-rs/pull/8426https://github.com/apache/arrow-rs/pull/8421https://github.com/apache/arrow-rs/pull/8417https://github.com/apache/arrow-rs/pull/8416https://github.com/apache/arrow-rs/pull/8415https://github.com/apache/arrow-rs/pull/8414https://github.com/apache/arrow-rs/pull/8413https://github.com/apache/arrow-rs/pull/8409https://github.com/apache/arrow-rs/pull/8408https://github.com/apache/arrow-rs/pull/8402https://github.com/apache/arrow-rs/pull/8401https://github.com/apache/arrow-rs/pull/8399https://github.com/apache/arrow-rs/pull/8397https://github.com/apache/arrow-rs/pull/8395https://github.com/apache/arrow-rs/pull/8392https://github.com/apache/arrow-rs/pull/8391https://github.com/apache/arrow-rs/pull/8390https://github.com/apache/arrow-rs/pull/8385https://github.com/apache/arrow-rs/pull/8381https://github.com/apache/arrow-rs/pull/8379https://github.com/apache/arrow-rs/pull/8375https://github.com/apache/arrow-rs/pull/8371https://github.com/apache/arrow-rs/pull/8366https://github.com/apache/arrow-rs/pull/8349https://github.com/apache/arrow-rs/pull/8340https://github.com/apache/arrow-rs/pull/8282

https://api.github.com/repos/apache/arrow-rs/releases/256648414

Release info

Release version: 57.0.0

Release description This release introduces significant enhancements and breaking changes across the Apache Arrow Rust project. A major breaking change involves the consistent use of Arc<FileEncryptionProperties> throughout, simplifying data structures and reducing copying, particularly for encryption-enabled Parquet files. The arrow-avro crate now has full support for Avro data, including detailed roundtrip tests and handling of various data types, alongside fixes for its writer documentation. The Variant type system has seen extensive development, with new implementations for array iteration, equality checks, and streamlined builders, improving the handling of complex and nested data structures within Parquet. Performance improvements are noted in IPC writing through Zstd context reuse and in memory efficiency for compressed Parquet writers. Display formatting for various DataType variants, such as RunEndEncoded, Map, ListView, and Timestamp, has been enhanced for better readability. Additionally, the project has migrated a substantial portion of its codebase to Rust 2024, alongside updating dependencies like pyo3 and the Rust toolchain to 1.90.

Code Examples

Minor update: 57.1.0 → 57.2.0

$ DOWNLOADS TREND

34.8M44.3M

$ VERSION HISTORY

v57.2.0January 11, 2026
v57.1.0November 24, 2025
v57.0.0October 23, 2025
v56.2.0September 23, 2025

$ LINKS

$ INSTALL

cargo add arrow-cast

Or add to Cargo.toml: arrow-cast = "57.2.0"