The Azure SDK team is pleased to announce our November 2023 client library releases.

62 packages released this month.

Stable Packages (22)

  • App Configuration

  • Core - Client - Core

  • Event Grid

  • Event Hubs

  • Event Hubs - Event Processor

  • Identity Broker

  • Resource Management - Cognitive Search

  • Resource Management - Desktop Virtualization

  • Resource Management - Kusto

  • Resource Management - Mobile Network

  • Resource Management - NetApp Files

  • Resource Management - Peering

  • Resource Management - Resource Manager

  • Resource Management - Service Networking

  • Resource Management - Storage Mover

  • Secrets Configuration Provider for .NET

  • Storage - Blobs

  • Storage - Blobs Batch

  • Storage - Common

  • Storage - Files Data Lake

  • Storage - Files Share

  • Storage - Queues

Patch Updates (5)

  • Azure client library integration for ASP.NET Core

  • Identity

  • Monitor Ingestion

  • Resource Management - NetApp Files

  • WebJobs Extensions - Service Bus

Beta Packages (28)

  • Dev Center

  • Identity Broker

  • Key Vault - Administration

  • Key Vault - Certificates

  • Key Vault - Keys

  • Key Vault - Secrets

  • Monitor Query

  • OpenAI Inference

  • Resource Management - Container Service Fleet

  • Resource Management - Cosmos DB

  • Resource Management - ElasticSan

  • Resource Management - Hardware Security Modules

  • Resource Management - Hybrid Compute

  • Resource Management - HybridNetwork

  • Resource Management - Maintenance

  • Resource Management - MySQL

  • Resource Management - NetworkAnalytics

  • Resource Management - Resource Health

  • Resource Management - Self Help

  • Resource Management - Support

  • Storage - Blobs

  • Storage - Blobs Batch

  • Storage - Blobs ChangeFeed

  • Storage - Common

  • Storage - Files Data Lake

  • Storage - Files Share

  • Storage - Queues

  • Synapse - Artifacts

Release highlights

App Configuration 1.3.0 Changelog

Features Added

  • Added configuration settings snapshot feature which allow users to create a point-in-time snapshot of their configuration store.

Azure client library integration for ASP.NET Core 1.7.1 Changelog

Other Changes

  • Updated dependency Azure.Identity to version 1.10.3.

Core - Client - Core 1.36.0 Changelog

Breaking Changes

  • Updated tracing attributes names to conform to OpenTelemetry semantic conventions version 1.23.0.
  • Suppress client activity creation by Azure clients if it happens in scope of another activity created by an Azure client.
  • Changed how ActivitySource name is constructed for clients that use single-worded activity names (without dot). We now append provided activity name as is to the client namespace name. Previously, the provided activity name was omitted and the ActivitySource name matched the provided client namespace.
  • Distributed tracing with ActivitySource for HTTP and REST-based client libraries is declared stable. Experimental feature-flag is no longer required for most of the newly released libraries. Tracing for messaging libraries remains experimental.
  • Added nullable annotation to ResourceIdentifier.TryParse parameter input.

Features Added

  • Added RequiresUnreferencedCode attribute to RequestContent.Create(object) overloads that use reflection to serialize the input object. This provides support for native AOT compilation when Azure.Core is used for diagnostics.
  • Use System.Text.Json source generation to deserialize the error response in RequestFailedException on net6.0 and above targets.

Dev Center 1.0.0-beta.3 Changelog

Breaking Changes

  • EnvironmentsClient renamed to DeploymentEnvironmentsClient
  • DevBoxesClient and DeploymentEnvironmentsClient no longer accepts project as a constructor parameter
  • DeploymentEnvironmentsClient now works with “environment definitions” instead of “catalog items”
  • Creating a new environment requires passing environmentDefinitionName instead of catalogItemName
  • Creating a new environment requires passing an additional parameter catalogName
  • DevCenterClientOptions renamed to AzureDeveloperDevCenterClientOptions
  • No more default parameters in the clients. userId, filter, maxCount, hibernate and context parameters need to be specified in the methods.
  • GetAction renamed to GetDevBoxAction
  • GetActions renamed to GetDevBoxActions

Event Grid 4.20.0 Changelog

Bugs Fixed

  • Added several communication models into the correct namespace and hid the old ones.

Event Grid 4.21.0 Changelog

Features Added

  • Added new system events for Resource Notifications
  • Added the Metadata property to various Azure Communication Services events.

Event Hubs 5.10.0 Changelog

Bugs Fixed

  • Fixed a parameter type mismatch in ETW #7 (ReceiveComplete) which caused the duration argument of the operation to be interpreted as a Unicode string and fail to render properly in the formatted message.

Breaking Changes

  • Change ActivitySource name used to report message activity from Azure.Messaging.EventHubs.EventHubs to Azure.Messaging.EventHubs.Message and message Activity name from EventHubs.Message to Message.
  • Updated tracing attributes names to conform to OpenTelemetry semantic conventions version 1.23.0.

Event Hubs - Event Processor 5.10.0 Changelog

Breaking Changes

  • Change ActivitySource name used to report message activity from Azure.Messaging.EventHubs.EventHubs to Azure.Messaging.EventHubs.Message and message Activity name from EventHubs.Message to Message.
  • Updated tracing attributes names to conform to OpenTelemetry semantic conventions version 1.23.0.

Bugs Fixed

  • Fixed a parameter type mismatch in ETW #7 (ReceiveComplete) which caused the duration argument of the operation to be interpreted as a Unicode string and fail to render properly in the formatted message.

Identity 1.10.3 Changelog

Bugs Fixed

  • ManagedIdentityCredential will now correctly retry when the instance metadata endpoint returns a 410 response. #28568

Identity Broker 1.0.0-beta.5 Changelog

Breaking Changes

  • Renamed the IsMsaPassthroughEnabled property on InteractiveBrowserCredentialBrokerOptions to IsLegacyMsaPassthroughEnabled.

Identity Broker 1.0.0 Changelog

Breaking Changes

  • Renamed the IsMsaPassthroughEnabled property on SharedTokenCacheCredentialBrokerOptions to IsLegacyMsaPassthroughEnabled.

Key Vault - Administration 4.4.0-beta.1 Changelog

Features Added

  • The sasToken parameter is now optional in KeyVaultBackupClient.StartBackup and StartBackupAsync. Managed Identity will be used instead if sasToken is null.
  • The sasToken parameter is now optional in KeyVaultBackupClient.StartRestore and StartRestoreAsync. Managed Identity will be used instead if sasToken is null.
  • The sasToken parameter is now optional in KeyVaultBackupClient.StartSelectiveKeyRestore and StartSelectiveKeyRestoreAsync. Managed Identity will be used instead if sasToken is null.

Bugs Fixed

  • When a Key Vault is moved to another tenant, the client is reauthenticated.

Key Vault - Certificates 4.6.0-beta.1 Changelog

Features Added

  • Added CertificateProperties.X509ThumbprintString to return the hexadecimal string representation of the SHA-1 hash of the certificate. CertificateProperties.X509Thumbprint has been hidden but is still available.

Bugs Fixed

  • When a Key Vault is moved to another tenant, the client is reauthenticated.

Breaking Changes

  • Renamed tags reported on CertificateClient activities to following OpenTelemetry attribute naming conventions:
  • certificate to az.keyvault.certificate.name
  • version to az.keyvault.certificate.version
  • issuer to az.keyvault.certificate.issuer.name

Key Vault - Keys 4.6.0-beta.1 Changelog

Features Added

  • Added CryptographyClient.CreateRSA and CreateRSAAsync to create an RSA implementation backed by Key Vault or Managed HSM. Use this anywhere an RSA or AsymmetricAlgorithm is required. (#3545)
  • Added KeyProperties.HsmPlatform to get the underlying HSM platform.

Bugs Fixed

  • When a Key Vault is moved to another tenant, the client is reauthenticated.
  • KeyRotationPolicyAction performs case-insensitive comparisons since Key Vault and Managed HSM return different cases for “rotate”.

Breaking Changes

  • Renamed tags reported on KeyClient, KeyResolver, CryptographyClient, and RemoteCryptographyClient activities to follow OpenTelemetry attribute naming conventions:
  • key to az.keyvault.key.id or az.keyvault.key.name depending on the value being reported
  • version to az.keyvault.key.version

Key Vault - Secrets 4.6.0-beta.1 Changelog

Bugs Fixed

  • When a Key Vault is moved to another tenant, the client is reauthenticated.

Breaking Changes

  • Renamed tags reported on SecretClient activities to follow OpenTelemetry attribute naming conventions:
  • secret to az.keyvault.secret.name
  • version to az.keyvault.secret.version

Monitor Ingestion 1.1.1 Changelog

Features Added

  • Added documentation for using sovereign cloud

Monitor Query 1.3.0-beta.1 Changelog

Features Added

  • Added the MetricsBatchQueryClient client to support batch querying of metrics.
  • Added QueryBatch and QueryBatchAsync methods to MetricsBatchQueryClient

OpenAI Inference 1.0.0-beta.9 Changelog

Breaking Changes

This update includes a number of version-to-version breaking changes to the API.

Streaming for completions and chat completions

Streaming Completions and Streaming Chat Completions have been significantly updated to use simpler, shallower usage patterns and data representations. The goal of these changes is to make streaming much easier to consume in common cases while still retaining full functionality in more complex ones (e.g. with multiple choices requested).

  • A new StreamingResponse<T> type is introduced that implicitly exposes an IAsyncEnumerable<T> derived from the underlying response.
  • OpenAI.GetCompletionsStreaming() now returns a StreamingResponse<Completions> that may be directly enumerated over. StreamingCompletions, StreamingChoice, and the corresponding methods are removed.
  • Because Chat Completions use a distinct structure for their streaming response messages, a new StreamingChatCompletionsUpdate type is introduced that encapsulates this update data.
  • Correspondingly, OpenAI.GetChatCompletionsStreaming() now returns a StreamingResponse<StreamingChatCompletionsUpdate> that may be enumerated over directly. StreamingChatCompletions, StreamingChatChoice, and related methods are removed.
  • For more information, please see the related pull request description as well as the updated snippets in the project README.
deploymentOrModelName moved to *Options.DeploymentName

deploymentOrModelName and related method parameters on OpenAIClient have been moved to DeploymentName properties in the corresponding method options. This is intended to promote consistency across scenario, language, and Azure/non-Azure OpenAI use.

As an example, the following:

ChatCompletionsOptions chatCompletionsOptions = new()
{
Messages = { new(ChatRole.User, "Hello, assistant!") },
};
Response<ChatCompletions> response = client.GetChatCompletions("gpt-4", chatCompletionsOptions);

…is now re-written as:

ChatCompletionsOptions chatCompletionsOptions = new()
{
DeploymentName = "gpt-4",
Messages = { new(ChatRole.User, "Hello, assistant!") },
};
Response<ChatCompletions> response = client.GetChatCompletions(chatCompletionsOptions);
Consistency in complex method options type constructors

With the migration of DeploymentName into method complex options types, these options types have now been snapped to follow a common pattern: each complex options type will feature a default constructor that allows init-style setting of properties as well as a single additional constructor that accepts all required parameters for the corresponding method. Existing constructors that no longer meet that “all” requirement, including those impacted by the addition of DeploymentName, have been removed. The “convenience” constructors that represented required parameter data differently – for example, EmbeddingsOptions(string), have also been removed in favor of the consistent “set of directly provide” choice.

More exhaustively, removed are:

  • AudioTranscriptionOptions(BinaryData)
  • AudioTranslationOptions(BinaryData)
  • ChatCompletionsOptions(IEnumerable<ChatMessage>)
  • CompletionsOptions(IEnumerable<string>)
  • EmbeddingsOptions(string)
  • EmbeddingsOptions(IEnumerable<string>)

And added as replacements are:

  • AudioTranscriptionOptions(string, BinaryData)
  • AudioTranslationOptions(string, BinaryData)
  • ChatCompletionsOptions(string, IEnumerable<ChatMessage>)
  • CompletionsOptions(string, IEnumerable<string>)
  • EmbeddingsOptions(string, IEnumerable<string>)
Embeddings now represented as ReadOnlyMemory<float>

Changed the representation of embeddings (specifically, the type of the Embedding property of the EmbeddingItem class) from IReadOnlyList<float> to ReadOnlyMemory<float> as part of a broader effort to establish consistency across the .NET ecosystem.

SearchKey and EmbeddingKey properties replaced by SetSearchKey and SetEmbeddingKey methods

Replaced the SearchKey and EmbeddingKey properties of the AzureCognitiveSearchChatExtensionConfiguration class with new SetSearchKey and SetEmbeddingKey methods respectively. These methods simplify the configuration of the Azure Cognitive Search chat extension by receiving a plain string instead of an AzureKeyCredential, promote more sensible key and secret management, and align with the Azure SDK guidelines.

Resource Management - Cognitive Search 1.2.0 Changelog

Resource Management - Container Service Fleet 1.0.0-beta.3 Changelog

Resource Management - Cosmos DB 1.4.0-beta.4 Changelog

Resource Management - Desktop Virtualization 1.2.0 Changelog

Resource Management - ElasticSan 1.0.0-beta.5 Changelog

Resource Management - Hardware Security Modules 1.0.0-beta.1 Changelog

Resource Management - Hybrid Compute 1.0.0-beta.5 Changelog

Resource Management - HybridNetwork 1.0.0-beta.1 Changelog

Resource Management - Kusto 1.5.0 Changelog

Resource Management - Maintenance 1.2.0-beta.5 Changelog

Resource Management - Mobile Network 1.1.0 Changelog

Resource Management - MySQL 1.1.0-beta.3 Changelog

Resource Management - NetApp Files 1.4.0 Changelog

Resource Management - NetApp Files 1.4.1 Changelog

Resource Management - NetworkAnalytics 1.0.0-beta.1 Changelog

Resource Management - Peering 1.2.0 Changelog

Resource Management - Resource Health 1.1.0-beta.2 Changelog

Resource Management - Resource Manager 1.8.0 Changelog

Resource Management - Self Help 1.1.0-beta.1 Changelog

Resource Management - Service Networking 1.0.0 Changelog

Resource Management - Storage Mover 1.1.0 Changelog

Resource Management - Support 1.1.0-beta.2 Changelog

Secrets Configuration Provider for .NET 1.3.0 Changelog

Bugs Fixed

  • Corrected the parameter name in the ArgumentNullException that is thrown if a null options argument is passed to AddAzureKeyVault.

Features Added

  • Changed visibility of AzureKeyVaultConfigurationSource as public to allow for custom ordering of configuration sections when reading. (A community contribution, courtesy of jabberwik)

Storage - Blobs 12.19.0-beta.1 Changelog

  • Added support for service version 2023-11-03.
  • Added support for BlobClientOptions.Audience

Storage - Blobs 12.19.0 Changelog

  • Includes all features from 12.19.0-beta.1.

Storage - Blobs Batch 12.16.0-beta.1 Changelog

  • Added support for service version 2023-11-03.

Storage - Blobs Batch 12.16.0 Changelog

  • Includes all features from 12.16.0-beta.1.

Storage - Blobs ChangeFeed 12.0.0-preview.39 Changelog

  • Added support for service version 2023-11-03.

Storage - Blobs ChangeFeed 12.0.0-preview.40 Changelog

  • This release contains bug fixes to improve quality.

Storage - Common 12.18.0-beta.1 Changelog

  • This release contains bug fixes to improve quality.

Storage - Common 12.18.0 Changelog

  • Includes all features from 12.18.0-beta.1.

Storage - Files Data Lake 12.17.0-beta.1 Changelog

  • Added support for service version 2023-11-03.
  • Added support for DataLakeClientOptions.Audience

Storage - Files Data Lake 12.17.0 Changelog

  • Includes all features from 12.17.0-beta.1.

Storage - Files Share 12.17.0-beta.1 Changelog

  • Added support for service version 2023-11-03.
  • Added support for ShareClientOptions.Audience

Storage - Files Share 12.17.0 Changelog

  • Includes all features from 12.17.0-beta.1.
  • Fixed bug where the x-ms-file-request-intent request header was not being sent for ShareFileClient.UploadRangeFromUri() and .UploadRangeFromUriAsync().

Storage - Queues 12.17.0-beta.1 Changelog

  • Added support for QueueClientOptions.Audience

Storage - Queues 12.17.0 Changelog

  • Includes all features from 12.17.0-beta.1.

Synapse - Artifacts 1.0.0-preview.19 Changelog

  • Fix runNotebook sessionId from int to string
  • Fix placeholder links causing 404s
  • Sync expression Support From DataFactory To Synapse

WebJobs Extensions - Service Bus 5.13.1 Changelog

Bugs Fixed

  • Fixed the disposal pattern for cached Service Bus clients so that they are disposed only on host shutdown.

WebJobs Extensions - Service Bus 5.13.2 Changelog

Other Changes

  • Updated proto service definition to use StringValue rather than string for deadletter error reason and description.

WebJobs Extensions - Service Bus 5.13.3 Changelog

Bugs Fixed

  • Fixed issue where deadlettering a message without specifying properties to modify could throw an exception from out of proc extension.
  • Include underlying exception details in RpcException when a failure occurs.

WebJobs Extensions - Service Bus 5.13.4 Changelog

Other Changes

  • Bump dependency on Microsoft.Extensions.Azure to prevent transitive dependency on deprecated version of Azure. Identity.

Latest Releases

View all the latest versions of .NET packages here.

Installation Instructions

To install any of our packages, please search for them via Manage NuGet Packages... in Visual Studio (with Include prerelease checked) or copy these commands into your terminal:

$> dotnet add package Azure.AI.OpenAI --version 1.0.0-beta.9
$> dotnet add package Azure.Analytics.Synapse.Artifacts --version 1.0.0-preview.19
$> dotnet add package Azure.Core --version 1.36.0
$> dotnet add package Azure.Data.AppConfiguration --version 1.3.0
$> dotnet add package Azure.Developer.DevCenter --version 1.0.0-beta.3
$> dotnet add package Azure.Extensions.AspNetCore.Configuration.Secrets --version 1.3.0
$> dotnet add package Azure.Identity --version 1.10.3
$> dotnet add package Azure.Identity.Broker --version 1.0.0-beta.5
$> dotnet add package Azure.Identity.Broker --version 1.0.0
$> dotnet add package Azure.Messaging.EventGrid --version 4.20.0
$> dotnet add package Azure.Messaging.EventGrid --version 4.21.0
$> dotnet add package Azure.Messaging.EventHubs --version 5.10.0
$> dotnet add package Azure.Messaging.EventHubs.Processor --version 5.10.0
$> dotnet add package Azure.Monitor.Ingestion --version 1.1.1
$> dotnet add package Azure.Monitor.Query --version 1.3.0-beta.1
$> dotnet add package Azure.ResourceManager --version 1.8.0
$> dotnet add package Azure.ResourceManager.ContainerServiceFleet --version 1.0.0-beta.3
$> dotnet add package Azure.ResourceManager.CosmosDB --version 1.4.0-beta.4
$> dotnet add package Azure.ResourceManager.DesktopVirtualization --version 1.2.0
$> dotnet add package Azure.ResourceManager.ElasticSan --version 1.0.0-beta.5
$> dotnet add package Azure.ResourceManager.HardwareSecurityModules --version 1.0.0-beta.1
$> dotnet add package Azure.ResourceManager.HybridCompute --version 1.0.0-beta.5
$> dotnet add package Azure.ResourceManager.HybridNetwork --version 1.0.0-beta.1
$> dotnet add package Azure.ResourceManager.Kusto --version 1.5.0
$> dotnet add package Azure.ResourceManager.Maintenance --version 1.2.0-beta.5
$> dotnet add package Azure.ResourceManager.MobileNetwork --version 1.1.0
$> dotnet add package Azure.ResourceManager.MySql --version 1.1.0-beta.3
$> dotnet add package Azure.ResourceManager.NetApp --version 1.4.0
$> dotnet add package Azure.ResourceManager.NetApp --version 1.4.1
$> dotnet add package Azure.ResourceManager.NetworkAnalytics --version 1.0.0-beta.1
$> dotnet add package Azure.ResourceManager.Peering --version 1.2.0
$> dotnet add package Azure.ResourceManager.ResourceHealth --version 1.1.0-beta.2
$> dotnet add package Azure.ResourceManager.Search --version 1.2.0
$> dotnet add package Azure.ResourceManager.SelfHelp --version 1.1.0-beta.1
$> dotnet add package Azure.ResourceManager.ServiceNetworking --version 1.0.0
$> dotnet add package Azure.ResourceManager.StorageMover --version 1.1.0
$> dotnet add package Azure.ResourceManager.Support --version 1.1.0-beta.2
$> dotnet add package Azure.Security.KeyVault.Administration --version 4.4.0-beta.1
$> dotnet add package Azure.Security.KeyVault.Certificates --version 4.6.0-beta.1
$> dotnet add package Azure.Security.KeyVault.Keys --version 4.6.0-beta.1
$> dotnet add package Azure.Security.KeyVault.Secrets --version 4.6.0-beta.1
$> dotnet add package Azure.Storage.Blobs --version 12.19.0-beta.1
$> dotnet add package Azure.Storage.Blobs --version 12.19.0
$> dotnet add package Azure.Storage.Blobs.Batch --version 12.16.0-beta.1
$> dotnet add package Azure.Storage.Blobs.Batch --version 12.16.0
$> dotnet add package Azure.Storage.Blobs.ChangeFeed --version 12.0.0-preview.39
$> dotnet add package Azure.Storage.Blobs.ChangeFeed --version 12.0.0-preview.40
$> dotnet add package Azure.Storage.Common --version 12.18.0-beta.1
$> dotnet add package Azure.Storage.Common --version 12.18.0
$> dotnet add package Azure.Storage.Files.DataLake --version 12.17.0-beta.1
$> dotnet add package Azure.Storage.Files.DataLake --version 12.17.0
$> dotnet add package Azure.Storage.Files.Shares --version 12.17.0-beta.1
$> dotnet add package Azure.Storage.Files.Shares --version 12.17.0
$> dotnet add package Azure.Storage.Queues --version 12.17.0-beta.1
$> dotnet add package Azure.Storage.Queues --version 12.17.0
$> dotnet add package Microsoft.Azure.WebJobs.Extensions.ServiceBus --version 5.13.1
$> dotnet add package Microsoft.Azure.WebJobs.Extensions.ServiceBus --version 5.13.2
$> dotnet add package Microsoft.Azure.WebJobs.Extensions.ServiceBus --version 5.13.3
$> dotnet add package Microsoft.Azure.WebJobs.Extensions.ServiceBus --version 5.13.4
$> dotnet add package Microsoft.Extensions.Azure --version 1.7.1

Feedback

If you have a bug or feature request for one of the libraries, please file an issue in our repo.