You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iggy.apache.org by "mmodzelewski (via GitHub)" <gi...@apache.org> on 2026/02/24 09:14:12 UTC

[I] Python SDK: Add TCP/TLS support, integration tests and examples [iggy]

mmodzelewski opened a new issue, #2809:
URL: https://github.com/apache/iggy/issues/2809

   ## Summary
   
   The Python SDK (PyO3-based wrapper around the Rust SDK) currently only exposes a plain TCP connection via \`IggyClientBuilder::new().with_tcp()\`. There is no way to enable TLS from the Python API, and there are no TLS integration tests or examples.
   
   ## Current State
   
   - **TLS implementation**: Not exposed to Python users. The \`IggyClient.__init__\` method in \`foreign/python/src/client.rs\` hardcodes \`IggyClientBuilder::new().with_tcp().with_server_address(...).build()\` with no TLS options. The \`from_connection_string\` classmethod could potentially support TLS via connection string, but this is not documented or tested.
   - **Integration tests**: No TLS tests exist
   - **Examples**: No TLS-specific examples in \`examples/python/\`
   
   ## Requirements
   
   ### TLS Support
   - Expose TLS configuration options in the Python \`IggyClient\`:
     - Option to enable TLS on TCP connections
     - Option to specify CA certificate file path
     - Option to specify TLS domain
     - Either via constructor parameters or via a builder pattern
   - Ensure \`from_connection_string\` works with TLS connection strings and document this
   
   ### Integration Tests
   - Add integration test(s) that connect to a TLS-enabled Iggy server from Python
   - Use custom certificates from \`core/certs/\` (\`iggy_ca_cert.pem\`, \`iggy_cert.pem\`, \`iggy_key.pem\`)
   - Test scenarios:
     - Successful TLS connection with custom CA certificate
     - Basic message send/receive over TLS connection
   
   ### Examples
   - Add a TLS example in \`examples/python/\` demonstrating:
     - How to configure the client with TLS enabled
     - How to specify a custom CA certificate file
     - A simple producer/consumer flow over TLS
   
   ## Reference
   
   - Python client implementation: \`foreign/python/src/client.rs\`
   - Server TLS config env vars: \`IGGY_TCP_TLS_ENABLED=true\`, \`IGGY_TCP_TLS_CERT_FILE\`, \`IGGY_TCP_TLS_KEY_FILE\`
   - Custom certs location: \`core/certs/\`
   - Rust SDK TLS support (underlying): \`core/sdk/src/tcp/tcp_tls_connection_stream.rs\`


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@iggy.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] Python SDK: Add TCP/TLS support, integration tests and examples [iggy]

Posted by "mmodzelewski (via GitHub)" <gi...@apache.org>.
mmodzelewski closed issue #2809: Python SDK: Add TCP/TLS support, integration tests and examples
URL: https://github.com/apache/iggy/issues/2809


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@iggy.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] Python SDK: Add TCP/TLS support, integration tests and examples [iggy]

Posted by "robinshen36 (via GitHub)" <gi...@apache.org>.
robinshen36 commented on issue #2809:
URL: https://github.com/apache/iggy/issues/2809#issuecomment-3950373050

   @algora-pbc attempt
   
   Hi! I'd like to work on this.
   
   **My approach:**
   I'll analyze the requirements and implement a solution following the project's coding standards. Based on the task description involving python, rust, api, I'll ensure the implementation is robust, well-tested, and properly documented.
   
   **Estimated time:** 3-5 days
   
   **Why me:**
   - Experience with python and related technologies
   - Familiar with open source contribution workflows
   - Strong focus on code quality and testing
   
   I'll have a PR ready soon!
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@iggy.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] Python SDK: Add TCP/TLS support, integration tests and examples [iggy]

Posted by "robinshen36 (via GitHub)" <gi...@apache.org>.
robinshen36 commented on issue #2809:
URL: https://github.com/apache/iggy/issues/2809#issuecomment-3956451798

   @algora-pbc attempt
   
   Saw this and immediately thought I could contribute here...
   
   This is exactly the type of work I've been focusing on recently.
   
   Would start by reviewing the codebase, then implement the solution.
   
   Thanks for considering! Looking forward to your response.
   
   ---
   Match score: 65/100
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@iggy.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] Python SDK: Add TCP/TLS support, integration tests and examples [iggy]

Posted by "mmodzelewski (via GitHub)" <gi...@apache.org>.
mmodzelewski commented on issue #2809:
URL: https://github.com/apache/iggy/issues/2809#issuecomment-3950768076

   Hi @robinshen36, this issue is already a work in progress, please see the linked PR. 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@iggy.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org