|
| 1 | +--- |
| 2 | +layout: post |
| 3 | +title: "Apache Arrow ADBC 18 (Libraries) Release" |
| 4 | +date: "2025-05-06 00:00:00" |
| 5 | +author: pmc |
| 6 | +categories: [release] |
| 7 | +--- |
| 8 | +<!-- |
| 9 | +{% comment %} |
| 10 | +Licensed to the Apache Software Foundation (ASF) under one or more |
| 11 | +contributor license agreements. See the NOTICE file distributed with |
| 12 | +this work for additional information regarding copyright ownership. |
| 13 | +The ASF licenses this file to you under the Apache License, Version 2.0 |
| 14 | +(the "License"); you may not use this file except in compliance with |
| 15 | +the License. You may obtain a copy of the License at |
| 16 | +
|
| 17 | +http://www.apache.org/licenses/LICENSE-2.0 |
| 18 | +
|
| 19 | +Unless required by applicable law or agreed to in writing, software |
| 20 | +distributed under the License is distributed on an "AS IS" BASIS, |
| 21 | +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 22 | +See the License for the specific language governing permissions and |
| 23 | +limitations under the License. |
| 24 | +{% endcomment %} |
| 25 | +--> |
| 26 | + |
| 27 | +The Apache Arrow team is pleased to announce the version 18 release of |
| 28 | +the Apache Arrow ADBC libraries. This release includes [**28 |
| 29 | +resolved issues**][1] from [**22 distinct contributors**][2]. |
| 30 | + |
| 31 | +This is a release of the **libraries**, which are at version 18. The |
| 32 | +[**API specification**][specification] is versioned separately and is at |
| 33 | +version 1.1.0. |
| 34 | + |
| 35 | +The subcomponents are versioned independently: |
| 36 | + |
| 37 | +- C/C++/GLib/Go/Python/Ruby: 1.6.0 |
| 38 | +- C#: 0.18.0 |
| 39 | +- Java: 0.18.0 |
| 40 | +- R: 0.18.0 |
| 41 | +- Rust: 0.18.0 |
| 42 | + |
| 43 | +The release notes below are not exhaustive and only expose selected |
| 44 | +highlights of the release. Many other bugfixes and improvements have |
| 45 | +been made: we refer you to the [complete changelog][3]. |
| 46 | + |
| 47 | +## Release Highlights |
| 48 | + |
| 49 | +Using Meson to build the project has been improved (#2735, #2746). |
| 50 | + |
| 51 | +The C# bindings and its drivers have seen a lot of activity in this release. A Databricks Spark driver is now available (#2672, #2737, #2743, #2692), with support for features like CloudFetch (#2634, #2678, #2691). The general Spark driver now has better retry behavior for 503 responses (#2664), supports LZ4 compression applied outside of the Arrow IPC format (#2669), and supports OAuth (#2579), among other improvements. The "Apache" driver for various Thrift-based systems now supports Apache Hive in addition to Apache Spark and Apache Impala (#2540), among other improvements. The BigQuery driver adds more authentication and other configuration settings (#2655, #2566, #2541, #2698). |
| 52 | + |
| 53 | +The Flight SQL driver supports OAuth (#2651). |
| 54 | + |
| 55 | +The Java bindings experimentally support a JNI wrapper around drivers exposing the ADBC C API (#2401). These are not currently distributed via Maven and must be built by hand. |
| 56 | + |
| 57 | +The Go bindings now support union types in the `database/sql` wrapper (#2637). The Golang-based BigQuery driver returns more metadata about tables (#2697). |
| 58 | + |
| 59 | +The PostgreSQL driver now avoids spurious commit/rollback commands (#2685). It also handles improper usage more gracefully (#2653). |
| 60 | + |
| 61 | +The Python bindings now make it easier to pass options in various places (#2589, #2700). Also, the DB-API layer can be minimally used without PyArrow installed, making it easier for users of libraries like polars that don't need or want a second Arrow implementation (#2609). |
| 62 | + |
| 63 | +The Rust bindings now avoid locking the driver on every operation, allowing concurrent usage (#2736). |
| 64 | + |
| 65 | +## Contributors |
| 66 | + |
| 67 | +``` |
| 68 | +$ git shortlog --perl-regexp --author='^((?!dependabot\[bot\]).*)$' -sn apache-arrow-adbc-17..apache-arrow-adbc-18 |
| 69 | + 20 David Li |
| 70 | + 6 William Ayd |
| 71 | + 5 Curt Hagenlocher |
| 72 | + 5 davidhcoe |
| 73 | + 4 Alex Guo |
| 74 | + 4 Felipe Oliveira Carvalho |
| 75 | + 4 Jade Wang |
| 76 | + 4 Matthijs Brobbel |
| 77 | + 4 Sutou Kouhei |
| 78 | + 4 eric-wang-1990 |
| 79 | + 3 Bruce Irschick |
| 80 | + 2 Milos Gligoric |
| 81 | + 2 Sudhir Reddy Emmadi |
| 82 | + 2 Todd Meng |
| 83 | + 1 Bryce Mecum |
| 84 | + 1 Dewey Dunnington |
| 85 | + 1 Filip Wojciechowski |
| 86 | + 1 Hiroaki Yutani |
| 87 | + 1 Hélder Gregório |
| 88 | + 1 Marin Nozhchev |
| 89 | + 1 amangoyal |
| 90 | + 1 qifanzhang-ms |
| 91 | +``` |
| 92 | + |
| 93 | +## Roadmap |
| 94 | + |
| 95 | +There is some discussion on a potential second revision of ADBC to include more missing functionality and asynchronous API support. For more, see the [milestone](https://github.com/apache/arrow-adbc/milestone/8). We would welcome suggestions on APIs that could be added or extended. Some of the contributors are planning to begin work on a proposal in the near future. |
| 96 | + |
| 97 | +## Getting Involved |
| 98 | + |
| 99 | +We welcome questions and contributions from all interested. Issues |
| 100 | +can be filed on [GitHub][4], and questions can be directed to GitHub |
| 101 | +or the [Arrow mailing lists][5]. |
| 102 | + |
| 103 | +[1]: https://github.com/apache/arrow-adbc/milestone/22 |
| 104 | +[2]: #contributors |
| 105 | +[3]: https://github.com/apache/arrow-adbc/blob/apache-arrow-adbc-18/CHANGELOG.md |
| 106 | +[4]: https://github.com/apache/arrow-adbc/issues |
| 107 | +[5]: {% link community.md %} |
| 108 | +[specification]: https://arrow.apache.org/adbc/18/format/specification.html |
0 commit comments