apache / arrow-nanoarrow

Helpers for Arrow C Data & Arrow C Stream interfaces
https://arrow.apache.org/nanoarrow
Apache License 2.0
151 stars 34 forks source link

Meson support #413

Closed WillAyd closed 3 months ago

WillAyd commented 3 months ago

Not sure if there is a desire for supporting another build backend, but figured I would share in case.

Meson seems a bit simpler than the existing CMake configuration, and has the advantage of:

  1. Installing dependencies via the wrap database easily
  2. Potentially making nanoarrow installable via the WrapDB

Point 2 is not covered here, but might be a nice future enhancement for downstream Python libraries like NumPy and pandas that use Meson as their build systems

codecov-commenter commented 3 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 88.76%. Comparing base (a9ef745) to head (bfaea57). Report is 1 commits behind head on main.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #413 +/- ## ======================================= Coverage 88.76% 88.76% ======================================= Files 82 82 Lines 14633 14633 ======================================= Hits 12989 12989 Misses 1644 1644 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

WillAyd commented 3 months ago

Sounds good - I just copied over the minimal example and switched it to Meson. It is still a little different from what end users would do long term (i.e. would be nice to have nanoarrow in the WrapDB) but I think the gist of it is there

WillAyd commented 3 months ago

Yea happy to do so

WillAyd commented 3 months ago

I believe I addressed all feedback but let me know if anything is outstanding