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

raulcd 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 fe31febddf1 Website: Add blog post for 23.0.0 (#747)
fe31febddf1 is described below

commit fe31febddf1c9270adc0ec86d3979830cba2717a
Author: Raúl Cumplido <[email protected]>
AuthorDate: Tue Jan 27 10:35:28 2026 +0100

    Website: Add blog post for 23.0.0 (#747)
    
    Release blog post for 23.0.0.
    
    Issues on the milestone are here:
    https://github.com/apache/arrow/milestone/71?closed=1
    
    ---------
    
    Co-authored-by: Sutou Kouhei <[email protected]>
    Co-authored-by: David Li <[email protected]>
    Co-authored-by: Alenka Frim <[email protected]>
---
 _posts/2026-01-18-23.0.0-release.md | 252 ++++++++++++++++++++++++++++++++++++
 1 file changed, 252 insertions(+)

diff --git a/_posts/2026-01-18-23.0.0-release.md 
b/_posts/2026-01-18-23.0.0-release.md
new file mode 100644
index 00000000000..172f60a9be2
--- /dev/null
+++ b/_posts/2026-01-18-23.0.0-release.md
@@ -0,0 +1,252 @@
+---
+layout: post
+title: "Apache Arrow 23.0.0 Release"
+date: "2026-01-18 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 23.0.0 release. This release
+covers over 3 months of development work and includes [**336 resolved
+issues**][1] on [**417 distinct commits**][2] from [**71 distinct
+contributors**][2]. See the [Install Page](https://arrow.apache.org/install/) 
to
+learn how to get the libraries for your platform.
+
+The release notes below are not exhaustive and only expose selected highlights
+of the release. Many other bugfixes and improvements have been made: we refer
+you to the [complete changelog][3].
+
+## Community
+
+As per our newly started tradition of rotating the PMC chair once a year
+Antoine Pitrou was elected as the new PMC chair and VP, succeeding
+Neal Richardson.
+
+Thanks for your contributions and participation in the project!
+
+## Arrow Flight RPC Notes
+
+An ODBC driver for Apache Arrow Flight SQL has been completed.  Currently it 
is not packaged for release, but [can be built from 
source](https://github.com/apache/arrow/blob/apache-arrow-23.0.0/cpp/src/arrow/flight/sql/odbc/README.md).
+
+## C++ Notes
+
+The C++ standard has been updated to C++ 20 
[GH-45885](https://github.com/apache/arrow/issues/45885) and the minimum GCC to 
8.
+
+Some improvements to leverage C++ 20 
[GH-48592](https://github.com/apache/arrow/issues/48592),
+
+### Compute
+
+* Graceful error handling for decimal binary arithmetic and comparison instead 
of firing confusing assertions. 
[GH-35957](https://github.com/apache/arrow/issues/35957)
+* Fixed an issue where the MinMax kernel was emitting -inf/inf for all-NaN 
input. [GH-46063](https://github.com/apache/arrow/issues/46063)
+* Avoid ZeroCopyCastExec when casting between Binary offset types to avoid 
high overheads. [GH-43660](https://github.com/apache/arrow/issues/43660)
+* Enhanced type checking for hash join residual filter in Acero. 
[GH-48268](https://github.com/apache/arrow/issues/48268)
+
+### Format
+
+* Clarified that empty compressed buffers can omit the length header. 
[GH-47918](https://github.com/apache/arrow/issues/47918)
+
+### Parquet
+
+* A new setting to limit the number of rows written per page has been added. 
[GH-47030](https://github.com/apache/arrow/issues/47030)
+* A arrow::Result version of parquet::arrow::FileReader::Make() has been 
added. [GH-44810](https://github.com/apache/arrow/issues/44810)
+* Support for reading INT-encoded Decimal statistics as Arrow scalars. 
[GH-47955](https://github.com/apache/arrow/issues/47955)
+
+Several bug fixes including:
+- Fixed invalid Parquet files written when dictionary encoded pages are large. 
[GH-47973](https://github.com/apache/arrow/issues/47973)
+- Fixed pre-1970 INT96 timestamps roundtrip. 
[GH-48246](https://github.com/apache/arrow/issues/48246)
+- Fixed potential crash when reading invalid Parquet data. 
[GH-48308](https://github.com/apache/arrow/issues/48308)
+- Added compatibility with non-compliant RLE streams. 
[GH-47981](https://github.com/apache/arrow/issues/47981)
+- Fixed Util & Level Conversion logic on big-endian systems. 
[GH-48218](https://github.com/apache/arrow/issues/48218)
+
+#### Encryption
+
+* Simplified nested field encryption configuration. 
[GH-41246](https://github.com/apache/arrow/issues/41246)
+* Improved column encryption API. 
[GH-48337](https://github.com/apache/arrow/issues/48337)
+* Better fuzzing support for encrypted files. 
[GH-48335](https://github.com/apache/arrow/issues/48335)
+
+### Miscellaneous C++ changes
+
+* Added support for CUDA 13 
[GH-47677](https://github.com/apache/arrow/issues/47677)
+* Drop support for gold linker 
[GH-45484](https://github.com/apache/arrow/issues/45484)
+* Leverage CMake 3.25 upgrade by reducing complexity and maintenance burden on 
our third party dependency management 
[GH-48317](https://github.com/apache/arrow/issues/48317),
+[GH-48316](https://github.com/apache/arrow/issues/48316), 
[GH-48315](https://github.com/apache/arrow/issues/48315), 
[GH-48248](https://github.com/apache/arrow/issues/48248),
+[GH-48181](https://github.com/apache/arrow/issues/48181), 
[GH-48178](https://github.com/apache/arrow/issues/48178), 
[GH-48091](https://github.com/apache/arrow/issues/48091),
+[GH-48074](https://github.com/apache/arrow/issues/48074)
+
+## Linux Packaging Notes
+
+Fixed a bug that the `parquet-devel` RPM package depends on
+`parquet-glib-devel`.
+
+See also: [GH-48044](https://github.com/apache/arrow/issues/48044)
+
+CentOS 7 support has been dropped.
+
+See also: [GH-40735](https://github.com/apache/arrow/issues/40735)
+
+## MATLAB Notes
+
+Added support for building against MATLAB R2025b 
[GH-48154](https://github.com/apache/arrow/issues/48154).
+
+## Python Notes
+
+### Compatibility notes
+
+* Deprecated ``Array.format`` is removed 
[GH-48102](https://github.com/apache/arrow/issues/48102).
+* Experimental tag has been removed for Arrow PyCapsule Interface
+[GH-47975](https://github.com/apache/arrow/issues/47975).
+* ``PyWeakref_GetRef`` has replaced the use of ``PyWeakref_GET_OBJECT`` to 
support Python 3.15
+[GH-47823](https://github.com/apache/arrow/issues/47823).
+
+### New features
+
+* Bindings for ``scatter`` and ``inverse_permutation``are added
+[GH-48167](https://github.com/apache/arrow/issues/48167).
+* ``max_rows_per_page`` argument is now exposed in ``parquet.WriterProperties``
+[GH-48096](https://github.com/apache/arrow/issues/48096).
+* External key material and rotation is enabled for individual Parquet files
+[GH-31869](https://github.com/apache/arrow/issues/31869).
+
+### Other improvements
+
+* Nested field encryption configuration has been simplified 
[GH-41246](https://github.com/apache/arrow/issues/41246).
+* Reading INT-encoded ``Decimal`` statistics with ``StatisticsAsScalars`` is 
now supported
+[GH-47955](https://github.com/apache/arrow/issues/47955).
+* Unsigned dictionary indices are now supported in pandas conversion
+[GH-47022](https://github.com/apache/arrow/issues/47022).
+* Added code examples for compute functions ``min``, ``max`` and ``min_max``
+[GH-48668](https://github.com/apache/arrow/issues/48668).
+* Add temporal unit checking in NumPyDtypeUnifier 
[GH-48625](https://github.com/apache/arrow/issues/48625)
+* Error message is improved when mixing ``numpy.datetime64`` values with 
different units
+(e.g., datetime64[s] and datetime64[ms]) in a single array
+[GH-48463](https://github.com/apache/arrow/issues/48463).
+* The source argument is now checked in ``pyarrow.parquet.read_table``
+[GH-47728](https://github.com/apache/arrow/issues/47728).
+
+### Relevant bug fixes
+
+* ``ipc.Message __repr__`` has been corrected to use f-string 
[GH-48608](https://github.com/apache/arrow/issues/48608).
+* Failures when reading parquet files written with non-compliant RLE encoders 
have been fixed
+ in C++ with adding compatibility 
[GH-47981](https://github.com/apache/arrow/issues/47981).
+* Memory usage is now reduced when using ``to_pandas()`` with many extension 
arrays columns
+[GH-47861](https://github.com/apache/arrow/issues/47861).
+* Missing required argument error in ``FSSpecHandler`` 
``delete_root_dir_contents`` has been
+fixed [GH-47559](https://github.com/apache/arrow/issues/47559).
+* Invalid ``RecordBatch.from_struct_array`` batch for sliced arrays with 
offset zero has been fixed
+in the C++ [GH-44318](https://github.com/apache/arrow/issues/44318).
+
+## R Notes
+
+### Compatibility notes
+
+* GCS have been turned off by default 
[GH-48342](https://github.com/apache/arrow/issues/48342).
+* OpenSSL 1.x builds have been removed 
[GH-45449](https://github.com/apache/arrow/issues/45449)
+
+### Relevant bug fixes
+
+* Fixed a segfault that could be raised when concatenatig tables 
[GH-47000](https://github.com/apache/arrow/issues/47000).
+
+Several Continuous integration fixes and minor bugs have also been added to 
the release for a full list check the release notes.
+
+## Ruby and C GLib Notes
+
+All missing compute function options have been added. So we can use
+all compute functions from Ruby and C GLib. This is done by Sten
+Larsson.
+
+Fixed size list array support has been added.
+
+See also: [GH-48362](https://github.com/apache/arrow/issues/48362)
+
+Changing thread pool configuration support in Acero has been
+added. This is done by Sten Larsson.
+
+Duration support has been added.
+
+CSV writer support has been added.
+
+See also: [GH-48680](https://github.com/apache/arrow/issues/48680)
+
+### Ruby
+
+Experimental Pure Ruby Apache Arrow reader implementation has been
+added as `red-arrow-format` gem.
+
+See also: [GH-48132](https://github.com/apache/arrow/issues/48132)
+
+We'll add experimental writer implementation in the next release.
+
+`Arrow::Column#to_arrow{,_array,_chunked_array}` have been added. They
+are for convenient.
+
+See also: [GH-48292](https://github.com/apache/arrow/issues/48292)
+
+Auto Apache Arrow type detection in `Arrow::Array.new` has been
+improved for nested integer list case.
+
+See also:
+* [GH-48478](https://github.com/apache/arrow/issues/48478)
+* [GH-48481](https://github.com/apache/arrow/issues/48481)
+
+`Arrow::FixedSizeListArray.new(data_type, values)` support has been
+added.
+
+See also: [GH-48610](https://github.com/apache/arrow/issues/48610)
+
+### C GLib
+
+We use `Arrow-${MAJOR}.${MINOR}.{gir,typelib}` not
+`Arrow-1.0.{gir,typelib}` for `.gir` and `.typelib` file names. It's
+for co-existent multiple C GLib versions in the same system.
+
+See also: [GH-48616](https://github.com/apache/arrow/issues/48616)
+
+## Java, JavaScript, Go, .NET, Swift and Rust Notes
+
+The Java, JavaScript, Go, .NET, Swift and Rust projects have moved to separate
+repositories outside the main Arrow 
[monorepo](https://github.com/apache/arrow).
+
+- For notes on the latest release of the [Java
+implementation](https://github.com/apache/arrow-java), see the latest [Arrow
+Java changelog][7].
+- For notes on the latest release of the [JavaScript
+implementation](https://github.com/apache/arrow-js), see the latest [Arrow
+JavaScript changelog][8].
+- For notes on the latest release of the [Rust
+  implementation](https://github.com/apache/arrow-rs) see the latest [Arrow 
Rust
+  changelog][5].
+- For notes on the latest release of the [Go
+implementation](https://github.com/apache/arrow-go), see the latest [Arrow Go
+changelog][6].
+- For notes on the latest release of the [.NET
+implementation](https://github.com/apache/arrow-dotnet), see the latest [Arrow 
 .NET changelog][9].
+- For notes on the latest release of the [Swift 
implementation](https://github.com/apache/arrow-swift), see the latest [Arrow 
Swift changelog][10].
+
+[1]: https://github.com/apache/arrow/milestone/71?closed=1
+[2]: {{ site.baseurl }}/release/23.0.0.html#contributors
+[3]: {{ site.baseurl }}/release/23.0.0.html#changelog
+[4]: {{ site.baseurl }}/docs/r/news/
+[5]: <https://github.com/apache/arrow-rs/blob/main/CHANGELOG.md>
+[6]: <https://github.com/apache/arrow-go/releases>
+[7]: <https://github.com/apache/arrow-java/releases>
+[8]: <https://github.com/apache/arrow-js/releases>
+[9]: <https://github.com/apache/arrow-dotnet/releases>
+[10]: <https://github.com/apache/arrow-swift/releases>

Reply via email to