Test, Build, Deliver!

Build Status PyPI Version License Documentation Status Coverage Status Code style: black StackOverflow: yabs




0.6, Date: Mar 25, 2024


Yabs has currently beta status.

Yabs is a command line tool, that runs a sequence of tasks in order to test, build, and deliver a Python software project.

_images/screenshot_ps_dryrun.png _images/termtosvg_yabs_run.svg


  • Define a custom workflow definition using YAML syntax.

  • Check preconditions to prevent unwanted or failing releases.

  • Run external tools like linters and check their return values.

  • Bump version number in Python or text files.

  • Create source and built distributions by running setup.py.

  • Tag, commit, and push to git repository.

  • Publish releases on PyPI, GitHub, or Windows Package Manager.

  • Comes with prebuilt activities, but can be extended by custom task-plugins.

  • This is a command line tool that runs on Linux, macOS, and Windows…

  • … and a library for use in custom Python projects.


Releases are hosted on PyPI and can be installed using pipenv (Python 3.7+ is required)

$ pipenv shell
(yabs) $ pipenv install yabs --upgrade
(yabs) $ yabs --version -v
(yabs) $ yabs --help
(yabs) $ yabs run --inc patch