Skip to content
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

Evaluate removing curl dependency for Apple platform - Adding support for CFNetwork API #1146

Open
lalitb opened this issue Dec 16, 2021 · 1 comment
Labels
do-not-stale good first issue Good for newcomers help wanted Good for taking. Extra help will be provided by maintainers

Comments

@lalitb
Copy link
Member

lalitb commented Dec 16, 2021

Apple comes with CFNetwork API to enable applications to interact with FTP and HTTP protocols to access Internet resources. This means it doesn't explicitly need to use curl as an HTTP client library.

otel-cpp is designed to plugin any external client library by extending abstract classes defined in the ext::http::client namespace.
And HttpClientFactory factory is responsible to pick up the correct library based on the platform it is running.

CURL implementation is available here: https://github.com/open-telemetry/opentelemetry-cpp/tree/main/ext/include/opentelemetry/ext/http/client/curl
Similar implementation needs to be provided to support CFNetwork API.

This issue is created to evaluate whether CFNetwork can be supported, and probably raise another issue for the implementation.

@lalitb lalitb added do-not-stale good first issue Good for newcomers help wanted Good for taking. Extra help will be provided by maintainers labels Dec 16, 2021
@lalitb lalitb mentioned this issue Feb 11, 2022
3 tasks
@github-actions
Copy link

This issue was marked as stale due to lack of activity. It will be closed in 7 days if no furthur activity occurs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
do-not-stale good first issue Good for newcomers help wanted Good for taking. Extra help will be provided by maintainers
Projects
None yet
Development

No branches or pull requests

1 participant