Py4J 0.10.1 has just been released on pypi and maven central.
This is a backward-compatible release with important bugfixes and features:
- Major performance fix: the Python side is now using default buffering when reading responses from the Java side. This is particularly important if you transfer large parameters (large strings or byte arrays). A simple benchmark found that repeatedly sending 10 MB strings went from 99 seconds to 1 second. Thanks to @kaytwo for finding this bug and suggesting a fix.
- Both the Java and the Python libraries are now available as OSGi bundles. Thanks to kichwacoders for funding the work.
- The 0.10.0 jar uploaded to PyPI wrongly required Java 8. The Java compatibility has been restored to 1.6. Thanks to @agronholm for finding this bug.
- Added the __version__ attribute in the py4j package to conform to PEP396. Thanks to @lessthanoptimal for reporting this bug.
- Github 0.10.1 milestone
This release has been made possible by the generous contributions from many users. Every bug reports, patches, pull requests, ideas or help on the mailing list is greatly appreciated.