Azure SDK for Rust (September 2025)
The Azure SDK team is pleased to announce our September 2025 client library releases.
15 packages released this month.
Beta Packages (15)
-
Core
-
Core - AMQP
-
Core - Macros
-
Core - OpenTelemetry
-
Cosmos DB
-
Event Hubs
-
EventHubs Checkpoint Store for Azure Blob Storage
-
Identity
-
Key Vault - Certificates
-
Key Vault - Keys
-
Key Vault - Secrets
-
Storage - Blobs
-
TypeSpec Client Core
-
TypeSpec Core
-
TypeSpec Core Macros
Release highlights
Core 0.28.0 Changelog
Breaking Changes
- Added a lifetime parameter to
TokenRequestOptions
. - Added the ability to configure pipeline configuration independently from
ClientOptions
. This adds a new optionalPipelineOptions
parameter toazure_core::http::Pipeline::new()
. If not specified, it defaults to the expected options forazure_core
services. - Changed
FromStr for RequestContent<T, F>
toRequestContent::from_str()
. - Changed
TryFrom<&'static str> for RequestContent<T, F>
toRequestContent::from_static()
. - Changed
TryFrom<Bytes> for RequestContent<T, F>
toFrom<Bytes> for RequestContent<T, F>
because it was already infallible. - Removed
TryFrom<Vec<u8>> for RequestContent<T, F>
sinceRequestContent::from()
already exists. - Removed feature
reqwest_rustls_tls
. See README.md for alternative HTTP client configuration. - Removed the
fs
module including theFileStream
andFileStreamBuilder
types. Moved toexamples/
fortypespec_client_core
to copy if needed. - Removed the
setters
macro. - Renamed
RawResponse
toBufResponse
. NewRawResponse
contains complete body asBytes
used inErrorKind::HttpResponse
.
Features Added
- Added
RawResponse
toErrorKind::HttpResponse
that contains the HTTP status code, headers, and complete error response body. - Added
RequestContent::from_slice()
. - Added
TokenRequestOptions { method_options: ClientMethodOptions }
. - Added
TryFrom<T> for RequestContent<T, JsonFormat>
for JSON primitives. - Added support for WASM to the
async_runtime
module. - Added logging policy to log HTTP requests and responses in the pipeline. As a part of this change, sanitization support was added to places which log HTTP headers and URLs. The
azure_core::http::ClientOptions
has been enhanced with aLoggingOptions
which allows a user/service client to specify headers or URL query parameters which should be allowed. Note that the sanitization feature is disabled if you build with thedebug
feature enabled. - Added support for a new
azure_core::error::http::ErrorResponse
structure which describes an error according to the Azure REST API guidelines. - Added a new
azure_core::http::check_success(BufResponse)
function to convert a buffered response to anErrorKind::HttpResponse
.
Core - AMQP 0.7.0 Changelog
Breaking Changes
- Distinguish remote disconnect and remote closed errors by origin
Core - Macros 0.2.0 Changelog
Other Changes
- Updated dependencies.
Core - OpenTelemetry 0.2.0 Changelog
Other Changes
- Updated dependencies.
Cosmos DB 0.27.0 Changelog
Other Changes
- Updated Core SDK dependencies
Event Hubs 0.7.0 Changelog
Breaking Changes
ProducerClient::send_batch
now consumes itsbatch
argument.RetryOptions::max_retries
is au32
not ausize
.
Features Added
- Reconnect support for EventHubs operations.
- Enable Geo Replication support in Event Hubs consumers and producers.
EventHubs Checkpoint Store for Azure Blob Storage 0.1.0 Changelog
Features Added
- Initial Release
Identity 0.28.0 Changelog
Features Added
- Credentials retry HTTP requests by default.
Breaking Changes
- Removed all
ClientCertificateCredentialOptions
methods - Removed
TokenCredentialOptions
. HTTP client options are now set onClientOptions
. Credentials which formerly got an authority host from this type now get it from anauthority_host
field in their own options type. - Replaced
DefaultAzureCredential
withDeveloperToolsCredential
. This new type is excluded from WASM32 builds because it can’t authenticate in a WASM runtime environment; however, neither couldDefaultAzureCredential
, which wasn’t properly excluded.
Bugs Fixed
Key Vault - Certificates 0.6.0 Changelog
Features Added
- Updated to latest version of fixes for the “7.6” specification after TypeSpec migration.
Breaking Changes
- Moved certificate version parameters to client method options.
Key Vault - Keys 0.7.0 Changelog
Features Added
- Updated to latest version of fixes for the “7.6” specification after TypeSpec migration.
Breaking Changes
- Moved key version parameters to client method options.
Key Vault - Secrets 0.7.0 Changelog
Features Added
- Updated to latest version of fixes for the “7.6” specification after TypeSpec migration.
Breaking Changes
- Moved secret version parameters to client method options.
Storage - Blobs 0.5.0 Changelog
Features Added
- Added support for
set_properties
toBlobServiceClient
. - Added support for
filter_blobs
toBlobContainerClient
andBlobServiceClient
. - Added support for
set_tags
andget_tags
toBlobClient
. - Added support for
get_account_info
toBlobClient
,BlobContainerClient
, andBlobServiceClient
. - Added support for
upload_blob_from_url
toBlockBlobClient
. - Added support for
get_page_ranges
,update_sequence_number
, andupload_pages_from_url
toPageBlobClient
. - Added support for
find_blobs_by_tags
toBlobContainerClient
andBlobServiceClient
.
Breaking Changes
- Made
metadata
a required parameter forset_metadata
forBlobContainerClient
andBlobClient
.
TypeSpec Client Core 0.7.0 Changelog
Breaking Changes
- Added pipeline configuration options (
PipelineOptions
) totypespec_client_core::http::Pipeline::new()
to enable customization of the options for an HTTP pipeline. - Changed
FromStr for RequestContent<T, F>
toRequestContent::from_str()
. - Changed
TryFrom<&'static str> for RequestContent<T, F>
toRequestContent::from_static()
. - Changed
TryFrom<Bytes> for RequestContent<T, F>
toFrom<Bytes> for RequestContent<T, F>
because it was already infallible. - Removed
TryFrom<Vec<u8>> for RequestContent<T, F>
sinceRequestContent::from()
already exists. - Removed feature
reqwest_rustls_tls
. See README.md for alternative HTTP client configuration. - Removed the
fs
module including theFileStream
andFileStreamBuilder
types. Moved toexamples/
to copy if needed. - Removed the
setters
macro. - Removed the cloud service specific retry headers from typespec_client_core.
- Renamed
RawResponse
toBufResponse
. NewRawResponse
contains complete body asBytes
used inErrorKind::HttpResponse
. - Removed HttpError type from typespec_client_core because it is an azure_core construct.
Features Added
- Added
RequestContent::from_slice()
. - Added
TryFrom<T> for RequestContent<T, JsonFormat>
for JSON primitives. - Added support for WASM to the
async_runtime
module.
TypeSpec Core 0.8.0 Changelog
Features Added
- Added
Bytes
(moved fromtypespec_client_core
). - Added
HeaderName::is_standard()
. - Added
json
module if thejson
feature is enabled (moved fromtypespec_client_core
). - Added
RawResponse
toErrorKind::HttpResponse
that contains the HTTP status code, headers, and complete error response body. - Added
xml
feature. - Added
xml
module if thexml
feature is enabled (moved fromtypespec_client_core
).
TypeSpec Core Macros 0.7.0 Changelog
Other Changes
- Updated dependencies.
Latest Releases
View all the latest versions of Rust crates here.
Installation Instructions
To install any of our crates, copy and paste the following commands into a terminal:
$> cargo add azure_core@0.28.0
$> cargo add azure_core_amqp@0.7.0
$> cargo add azure_core_macros@0.2.0
$> cargo add azure_core_opentelemetry@0.2.0
$> cargo add azure_data_cosmos@0.27.0
$> cargo add azure_identity@0.28.0
$> cargo add azure_messaging_eventhubs@0.7.0
$> cargo add azure_messaging_eventhubs_checkpointstore_blob@0.1.0
$> cargo add azure_security_keyvault_certificates@0.6.0
$> cargo add azure_security_keyvault_keys@0.7.0
$> cargo add azure_security_keyvault_secrets@0.7.0
$> cargo add azure_storage_blob@0.5.0
$> cargo add typespec@0.8.0
$> cargo add typespec_client_core@0.7.0
$> cargo add typespec_macros@0.7.0
Feedback
If you have a bug or feature request for one of the libraries, please post an issue to GitHub.