-
Notifications
You must be signed in to change notification settings - Fork 184
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Convert C API interface functions to CAPI_INTERFACE #4460
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I pulled this locally to give it a whirl and found a few minor issues that are tagged with comments.
The only other thing I see is that we're also not wrapping the APIs defined in tiledb_filestore.cc
which isn't a huge issue but it seems like an oversight.
Handling unwrapped functions gracefully took a bit of extra thinking but it turned out easy enough to filter them out in the end.
Whoops, I should have also mentioned that with those minor issues fixed this all works great so +1 soon as we fix those few issues. |
Hooray! I've managed to get logging with arguments working locally. Here's the code: Here's the sample output: https://gist.github.com/davisp/b7a457b8ae640c4f3dc6f0e9c375fe9e (edited to update the commit sha to something with fewer includes) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1. Example logging commit compiles and runs fine with the new APIs logged.
One minor issue I noticed, having a capi_function_override.h
header on the include path breaks the CAPI unit test builds due to the conflicting test provided capi_function_override.h
. I don't think its a huge issue (tiledb_unit still works fine) but we'll likely want to figure out how to make that test a no-op when building with an external capi_function_override.h
available.
828b67e
to
4d90f36
Compare
Convert C API interface functions to use `CAPI_INTERFACE`. This completes the work in #4430. There are a very small number of functions not converted. One is not in the C API (i.e. it doesn't have `extern "C"` linkage), but is used by the C++ API, and on top of that it's for a deprecated operation. The others are small, informational functions that do return values directly and do not use `capi_return_t`. --- TYPE: NO_HISTORY DESC: Convert C API interface functions to CAPI_INTERFACE (cherry picked from commit aede0f1)
…ERFACE (#4471) Backport aede0f1~5..aede0f1 from #4460. --------- Co-authored-by: Theodore Tsirpanis <[email protected]> Co-authored-by: Abigale Kim <[email protected]> Co-authored-by: Robert Bindar <[email protected]> Co-authored-by: eric-hughes-tiledb <[email protected]>
Convert C API interface functions to use
CAPI_INTERFACE
. This completes the work in #4430.There are a very small number of functions not converted. One is not in the C API (i.e. it doesn't have
extern "C"
linkage), but is used by the C++ API, and on top of that it's for a deprecated operation. The others are small, informational functions that do return values directly and do not usecapi_return_t
.TYPE: NO_HISTORY
DESC: Convert C API interface functions to CAPI_INTERFACE