Apache Arrow Go 18.4.1 Release
Published
04 Sep 2025
By
The Apache Arrow PMC (pmc)
The Apache Arrow team is pleased to announce the v18.4.1 release of Apache Arrow Go. This patch release covers 15 commits from 7 distinct contributors.
Contributors
$ git shortlog -sn v18.4.0..v18.4.1
7 Matt Topol
4 Mandukhai Alimaa
1 Chromo-residuum-opec
1 Ryan Schneider
1 Travis Patterson
1 daniel-adam-tfs
1 secfree
Highlights
- The
Record
interface type has been renamed toRecordBatch
to align with other Arrow implementations and to avoid confusion. The oldRecord
type is aliased to the newRecordBatch
type so existing code works but users may wish to update references now. This work was contributed by a first-time contributor, @Mandukhai-Alimaa. See #466, #473, #478, and #486.
Important Note
- A side effect of the above was an unintentional breaking change by introducing a new
method to the
RecordReader
interface. This shouldn't affect the majority of consumers, but is a breaking change for any who implemented their own concreteRecordReader
type. The solution is simply to add aRecordBatch()
method to the type when upgrading to v18.4.1
Changelog
What's Changed
- fix(arrow/compute/exprs): Handle large types in expr handling by @zeroshade in https://github.com/apache/arrow-go/pull/440
- fix(arrow/compute/exprs): fix literalToDatum for precision types by @zeroshade in https://github.com/apache/arrow-go/pull/447
- fix(arrow/array): Fix RecordFromJSON perf by @zeroshade in https://github.com/apache/arrow-go/pull/449
- fix(arrow/array): update timestamp json format by @zeroshade in https://github.com/apache/arrow-go/pull/450
- refactor: switch golang.org/x/exp to standard library packages by @ufUNnxagpM in https://github.com/apache/arrow-go/pull/453
- fix(parquet/pqarrow): supress io.EOF in RecordReader.Err() by @ryanschneider in https://github.com/apache/arrow-go/pull/452
- fix(array): add nil checks in Data.Release() for childData by @secfree in https://github.com/apache/arrow-go/pull/456
- fix(arrow/compute): Fix scalar comparison batches by @zeroshade in https://github.com/apache/arrow-go/pull/465
- refactor(arrow): rename Record to RecordBatch and add deprecated alias by @Mandukhai-Alimaa in https://github.com/apache/arrow-go/pull/466
- refactor(arrow): migrate leaf packages to use RecordBatch by @Mandukhai-Alimaa in https://github.com/apache/arrow-go/pull/473
- refactor(arrow): third increment of the Record -> RecordBatch migration by @Mandukhai-Alimaa in https://github.com/apache/arrow-go/pull/478
- ci(parquet/pqarrow): integration tests for reading shredded variants by @zeroshade in https://github.com/apache/arrow-go/pull/455
- Implement RLE dictionary decoder using generics by @daniel-adam-tfs in https://github.com/apache/arrow-go/pull/477
- fix(parquet/internal/encoding): Fix typed dictionary encoding by @MasslessParticle in https://github.com/apache/arrow-go/pull/479
- refactor(arrow): fourth increment of the Record -> RecordBatch migration by @Mandukhai-Alimaa in https://github.com/apache/arrow-go/pull/486
- chore: bump version number by @zeroshade in https://github.com/apache/arrow-go/pull/487
New Contributors
- @ufUNnxagpM made their first contribution in https://github.com/apache/arrow-go/pull/453
- @ryanschneider made their first contribution in https://github.com/apache/arrow-go/pull/452
- @secfree made their first contribution in https://github.com/apache/arrow-go/pull/456
- @Mandukhai-Alimaa made their first contribution in https://github.com/apache/arrow-go/pull/466
- @daniel-adam-tfs made their first contribution in https://github.com/apache/arrow-go/pull/477
Full Changelog: https://github.com/apache/arrow-go/compare/v18.4.0...v18.4.1