• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

vortex-data / vortex / 16370902322
88%

Build:
DEFAULT BRANCH: develop
Ran 18 Jul 2025 12:50PM UTC
Jobs 2
Files 585
Run time 2min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

18 Jul 2025 12:46PM UTC coverage: 81.527% (-0.03%) from 81.554%
16370902322

push

github

web-flow
Vortex - C++ API (#3792)

This PR uses the cxx crate to bridge Rust and C++. The trade-offs
between cxx and directly wrapping the vortex-ffi C API is roughly the
follows:

Pros of cxx:
1. Safety is guaranteed by cxx, no need to directly use the unsafe C API
(not all cases though). In a sense that the Rust-side code is easier to
write and maintain.
2. Better ergonomic by providing Rust data structure
[bindings](https://cxx.rs/bindings.html) with RAII support in C++ like
`rust::Box` and `rust::Str` .

Cons:
1. Less flexibility because we cannot control what FFI is generated, and
we may lack some type bindings support across the FFI.
2. May eventually have duplicate code as `vortex-ffi`

I also tried to find best practices in other repos and seems
[opendal](https://github.com/apache/opendal/tree/main/bindings) uses cxx
for C++ and cbindgen for C with separate code paths, too. I think we can
follow the same approach at least for now for a limited C++ API (e.g.,
to/from Arrow). We can refactor if we need direct-access to C FFI in the
future.

*The first PR intends to setup a C++ directory structure and convention
instead of fixing to use cxx.*

cc @royguo

---------

Signed-off-by: Xinyu Zeng <xinyuzeng@tencent.com>
Co-authored-by: Robert Kruszewski <github@robertk.io>

9 of 29 new or added lines in 2 files covered. (31.03%)

42135 of 51682 relevant lines covered (81.53%)

171177.02 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
20
70.8
-5.65% vortex-scan/src/lib.rs
Jobs
ID Job ID Ran Files Coverage
1 run-tpc-h - 16370902322.1 18 Jul 2025 12:50PM UTC 548
48.93
GitHub Action Run
2 run-tests - 16370902322.2 18 Jul 2025 12:51PM UTC 585
78.76
GitHub Action Run
Source Files on build 16370902322
  • Tree
  • List 585
  • Changed 6
  • Source Changed 2
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #16370902322
  • d5e08e71 on github
  • Prev Build on develop (#16370684487)
  • Next Build on develop (#16371313344)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc