Skip to content

Conversation

@danfimov
Copy link
Owner

@danfimov danfimov commented Oct 8, 2025

closes #8

@danfimov danfimov self-assigned this Oct 8, 2025
@danfimov danfimov changed the title feat: add schedule source feat: same interface for all brokers/result backends Oct 8, 2025
@danfimov danfimov marked this pull request as ready for review October 8, 2025 17:24
Copilot AI review requested due to automatic review settings October 8, 2025 17:24
Copy link

Copilot AI left a 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 BasePostgresBroker and BasePostgresResultBackend to 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.

@danfimov danfimov merged commit 55660b8 into main Oct 8, 2025
4 checks passed
@danfimov danfimov deleted the add-schedule-source branch October 8, 2025 17:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Create same interface for all brokers/result backends

1 participant