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.15-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8ef87ef618e7bb0a655390d49d40e402f6ea20fa50843d0619fc272902f80db6 |
|
MD5 | 297ad3b8a1b607002b842d8e580ceaf4 |
|
BLAKE2b-256 | 2fd7c44fed2210ffeeb555ae4fe21b044bedcb6c7635aef850462d941bd708a2 |