Python SDK: return details from stream, topic, and consumer group creation
I maintainer di solito rispondono entro 1 giorno
@EthemKD ci sta già lavorando.
Dal 14/9/2026.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
Description
The Rust SDK returns the created resource details from these methods:
async fn create_stream(&self, name: &str)
-> Result<StreamDetails, IggyError>;
async fn create_topic(
&self,
stream_id: &Identifier,
name: &str,
options: &TopicCreateOptions,
) -> Result<TopicDetails, IggyError>;
async fn create_consumer_group(
&self,
stream_id: &Identifier,
topic_id: &Identifier,
name: &str,
) -> Result<ConsumerGroupDetails, IggyError>;
The Python methods perform the creation successfully but discard these return values and resolve to None.
StreamDetails, TopicDetails, and ConsumerGroupDetails are already implemented and registered as Python classes, so no new wrapper types are required.
This covers B13, B17, and B21 of the Python SDK parity work tracked in #3893.
Affected area / component
Python SDK
Proposed solution
- Change
IggyClient.create_stream()to returnStreamDetails. - Change
IggyClient.create_topic()to returnTopicDetails. - Change
IggyClient.create_consumer_group()to returnConsumerGroupDetails. - Convert each Rust result through the existing
Fromimplementation instead of discarding it. - Update the method documentation and regenerate
foreign/python/apache_iggy.pyi. - Extend the existing stream, topic, and consumer-group tests to assert that:
- The returned type is the corresponding Details class.
- The returned ID, name, and resource-specific fields match the created resource.
- Fetching the resource afterward returns matching details.
This changes only successful return values; existing arguments and error behavior remain unchanged.
Alternatives considered
Keep returning None and require a second get_* request. This adds an unnecessary round trip and remains inconsistent with the Rust API.
Contribution
- I'm willing to submit a pull request to implement this feature
Good first issue
- I think this could be a good first issue for a new contributor
- Lingua principale
- Rust
- Stelle
- 5.2k
- Fork
- 502
- Merge medio
- 3g 8h
- PR unite (30g)
- 146
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di apache/iggy
-
Go examples: add a message envelope producer and consumerForse già presa @ThunderGod77 l’ha presa oggi. Apertago good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
apache/iggy#4694 · 3 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
HTTP client treats a consumer group as a plain consumerForse già presa @mohitduhan19 l’ha presa 18 giorni fa. Apertabug rust server
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
apache/iggy#4408 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Add the fail-fast connection option to the Rust and Python quick-startsForse già presa @QIW9 l’ha presa 6 giorni fa. Apertadocs good first issue
Difficoltà 1/5 1-3 ore Idoneità per principianti 92/100
apache/iggy#4261 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
bug python sdk
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
apache/iggy#3748 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
perf(cluster): reduce idle replica traffic caused by Commit heartbeatsForse già presa @mmmmxa l’ha presa oggi. Apertaapi cluster performance
apache/iggy#4707 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 2 giorni
-
Android visitors are offered the Linux .deb on cap.so's homepage and download pageForse già presa @patrickballard l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
CapSoftware/Cap#3677 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
DioxusLabs/blitz#1371 ·
I maintainer di solito rispondono entro 1 giorno