This is an automated email from the ASF dual-hosted git repository.

zeroshade pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow-site.git


The following commit(s) were added to refs/heads/main by this push:
     new ff9d04e7853 Release note arrow go 18.7.0 (#794)
ff9d04e7853 is described below

commit ff9d04e7853c9cc05b423cb30c50bb51e81a4fe9
Author: Matt Topol <[email protected]>
AuthorDate: Tue Jul 21 17:14:28 2026 -0400

    Release note arrow go 18.7.0 (#794)
---
 _posts/2026-07-21-arrow-go-18.7.0.md | 215 +++++++++++++++++++++++++++++++++++
 1 file changed, 215 insertions(+)

diff --git a/_posts/2026-07-21-arrow-go-18.7.0.md 
b/_posts/2026-07-21-arrow-go-18.7.0.md
new file mode 100644
index 00000000000..97e4f59529a
--- /dev/null
+++ b/_posts/2026-07-21-arrow-go-18.7.0.md
@@ -0,0 +1,215 @@
+---
+layout: post
+title: "Apache Arrow Go 18.7.0 Release"
+date: "2026-07-21 00:00:00"
+author: pmc
+categories: [release]
+---
+<!--
+{% comment %}
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to you under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+{% endcomment %}
+-->
+
+The Apache Arrow team is pleased to announce the v18.7.0 release of Apache 
Arrow Go. 
+This minor release covers 101 commits from 23 distinct contributors.
+
+## Contributors
+```console
+$ git shortlog -sn v18.6.0..v18.7.0
+    52 Minh Vu
+    21 Matt Topol
+     3 Fredrik Fornwall
+     3 Sai Asish Y
+     2 Jared Yu (余启正)
+     2 Neelesh Salian
+     2 Ondřej Pavela
+     2 abir
+     1 Alex Dubov
+     1 Bryce Mecum
+     1 David Li
+     1 David Zhao
+     1 Dima Kuznetsov
+     1 Lucas Valente
+     1 Mahdi Dibaiee
+     1 Matan Rosenberg
+     1 Patzifist
+     1 Ruihao Chen
+     1 Samuel Arnold
+     1 Tobias Pütz
+     1 Truffle
+     1 Varun Venkatesh
+     1 daniel-adam-tfs
+```
+
+## Highlights
+
+### Arrow
+
+#### Features
+
+- Support casts between binary/utf8 and binary_view/utf8_view 
[#802](https://github.com/apache/arrow-go/pull/802)
+- Added a Resize method to RecordBuilder 
[#805](https://github.com/apache/arrow-go/pull/805)
+- Support dictionary arrays for Filter and Take 
[#716](https://github.com/apache/arrow-go/pull/716)
+- Add an UnshredVariant method for collapsing a shredded variant array 
[#859](https://github.com/apache/arrow-go/pull/859)
+- Add implementation of `TimestampWithOffset` canonical extension type 
[#558](https://github.com/apache/arrow-go/pull/558)
+
+#### Bug Fixes
+
+- Made C Data interface stream memory release deterministic 
[#793](https://github.com/apache/arrow-go/pull/793)
+- Preserve large integer precision in JSON decoding 
[#816](https://github.com/apache/arrow-go/pull/816)
+
+### Parquet
+
+#### Features
+
+- Support writing LARGE_LIST arrays 
[#838](https://github.com/apache/arrow-go/pull/838)
+- Opt-in streaming reads for large data pages 
[#880](https://github.com/apache/arrow-go/pull/880)
+
+#### Bug Fixes
+
+- Corrected a couple variant bugs 
[#841](https://github.com/apache/arrow-go/pull/841), 
[#840](https://github.com/apache/arrow-go/pull/840), 
[#939](https://github.com/apache/arrow-go/pull/939)
+- Properly align DataPageV2 pages to row boundaries in spaced writes 
[#883](https://github.com/apache/arrow-go/pull/883)
+
+#### Performance Improvements
+
+- Added SIMD-accelerated byte-stream-split decoding 
[#654](https://github.com/apache/arrow-go/pull/654)
+- Avoid constructing ColunChunkMetaData in page index range determination 
[#831](https://github.com/apache/arrow-go/pull/831)
+- Improve BloomFilter memory recycling and pooling 
[#864](https://github.com/apache/arrow-go/pull/864)
+
+## Changelog
+
+### What's Changed
+* fix(release): keys download by @zeroshade in 
[#781](https://github.com/apache/arrow-go/pull/781)
+* parquet/compress: enable WithAllLitEntropyCompression(true) for zstd by 
@varun0630 in [#779](https://github.com/apache/arrow-go/pull/779)
+* release: fix syntax error in verify_rc.sh by @amoeba in 
[#782](https://github.com/apache/arrow-go/pull/782)
+* fix(parquet): align dictionary fallback with parquet-mr by @twuebi in 
[#786](https://github.com/apache/arrow-go/pull/786)
+* fix(arrow/cdata): make nativeCRecordBatchReader deterministic by @zeroshade 
in [#793](https://github.com/apache/arrow-go/pull/793)
+* fix(compute/kernels): map FSB byte-width to numeric memo type for is_in by 
@SAY-5 in [#797](https://github.com/apache/arrow-go/pull/797)
+* fix(arrow/flight): deliver response headers eagerly in streaming client 
middleware by @zeroshade in [#801](https://github.com/apache/arrow-go/pull/801)
+* fix(ipc): preserve map child field metadata by @dimakuz in 
[#809](https://github.com/apache/arrow-go/pull/809)
+* fix(avro): error on complex (non-nullable) unions instead of silently 
dropping (#777) by @SAY-5 in [#808](https://github.com/apache/arrow-go/pull/808)
+* fix(parquet/metadata): do not pre-set hasDistinctCount in stat factories by 
@SAY-5 in [#807](https://github.com/apache/arrow-go/pull/807)
+* feat(compute): support casts between binary/string and 
binary_view/string_view by @zeroshade in 
[#802](https://github.com/apache/arrow-go/pull/802)
+* fix(arrow/array): preserve large integer precision in JSON decoding by 
@zeroshade in [#816](https://github.com/apache/arrow-go/pull/816)
+* feat(arrow/array): add Resize method to RecordBuilder by @oakad in 
[#805](https://github.com/apache/arrow-go/pull/805)
+* perf(parquet/pqarrow): cap RecordReader batch size to actual row count by 
@paveon in [#817](https://github.com/apache/arrow-go/pull/817)
+* docs(parquet): correct DefaultDataPageSize comment from 1K to 1M by 
@zeroshade in [#822](https://github.com/apache/arrow-go/pull/822)
+* fix(arrow/array): silence copylocks warning in numeric_generic.go by 
@zeroshade in [#823](https://github.com/apache/arrow-go/pull/823)
+* feat(arrow/compute/exprs): support expr.IntervalYearToMonthLiteral in 
literalToDatum by @zeroshade in 
[#825](https://github.com/apache/arrow-go/pull/825)
+* fix(parquet): return error instead of panicking on first-write failure by 
@zeroshade in [#824](https://github.com/apache/arrow-go/pull/824)
+* [Parquet] Add SIMD-accelerated byte-stream-split decoding by 
@daniel-adam-tfs in [#654](https://github.com/apache/arrow-go/pull/654)
+* perf(parquet/metadata): avoid constructing ColumnChunkMetaData in page index 
range determination by @paveon in 
[#831](https://github.com/apache/arrow-go/pull/831)
+* feat: filter and take for dictionary arrays by @lesam in 
[#716](https://github.com/apache/arrow-go/pull/716)
+* fix(arrow/array): adding string boundary checking for (*String).Value by 
@happydave1 in [#844](https://github.com/apache/arrow-go/pull/844)
+* fix(parquet/variant): correct binary search bounds in ObjectValue.ValueByKey 
by @qzyu999 in [#841](https://github.com/apache/arrow-go/pull/841)
+* fix(parquet/variant): correct is_large bit position in valueSize for arrays 
by @qzyu999 in [#840](https://github.com/apache/arrow-go/pull/840)
+* feat(avro): support local-timestamp logical types by @abir-eon in 
[#832](https://github.com/apache/arrow-go/pull/832)
+* fix(avro): append raw bytes by @matan129 in 
[#850](https://github.com/apache/arrow-go/pull/850)
+* fix(arrow/array): use scale-aware ValueStr in decimal array String() by 
@zeroshade in [#849](https://github.com/apache/arrow-go/pull/849)
+* feat(parquet/pqarrow): support writing LARGE_LIST types by @lidavidm in 
[#838](https://github.com/apache/arrow-go/pull/838)
+* fix(arrow/scalar): implement Release()/Retain() on *scalar.Extension by 
@zeroshade in [#851](https://github.com/apache/arrow-go/pull/851)
+* docs(arrow/ipc): document that Writer and FileWriter are not concurrency 
safe by @zeroshade in [#856](https://github.com/apache/arrow-go/pull/856)
+* fix(parquet): add WriteBatchSpacedWithError to surface spaced-write failures 
by @zeroshade in [#852](https://github.com/apache/arrow-go/pull/852)
+* ci: pin Go to go.mod in RC verify so the matching toolchain is used by 
@zeroshade in [#857](https://github.com/apache/arrow-go/pull/857)
+* feat(arrow/extensions): add UnshredVariant to collapse a shredded variant 
array by @nssalian in [#859](https://github.com/apache/arrow-go/pull/859)
+* fix(arrow/compute): accept type max value in safe decimal-to-int cast by 
@zeroshade in [#862](https://github.com/apache/arrow-go/pull/862)
+* fix(array): validate negative bounds in NewSliceData by @fallintoplace in 
[#870](https://github.com/apache/arrow-go/pull/870)
+* fix(array): dictionary null index zeroing by @fallintoplace in 
[#871](https://github.com/apache/arrow-go/pull/871)
+* fix(array): struct stringer required child mask by @fallintoplace in 
[#873](https://github.com/apache/arrow-go/pull/873)
+* fix(array): empty chunked approximate equality by @fallintoplace in 
[#874](https://github.com/apache/arrow-go/pull/874)
+* fix(array): validate dense union offset lengths by @fallintoplace in 
[#875](https://github.com/apache/arrow-go/pull/875)
+* Use semantic type equality in AddColumn by @fallintoplace in 
[#878](https://github.com/apache/arrow-go/pull/878)
+* fix(array): clear dictionary data on reset by @fallintoplace in 
[#876](https://github.com/apache/arrow-go/pull/876)
+* Reject negative chunked slice bounds by @fallintoplace in 
[#879](https://github.com/apache/arrow-go/pull/879)
+* fix(array): array data hashing coverage by @fallintoplace in 
[#872](https://github.com/apache/arrow-go/pull/872)
+* Support dense union slice offsets by @fallintoplace in 
[#877](https://github.com/apache/arrow-go/pull/877)
+* Support sparse union sliced type ids by @fallintoplace in 
[#881](https://github.com/apache/arrow-go/pull/881)
+* fix(build): correct phony target declaration by @fallintoplace in 
[#890](https://github.com/apache/arrow-go/pull/890)
+* fix(parquet/compress): Gzip CompressBound by @fallintoplace in 
[#886](https://github.com/apache/arrow-go/pull/886)
+* fix(parquet): free excluded stats bytes in ApplyStatSizeLimits by @mdibaiee 
in [#885](https://github.com/apache/arrow-go/pull/885)
+* fix(tmpl): preserve escaped JSON string bytes by @fallintoplace in 
[#889](https://github.com/apache/arrow-go/pull/889)
+* fix(parquet/compress): Brotli CompressBound by @fallintoplace in 
[#884](https://github.com/apache/arrow-go/pull/884)
+* fix(parquet): align DataPageV2 pages to row boundaries in spaced writes by 
@truffle-dev in [#883](https://github.com/apache/arrow-go/pull/883)
+* fix(array): guard BinaryViewBuilder size checks by @fallintoplace in 
[#888](https://github.com/apache/arrow-go/pull/888)
+* fix: clarify StringViewBuilder UnmarshalJSON error message by @fallintoplace 
in [#894](https://github.com/apache/arrow-go/pull/894)
+* fix: clarify StringViewBuilder.UnmarshalOne expected type by @fallintoplace 
in [#897](https://github.com/apache/arrow-go/pull/897)
+* fix: guard multiBufferBuilder UnsafeAppend against short copy by 
@fallintoplace in [#896](https://github.com/apache/arrow-go/pull/896)
+* fix(array): make SetNull idempotent and track null count by @fallintoplace 
in [#905](https://github.com/apache/arrow-go/pull/905)
+* fix(ci): accept --json and pin gobenchdata by @fallintoplace in 
[#906](https://github.com/apache/arrow-go/pull/906)
+* build: verify Apache RAT jar checksum before execution by @fallintoplace in 
[#908](https://github.com/apache/arrow-go/pull/908)
+* fix(parquet): read full bloom filter buffers by @fallintoplace in 
[#892](https://github.com/apache/arrow-go/pull/892)
+* fix(docs): fix CPU markdown link in README by @fallintoplace in 
[#907](https://github.com/apache/arrow-go/pull/907)
+* fix(parquet): validate DataPageV2 decoded length by @fallintoplace in 
[#911](https://github.com/apache/arrow-go/pull/911)
+* fix(arreflect): validate primitive conversion assignment overflow checks by 
@fallintoplace in [#903](https://github.com/apache/arrow-go/pull/903)
+* fix(parquet): clamp repLevels in byte-array DataPageV2 row-boundary 
alignment by @zeroshade in [#919](https://github.com/apache/arrow-go/pull/919)
+* fix(parquet/metadata): fix BloomFilter memory recycling, doc contract, and 
benchmark by @Patzifist in [#864](https://github.com/apache/arrow-go/pull/864)
+* fix(flight/flightsql): recover real error when prepared DoPut stream closes 
early by @fornwall in [#920](https://github.com/apache/arrow-go/pull/920)
+* fix: guard protobuf oneof/union reflection on nil oneof values by 
@fallintoplace in [#910](https://github.com/apache/arrow-go/pull/910)
+* fix(parquet): copy ByteArray statistics min/max to prevent use-after-free by 
@zeroshade in [#917](https://github.com/apache/arrow-go/pull/917)
+* fix(array): bounds check FixedSizeBinary.Value by @fallintoplace in 
[#923](https://github.com/apache/arrow-go/pull/923)
+* fix(array): reject unsupported type IDs by @fallintoplace in 
[#925](https://github.com/apache/arrow-go/pull/925)
+* fix(array): validate JSON start offsets by @fallintoplace in 
[#929](https://github.com/apache/arrow-go/pull/929)
+* fix(scalar): validate dictionary indices before conversion by @fallintoplace 
in [#927](https://github.com/apache/arrow-go/pull/927)
+* fix(array): retain dictionary before replacement by @fallintoplace in 
[#926](https://github.com/apache/arrow-go/pull/926)
+* feat(parquet): opt-in streaming reads for large data pages by @joechenrh in 
[#880](https://github.com/apache/arrow-go/pull/880)
+* fix(parquet): propagate row-group and page-index write errors by 
@fallintoplace in [#921](https://github.com/apache/arrow-go/pull/921)
+* fix(array): honor struct offsets in constructors and validity masks by 
@fallintoplace in [#922](https://github.com/apache/arrow-go/pull/922)
+* fix(parquet): make column reader cleanup idempotent by @fallintoplace in 
[#924](https://github.com/apache/arrow-go/pull/924)
+* fix(scalar): hash list values logically by @fallintoplace in 
[#928](https://github.com/apache/arrow-go/pull/928)
+* fix(array): recursively validate nested arrays by @fallintoplace in 
[#930](https://github.com/apache/arrow-go/pull/930)
+* feat(parquet/variant): add Metadata.SizeBytes to split a concatenated 
variant by @nssalian in [#939](https://github.com/apache/arrow-go/pull/939)
+* fix(cdata): validate imported array sizes by @fallintoplace in 
[#931](https://github.com/apache/arrow-go/pull/931)
+* fix(avro): decode nullable logical timestamps by @abir-eon in 
[#935](https://github.com/apache/arrow-go/pull/935)
+* fix(flight/flightsql/example): support dictionary-encoded parameter columns 
by @fornwall in [#936](https://github.com/apache/arrow-go/pull/936)
+* fix(arrow/scalar): reject negative indices in GetScalar by @fornwall in 
[#940](https://github.com/apache/arrow-go/pull/940)
+* fix(flight): reject malformed unary bearer headers by @fallintoplace in 
[#941](https://github.com/apache/arrow-go/pull/941)
+* fix(flight): reject Basic credentials without a separator by @fallintoplace 
in [#942](https://github.com/apache/arrow-go/pull/942)
+* fix(memory): keep allocator ownership across Buffer.Reset by @fallintoplace 
in [#947](https://github.com/apache/arrow-go/pull/947)
+* fix(parquet): limit page allocations by @fallintoplace in 
[#953](https://github.com/apache/arrow-go/pull/953)
+* fix(parquet): return decompression errors by @fallintoplace in 
[#954](https://github.com/apache/arrow-go/pull/954)
+* fix(parquet): return errors for malformed encrypted payloads by 
@fallintoplace in [#945](https://github.com/apache/arrow-go/pull/945)
+* fix: repair failing benchmarks and stop bench.sh masking failures by 
@zeroshade in [#938](https://github.com/apache/arrow-go/pull/938)
+* fix(parquet): handle short input in GetBatchBools by @fallintoplace in 
[#946](https://github.com/apache/arrow-go/pull/946)
+* fix(arrow): validate timestamp timezones by @fallintoplace in 
[#952](https://github.com/apache/arrow-go/pull/952)
+* fix(ipc): validate message framing bounds by @fallintoplace in 
[#955](https://github.com/apache/arrow-go/pull/955)
+* fix(parquet): reject truncated bit-packed batches by @fallintoplace in 
[#943](https://github.com/apache/arrow-go/pull/943)
+* fix(compute): handle comparison output offsets by @fallintoplace in 
[#956](https://github.com/apache/arrow-go/pull/956)
+* fix(arrow/array): avoid allocating for ReserveData(0) by @fallintoplace in 
[#895](https://github.com/apache/arrow-go/pull/895)
+* fix(compute): release temporary arrays in binary view casts by 
@fallintoplace in [#898](https://github.com/apache/arrow-go/pull/898)
+* fix(arrow/array): validate map builder entry lengths by @fallintoplace in 
[#957](https://github.com/apache/arrow-go/pull/957)
+* Add `TimestampWithOffset` canonical extension type by @serramatutu in 
[#558](https://github.com/apache/arrow-go/pull/558)
+* chore: bump version number by @zeroshade in 
[#959](https://github.com/apache/arrow-go/pull/959)
+
+### New Contributors
+* @varun0630 made their first contribution in 
[#779](https://github.com/apache/arrow-go/pull/779)
+* @twuebi made their first contribution in 
[#786](https://github.com/apache/arrow-go/pull/786)
+* @SAY-5 made their first contribution in 
[#797](https://github.com/apache/arrow-go/pull/797)
+* @oakad made their first contribution in 
[#805](https://github.com/apache/arrow-go/pull/805)
+* @paveon made their first contribution in 
[#817](https://github.com/apache/arrow-go/pull/817)
+* @lesam made their first contribution in 
[#716](https://github.com/apache/arrow-go/pull/716)
+* @happydave1 made their first contribution in 
[#844](https://github.com/apache/arrow-go/pull/844)
+* @qzyu999 made their first contribution in 
[#841](https://github.com/apache/arrow-go/pull/841)
+* @abir-eon made their first contribution in 
[#832](https://github.com/apache/arrow-go/pull/832)
+* @matan129 made their first contribution in 
[#850](https://github.com/apache/arrow-go/pull/850)
+* @nssalian made their first contribution in 
[#859](https://github.com/apache/arrow-go/pull/859)
+* @fallintoplace made their first contribution in 
[#870](https://github.com/apache/arrow-go/pull/870)
+* @mdibaiee made their first contribution in 
[#885](https://github.com/apache/arrow-go/pull/885)
+* @truffle-dev made their first contribution in 
[#883](https://github.com/apache/arrow-go/pull/883)
+* @Patzifist made their first contribution in 
[#864](https://github.com/apache/arrow-go/pull/864)
+* @fornwall made their first contribution in 
[#920](https://github.com/apache/arrow-go/pull/920)
+
+**Full Changelog**: 
https://github.com/apache/arrow-go/compare/v18.6.0...v18.7.0

Reply via email to