feat(bindings/cpp): enable user-configurable features for storage services#6503
Merged
asukaminato0721 merged 34 commits intoapache:mainfrom Aug 14, 2025
Merged
Conversation
Remove hardcoded service dependencies to enable user-configurable features. Only keep 'blocking' feature as it's required for C++ bindings. Related to apache#6250
Contributor
Author
Contributor
|
refer to here |
Contributor
|
opendal/.github/actions/test_behavior_binding_cpp/action.yaml Lines 47 to 53 in 542df66 Maybe you need to add the feature config here. |
Contributor
can't understand... |
Contributor
|
monoiofs |
Alluxio doesn't support file overwrite without explicit overwrite option. Related to apache#6250
Alluxio doesn't support file overwrite without explicit overwrite option. Related to apache#6250
Alluxio doesn't support file overwrite without explicit overwrite option. Related to apache#6250
Alluxio doesn't support file overwrite without explicit overwrite option. Related to apache#6250
Alluxio has different list behavior that includes unexpected paths. Related to apache#6250
Alluxio has different list behavior that includes unexpected paths. Related to apache#6250
Alluxio has different list behavior that includes unexpected paths. Related to apache#6250
Alluxio has different list behavior that includes unexpected paths. Related to apache#6250
Alluxio has different list behavior that includes unexpected paths. Related to apache#6250
Alluxio has different list behavior that includes unexpected paths. Related to apache#6250
efb120e to
6129ffd
Compare
Contributor
|
seems only memory leak now. |
1 task
Member
Thank you for the work, I think we can disable cpp test on those two services for now. |
Xuanwo
reviewed
Aug 14, 2025
Member
Xuanwo
left a comment
There was a problem hiding this comment.
Overall LGTM, thank you for your work!
…ation test Related to apache#6250
…gFile test Related to apache#6250
…ior test Related to apache#6250
…rFile test Related to apache#6250
dce280e to
ae941db
Compare
asukaminato0721
approved these changes
Aug 14, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Which issue does this PR close?
Closes #6250.
Rationale for this change
Currently, the C++ binding hardcodes all storage service features in
Cargo.toml, which means:This PR implements user-configurable features similar to the C binding (#4313), allowing users to specify only the storage services they need at build time.
What changes are included in this PR?
bindings/cpp/Cargo.toml: Removed hardcoded service dependencies, keeping only the essentialblockingfeaturebindings/cpp/CMakeLists.txt:FEATUREScache variable for user configurationOPENDAL_ENABLE_ASYNCoptionAre there any user-facing changes?
FEATURES- allows users to specify which OpenDAL storage services to includeOPENDAL_ENABLE_ASYNCcontinues to work unchanged-DFEATURES="service1,service2"to their cmake commands to include storage services