Azure SDK for JavaScript (July 2021)
The Azure SDK team is pleased to announce our July 2021 client library releases.
34 packages released this month.
Stable Packages (15)
-
App Configuration
-
Core - HTTP
-
Core - LRO
-
Core Rest Pipeline
-
Cosmos DB
-
Event Hubs
-
Identity
-
Key Vault - Administration
-
Key Vault - Certificates
-
Key Vault - Keys
-
Key Vault - Secrets
-
Metrics Advisor
-
Service Bus
-
Tables
-
Text Analytics
Patch Updates (5)
-
Core - Auth
-
Core - Client
-
Core - HTTP
-
Key Vault - Administration
-
Key Vault - Keys
Beta Packages (10)
-
Attestation
-
Cognitive Search
-
Core - Tracing
-
Identity
-
Identity Cache Persistence
-
Identity Visual Studio Code Credential
-
Key Vault - Administration
-
Key Vault - Keys
-
Monitor Query
-
Web PubSub
Release highlights
App Configuration 1.2.0 Changelog
Features Added
-
Special configuration settings - feature flag and secret reference are now supported. đ
- For types, use
ConfigurationSetting<FeatureFlagValue>andConfigurationSetting<SecretReferenceValue>. -
Use
parseFeatureFlagandparseSecretReferencemethods to parse the configuration settings into feature flag and secret reference respectively. - With the dropping of support for Node.js versions that are no longer in LTS, the dependency on
@types/nodehas been updated to version 12. Read our support policy for more details.
Attestation 1.0.0-beta.4 Changelog
Key Bugs Fixed
- Fixes the location of types definition in package.json
Features Added
- The package now contains type definitions compatible with TypeScript versions earlier than v3.6.
Cognitive Search 11.3.0-beta.1 Changelog
-
With the dropping of support for Node.js versions that are no longer in LTS, the dependency on
@types/nodehas been updated to version 12. Read our support policy for more details. -
Regenerated the search SDK with the latest swaggers that includes the following changes:
- Support for
TokenCredentialhas been added. With this addition, the Search SDK supports authentication via AAD. - Identity types -
SearchIndexerDataNoneIdentity&SearchIndexerDataUserAssignedIdentityhave been added. - The following new skills have been added:
- SentimentSkill(V3)
- EntityLinkingSkill(V3)
- EntityRecognitionSkill(V3)
- PIIDetectionSkill
- A new property
lineEndinghas been added to the skillOcrSkill.
Core - Auth 1.3.1 Changelog
- Added
tenantIdoptional property to theGetTokenOptionsinterface. IftenantIdis set, credentials will be able to use multi-tenant authentication, in the cases when itâs enabled.
Core - Auth 1.3.2 Changelog
- Added
tenantIdoptional property to theGetTokenOptionsinterface. IftenantIdis set, credentials will be able to use multi-tenant authentication, in the cases when itâs enabled.
Core - Client 1.1.3 Changelog
Key Bugs Fixed
- Fix an issue of lost properties when flattening array in deserialization issue 15653
- Fix an issue with appending query parameters while constructing the url. Please refer Issue #1035 for more details.
Core - Client 1.2.1 Changelog
Features Added
- Moved
allowInsecureConnectionfromServiceClientOptionstoCommonClientOptionsissue 15938
Core - HTTP 1.2.6 Changelog
Key Bugs Fixed
- Fixed an issue of lost properties when flattening array in deserialization issue 15653
- Fixed an issue of incorrect minimum version of tslib issue 15697
Core - HTTP 2.0.0 Changelog
Features Added
- Changed TS compilation target to ES2017 in order to produce smaller bundles and use more native platform features.
- Added support for the
Retry-Afterheader on responses with status code 503, Service Unavailable. - Added support for multiple retries on the
ThrottlingRetryPolicy(up to 3 by default).
Breaking Changes
- Updated @azure/core-tracing to version
1.0.0-preview.12. See @azure/core-tracing CHANGELOG for details about breaking changes with tracing.
Fixed
- Fixed an issue where
proxySettingsdoes not work when there is username but no password Issue 15720 - Throttling retry policy respects abort signal #15796
Core - LRO 2.0.0 Changelog
New Features
- Changed TS compilation target to ES2017 in order to produce smaller bundles and use more native platform features
Core - Tracing 1.0.0-preview.12 Changelog
- Update
@opentelemetry/apito version 1.0.0 PR #15883
Breaking Changes
- Removed
OpenCensusSpanWrapperandOpenCensusTracerWrapperfrom the public API. Customers using these wrappers should migrate to usingOpenTelemetrydirectly. PR #15770 - Update
@azure/core-tracingto version 1.0.0-preview.12. This brings core-tracing up to date with@opentelemetry/api@1.0.0. Span#contextwas renamed toSpan#spanContext. This change is supported in@azure/core-http@1.2.7.
Core Rest Pipeline 1.1.0 Changelog
Fixed
- Fixed an issue where
proxySettingsdoes not work when there is username but no password Issue 15720
Features Added
- Added support for the
Retry-Afterheader on responses with status code 503, Service Unavailable. - The
ExponentialRetryPolicywill now ignore503responses if they have theRetry-Afterheader. - Added support for multiple retries on the
ThrottlingRetryPolicy(up to 3 by default).
Breaking Changes
- Updated @azure/core-tracing to version
1.0.0-preview.12. See @azure/core-tracing CHANGELOG for details about breaking changes with tracing.
Cosmos DB 3.12.0 Changelog
Features Added
- With the dropping of support for Node.js versions that are no longer in LTS, the dependency on
@types/nodehas been updated to version 12. Read our support policy for more details. - Added background refresher for endpoints, and new
ConnectionPolicyoptions. Refreshing defaults to true, and the default refresh rate is every 5 minutes.const client = new CosmosClient({ endpoint, key: masterKey, connectionPolicy: { ...defaultConnectionPolicy, endpointRefreshRateInMs: 700, enableBackgroundEndpointRefreshing: true } }) - Added
client.dispose()for closing the endpoint refresher verbosely. Necessary when destroying the CosmosClient inside existing processes like an express web server, or when you want to destroy the client and create a new one in the same process.const client = new CosmosClient() client.dispose() // cancels background endpoint refreshing
Event Hubs 5.6.0 Changelog
Features Added
-
With the dropping of support for Node.js versions that are no longer in LTS, the dependency on
@types/nodehas been updated to version 12. Read our support policy for more details. -
Adds the
contentType,correlationId, andmessageIdAMQP properties as top-level fields onEventDataandReceivedEventData. -
Enable encoding the body of a message to the âvalueâ or âsequenceâ sections (via AmqpAnnotatedMessage.bodyType). Using this encoding is not required but does allow you to take advantage of native AMQP serialization for supported primitives or sequences.
More information about the AMQP message body type can be found in the AMQP specification: link
Identity 2.0.0-beta.4 Changelog
Breaking Changes
- Removed the protected method
getAzureCliAccessTokenfrom the public API of theAzureCliCredential. While it will continue to be available as part of v1, we wonât be supporting this method as part of v2âs public API.
Features Added
- With the dropping of support for Node.js versions that are no longer in LTS, the dependency on
@types/nodehas been updated to version 12. Read our support policy for more details. - Introduced an extension API through a top-level method
useIdentityExtension. The function accepts an âextensionâ as an argument, which is a function accepting acontext. The extension context is an internal part of the Azure Identity API, so it has anunknowntype. Two new packages are designed to be used with this API: @azure/identity-vscode, which provides the dependencies ofVisualStudioCodeCredentialand enables it (see more below).@azure/identity-cache-persistence, which provides persistent token caching (same as was available in version 2.0.0-beta.2, but now provided through a secondary extension package).- Reintroduced a stub implementation of
VisualStudioCodeCredential. If the@azure/identity-vscodeextension is not used, then it will throw aCredentialUnavailableError(similar to how it previously behaved if thekeytarpackage was not installed). The extension now provides the underlying implementation ofVisualStudioCodeCredentialthrough dependency injection. - Reintroduced the
TokenCachePersistenceOptionsproperty on most credential constructor options. This property must be present with anenabledproperty set to true to enable persistent token caching for a credential instance. Credentials that do not support persistent token caching do not have this property. - Added support to
ManagedIdentityCredentialfor Bridge to Kubernetes local development authentication. - Enabled PKCE on
InteractiveBrowserCredentialfor Node.js. Proof Key for Code Exchange (PKCE) is a security feature that mitigates authentication code interception attacks. - Added
LoginHintproperty toInteractiveBrowserCredentialOptionswhich allows a user name to be pre-selected for interactive logins. Setting this option skips the account selection prompt and immediately attempts to login with the specified account. - Added regional STS support to client credential types.
- Added the
RegionalAuthoritytype, that allows specifying Azure regions. - Added
regionalAuthorityproperty toClientSecretCredentialOptionsandClientCertificateCredentialOptions. - If instead of a region,
AutoDiscoverRegionis specified as the value forregionalAuthority, MSAL will be used to attempt to discover the region. - A region can also be specified through the
AZURE_REGIONAL_AUTHORITY_NAMEenvironment variable. AzureCliCredentialandAzurePowerShellCredentialnow allow specifying atenantId.- All credentials except
ManagedIdentityCredentialsupport enabling multi tenant authentication via theallowMultiTenantAuthenticationoption.
Key Bugs Fixed
- Fixed an issue in which
InteractiveBrowserCredentialon Node would sometimes cause the process to hang if there was no browser available. - Fixed an issue in which the
AZURE_AUTHORITY_HOSTenvironment variable was not properly picked up in NodeJS.
Identity 1.4.0 Changelog
- With this release, we drop support for Node.js versions that have reached the end of life, like Node.js 8. Read our support policy for more details.
- Updated the default timeout of the first request of the IMDS MSI from half a second to three seconds to compensate for the slowness caused by
node-fetchfor initial requests in specific environments, like Kubernetes pods. - Upgraded
@azure/core-httpto version^2.0.0, and@azure/core-tracingto version1.0.0-preview.12.
Identity Cache Persistence 1.0.0-beta.1 Changelog
New features
- This release marks the initial beta availability of the
@azure/identity-cache-persistencepackage. This package provides an extension to@azure/identitythat enables persistent token caching in a secure storage defined by the Operating System (caching of token values across sessions), which allows skipping interactive authentication flows if a previously-cached token is still available. This is implemented using the following technologies: - On Windows, the cache will use a DPAPI-protected file.
- On macOS, the cache will use the macOS Keychain.
- On Linux, the cache will use
libsecretto store the tokens (this will use a provider backend, e.g. GNOME Keyring). - On Linux and macOS, the cache may optionally use an unencrypted file as a last resort, but only if the
allowUnencryptedStorageproperty is set to true in thetokenCachePersistenceOptionspassed to the credential constructor.
Identity Visual Studio Code Credential 1.0.0-beta.1 Changelog
New features
- This release marks the initial beta availability of the
@azure/identity-vscodepackage. This package extends@azure/identityby providing the dependencies ofVisualStudioCodeCredentialand enabling it within the@azure/identitypackage.VisualStudioCodeCredentialuses the authenticated session from the âAzure Accountâ extension in Visual Studio Code. If this extension package is not loaded usinguseIdentityExtension, thenVisualStudioCodeCredentialfrom@azure/identitywill throw aCredentialUnavailableError. By enablingVisualStudioCodeCredential, theDefaultAzureCredentialclass in@azure/identityalso gains functionality allowing it to use the âAzure Accountâ session if it is available.
Key Vault - Administration 4.1.0-beta.1 Changelog
Features Added
- With the dropping of support for Node.js versions that are no longer in LTS, the dependency on
@types/nodehas been updated to version 12. Read our support policy for more details.
Key Vault - Administration 4.0.1 Changelog
Bug Fixes
- Fixed an issue where bundling could fail when importing this library due to an incorrectly set import.
Key Vault - Administration 4.0.0 Changelog
This release marks the general availability of the @azure/keyvault-admin package.
New Features
- The
KeyVaultAccessControlClientprovides support for managing role-based access control (RBAC) operations. - Both role assignments and custom role definitions are supported with the ability to create, read, update, and delete custom role definitions and assignments.
- The
KeyVaultBackupClientprovides support for back up and restore operations for the entire Key Vault Managed HSM instance. - Full Managed HSM backup and restore operations are supported.
- Selective Key Restore from a previous backup is also supported.
Changes since 4.0.0-beta.3:
- Added the âKeyVaultâ prefix to all of the Key Vault Admin client operations.
- Made the AesGcmDecryptParameters authenticationTag required.
- Collapsed
KeyVaultRoleAssignmentPropertiesWithScopetoKeyVaultRoleAssignmentProperties. - Renamed
KeyVaultKeyIdtoKeyVaultKeyIdentifier. - Renamed
beginRestoreâsblobStorageUritofolderUri. - Removed
folderNamefrombeginRestore. Now the folder name will be inferred from thefolderUri. - Renamed
beginSelectiveRestoreâsblobStorageUritofolderUri. - Removed
folderNamefrombeginSelectiveRestore. Now the folder name will be inferred from thefolderUri. - Reordered the parameters of
beginSelectiveRestoretokeyName,folderUrl,sasToken,[options]. - Renamed
KeyVaultBackupResultâsbackupFolderUritofolderUri. - Renamed
beginSelectiveRestoretobeginSelectiveKeyRestore. - Renamed
KeyVaultBeginSelectiveRestoreOptionstoKeyVaultBeginSelectiveKeyRestoreOptions. - Renamed
KeyVaultSelectiveRestoreOperationStatetoKeyVaultSelectiveKeyRestoreOperationState. - Renamed
KeyVaultSelectiveRestoreResulttoKeyVaultSelectiveKeyRestoreResult. deleteRoleAssignmentanddeleteRoleDefinitionwill no longer throw an exception when the resource no longer exist and return no result.
Key Vault - Certificates 4.2.0 Changelog
Bug Fixes
- Fixed an issue with
beginDeleteCertificateandbeginRecoverDeletedCertificatein which unknown service errors wouldnât bubble up properly to the end users. - Fixed an issue where importing a certificate incorrectly required a Subject or Subject Alternative Name.
- Fixed an issue where retrying a failed initial Key Vault request may result in an empty body.
- Marked
ErrorModelas deprecated. It was erroneously exported publicly in 4.1 and should not be used. Please change the type to useCertificateOperationErrorinstead.
Changes since 4.2.0-beta.3
- Marked
ErrorModelas deprecated. It was erroneously exported publicly in 4.1 and should not be used. Please change the type to useCertificateOperationErrorinstead. - Fixed a bug with
beginDeleteCertificateandbeginRecoverDeletedCertificatein which unknown service errors wouldnât bubble up properly to the end users. - Renamed the
KeyVaultCertificateIdtoKeyVaultCertificateIdentifier, and exported a method to parse Key Vault Certificate Ids:parseKeyVaultCertificateIdentifier.
Key Vault - Keys 4.3.0-beta.1 Changelog
Features Added
- With the dropping of support for Node.js versions that are no longer in LTS, the dependency on
@types/nodehas been updated to version 12. Read our support policy for more details. - Added support for
KeyClient.getRandomByteswhich, when connected to a managed HSM, can be used to generate a byte array of a given length with random values. - Updated the service version to 7.3-preview.
Key Bugs Fixed
- Fixed an issue where
CryptographyClient.signDataandCryptographyClient.verifyDataconvenience methods would fail to find a valid hashing algorithm when using Elliptic Curve keys.
Key Vault - Keys 4.2.2 Changelog
Key Bugs Fixed
- Fixed an issue where
CryptographyClient.signDataandCryptographyClient.verifyDataconvenience methods would fail to find a valid hashing algorithm when using Elliptic Curve keys.
Key Vault - Keys 4.2.1 Changelog
Bug Fixes
- Fixed an issue where bundling could fail when importing this library due to an incorrectly set import.
Key Vault - Keys 4.2.0 Changelog
New Features
- Added support for local cryptography operations. If supported by the key type and algorithm, the
CryptographyClientwill attempt to perform a cryptography operation locally. - Added support for symmetric keys in Managed HSMs including support for AES encryption algorithms to encrypt, decrypt, wrap, and unwrap using symmetric keys.
- Added support for the 7.2 version of the Key Vault service API.
Bug Fixes
- Fixed a bug with
beginDeleteKeyandbeginRecoverDeletedKeyin which unknown service errors wouldnât bubble up properly to the end users. - Fixed bug with the list operations which were returning misplaced properties. Fixes customer issue: 15353.
- Fixed an issue where retrying a failed initial Key Vault request may result in an empty body.
Changes since 4.2.0-beta.5:
- Removed the now obsolete
KeyOperationsOptionsand replaced it withCryptographyOptions. - Introduced in 4.2.0-beta.1 to support additional encryption parameters for AES encryption, we have since moved these parameters outside of the options bag so a separate
KeyOperationsOptionsis now redundant. - Fixed a bug with
beginDeleteKeyandbeginRecoverDeletedKeyin which unknown service errors wouldnât bubble up properly to the end users. - Fixed bug with the list operations which were returning misplaced properties. Fixes customer issue: 15353.
- Exported a method to parse Key Vault Key Ids:
parseKeyVaultKeyIdentifier.
Key Vault - Secrets 4.2.0 Changelog
New Features
- Added support for the 7.2 version of the Key Vault service API.
Bug Fixes
- Fixed a bug with
beginDeleteSecretandbeginRecoverDeletedSecretin which unknown service errors wouldnât bubble up properly to the end users. - Fixed an issue where retrying a failed initial Key Vault request may result in an empty body.
- Added a
certificateKeyId?: stringsecret property to use instead of the deprecatedkeyId?: URLand removed"lib": ["dom"]fromtsconfig.json
Changes since 4.2.0-beta.4:
- Fixed a bug with
beginDeleteSecretandbeginRecoverDeletedSecretin which unknown service errors wouldnât bubble up properly to the end users. - Renamed the
KeyVaultSecretIdtoKeyVaultSecretIdentifier, and exported a method to parse Key Vault Secret Ids:parseKeyVaultSecretIdentifier.
Metrics Advisor 1.0.0 Changelog
The Metrics Advisor library is now in GA with this release.
Breaking Changes
listIncidents()overloads split intolistInclidentsForAlert()andlistIncidentsForDetectionConfiguration()listAnomalies()overloads split intolistAnomaliesForAlert()andlistAnomaliesForDetectionConfiguration()- Removed support for granularity type
PerSecond - Renamed âcreateFeedbackâ to âaddFeedbackâ
seriesToFilterparameter renamed toseriesKeyin methodsgetmetricenrichedseriesdataandgetmetricseriesdataand ordering updated- Renamed
adminEmailstoadminsinMetricsAdvisorDataFeedandNotificationHookandviewerEmailstoviewersinMetricsAdvisorDataFeed - Renamed type
DetectionConditionsOperatortoDetectionConditionOperator - Renamed property
splitAlertByDimensiontodimensionsToSplitAlertinAnomalyAlertConfiguration - Renamed
datasourcetoDataSource - Renamed
DatasourceCredentialtoDataSourceCredentialEntity,SqlServerConnectionStringDataSourceCredentialtoDataSourceSqlConnectionString,DataLakeGen2SharedKeyDataSourceCredentialtoDataSourceDataLakeGen2SharedKey,ServicePrincipalDataSourceCredentialtoDataSourceServicePrincipal,ServicePrincipalInKeyVaultDataSourceCredentialtoDataSourceServicePrincipalInKeyVault
Other Changes
- Update methods now return the updated object
Monitor Query 1.0.0-beta.3 Changelog
Features Added
- The
include-renderheader can now be specified viaQueryLogsOption.includeVisualization, allowing visualization information to be returned inQueryLogsResult.visualization. The results are currently unmodeled and reflect the underlying JSON structure.
Monitor Query 1.0.0-beta.2 Changelog
- Fixing issue using non-commercial clouds, where it wasnât possible to pass in an endpoint and custom scope, both of which are needed. PR#15705
- Adding a mitigation for LogsQueryClient.queryLogsBatch() where an invalidly encoded response could lead to no results being surfaced to the user. This should allow for the result to be properly parsed. PR#15718
Service Bus 7.3.0 Changelog
Features Added
- With the dropping of support for Node.js versions that are no longer in LTS, the dependency on
@types/nodehas been updated to version 12. Read our support policy for more details.
Key Bugs Fixed
- Fixed a bug that could lead to message loss in certain conditions when using
receiver.receiveMessages(). PR#15989
Tables 12.1.0 Changelog
Features Added
- With the dropping of support for Node.js versions that are no longer in LTS, the dependency on
@types/nodehas been updated to version 12. Read our support policy for more details. - Support for Azure Active Directory (AAD) authorization has been added to
TableServiceClientandTableClient. This enables use ofTokenCredentialcredentials. Note: Only Azure Storage API endpoints currently support AAD authorization. #15852
Text Analytics 5.1.0 Changelog
Breaking Changes
PiiEntityDomainTypewas renamed toPiiEntityDomain.domainproperty ofRecognizePiiEntitiesActionwas renamed todomainFilter.beginAnalyzeActionsis now limited to accept up to one action only per type.
Web PubSub 1.0.0-beta.3 Changelog
Breaking Changes
hasUserhas been removed fromGroupClientas that operation is no longer supported by the service.- Updated to have void returns for most operations. If you were previously using
RestResponse, you can instead use theonResponsecallback in the operation options. See README for an example.
Latest Releases
View all the latest versions of JavaScript packages here.
Installation Instructions
To install the packages, copy and paste the below into a terminal.
$> npm install @azure/ai-metrics-advisor@1.0.0
$> npm install @azure/ai-text-analytics@5.1.0
$> npm install @azure/app-configuration@1.2.0
$> npm install @azure/attestation@1.0.0-beta.4
$> npm install @azure/core-auth@1.3.1
$> npm install @azure/core-auth@1.3.2
$> npm install @azure/core-client@1.1.3
$> npm install @azure/core-client@1.2.1
$> npm install @azure/core-http@1.2.6
$> npm install @azure/core-http@2.0.0
$> npm install @azure/core-lro@2.0.0
$> npm install @azure/core-rest-pipeline@1.1.0
$> npm install @azure/core-tracing@1.0.0-preview.12
$> npm install @azure/cosmos@3.12.0
$> npm install @azure/data-tables@12.1.0
$> npm install @azure/event-hubs@5.6.0
$> npm install @azure/identity@2.0.0-beta.4
$> npm install @azure/identity@1.4.0
$> npm install @azure/identity-cache-persistence@1.0.0-beta.1
$> npm install @azure/identity-vscode@1.0.0-beta.1
$> npm install @azure/keyvault-admin@4.1.0-beta.1
$> npm install @azure/keyvault-admin@4.0.1
$> npm install @azure/keyvault-admin@4.0.0
$> npm install @azure/keyvault-certificates@4.2.0
$> npm install @azure/keyvault-keys@4.3.0-beta.1
$> npm install @azure/keyvault-keys@4.2.2
$> npm install @azure/keyvault-keys@4.2.1
$> npm install @azure/keyvault-keys@4.2.0
$> npm install @azure/keyvault-secrets@4.2.0
$> npm install @azure/monitor-query@1.0.0-beta.3
$> npm install @azure/monitor-query@1.0.0-beta.2
$> npm install @azure/search-documents@11.3.0-beta.1
$> npm install @azure/service-bus@7.3.0
$> npm install @azure/web-pubsub@1.0.0-beta.3
Feedback
If you have a bug or feature request for one of the libraries, please post an issue at the azure-sdk-for-js repository