-
Notifications
You must be signed in to change notification settings - Fork 915
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
Remove Arrow dependency from the datasource.hpp
public header
#13698
Remove Arrow dependency from the datasource.hpp
public header
#13698
Conversation
…impr-separate-arrow-source
Adds the `cudf::io::datasource` source (header) to the doxygen IO Data Sources group/modules: https://docs.rapids.ai/api/libcudf/stable/group__io__datasources.html Found while working #13698 Also created a Data Sinks group and added the `cudf::io::data_sink` source to it. Authors: - David Wendt (https://github.com/davidwendt) Approvers: - Bradley Dice (https://github.com/bdice) - Vukasin Milovanovic (https://github.com/vuule) URL: #13718
Will re-target for 23.10 once changes are done; this one is not worth the risk to merge late into the release cycle. |
…impr-separate-arrow-source
…impr-separate-arrow-source
datasource.hpp
public headerdatasource.hpp
public header
Thanks @vuule ! LGTM |
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.
Approving ops-codeowner
file changes
@@ -11,5 +11,5 @@ cdef extern from "cudf/io/arrow_io_source.hpp" \ | |||
namespace "cudf::io" nogil: | |||
|
|||
cdef cppclass arrow_io_source(cudf_io_datasource.datasource): | |||
arrow_io_source(string arrow_uri) except + | |||
arrow_io_source(const string& arrow_uri) except + |
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.
east const.
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.
For some reason I only see "const string" in pxd files so I kept this consistent with other instances. I'm not sure if our east const guideline reached Cython.
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.
Cython doesn't support east const.
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.
Just one small software engineering comment. LGTM
* | ||
* @param arrow_uri Apache Arrow Filesystem URI | ||
*/ | ||
explicit arrow_io_source(std::string const& arrow_uri) |
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.
Same to all other member functions. Maybe considering separating class declaration from definition
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 want to keep this class separate from libcudf, but we don't have to take that route.
@davidwendt thoughts on keeping the implementation in libcudf?
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'm not sure I understand what you mean by keeping this separate from libcudf.
I think Yunsong means moves the implementation to cpp/src/io/arrow_io_source.cpp
and keep only the declarations in this header file. I agree with that approach.
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 meant that I will need to compile cpp/src/io/arrow_io_source.cpp as part of libcudf. Not an issue, just different from what I imagined in the beginning.
…impr-separate-arrow-source
…/cudf into impr-separate-arrow-source
/merge |
Description
Remove arrow dependency from
datasource.hpp
.Breaking only because users of
arrow_io_source
now need to include the newarrow_io_source.hpp
header instead ondatasource.hpp
Checklist