PyBuilder
Project description
PyBuilder is a software build tool written in 100% pure Python, mainly targeting Python applications.
PyBuilder is based on the concept of dependency based programming, but it also comes with a powerful plugin mechanism, allowing the construction of build life cycles similar to those known from other famous (Java) build tools.
PyBuilder is running on the following versions of Python: 2.6, 2.7, 3.3, 3.4, 3.5 and PyPy.
See the Travis Build for version specific output.
Installing
PyBuilder is available using pip:
$ pip install pybuilder
For development builds use:
$ pip install --pre pybuilder
See the Cheeseshop page for more information.
Getting started
PyBuilder emphasizes simplicity. If you want to build a pure Python project and use the recommended directory layout, all you have to do is create a file build.py with the following content:
from pybuilder.core import use_plugin
use_plugin("python.core")
use_plugin("python.unittest")
use_plugin("python.coverage")
use_plugin("python.distutils")
default_task = "publish"
See the PyBuilder homepage for more details.
Plugins
PyBuilder provides a lot of plugins out of the box that utilize tools and libraries commonly used in Python projects:
python.coverage - Uses the standard coverage module to calculate unit test line coverage.
python.distutils - Provides support to generate and use setup.py files.
python.django - Provides support for developing Django applications.
python.frosted - Lint source files with frosted
python.flake8 - Provides support for flake8
python.pep8 - Provides support for pep8
python.install_dependencies - Installs the projects build and runtime dependencies using pip
python.pychecker - Provides support for pychecker
python.Pydev - Generates project files to import projects into Eclipse PyDev
python.PyCharm - Generates project files to import projects into Jetbrains PyCharm
python.pylint - Executes pylint on your sources.
python.pymetrics - Calculates several metrics using pymetrics
python.unittest - Executes unittest test cases
python.integrationtest - Executes python scripts as integrations tests
python.pytddmon - Provides visual feedback about unit tests through pytddmon
python.cram - Runs cram tests
python.sphinx - Build your documentation with sphinx
python.sonarqube - Analyze your project with SonarQube.
python.snakefood - Analyze your code dependencies with snakefood.
In addition, a few common plugins are provided:
copy_resources - Copies files.
filter_resources - Filters files by replacing tokens with configuration values.
source_distribution - Bundles a source distribution for shipping.
External plugins: * pybuilder_aws_plugin - handle AWS functionality
Release Notes
The release notes can be found here. There will also be a git tag with each release. Please note that we do not currently promote tags to GitHub “releases”.
Development
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for pybuilder-0.11.13-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ccbb903374f9993b697ce5566a7c4449d754291516a0bda9ec1d842eacc477ac |
|
MD5 | faca81f5a0f120788be9faea6ac7811a |
|
BLAKE2b-256 | f1eba4e5214369686e51dbfa4a4ecbc3bcfe8d046d9ec5da879f5f9bfa198ca5 |