Skip to content

arrow 59.0.0

Latest

Choose a tag to compare

@github-actions github-actions released this 09 Jun 17:37
· 5 commits to main since this release
e5e66fa

Changelog

59.0.0 (2026-06-04)

Full Changelog

Breaking changes:

Implemented enhancements:

  • Allow casting plain struct to dictionary encoded struct #10038 [arrow]
  • Optimize arrow-flight #10029
  • Align buffers when importing via from_ffi / ArrowArrayStreamReader #10028 [arrow]
  • Switch Parquet LogicalType enum to macro generated version #9995 [parquet]
  • Future proof Parquet Thrift parser #9973 [parquet]
  • Add DatePart 1-indexed variants #9964 [arrow]
  • perf: Rework Parquet Thrift handling of boolean fields #9946 [parquet]
  • Add benchmarks for REE to parquet #9935 [parquet] [arrow]
  • (re) Allow Large FixedSizeBinaryArrays #9906 [arrow]
  • Add a is_normalized flag to DictionaryArray #9841
  • [Variant] Remove BorrowedShreddingState #9790
  • [parquet] Expose whether FileDecryptionProperties uses a KeyRetriever #9721 [parquet]
  • Align cast logic for from/to_decimal for variant to cast kernel #9688 [arrow]

Fixed bugs:

  • parquet-variant build might fail on s390x #10026
  • FixedSizeBinaryArray implements From<Vec<&[u8]>> etc despite conversion being fallible #10018 [parquet] [arrow]
  • string -> decimal cast should not treat empty string as 0 #10009 [arrow]
  • Cast FixedSizeList to List will lost datatype metadata in list #10004 [arrow]
  • Record reader panics with "index out of bounds" when row group num_rows exceeds actual column data #9992 [parquet]
  • parquet predicate-cache: panic / silent row drop on single-leaf nullable struct #9982 [parquet]
  • parquet-variant doesn't build on 32-bit targets #9977
  • Date32 doesn't parse date with large year #9960 [arrow]
  • msrv check failing on main due to tonic@0.14.6 #9938 [parquet] [arrow] [arrow-flight]

Documentation updates:

Performance improvements:

Closed issues:

  • Bound ArrowWriter peak memory #10071 [parquet]
  • Parquet writer can produce massively oversized data pages for large variable-width values #10061 [parquet]
  • Remove the fused_inline_view_columns field from BatchCoalescer if possible #10055
  • DataType parser permits negative FixedSizeBinary size #10033 [arrow]
  • Parquet: return error for overlong INT96 column metadata statistics #10002 [parquet]
  • Uuid extension type fails to deserialize when ARROW:extension:metadata is an empty string #10000 [arrow]
  • parquet: timeline for removing thrift crate dependency (CVE-2026-43868) #9999
  • Failure in CI: Archery test With other arrows - binary_view Rust producing, .NET consuming #9989 [arrow]
  • Validate FIXED_LEN_BYTE_ARRAY type_length for DECIMAL and INTERVAL in Parquet → Arrow schema conversion #9984 [parquet]
  • IPC reader projection does not handle duplicate projection indices correctly #9950 [arrow]
  • AnyRunArray trait #9909 [arrow]
  • Release arrow-rs / parquet Patch version 57.3.1 (May 2026) #9858 [arrow]
  • Release arrow-rs / parquet Patch version 56.2.1 (May 2026) #9857 [arrow]
  • parquet/arrow: should sync/async readers converge on a shared physical read planner #9764
  • arrow-string has a lot of macro-generated deprecated kernels in like.rs #9675 [arrow]
  • [parquet] Add BloomFilterProperties builder API to make bloom filter configuration explicit #9667 [parquet]

Merged pull requests:

* This Changelog was automatically generated by github_changelog_generator