The Azure SDK team is pleased to announce our July 2021 client library releases.

24 packages released this month.

Stable Packages (14)

  • App Configuration

  • Core

  • Core - AMQP

  • Event Grid

  • Event Hubs

  • Event Hubs - Event Processor

  • Key Vault - Administration

  • Key Vault - Certificates

  • Key Vault - Keys

  • Key Vault - Secrets

  • Metrics Advisor

  • Service Bus

  • Tables

  • Text Analytics

Patch Updates (2)

  • Service Bus

  • Storage - Blobs

Beta Packages (6)

  • CloudNative CloudEvents with Event Grid

  • Cognitive Search

  • Document Translation

  • Monitor Query

  • WebJobs Extensions - Event Hubs

  • WebJobs Extensions - Service Bus

Release highlights

App Configuration 1.1.0 Changelog

Breaking Changes

  • The GetConfigurationSettingAsync overload that takes an instance of MatchConditions temporary removed.

CloudNative CloudEvents with Event Grid 1.0.0-beta.2 Changelog

Features Added

  • Updated to use the GA version of CloudEvents SDK.

Cognitive Search 11.4.0-beta.1 Changelog

Features Added

Core 1.16.0 Changelog

Changed

  • Added TenantId to the properties on TokenRequestContext to enable multi-tenant support in Azure.Identity.

Core - AMQP 1.2.0 Changelog

Added

  • All section properties of the AmqpAnnotatedMessage are now lazily allocated to reflect that they are defined as optional in the AMQP specification, section 3.2.

  • The HasSection method has been added to AmqpAnnotatedMessage to allow inspecting the property for a section to determine if it is populated without triggering an allocation.

Core - AMQP 1.1.0 Changelog

Added

  • General availability for Sequence and Value body messages.

Document Translation 1.0.0-beta.3 Changelog

Breaking changes

  • Renamed property DocumentId to Idin DocumentStatusResult.
  • Renamed property TranslationId to Idin TranslationStatusResult
  • Renamed type TranslationStatusResult to TranslationStatus.
  • Renamed type DocumentStatusResult to DocumentStatus.
  • Renamed enum TranslationStatus to DocumentTranslationStatus.
  • Renamed method GetDocumentFormats to GetSupportedDocumentFormats.
  • Renamed method GetGlossaryFormats to GetSupportedGlossaryFormats.
  • Removed property HasCompleted from types DocumentStatusResult and TranslationStatusResult.

Event Grid 4.4.0 Changelog

Features Added

  • Added public constructor and settable property for SubscriptionValidationResponse.

Key Bugs Fixed

  • Fix issue where ARM system event data could not be deserialized into their strongly typed models.

Event Hubs 5.5.0 Changelog

Features Added

  • EventData now exposes the full AMQP message via the GetRawAmqpMessage method. (Based on a community prototype contribution, courtesy of danielmarbach)

  • EventData now supports construction using a string to specify the event body; this will be represented as a set of UTF-8 encoded bytes for transport.

  • EventData has been extended to include properties for applications to assign a MessageId, ContentType, and CorrelationId as well-known members. It is important to note that these properties are intended for application use and are not recognized by the Event Hubs service.

  • When stopping, the EventProcessor<TPartition> will now attempt to force-close connections blocked on their timeout. This should significantly help reduce the amount of time the processor takes to stop in many scenarios. (Based on a community prototype contribution, courtesy of danielmarbach)

Key Bugs Fixed

  • The EventProcessor<TPartition> will now properly respect another another consumer stealing ownership of a partition when the service forcibly terminates the active link in the background. Previously, the client did not observe the error directly and attempted to recover the faulted link which reasserted ownership and caused the partition to “bounce” between owners until a load balancing cycle completed.

  • The EventHubConsumerClient and PartitionReceiver will now properly surface an exception when another another consumer stealing ownership of a partition when the service forcibly terminates the active link in the background. Previously, the client did not observe the error directly and did not make callers attempted to recover the faulted link which reasserted ownership and caused the partition to “bounce” between owners until a load balancing cycle completed.

Event Hubs - Event Processor 5.5.0 Changelog

