You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
refactor: move async dependencies from optional to direct (#386)
## Summary
This PR moves starlette, uvicorn, and uvicorn-worker from optional dependencies to direct dependencies, simplifying the installation process for users who need async functionality.
## Impact Analysis
- **Installation size increase: < 1MB** (specifically 816KB, ~3.5% increase)
- Base installation: 23MB → With async deps: 24MB
- Removes the need for `pip install functions-framework[async]`
- Maintains Python 3.8+ requirement for these dependencies
## Changes
- Move async dependencies to direct dependencies in `pyproject.toml`
- Remove `[async]` extra dependency configuration
- Update imports to be direct instead of conditional
- Remove "Starlette is not installed" error messages
- Update tests to reflect direct dependency availability
## Test Plan
All existing tests pass with 100% coverage. The async functionality remains unchanged, just the installation method is simplified.
0 commit comments