github apache/arrow-rs 57.2.0
arrow 57.2.0

15 hours ago

Changelog

57.2.0 (2026-01-07)

Full Changelog

Breaking changes:

Implemented enhancements:

  • [parquet] further relax LevelInfoBuilder::types_compatible for ArrowWriter #9098
  • Update arrow-row documentation with Union encoding #9084
  • Add code examples for min and max compute functions #9055
  • Add append_n to bytes view builder API #9034 [arrow]
  • Move RunArray::get_physical_indices to RunEndBuffer #9025 [arrow]
  • Allow quote style in csv writer #9003 [arrow]
  • IPC support for ListView #9002 [arrow]
  • Implement BinaryArrayType for &FixedSizeBinaryArrays #8992 [arrow]
  • arrow-buffer: implement num-traits for i256 #8976 [arrow]
  • Support for Arc<str> in ParquetRecordWriter derive macro #8972
  • [arrow-avro] suggest switching from xz to liblzma #8970 [arrow]
  • arrow-buffer: add i256::trailing_zeros #8968 [arrow]
  • arrow-buffer: make i256::leading_zeros public #8965 [arrow]
  • Add spark like ignoreLeadingWhiteSpace and ignoreTrailingWhiteSpace options to the csv writer #8961 [arrow]
  • Add round trip benchmark for Parquet writer/reader #8955 [parquet]
  • Support performant interleave for List/LargeList #8952 [arrow]
  • [Variant] Support array access when parsing VariantPath #8946
  • Some panic!s could be represented as unimplemented!s #8932 [arrow]
  • [Variant] easier way to construct a shredded schema #8922
  • Support DataType::ListView and DataType::LargeListView in ArrayData::new_null #8908 [arrow]
  • Add GenericListViewArray::from_iter_primitive #8906 [arrow]
  • [Variant] Unify the cast option usage in ParquentVariant #8873
  • Blog post about efficient filter representation in Parquet filter pushdown #8843 [parquet]
  • Add comparison support for Union arrays in the cmp kernel #8837 [arrow]
  • [Variant] Support array shredding into List/LargeList/ListView/LargeListView #8830
  • Support Union data types for row format #8828 [arrow]
  • FFI support for ListView #8819 [arrow]
  • [Variant] Support more Arrow Datatypes from Variant primitive types #8805
  • FixedSizeBinaryBuilder supports append_array #8750 [arrow]
  • Implement special case zip with scalar for Utf8View #8724 [arrow]
  • [geometry] Wire up arrow reader/writer for GEOMETRY and GEOGRAPHY #8717 [parquet]

Fixed bugs:

  • Soundness Bug in try_binary when Array is implemented incorrectly in external crate #9106
  • casting Dict(_, LargeUtf8) to Utf8View (StringViewArray) panics #9101
  • wrong results for null count of nullif kernel #9085 [parquet] [arrow]
  • Empty first line in some code examples #9063
  • GenericByteViewArray::slice is not zero-copy but ought to be #9014
  • Regression in struct casting in 57.2.0 (not yet released) #9005 [arrow]
  • Fix panic when decoding multiple Union columns in RowConverter #8999 [arrow]
  • take_fixed_size_binary Does Not Consider NULL Indices #8947 [arrow]
  • [arrow-avro] RecordEncoder Bugs #8934 [arrow]
  • FixedSizeBinaryArray::try_new(...) Panics with Item Length of Zero #8926 [arrow]
  • cargo test -p arrow-cast fails on main #8910 [arrow]
  • GenericListViewArray::new_null ignores len and returns an empty array #8904 [arrow]
  • FixedSizeBinaryArray::new_null Does Not Properly Set the Length of the Values Buffer #8900 [arrow]
  • Struct casting requires same order of fields #8870 [arrow]
  • Cannot cast string dictionary to binary view #8841 [arrow]

Documentation updates:

Performance improvements:

  • [parquet] Avoid a clone while resolving the read strategy #9056 [parquet] (alamb)
  • perf: improve performance of encoding GenericByteArray by 8% #9054 [arrow] (rluvaton)
  • Speed up unary not kernel by 50%, add BooleanBuffer::from_bitwise_unary #8996 [arrow] (alamb)
  • arrow-select: improve dictionary interleave fallback performance #8978 [arrow] (asubiotto)
  • Add special implementation for zip for Utf8View/BinaryView scalars #8963 [arrow] (mkleen)
  • arrow-select: implement specialized interleave_list #8953 [arrow] (asubiotto)

Closed issues:

Merged pull requests:

* This Changelog was automatically generated by github_changelog_generator

Don't miss a new arrow-rs release

NewReleases is sending notifications on new releases.