Skip to content

azure_messaging_eventhubs should allow users to use rustls instead of native-tls #2796

@georgeh0

Description

@georgeh0

Feature Summary

Currently, the azure_messaging_eventhubs requires native-tls (OpenSSL) for TLS connections. This creates significant friction for cross-platform Rust applications and libraries.

Feature Description

Summary:
Currently, the azure_messaging_eventhubs requires native-tls (OpenSSL) for TLS connections. This dependency is introduced by: azure_messaging_eventhubs -> azure_core_amqp -> fe2o3-amqp -> native-tls. fe2o3-amqp is configured as part of the workspace dependency here, and users have no way to remove it, as it's not guarded by a feature. This creates significant friction for cross-platform Rust applications and libraries. Many Rust projects—including ours—use rustls for TLS because it is pure Rust, easier to build, and more portable (especially for static builds, containerized deployments, and platforms where OpenSSL is problematic).

Request:
Please add support for using rustls as a TLS backend, controlled by a Cargo feature flag (e.g., rustls-tls, following the convention of crates like reqwest and hyper). This will allow users to choose their preferred TLS implementation and greatly improve the ease of building and distributing Rust applications that integrate with Azure services.

You can still by default enable the native-tls feature, so existing clients won't break, but allow users turn off defaults and enable rustls instead.

Benefits:

  • Better cross-platform compatibility (especially for Windows, Mac, and minimal Linux containers)
  • Simplified dependency management and deployment (no external C libraries)
  • Aligns with modern Rust ecosystem practices

Thank you for considering this feature—it would be a major improvement for Rust users integrating with Azure event hubs!

Use Case

No response

Alternatives

No response

Additional Context

No response

Metadata

Metadata

Assignees

Labels

Event Hubsblocking-releaseBlocks releasecustomer-reportedIssues that are reported by GitHub users external to the Azure organization.feature-requestThis issue requires a new behavior in the product in order be resolved.needs-team-attentionWorkflow: This issue needs attention from Azure service team or SDK team

Projects

Status

Not Started

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions