You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by GitBox <gi...@apache.org> on 2021/09/02 12:53:41 UTC

[GitHub] [pulsar] zbentley opened a new issue #11899: If feasible, publish source releases of the Python `pulsar-client` package

zbentley opened a new issue #11899:
URL: https://github.com/apache/pulsar/issues/11899


   **Is your enhancement request related to a problem? Please describe.**
   Discovered while diagnosing and working to test fixes on https://github.com/apache/pulsar/issues/11823; this would be an easy way to release fixes such as that without making a packager spend a lot of unplanned time between major releases. 
   
   Additionally, issues like https://github.com/apache/pulsar/issues/11203 would have a workaround if source releases were available, also preventing packagers from being interrupted. 
   
   **Describe the solution you'd like**
   
   The `pulsar-client` PyPi package is distributed as a wheel (compiled code + python bindings) at present. That limits platform availability to the OSes for which Pulsar maintainers have built wheels, or to platforms for which clients are able to compile their own client. When hotfixes to the client are released, this also prolongs the time until they are available, since a Pulsar maintainer has to build and package wheels.
   
   If feasible, I would like Python [source distributions](https://packaging.python.org/glossary/#term-Source-Distribution-or-sdist) of the `pulsar-client` code to be made available. This can be accomplished in one of roughly two ways, both of which will take a bit of work (and I recognize it may not be worth it):
   
   1. Vendor the entire pulsar C++ client code with the Python client sources when published to PyPi. External dependencies (e.g. boost-python/openssl/protoc/googletest/etc.) do not need to be vendored; many source releases on PyPi have such external dependencies.
   2. Provide releases of `libpulsar` through OS package managers and switch `pulsar-client` on PyPi to be a dynamically linked thin binding layer over the OS's provided libpulsar. This is both a lot more work and a lot less benefit (doesn't allow e.g. prerelease Python client code to get fixes to the C++ client itself, just the bindings), so I favor option 1.
   
   Source releases should be published to PyPi whenever binary/wheel releases are published.
   
   **Describe alternatives you've considered**
   Compiling the Python client by hand is possible, but unwieldy. Documentation on how to do this is limited and it requires a decent amount of know-how when dealing with cmake issues or compile errors, which may not be something exclusively Python developers are familiar with.
   


-- 
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@pulsar.apache.org

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



[GitHub] [pulsar] codelipenghui commented on issue #11899: If feasible, publish source releases of the Python `pulsar-client` package

Posted by GitBox <gi...@apache.org>.
codelipenghui commented on issue #11899:
URL: https://github.com/apache/pulsar/issues/11899#issuecomment-1058886546


   The issue had no activity for 30 days, mark with Stale label.


-- 
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@pulsar.apache.org

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



[GitHub] [pulsar] BewareMyPower commented on issue #11899: If feasible, publish source releases of the Python `pulsar-client` package

Posted by GitBox <gi...@apache.org>.
BewareMyPower commented on issue #11899:
URL: https://github.com/apache/pulsar/issues/11899#issuecomment-912256165


   @timmyyuan @zymap Could you help take a look?


-- 
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@pulsar.apache.org

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