Skip to content

Remove all async support, make framework entirely sync-only#20

Open
ZechCodes wants to merge 3 commits intomainfrom
claude/remove-async-support-tj6Bt
Open

Remove all async support, make framework entirely sync-only#20
ZechCodes wants to merge 3 commits intomainfrom
claude/remove-async-support-tj6Bt

Conversation

@ZechCodes
Copy link
Owner

This removes the async dependency resolution system that was added in
beta.8-beta.12. The framework is now purely synchronous.

Changes:

  • Delete bevy/async_hooks.py
  • Rewrite hooks.py: remove async from HookManager.handle/filter
  • Rewrite find_results.py: remove await, get_async, make get() sync
  • Rewrite injections.py: remove call_using_async, is_async, make sync
  • Rewrite containers.py: make all injection methods sync, remove async branches
  • Delete 3 async test files and 11 async tests from test_bevy.py
  • Remove pytest-asyncio dependency from pyproject.toml
  • Remove async planning docs and example files
  • Update CLAUDE.md, api.md, usage-guide.md, feature-planning docs

All 161 existing sync tests continue to pass.

https://claude.ai/code/session_01AbGbMaZmnKSjsBMgxjGcDZ

claude and others added 2 commits February 19, 2026 04:03
This removes the async dependency resolution system that was added in
beta.8-beta.12. The framework is now purely synchronous.

Changes:
- Delete bevy/async_hooks.py
- Rewrite hooks.py: remove async from HookManager.handle/filter
- Rewrite find_results.py: remove __await__, get_async, make get() sync
- Rewrite injections.py: remove call_using_async, is_async, make sync
- Rewrite containers.py: make all injection methods sync, remove async branches
- Delete 3 async test files and 11 async tests from test_bevy.py
- Remove pytest-asyncio dependency from pyproject.toml
- Remove async planning docs and example files
- Update CLAUDE.md, api.md, usage-guide.md, feature-planning docs

All 161 existing sync tests continue to pass.

https://claude.ai/code/session_01AbGbMaZmnKSjsBMgxjGcDZ
The test workflow was using --cov flags but pytest-cov isn't a dependency,
causing all CI checks to fail. Also adds an auto-merge workflow that merges
PRs labeled "auto-merge" once all checks pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@ZechCodes ZechCodes added the auto-merge Automatically merge when all checks pass label Feb 20, 2026
- pytest 6.x uses ast.Str which was removed in Python 3.14, causing
  collection failures on macOS/Windows runners
- Matrix now matches pyproject.toml's python = "^3.12" constraint
- Upgrade setup-python to v5 and cache to v4

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

auto-merge Automatically merge when all checks pass

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants