opendal icon indicating copy to clipboard operation
opendal copied to clipboard

Tracking issues of cpp binding

Open silver-ymz opened this issue 2 years ago • 6 comments

Tasks

  • [x] Introducing new cpp binding #2980
  • [x] Add Contribution docs #2984
  • [x] Add API documents #2988
  • [x] Add CI jobs on building and testing #2998
  • [x] Support more operations
    • #3001
    • #3004
    • #3011
  • [x] Release first version
  • [x] https://github.com/apache/opendal/issues/5194
  • [ ] Add layer supports

silver-ymz avatar Aug 31 '23 02:08 silver-ymz

I am excited about the upcoming iostream and async support. I anticipate being able to utilize cpp binding in critical projects such as clickhouse, doris, and nebula (cc @wey-gu).

Xuanwo avatar Aug 31 '23 02:08 Xuanwo

cpp binding now uses some unreleased API in v0.39, e.g. list and lister. Should we pin the version of opendal to 0.39 in cpp binding, make the first release and then revert back to current implementation?

silver-ymz avatar Sep 11 '23 07:09 silver-ymz

Should we pin the version of opendal to 0.39 in cpp binding, make the first release and then revert back to current implementation?

No, we will release all projects under opendal at the same version.

Xuanwo avatar Sep 11 '23 08:09 Xuanwo

By the way, when you mention releasing the cpp binding, what exactly do you mean? Are you referring to packaging our cpp binding and making it available in a registry?

Xuanwo avatar Sep 11 '23 08:09 Xuanwo

By the way, when you mention releasing the cpp binding, what exactly do you mean?

Because CMakeLists.txt isn't in the root directory of project, we need to use cargo package to create a opendal-cpp.tar.gz individually in github release assets. This allows our users to import directly via cmake FetchContent without having to download and write additional cmake scripts.

Are you referring to packaging our cpp binding and making it available in a registry?

Cpp seems to have no central registers. About integrating with other popular package management like conan, vcpkg, we can complete it in the future.

silver-ymz avatar Sep 11 '23 08:09 silver-ymz

This allows our users to import directly via cmake FetchContent without having to download and write additional cmake scripts.

Got it.

Cpp seems to have no central registers. About integrating with other popular package management like conan, vcpkg, we can complete it in the future.

LGTM.


Please be aware that in ASF, release is a crucial matter and all our releases must undergo the voting process. So we can't simply tag a v0.1 for cpp binding and put them in github assets.

To reduce the burden of our release mangaers, it's better to tag the same version for all our projects and release them after the voting.

Our next release windows is opendal v0.40 which expected to happen this week.

Xuanwo avatar Sep 11 '23 08:09 Xuanwo