You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by GitBox <gi...@apache.org> on 2022/07/08 16:08:13 UTC
[GitHub] [arrow-nanoarrow] paleolimbot opened a new pull request, #1: Add files from paleolimbot/nanoarrow
paleolimbot opened a new pull request, #1:
URL: https://github.com/apache/arrow-nanoarrow/pull/1
This PR imports the preliminary work from https://github.com/paleolimbot/nanoarrow (with reviews from @lidavidm and @pitrou and input from the dev mailing list via the [initial design document](https://docs.google.com/document/d/11n7ICVZO8exZ-z3GRlI26VLzKPXlYlEz5xjLl1y0ujU/edit?usp=sharing) ).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow-nanoarrow] paleolimbot commented on a diff in pull request #1: Add files from paleolimbot/nanoarrow
Posted by GitBox <gi...@apache.org>.
paleolimbot commented on code in PR #1:
URL: https://github.com/apache/arrow-nanoarrow/pull/1#discussion_r917020377
##########
README.md:
##########
@@ -1 +1,65 @@
-# arrow-nanoarrow
+
+# nanoarrow
+
+[](https://app.codecov.io/gh/paleolimbot/nanoarrow?branch=main)
Review Comment:
I removed this until I'm sure it's working again (maybe I'll re-add it when I set up the Issues pane and other repo-level stuff).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow-nanoarrow] lidavidm commented on pull request #1: Add files from paleolimbot/nanoarrow
Posted by GitBox <gi...@apache.org>.
lidavidm commented on PR #1:
URL: https://github.com/apache/arrow-nanoarrow/pull/1#issuecomment-1179232441
@paleolimbot feel free to merge and continue setting things up
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow-nanoarrow] paleolimbot commented on a diff in pull request #1: Add files from paleolimbot/nanoarrow
Posted by GitBox <gi...@apache.org>.
paleolimbot commented on code in PR #1:
URL: https://github.com/apache/arrow-nanoarrow/pull/1#discussion_r917019272
##########
.github/workflows/build-and-test.yaml:
##########
@@ -0,0 +1,104 @@
+on:
Review Comment:
Done!
##########
.gitignore:
##########
@@ -0,0 +1,6 @@
+build
Review Comment:
Done!
##########
README.md:
##########
@@ -1 +1,65 @@
-# arrow-nanoarrow
+
Review Comment:
Done!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow-nanoarrow] lidavidm commented on a diff in pull request #1: Add files from paleolimbot/nanoarrow
Posted by GitBox <gi...@apache.org>.
lidavidm commented on code in PR #1:
URL: https://github.com/apache/arrow-nanoarrow/pull/1#discussion_r917010603
##########
.github/workflows/build-and-test.yaml:
##########
@@ -0,0 +1,104 @@
+on:
Review Comment:
Add the Apache license here?
##########
.gitignore:
##########
@@ -0,0 +1,6 @@
+build
Review Comment:
Add the Apache license here?
##########
README.md:
##########
@@ -1 +1,65 @@
-# arrow-nanoarrow
+
Review Comment:
Add the Apache license in a comment block?
##########
README.md:
##########
@@ -1 +1,65 @@
-# arrow-nanoarrow
+
+# nanoarrow
+
+[](https://app.codecov.io/gh/paleolimbot/nanoarrow?branch=main)
+
+The nanoarrow library is a set of helper functions to interpret and generate
+[Arrow C Data Interface](https://arrow.apache.org/docs/format/CDataInterface.html)
+and [Arrow C Stream Interface](https://arrow.apache.org/docs/format/CStreamInterface.html)
+structures. The library is in active development and should currently be used only
+for entertainment purposes. Everything from the name of the project to the variable
+names are up for grabs (i.e., suggest/pull request literally any ideas you may
+have!).
+
+Whereas the current suite of Arrow implementations provide the basis for a
+comprehensive data analysis toolkit, this library is intended to support clients
+that wish to produce or interpret Arrow C Data and/or Arrow C Stream structures.
+The library will:
+
+- Create, copy, parse, and validate struct ArrowSchema objects (all types mentioned
+ in the C Data interface specification)
+- Create and validate struct ArrowArray/struct ArrowSchema pairs for (all types
+ mentioned in the C Data interface specification)
+- Iterate over struct ArrowArrays element-wise (non-nested types) (i.e., is the
+ ith element null; get the ith element).
+- Build Arrays element-wise (non-nested types) (i.e., basic Array Builder logic).
+
+While it will not provide full support for nested types, it should provide enough
+infrastructure that an extension library with a similar format could implement such
+support.
+
+## Usage
+
+You can use nanoarrow in your project in two ways:
+
+1. Copy contents of the `src/nanoarrow/` into your favourite include directory and
+ `#include <nanoarrow/nanoarrow.c>` somewhere in your project exactly once.
+2. Clone and use `cmake`, `cmake --build`, and `cmake --install` to build/install
+ the static library and add `-L/path/to/nanoarrow/lib -lnanoarrow` to your favourite
+ linker flag configuration.
+
+All public functions and types are declared in `nanoarrow/nanoarrow.h`.
+
+In all cases you will want to copy this project or pin your build to a specific commit
+since it will change rapidly and regularly. The nanoarrow library does not and will
+not provide ABI stability (i.e., you must vendor or link to a private version of
+the static library).
+
+## Background
+
+The design of nanoarrow reflects the needs of a few previous libraries/prototypes
+requiring a library with a similar scope:
+
+- DuckDB’s Arrow wrappers, the details of which are in a few places
+ (e.g., [here](https://github.com/duckdb/duckdb/blob/master/src/common/arrow_wrapper.cpp),
+ [here](https://github.com/duckdb/duckdb/blob/master/src/main/query_result.cpp),
+ and a few other places)
+- An [R wrapper around the C Data interface](https://github.com/paleolimbot/narrow),
+ along which a [C-only library](https://github.com/paleolimbot/narrow/tree/master/src/narrow)
+ was prototyped.
+- An [R implementation of the draft GeoArrow specification](https://github.com/paleolimbot/geoarrow),
+ along which a [mostly header-only C++ library](https://github.com/paleolimbot/geonanoarrowpp/tree/main/src/geoarrow/internal/arrow-hpp)
+ was prototyped.
+- The [Arrow Database Connector](https://github.com/apache/arrow-adbc) C API, for which drivers
Review Comment:
```suggestion
- The [Arrow Database Connectivity](https://github.com/apache/arrow-adbc) C API, for which drivers
```
##########
README.md:
##########
@@ -1 +1,65 @@
-# arrow-nanoarrow
+
+# nanoarrow
+
+[](https://app.codecov.io/gh/paleolimbot/nanoarrow?branch=main)
Review Comment:
URI needs updating (though: is Codecov still enabled?)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [arrow-nanoarrow] paleolimbot merged pull request #1: Add files from paleolimbot/nanoarrow
Posted by GitBox <gi...@apache.org>.
paleolimbot merged PR #1:
URL: https://github.com/apache/arrow-nanoarrow/pull/1
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@arrow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org