Azure SDK for Rust (April 2026)
The Azure SDK team is pleased to announce our April 2026 client library releases.
13 packages released this month.
Beta Packages (13)
-
Core
-
Core - AMQP
-
Core - Macros
-
Core - OpenTelemetry
-
Cosmos DB
-
Identity
-
Key Vault - Certificates
-
Key Vault - Keys
-
Key Vault - Secrets
-
Storage - Blobs
-
TypeSpec Client Core
-
TypeSpec Core
-
TypeSpec Core Macros
Release highlights
Core 0.34.0 Changelog
Features Added
- Added
From<BytesStream> for Body. - Derived
CloneandSerializeonErrorResponse,ErrorDetail, andInnerError.
Breaking Changes
SeekableStream::len()andBody::len()now returnOption<u64>instead ofusizeto support streams with unknown length and to align withstd::fs::Metadata::len()for large file sizes.SeekableStream::is_empty()andBody::is_empty()now returnOption<bool>.- Added
tokiofeature todefaultfeatures. - Changed
async_runtime::spawn/SpawnedTaskto return a trait object that supportsabort().
Core - AMQP 0.13.0 Changelog
Other Changes
- Updated dependencies.
Core - Macros 0.8.0 Changelog
Other Changes
- Updated dependencies.
Core - OpenTelemetry 0.8.0 Changelog
Other Changes
- Updated dependencies.
Cosmos DB 0.32.0 Changelog
Features Added
- Added
CosmosClientBuilder::with_proxy_allowed(bool)for explicit opt-in to HTTP proxy usage with documented support limitations. (#4062) - Added
CustomResponseBuilderandFaultInjectionRule::hit_count()APIs for fault injection, enabling ergonomic construction of synthetic HTTP responses and test verification of rule activation counts. (#3888)
Bugs Fixed
- Fixes Circuit Breaker Failover Logic for Multi-Master Writes on 403/3. (#3861)
- Fixed partition key range fetch using mixed name/RID addressing, which caused 404 errors on certain operations. (#4047)
Breaking Changes
- HTTP proxies (
HTTPS_PROXY,HTTP_PROXY,ALL_PROXYenvironment variables) are now ignored by default. UseCosmosClientBuilder::with_proxy_allowed(true)to opt in. (#4062) - Client methods now return dedicated response types instead of
CosmosResponse<T>:ItemResponse<T>for point operations,ResourceResponse<T>for resource management,BatchResponsefor transactional batch, andQueryFeedPage<T>for query pages.etag()returnsOption<&Etag>instead ofOption<&str>, andactivity_id()/server_duration_ms()are accessed viaresponse.diagnostics(). (#3960) FeedPage::deconstruct()has been removed. Useinto_items(),continuation(),headers(), anddiagnostics()instead. (#3960)- Replaced
CosmosClientBuilder::with_application_region()with a mandatoryRoutingStrategyparameter onbuild(). UseRoutingStrategy::ProximityTo(region)to specify the application region. Also removedCosmosClientOptions::with_application_region(). (#3889) - Changed
default_ttlandanalytical_storage_ttlfields onContainerPropertiesfromOption<Duration>toTimeToLive, a new enum with variantsForever,NoDefault, andSeconds(u32), to correctly handle the-1wire value (TTL enabled with no default expiration). DatabaseClient::container_client()now returnsazure_core::Result<ContainerClient>, eagerly resolving container metadata (RID, partition key definition) at construction time. (#4005)PartitionKeyDefinitionfields (paths,kind,version) are now private; use accessor methodspaths(),kind(), andversion()instead.PartitionKeyKindchanged from a string newtype to an enum with variantsHash,MultiHash, andRange.PartitionKeyVersionis now an enum (V1,V2) instead ofOption<i32>. (#4005)- Replaced
ItemOptionswithItemReadOptions(forread_item) andItemWriteOptions(forcreate_item,replace_item,upsert_item,delete_item).QueryOptionsandBatchOptionsnow also embedOperationOptionsfor general-purpose settings like custom headers, excluded regions, and content response behavior. Replaced per-operationwith_custom_headersandwith_content_response_on_write_enabledhelpers withwith_operation_options. RemovedCosmosClientOptions::with_custom_headers(). (#4059) - Replaced
SessionToken,RegionName, ETag-based conditional fields, content response, and excluded regions types with driver-aligned equivalents:SessionToken(nowCow<'static, str>),Region(useRegion::EAST_USinstead ofregions::EAST_US),precondition: Option<Precondition>(replacingif_match_etag/if_match/if_none_match),OperationOptions::content_response_on_write: Option<ContentResponseOnWrite>(replacingcontent_response_on_write_enabled: bool), andOperationOptions::excluded_regions: Option<ExcludedRegions>. (#4059)
Identity 0.34.0 Changelog
Other Changes
- Upgraded dependencies
Key Vault - Certificates 0.12.0 Changelog
Other Changes
- Updated dependencies.
Key Vault - Keys 0.13.0 Changelog
Other Changes
- Updated dependencies.
Key Vault - Secrets 0.13.0 Changelog
Other Changes
- Updated dependencies.
Storage - Blobs 0.10.1 Changelog
Bugs Fixed
BlobClient::managed_download()andBlobClientManagedDownloadOptionswere unintentionally exported in 0.10.0. The method now panics unconditionally; this API will be removed in a future release.- Updated minimum dependency versions to incorporate a fix for TLS 1.3 data corruption on Windows when uploading large payloads (schannel-rs#121).
TypeSpec Client Core 0.13.0 Changelog
Features Added
- Added
From<BytesStream> for Body.
Breaking Changes
SeekableStream::len()andBody::len()now returnOption<u64>instead ofusizeto support streams with unknown length and to align withstd::fs::Metadata::len()for large file sizes.SeekableStream::is_empty()andBody::is_empty()now returnOption<bool>.- Added
tokiofeature todefaultfeatures. - Changed
async_runtime::spawnto return aSpawnedTasktrait (supportsabort()) instead of a raw future.
TypeSpec Core 0.14.0 Changelog
Other Changes
- Updated dependencies.
TypeSpec Core Macros 0.13.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.34.0
$> cargo add azure_core_amqp@0.13.0
$> cargo add azure_core_macros@0.8.0
$> cargo add azure_core_opentelemetry@0.8.0
$> cargo add azure_data_cosmos@0.32.0
$> cargo add azure_identity@0.34.0
$> cargo add azure_security_keyvault_certificates@0.12.0
$> cargo add azure_security_keyvault_keys@0.13.0
$> cargo add azure_security_keyvault_secrets@0.13.0
$> cargo add azure_storage_blob@0.10.1
$> cargo add typespec@0.14.0
$> cargo add typespec_client_core@0.13.0
$> cargo add typespec_macros@0.13.0
Feedback
If you have a bug or feature request for one of the libraries, please post an issue to GitHub.