-
Notifications
You must be signed in to change notification settings - Fork 65
Description
🐛 Describe the bug
The official documentation and repo samples for Durable Functions Python v2 (Blueprint pattern) show a
.build().get_user_function().orchestrator_functionaccessor for orchestrator unit testing. However, after installingazure-functions-durable==1.4.0from PyPI, neitherDFAppnorBlueprintexposes a.build()method. This makes it impossible to use the recommended test pattern for orchestrators.
🤔 Expected behavior
The
.build()method (and.get_user_function()) should be available as shown in the official repo and samples for v1.4.0, enabling the following test pattern:orchestrator = bp.build().get_user_function().orchestrator_functionThis is important for maintainable, idiomatic unit tests using the Blueprint pattern.
☕ Steps to reproduce
- Install the latest SDK:
pip install azure-functions-durable==1.4.0- Try to access
.build()on a Blueprint or DFApp instance:from azure.durable_functions.decorators.durable_app import Blueprint, DFApp bp = Blueprint() app = DFApp() bp.build() # AttributeError app.build() # AttributeError- Observe error:
AttributeError: 'Blueprint' object has no attribute 'build'- Official sample using .build()
Pattern: Durable Functions v2, Blueprint pattern, local development (macOS, Python 3.13).
⚡If deployed to Azure
N/A – this is a local development/testing issue with the SDK package.
- Timeframe issue observed: Ongoing since v1.4.0 release
- Function App name: N/A
- Function name(s): N/A
- Azure region: N/A
- Orchestration instance ID(s): N/A
- Azure storage account name: N/A
Additional context:
- The repo/tag for 1.4.0 includes
.build()and the new test pattern, but the PyPI release does not.- This blocks adoption of the official Blueprint unit test pattern and causes confusion for users following the docs.
- Please ensure the next PyPI release includes the
.build()and.get_user_function()APIs as present in the repo/tag, or clarify in the docs if a dev/nightly build is required.