Features Added

  • When stopping, the EventProcessorClient will now attempt to force-close connections blocked on their timeout. This should significantly help reduce the amount of time the processor takes to stop in many scenarios. (Based on a community prototype contribution, courtesy of danielmarbach)

  • When the EventProcessorClient detects a partition being stolen outside of a load balancing cycle, it will immediately surrender ownership rather than waiting for a load balancing cycle to confirm the ownership change. This will help reduce event duplication from overlapping ownership of processors.

Key Bugs Fixed

  • The EventProcessorClient will now properly respect another another consumer stealing ownership of a partition when the service forcibly terminates the active link in the background. Previously, the client did not observe the error directly and attempted to recover the faulted link which reasserted ownership and caused the partition to “bounce” between owners until a load balancing cycle completed.

Key Vault - Administration 4.0.0 Changelog

  • Initial release of KeyVaultAccessControlClient to managed role assignments and definitions for Managed HSM.
  • Initial release of KeyVaultBackupClient to backup and restore Managed HSM.

Breaking Changes since 4.0.0-beta.5

  • Changed KeyVaultBackupClient.StartSelectiveRestore and StartSelectiveRestoreAsync to StartSelectiveKeyRestore and StartSelectiveKeyRestoreAsync.
  • Return only a Response from KeyVaultAccessControlClient.DeleteRoleAssignment and DeleteRoleAssignmentAsync. HTTP 404 responses no longer throw a RequestFailedException.
  • Return only a Response from KeyVaultAccessControlClient.DeleteRoleDefinition and DeleteRoleDefinitionAsync. HTTP 404 responses no longer throw a RequestFailedException.

Key Vault - Certificates 4.2.0 Changelog

Features Added

  • Changed default service version to “7.2”.
  • Added KeyVaultCertificateIdentifier to parse certificate URIs.
  • Added CertificateClient.DownloadCertificate and DownloadCertificateAsync to download an X509Certificate2 with private key.

Key Vault - Keys 4.2.0 Changelog

Features Added

  • Changed default service version to “7.2”.
  • Added KeyVaultKeyIdentifier to parse certificate URIs.
  • Added local-only support for CryptographyClient using only a JsonWebKey using LocalCryptographyClientOptions.
  • Added CreateEcKeyOptions class and associated KeyClient.CreateEcKey and CreateEcKeyAsync methods.
  • Added KeyType.OctHsm to support “oct-HSM” key operations to support Managed HSM.
  • Added AES-GCM and AES-CBC support for encrypting and decrypting, including new Encrypt and Decrypt overloads.

Breaking Changes since 4.2.0-beta.6

  • Renamed additionalAuthenticationData factory method parameters to additionalAuthenticatedData to match properties and constructor parameters.
  • Renamed parameters parameter to decryptParameters for CryptographyClient.Decrypt and DecryptAsync.
  • Renamed parameters parameter to encryptParameters for CryptographyClient.Encrypt and EncryptAsync.

Key Vault - Secrets 4.2.0 Changelog

Features Added

  • Changed default service version to “7.2”.
  • Added KeyVaultSecretIdentifier to parse certificate URIs.

Metrics Advisor 1.0.0 Changelog

Features Added

  • DimensionKey now implements the IEnumerable<KeyValuePair<string, string>> interface. Dimension columns can now be enumerated.
  • Added method Contains to DimensionKey to check whether or not a dimension column is present.
  • Added property DimensionsToSplitAlert to AnomalyAlertConfiguration to allow splitting an alert into multiple ones.
  • Added property MeasureType to MetricBoundaryCondition to control which measure should be used when checking boundaries for alert triggering. Current supported types are Value and Mean.
  • NotificationHook.Administrators is now a IList (not read-only anymore), and can be used to update the list of administrators or set it during creation.

Breaking Changes

  • Removed methods AddDimensionColumn and RemoveDimensionColumn from DimensionKey. In order to access elements, the new method TryGetValue must be used. Once the instance has been created, the columns can’t be modified anymore.
  • DimensionKey constructor now takes the required dimensions parameter.
  • The whole DatasourceCredential API has been renamed to DataSourceCredential. This includes renames in methods, method parameters, and properties.
  • Split the method GetAnomalies into two different methods: GetAnomaliesForAlert and GetAnomaliesForDetectionConfiguration.
  • Split the method GetIncidents into two different methods: GetIncidentsForAlert and GetIncidentsForDetectionConfiguration.
  • DataFeedIngestionSettings constructor now takes the required ingestionStartsOn parameter. For this reason, the property IngestionStartTime, now named IngestionStartsOn, is not nullable anymore.
  • EmailNotificationHook constructor now takes the required name parameter.
  • WebNotificationHook constructor now takes the required name and endpoint parameters.
  • MetricSeriesGroupDetectionCondition constructor now takes the required seriesGroupKey parameter.
  • MetricSingleSeriesDetectionCondition constructor now takes the required seriesKey parameter.
  • In MetricSeriesData, removed the Definition property. Now, properties MetricId and SeriesKey can be accessed directly from MetricSeriesData.
  • In MetricAnomalyAlertScope, renamed static methods GetScopeFor<...> to CreateScopeFor<...>. For instance, GetScopeForSeriesGroup was renamed to CreateScopeForSeriesGroup.
  • Changed order of parameters of MetricsAdvisorClient.GetMetricEnrichedSeriesData. Now, detectionConfigurationId appears first.

Monitor Query 1.0.0-beta.2 Changelog

New Features

  • Added support for including rendering information using the IncludeVisualization property.
  • Added a LogsQueryClient constructor that uses the default Log Analytics endpoint.
  • Added error information in LogsQueryResult and Metric.
  • Added dynamic column type support.

Service Bus 7.2.0 Changelog

Acknowledgments

Thank you to our developer community members who helped to make the Service Bus client library better with their contributions to this release:

Fixed

  • The retry policy used by clients will no longer overflow the TimeSpan maximum when using an Exponential strategy with a large number of retries and long delay set.

  • The name of the property displayed in the ArgumentOutOfRangeException in the MaxDeliveryCount property in SubscriptionProperties was updated to use the correct property name. (A community contribution, courtesy of oscarcabrero)

Service Bus 7.2.1 Changelog

Fixed

  • Fixed bug in the ServiceBusProcessor where message locks stopped being automatically renewed after StopProcessingAsync was called.

Storage - Blobs 12.9.1 Changelog

  • Added optimization to unwrap encryption key once for DownloadTo and OpenRead when Client Side Encryption is enabled.

Tables 12.1.0 Changelog

Features Added

  • Support for Azure Active Directory (AAD) authorization has been added to TableServiceClient and TableClient. This enables use of TokenCredential credentials. Note: Only Azure Storage API endpoints currently support AAD authorization.

Text Analytics 5.1.0 Changelog

