-
Notifications
You must be signed in to change notification settings - Fork 2
feat: same interface for all brokers/result backends #10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR implements a unified interface for all PostgreSQL brokers and result backends by creating base classes that provide common functionality. The changes consolidate shared code patterns across different PostgreSQL driver implementations while maintaining compatibility with asyncpg, psqlpy, and aiopg drivers.
Key changes:
- Created base classes
BasePostgresBrokerandBasePostgresResultBackendto standardize interfaces - Refactored existing broker and result backend implementations to inherit from base classes
- Updated project configuration and dependencies for better development workflow
- Added comprehensive integration tests and documentation setup
Reviewed Changes
Copilot reviewed 23 out of 28 changed files in this pull request and generated 10 comments.
Show a summary per file
| File | Description |
|---|---|
src/taskiq_pg/_internal/broker.py |
New base broker class with common PostgreSQL broker functionality |
src/taskiq_pg/_internal/result_backend.py |
New base result backend class with shared result storage logic |
src/taskiq_pg/asyncpg/broker.py |
Refactored to inherit from base broker class |
src/taskiq_pg/asyncpg/result_backend.py |
Refactored to inherit from base result backend class |
src/taskiq_pg/psqlpy/broker.py |
Refactored to inherit from base broker class |
src/taskiq_pg/psqlpy/result_backend.py |
Refactored to inherit from base result backend class |
src/taskiq_pg/aiopg/result_backend.py |
Refactored to inherit from base result backend class |
tests/integration/test_result_backend.py |
New integration tests for all result backend implementations |
pyproject.toml |
Updated project configuration, dependencies, and build system |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
closes #8