This is an automated email from the ASF dual-hosted git repository.
alamb pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow-rs.git
The following commit(s) were added to refs/heads/main by this push:
new 9e822e0500 Update version to `57.2.0`, add CHANGELOG (#9103)
9e822e0500 is described below
commit 9e822e050016e659028741499388d454a74cf23c
Author: Andrew Lamb <[email protected]>
AuthorDate: Wed Jan 7 13:04:39 2026 -0500
Update version to `57.2.0`, add CHANGELOG (#9103)
# Which issue does this PR close?
- Part of https://github.com/apache/arrow-rs/issues/8465
# Rationale for this change
- See https://github.com/apache/arrow-rs/issues/8465
# What changes are included in this PR?
1. Update version to 57.2.0
2. Add CHANGELOG. See rendered version
https://github.com/alamb/arrow-rs/blob/alamb/prepare_57.2.0/CHANGELOG.md
# Are these changes tested?
By CI and I am testing them manually in DataFusion here:
- https://github.com/apache/datafusion/pull/19355
# Are there any user-facing changes?
Version and changelog
---
CHANGELOG-old.md | 167 ++++++++++++++++++++++
CHANGELOG.md | 292 ++++++++++++++++++++-------------------
Cargo.toml | 42 +++---
dev/release/update_change_log.sh | 4 +-
4 files changed, 337 insertions(+), 168 deletions(-)
diff --git a/CHANGELOG-old.md b/CHANGELOG-old.md
index 0aa159fa79..a651a860f8 100644
--- a/CHANGELOG-old.md
+++ b/CHANGELOG-old.md
@@ -20,6 +20,173 @@
# Historical Changelog
+## [57.1.0](https://github.com/apache/arrow-rs/tree/57.1.0) (2025-11-20)
+
+[Full Changelog](https://github.com/apache/arrow-rs/compare/57.0.0...57.1.0)
+
+**Implemented enhancements:**
+
+- Eliminate bound checks in filter kernels
[\#8865](https://github.com/apache/arrow-rs/issues/8865)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Respect page index policy option for ParquetObjectReader when it's not skip
[\#8856](https://github.com/apache/arrow-rs/issues/8856)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- Speed up collect\_bool and remove `unsafe`
[\#8848](https://github.com/apache/arrow-rs/issues/8848)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Error reading parquet FileMetaData with empty lists encoded as
element-type=0 [\#8826](https://github.com/apache/arrow-rs/issues/8826)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- ValueStatistics methods can't be used from generic context in external crate
[\#8823](https://github.com/apache/arrow-rs/issues/8823)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- Custom Pretty-Printing Implementation for Column when Formatting Record
Batches [\#8821](https://github.com/apache/arrow-rs/issues/8821)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Parquet-concat: supports bloom filter and page index
[\#8804](https://github.com/apache/arrow-rs/issues/8804)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- \[Parquet\] virtual row number support
[\#7299](https://github.com/apache/arrow-rs/issues/7299)
+- \[Variant\] Enforce shredded-type validation in `shred_variant`
[\#8795](https://github.com/apache/arrow-rs/issues/8795)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Simplify decision logic to call `FilterBuilder::optimize` or not
[\#8781](https://github.com/apache/arrow-rs/issues/8781)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[Variant\] Add variant to arrow for DataType::{Binary, LargeBinary,
BinaryView} [\#8767](https://github.com/apache/arrow-rs/issues/8767)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Provide algorithm that allows zipping arrays whose values are not prealigned
[\#8752](https://github.com/apache/arrow-rs/issues/8752)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[Parquet\] ParquetMetadataReader decodes too much metadata under point-get
scenerio [\#8751](https://github.com/apache/arrow-rs/issues/8751)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- `arrow-json` supports encoding binary arrays, but not decoding
[\#8736](https://github.com/apache/arrow-rs/issues/8736)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Allow `FilterPredicate` instances to be reused for RecordBatches
[\#8692](https://github.com/apache/arrow-rs/issues/8692)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- ArrowJsonBatch::from\_batch is incomplete
[\#8684](https://github.com/apache/arrow-rs/issues/8684)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- parquet-layout: More info about layout including footer size, page index,
bloom filter? [\#8682](https://github.com/apache/arrow-rs/issues/8682)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- Rewrite `ParquetRecordBatchStream` \(async API\) in terms of the PushDecoder
[\#8677](https://github.com/apache/arrow-rs/issues/8677)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- \[JSON\] Add encoding for binary view
[\#8674](https://github.com/apache/arrow-rs/issues/8674)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Refactor arrow-cast decimal casting to unify the rescale logic used in
Parquet variant casts [\#8670](https://github.com/apache/arrow-rs/issues/8670)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[Variant\] Support Uuid/`FixedSizeBinary(16)` shredding
[\#8665](https://github.com/apache/arrow-rs/issues/8665)
+- \[Parquet\]There should be an encoding counter to know how many encodings
the repo supports in total
[\#8662](https://github.com/apache/arrow-rs/issues/8662)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- Improve `parse_data_type` for `List`, `ListView`, `LargeList`,
`LargeListView`, `FixedSizeList`, `Union`, `Map`, `RunEndCoded`.
[\#8648](https://github.com/apache/arrow-rs/issues/8648)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[Variant\] Support variant to arrow primitive support null/time/decimal\_\*
[\#8637](https://github.com/apache/arrow-rs/issues/8637)
+- Return error from `RleDecoder::reset` rather than panic
[\#8632](https://github.com/apache/arrow-rs/issues/8632)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- Add bitwise ops on `BooleanBufferBuilder` and `MutableBuffer` that mutate
directly the buffer [\#8618](https://github.com/apache/arrow-rs/issues/8618)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[Variant\] Add variant\_to\_arrow Utf-8, LargeUtf8, Utf8View types support
[\#8567](https://github.com/apache/arrow-rs/issues/8567)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+
+**Fixed bugs:**
+
+- Regression: Parsing `List(Int64)` results in nullable list in 57.0.0 and a
non-nullable list in 57.1.0
[\#8883](https://github.com/apache/arrow-rs/issues/8883)
+- Regression: FixedSlizeList data type parsing fails on 57.1.0
[\#8880](https://github.com/apache/arrow-rs/issues/8880)
+- \(dyn ArrayFormatterFactory + 'static\) can't be safely shared between
threads [\#8875](https://github.com/apache/arrow-rs/issues/8875)
+- RowNumber reader has wrong row group ordering
[\#8864](https://github.com/apache/arrow-rs/issues/8864)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- `ThriftMetadataWriter::write_column_indexes` cannot handle a
`ColumnIndexMetaData::NONE`
[\#8815](https://github.com/apache/arrow-rs/issues/8815)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- "Archery test With other arrows" Integration test failing on main:
[\#8813](https://github.com/apache/arrow-rs/issues/8813)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[Parquet\] Writing in 57.0.0 seems 10% slower than 56.0.0
[\#8783](https://github.com/apache/arrow-rs/issues/8783)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- Parquet reader cannot handle files with unknown logical types
[\#8776](https://github.com/apache/arrow-rs/issues/8776)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- zip now treats nulls as false in provided mask regardless of the underlying
bit value [\#8721](https://github.com/apache/arrow-rs/issues/8721)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[avro\] Incorrect version in crate.io landing page
[\#8691](https://github.com/apache/arrow-rs/issues/8691)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Array: ViewType gc\(\) has bug when array sum length exceed i32::MAX
[\#8681](https://github.com/apache/arrow-rs/issues/8681)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Parquet 56: encounter `error: item_reader def levels are None` when reading
nested field with row filter
[\#8657](https://github.com/apache/arrow-rs/issues/8657)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- Degnerate and non-nullable `FixedSizeListArray`s are not handled
[\#8623](https://github.com/apache/arrow-rs/issues/8623)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[Parquet\]Performance Degradation with RowFilter on Unsorted Columns due to
Fragmented ReadPlan [\#8565](https://github.com/apache/arrow-rs/issues/8565)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+
+**Documentation updates:**
+
+- docs: Add example for creating a `MutableBuffer` from `Buffer`
[\#8853](https://github.com/apache/arrow-rs/pull/8853)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- docs: Add examples for creating MutableBuffer from Vec
[\#8852](https://github.com/apache/arrow-rs/pull/8852)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- Improve ParquetDecoder docs
[\#8802](https://github.com/apache/arrow-rs/pull/8802)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
+- Update docs for zero copy conversion of ScalarBuffer
[\#8772](https://github.com/apache/arrow-rs/pull/8772)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- Add example to convert `PrimitiveArray` to a `Vec`
[\#8771](https://github.com/apache/arrow-rs/pull/8771)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- docs: Add links for arrow-avro
[\#8770](https://github.com/apache/arrow-rs/pull/8770)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- \[Parquet\] Minor: Update comments in page decompressor
[\#8764](https://github.com/apache/arrow-rs/pull/8764)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
+- Document limitations of the `arrow_integration_test` crate
[\#8738](https://github.com/apache/arrow-rs/pull/8738)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([phil-opp](https://github.com/phil-opp))
+- docs: Add link to the Arrow implementation status page
[\#8732](https://github.com/apache/arrow-rs/pull/8732)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- docs: Update Parquet readme implementation status
[\#8731](https://github.com/apache/arrow-rs/pull/8731)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
+
+**Performance improvements:**
+
+- `RowConverter::from_binary` should opportunistically take ownership of the
buffer [\#8685](https://github.com/apache/arrow-rs/issues/8685)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Speed up filter some more \(up to 2x\)
[\#8868](https://github.com/apache/arrow-rs/pull/8868)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([Dandandan](https://github.com/Dandandan))
+- Speed up `collect_bool` and remove `unsafe`, optimize `take_bits`,
`take_native` for null values
[\#8849](https://github.com/apache/arrow-rs/pull/8849)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([Dandandan](https://github.com/Dandandan))
+- Change `BooleanBuffer::append_packed_range` to use `apply_bitwise_binary_op`
[\#8812](https://github.com/apache/arrow-rs/pull/8812)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- \[Parquet\] Avoid copying `LogicalType` in `ColumnOrder::get_sort_order`,
deprecate `get_logical_type`
[\#8789](https://github.com/apache/arrow-rs/pull/8789)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
+- perf: Speed up Parquet file writing \(10%, back to speed of 56\)
[\#8786](https://github.com/apache/arrow-rs/pull/8786)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
+- perf: override `ArrayIter` default impl for `nth`, `nth_back`, `last` and
`count` [\#8785](https://github.com/apache/arrow-rs/pull/8785)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- \[Parquet\] Reduce one copy in `SerializedPageReader`
[\#8745](https://github.com/apache/arrow-rs/pull/8745)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([XiangpengHao](https://github.com/XiangpengHao))
+- Small optimization in Parquet varint decoder
[\#8742](https://github.com/apache/arrow-rs/pull/8742)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
+- perf: override `count`, `nth`, `nth_back`, `last` and `max` for BitIterator
[\#8696](https://github.com/apache/arrow-rs/pull/8696)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- Add `FilterPredicate::filter_record_batch`
[\#8693](https://github.com/apache/arrow-rs/pull/8693)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([pepijnve](https://github.com/pepijnve))
+- perf: zero-copy path in `RowConverter::from_binary`
[\#8686](https://github.com/apache/arrow-rs/pull/8686)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mzabaluev](https://github.com/mzabaluev))
+- perf: add optimized zip implementation for scalars
[\#8653](https://github.com/apache/arrow-rs/pull/8653)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- feat: add `apply_unary_op` and `apply_binary_op` bitwise operations
[\#8619](https://github.com/apache/arrow-rs/pull/8619)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- \[Parquet\]Optimize the performance in record reader
[\#8607](https://github.com/apache/arrow-rs/pull/8607)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([hhhizzz](https://github.com/hhhizzz))
+
+**Closed issues:**
+
+- Variant to NullType conversion ignores strict casting
[\#8810](https://github.com/apache/arrow-rs/issues/8810)
+- Unify display representation for `Field`
[\#8784](https://github.com/apache/arrow-rs/issues/8784)
+- Misleading configuration name: skip\_arrow\_metadata
[\#8780](https://github.com/apache/arrow-rs/issues/8780)
+- Inconsistent display for types with Metadata
[\#8761](https://github.com/apache/arrow-rs/issues/8761)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Internal `arrow-integration-test` crate is linked from `arrow` docs
[\#8739](https://github.com/apache/arrow-rs/issues/8739)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Add benchmark for RunEndEncoded casting
[\#8709](https://github.com/apache/arrow-rs/issues/8709)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[Varaint\] Support `VariantArray::value` to return a `Result<Variant>`
[\#8672](https://github.com/apache/arrow-rs/issues/8672)
+
+**Merged pull requests:**
+
+- Fix regression caused by changes in Display for DataType - display
\(`List(non-null Int64)` instead of `List(nullable Int64)`
[\#8890](https://github.com/apache/arrow-rs/pull/8890)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([etseidl](https://github.com/etseidl))
+- Support parsing for old style FixedSizeList
[\#8882](https://github.com/apache/arrow-rs/pull/8882)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- Make ArrayFormatterFactory Send + Sync and add a test
[\#8878](https://github.com/apache/arrow-rs/pull/8878)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([tobixdev](https://github.com/tobixdev))
+- Make `ArrowReaderOptions::with_virtual_columns` error rather than panic on
invalid input [\#8867](https://github.com/apache/arrow-rs/pull/8867)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
+- Fix errors when reading nested Lists with pushdown predicates.
[\#8866](https://github.com/apache/arrow-rs/pull/8866)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
+- Fix `RowNumberReader` when not all row groups are selected
[\#8863](https://github.com/apache/arrow-rs/pull/8863)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([vustef](https://github.com/vustef))
+- Respect page index policy option for ParquetObjectReader when it's not skip
[\#8857](https://github.com/apache/arrow-rs/pull/8857)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([zhuqi-lucas](https://github.com/zhuqi-lucas))
+- build\(deps\): update apache-avro requirement from 0.20.0 to 0.21.0
[\#8832](https://github.com/apache/arrow-rs/pull/8832)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([dependabot[bot]](https://github.com/apps/dependabot))
+- Allow Users to Provide Custom `ArrayFormatter`s when Pretty-Printing Record
Batches [\#8829](https://github.com/apache/arrow-rs/pull/8829)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([tobixdev](https://github.com/tobixdev))
+- Allow reading of improperly constructed empty lists in Parquet metadata
[\#8827](https://github.com/apache/arrow-rs/pull/8827)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
+- \[Variant\] Fix cast logic for Variant to Arrow for DataType::Null
[\#8825](https://github.com/apache/arrow-rs/pull/8825)
([klion26](https://github.com/klion26))
+- remove T: ParquetValueType bound on ValueStatistics
[\#8824](https://github.com/apache/arrow-rs/pull/8824)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([pmarks](https://github.com/pmarks))
+- build\(deps\): update lz4\_flex requirement from 0.11 to 0.12
[\#8820](https://github.com/apache/arrow-rs/pull/8820)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([dependabot[bot]](https://github.com/apps/dependabot))
+- Fix bug in handling of empty Parquet page index structures
[\#8817](https://github.com/apache/arrow-rs/pull/8817)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
+- Parquet-concat: supports page index and bloom filter
[\#8811](https://github.com/apache/arrow-rs/pull/8811)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([mapleFU](https://github.com/mapleFU))
+- \[Doc\] Correct `ListArray` documentation
[\#8803](https://github.com/apache/arrow-rs/pull/8803)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([liamzwbao](https://github.com/liamzwbao))
+- \[Parquet\] Add additional docs for `ArrowReaderOptions` and
`ArrowReaderMetadata` [\#8798](https://github.com/apache/arrow-rs/pull/8798)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
+- \[Variant\] Enforce shredded-type validation in `shred_variant`
[\#8796](https://github.com/apache/arrow-rs/pull/8796)
([liamzwbao](https://github.com/liamzwbao))
+- Add `VariantPath::is_empty`
[\#8791](https://github.com/apache/arrow-rs/pull/8791)
([friendlymatthew](https://github.com/friendlymatthew))
+- Add FilterBuilder::is\_optimize\_beneficial
[\#8782](https://github.com/apache/arrow-rs/pull/8782)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([pepijnve](https://github.com/pepijnve))
+- \[Parquet\] Allow reading of files with unknown logical types
[\#8777](https://github.com/apache/arrow-rs/pull/8777)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
+- bench: add `ArrayIter` benchmarks
[\#8774](https://github.com/apache/arrow-rs/pull/8774)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- Update Rust toolchain to 1.91
[\#8769](https://github.com/apache/arrow-rs/pull/8769)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mbrobbel](https://github.com/mbrobbel))
+- \[Variant\] Add variant to arrow for
`DataType::{Binary/LargeBinary/BinaryView}`
[\#8768](https://github.com/apache/arrow-rs/pull/8768)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([klion26](https://github.com/klion26))
+- feat: parse `DataType::Union`, `DataType::Map`, `DataType::RunEndEncoded`
[\#8765](https://github.com/apache/arrow-rs/pull/8765)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([dqkqd](https://github.com/dqkqd))
+- Add options to control various aspects of Parquet metadata decoding
[\#8763](https://github.com/apache/arrow-rs/pull/8763)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
+- feat: Ensure consistent metadata display for data types
[\#8760](https://github.com/apache/arrow-rs/pull/8760)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mhilton](https://github.com/mhilton))
+- Clean up predicate\_cache tests
[\#8755](https://github.com/apache/arrow-rs/pull/8755)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
+- refactor `test_cache_projection_excludes_nested_columns` to use high level
APIs [\#8754](https://github.com/apache/arrow-rs/pull/8754)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
+- Add `merge` and `merge_n` kernels
[\#8753](https://github.com/apache/arrow-rs/pull/8753)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([pepijnve](https://github.com/pepijnve))
+- Fix lint in arrow-flight by updating assert\_cmd after it upgraded
[\#8741](https://github.com/apache/arrow-rs/pull/8741)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
[[arrow-flight](https://github.com/apache/arrow-rs/labels/arrow-flight)]
([vegarsti](https://github.com/vegarsti))
+- Remove link to internal `arrow-integration-test` crate from main `arrow`
crate [\#8740](https://github.com/apache/arrow-rs/pull/8740)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([phil-opp](https://github.com/phil-opp))
+- Implement hex decoding of JSON strings to binary arrays
[\#8737](https://github.com/apache/arrow-rs/pull/8737)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([phil-opp](https://github.com/phil-opp))
+- \[Parquet\] Adaptive Parquet Predicate Pushdown
[\#8733](https://github.com/apache/arrow-rs/pull/8733)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([hhhizzz](https://github.com/hhhizzz))
+- \[Parquet\] Return error from `RleDecoder::reload` rather than panic
[\#8729](https://github.com/apache/arrow-rs/pull/8729)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([liamzwbao](https://github.com/liamzwbao))
+- fix: `ArrayIter` does not report size hint correctly after advancing from
the iterator back [\#8728](https://github.com/apache/arrow-rs/pull/8728)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- perf: Use Vec::with\_capacity in cast\_to\_run\_end\_encoded
[\#8726](https://github.com/apache/arrow-rs/pull/8726)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([vegarsti](https://github.com/vegarsti))
+- \[Variant\] Fix the index of an item in VariantArray in a unit test
[\#8725](https://github.com/apache/arrow-rs/pull/8725)
([martin-g](https://github.com/martin-g))
+- build\(deps\): bump actions/download-artifact from 5 to 6
[\#8720](https://github.com/apache/arrow-rs/pull/8720)
([dependabot[bot]](https://github.com/apps/dependabot))
+- \[Variant\] Add try\_value/value for VariantArray
[\#8719](https://github.com/apache/arrow-rs/pull/8719)
([klion26](https://github.com/klion26))
+- General virtual columns support + row numbers as a first use-case
[\#8715](https://github.com/apache/arrow-rs/pull/8715)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([vustef](https://github.com/vustef))
+- feat: Parquet-layout add Index and Footer info
[\#8712](https://github.com/apache/arrow-rs/pull/8712)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([mapleFU](https://github.com/mapleFU))
+- fix: `zip` now treats nulls as false in provided mask regardless of the
underlying bit value [\#8711](https://github.com/apache/arrow-rs/pull/8711)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- Add benchmark for casting to RunEndEncoded \(REE\)
[\#8710](https://github.com/apache/arrow-rs/pull/8710)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([vegarsti](https://github.com/vegarsti))
+- \[Minor\]: Document visibility for enums produced by Thrift macros
[\#8706](https://github.com/apache/arrow-rs/pull/8706)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
+- Update `arrow-avro` `README.md` version to 57
[\#8695](https://github.com/apache/arrow-rs/pull/8695)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([jecsand838](https://github.com/jecsand838))
+- Fix: ViewType gc on huge batch would produce bad output
[\#8694](https://github.com/apache/arrow-rs/pull/8694)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mapleFU](https://github.com/mapleFU))
+- Refactor arrow-cast decimal casting to unify the rescale logic used in
Parquet variant casts [\#8689](https://github.com/apache/arrow-rs/pull/8689)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([liamzwbao](https://github.com/liamzwbao))
+- check bit width to avoid panic in DeltaBitPackDecoder
[\#8688](https://github.com/apache/arrow-rs/pull/8688)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([rambleraptor](https://github.com/rambleraptor))
+- \[thrift-remodel\] Use `thrift_enum` macro for `ConvertedType`
[\#8680](https://github.com/apache/arrow-rs/pull/8680)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
+- \[JSON\] Map key supports utf8 view
[\#8679](https://github.com/apache/arrow-rs/pull/8679)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mapleFU](https://github.com/mapleFU))
+- \[JSON\] Add encoding for binary view
[\#8675](https://github.com/apache/arrow-rs/pull/8675)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mapleFU](https://github.com/mapleFU))
+- \[Parquet\] Account for FileDecryptor in ParquetMetaData heap size
calculation [\#8671](https://github.com/apache/arrow-rs/pull/8671)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([adamreeve](https://github.com/adamreeve))
+- chore: update `OffsetBuffer::from_lengths(std::iter::repeat_n(<val>,
<repeat>));` with `OffsetBuffer::from_repeated_length(<val>, <repeat>);`
[\#8669](https://github.com/apache/arrow-rs/pull/8669)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- \[Variant\] Support `shred_variant` for Uuids
[\#8666](https://github.com/apache/arrow-rs/pull/8666)
([friendlymatthew](https://github.com/friendlymatthew))
+- \[Variant\] Remove `create_test_variant_array` helper method
[\#8664](https://github.com/apache/arrow-rs/pull/8664)
([friendlymatthew](https://github.com/friendlymatthew))
+- \[parquet\] Adding counting method in thrift\_enum macro to support
ENCODING\_SLOTS [\#8663](https://github.com/apache/arrow-rs/pull/8663)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([hhhizzz](https://github.com/hhhizzz))
+- chore: add test case of RowSelection::trim
[\#8660](https://github.com/apache/arrow-rs/pull/8660)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([lichuang](https://github.com/lichuang))
+- feat: add `new_repeated` to `ByteArray`
[\#8659](https://github.com/apache/arrow-rs/pull/8659)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- perf: add `repeat_slice_n_times` to `MutableBuffer`
[\#8658](https://github.com/apache/arrow-rs/pull/8658)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- perf: add optimized function to create offset with same length
[\#8656](https://github.com/apache/arrow-rs/pull/8656)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- \[Variant\] `rescale_decimal` followup
[\#8655](https://github.com/apache/arrow-rs/pull/8655)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([liamzwbao](https://github.com/liamzwbao))
+- feat: parse DataType `List`, `ListView`, `LargeList`, `LargeListView`,
`FixedSizeList` [\#8649](https://github.com/apache/arrow-rs/pull/8649)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([dqkqd](https://github.com/dqkqd))
+- Support more operations on ListView
[\#8645](https://github.com/apache/arrow-rs/pull/8645)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([a10y](https://github.com/a10y))
+- \[Variant\] Implement primitive type access for null/time/decimal\*
[\#8638](https://github.com/apache/arrow-rs/pull/8638)
([klion26](https://github.com/klion26))
+- \[Variant\] refactor: Split builder.rs into several smaller files
[\#8635](https://github.com/apache/arrow-rs/pull/8635)
([Weijun-H](https://github.com/Weijun-H))
+- add `try_new_with_length` constructor to `FixedSizeList`
[\#8624](https://github.com/apache/arrow-rs/pull/8624)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([connortsui20](https://github.com/connortsui20))
+- Change some panics to errors in parquet decoder
[\#8602](https://github.com/apache/arrow-rs/pull/8602)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([rambleraptor](https://github.com/rambleraptor))
+- Support `variant_to_arrow` for utf8
[\#8600](https://github.com/apache/arrow-rs/pull/8600)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([sdf-jkl](https://github.com/sdf-jkl))
+- Cast support for RunEndEncoded arrays
[\#8589](https://github.com/apache/arrow-rs/pull/8589)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([vegarsti](https://github.com/vegarsti))
+
+
+
## [57.0.0](https://github.com/apache/arrow-rs/tree/57.0.0) (2025-10-19)
[Full Changelog](https://github.com/apache/arrow-rs/compare/56.2.0...57.0.0)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 240e9681c2..fbbdba7d36 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -19,170 +19,172 @@
# Changelog
-## [57.1.0](https://github.com/apache/arrow-rs/tree/57.1.0) (2025-11-20)
+## [57.2.0](https://github.com/apache/arrow-rs/tree/57.2.0) (2026-01-07)
-[Full Changelog](https://github.com/apache/arrow-rs/compare/57.0.0...57.1.0)
+[Full Changelog](https://github.com/apache/arrow-rs/compare/57.1.0...57.2.0)
+
+**Breaking changes:**
+
+- Seal Array trait [\#9092](https://github.com/apache/arrow-rs/pull/9092)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([tustvold](https://github.com/tustvold))
+- \[Variant\] Unify the CastOptions usage in parquet-variant-compute
[\#8984](https://github.com/apache/arrow-rs/pull/8984)
([klion26](https://github.com/klion26))
**Implemented enhancements:**
-- Eliminate bound checks in filter kernels
[\#8865](https://github.com/apache/arrow-rs/issues/8865)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- Respect page index policy option for ParquetObjectReader when it's not skip
[\#8856](https://github.com/apache/arrow-rs/issues/8856)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- Speed up collect\_bool and remove `unsafe`
[\#8848](https://github.com/apache/arrow-rs/issues/8848)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- Error reading parquet FileMetaData with empty lists encoded as
element-type=0 [\#8826](https://github.com/apache/arrow-rs/issues/8826)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- ValueStatistics methods can't be used from generic context in external crate
[\#8823](https://github.com/apache/arrow-rs/issues/8823)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- Custom Pretty-Printing Implementation for Column when Formatting Record
Batches [\#8821](https://github.com/apache/arrow-rs/issues/8821)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- Parquet-concat: supports bloom filter and page index
[\#8804](https://github.com/apache/arrow-rs/issues/8804)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- \[Parquet\] virtual row number support
[\#7299](https://github.com/apache/arrow-rs/issues/7299)
-- \[Variant\] Enforce shredded-type validation in `shred_variant`
[\#8795](https://github.com/apache/arrow-rs/issues/8795)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- Simplify decision logic to call `FilterBuilder::optimize` or not
[\#8781](https://github.com/apache/arrow-rs/issues/8781)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- \[Variant\] Add variant to arrow for DataType::{Binary, LargeBinary,
BinaryView} [\#8767](https://github.com/apache/arrow-rs/issues/8767)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- Provide algorithm that allows zipping arrays whose values are not prealigned
[\#8752](https://github.com/apache/arrow-rs/issues/8752)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- \[Parquet\] ParquetMetadataReader decodes too much metadata under point-get
scenerio [\#8751](https://github.com/apache/arrow-rs/issues/8751)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- `arrow-json` supports encoding binary arrays, but not decoding
[\#8736](https://github.com/apache/arrow-rs/issues/8736)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- Allow `FilterPredicate` instances to be reused for RecordBatches
[\#8692](https://github.com/apache/arrow-rs/issues/8692)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- ArrowJsonBatch::from\_batch is incomplete
[\#8684](https://github.com/apache/arrow-rs/issues/8684)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- parquet-layout: More info about layout including footer size, page index,
bloom filter? [\#8682](https://github.com/apache/arrow-rs/issues/8682)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- Rewrite `ParquetRecordBatchStream` \(async API\) in terms of the PushDecoder
[\#8677](https://github.com/apache/arrow-rs/issues/8677)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- \[JSON\] Add encoding for binary view
[\#8674](https://github.com/apache/arrow-rs/issues/8674)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- Refactor arrow-cast decimal casting to unify the rescale logic used in
Parquet variant casts [\#8670](https://github.com/apache/arrow-rs/issues/8670)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- \[Variant\] Support Uuid/`FixedSizeBinary(16)` shredding
[\#8665](https://github.com/apache/arrow-rs/issues/8665)
-- \[Parquet\]There should be an encoding counter to know how many encodings
the repo supports in total
[\#8662](https://github.com/apache/arrow-rs/issues/8662)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- Improve `parse_data_type` for `List`, `ListView`, `LargeList`,
`LargeListView`, `FixedSizeList`, `Union`, `Map`, `RunEndCoded`.
[\#8648](https://github.com/apache/arrow-rs/issues/8648)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- \[Variant\] Support variant to arrow primitive support null/time/decimal\_\*
[\#8637](https://github.com/apache/arrow-rs/issues/8637)
-- Return error from `RleDecoder::reset` rather than panic
[\#8632](https://github.com/apache/arrow-rs/issues/8632)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- Add bitwise ops on `BooleanBufferBuilder` and `MutableBuffer` that mutate
directly the buffer [\#8618](https://github.com/apache/arrow-rs/issues/8618)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- \[Variant\] Add variant\_to\_arrow Utf-8, LargeUtf8, Utf8View types support
[\#8567](https://github.com/apache/arrow-rs/issues/8567)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[parquet\] further relax `LevelInfoBuilder::types_compatible` for
`ArrowWriter` [\#9098](https://github.com/apache/arrow-rs/issues/9098)
+- Update arrow-row documentation with Union encoding
[\#9084](https://github.com/apache/arrow-rs/issues/9084)
+- Add code examples for min and max compute functions
[\#9055](https://github.com/apache/arrow-rs/issues/9055)
+- Add `append_n` to bytes view builder API
[\#9034](https://github.com/apache/arrow-rs/issues/9034)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Move `RunArray::get_physical_indices` to `RunEndBuffer`
[\#9025](https://github.com/apache/arrow-rs/issues/9025)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Allow quote style in csv writer
[\#9003](https://github.com/apache/arrow-rs/issues/9003)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- IPC support for ListView
[\#9002](https://github.com/apache/arrow-rs/issues/9002)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Implement `BinaryArrayType` for `&FixedSizeBinaryArray`s
[\#8992](https://github.com/apache/arrow-rs/issues/8992)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- arrow-buffer: implement num-traits for i256
[\#8976](https://github.com/apache/arrow-rs/issues/8976)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Support for `Arc<str>` in `ParquetRecordWriter` derive macro
[\#8972](https://github.com/apache/arrow-rs/issues/8972)
+- \[arrow-avro\] suggest switching from xz to liblzma
[\#8970](https://github.com/apache/arrow-rs/issues/8970)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- arrow-buffer: add i256::trailing\_zeros
[\#8968](https://github.com/apache/arrow-rs/issues/8968)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- arrow-buffer: make i256::leading\_zeros public
[\#8965](https://github.com/apache/arrow-rs/issues/8965)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Add spark like `ignoreLeadingWhiteSpace` and `ignoreTrailingWhiteSpace`
options to the csv writer
[\#8961](https://github.com/apache/arrow-rs/issues/8961)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Add round trip benchmark for Parquet writer/reader
[\#8955](https://github.com/apache/arrow-rs/issues/8955)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- Support performant `interleave` for List/LargeList
[\#8952](https://github.com/apache/arrow-rs/issues/8952)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[Variant\] Support array access when parsing `VariantPath`
[\#8946](https://github.com/apache/arrow-rs/issues/8946)
+- Some panic!s could be represented as unimplemented!s
[\#8932](https://github.com/apache/arrow-rs/issues/8932)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[Variant\] easier way to construct a shredded schema
[\#8922](https://github.com/apache/arrow-rs/issues/8922)
+- Support `DataType::ListView` and `DataType::LargeListView` in
`ArrayData::new_null` [\#8908](https://github.com/apache/arrow-rs/issues/8908)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Add `GenericListViewArray::from_iter_primitive`
[\#8906](https://github.com/apache/arrow-rs/issues/8906)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[Variant\] Unify the cast option usage in ParquentVariant
[\#8873](https://github.com/apache/arrow-rs/issues/8873)
+- Blog post about efficient filter representation in Parquet filter pushdown
[\#8843](https://github.com/apache/arrow-rs/issues/8843)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- Add comparison support for Union arrays in the `cmp` kernel
[\#8837](https://github.com/apache/arrow-rs/issues/8837)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[Variant\] Support array shredding into
`List/LargeList/ListView/LargeListView`
[\#8830](https://github.com/apache/arrow-rs/issues/8830)
+- Support `Union` data types for row format
[\#8828](https://github.com/apache/arrow-rs/issues/8828)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- FFI support for ListView
[\#8819](https://github.com/apache/arrow-rs/issues/8819)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[Variant\] Support more Arrow Datatypes from Variant primitive types
[\#8805](https://github.com/apache/arrow-rs/issues/8805)
+- `FixedSizeBinaryBuilder` supports `append_array`
[\#8750](https://github.com/apache/arrow-rs/issues/8750)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Implement special case `zip` with scalar for Utf8View
[\#8724](https://github.com/apache/arrow-rs/issues/8724)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[geometry\] Wire up arrow reader/writer for `GEOMETRY` and `GEOGRAPHY`
[\#8717](https://github.com/apache/arrow-rs/issues/8717)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
**Fixed bugs:**
-- Regression: Parsing `List(Int64)` results in nullable list in 57.0.0 and a
non-nullable list in 57.1.0
[\#8883](https://github.com/apache/arrow-rs/issues/8883)
-- Regression: FixedSlizeList data type parsing fails on 57.1.0
[\#8880](https://github.com/apache/arrow-rs/issues/8880)
-- \(dyn ArrayFormatterFactory + 'static\) can't be safely shared between
threads [\#8875](https://github.com/apache/arrow-rs/issues/8875)
-- RowNumber reader has wrong row group ordering
[\#8864](https://github.com/apache/arrow-rs/issues/8864)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- `ThriftMetadataWriter::write_column_indexes` cannot handle a
`ColumnIndexMetaData::NONE`
[\#8815](https://github.com/apache/arrow-rs/issues/8815)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- "Archery test With other arrows" Integration test failing on main:
[\#8813](https://github.com/apache/arrow-rs/issues/8813)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- \[Parquet\] Writing in 57.0.0 seems 10% slower than 56.0.0
[\#8783](https://github.com/apache/arrow-rs/issues/8783)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- Parquet reader cannot handle files with unknown logical types
[\#8776](https://github.com/apache/arrow-rs/issues/8776)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- zip now treats nulls as false in provided mask regardless of the underlying
bit value [\#8721](https://github.com/apache/arrow-rs/issues/8721)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- \[avro\] Incorrect version in crate.io landing page
[\#8691](https://github.com/apache/arrow-rs/issues/8691)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- Array: ViewType gc\(\) has bug when array sum length exceed i32::MAX
[\#8681](https://github.com/apache/arrow-rs/issues/8681)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- Parquet 56: encounter `error: item_reader def levels are None` when reading
nested field with row filter
[\#8657](https://github.com/apache/arrow-rs/issues/8657)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
-- Degnerate and non-nullable `FixedSizeListArray`s are not handled
[\#8623](https://github.com/apache/arrow-rs/issues/8623)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- \[Parquet\]Performance Degradation with RowFilter on Unsorted Columns due to
Fragmented ReadPlan [\#8565](https://github.com/apache/arrow-rs/issues/8565)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
+- Soundness Bug in `try_binary` when `Array` is implemented incorrectly in
external crate [\#9106](https://github.com/apache/arrow-rs/issues/9106)
+- casting `Dict(_, LargeUtf8)` to `Utf8View` \(`StringViewArray`\) panics
[\#9101](https://github.com/apache/arrow-rs/issues/9101)
+- wrong results for null count of `nullif` kernel
[\#9085](https://github.com/apache/arrow-rs/issues/9085)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Empty first line in some code examples
[\#9063](https://github.com/apache/arrow-rs/issues/9063)
+- GenericByteViewArray::slice is not zero-copy but ought to be
[\#9014](https://github.com/apache/arrow-rs/issues/9014)
+- Regression in struct casting in 57.2.0 \(not yet released\)
[\#9005](https://github.com/apache/arrow-rs/issues/9005)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Fix panic when decoding multiple Union columns in RowConverter
[\#8999](https://github.com/apache/arrow-rs/issues/8999)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- `take_fixed_size_binary` Does Not Consider NULL Indices
[\#8947](https://github.com/apache/arrow-rs/issues/8947)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- \[arrow-avro\] RecordEncoder Bugs
[\#8934](https://github.com/apache/arrow-rs/issues/8934)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- `FixedSizeBinaryArray::try_new(...)` Panics with Item Length of Zero
[\#8926](https://github.com/apache/arrow-rs/issues/8926)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- `cargo test -p arrow-cast` fails on main
[\#8910](https://github.com/apache/arrow-rs/issues/8910)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- `GenericListViewArray::new_null` ignores `len` and returns an empty array
[\#8904](https://github.com/apache/arrow-rs/issues/8904)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- `FixedSizeBinaryArray::new_null` Does Not Properly Set the Length of the
Values Buffer [\#8900](https://github.com/apache/arrow-rs/issues/8900)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Struct casting requires same order of fields
[\#8870](https://github.com/apache/arrow-rs/issues/8870)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
+- Cannot cast string dictionary to binary view
[\#8841](https://github.com/apache/arrow-rs/issues/8841)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
**Documentation updates:**
-- docs: Add example for creating a `MutableBuffer` from `Buffer`
[\#8853](https://github.com/apache/arrow-rs/pull/8853)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
-- docs: Add examples for creating MutableBuffer from Vec
[\#8852](https://github.com/apache/arrow-rs/pull/8852)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
-- Improve ParquetDecoder docs
[\#8802](https://github.com/apache/arrow-rs/pull/8802)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
-- Update docs for zero copy conversion of ScalarBuffer
[\#8772](https://github.com/apache/arrow-rs/pull/8772)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
-- Add example to convert `PrimitiveArray` to a `Vec`
[\#8771](https://github.com/apache/arrow-rs/pull/8771)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
-- docs: Add links for arrow-avro
[\#8770](https://github.com/apache/arrow-rs/pull/8770)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
-- \[Parquet\] Minor: Update comments in page decompressor
[\#8764](https://github.com/apache/arrow-rs/pull/8764)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
-- Document limitations of the `arrow_integration_test` crate
[\#8738](https://github.com/apache/arrow-rs/pull/8738)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([phil-opp](https://github.com/phil-opp))
-- docs: Add link to the Arrow implementation status page
[\#8732](https://github.com/apache/arrow-rs/pull/8732)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
-- docs: Update Parquet readme implementation status
[\#8731](https://github.com/apache/arrow-rs/pull/8731)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
+- Add Union encoding documentation
[\#9102](https://github.com/apache/arrow-rs/pull/9102)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([EduardAkhmetshin](https://github.com/EduardAkhmetshin))
+- docs: fix misleading reserve documentation
[\#9076](https://github.com/apache/arrow-rs/pull/9076)
([WaterWhisperer](https://github.com/WaterWhisperer))
+- Fix headers and empty lines in code examples
[\#9064](https://github.com/apache/arrow-rs/pull/9064)
([EduardAkhmetshin](https://github.com/EduardAkhmetshin))
+- Add examples for min and max functions
[\#9062](https://github.com/apache/arrow-rs/pull/9062)
([EduardAkhmetshin](https://github.com/EduardAkhmetshin))
+- Improve arrow-buffer documentation
[\#9020](https://github.com/apache/arrow-rs/pull/9020)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- Move examples in arrow-csv to docstrings, polish up docs
[\#9001](https://github.com/apache/arrow-rs/pull/9001)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- Add example of parsing field names as VariantPath
[\#8945](https://github.com/apache/arrow-rs/pull/8945)
([alamb](https://github.com/alamb))
+- Improve documentation for `prep\_null\_mask\_flter
[\#8722](https://github.com/apache/arrow-rs/pull/8722)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
**Performance improvements:**
-- `RowConverter::from_binary` should opportunistically take ownership of the
buffer [\#8685](https://github.com/apache/arrow-rs/issues/8685)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- Speed up filter some more \(up to 2x\)
[\#8868](https://github.com/apache/arrow-rs/pull/8868)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([Dandandan](https://github.com/Dandandan))
-- Speed up `collect_bool` and remove `unsafe`, optimize `take_bits`,
`take_native` for null values
[\#8849](https://github.com/apache/arrow-rs/pull/8849)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([Dandandan](https://github.com/Dandandan))
-- Change `BooleanBuffer::append_packed_range` to use `apply_bitwise_binary_op`
[\#8812](https://github.com/apache/arrow-rs/pull/8812)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
-- \[Parquet\] Avoid copying `LogicalType` in `ColumnOrder::get_sort_order`,
deprecate `get_logical_type`
[\#8789](https://github.com/apache/arrow-rs/pull/8789)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
-- perf: Speed up Parquet file writing \(10%, back to speed of 56\)
[\#8786](https://github.com/apache/arrow-rs/pull/8786)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
-- perf: override `ArrayIter` default impl for `nth`, `nth_back`, `last` and
`count` [\#8785](https://github.com/apache/arrow-rs/pull/8785)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
-- \[Parquet\] Reduce one copy in `SerializedPageReader`
[\#8745](https://github.com/apache/arrow-rs/pull/8745)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([XiangpengHao](https://github.com/XiangpengHao))
-- Small optimization in Parquet varint decoder
[\#8742](https://github.com/apache/arrow-rs/pull/8742)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
-- perf: override `count`, `nth`, `nth_back`, `last` and `max` for BitIterator
[\#8696](https://github.com/apache/arrow-rs/pull/8696)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
-- Add `FilterPredicate::filter_record_batch`
[\#8693](https://github.com/apache/arrow-rs/pull/8693)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([pepijnve](https://github.com/pepijnve))
-- perf: zero-copy path in `RowConverter::from_binary`
[\#8686](https://github.com/apache/arrow-rs/pull/8686)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mzabaluev](https://github.com/mzabaluev))
-- perf: add optimized zip implementation for scalars
[\#8653](https://github.com/apache/arrow-rs/pull/8653)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
-- feat: add `apply_unary_op` and `apply_binary_op` bitwise operations
[\#8619](https://github.com/apache/arrow-rs/pull/8619)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
-- \[Parquet\]Optimize the performance in record reader
[\#8607](https://github.com/apache/arrow-rs/pull/8607)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([hhhizzz](https://github.com/hhhizzz))
+- \[parquet\] Avoid a clone while resolving the read strategy
[\#9056](https://github.com/apache/arrow-rs/pull/9056)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
+- perf: improve performance of encoding `GenericByteArray` by 8%
[\#9054](https://github.com/apache/arrow-rs/pull/9054)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- Speed up unary `not` kernel by 50%, add `BooleanBuffer::from_bitwise_unary`
[\#8996](https://github.com/apache/arrow-rs/pull/8996)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- arrow-select: improve dictionary interleave fallback performance
[\#8978](https://github.com/apache/arrow-rs/pull/8978)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([asubiotto](https://github.com/asubiotto))
+- Add special implementation for zip for Utf8View/BinaryView scalars
[\#8963](https://github.com/apache/arrow-rs/pull/8963)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mkleen](https://github.com/mkleen))
+- arrow-select: implement specialized interleave\_list
[\#8953](https://github.com/apache/arrow-rs/pull/8953)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([asubiotto](https://github.com/asubiotto))
**Closed issues:**
-- Variant to NullType conversion ignores strict casting
[\#8810](https://github.com/apache/arrow-rs/issues/8810)
-- Unify display representation for `Field`
[\#8784](https://github.com/apache/arrow-rs/issues/8784)
-- Misleading configuration name: skip\_arrow\_metadata
[\#8780](https://github.com/apache/arrow-rs/issues/8780)
-- Inconsistent display for types with Metadata
[\#8761](https://github.com/apache/arrow-rs/issues/8761)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- Internal `arrow-integration-test` crate is linked from `arrow` docs
[\#8739](https://github.com/apache/arrow-rs/issues/8739)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- Add benchmark for RunEndEncoded casting
[\#8709](https://github.com/apache/arrow-rs/issues/8709)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
-- \[Varaint\] Support `VariantArray::value` to return a `Result<Variant>`
[\#8672](https://github.com/apache/arrow-rs/issues/8672)
+- impl `Index` for `UnionFields`
[\#8958](https://github.com/apache/arrow-rs/issues/8958)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
**Merged pull requests:**
-- Fix regression caused by changes in Display for DataType - display
\(`List(non-null Int64)` instead of `List(nullable Int64)`
[\#8890](https://github.com/apache/arrow-rs/pull/8890)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([etseidl](https://github.com/etseidl))
-- Support parsing for old style FixedSizeList
[\#8882](https://github.com/apache/arrow-rs/pull/8882)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
-- Make ArrayFormatterFactory Send + Sync and add a test
[\#8878](https://github.com/apache/arrow-rs/pull/8878)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([tobixdev](https://github.com/tobixdev))
-- Make `ArrowReaderOptions::with_virtual_columns` error rather than panic on
invalid input [\#8867](https://github.com/apache/arrow-rs/pull/8867)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
-- Fix errors when reading nested Lists with pushdown predicates.
[\#8866](https://github.com/apache/arrow-rs/pull/8866)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
-- Fix `RowNumberReader` when not all row groups are selected
[\#8863](https://github.com/apache/arrow-rs/pull/8863)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([vustef](https://github.com/vustef))
-- Respect page index policy option for ParquetObjectReader when it's not skip
[\#8857](https://github.com/apache/arrow-rs/pull/8857)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([zhuqi-lucas](https://github.com/zhuqi-lucas))
-- build\(deps\): update apache-avro requirement from 0.20.0 to 0.21.0
[\#8832](https://github.com/apache/arrow-rs/pull/8832)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([dependabot[bot]](https://github.com/apps/dependabot))
-- Allow Users to Provide Custom `ArrayFormatter`s when Pretty-Printing Record
Batches [\#8829](https://github.com/apache/arrow-rs/pull/8829)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([tobixdev](https://github.com/tobixdev))
-- Allow reading of improperly constructed empty lists in Parquet metadata
[\#8827](https://github.com/apache/arrow-rs/pull/8827)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
-- \[Variant\] Fix cast logic for Variant to Arrow for DataType::Null
[\#8825](https://github.com/apache/arrow-rs/pull/8825)
([klion26](https://github.com/klion26))
-- remove T: ParquetValueType bound on ValueStatistics
[\#8824](https://github.com/apache/arrow-rs/pull/8824)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([pmarks](https://github.com/pmarks))
-- build\(deps\): update lz4\_flex requirement from 0.11 to 0.12
[\#8820](https://github.com/apache/arrow-rs/pull/8820)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([dependabot[bot]](https://github.com/apps/dependabot))
-- Fix bug in handling of empty Parquet page index structures
[\#8817](https://github.com/apache/arrow-rs/pull/8817)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
-- Parquet-concat: supports page index and bloom filter
[\#8811](https://github.com/apache/arrow-rs/pull/8811)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([mapleFU](https://github.com/mapleFU))
-- \[Doc\] Correct `ListArray` documentation
[\#8803](https://github.com/apache/arrow-rs/pull/8803)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([liamzwbao](https://github.com/liamzwbao))
-- \[Parquet\] Add additional docs for `ArrowReaderOptions` and
`ArrowReaderMetadata` [\#8798](https://github.com/apache/arrow-rs/pull/8798)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
-- \[Variant\] Enforce shredded-type validation in `shred_variant`
[\#8796](https://github.com/apache/arrow-rs/pull/8796)
([liamzwbao](https://github.com/liamzwbao))
-- Add `VariantPath::is_empty`
[\#8791](https://github.com/apache/arrow-rs/pull/8791)
([friendlymatthew](https://github.com/friendlymatthew))
-- Add FilterBuilder::is\_optimize\_beneficial
[\#8782](https://github.com/apache/arrow-rs/pull/8782)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([pepijnve](https://github.com/pepijnve))
-- \[Parquet\] Allow reading of files with unknown logical types
[\#8777](https://github.com/apache/arrow-rs/pull/8777)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
-- bench: add `ArrayIter` benchmarks
[\#8774](https://github.com/apache/arrow-rs/pull/8774)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
-- Update Rust toolchain to 1.91
[\#8769](https://github.com/apache/arrow-rs/pull/8769)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mbrobbel](https://github.com/mbrobbel))
-- \[Variant\] Add variant to arrow for
`DataType::{Binary/LargeBinary/BinaryView}`
[\#8768](https://github.com/apache/arrow-rs/pull/8768)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([klion26](https://github.com/klion26))
-- feat: parse `DataType::Union`, `DataType::Map`, `DataType::RunEndEncoded`
[\#8765](https://github.com/apache/arrow-rs/pull/8765)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([dqkqd](https://github.com/dqkqd))
-- Add options to control various aspects of Parquet metadata decoding
[\#8763](https://github.com/apache/arrow-rs/pull/8763)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
-- feat: Ensure consistent metadata display for data types
[\#8760](https://github.com/apache/arrow-rs/pull/8760)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mhilton](https://github.com/mhilton))
-- Clean up predicate\_cache tests
[\#8755](https://github.com/apache/arrow-rs/pull/8755)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
-- refactor `test_cache_projection_excludes_nested_columns` to use high level
APIs [\#8754](https://github.com/apache/arrow-rs/pull/8754)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
-- Add `merge` and `merge_n` kernels
[\#8753](https://github.com/apache/arrow-rs/pull/8753)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([pepijnve](https://github.com/pepijnve))
-- Fix lint in arrow-flight by updating assert\_cmd after it upgraded
[\#8741](https://github.com/apache/arrow-rs/pull/8741)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
[[arrow-flight](https://github.com/apache/arrow-rs/labels/arrow-flight)]
([vegarsti](https://github.com/vegarsti))
-- Remove link to internal `arrow-integration-test` crate from main `arrow`
crate [\#8740](https://github.com/apache/arrow-rs/pull/8740)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([phil-opp](https://github.com/phil-opp))
-- Implement hex decoding of JSON strings to binary arrays
[\#8737](https://github.com/apache/arrow-rs/pull/8737)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([phil-opp](https://github.com/phil-opp))
-- \[Parquet\] Adaptive Parquet Predicate Pushdown
[\#8733](https://github.com/apache/arrow-rs/pull/8733)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([hhhizzz](https://github.com/hhhizzz))
-- \[Parquet\] Return error from `RleDecoder::reload` rather than panic
[\#8729](https://github.com/apache/arrow-rs/pull/8729)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([liamzwbao](https://github.com/liamzwbao))
-- fix: `ArrayIter` does not report size hint correctly after advancing from
the iterator back [\#8728](https://github.com/apache/arrow-rs/pull/8728)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
-- perf: Use Vec::with\_capacity in cast\_to\_run\_end\_encoded
[\#8726](https://github.com/apache/arrow-rs/pull/8726)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([vegarsti](https://github.com/vegarsti))
-- \[Variant\] Fix the index of an item in VariantArray in a unit test
[\#8725](https://github.com/apache/arrow-rs/pull/8725)
([martin-g](https://github.com/martin-g))
-- build\(deps\): bump actions/download-artifact from 5 to 6
[\#8720](https://github.com/apache/arrow-rs/pull/8720)
([dependabot[bot]](https://github.com/apps/dependabot))
-- \[Variant\] Add try\_value/value for VariantArray
[\#8719](https://github.com/apache/arrow-rs/pull/8719)
([klion26](https://github.com/klion26))
-- General virtual columns support + row numbers as a first use-case
[\#8715](https://github.com/apache/arrow-rs/pull/8715)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([vustef](https://github.com/vustef))
-- feat: Parquet-layout add Index and Footer info
[\#8712](https://github.com/apache/arrow-rs/pull/8712)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([mapleFU](https://github.com/mapleFU))
-- fix: `zip` now treats nulls as false in provided mask regardless of the
underlying bit value [\#8711](https://github.com/apache/arrow-rs/pull/8711)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
-- Add benchmark for casting to RunEndEncoded \(REE\)
[\#8710](https://github.com/apache/arrow-rs/pull/8710)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([vegarsti](https://github.com/vegarsti))
-- \[Minor\]: Document visibility for enums produced by Thrift macros
[\#8706](https://github.com/apache/arrow-rs/pull/8706)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
-- Update `arrow-avro` `README.md` version to 57
[\#8695](https://github.com/apache/arrow-rs/pull/8695)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([jecsand838](https://github.com/jecsand838))
-- Fix: ViewType gc on huge batch would produce bad output
[\#8694](https://github.com/apache/arrow-rs/pull/8694)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mapleFU](https://github.com/mapleFU))
-- Refactor arrow-cast decimal casting to unify the rescale logic used in
Parquet variant casts [\#8689](https://github.com/apache/arrow-rs/pull/8689)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([liamzwbao](https://github.com/liamzwbao))
-- check bit width to avoid panic in DeltaBitPackDecoder
[\#8688](https://github.com/apache/arrow-rs/pull/8688)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([rambleraptor](https://github.com/rambleraptor))
-- \[thrift-remodel\] Use `thrift_enum` macro for `ConvertedType`
[\#8680](https://github.com/apache/arrow-rs/pull/8680)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
-- \[JSON\] Map key supports utf8 view
[\#8679](https://github.com/apache/arrow-rs/pull/8679)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mapleFU](https://github.com/mapleFU))
-- \[JSON\] Add encoding for binary view
[\#8675](https://github.com/apache/arrow-rs/pull/8675)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mapleFU](https://github.com/mapleFU))
-- \[Parquet\] Account for FileDecryptor in ParquetMetaData heap size
calculation [\#8671](https://github.com/apache/arrow-rs/pull/8671)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([adamreeve](https://github.com/adamreeve))
-- chore: update `OffsetBuffer::from_lengths(std::iter::repeat_n(<val>,
<repeat>));` with `OffsetBuffer::from_repeated_length(<val>, <repeat>);`
[\#8669](https://github.com/apache/arrow-rs/pull/8669)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
-- \[Variant\] Support `shred_variant` for Uuids
[\#8666](https://github.com/apache/arrow-rs/pull/8666)
([friendlymatthew](https://github.com/friendlymatthew))
-- \[Variant\] Remove `create_test_variant_array` helper method
[\#8664](https://github.com/apache/arrow-rs/pull/8664)
([friendlymatthew](https://github.com/friendlymatthew))
-- \[parquet\] Adding counting method in thrift\_enum macro to support
ENCODING\_SLOTS [\#8663](https://github.com/apache/arrow-rs/pull/8663)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([hhhizzz](https://github.com/hhhizzz))
-- chore: add test case of RowSelection::trim
[\#8660](https://github.com/apache/arrow-rs/pull/8660)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([lichuang](https://github.com/lichuang))
-- feat: add `new_repeated` to `ByteArray`
[\#8659](https://github.com/apache/arrow-rs/pull/8659)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
-- perf: add `repeat_slice_n_times` to `MutableBuffer`
[\#8658](https://github.com/apache/arrow-rs/pull/8658)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
-- perf: add optimized function to create offset with same length
[\#8656](https://github.com/apache/arrow-rs/pull/8656)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
-- \[Variant\] `rescale_decimal` followup
[\#8655](https://github.com/apache/arrow-rs/pull/8655)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([liamzwbao](https://github.com/liamzwbao))
-- feat: parse DataType `List`, `ListView`, `LargeList`, `LargeListView`,
`FixedSizeList` [\#8649](https://github.com/apache/arrow-rs/pull/8649)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([dqkqd](https://github.com/dqkqd))
-- Support more operations on ListView
[\#8645](https://github.com/apache/arrow-rs/pull/8645)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([a10y](https://github.com/a10y))
-- \[Variant\] Implement primitive type access for null/time/decimal\*
[\#8638](https://github.com/apache/arrow-rs/pull/8638)
([klion26](https://github.com/klion26))
-- \[Variant\] refactor: Split builder.rs into several smaller files
[\#8635](https://github.com/apache/arrow-rs/pull/8635)
([Weijun-H](https://github.com/Weijun-H))
-- add `try_new_with_length` constructor to `FixedSizeList`
[\#8624](https://github.com/apache/arrow-rs/pull/8624)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([connortsui20](https://github.com/connortsui20))
-- Change some panics to errors in parquet decoder
[\#8602](https://github.com/apache/arrow-rs/pull/8602)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([rambleraptor](https://github.com/rambleraptor))
-- Support `variant_to_arrow` for utf8
[\#8600](https://github.com/apache/arrow-rs/pull/8600)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([sdf-jkl](https://github.com/sdf-jkl))
-- Cast support for RunEndEncoded arrays
[\#8589](https://github.com/apache/arrow-rs/pull/8589)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([vegarsti](https://github.com/vegarsti))
+- Add `DataType::is_decimal`
[\#9100](https://github.com/apache/arrow-rs/pull/9100)
([AdamGS](https://github.com/AdamGS))
+- feat\(parquet\): relax type compatility check in parquet ArrowWriter
[\#9099](https://github.com/apache/arrow-rs/pull/9099)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([gruuya](https://github.com/gruuya))
+- \[Variant\] Move `ArrayVariantToArrowRowBuilder` to `variant_to_arrow`
[\#9094](https://github.com/apache/arrow-rs/pull/9094)
([liamzwbao](https://github.com/liamzwbao))
+- chore: increase row count and batch size for more deterministic tests
[\#9088](https://github.com/apache/arrow-rs/pull/9088)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([Weijun-H](https://github.com/Weijun-H))
+- Fix `nullif` kernel [\#9087](https://github.com/apache/arrow-rs/pull/9087)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- Add `FlightInfo::with_endpoints` method
[\#9075](https://github.com/apache/arrow-rs/pull/9075)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
[[arrow-flight](https://github.com/apache/arrow-rs/labels/arrow-flight)]
([lewiszlw](https://github.com/lewiszlw))
+- chore: run validation when debug assertion enabled and not only for test
[\#9073](https://github.com/apache/arrow-rs/pull/9073)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- Minor: make it clear cache array reader is not cloning arrays
[\#9057](https://github.com/apache/arrow-rs/pull/9057)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
+- Minor: avoid clone in RunArray row decoding via buffer stealing
[\#9052](https://github.com/apache/arrow-rs/pull/9052)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([lyang24](https://github.com/lyang24))
+- Minor: avoid some clones when reading parquet
[\#9048](https://github.com/apache/arrow-rs/pull/9048)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([alamb](https://github.com/alamb))
+- fix: don't generate nulls for `Decimal128` and `Decimal256` when field is
non-nullable and have non-zero `null_density`
[\#9046](https://github.com/apache/arrow-rs/pull/9046)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- fix: `Rows` `size` should use `capacity` and not `len`
[\#9044](https://github.com/apache/arrow-rs/pull/9044)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([rluvaton](https://github.com/rluvaton))
+- fix: integration / Archery test With other arrows container ran out of space
[\#9043](https://github.com/apache/arrow-rs/pull/9043)
([lyang24](https://github.com/lyang24))
+- feat: add new `try_append_value_n()` function to `GenericByteViewBuilder`
[\#9040](https://github.com/apache/arrow-rs/pull/9040)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([lyang24](https://github.com/lyang24))
+- Rename fields in BooleanBuffer for clarity
[\#9039](https://github.com/apache/arrow-rs/pull/9039)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- Allocate buffers before work in `boolean_kernels` benchmark
[\#9035](https://github.com/apache/arrow-rs/pull/9035)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- Move RunArray::get\_physical\_indices to RunEndBuffer
[\#9027](https://github.com/apache/arrow-rs/pull/9027)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([lyang24](https://github.com/lyang24))
+- Improve `RunArray` documentation
[\#9019](https://github.com/apache/arrow-rs/pull/9019)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([Jefffrey](https://github.com/Jefffrey))
+- Add BooleanArray tests for null and slice behavior
[\#9013](https://github.com/apache/arrow-rs/pull/9013)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([UtkarshSahay123](https://github.com/UtkarshSahay123))
+- feat: support array indices in VariantPath dot notation
[\#9012](https://github.com/apache/arrow-rs/pull/9012)
([foskey51](https://github.com/foskey51))
+- arrow-cast: Bring back in-order field casting for `StructArray`
[\#9007](https://github.com/apache/arrow-rs/pull/9007)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([brancz](https://github.com/brancz))
+- arrow-ipc: Add ListView support
[\#9006](https://github.com/apache/arrow-rs/pull/9006)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([brancz](https://github.com/brancz))
+- Add quote style to csv writer
[\#9004](https://github.com/apache/arrow-rs/pull/9004)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([xanderbailey](https://github.com/xanderbailey))
+- Fix row slice bug in Union column decoding with many columns
[\#9000](https://github.com/apache/arrow-rs/pull/9000)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([friendlymatthew](https://github.com/friendlymatthew))
+- build\(deps\): bump actions/download-artifact from 6 to 7
[\#8995](https://github.com/apache/arrow-rs/pull/8995)
([dependabot[bot]](https://github.com/apps/dependabot))
+- minor: Add comment blocks to PR template
[\#8994](https://github.com/apache/arrow-rs/pull/8994)
([Jefffrey](https://github.com/Jefffrey))
+- Implement `BinaryArrayType` for `&FixedSizeBinaryArray`s
[\#8993](https://github.com/apache/arrow-rs/pull/8993)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([Jefffrey](https://github.com/Jefffrey))
+- feat: impl BatchCoalescer::push\_batch\_with\_indices
[\#8991](https://github.com/apache/arrow-rs/pull/8991)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([ClSlaid](https://github.com/ClSlaid))
+- \[Arrow\]Configure max deduplication length for `StringView`
[\#8990](https://github.com/apache/arrow-rs/pull/8990)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([lichuang](https://github.com/lichuang))
+- feat: implement append\_array for FixedSizeBinaryBuilder
[\#8989](https://github.com/apache/arrow-rs/pull/8989)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([ClSlaid](https://github.com/ClSlaid))
+- Add benchmarks for Utf8View scalars for zip
[\#8988](https://github.com/apache/arrow-rs/pull/8988)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([mkleen](https://github.com/mkleen))
+- build\(deps\): bump actions/cache from 4 to 5
[\#8986](https://github.com/apache/arrow-rs/pull/8986)
([dependabot[bot]](https://github.com/apps/dependabot))
+- Take fsb null indices [\#8981](https://github.com/apache/arrow-rs/pull/8981)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- Add List to `interleave_kernels` benchmark
[\#8980](https://github.com/apache/arrow-rs/pull/8980)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([alamb](https://github.com/alamb))
+- Fix ipc errors for `LargeList` containing sliced `StringViews`
[\#8979](https://github.com/apache/arrow-rs/pull/8979)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([fabianmurariu](https://github.com/fabianmurariu))
+- arrow-buffer: implement num-traits numeric operations
[\#8977](https://github.com/apache/arrow-rs/pull/8977)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([theirix](https://github.com/theirix))
+- Update `xz` crate dependency to use `liblzma` in arrow-avro
[\#8975](https://github.com/apache/arrow-rs/pull/8975)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([jecsand838](https://github.com/jecsand838))
+- arrow-data: avoid allocating in get\_last\_run\_end
[\#8974](https://github.com/apache/arrow-rs/pull/8974)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([asubiotto](https://github.com/asubiotto))
+- Support for `Arc<str>` in `ParquetRecordWriter` derive macro
[\#8973](https://github.com/apache/arrow-rs/pull/8973)
([heilhead](https://github.com/heilhead))
+- feat: support casting `Time32` to `Int64`
[\#8971](https://github.com/apache/arrow-rs/pull/8971)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([tshauck](https://github.com/tshauck))
+- arrow-buffer: add i256::trailing\_zeros
[\#8969](https://github.com/apache/arrow-rs/pull/8969)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([theirix](https://github.com/theirix))
+- Perf: Vectorize check\_bounds\(2x speedup\)
[\#8966](https://github.com/apache/arrow-rs/pull/8966)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([gstvg](https://github.com/gstvg))
+- arrow-buffer: make i256::leading\_zeros public and tested
[\#8964](https://github.com/apache/arrow-rs/pull/8964)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([theirix](https://github.com/theirix))
+- Add ignore leading and trailing white space to csv parser
[\#8960](https://github.com/apache/arrow-rs/pull/8960)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([xanderbailey](https://github.com/xanderbailey))
+- Access `UnionFields` elements by index
[\#8959](https://github.com/apache/arrow-rs/pull/8959)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([friendlymatthew](https://github.com/friendlymatthew))
+- Add Parquet roundtrip benchmarks
[\#8956](https://github.com/apache/arrow-rs/pull/8956)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
+- \[Variant\] Add variant to arrow for
Date64/Timestamp\(Second/Millisecond\)/Time32/Time64
[\#8950](https://github.com/apache/arrow-rs/pull/8950)
([klion26](https://github.com/klion26))
+- Let `ArrowArrayStreamReader` handle schema with attached metadata + do
schema checking [\#8944](https://github.com/apache/arrow-rs/pull/8944)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([jonded94](https://github.com/jonded94))
+- Adds ExtensionType for Parquet geospatial WKB arrays
[\#8943](https://github.com/apache/arrow-rs/pull/8943)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([BlakeOrth](https://github.com/BlakeOrth))
+- Add builder to help create Schemas for shredding \(`ShreddedSchemaBuilder`\)
[\#8940](https://github.com/apache/arrow-rs/pull/8940)
([XiangpengHao](https://github.com/XiangpengHao))
+- build\(deps\): update criterion requirement from 0.7.0 to 0.8.0
[\#8939](https://github.com/apache/arrow-rs/pull/8939)
([dependabot[bot]](https://github.com/apps/dependabot))
+- fix: Resolve Avro RecordEncoder bugs related to nullable Struct fields and
Union type ids [\#8935](https://github.com/apache/arrow-rs/pull/8935)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([jecsand838](https://github.com/jecsand838))
+- Some panic!s could more semantically be unimplemented!
[\#8933](https://github.com/apache/arrow-rs/pull/8933)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([abacef](https://github.com/abacef))
+- fix: ipc decode panic with invalid data
[\#8931](https://github.com/apache/arrow-rs/pull/8931)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([leiysky](https://github.com/leiysky))
+- Allow creating zero-sized FixedSizeBinary arrays
[\#8927](https://github.com/apache/arrow-rs/pull/8927)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([tobixdev](https://github.com/tobixdev))
+- Update `test_variant_get_error_when_cast_failure...` tests to uses a valid
`VariantArray` [\#8921](https://github.com/apache/arrow-rs/pull/8921)
([alamb](https://github.com/alamb))
+- Make flight sql client generic
[\#8915](https://github.com/apache/arrow-rs/pull/8915)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
[[arrow-flight](https://github.com/apache/arrow-rs/labels/arrow-flight)]
([lewiszlw](https://github.com/lewiszlw))
+- \[minor\] Name Magic Number "8" in `FixedSizeBinaryArray::new_null`
[\#8914](https://github.com/apache/arrow-rs/pull/8914)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([tobixdev](https://github.com/tobixdev))
+- fix: cast Binary/String dictionary to view
[\#8912](https://github.com/apache/arrow-rs/pull/8912)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([Jefffrey](https://github.com/Jefffrey))
+- \[8910\]Fixed doc test with feature prettyprint
[\#8911](https://github.com/apache/arrow-rs/pull/8911)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([manishkr](https://github.com/manishkr))
+- feat: `ArrayData::new_null` for `ListView` / `LargeListView`
[\#8909](https://github.com/apache/arrow-rs/pull/8909)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([dqkqd](https://github.com/dqkqd))
+- fead: add `GenericListViewArray::from_iter_primitive`
[\#8907](https://github.com/apache/arrow-rs/pull/8907)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([dqkqd](https://github.com/dqkqd))
+- fix: `GenericListViewArray::new_null` returns empty array
[\#8905](https://github.com/apache/arrow-rs/pull/8905)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([dqkqd](https://github.com/dqkqd))
+- Allocate a zeroed buffer for FixedSizeBinaryArray::null
[\#8901](https://github.com/apache/arrow-rs/pull/8901)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([tobixdev](https://github.com/tobixdev))
+- build\(deps\): bump actions/checkout from 5 to 6
[\#8899](https://github.com/apache/arrow-rs/pull/8899)
([dependabot[bot]](https://github.com/apps/dependabot))
+- Add getters to `UnionFields`
[\#8895](https://github.com/apache/arrow-rs/pull/8895)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([friendlymatthew](https://github.com/friendlymatthew))
+- Add validated constructors for UnionFields
[\#8891](https://github.com/apache/arrow-rs/pull/8891)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
[[arrow-flight](https://github.com/apache/arrow-rs/labels/arrow-flight)]
([friendlymatthew](https://github.com/friendlymatthew))
+- Add bit width check [\#8888](https://github.com/apache/arrow-rs/pull/8888)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([rambleraptor](https://github.com/rambleraptor))
+- \[Variant\] Improve `variant_get` performance on a perfect shredding
[\#8887](https://github.com/apache/arrow-rs/pull/8887)
([XiangpengHao](https://github.com/XiangpengHao))
+- Add UnionArray::fields
[\#8884](https://github.com/apache/arrow-rs/pull/8884)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([friendlymatthew](https://github.com/friendlymatthew))
+- Struct casting field order
[\#8871](https://github.com/apache/arrow-rs/pull/8871)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([brancz](https://github.com/brancz))
+- Add support for `Union` types in `RowConverter`
[\#8839](https://github.com/apache/arrow-rs/pull/8839)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([friendlymatthew](https://github.com/friendlymatthew))
+- Add comparison support for Union arrays
[\#8838](https://github.com/apache/arrow-rs/pull/8838)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([friendlymatthew](https://github.com/friendlymatthew))
+- \[Variant\] Support array shredding into
`List/LargeList/ListView/LargeListView`
[\#8831](https://github.com/apache/arrow-rs/pull/8831)
([liamzwbao](https://github.com/liamzwbao))
+- Add support for using ListView arrays and types through FFI
[\#8822](https://github.com/apache/arrow-rs/pull/8822)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([AdamGS](https://github.com/AdamGS))
+- Add ability to skip or transform page encoding statistics in Parquet
metadata [\#8797](https://github.com/apache/arrow-rs/pull/8797)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([etseidl](https://github.com/etseidl))
+- Implement a `Vec<RecordBatch>` wrapper for `pyarrow.Table` convenience
[\#8790](https://github.com/apache/arrow-rs/pull/8790)
([jonded94](https://github.com/jonded94))
+- Make Parquet SBBF serialize/deserialize helpers public for external reuse
[\#8762](https://github.com/apache/arrow-rs/pull/8762)
[[parquet](https://github.com/apache/arrow-rs/labels/parquet)]
([RoseZhang123](https://github.com/RoseZhang123))
+- Add cast support for \(Large\)ListView \<-\> \(Large\)List
[\#8735](https://github.com/apache/arrow-rs/pull/8735)
[[arrow](https://github.com/apache/arrow-rs/labels/arrow)]
([vegarsti](https://github.com/vegarsti))
diff --git a/Cargo.toml b/Cargo.toml
index a1641d904b..e4f1780d29 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -68,7 +68,7 @@ exclude = [
]
[workspace.package]
-version = "57.1.0"
+version = "57.2.0"
homepage = "https://github.com/apache/arrow-rs"
repository = "https://github.com/apache/arrow-rs"
authors = ["Apache Arrow <[email protected]>"]
@@ -85,26 +85,26 @@ edition = "2024"
rust-version = "1.85"
[workspace.dependencies]
-arrow = { version = "57.1.0", path = "./arrow", default-features = false }
-arrow-arith = { version = "57.1.0", path = "./arrow-arith" }
-arrow-array = { version = "57.1.0", path = "./arrow-array" }
-arrow-buffer = { version = "57.1.0", path = "./arrow-buffer" }
-arrow-cast = { version = "57.1.0", path = "./arrow-cast" }
-arrow-csv = { version = "57.1.0", path = "./arrow-csv" }
-arrow-data = { version = "57.1.0", path = "./arrow-data" }
-arrow-ipc = { version = "57.1.0", path = "./arrow-ipc" }
-arrow-json = { version = "57.1.0", path = "./arrow-json" }
-arrow-ord = { version = "57.1.0", path = "./arrow-ord" }
-arrow-pyarrow = { version = "57.1.0", path = "./arrow-pyarrow" }
-arrow-row = { version = "57.1.0", path = "./arrow-row" }
-arrow-schema = { version = "57.1.0", path = "./arrow-schema" }
-arrow-select = { version = "57.1.0", path = "./arrow-select" }
-arrow-string = { version = "57.1.0", path = "./arrow-string" }
-parquet = { version = "57.1.0", path = "./parquet", default-features = false }
-parquet-geospatial = { version = "57.1.0", path = "./parquet-geospatial" }
-parquet-variant = { version = "57.1.0", path = "./parquet-variant" }
-parquet-variant-json = { version = "57.1.0", path = "./parquet-variant-json" }
-parquet-variant-compute = { version = "57.1.0", path =
"./parquet-variant-compute" }
+arrow = { version = "57.2.0", path = "./arrow", default-features = false }
+arrow-arith = { version = "57.2.0", path = "./arrow-arith" }
+arrow-array = { version = "57.2.0", path = "./arrow-array" }
+arrow-buffer = { version = "57.2.0", path = "./arrow-buffer" }
+arrow-cast = { version = "57.2.0", path = "./arrow-cast" }
+arrow-csv = { version = "57.2.0", path = "./arrow-csv" }
+arrow-data = { version = "57.2.0", path = "./arrow-data" }
+arrow-ipc = { version = "57.2.0", path = "./arrow-ipc" }
+arrow-json = { version = "57.2.0", path = "./arrow-json" }
+arrow-ord = { version = "57.2.0", path = "./arrow-ord" }
+arrow-pyarrow = { version = "57.2.0", path = "./arrow-pyarrow" }
+arrow-row = { version = "57.2.0", path = "./arrow-row" }
+arrow-schema = { version = "57.2.0", path = "./arrow-schema" }
+arrow-select = { version = "57.2.0", path = "./arrow-select" }
+arrow-string = { version = "57.2.0", path = "./arrow-string" }
+parquet = { version = "57.2.0", path = "./parquet", default-features = false }
+parquet-geospatial = { version = "57.2.0", path = "./parquet-geospatial" }
+parquet-variant = { version = "57.2.0", path = "./parquet-variant" }
+parquet-variant-json = { version = "57.2.0", path = "./parquet-variant-json" }
+parquet-variant-compute = { version = "57.2.0", path =
"./parquet-variant-compute" }
chrono = { version = "0.4.40", default-features = false, features = ["clock"] }
diff --git a/dev/release/update_change_log.sh b/dev/release/update_change_log.sh
index 2812988382..7f0195bbd7 100755
--- a/dev/release/update_change_log.sh
+++ b/dev/release/update_change_log.sh
@@ -29,8 +29,8 @@
set -e
-SINCE_TAG="57.0.0"
-FUTURE_RELEASE="57.1.0"
+SINCE_TAG="57.1.0"
+FUTURE_RELEASE="57.2.0"
SOURCE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
SOURCE_TOP_DIR="$(cd "${SOURCE_DIR}/../../" && pwd)"