From ce0432a7d2ec6f17138ea52079d55cd02136e86b Mon Sep 17 00:00:00 2001 From: Andy Staples Date: Tue, 1 Sep 2026 14:38:21 -0600 Subject: [PATCH 1/2] Remove preview extension bundle docs Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- azure-functions-durable/MIGRATION_GUIDE.md | 26 +--------------------- azure-functions-durable/samples/README.md | 4 +--- 2 files changed, 2 insertions(+), 28 deletions(-) diff --git a/azure-functions-durable/MIGRATION_GUIDE.md b/azure-functions-durable/MIGRATION_GUIDE.md index 74acae21..5c0762c5 100644 --- a/azure-functions-durable/MIGRATION_GUIDE.md +++ b/azure-functions-durable/MIGRATION_GUIDE.md @@ -32,8 +32,6 @@ Before upgrading, account for these 2.x requirements: - **Only the Azure Functions Python V2 programming model is supported.** Apps must use `DFApp` or `Blueprint` decorators. The classic programming model with one directory and `function.json` per function is not supported. -- **A modern Durable Functions host is required.** Local sample apps use the - preview extension bundle shown below. - **The OpenAI Agents integration was removed.** The `azure.durable_functions.openai_agents` package is not available in 2.x. - **The primary APIs now come from `durabletask`.** Compatibility aliases are @@ -72,29 +70,7 @@ azure-functions>=2.3.0b2 azure-functions-durable>=2.0.0b1,<3 ``` -### 3. Update the extension bundle - -Use the preview extension bundle that contains the required Durable Task gRPC -runtime: - -```json -{ - "version": "2.0", - "extensionBundle": { - "id": "Microsoft.Azure.Functions.ExtensionBundle.Preview", - "version": "[4.*, 5.0.0)" - }, - "extensions": { - "durableTask": { - "storageProvider": { - "type": "AzureStorage" - } - } - } -} -``` - -### 4. Keep supported 1.x code temporarily +### 3. Keep supported 1.x code temporarily A decorator-based 1.x orchestrator and client starter can run through the 2.x compatibility layer without changing their function shape: diff --git a/azure-functions-durable/samples/README.md b/azure-functions-durable/samples/README.md index 513ab09f..333e58cb 100644 --- a/azure-functions-durable/samples/README.md +++ b/azure-functions-durable/samples/README.md @@ -16,9 +16,7 @@ durabletask-native APIs provided by `azure-functions-durable` 2.x. - [Azure Functions Core Tools 4.x](https://learn.microsoft.com/azure/azure-functions/functions-run-local) - [Azurite](https://learn.microsoft.com/azure/storage/common/storage-use-azurite) -The samples use the preview Azure Functions extension bundle required by the -Durable Functions 2.x provider. Their `local.settings.json` files connect to -Azurite. +The samples' `local.settings.json` files connect to Azurite. ## Run a sample From a193704c3f410e4ebf193d5076c90be4e4757a70 Mon Sep 17 00:00:00 2001 From: Andy Staples Date: Tue, 1 Sep 2026 14:39:27 -0600 Subject: [PATCH 2/2] Use public extension bundles in AFD apps Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- azure-functions-durable/samples/durable-entities/host.json | 2 +- azure-functions-durable/samples/fan-out-fan-in/host.json | 2 +- azure-functions-durable/samples/function-chaining/host.json | 2 +- azure-functions-durable/samples/human-interaction/host.json | 2 +- tests/azure-functions-durable/e2e/apps/dtask_style/host.json | 2 +- tests/azure-functions-durable/e2e/apps/tracing/host.json | 2 +- tests/azure-functions-durable/e2e/apps/v1_style/host.json | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/azure-functions-durable/samples/durable-entities/host.json b/azure-functions-durable/samples/durable-entities/host.json index 679e848d..c9c9c83d 100644 --- a/azure-functions-durable/samples/durable-entities/host.json +++ b/azure-functions-durable/samples/durable-entities/host.json @@ -1,7 +1,7 @@ { "version": "2.0", "extensionBundle": { - "id": "Microsoft.Azure.Functions.ExtensionBundle.Preview", + "id": "Microsoft.Azure.Functions.ExtensionBundle", "version": "[4.*, 5.0.0)" }, "extensions": { diff --git a/azure-functions-durable/samples/fan-out-fan-in/host.json b/azure-functions-durable/samples/fan-out-fan-in/host.json index 679e848d..c9c9c83d 100644 --- a/azure-functions-durable/samples/fan-out-fan-in/host.json +++ b/azure-functions-durable/samples/fan-out-fan-in/host.json @@ -1,7 +1,7 @@ { "version": "2.0", "extensionBundle": { - "id": "Microsoft.Azure.Functions.ExtensionBundle.Preview", + "id": "Microsoft.Azure.Functions.ExtensionBundle", "version": "[4.*, 5.0.0)" }, "extensions": { diff --git a/azure-functions-durable/samples/function-chaining/host.json b/azure-functions-durable/samples/function-chaining/host.json index 679e848d..c9c9c83d 100644 --- a/azure-functions-durable/samples/function-chaining/host.json +++ b/azure-functions-durable/samples/function-chaining/host.json @@ -1,7 +1,7 @@ { "version": "2.0", "extensionBundle": { - "id": "Microsoft.Azure.Functions.ExtensionBundle.Preview", + "id": "Microsoft.Azure.Functions.ExtensionBundle", "version": "[4.*, 5.0.0)" }, "extensions": { diff --git a/azure-functions-durable/samples/human-interaction/host.json b/azure-functions-durable/samples/human-interaction/host.json index 679e848d..c9c9c83d 100644 --- a/azure-functions-durable/samples/human-interaction/host.json +++ b/azure-functions-durable/samples/human-interaction/host.json @@ -1,7 +1,7 @@ { "version": "2.0", "extensionBundle": { - "id": "Microsoft.Azure.Functions.ExtensionBundle.Preview", + "id": "Microsoft.Azure.Functions.ExtensionBundle", "version": "[4.*, 5.0.0)" }, "extensions": { diff --git a/tests/azure-functions-durable/e2e/apps/dtask_style/host.json b/tests/azure-functions-durable/e2e/apps/dtask_style/host.json index dd14c74c..c34a812b 100644 --- a/tests/azure-functions-durable/e2e/apps/dtask_style/host.json +++ b/tests/azure-functions-durable/e2e/apps/dtask_style/host.json @@ -6,7 +6,7 @@ } }, "extensionBundle": { - "id": "Microsoft.Azure.Functions.ExtensionBundle.Preview", + "id": "Microsoft.Azure.Functions.ExtensionBundle", "version": "[4.*, 5.0.0)" }, "extensions": { diff --git a/tests/azure-functions-durable/e2e/apps/tracing/host.json b/tests/azure-functions-durable/e2e/apps/tracing/host.json index 4f13f77a..8ebdd027 100644 --- a/tests/azure-functions-durable/e2e/apps/tracing/host.json +++ b/tests/azure-functions-durable/e2e/apps/tracing/host.json @@ -2,7 +2,7 @@ "version": "2.0", "telemetryMode": "OpenTelemetry", "extensionBundle": { - "id": "Microsoft.Azure.Functions.ExtensionBundle.Preview", + "id": "Microsoft.Azure.Functions.ExtensionBundle", "version": "[4.*, 5.0.0)" }, "extensions": { diff --git a/tests/azure-functions-durable/e2e/apps/v1_style/host.json b/tests/azure-functions-durable/e2e/apps/v1_style/host.json index dd14c74c..c34a812b 100644 --- a/tests/azure-functions-durable/e2e/apps/v1_style/host.json +++ b/tests/azure-functions-durable/e2e/apps/v1_style/host.json @@ -6,7 +6,7 @@ } }, "extensionBundle": { - "id": "Microsoft.Azure.Functions.ExtensionBundle.Preview", + "id": "Microsoft.Azure.Functions.ExtensionBundle", "version": "[4.*, 5.0.0)" }, "extensions": {