Giter Club home page Giter Club logo

pygradle's Introduction

PyGradle

CircleCI Travis AppVeyor Bintray Linkedin license

PyGradle is an enterprise Python build system.

PyGradle leverages Gradle to empower Python's existing ecosystem to solve problems like dependency management, polyglot projects, and lots more. LinkedIn has been using PyGradle for several years to successfully manage thousands of Python dependencies.

PyGradle produces artifacts, e.g., source distributions, that are forward and backward compatible with artifacts produced by vanilla setuptools, so there is nothing stopping you from using PyGradle with one, two, or all of your Python projects right away!

As a general philosophy, we strive to enhance Python rather than replace it, thereby keeping open source Python development idiomatic and intuitive.

Usage

PyGradle does not include batteries: there are a few things that you're going to have to do to use PyGradle for things beyond our provided examples.

In particular, you're going to have to:

  • Decide how you want to host your artifacts.
  • Decide how you want to distribute a custom setuptools distribution class.
  • Author your build.gradle file.

These decisions and tasks shouldn't take too long for you finish, but they are required. A deeper dive into what it takes to get started, how you can use our demonstrative Artifactory instance, and a few project examples is available in our detailed getting started guide.

Although not required, if you've never used Gradle before, you might find reading Gradle's user guide helpful.

Plugins

PyGradle comes with several plugins available, for specific details on each plugin check the documentation specific to that plugin.

Plugin Usage
com.linkedin.python Extending PyGradle
com.linkedin.python-sdist Developing Source Distributions
com.linkedin.python-web-app Developing Flask/Gunicorn Web Applications
com.linkedin.python-cli Developing Command Line Applications
com.linkedin.python-flyer Developing Flyer (Flask + Ember) Applications
com.linkedin.python-pex Developing Pex Applications

Developers

We're actively maintaining PyGradle and accepting pull requests.

If you're interested in contributing code to PyGradle, please see our developers document to get started. This document covers how to build, test, and debug PyGradle, and kindly asks that you follow a few conventions when submitting pull requests.

Compatibility

Software

We support PyGradle on the following software versions.

Software Version
Java 8.0
Gradle 5.0

We're happy to review and merge pull requests that add additional support to future versions of software.

Platforms

PyGradle works on the following platforms.

Platform Support
Linux Full
OS X Full
Windows Partial

Additional compatibility notes are availabe here. We're happy to review and merge pull requests that add support for additional platforms.

pygradle's People

Contributors

benoitperrot avatar bivas avatar bzzzzzz avatar chrisbrake avatar daldei avatar dnozay avatar dsully avatar elautz avatar ethankhall avatar goyalankit avatar jlleitschuh avatar lorencarvalho avatar madhurkhandelwal avatar mhbkb avatar mockitoguy avatar pioterj avatar qlan2 avatar ricky-n avatar schakrava avatar scottjasso avatar scphantm avatar sholsapp avatar warsaw avatar wgreven-ibr avatar worr avatar zvezdan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.