feat(binding/c): Add support for logging and other layers.
- Dominant language
- Rust
- Stars
- 5.4k
- Forks
- 825
- Avg merge
- 1d 14m
- Merged PRs (30d)
- 127
Description
I am trying to integrate C binding into our project and encountered some errors. The error message only contains an error code, so I cannot determine the specific cause of the error. After using some hacky methods, I found the reason for the error, but it is not very user-friendly for developers.
There are many layers in opendal core, including logging, but C binding cannot use these layers yet. I hope to add support for them.
In addition, there are no dependencies on log and env-logging in c binding's cargo. After adding these dependencies, logging can be printed correctly. I hope that c binding can add a method like "opendal_init_logger" to allow users to adjust the logging settings.
Contributor guide
Research direction
The issue names the C binding and its Cargo dependencies, but no file or test; start by tracing how the C binding configures OpenDAL core layers and how logging dependencies are declared. Define the supported layer and logging initialization behavior, including an opendal_init_logger-style entry point, and verify that C callers can adjust settings and receive useful logs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, rust
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100