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
parseFeatureFlag
andparseSecretReference
methods 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/node
has 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/node
has 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
TokenCredential
has been added. With this addition, the Search SDK supports authentication via AAD. - Identity types -
SearchIndexerDataNoneIdentity
&SearchIndexerDataUserAssignedIdentity
have been added. - The following new skills have been added:
- SentimentSkill(V3)
- EntityLinkingSkill(V3)
- EntityRecognitionSkill(V3)
- PIIDetectionSkill
- A new property
lineEnding
has been added to the skillOcrSkill
.
Core - Auth 1.3.1 Changelog
- Added
tenantId
optional property to theGetTokenOptions
interface. IftenantId
is set, credentials will be able to use multi-tenant authentication, in the cases when itâs enabled.
Core - Auth 1.3.2 Changelog
- Added
tenantId
optional property to theGetTokenOptions
interface. IftenantId
is 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
allowInsecureConnection
fromServiceClientOptions
toCommonClientOptions
issue 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-After
header 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
proxySettings
does 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/api
to version 1.0.0 PR #15883
Breaking Changes
- Removed
OpenCensusSpanWrapper
andOpenCensusTracerWrapper
from the public API. Customers using these wrappers should migrate to usingOpenTelemetry
directly. PR #15770 - Update
@azure/core-tracing
to version 1.0.0-preview.12. This brings core-tracing up to date with@opentelemetry/api@1.0.0
. Span#context
was 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
proxySettings
does not work when there is username but no password Issue 15720
Features Added
- Added support for the
Retry-After
header on responses with status code 503, Service Unavailable. - The
ExponentialRetryPolicy
will now ignore503
responses if they have theRetry-After
header. - 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/node
has been updated to version 12. Read our support policy for more details. - Added background refresher for endpoints, and new
ConnectionPolicy
options. 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/node
has been updated to version 12. Read our support policy for more details. -
Adds the
contentType
,correlationId
, andmessageId
AMQP properties as top-level fields onEventData
andReceivedEventData
. -
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
getAzureCliAccessToken
from 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/node
has 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 anunknown
type. Two new packages are designed to be used with this API: @azure/identity-vscode
, which provides the dependencies ofVisualStudioCodeCredential
and 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-vscode
extension is not used, then it will throw aCredentialUnavailableError
(similar to how it previously behaved if thekeytar
package was not installed). The extension now provides the underlying implementation ofVisualStudioCodeCredential
through dependency injection. - Reintroduced the
TokenCachePersistenceOptions
property on most credential constructor options. This property must be present with anenabled
property 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
ManagedIdentityCredential
for Bridge to Kubernetes local development authentication. - Enabled PKCE on
InteractiveBrowserCredential
for Node.js. Proof Key for Code Exchange (PKCE) is a security feature that mitigates authentication code interception attacks. - Added
LoginHint
property toInteractiveBrowserCredentialOptions
which 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
RegionalAuthority
type, that allows specifying Azure regions. - Added
regionalAuthority
property toClientSecretCredentialOptions
andClientCertificateCredentialOptions
. - If instead of a region,
AutoDiscoverRegion
is 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_NAME
environment variable. AzureCliCredential
andAzurePowerShellCredential
now allow specifying atenantId
.- All credentials except
ManagedIdentityCredential
support enabling multi tenant authentication via theallowMultiTenantAuthentication
option.
Key Bugs Fixed
- Fixed an issue in which
InteractiveBrowserCredential
on Node would sometimes cause the process to hang if there was no browser available. - Fixed an issue in which the
AZURE_AUTHORITY_HOST
environment 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-fetch
for initial requests in specific environments, like Kubernetes pods. - Upgraded
@azure/core-http
to version^2.0.0
, and@azure/core-tracing
to 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-persistence
package. This package provides an extension to@azure/identity
that 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
libsecret
to 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
allowUnencryptedStorage
property is set to true in thetokenCachePersistenceOptions
passed 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-vscode
package. This package extends@azure/identity
by providing the dependencies ofVisualStudioCodeCredential
and enabling it within the@azure/identity
package.VisualStudioCodeCredential
uses the authenticated session from the âAzure Accountâ extension in Visual Studio Code. If this extension package is not loaded usinguseIdentityExtension
, thenVisualStudioCodeCredential
from@azure/identity
will throw aCredentialUnavailableError
. By enablingVisualStudioCodeCredential
, theDefaultAzureCredential
class in@azure/identity
also 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/node
has 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
KeyVaultAccessControlClient
provides 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
KeyVaultBackupClient
provides 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
KeyVaultRoleAssignmentPropertiesWithScope
toKeyVaultRoleAssignmentProperties
. - Renamed
KeyVaultKeyId
toKeyVaultKeyIdentifier
. - Renamed
beginRestore
âsblobStorageUri
tofolderUri
. - Removed
folderName
frombeginRestore
. Now the folder name will be inferred from thefolderUri
. - Renamed
beginSelectiveRestore
âsblobStorageUri
tofolderUri
. - Removed
folderName
frombeginSelectiveRestore
. Now the folder name will be inferred from thefolderUri
. - Reordered the parameters of
beginSelectiveRestore
tokeyName
,folderUrl
,sasToken
,[options]
. - Renamed
KeyVaultBackupResult
âsbackupFolderUri
tofolderUri
. - Renamed
beginSelectiveRestore
tobeginSelectiveKeyRestore
. - Renamed
KeyVaultBeginSelectiveRestoreOptions
toKeyVaultBeginSelectiveKeyRestoreOptions
. - Renamed
KeyVaultSelectiveRestoreOperationState
toKeyVaultSelectiveKeyRestoreOperationState
. - Renamed
KeyVaultSelectiveRestoreResult
toKeyVaultSelectiveKeyRestoreResult
. deleteRoleAssignment
anddeleteRoleDefinition
will 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
beginDeleteCertificate
andbeginRecoverDeletedCertificate
in 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
ErrorModel
as deprecated. It was erroneously exported publicly in 4.1 and should not be used. Please change the type to useCertificateOperationError
instead.
Changes since 4.2.0-beta.3
- Marked
ErrorModel
as deprecated. It was erroneously exported publicly in 4.1 and should not be used. Please change the type to useCertificateOperationError
instead. - Fixed a bug with
beginDeleteCertificate
andbeginRecoverDeletedCertificate
in which unknown service errors wouldnât bubble up properly to the end users. - Renamed the
KeyVaultCertificateId
toKeyVaultCertificateIdentifier
, 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/node
has been updated to version 12. Read our support policy for more details. - Added support for
KeyClient.getRandomBytes
which, 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.signData
andCryptographyClient.verifyData
convenience 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.signData
andCryptographyClient.verifyData
convenience 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
CryptographyClient
will 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
beginDeleteKey
andbeginRecoverDeletedKey
in 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
KeyOperationsOptions
and 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
KeyOperationsOptions
is now redundant. - Fixed a bug with
beginDeleteKey
andbeginRecoverDeletedKey
in 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
beginDeleteSecret
andbeginRecoverDeletedSecret
in 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?: string
secret property to use instead of the deprecatedkeyId?: URL
and removed"lib": ["dom"]
fromtsconfig.json
Changes since 4.2.0-beta.4:
- Fixed a bug with
beginDeleteSecret
andbeginRecoverDeletedSecret
in which unknown service errors wouldnât bubble up properly to the end users. - Renamed the
KeyVaultSecretId
toKeyVaultSecretIdentifier
, 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â
seriesToFilter
parameter renamed toseriesKey
in methodsgetmetricenrichedseriesdata
andgetmetricseriesdata
and ordering updated- Renamed
adminEmails
toadmins
inMetricsAdvisorDataFeed
andNotificationHook
andviewerEmails
toviewers
inMetricsAdvisorDataFeed
- Renamed type
DetectionConditionsOperator
toDetectionConditionOperator
- Renamed property
splitAlertByDimension
todimensionsToSplitAlert
inAnomalyAlertConfiguration
- Renamed
datasource
toDataSource
- Renamed
DatasourceCredential
toDataSourceCredentialEntity
,SqlServerConnectionStringDataSourceCredential
toDataSourceSqlConnectionString
,DataLakeGen2SharedKeyDataSourceCredential
toDataSourceDataLakeGen2SharedKey
,ServicePrincipalDataSourceCredential
toDataSourceServicePrincipal
,ServicePrincipalInKeyVaultDataSourceCredential
toDataSourceServicePrincipalInKeyVault
Other Changes
- Update methods now return the updated object
Monitor Query 1.0.0-beta.3 Changelog
Features Added
- The
include-render
header 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/node
has 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/node
has been updated to version 12. Read our support policy for more details. - Support for Azure Active Directory (AAD) authorization has been added to
TableServiceClient
andTableClient
. This enables use ofTokenCredential
credentials. Note: Only Azure Storage API endpoints currently support AAD authorization. #15852
Text Analytics 5.1.0 Changelog
Breaking Changes
PiiEntityDomainType
was renamed toPiiEntityDomain
.domain
property ofRecognizePiiEntitiesAction
was renamed todomainFilter
.beginAnalyzeActions
is now limited to accept up to one action only per type.
Web PubSub 1.0.0-beta.3 Changelog
Breaking Changes
hasUser
has been removed fromGroupClient
as 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 theonResponse
callback 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