feat(python): add stream listing, update, delete, and purge - #3701
feat(python): add stream listing, update, delete, and purge#3701felixfaisal wants to merge 6 commits into
Conversation
|
Thanks for the PR. It is labeled Slash commands (own line, regular comment) move it around the queue:
See CONTRIBUTING.md for details. |
|
/request-review @slbotbm |
|
/request-review @hubcio |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #3701 +/- ##
============================================
+ Coverage 76.01% 76.02% +0.01%
Complexity 969 969
============================================
Files 1325 1325
Lines 162380 162459 +79
Branches 135260 135260
============================================
+ Hits 123427 123508 +81
+ Misses 35291 35289 -2
Partials 3662 3662
🚀 New features to boost your workflow:
|
ryankert01
left a comment
There was a problem hiding this comment.
Overall lg to me, a comment.
| mine = [by_name[name] for name in created] | ||
| assert [stream.id for stream in mine] == sorted(stream.id for stream in mine) |
There was a problem hiding this comment.
It occurs to me that it's not testing get_streams() ordering since it's constructed based on created ordering. Although I'm also not quite sure whether if iggy wants to ensure the ordering or not in the distributed future, kafka for example, don't.
|
Please do not force push. Instead, create new commits with your work. This makes it easier for me to understand the changes /author |
|
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. If you need a review, please ensure CI is green and the PR is rebased on the latest master. Don't hesitate to ping the maintainers - either Thank you for your contribution! |
|
This pull request was automatically closed because it has been inactive for 14 days. Feel free to reopen it if you'd like to continue working on it. |
|
Since the original author has stopped responding, I'll take over and complete this PR. |
e2ce0d9 to
876ebcb
Compare
|
I added test clean up code as well. /ready |
Which issue does this PR address?
Closes #3520
Rationale
The Python SDK exposed only create_stream and get_stream, so Python users
could not list, rename, delete, or purge streams — operations the Rust SDK
already supports. This closes that parity gap.
What changed?
Added get_streams, update_stream, delete_stream, and purge_stream to the
Python client by wrapping the Rust StreamClient methods via PyO3, plus a new
Stream wrapper class for the list result. Extended test_stream.py with
end-to-end coverage and regenerated apache_iggy.pyi.
Local Execution
AI Usage
If AI tools were used, please answer:
Yup