Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
716 commits
Select commit Hold shift + click to select a range
63fe99a
[Variant] Remove ceremony from iterator of variants into VariantArray…
friendlymatthew Oct 16, 2025
c42c0a4
[Variant] Clean up redundant `get_type_name` (#8617)
liamzwbao Oct 16, 2025
11d8660
Remove experimental warning from `extension` module (#8597)
mbrobbel Oct 16, 2025
caeb4d2
feat: Improve DataType display for `RunEndEncoded` (#8596)
Weijun-H Oct 16, 2025
f3baa80
[thrift-remodel] Add macro to reduce boilerplate necessary to impleme…
etseidl Oct 16, 2025
5a384f4
Undeprecate `ArrowWriter::into_serialized_writer` and add docs (#8621)
alamb Oct 16, 2025
2ca3d60
fix: incorrect assertion in `BitChunks::new` (#8620)
rluvaton Oct 17, 2025
a85d8b0
[Variant] impl `PartialEq` and `FromIterator<Option<..>>` for `Varian…
friendlymatthew Oct 17, 2025
d49f017
Introduce a ThriftProtocolError to avoid allocating and formattings s…
jhorstmann Oct 17, 2025
f131b54
bench: create `zip` kernel benchmarks (#8654)
rluvaton Oct 19, 2025
2f96204
Adding `try_append_value` implementation to `ByteViewBuilder` (#8594)
samueleresca Oct 19, 2025
0c33129
parquet-rewrite: add write_batch_size and compression_level config (…
mapleFU Oct 19, 2025
5faa724
Prepare for `57.0.0` release (#8644)
alamb Oct 19, 2025
4fc9302
[Variant] refactor: Split builder.rs into several smaller files (#8635)
Weijun-H Oct 19, 2025
9d75f87
[Parquet]Optimize the performance in record reader (#8607)
hhhizzz Oct 20, 2025
c74cbf2
perf: add optimized function to create offset with same length (#8656)
rluvaton Oct 20, 2025
f0f6128
chore: update `OffsetBuffer::from_lengths(std::iter::repeat_n(<val>, …
rluvaton Oct 21, 2025
94d51f4
perf: add `repeat_slice_n_times` to `MutableBuffer` (#8658)
rluvaton Oct 21, 2025
89846a8
[Variant] `rescale_decimal` followup (#8655)
liamzwbao Oct 22, 2025
a7572eb
[Variant] Implement primitive type access for null/time/decimal* (#8638)
klion26 Oct 22, 2025
7d51ff7
[JSON] Map key supports utf8 view (#8679)
mapleFU Oct 23, 2025
fa6f9eb
[JSON] Add encoding for binary view (#8675)
mapleFU Oct 23, 2025
d519bb8
Add geo-parquet publishing instructions (#8690)
alamb Oct 23, 2025
12eaa17
[Minor]: Document visibility for enums produced by Thrift macros (#8706)
etseidl Oct 24, 2025
9c1b03b
Update `arrow-avro` `README.md` version to 57 (#8695)
jecsand838 Oct 24, 2025
928daa4
chore: add test case of RowSelection::trim (#8660)
lichuang Oct 24, 2025
729b258
[parquet] Adding counting method in thrift_enum macro to support ENC…
hhhizzz Oct 24, 2025
021090f
[Variant] Remove `create_test_variant_array` helper method (#8664)
friendlymatthew Oct 24, 2025
79575aa
perf: zero-copy path in `RowConverter::from_binary` (#8686)
mzabaluev Oct 24, 2025
e9a7fe5
Add `FilterPredicate::filter_record_batch` (#8693)
pepijnve Oct 24, 2025
99811f8
check bit width to avoid panic in DeltaBitPackDecoder (#8688)
rambleraptor Oct 26, 2025
78bd204
[thrift-remodel] Use `thrift_enum` macro for `ConvertedType` (#8680)
etseidl Oct 26, 2025
c149027
Cast support for RunEndEncoded arrays (#8589)
vegarsti Oct 26, 2025
7f3d3ae
perf: override `count`, `nth`, `nth_back`, `last` and `max` for BitIt…
rluvaton Oct 27, 2025
29cd685
Change some panics to errors in parquet decoder (#8602)
rambleraptor Oct 27, 2025
5e32cc6
Support more operations on ListView (#8645)
a10y Oct 27, 2025
06c49db
[Parquet] Account for FileDecryptor in ParquetMetaData heap size calc…
adamreeve Oct 27, 2025
7a92be5
Refactor arrow-cast decimal casting to unify the rescale logic used i…
liamzwbao Oct 27, 2025
62df32e
Add benchmark for casting to RunEndEncoded (REE) (#8710)
vegarsti Oct 27, 2025
6c3e588
fix: `zip` now treats nulls as false in provided mask regardless of t…
rluvaton Oct 27, 2025
5744743
perf: add optimized zip implementation for scalars (#8653)
rluvaton Oct 28, 2025
560596e
feat: Parquet-layout add Index and Footer info (#8712)
mapleFU Oct 28, 2025
533fe4f
build(deps): bump actions/download-artifact from 5 to 6 (#8720)
dependabot[bot] Oct 28, 2025
0745bb4
[Variant] Fix the index of an item in VariantArray in a unit test (#8…
martin-g Oct 28, 2025
e9ea12b
Implement Push Parquet Decoder (#7997)
alamb Oct 29, 2025
d4b6183
docs: Update Parquet readme implementation status (#8731)
alamb Oct 29, 2025
1c8eac1
docs: Add link to the Arrow implementation status page (#8732)
alamb Oct 29, 2025
452dadb
Fix lint in arrow-flight by updating assert_cmd after it upgraded (#8…
vegarsti Oct 30, 2025
1b18582
[Variant] Add try_value/value for VariantArray (#8719)
klion26 Oct 30, 2025
2eabb59
perf: Use Vec::with_capacity in cast_to_run_end_encoded (#8726)
vegarsti Oct 30, 2025
cd61ead
feat: parse DataType `List`, `ListView`, `LargeList`, `LargeListView`…
dqkqd Oct 30, 2025
bac0cb5
Small optimization in Parquet varint decoder (#8742)
etseidl Oct 31, 2025
7e54bb2
[Parquet] Return error from `RleDecoder::reload` rather than panic (#…
liamzwbao Oct 31, 2025
06f7f07
refactor `test_cache_projection_excludes_nested_columns` to use high …
alamb Oct 31, 2025
3f3feed
[Parquet] Reduce one copy in `SerializedPageReader` (#8745)
XiangpengHao Nov 1, 2025
062d766
Remove link to internal `arrow-integration-test` crate from main `arr…
phil-opp Nov 1, 2025
4545c1e
feat: Ensure consistent metadata display for data types (#8760)
mhilton Nov 3, 2025
87154eb
fix: `ArrayIter` does not report size hint correctly after advancing …
rluvaton Nov 3, 2025
0051ee3
Document limitations of the `arrow_integration_test` crate (#8738)
phil-opp Nov 3, 2025
3f217f5
Align Criterion dependencies (#8758)
pepijnve Nov 3, 2025
8bbcaef
Update Rust toolchain to 1.91 (#8769)
mbrobbel Nov 3, 2025
b8a1926
feat: add `new_repeated` to `ByteArray` (#8659)
rluvaton Nov 3, 2025
a30890e
[Variant] Support `shred_variant` for Uuids (#8666)
friendlymatthew Nov 3, 2025
e2ebb23
Add example to convert `PrimitiveArray` to a `Vec` (#8771)
alamb Nov 4, 2025
f9dd799
Update docs for zero copy conversion of ScalarBuffer (#8772)
alamb Nov 4, 2025
d48bf0d
feat: parse `DataType::Union`, `DataType::Map`, `DataType::RunEndEnc…
dqkqd Nov 4, 2025
6be6cba
Support `variant_to_arrow` for utf8 (#8600)
sdf-jkl Nov 4, 2025
eaca232
[Parquet] Allow reading of files with unknown logical types (#8777)
etseidl Nov 5, 2025
0430664
add `try_new_with_length` constructor to `FixedSizeList` (#8624)
connortsui20 Nov 5, 2025
40300ca
perf: Speed up Parquet file writing (10%, back to speed of 56) (#8786)
etseidl Nov 5, 2025
e96e609
Add `VariantPath::is_empty` (#8791)
friendlymatthew Nov 6, 2025
ec75d00
docs: Add links for arrow-avro (#8770)
alamb Nov 6, 2025
220d0ea
Implement hex decoding of JSON strings to binary arrays (#8737)
phil-opp Nov 6, 2025
d379b98
[Parquet] Minor: Update comments in page decompressor (#8764)
alamb Nov 6, 2025
e4ff9dc
[Parquet] Add additional docs for `ArrowReaderOptions` and `ArrowRead…
alamb Nov 7, 2025
1ab356f
[Variant] Add variant to arrow for `DataType::{Binary/LargeBinary/Bin…
klion26 Nov 9, 2025
43c7637
feat: add `apply_unary_op` and `apply_binary_op` bitwise operations (…
rluvaton Nov 9, 2025
c2424bb
Rewrite `ParquetRecordBatchStream` in terms of the PushDecoder (#8159)
alamb Nov 10, 2025
4d6b93a
Clean up predicate_cache tests (#8755)
alamb Nov 10, 2025
a14f77c
Fix: ViewType gc on huge batch would produce bad output (#8694)
mapleFU Nov 10, 2025
a0db198
Add options to control various aspects of Parquet metadata decoding (…
etseidl Nov 11, 2025
efa0664
perf: override `ArrayIter` default impl for `nth`, `nth_back`, `last`…
rluvaton Nov 11, 2025
c468056
Improve ParquetDecoder docs (#8802)
alamb Nov 11, 2025
223ee58
[Parquet] Avoid copying `LogicalType` in `ColumnOrder::get_sort_order…
alamb Nov 11, 2025
0b01599
Parquet-concat: supports page index and bloom filter (#8811)
mapleFU Nov 11, 2025
5a1a13a
build(deps): update lz4_flex requirement from 0.11 to 0.12 (#8820)
dependabot[bot] Nov 12, 2025
f8d9572
Change `BooleanBuffer::append_packed_range` to use `apply_bitwise_bin…
alamb Nov 13, 2025
77a4c43
Fix bug in handling of empty Parquet page index structures (#8817)
etseidl Nov 13, 2025
4b33252
bench: add `ArrayIter` benchmarks (#8774)
rluvaton Nov 13, 2025
af2c460
Add FilterBuilder::is_optimize_beneficial (#8782)
pepijnve Nov 13, 2025
6fc14b6
Allow reading of improperly constructed empty lists in Parquet metada…
etseidl Nov 13, 2025
2bc269c
build(deps): update apache-avro requirement from 0.20.0 to 0.21.0 (#8…
dependabot[bot] Nov 13, 2025
911331a
[Parquet] Adaptive Parquet Predicate Pushdown (#8733)
hhhizzz Nov 14, 2025
9d7dde2
remove T: ParquetValueType bound on ValueStatistics (#8824)
pmarks Nov 14, 2025
5133cb9
[Doc] Correct `ListArray` documentation (#8803)
liamzwbao Nov 14, 2025
3d5428d
General virtual columns support + row numbers as a first use-case (#8…
vustef Nov 14, 2025
ca4a0ae
[Variant] Enforce shredded-type validation in `shred_variant` (#8796)
liamzwbao Nov 14, 2025
d13e46a
Speed up `collect_bool` and remove `unsafe`, optimize `take_bits`, `t…
Dandandan Nov 17, 2025
e4fdefb
Respect page index policy option for ParquetObjectReader when it's no…
zhuqi-lucas Nov 18, 2025
c45d238
Fix `RowNumberReader` when not all row groups are selected (#8863)
vustef Nov 18, 2025
5ee07d1
docs: Add example for creating a `MutableBuffer` from `Buffer` (#8853)
alamb Nov 18, 2025
1b8b212
Add `merge` and `merge_n` kernels (#8753)
pepijnve Nov 18, 2025
c5c8076
docs: Add examples for creating MutableBuffer from Vec (#8852)
alamb Nov 18, 2025
0dcc401
Make `ArrowReaderOptions::with_virtual_columns` error rather than pan…
alamb Nov 19, 2025
389f404
Fix errors when reading nested Lists with pushdown predicates. (#8866)
alamb Nov 19, 2025
b5c831a
Allow Users to Provide Custom `ArrayFormatter`s when Pretty-Printing …
tschwarzinger Nov 19, 2025
d1a428c
Speed up filter some more (up to 2x) (#8868)
Dandandan Nov 19, 2025
6675204
Make ArrayFormatterFactory Send + Sync and add a test (#8878)
tschwarzinger Nov 19, 2025
fea605c
[Variant] Fix cast logic for Variant to Arrow for DataType::Null (#8825)
klion26 Nov 19, 2025
21e9ceb
Support parsing for old style FixedSizeList (#8882)
alamb Nov 20, 2025
ed9efe7
Fix regression caused by changes in Display for DataType - display (`…
etseidl Nov 20, 2025
779e9bd
Prepare for 57.1.0 release: Changelog and Version (#8874)
alamb Nov 21, 2025
73dbd55
Allocate a zeroed buffer for FixedSizeBinaryArray::null (#8901)
tschwarzinger Nov 22, 2025
49ed6ef
Add bit width check (#8888)
rambleraptor Nov 22, 2025
0424191
feat: `ArrayData::new_null` for `ListView` / `LargeListView` (#8909)
dqkqd Nov 23, 2025
af7a07c
[8910]Fixed doc test with feature prettyprint (#8911)
manishkr Nov 23, 2025
a67d497
build(deps): bump actions/checkout from 5 to 6 (#8899)
dependabot[bot] Nov 23, 2025
88b135a
fix: `GenericListViewArray::new_null` returns empty array (#8905)
dqkqd Nov 24, 2025
558f744
Add getters to `UnionFields` (#8895)
friendlymatthew Nov 24, 2025
5f3577a
Add UnionArray::fields (#8884)
friendlymatthew Nov 24, 2025
a8a63c2
Add comparison support for Union arrays (#8838)
friendlymatthew Nov 24, 2025
6ec5d6d
Update publish order for arrow-ord (#8919)
alamb Nov 25, 2025
7e637a7
Struct casting field order (#8871)
brancz Nov 25, 2025
08dee63
[minor] Name Magic Number "8" in `FixedSizeBinaryArray::new_null` (#8…
tschwarzinger Nov 25, 2025
1c90efe
Fix 57.1.0 CHANGELOG to refer to virtual row number support (#8903)
alamb Nov 25, 2025
d76bfb1
Allow creating zero-sized FixedSizeBinary arrays (#8927)
tschwarzinger Nov 29, 2025
fe94a25
Update `test_variant_get_error_when_cast_failure...` tests to uses a…
alamb Dec 1, 2025
d212713
Chore: Update variant and geospatial versons to workspace (#8920)
alamb Dec 1, 2025
7b2143b
[Variant] Improve `variant_get` performance on a perfect shredding (#…
XiangpengHao Dec 2, 2025
b93fa52
fix: ipc decode panic with invalid data (#8931)
leiysky Dec 2, 2025
bab30ae
Add ability to skip or transform page encoding statistics in Parquet …
etseidl Dec 3, 2025
cd60536
Add support for using ListView arrays and types through FFI (#8822)
AdamGS Dec 4, 2025
ce4edd5
Some panic!s could more semantically be unimplemented! (#8933)
abacef Dec 4, 2025
a67cd19
Implement a `Vec<RecordBatch>` wrapper for `pyarrow.Table` convenienc…
jonasdedden Dec 5, 2025
d3531ca
build(deps): update criterion requirement from 0.7.0 to 0.8.0 (#8939)
dependabot[bot] Dec 8, 2025
e9bb9f6
Add support for `Union` types in `RowConverter` (#8839)
friendlymatthew Dec 8, 2025
c9fca0b
Add Parquet roundtrip benchmarks (#8956)
etseidl Dec 8, 2025
dff6402
Let `ArrowArrayStreamReader` handle schema with attached metadata + d…
jonasdedden Dec 9, 2025
2cc8abb
arrow-data: avoid allocating in get_last_run_end (#8974)
asubiotto Dec 10, 2025
5375411
Perf: Vectorize check_bounds(2x speedup) (#8966)
gstvg Dec 10, 2025
422eb29
arrow-buffer: add i256::trailing_zeros (#8969)
theirix Dec 10, 2025
112e581
Add example of parsing field names as VariantPath (#8945)
alamb Dec 10, 2025
8cd37a2
arrow-buffer: make i256::leading_zeros public and tested (#8964)
theirix Dec 10, 2025
c3226a4
fead: add `GenericListViewArray::from_iter_primitive` (#8907)
dqkqd Dec 10, 2025
026a260
Add List to `interleave_kernels` benchmark (#8980)
alamb Dec 11, 2025
55bd73f
Update `xz` crate dependency to use `liblzma` in arrow-avro (#8975)
jecsand838 Dec 11, 2025
9293c89
Take fsb null indices (#8981)
alamb Dec 11, 2025
67c9f9b
fix: Resolve Avro RecordEncoder bugs related to nullable Struct field…
jecsand838 Dec 11, 2025
82ccba9
arrow-select: improve dictionary interleave fallback performance (#8978)
asubiotto Dec 11, 2025
42b690c
Access `UnionFields` elements by index (#8959)
friendlymatthew Dec 11, 2025
365a9ec
[Variant] Add variant to arrow for Date64/Timestamp(Second/Millisecon…
klion26 Dec 11, 2025
4601838
Make flight sql client generic (#8915)
lewiszlw Dec 11, 2025
cf8582b
Add builder to help create Schemas for shredding (`ShreddedSchemaBuil…
XiangpengHao Dec 11, 2025
2d89500
feat: support casting `Time32` to `Int64` (#8971)
tshauck Dec 11, 2025
6ff8cc4
Support for `Arc<str>` in `ParquetRecordWriter` derive macro (#8973)
heilhead Dec 11, 2025
08dcc0b
fix: cast Binary/String dictionary to view (#8912)
Jefffrey Dec 12, 2025
b25a93b
build(deps): bump actions/cache from 4 to 5 (#8986)
dependabot[bot] Dec 12, 2025
f8796fd
Fix ipc errors for `LargeList` containing sliced `StringViews` (#8979)
fabianmurariu Dec 12, 2025
5db072f
arrow-select: implement specialized interleave_list (#8953)
asubiotto Dec 13, 2025
c6cc7f8
arrow-buffer: implement num-traits numeric operations (#8977)
theirix Dec 13, 2025
ed2cf82
Improve documentation for `prep_null_mask_flter (#8722)
alamb Dec 15, 2025
8ff7190
Implement `BinaryArrayType` for `&FixedSizeBinaryArray`s (#8993)
Jefffrey Dec 15, 2025
e49c2ed
[Variant] Support array shredding into `List/LargeList/ListView/Large…
liamzwbao Dec 15, 2025
20cd096
Add boolean benchmark for byte aligned slices (#8997)
alamb Dec 15, 2025
63212d2
Add validated constructors for UnionFields (#8891)
friendlymatthew Dec 15, 2025
d9bb013
Adds ExtensionType for Parquet geospatial WKB arrays (#8943)
BlakeOrth Dec 15, 2025
91234b5
feat: impl BatchCoalescer::push_batch_with_indices (#8991)
ClSlaid Dec 15, 2025
e3a670e
Add ignore leading and trailing white space to csv parser (#8960)
xanderbailey Dec 15, 2025
fbc5aab
Add cast support for (Large)ListView <-> (Large)List (#8735)
vegarsti Dec 15, 2025
6192718
build(deps): bump actions/download-artifact from 6 to 7 (#8995)
dependabot[bot] Dec 15, 2025
c2bd7d9
minor: Add comment blocks to PR template (#8994)
Jefffrey Dec 16, 2025
6b290d1
Speed up unary `not` kernel by 50%, add `BooleanBuffer::from_bitwise_…
alamb Dec 17, 2025
c133333
Make Parquet SBBF serialize/deserialize helpers public for external r…
RoseZhang123 Dec 17, 2025
9aca68b
Add quote style to csv writer (#9004)
xanderbailey Dec 17, 2025
1cc659d
feat: implement append_array for FixedSizeBinaryBuilder (#8989)
ClSlaid Dec 17, 2025
116ae12
[Arrow]Configure max deduplication length for `StringView` (#8990)
lichuang Dec 17, 2025
15b18c1
arrow-cast: Bring back in-order field casting for `StructArray` (#9007)
brancz Dec 18, 2025
3b097a5
arrow-ipc: Add ListView support (#9006)
brancz Dec 18, 2025
240cbf4
Move examples in arrow-csv to docstrings, polish up docs (#9001)
alamb Dec 19, 2025
b318293
Add BooleanArray tests for null and slice behavior (#9013)
UtkarshSahay123 Dec 20, 2025
addf74d
Improve `RunArray` documentation (#9019)
Jefffrey Dec 21, 2025
34337d2
Move RunArray::get_physical_indices to RunEndBuffer (#9027)
lyang24 Dec 23, 2025
1fec0fb
Improve arrow-buffer documentation (#9020)
alamb Dec 23, 2025
f4db150
Rename fields in BooleanBuffer for clarity (#9039)
alamb Dec 25, 2025
294961b
feat: add new `try_append_value_n()` function to `GenericByteViewBuil…
lyang24 Dec 25, 2025
b80d457
Allocate buffers before work in `boolean_kernels` benchmark (#9035)
alamb Dec 25, 2025
bfd31cc
add `DataType::is_string` (#7429)
adriangb Dec 26, 2025
b1ddc24
fix: `Rows` `size` should use `capacity` and not `len` (#9044)
rluvaton Dec 27, 2025
8ed2b52
fix: integration / Archery test With other arrows container ran out o…
lyang24 Dec 27, 2025
de1686a
feat: support array indices in VariantPath dot notation (#9012)
foskey51 Dec 27, 2025
7f656ff
Minor: avoid some clones when reading parquet (#9048)
alamb Dec 27, 2025
814ee42
Add benchmarks for Utf8View scalars for zip (#8988)
mkleen Dec 28, 2025
2d6fc51
Add examples for min and max functions (#9062)
EduardAkhmetshin Dec 30, 2025
0991c76
[Variant] Unify the CastOptions usage in parquet-variant-compute (#8984)
klion26 Dec 30, 2025
9b16fb3
fix: don't generate nulls for `Decimal128` and `Decimal256` when fiel…
rluvaton Dec 30, 2025
5ddddbd
Minor: avoid clone in RunArray row decoding via buffer stealing (#9052)
lyang24 Dec 30, 2025
9213ffd
perf: improve performance of encoding `GenericByteArray` by 8% (#9054)
rluvaton Dec 30, 2025
843bee2
Fix headers and empty lines in code examples (#9064)
EduardAkhmetshin Dec 31, 2025
6afdfbb
docs: fix misleading reserve documentation (#9076)
WaterWhisperer Jan 1, 2026
44d4c90
chore: run validation when debug assertion enabled and not only for t…
rluvaton Jan 1, 2026
49c27d6
Add special implementation for zip for Utf8View/BinaryView scalars (#…
mkleen Jan 3, 2026
1ba902e
Fix `nullif` kernel (#9087)
alamb Jan 5, 2026
b8a2c1a
[parquet] Avoid a clone while resolving the read strategy (#9056)
alamb Jan 5, 2026
a9d6e92
[Variant] Move `ArrayVariantToArrowRowBuilder` to `variant_to_arrow` …
liamzwbao Jan 5, 2026
b1dfb69
Fix row slice bug in Union column decoding with many columns (#9000)
friendlymatthew Jan 6, 2026
068a7e4
Add `DataType::is_decimal` (#9100)
AdamGS Jan 6, 2026
2507946
Add `FlightInfo::with_endpoints` method (#9075)
lewiszlw Jan 6, 2026
10a976f
chore: increase row count and batch size for more deterministic tests…
Weijun-H Jan 7, 2026
2b179b8
feat(parquet): relax type compatility check in parquet ArrowWriter (#…
gruuya Jan 7, 2026
721f373
Seal Array trait (#9092)
tustvold Jan 7, 2026
a8346be
Minor: make it clear cache array reader is not cloning arrays (#9057)
alamb Jan 7, 2026
28f66f9
Add Union encoding documentation (#9102)
EduardAkhmetshin Jan 7, 2026
9e822e0
Update version to `57.2.0`, add CHANGELOG (#9103)
alamb Jan 7, 2026
67e04e7
feat: change default behavior for Parquet `PageEncodingStats` to bitm…
WaterWhisperer Jan 8, 2026
37d5013
docs: Update release schedule in README.md (#9111)
alamb Jan 8, 2026
73bbfee
feat: add benchmarks for json parser (#9107)
Weijun-H Jan 8, 2026
964daec
chore: switch test from `bincode` to maintained `postcard` crate (RUS…
alamb Jan 8, 2026
96637fc
Speed up binary kernels (30% faster `and` and `or`), add `BooleanBuff…
alamb Jan 9, 2026
13c43c4
[Variant] Optimize the object header generation logic in ObjectBuilde…
klion26 Jan 9, 2026
0890a2c
Update readme for geospatial crate (#9124)
paleolimbot Jan 9, 2026
266965b
Remove parquet arrow_cast dependency (#9077)
tustvold Jan 9, 2026
cfba3cc
Updated arrow-pyarrow to use pyo3 0.27, updated deprecated code warni…
hntd187 Jan 9, 2026
7a4e639
Fix clippy (#9130)
alamb Jan 10, 2026
67af92e
fix: display `0 secs` for empty DayTime/MonthDayNano intervals (#9023)
Jefffrey Jan 10, 2026
57b64b4
Fix IPC roundtripping dicts nested in ListViews (#9126)
brancz Jan 10, 2026
7856970
docs(parquet): add example for preserving dictionary encoding (#9116)
AndreaBozzo Jan 10, 2026
86b6617
Add options to skip decoding `Statistics` and `SizeStatistics` in Par…
etseidl Jan 10, 2026
b736f08
[arrow] Minimize allocation in GenericViewArray::slice() (#9016)
maxburke Jan 10, 2026
5a1e482
bench: added to row_format benchmark conversion of 53 non-nested colu…
rluvaton Jan 10, 2026
b2aeab1
doc: fix link on FixedSizeListArray doc (#9033)
Jefffrey Jan 10, 2026
b765274
Docs: Add additional documentation and example for `make_array` (#9112)
alamb Jan 10, 2026
298d3aa
Change FlightSQLClient to return `FlightError` & cleanup code (#8916)
lewiszlw Jan 10, 2026
200fb06
Avoid overallocating arrays in coalesce primitives / views (#9132)
Dandandan Jan 10, 2026
6aae76b
perf: optimize hex decoding in json (1.8x faster in binary-heavy) (#9…
Weijun-H Jan 10, 2026
f338149
Add nullif_kernel benchmark (#9089)
alamb Jan 11, 2026
601be25
perf: Avoid ArrayData allocation in PrimitiveArray::reinterpret_cast …
alamb Jan 11, 2026
802b890
Add `BooleanBufferBuilder::extend_trusted_len` (#9137)
Dandandan Jan 11, 2026
5db4f50
docs: Improve main README.md and highlight community (#9119)
alamb Jan 12, 2026
ee6c3fb
fix: support cast from `Null` to list view/run encoded/union types (#…
Jefffrey Jan 12, 2026
02af070
docs(variant): fix VariantObject::get documentation to reflect Option…
mohit7705 Jan 12, 2026
237065b
Avoid clones in `make_array` for `StructArray` and `GenericByteViewAr…
alamb Jan 12, 2026
4b3da3d
Uncomment part of test_utf8_single_column_reader_test (#9148)
sdf-jkl Jan 13, 2026
3f5eebd
Update ASF copyright year in NOTICE (#9145)
mohit7705 Jan 13, 2026
b904318
fix:[9018]Fixed RunArray slice offsets (#9036)
manishkr Jan 13, 2026
1ef55f1
arrow-ipc: Add tests for nested dicts for Map and Union arrays (#9146)
brancz Jan 13, 2026
a7b8907
feat: add `reserve` to `Rows` (#9142)
rluvaton Jan 13, 2026
8beeab2
perf: improve calculating length performance for view byte array in r…
rluvaton Jan 13, 2026
7ecef6e
[Parquet] perf: Create `PrimitiveArray`s directly rather than via `Ar…
alamb Jan 13, 2026
4ddaa8c
doc: add example of RowFilter usage (#9115)
sonhmai Jan 13, 2026
90839df
[Parquet] perf: Create StructArrays directly rather than via `ArrayDa…
alamb Jan 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 3 additions & 0 deletions .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@ github:
strict: true
# don't require any jobs to pass
contexts: []
pull_requests:
# enable updating head branches of pull requests
allow_update_branch: true

# publishes the content of the `asf-site` branch to
# https://arrow.apache.org/rust/
Expand Down
23 changes: 7 additions & 16 deletions .github/actions/setup-builder/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,16 +16,7 @@
# under the License.

name: Prepare Rust Builder
description: 'Prepare Rust Build Environment'
inputs:
rust-version:
description: 'version of rust to install (e.g. stable)'
required: false
default: 'stable'
target:
description: 'target architecture(s)'
required: false
default: 'x86_64-unknown-linux-gnu'
description: "Prepare Rust Build Environment"
runs:
using: "composite"
steps:
Expand All @@ -43,6 +34,9 @@ runs:
/usr/local/cargo/git/db/
key: cargo-cache3-${{ hashFiles('**/Cargo.toml') }}
restore-keys: cargo-cache3-
- name: Setup Rust toolchain
shell: bash
run: rustup install
- name: Generate lockfile
shell: bash
run: cargo fetch
Expand All @@ -51,12 +45,6 @@ runs:
run: |
apt-get update
apt-get install -y protobuf-compiler
- name: Setup Rust toolchain
shell: bash
run: |
echo "Installing ${{ inputs.rust-version }}"
rustup toolchain install ${{ inputs.rust-version }} --target ${{ inputs.target }}
rustup default ${{ inputs.rust-version }}
- name: Disable debuginfo generation
# Disable full debug symbol generation to speed up CI build and keep memory down
# "1" means line tables only, which is useful for panic tracebacks.
Expand All @@ -65,6 +53,9 @@ runs:
- name: Enable backtraces
shell: bash
run: echo "RUST_BACKTRACE=1" >> $GITHUB_ENV
- name: Disable incremental compilation
shell: bash
run: echo CARGO_INCREMENTAL=0 >> $GITHUB_ENV
- name: Fixup git permissions
# https://github.com/actions/checkout/issues/766
shell: bash
Expand Down
4 changes: 4 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ updates:
applies-to: version-updates
patterns:
- "prost*"
tonic:
applies-to: version-updates
patterns:
- "tonic*"
- package-ecosystem: "github-actions"
directory: "/"
schedule:
Expand Down
20 changes: 19 additions & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,38 @@
# Which issue does this PR close?

<!--
We generally require a GitHub issue to be filed for all bug fixes and enhancements and this helps us generate change logs for our releases. You can link an issue to this PR using the GitHub syntax.
-->

Closes #NNN.
- Closes #NNN.

# Rationale for this change

<!--
Why are you proposing this change? If this is already explained clearly in the issue then this section is not needed.
Explaining clearly why changes are proposed helps reviewers understand your changes and offer better suggestions for fixes.
-->

# What changes are included in this PR?

<!--
There is no need to duplicate the description in the issue here but it is sometimes worth providing a summary of the individual changes in this PR.
-->

# Are these changes tested?

<!--
We typically require tests for all PRs in order to:
1. Prevent the code from being accidentally broken by subsequent changes
2. Serve as another way to document the expected behavior of the code

If tests are not included in your PR, please explain why (for example, are they covered by existing tests)?
-->

# Are there any user-facing changes?

<!--
If there are user-facing changes then we may require documentation to be updated before approving the PR.

If there are any breaking changes to public APIs, please call them out.
-->
19 changes: 12 additions & 7 deletions .github/workflows/arrow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ jobs:
container:
image: amd64/rust
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
submodules: true
- name: Setup Rust toolchain
Expand All @@ -68,7 +68,10 @@ jobs:
- name: Test arrow-schema
run: cargo test -p arrow-schema --all-features
- name: Test arrow-array
run: cargo test -p arrow-array --all-features
run: |
cargo test -p arrow-array --all-features
# Disable feature `force_validate`
cargo test -p arrow-array --features=ffi
- name: Test arrow-select
run: cargo test -p arrow-select --all-features
- name: Test arrow-cast
Expand Down Expand Up @@ -112,7 +115,7 @@ jobs:
container:
image: amd64/rust
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
submodules: true
- name: Setup Rust toolchain
Expand Down Expand Up @@ -140,13 +143,15 @@ jobs:
container:
image: amd64/rust
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
submodules: true
- name: Setup Rust toolchain
uses: ./.github/actions/setup-builder
with:
target: wasm32-unknown-unknown,wasm32-wasip1
- name: Install wasm32 targets
run: |
rustup target add wasm32-unknown-unknown
rustup target add wasm32-wasip1
- name: Build wasm32-unknown-unknown
run: cargo build -p arrow --no-default-features --features=json,csv,ipc,ffi --target wasm32-unknown-unknown
- name: Build wasm32-wasip1
Expand All @@ -158,7 +163,7 @@ jobs:
container:
image: amd64/rust
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Setup Rust toolchain
uses: ./.github/actions/setup-builder
- name: Setup Clippy
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/arrow_flight.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
container:
image: amd64/rust
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
submodules: true
- name: Setup Rust toolchain
Expand All @@ -60,15 +60,15 @@ jobs:
cargo test -p arrow-flight --all-features
- name: Test --examples
run: |
cargo test -p arrow-flight --features=flight-sql,tls --examples
cargo test -p arrow-flight --features=flight-sql,tls-ring --examples

vendor:
name: Verify Vendored Code
runs-on: ubuntu-latest
container:
image: amd64/rust
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Setup Rust toolchain
uses: ./.github/actions/setup-builder
- name: Run gen
Expand All @@ -82,7 +82,7 @@ jobs:
container:
image: amd64/rust
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Setup Rust toolchain
uses: ./.github/actions/setup-builder
- name: Setup Clippy
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/audit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
name: Audit
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Install cargo-audit
run: cargo install cargo-audit
- name: Run audit check
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,9 @@ jobs:
name: Release Audit Tool (RAT)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Setup Python
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: 3.8
- name: Audit licenses
Expand All @@ -50,8 +50,8 @@ jobs:
name: Markdown format
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: "14"
- name: Prettier check
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/dev_pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,14 +37,14 @@ jobs:
contents: read
pull-requests: write
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Assign GitHub labels
if: |
github.event_name == 'pull_request_target' &&
(github.event.action == 'opened' ||
github.event.action == 'synchronize')
uses: actions/labeler@v5.0.0
uses: actions/labeler@v6.0.1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
configuration-path: .github/workflows/dev_pr/labeler.yml
Expand Down
13 changes: 12 additions & 1 deletion .github/workflows/dev_pr/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,11 @@ arrow:
- 'arrow-string/**/*'
- 'arrow/**/*'

arrow-avro:
- changed-files:
- any-glob-to-any-file:
- 'arrow-avro/**/*'

arrow-flight:
- changed-files:
- any-glob-to-any-file:
Expand All @@ -46,7 +51,13 @@ parquet:
- changed-files:
- any-glob-to-any-file:
- 'parquet/**/*'
- 'parquet-variant/**/*'

parquet-variant:
- changed-files:
- any-glob-to-any-file:
- 'parquet-variant/**/*'
- 'parquet-variant-compute/**/*'
- 'parquet-variant-json/**/*'

parquet-derive:
- changed-files:
Expand Down
24 changes: 8 additions & 16 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,28 +34,20 @@ jobs:
docs:
name: Rustdocs are clean
runs-on: ubuntu-latest
strategy:
matrix:
arch: [ amd64 ]
rust: [ nightly ]
container:
image: ${{ matrix.arch }}/rust
image: amd64/rust
env:
RUSTDOCFLAGS: "-Dwarnings --enable-index-page -Zunstable-options"
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
submodules: true
- name: Install python dev
run: |
apt update
apt install -y libpython3.11-dev
- name: Setup Rust toolchain
uses: ./.github/actions/setup-builder
with:
rust-version: ${{ matrix.rust }}
- name: Install Nightly Rust
run: rustup install nightly
- name: Run cargo doc
run: cargo doc --document-private-items --no-deps --workspace --all-features
run: cargo +nightly doc --document-private-items --no-deps --workspace --all-features
- name: Fix file permissions
shell: sh
run: |
Expand All @@ -64,7 +56,7 @@ jobs:
echo "::warning title=Invalid file permissions automatically fixed::$line"
done
- name: Upload artifacts
uses: actions/upload-pages-artifact@v3
uses: actions/upload-pages-artifact@v4
with:
name: crate-docs
path: target/doc
Expand All @@ -77,9 +69,9 @@ jobs:
contents: write
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Download crate docs
uses: actions/download-artifact@v4
uses: actions/download-artifact@v7
with:
name: crate-docs
path: website/build
Expand Down
Loading
Loading