Skip to content

Commit 8f623c7

Browse files
committed
updates to release branch
2 parents 55858ca + a779ca9 commit 8f623c7

File tree

731 files changed

+9330
-1660
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

731 files changed

+9330
-1660
lines changed

articles/api-management/export-rest-mcp-server.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ In API Management, you can expose a REST API managed in API Management as a remo
1818
Using API Management to expose remote MCP servers provides centralized control over authentication, authorization, and monitoring. It simplifies the process of exposing APIs as MCP servers while helping to mitigate common security risks and ensuring scalability.
1919

2020
> [!NOTE]
21-
> This feature is currently in preview. It's being released first to the **AI Gateway Early** [update group](configure-service-update-settings.md).
21+
> This feature is currently in preview. It's being released first to the **AI Gateway Early** [update group](configure-service-update-settings.md). After joining the group, it can take 2 hours to access MCP server features.
2222
2323
In this article, you learn how to:
2424

articles/application-gateway/ingress-controller-annotations.md

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services: application-gateway
55
author: mbender-ms
66
ms.service: azure-application-gateway
77
ms.topic: concept-article
8-
ms.date: 9/17/2024
8+
ms.date: 5/23/2025
99
ms.author: mbender
1010
---
1111

@@ -66,7 +66,6 @@ apiVersion: networking.k8s.io/v1
6666
kind: Ingress
6767
metadata:
6868
name: go-server-ingress-bkprefix
69-
namespace: test-ag
7069
annotations:
7170
kubernetes.io/ingress.class: azure/application-gateway
7271
appgw.ingress.kubernetes.io/backend-path-prefix: "/test/"
@@ -104,7 +103,6 @@ apiVersion: networking.k8s.io/v1
104103
kind: Ingress
105104
metadata:
106105
name: go-server-ingress-timeout
107-
namespace: test-ag
108106
annotations:
109107
kubernetes.io/ingress.class: azure/application-gateway
110108
appgw.ingress.kubernetes.io/backend-hostname: "internal.example.com"
@@ -152,7 +150,6 @@ apiVersion: networking.k8s.io/v1
152150
kind: Ingress
153151
metadata:
154152
name: go-server-ingress
155-
namespace: test-ag
156153
annotations:
157154
kubernetes.io/ingress.class: azure/application-gateway
158155
appgw.ingress.kubernetes.io/health-probe-hostname: "contoso.com"
@@ -192,7 +189,6 @@ apiVersion: networking.k8s.io/v1
192189
kind: Ingress
193190
metadata:
194191
name: go-server-ingress-redirect
195-
namespace: test-ag
196192
annotations:
197193
kubernetes.io/ingress.class: azure/application-gateway
198194
appgw.ingress.kubernetes.io/ssl-redirect: "true"
@@ -233,7 +229,6 @@ apiVersion: networking.k8s.io/v1
233229
kind: Ingress
234230
metadata:
235231
name: go-server-ingress-drain
236-
namespace: test-ag
237232
annotations:
238233
kubernetes.io/ingress.class: azure/application-gateway
239234
appgw.ingress.kubernetes.io/connection-draining: "true"
@@ -268,7 +263,6 @@ apiVersion: networking.k8s.io/v1
268263
kind: Ingress
269264
metadata:
270265
name: go-server-ingress-affinity
271-
namespace: test-ag
272266
annotations:
273267
kubernetes.io/ingress.class: azure/application-gateway
274268
appgw.ingress.kubernetes.io/cookie-based-affinity: "true"
@@ -302,7 +296,6 @@ apiVersion: networking.k8s.io/v1
302296
kind: Ingress
303297
metadata:
304298
name: go-server-ingress-timeout
305-
namespace: test-ag
306299
annotations:
307300
kubernetes.io/ingress.class: azure/application-gateway
308301
appgw.ingress.kubernetes.io/request-timeout: "20"
@@ -338,7 +331,6 @@ apiVersion: networking.k8s.io/v1
338331
kind: Ingress
339332
metadata:
340333
name: go-server-ingress-privateip
341-
namespace: test-ag
342334
annotations:
343335
kubernetes.io/ingress.class: azure/application-gateway
344336
appgw.ingress.kubernetes.io/use-private-ip: "true"
@@ -375,7 +367,6 @@ apiVersion: networking.k8s.io/v1
375367
kind: Ingress
376368
metadata:
377369
name: go-server-ingress-overridefrontendport
378-
namespace: test-ag
379370
annotations:
380371
kubernetes.io/ingress.class: azure/application-gateway
381372
appgw.ingress.kubernetes.io/override-frontend-port: "8080"
@@ -416,7 +407,6 @@ apiVersion: networking.k8s.io/v1
416407
kind: Ingress
417408
metadata:
418409
name: go-server-ingress-timeout
419-
namespace: test-ag
420410
annotations:
421411
kubernetes.io/ingress.class: azure/application-gateway
422412
appgw.ingress.kubernetes.io/backend-protocol: "https"
@@ -450,7 +440,6 @@ apiVersion: networking.k8s.io/v1
450440
kind: Ingress
451441
metadata:
452442
name: go-server-ingress-multisite
453-
namespace: test-ag
454443
annotations:
455444
kubernetes.io/ingress.class: azure/application-gateway
456445
appgw.ingress.kubernetes.io/hostname-extension: "hostname1, hostname2"
@@ -488,7 +477,6 @@ apiVersion: networking.k8s.io/v1
488477
kind: Ingress
489478
metadata:
490479
name: ad-server-ingress
491-
namespace: commerce
492480
annotations:
493481
kubernetes.io/ingress.class: azure/application-gateway
494482
appgw.ingress.kubernetes.io/waf-policy-for-path: "/subscriptions/abcd/resourceGroups/rg/providers/Microsoft.Network/applicationGatewayWebApplicationFirewallPolicies/adserver"
@@ -532,7 +520,6 @@ apiVersion: networking.k8s.io/v1
532520
kind: Ingress
533521
metadata:
534522
name: go-server-ingress-certificate
535-
namespace: test-ag
536523
annotations:
537524
kubernetes.io/ingress.class: azure/application-gateway
538525
appgw.ingress.kubernetes.io/appgw-ssl-certificate: "name-of-appgw-installed-certificate"
@@ -567,7 +554,6 @@ apiVersion: networking.k8s.io/v1
567554
kind: Ingress
568555
metadata:
569556
name: go-server-ingress-certificate
570-
namespace: test-ag
571557
annotations:
572558
kubernetes.io/ingress.class: azure/application-gateway
573559
appgw.ingress.kubernetes.io/appgw-ssl-certificate: "name-of-appgw-installed-certificate"
@@ -602,7 +588,6 @@ apiVersion: networking.k8s.io/v1
602588
kind: Ingress
603589
metadata:
604590
name: go-server-ingress-certificate
605-
namespace: test-ag
606591
annotations:
607592
kubernetes.io/ingress.class: azure/application-gateway
608593
appgw.ingress.kubernetes.io/backend-protocol: "https"
@@ -636,7 +621,6 @@ apiVersion: networking.k8s.io/v1
636621
kind: Ingress
637622
metadata:
638623
name: go-server-ingress-bkprefix
639-
namespace: test-ag
640624
annotations:
641625
kubernetes.io/ingress.class: azure/application-gateway
642626
appgw.ingress.kubernetes.io/rewrite-rule-set: add-custom-response-header
@@ -727,7 +711,6 @@ apiVersion: networking.k8s.io/v1
727711
kind: Ingress
728712
metadata:
729713
name: go-server-ingress-rulepriority
730-
namespace: test-ag
731714
annotations:
732715
kubernetes.io/ingress.class: azure/application-gateway
733716
appgw.ingress.kubernetes.io/rule-priority: 10

articles/azure-app-configuration/configuration-provider-overview.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,15 +55,16 @@ Configuration Setting Mapping | [GA](./reference-dotnet-provider.md#configuratio
5555
Key Vault References | [GA](./reference-dotnet-provider.md#key-vault-reference) | GA | GA | GA | [GA](./reference-javascript-provider.md#key-vault-reference)
5656
Key Vault Secret Refresh | [GA](./reference-dotnet-provider.md#key-vault-secret-refresh) | WIP | GA | WIP | WIP
5757
Custom Key Vault Secret Resolution | [GA](./reference-dotnet-provider.md#key-vault-reference) | GA | GA | GA | [GA](./reference-javascript-provider.md#key-vault-reference)
58+
Parallel Secret Resolution | WIP | WIP | WIP | WIP | [GA](./reference-javascript-provider.md#parallel-secret-resolution)
5859
Feature Flags | [GA](./reference-dotnet-provider.md#feature-flag) | GA | GA | GA | [GA](./reference-javascript-provider.md#feature-flag)
5960
Variant Feature Flags | [GA](./reference-dotnet-provider.md#feature-flag) | GA | GA | GA | [GA](./reference-javascript-provider.md#feature-flag)
6061
Feature Flag Telemetry | GA | GA | WIP | GA | GA
6162
Key Prefix Trim | [GA](./reference-dotnet-provider.md#trim-prefix-from-keys) | GA | GA | GA | [GA](./reference-javascript-provider.md#trim-prefix-from-keys)
62-
Configurable Startup Time-out | [GA](./reference-dotnet-provider.md#startup-retry) | WIP | N/A | WIP | WIP
63+
Configurable Startup Time-out | [GA](./reference-dotnet-provider.md#startup-retry) | WIP | N/A | WIP | [GA](./reference-javascript-provider.md#startup-retry)
6364
Replica Auto Discovery | [GA](./reference-dotnet-provider.md#geo-replication) | GA | GA | WIP | [GA](./reference-javascript-provider.md#geo-replication)
6465
Replica Failover | [GA](./reference-dotnet-provider.md#geo-replication) | GA | GA | WIP | [GA](./reference-javascript-provider.md#geo-replication)
6566
Replica Load Balancing | [GA](./reference-dotnet-provider.md#geo-replication) | WIP | GA | WIP | [GA](./reference-javascript-provider.md#geo-replication)
66-
Snapshots | [GA](./reference-dotnet-provider.md#snapshot) | GA | GA | WIP | WIP
67+
Snapshots | [GA](./reference-dotnet-provider.md#snapshot) | GA | GA | WIP | [GA](./reference-javascript-provider.md#snapshot)
6768
Distributed tracing | [GA](./reference-dotnet-provider.md#distributed-tracing) | WIP | WIP | WIP | WIP
6869
Health Check | WIP | WIP | WIP | WIP | WIP
6970

articles/azure-app-configuration/reference-javascript-provider.md

Lines changed: 74 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ ms.service: azure-app-configuration
99
ms.devlang: javascript
1010
ms.custom: devx-track-javascript
1111
ms.topic: tutorial
12-
ms.date: 02/02/2025
12+
ms.date: 05/22/2025
1313
#Customer intent: I want to learn how to use Azure App Configuration JavaScript client library.
1414
---
1515

@@ -355,6 +355,79 @@ const appConfig = await load(endpoint, credential, {
355355
});
356356
```
357357

358+
You can also set `clientOptions` property to configure `SecretClientOptions` used to connect to Azure Key Vault that has no registered `SecretClient`.
359+
360+
```typescript
361+
const credential = new DefaultAzureCredential();
362+
const appConfig = await load(endpoint, credential, {
363+
keyVaultOptions: {
364+
credential: credential,
365+
clientOptions: { // configure a custom SecretClientOptions
366+
retryOptions: {
367+
maxRetries: 3,
368+
maxRetryDelayInMs: 1000
369+
}
370+
}
371+
}
372+
});
373+
```
374+
375+
### Parallel secret resolution
376+
377+
Azure Key Vault doesn't provide a batch API for retrieving multiple secrets in a single request. When your application needs to load numerous Key Vault references, you can improve performance by enabling parallel secret resolution using the `parallelSecretResolutionEnabled` property in `KeyVaultOptions`. This allows the provider to fetch multiple secrets in parallel rather than sequentially:
378+
379+
380+
```typescript
381+
const credential = new DefaultAzureCredential();
382+
const appConfig = await load(endpoint, credential, {
383+
keyVaultOptions: {
384+
credential: credential,
385+
parallelSecretResolutionEnabled: true
386+
}
387+
});
388+
```
389+
390+
> [!NOTE]
391+
> When resolving secret in parallel, you may encounter the [service limit](/azure/key-vault/general/service-limits#secrets-managed-storage-account-keys-and-vault-transactions) of Azure Key Vault.
392+
> To handle throttling effectively, implement the [client-side throttling best practices](/azure/key-vault/general/overview-throttling#how-to-throttle-your-app-in-response-to-service-limits) by configuring appropriate retry options for the `SecretClient`. You can either register custom `SecretClient` instances or configure `clientOptions` via the `AzureAppConfigurationOptions.keyVaultOptions`.
393+
394+
395+
## Snapshot
396+
397+
[Snapshot](./concept-snapshots.md) is a named, immutable subset of an App Configuration store's key-values. The key-values that make up a snapshot are chosen during creation time through the usage of key and label filters. Once a snapshot is created, the key-values within are guaranteed to remain unchanged.
398+
399+
You can use snapshot selector to load key-values or feature flags from a snapshot:
400+
401+
```typescript
402+
const appConfig = await load(endpoint, credential, {
403+
selectors: [
404+
{ snapshotName: "MySnapshot" }, // load key-values from snapshot
405+
{ keyFilter: "test*", labelFilter: "test" }
406+
],
407+
featureFlagOptions: {
408+
enabled: true,
409+
selectors: [
410+
{ snapshotName: "MySnapshot" }, // load feature flags from snapshot
411+
{ keyFilter: "*", labelFilter: "test" }
412+
]
413+
}
414+
});
415+
```
416+
417+
## Startup retry
418+
419+
Configuration loading is a critical path operation during application startup. To ensure reliability, the Azure App Configuration provider implements a robust retry mechanism during the initial configuration load. This helps protect your application from transient network issues that might otherwise prevent successful startup.
420+
421+
You can customize this behavior via the `AzureAppConfigurationOptions.startupOptions`:
422+
423+
```typescript
424+
const appConfig = await load(endpoint, credential, {
425+
startupOptions: {
426+
timeoutInMs: 300_000
427+
}
428+
});
429+
```
430+
358431
## Geo-replication
359432

360433
For information about using geo-replication, go to [Enable geo-replication](./howto-geo-replication.md).

articles/azure-cache-for-redis/quickstart-create-redis.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: 'Quickstart: Create an Azure Redis cache'
2+
title: 'Quickstart: Create an Azure Cache for Redis instance'
33
description: Learn how to create an instance of Azure Cache for Redis in Basic, Standard, or Premium tiers.
44

55

@@ -11,7 +11,7 @@ appliesto:
1111
- ✅ Azure Cache for Redis
1212

1313
---
14-
# Quickstart: Create an Azure Redis cache
14+
# Quickstart: Create an Azure Cache for Redis instance
1515

1616
Azure Cache for Redis provides a fully managed [open-source Redis](https://redis.io/) cache within Azure. You can start with a Basic, Standard, or Premium tier cache of any size, and scale it to meet your application's performance needs. This quickstart demonstrates how to use the Azure portal to create a new Azure Cache for Redis instance.
1717

articles/azure-functions/configure-monitoring.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Configure monitoring for Azure Functions
33
description: Learn how to connect your function app to Application Insights for monitoring and how to configure data collection.
44
ms.service: azure-functions
55
ms.topic: how-to
6-
ms.date: 08/06/2024
6+
ms.date: 05/19/2025
77
ms.custom: devdivchpfy22
88

99
# Customer intent: As a developer, I want to understand how to configure monitoring for my functions correctly, so I can collect the data that I need.
@@ -297,7 +297,9 @@ When you create your function app in the [Azure portal](./functions-get-started.
297297
You can use the [`APPLICATIONINSIGHTS_AUTHENTICATION_STRING`](./functions-app-settings.md#applicationinsights_authentication_string) setting to enable connections to Application Insights using Microsoft Entra authentication. This creates a consistent authentication experience across all Application Insights pipelines, including Profiler and Snapshot Debugger, as well as from the Functions host and language-specific agents.
298298

299299
>[!NOTE]
300-
>There's no Entra authentication support for local development.
300+
>There's currently no Microsoft Entra ID authentication support for local development.
301+
>
302+
>When Ingesting data in a sovereign cloud, Microsoft Entra ID authentication isn't available when using the Application Insights SDK. OpenTelemetry-based data collection supports Microsoft Entra ID authentication across all cloud environments, including sovereign clouds.
301303
302304
The value contains either `Authorization=AAD` for a system-assigned managed identity or `ClientId=<YOUR_CLIENT_ID>;Authorization=AAD` for a user-assigned managed identity. The managed identity must already be available to the function app, with an assigned role equivalent to [Monitoring Metrics Publisher](/azure/role-based-access-control/built-in-roles/monitor#monitoring-metrics-publisher). For more information, see [Microsoft Entra authentication for Application Insights](/azure/azure-monitor/app/azure-ad-authentication).
303305

articles/azure-functions/dotnet-isolated-process-guide.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Guide for running C# Azure Functions in an isolated worker process
33
description: Learn how to use the .NET isolated worker model to run your C# functions in Azure, which lets you run your functions on currently supported versions of .NET and .NET Framework.
44
ms.service: azure-functions
55
ms.topic: conceptual
6-
ms.date: 09/05/2024
6+
ms.date: 05/19/2025
77
ms.custom:
88
- template-concept
99
- devx-track-dotnet
@@ -128,8 +128,7 @@ var builder = FunctionsApplication.CreateBuilder(args);
128128

129129
builder.Services
130130
.AddApplicationInsightsTelemetryWorkerService()
131-
.ConfigureFunctionsApplicationInsights()
132-
.AddSingleton<IHttpResponderService, DefaultHttpResponderService>();
131+
.ConfigureFunctionsApplicationInsights();
133132

134133
builder.Logging.Services.Configure<LoggerFilterOptions>(options =>
135134
{

articles/azure-functions/functions-bindings-http-webhook-trigger.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Azure Functions HTTP trigger
33
description: Learn how to call an Azure Function via HTTP.
44
ms.topic: reference
5-
ms.date: 07/16/2024
5+
ms.date: 05/02/2025
66
ms.devlang: csharp
77
# ms.devlang: csharp, java, javascript, powershell, python
88
ms.custom: devx-track-csharp, devx-track-python, devx-track-extended-java, devx-track-js, devx-track-ts
@@ -286,7 +286,7 @@ public HttpResponseMessage run(
286286

287287
# [Model v4](#tab/nodejs-v4)
288288

289-
The following example shows an HTTP trigger [TypeScript function](functions-reference-node.md?tabs=typescript). The function looks for a `name` parameter either in the query string or the body of the HTTP request.
289+
The following example shows an HTTP trigger [TypeScript function](functions-reference-node.md?tabs=typescript). The function looks for a `name` parameter either in the query string or the body of the [HTTP request](functions-reference-node.md?tabs=typescript&pivots=nodejs-model-v4#http-request).
290290

291291
:::code language="typescript" source="~/azure-functions-nodejs-v4/ts/src/functions/httpTrigger1.ts" :::
292292

@@ -301,13 +301,13 @@ TypeScript samples aren't documented for model v3.
301301

302302
# [Model v4](#tab/nodejs-v4)
303303

304-
The following example shows an HTTP trigger [JavaScript function](functions-reference-node.md). The function looks for a `name` parameter either in the query string or the body of the HTTP request.
304+
The following example shows an HTTP trigger [JavaScript function](functions-reference-node.md). The function looks for a `name` parameter either in the query string or the body of the [HTTP request](functions-reference-node.md?tabs=javascript&pivots=nodejs-model-v4#http-request).
305305

306306
:::code language="javascript" source="~/azure-functions-nodejs-v4/js/src/functions/httpTrigger1.js" :::
307307

308308
# [Model v3](#tab/nodejs-v3)
309309

310-
The following example shows a trigger binding in a *function.json* file and a [JavaScript function](functions-reference-node.md) that uses the binding. The function looks for a `name` parameter either in the query string or the body of the HTTP request.
310+
The following example shows a trigger binding in a *function.json* file and a [JavaScript function](functions-reference-node.md) that uses the binding. The function looks for a `name` parameter either in the query string or the body of the [HTTP request](functions-reference-node.md?tabs=javascript&pivots=nodejs-model-v3#http-request).
311311

312312
Here's the *function.json* file:
313313

articles/azure-functions/functions-how-to-use-azure-function-app-settings.md

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Configure function app settings in Azure Functions
33
description: Learn how to configure function app settings in Azure Functions.
44
ms.service: azure-functions
55
ms.topic: how-to
6-
ms.date: 11/11/2024
6+
ms.date: 05/21/2025
77
ms.custom: cc996988-fb4f-47, devx-track-azurecli, devx-track-azurepowershell, ignite-2024
88
ms.assetid: 81eb04f8-9a27-45bb-bf24-9ab6c30d205c
99
---
@@ -211,17 +211,21 @@ Choose the direction of the migration for your app on Windows.
211211

212212
### [Consumption-to-Premium](#tab/to-premium/azure-portal)
213213

214-
1. In the Azure portal, navigate to your Consumption plan app and choose **Change App Service plan** under **App Service plan**.
214+
1. In the Azure portal, navigate to your Consumption plan app, and in the left pane expand **App Service plan** and select **App Service plan**.
215215

216-
1. Select **Premium** under **Plan type**, create a new Premium plan, and select **OK**.
216+
1. In the **App Service plan** page, select **Change plan** under **Current App Service plan**.
217+
218+
1. In **Change App Service plan**, select **Premium** for **Plan type**, create a new Premium plan, and select **OK**.
217219

218220
For more information, see [Move an app to another App Service plan](../app-service/app-service-plan-manage.md#move-an-app-to-another-app-service-plan).
219221

220222
### [Premium-to-Consumption](#tab/to-consumption/azure-portal)
221223

222-
1. In the Azure portal, navigate to your Premium plan app and choose **Change App Service plan** under **App Service plan**.
224+
1. In the Azure portal, navigate to your Elastic Premium plan app, and in the left pane expand **App Service plan** and select **App Service plan**.
225+
226+
1. In the **App Service plan** page, select **Change plan** under **Current App Service plan**.
223227

224-
1. Select **Consumption** under **Plan type**, create a new Consumption plan, and select **OK**.
228+
1. In **Change App Service plan**, select **Consumption** under **Plan type**, create a new Consumption plan, and select **OK**.
225229

226230
For more information, see [Move an app to another App Service plan](../app-service/app-service-plan-manage.md#move-an-app-to-another-app-service-plan).
227231

0 commit comments

Comments
 (0)