Uh oh!
There was an error while loading. Please reload this page.
feat(asyncio): add Reader API - #309
Conversation
There was a problem hiding this comment.
Pull request overview
Note
Copilot couldn't run its full agentic review because no GitHub Actions runner was available. Make sure your repository has a runner available to run Copilot's review, or add a copilot-setup-steps.yml file specifying one with the runs-on attribute. See the docs for more details.
Adds an asyncio-compatible Reader API to the Python Pulsar client, including C++ binding support and new integration tests.
Changes:
- Introduced
pulsar.asyncio.Readerwith asyncread_next,seek,has_message_available, andclose. - Added pybind11 C++ exports for Reader async methods and Client async reader creation.
- Added asyncio test coverage for basic reader flows (start positions, seek, message availability, auth failure).
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| tests/asyncio_test.py | Adds asyncio integration tests validating new Reader behaviors (read, seek, has-message, auth). |
| src/reader.cc | Exposes Reader async operations (read_next_async, seek_async, etc.) via pybind11 with GIL release. |
| src/client.cc | Exposes async reader creation APIs (create_reader_async, create_reader_async_v2) for asyncio wrapper use. |
| pulsar/asyncio.py | Implements the new Reader wrapper and Client.create_reader() coroutine. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
No description provided.