Features Added

  • Added support for service version 3.0. This can be specified in the TextAnalyticsClientOptions object under the ServiceVersion enum. By default the SDK targets latest supported service version.
  • Added AAD support for the StartAnalyzeHealthcareEntities methods.
  • Added value None to enum PiiEntityDomainType to allow user to specify no domain.
  • Added new overload methods to all xxActions types that take a xxOptions object to facilitate a transition from a singular method to an actions method.
  • The parameter CategoriesFilter in RecognizePiiEntitiesActions has been enabled for StartAnalyzeActions methods. #### Breaking changes
  • Changed behavior in StartAnalyzeActions and StartAnalyzeActionsAsync where now accepts a single action per action type. An ArgumentException is raised if duplicate actions are passed.
  • Changed type RecognizePiiEntitiesOptions.DomainFilter from PiiEntityDomainType? to PiiEntityDomainType.
  • Changed type AnalyzeActionsOptions.IncludeStatistics from bool to bool?.
  • Renamed StartAnalyzeBatchActions to StartAnalyzeActions.
  • Renamed AnalyzeBatchActionsOperation to AnalyzeActionsOperation.
  • Renamed AnalyzeBatchActionsResult to AnalyzeActionsResult.
  • Renamed AnalyzeBatchActionsOptions to AnalyzeActionsOptions.
  • TextAnalyticsActions now takes xxAction types, instead of xxOptions types. Renames and types are as follow:
  • ExtractKeyPhrasesOptions changed to new type ExtractKeyPhrasesActions.
  • RecognizeEntitiesOptions changed to new type RecognizeEntitiesActions.
  • RecognizePiiEntitiesOptions changed to new type RecognizePiiEntitiesActions.
  • RecognizeLinkedEntitiesOptions changed to new type RecognizeLinkedEntitiesActions.
  • AnalyzeSentimentOptions changed to new type AnalyzeSentimentActions.
  • Renamed type TextAnalyticsActionDetails to TextAnalyticsActionResult.
  • Renamed type PiiEntityDomainType to PiiEntityDomain.
  • Renamed type Results to DocumentsResults in AnalyzeSentimentActionResult, ExtractKeyPhrasesActionResult, RecognizeEntitiesActionResult, RecognizeLinkedEntitiesActionResult, and RecognizePiiEntitiesActionResult.
  • Renamed all types under AnalyzeActionsResult from xxActionsResults to ``xxResults`.
  • Removed property Statistics from AnalyzeActionsResult as it is not currently returned by the service even if the user passes IncludeStatistics = true.
  • Removed property StringIndexType from TextAnalyticsRequestOptions. This SDK will keep using UTF-16 code unit as the default encoding.
  • Removed type ExtractKeyPhrasesOptions and respective exposure.
  • Removed type RecognizeEntitiesOptions and respective exposure.
  • Removed type RecognizeLinkedEntitiesOptions and respective exposure.

WebJobs Extensions - Event Hubs 5.0.0-beta.7 Changelog

Breaking Changes

  • Renamed MaxBatchSize to MaxEventBatchSize in EventHubsOptions.

WebJobs Extensions - Service Bus 5.0.0-beta.4 Changelog

Added

  • Added AutoCompleteMessages property to ServiceBusTriggerAttribute which allows configuring autocompletion at the function level.

Key Bug Fixes

  • Fix binding for DateTime parameters
  • Avoid exception that occurred when a function settles messages and AutoCompleteMessages is true for multiple dispatch functions.
  • Avoid null reference exception that could occur when no messages are available for a multiple dispatch function.

WebJobs Extensions - Service Bus 5.0.0-beta.5 Changelog

Breaking Changes

  • Renamed ServiceBusEntityType property to EntityType.
  • Renamed messageActions and sessionActions parameters to actions in MessageProcessor and SessionMessageProcessor.
  • Renamed MaxBatchSize to MaxMessageBatchSize in ServiceBusOptions.

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.MetricsAdvisor --version 1.0.0
$> dotnet add package Azure.AI.TextAnalytics --version 5.1.0
$> dotnet add package Azure.AI.Translation.Document --version 1.0.0-beta.3
$> dotnet add package Azure.Core --version 1.16.0
$> dotnet add package Azure.Core.Amqp --version 1.2.0
$> dotnet add package Azure.Core.Amqp --version 1.1.0
$> dotnet add package Azure.Data.AppConfiguration --version 1.1.0
$> dotnet add package Azure.Data.Tables --version 12.1.0
$> dotnet add package Azure.Messaging.EventGrid --version 4.4.0
$> dotnet add package Azure.Messaging.EventHubs --version 5.5.0
$> dotnet add package Azure.Messaging.EventHubs.Processor --version 5.5.0
$> dotnet add package Azure.Messaging.ServiceBus --version 7.2.0
$> dotnet add package Azure.Messaging.ServiceBus --version 7.2.1
$> dotnet add package Azure.Monitor.Query --version 1.0.0-beta.2
$> dotnet add package Azure.Search.Documents --version 11.4.0-beta.1
$> dotnet add package Azure.Security.KeyVault.Administration --version 4.0.0
$> dotnet add package Azure.Security.KeyVault.Certificates --version 4.2.0
$> dotnet add package Azure.Security.KeyVault.Keys --version 4.2.0
$> dotnet add package Azure.Security.KeyVault.Secrets --version 4.2.0
$> dotnet add package Azure.Storage.Blobs --version 12.9.1
$> dotnet add package Microsoft.Azure.Messaging.EventGrid.CloudNativeCloudEvents --version 1.0.0-beta.2
$> dotnet add package Microsoft.Azure.WebJobs.Extensions.EventHubs --version 5.0.0-beta.7
$> dotnet add package Microsoft.Azure.WebJobs.Extensions.ServiceBus --version 5.0.0-beta.4
$> dotnet add package Microsoft.Azure.WebJobs.Extensions.ServiceBus --version 5.0.0-beta.5

Feedback

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