LinkedIn's {py}gradle
To facilitate better building of Android apps, the technical team at LinkedIn has developed {py}gradle, a new powerful, flexible and reusable Python packaging system. Now available to the Open Source community, {py}gradle wraps Python code into the Gradle build automation tool so that developers can build Android apps more easily. The tool currently is used for all Android projects at LinkedIn, and the company expects it to be widely used in the Open Source community as well.
With {py}gradle, LinkedIn has bridged a gap between two similar but different technologies: Setuptools and Gradle. LinkedIn says that Python's Setuptools works well for self-contained Python applications with a small set of external dependencies. However, Setuptools can become problematic in certain situations as an organization's Python footprint grows, which led LinkedIn to integrate Gradle and a plugin architecture. For each language or technology stack, one simply needs to apply the build plugin for the underlying language or technology stack. With Gradle, LinkedIn was careful to enhance rather than replace the existing and idiomatic Python package management ecosystem.