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

raulcd pushed a commit to branch maint-16.0.0
in repository https://gitbox.apache.org/repos/asf/arrow.git

commit 93d2db0cf232fb933c1cda3feeff7e32d992b8ab
Author: Dewey Dunnington <[email protected]>
AuthorDate: Tue Apr 9 15:27:59 2024 -0300

    GH-40689: [Docs] Add nanoarrow to implementation status page (#41052)
    
    ### Rationale for this change
    
    nanoarrow now supports most types and reading IPC streams. As discussed in 
the issue, there is interest in adding it to the implementation status page for 
visibility.
    
    ### What changes are included in this PR?
    
    A column was added to the table with the appropriate values characterizing 
the C library implementation status.
    
    ### Are these changes tested?
    
    Not needed (docs!)
    
    ### Are there any user-facing changes?
    
    No (docs!)
    * GitHub Issue: #40689
    
    Lead-authored-by: Dewey Dunnington <[email protected]>
    Co-authored-by: Dewey Dunnington <[email protected]>
    Signed-off-by: Dewey Dunnington <[email protected]>
---
 docs/source/index.rst  |   1 +
 docs/source/status.rst | 470 +++++++++++++++++++++++++------------------------
 2 files changed, 237 insertions(+), 234 deletions(-)

diff --git a/docs/source/index.rst b/docs/source/index.rst
index 2ca63c5ebd..57143b1196 100644
--- a/docs/source/index.rst
+++ b/docs/source/index.rst
@@ -109,6 +109,7 @@ Implementations
    JavaScript <js/index>
    Julia <https://arrow.apache.org/julia/>
    MATLAB <https://github.com/apache/arrow/blob/main/matlab/README.md>
+   nanoarrow <https://arrow.apache.org/nanoarrow/>
    Python <python/index>
    R <r/index>
    Ruby <https://github.com/apache/arrow/blob/main/ruby/README.md>
diff --git a/docs/source/status.rst b/docs/source/status.rst
index dc60b311a1..f4672d6b4b 100644
--- a/docs/source/status.rst
+++ b/docs/source/status.rst
@@ -28,88 +28,88 @@ stated, the Python, R, Ruby and C/GLib libraries follow the 
C++ Arrow library.
 Data Types
 ==========
 
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Data type         | C++   | Java  | Go    | JavaScript | C#    | Rust  | 
Julia | Swift |
-| (primitive)       |       |       |       |            |       |       |     
  |       |
-+===================+=======+=======+=======+============+=======+=======+=======+=======+
-| Null              | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Boolean           | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  | ✓     |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Int8/16/32/64     | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  | ✓     |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| UInt8/16/32/64    | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  | ✓     |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Float16           | ✓     | ✓ (1) | ✓     | ✓          |  ✓ (2)|  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Float32/64        | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  | ✓     |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Decimal128        | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Decimal256        | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Date32/64         | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  | ✓     |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Time32/64         | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  | ✓     |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Timestamp         | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Duration          | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Interval          | ✓     | ✓     | ✓     |            |  ✓    |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Fixed Size Binary | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Binary            | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  | ✓     |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Large Binary      | ✓     | ✓     | ✓     | ✓          |       |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Utf8              | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  | ✓     |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Large Utf8        | ✓     | ✓     | ✓     | ✓          |       |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Binary View       | ✓     |       | ✓     |            |   ✓   |       |     
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Large Binary View | ✓     |       | ✓     |            |       |       |     
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Utf8 View         | ✓     |       | ✓     |            |   ✓   |       |     
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Large Utf8 View   | ✓     |       | ✓     |            |       |       |     
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Data type         | C++   | Java  | Go    | JavaScript | C#    | Rust  | 
Julia | Swift |
-| (nested)          |       |       |       |            |       |       |     
  |       |
-+===================+=======+=======+=======+============+=======+=======+=======+=======+
-| Fixed Size List   | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| List              | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Large List        | ✓     | ✓     | ✓     |            |       |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| List View         | ✓     |       | ✓     |            |   ✓   |       |     
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Large List View   | ✓     |       | ✓     |            |       |       |     
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Struct            | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Map               | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Dense Union       | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Sparse Union      | ✓     | ✓     | ✓     | ✓          |  ✓    |  ✓    | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Data type         | C++   | Java  | Go    | JavaScript | C#    | Rust  | 
Julia | Swift |
-| (special)         |       |       |       |            |       |       |     
  |       |
-+===================+=======+=======+=======+============+=======+=======+=======+=======+
-| Dictionary        | ✓     | ✓ (3) | ✓     | ✓          | ✓     | ✓ (3) | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Extension         | ✓     | ✓     | ✓     |            |       | ✓     | ✓   
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Run-End Encoded   | ✓     |       | ✓     |            |       |       |     
  |       |
-+-------------------+-------+-------+-------+------------+-------+-------+-------+-------+
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Data type         | C++   | Java  | Go    | JS | C#    | Rust  | Julia | 
Swift | nanoarrow |
+| (primitive)       |       |       |       |    |       |       |       |     
  |           |
++===================+=======+=======+=======+====+=======+=======+=======+=======+===========+
+| Null              | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Boolean           | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     | ✓   
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Int8/16/32/64     | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     | ✓   
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| UInt8/16/32/64    | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     | ✓   
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Float16           | ✓     | ✓ (1) | ✓     | ✓  |  ✓ (2)|  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Float32/64        | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     | ✓   
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Decimal128        | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Decimal256        | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Date32/64         | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     | ✓   
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Time32/64         | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     | ✓   
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Timestamp         | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Duration          | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Interval          | ✓     | ✓     | ✓     |    |  ✓    |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Fixed Size Binary | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Binary            | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     | ✓   
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Large Binary      | ✓     | ✓     | ✓     | ✓  |       |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Utf8              | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     | ✓   
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Large Utf8        | ✓     | ✓     | ✓     | ✓  |       |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Binary View       | ✓     |       | ✓     |    |   ✓   |       |       |     
  |           |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Large Binary View | ✓     |       | ✓     |    |       |       |       |     
  |           |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Utf8 View         | ✓     |       | ✓     |    |   ✓   |       |       |     
  |           |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Large Utf8 View   | ✓     |       | ✓     |    |       |       |       |     
  |           |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Data type         | C++   | Java  | Go    | JS | C#    | Rust  | Julia | 
Swift | nanoarrow |
+| (nested)          |       |       |       |    |       |       |       |     
  |           |
++===================+=======+=======+=======+====+=======+=======+=======+=======+===========+
+| Fixed Size List   | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| List              | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Large List        | ✓     | ✓     | ✓     |    |       |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| List View         | ✓     |       | ✓     |    |   ✓   |       |       |     
  |           |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Large List View   | ✓     |       | ✓     |    |       |       |       |     
  |           |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Struct            | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Map               | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Dense Union       | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Sparse Union      | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Data type         | C++   | Java  | Go    | JS | C#    | Rust  | Julia | 
Swift | nanoarrow |
+| (special)         |       |       |       |    |       |       |       |     
  |           |
++===================+=======+=======+=======+====+=======+=======+=======+=======+===========+
+| Dictionary        | ✓     | ✓ (3) | ✓     | ✓  | ✓     | ✓ (3) | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Extension         | ✓     | ✓     | ✓     |    |       | ✓     | ✓     |     
  | ✓         |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Run-End Encoded   | ✓     |       | ✓     |    |       |       |       |     
  |           |
++-------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
 
 
+-----------------------+-------+-------+-------+------------+-------+-------+-------+-------+
 | Canonical             | C++   | Java  | Go    | JavaScript | C#    | Rust  | 
Julia | Swift |
@@ -134,32 +134,32 @@ Notes:
 IPC Format
 ==========
 
-+-----------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| IPC Feature                 | C++   | Java  | Go    | JavaScript | C#    | 
Rust  | Julia | Swift |
-|                             |       |       |       |            |       |   
    |       |       |
-+=============================+=======+=======+=======+============+=======+=======+=======+=======+
-| Arrow stream format         | ✓     | ✓     | ✓     | ✓          |  ✓    |  
✓    | ✓     | ✓     |
-+-----------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Arrow file format           | ✓     | ✓     | ✓     | ✓          |  ✓    |  
✓    | ✓     | ✓     |
-+-----------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Record batches              | ✓     | ✓     | ✓     | ✓          |  ✓    |  
✓    | ✓     | ✓     |
-+-----------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Dictionaries                | ✓     | ✓     | ✓     | ✓          |  ✓    |  
✓    | ✓     |       |
-+-----------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Replacement dictionaries    | ✓     | ✓     | ✓     |            |       |   
    | ✓     |       |
-+-----------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Delta dictionaries          | ✓ (1) |       | ✓ (1) | ✓          |  ✓    |   
    | ✓     |       |
-+-----------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Tensors                     | ✓     |       |       |            |       |   
    |       |       |
-+-----------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Sparse tensors              | ✓     |       |       |            |       |   
    |       |       |
-+-----------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Buffer compression          | ✓     | ✓ (3) | ✓     |            | ✓     |  
✓    | ✓     |       |
-+-----------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Endianness conversion       | ✓ (2) |       | ✓ (2) |            |       |   
    |       |       |
-+-----------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Custom schema metadata      | ✓     | ✓     | ✓     | ✓          |  ✓    |  
✓    | ✓     |       |
-+-----------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
++-----------------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| IPC Feature                 | C++   | Java  | Go    | JS | C#    | Rust  | 
Julia | Swift | nanoarrow |
+|                             |       |       |       |    |       |       |   
    |       |           |
++=============================+=======+=======+=======+====+=======+=======+=======+=======+===========+
+| Arrow stream format         | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓ 
    | ✓     | ✓ (4)     |
++-----------------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Arrow file format           | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓ 
    | ✓     |           |
++-----------------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Record batches              | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓ 
    | ✓     | ✓         |
++-----------------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Dictionaries                | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓ 
    |       |           |
++-----------------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Replacement dictionaries    | ✓     | ✓     | ✓     |    |       |       | ✓ 
    |       |           |
++-----------------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Delta dictionaries          | ✓ (1) |       | ✓ (1) | ✓  |  ✓    |       | ✓ 
    |       |           |
++-----------------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Tensors                     | ✓     |       |       |    |       |       |   
    |       |           |
++-----------------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Sparse tensors              | ✓     |       |       |    |       |       |   
    |       |           |
++-----------------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Buffer compression          | ✓     | ✓ (3) | ✓     |    | ✓     |  ✓    | ✓ 
    |       |           |
++-----------------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Endianness conversion       | ✓ (2) |       | ✓ (2) |    |       |       |   
    |       | ✓ (2)     |
++-----------------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
+| Custom schema metadata      | ✓     | ✓     | ✓     | ✓  |  ✓    |  ✓    | ✓ 
    |       | ✓         |
++-----------------------------+-------+-------+-------+----+-------+-------+-------+-------+-----------+
 
 Notes:
 
@@ -169,6 +169,8 @@ Notes:
 
 * \(3) LZ4 Codec currently is quite inefficient. ARROW-11901 tracks improving 
performance.
 
+* \(4) The nanoarrow IPC implementation is only implemented for reading IPC 
streams.
+
 .. seealso::
    The :ref:`format-ipc` specification.
 
@@ -177,57 +179,57 @@ Notes:
 Flight RPC
 ==========
 
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Flight RPC Transport                       | C++   | Java  | Go    | 
JavaScript | C#    | Rust  | Julia | Swift |
-+============================================+=======+=======+=======+============+=======+=======+=======+=======+
-| gRPC_ transport (grpc:, grpc+tcp:)         | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| gRPC domain socket transport (grpc+unix:)  | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| gRPC + TLS transport (grpc+tls:)           | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| UCX_ transport (ucx:)                      | ✓     |       |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Flight RPC Transport                       | C++   | Java  | Go    | JS | C# 
   | Rust  | Julia | Swift |
++============================================+=======+=======+=======+====+=======+=======+=======+=======+
+| gRPC_ transport (grpc:, grpc+tcp:)         | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| gRPC domain socket transport (grpc+unix:)  | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| gRPC + TLS transport (grpc+tls:)           | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| UCX_ transport (ucx:)                      | ✓     |       |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
 
 Supported features in the gRPC transport:
 
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Flight RPC Feature                         | C++   | Java  | Go    | 
JavaScript | C#    | Rust  | Julia | Swift |
-+============================================+=======+=======+=======+============+=======+=======+=======+=======+
-| All RPC methods                            | ✓     | ✓     | ✓     |         
   | × (1) | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Authentication handlers                    | ✓     | ✓     | ✓     |         
   | ✓ (2) | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Call timeouts                              | ✓     | ✓     | ✓     |         
   |       | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Call cancellation                          | ✓     | ✓     | ✓     |         
   |       | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Concurrent client calls (3)                | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Custom middleware                          | ✓     | ✓     | ✓     |         
   |       | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| RPC error codes                            | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Flight RPC Feature                         | C++   | Java  | Go    | JS | C# 
   | Rust  | Julia | Swift |
++============================================+=======+=======+=======+====+=======+=======+=======+=======+
+| All RPC methods                            | ✓     | ✓     | ✓     |    | ✓ 
(1) | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Authentication handlers                    | ✓     | ✓     | ✓     |    | ✓ 
(2) | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Call timeouts                              | ✓     | ✓     | ✓     |    |    
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Call cancellation                          | ✓     | ✓     | ✓     |    |    
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Concurrent client calls (3)                | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Custom middleware                          | ✓     | ✓     | ✓     |    |    
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| RPC error codes                            | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
 
 Supported features in the UCX transport:
 
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Flight RPC Feature                         | C++   | Java  | Go    | 
JavaScript | C#    | Rust  | Julia | Swift |
-+============================================+=======+=======+=======+============+=======+=======+=======+=======+
-| All RPC methods                            | × (4) |       |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Authentication handlers                    |       |       |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Call timeouts                              |       |       |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Call cancellation                          |       |       |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Concurrent client calls                    | ✓ (5) |       |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Custom middleware                          |       |       |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| RPC error codes                            | ✓     |       |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Flight RPC Feature                         | C++   | Java  | Go    | JS | C# 
   | Rust  | Julia | Swift |
++============================================+=======+=======+=======+====+=======+=======+=======+=======+
+| All RPC methods                            | ✓ (4) |       |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Authentication handlers                    |       |       |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Call timeouts                              |       |       |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Call cancellation                          |       |       |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Concurrent client calls                    | ✓ (5) |       |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Custom middleware                          |       |       |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| RPC error codes                            | ✓     |       |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
 
 Notes:
 
@@ -255,55 +257,55 @@ The feature support refers to the client/server libraries 
only;
 databases which implement the Flight SQL protocol in turn will
 support/not support individual features.
 
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| Feature                                    | C++   | Java  | Go    | 
JavaScript | C#    | Rust  | Julia | Swift |
-+============================================+=======+=======+=======+============+=======+=======+=======+=======+
-| BeginSavepoint                             | ✓     | ✓     |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| BeginTransaction                           | ✓     | ✓     |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| CancelQuery                                | ✓     | ✓     |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| ClosePreparedStatement                     | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| CreatePreparedStatement                    | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| CreatePreparedSubstraitPlan                | ✓     | ✓     |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| EndSavepoint                               | ✓     | ✓     |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| EndTransaction                             | ✓     | ✓     |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| GetCatalogs                                | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| GetCrossReference                          | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| GetDbSchemas                               | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| GetExportedKeys                            | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| GetImportedKeys                            | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| GetPrimaryKeys                             | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| GetSqlInfo                                 | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| GetTables                                  | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| GetTableTypes                              | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| GetXdbcTypeInfo                            | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| PreparedStatementQuery                     | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| PreparedStatementUpdate                    | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| StatementSubstraitPlan                     | ✓     | ✓     |       |         
   |       |       |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| StatementQuery                             | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
-| StatementUpdate                            | ✓     | ✓     | ✓     |         
   | ✓     | ✓     |       |       |
-+--------------------------------------------+-------+-------+-------+------------+-------+-------+-------+-------+
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| Feature                                    | C++   | Java  | Go    | JS | C# 
   | Rust  | Julia | Swift |
++============================================+=======+=======+=======+====+=======+=======+=======+=======+
+| BeginSavepoint                             | ✓     | ✓     |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| BeginTransaction                           | ✓     | ✓     |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| CancelQuery                                | ✓     | ✓     |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| ClosePreparedStatement                     | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| CreatePreparedStatement                    | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| CreatePreparedSubstraitPlan                | ✓     | ✓     |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| EndSavepoint                               | ✓     | ✓     |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| EndTransaction                             | ✓     | ✓     |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| GetCatalogs                                | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| GetCrossReference                          | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| GetDbSchemas                               | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| GetExportedKeys                            | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| GetImportedKeys                            | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| GetPrimaryKeys                             | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| GetSqlInfo                                 | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| GetTables                                  | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| GetTableTypes                              | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| GetXdbcTypeInfo                            | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| PreparedStatementQuery                     | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| PreparedStatementUpdate                    | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| StatementSubstraitPlan                     | ✓     | ✓     |       |    |    
   |       |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| StatementQuery                             | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
+| StatementUpdate                            | ✓     | ✓     | ✓     |    | ✓  
   | ✓     |       |       |
++--------------------------------------------+-------+-------+-------+----+-------+-------+-------+-------+
 
 .. seealso::
    The :doc:`./format/FlightSql` specification.
@@ -311,18 +313,18 @@ support/not support individual features.
 C Data Interface
 ================
 
-+-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+
-| Feature                     | C++ | Python | R | Rust | Go | Java | C/GLib | 
Ruby | Julia | C#  | Swift |
-|                             |     |        |   |      |    |      |        | 
     |       |     |       |
-+=============================+=====+========+===+======+====+======+========+======+=======+=====+=======+
-| Schema export               | ✓   | ✓      | ✓ | ✓    | ✓  | ✓    | ✓      | 
✓    |       | ✓   |       |
-+-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+
-| Array export                | ✓   | ✓      | ✓ | ✓    | ✓  | ✓    | ✓      | 
✓    |       | ✓   |       |
-+-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+
-| Schema import               | ✓   | ✓      | ✓ | ✓    | ✓  | ✓    | ✓      | 
✓    |       | ✓   |       |
-+-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+
-| Array import                | ✓   | ✓      | ✓ | ✓    | ✓  | ✓    | ✓      | 
✓    |       | ✓   |       |
-+-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+
++-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+-----------+
+| Feature                     | C++ | Python | R | Rust | Go | Java | C/GLib | 
Ruby | Julia | C#  | Swift | nanoarrow |
+|                             |     |        |   |      |    |      |        | 
     |       |     |       |           |
++=============================+=====+========+===+======+====+======+========+======+=======+=====+=======+===========+
+| Schema export               | ✓   | ✓      | ✓ | ✓    | ✓  | ✓    | ✓      | 
✓    |       | ✓   |       | ✓         |
++-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+-----------+
+| Array export                | ✓   | ✓      | ✓ | ✓    | ✓  | ✓    | ✓      | 
✓    |       | ✓   |       | ✓         |
++-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+-----------+
+| Schema import               | ✓   | ✓      | ✓ | ✓    | ✓  | ✓    | ✓      | 
✓    |       | ✓   |       | ✓         |
++-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+-----------+
+| Array import                | ✓   | ✓      | ✓ | ✓    | ✓  | ✓    | ✓      | 
✓    |       | ✓   |       | ✓         |
++-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+-----------+
 
 .. seealso::
    The :ref:`C Data Interface <c-data-interface>` specification.
@@ -331,14 +333,14 @@ C Data Interface
 C Stream Interface
 ==================
 
-+-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+
-| Feature                     | C++ | Python | R | Rust | Go | Java | C/GLib | 
Ruby | Julia | C#  | Swift |
-|                             |     |        |   |      |    |      |        | 
     |       |     |       |
-+=============================+=====+========+===+======+====+======+========+======+=======+=====+=======+
-| Stream export               | ✓   | ✓      | ✓ | ✓    | ✓  |      | ✓      | 
✓    |       | ✓   |       |
-+-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+
-| Stream import               | ✓   | ✓      | ✓ | ✓    | ✓  |      | ✓      | 
✓    |       | ✓   |       |
-+-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+
++-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+-----------+
+| Feature                     | C++ | Python | R | Rust | Go | Java | C/GLib | 
Ruby | Julia | C#  | Swift | nanoarrow |
+|                             |     |        |   |      |    |      |        | 
     |       |     |       |           |
++=============================+=====+========+===+======+====+======+========+======+=======+=====+=======+===========+
+| Stream export               | ✓   | ✓      | ✓ | ✓    | ✓  |      | ✓      | 
✓    |       | ✓   |       | ✓         |
++-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+-----------+
+| Stream import               | ✓   | ✓      | ✓ | ✓    | ✓  |      | ✓      | 
✓    |       | ✓   |       | ✓         |
++-----------------------------+-----+--------+---+------+----+------+--------+------+-------+-----+-------+-----------+
 
 .. seealso::
    The :ref:`C Stream Interface <c-stream-interface>` specification.
@@ -347,18 +349,18 @@ C Stream Interface
 Third-Party Data Formats
 ========================
 
-+-----------------------------+---------+---------+-------+------------+-------+-------+-------+-------+
-| Format                      | C++     | Java    | Go    | JavaScript | C#    
| Rust  | Julia | Swift |
-|                             |         |         |       |            |       
|       |       |       |
-+=============================+=========+=========+=======+============+=======+=======+=======+=======+
-| Avro                        |         | R       |       |            |       
|       |       |       |
-+-----------------------------+---------+---------+-------+------------+-------+-------+-------+-------+
-| CSV                         | R/W     | R (2)   | R/W   |            |       
| R/W   | R/W   |       |
-+-----------------------------+---------+---------+-------+------------+-------+-------+-------+-------+
-| ORC                         | R/W     | R (1)   |       |            |       
|       |       |       |
-+-----------------------------+---------+---------+-------+------------+-------+-------+-------+-------+
-| Parquet                     | R/W     | R (2)   | R/W   |            |       
| R/W   |       |       |
-+-----------------------------+---------+---------+-------+------------+-------+-------+-------+-------+
++-----------------------------+---------+---------+-------+----+-------+-------+-------+-------+
+| Format                      | C++     | Java    | Go    | JS | C#    | Rust  
| Julia | Swift |
+|                             |         |         |       |    |       |       
|       |       |
++=============================+=========+=========+=======+====+=======+=======+=======+=======+
+| Avro                        |         | R       |       |    |       |       
|       |       |
++-----------------------------+---------+---------+-------+----+-------+-------+-------+-------+
+| CSV                         | R/W     | R (2)   | R/W   |    |       | R/W   
| R/W   |       |
++-----------------------------+---------+---------+-------+----+-------+-------+-------+-------+
+| ORC                         | R/W     | R (1)   |       |    |       |       
|       |       |
++-----------------------------+---------+---------+-------+----+-------+-------+-------+-------+
+| Parquet                     | R/W     | R (2)   | R/W   |    |       | R/W   
|       |       |
++-----------------------------+---------+---------+-------+----+-------+-------+-------+-------+
 
 Notes:
 

Reply via email to