yabs


Nameyabs JSON
Version 0.6.1 PyPI version JSON
download
home_pagehttps://github.com/mar10/yabs
SummaryYet Another Build Script
upload_time2024-03-24 11:55:20
maintainerMartin Wendt
docs_urlNone
authorMartin Wendt
requires_pythonNone
licenseMIT
keywords build setup ci workflow automation
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI
coveralls test coverage No coveralls.
            # ![logo](https://raw.githubusercontent.com/mar10/yabs/master/docs/sphinx/yabs_48x48.png) yabs

> Test, Build, Deliver!

[![Build Status](https://travis-ci.com/mar10/yabs.svg?branch=master)](https://travis-ci.com/github/mar10/yabs)
[![Latest Version](https://img.shields.io/pypi/v/yabs.svg)](https://pypi.python.org/pypi/yabs/)
[![License](https://img.shields.io/pypi/l/yabs.svg)](https://github.com/mar10/yabs/blob/master/LICENSE.txt)
[![Documentation Status](https://readthedocs.org/projects/yabs/badge/?version=latest)](https://yabs.readthedocs.io/)
[![Coverage Status](https://coveralls.io/repos/github/mar10/yabs/badge.svg?branch=master)](https://coveralls.io/github/mar10/yabs?branch=master)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)
[![Released with: Yabs](https://img.shields.io/badge/released%20with-yabs-yellowgreen)](https://github.com/mar10/yabs)
[![StackOverflow: yabs](https://img.shields.io/badge/StackOverflow-yabs-blue.svg)](https://stackoverflow.com/questions/tagged/yabs)


## Overview

Build and deployment automation for Python projects.

A typical release workflow may look like this:

1. Check preconditions: *Is the workspace clean, anything to commit?*,
   *Is GitHub reachable?*, *Are we on the correct branch?*, ...
2. Make sure static code linters and unit tests pass.
3. Bump the project's version number (major, minor, or patch, according to
   [Semantic Versioning](https://semver.org)). <br>
   Then patch the version string into the respective Python module or text file.
4. Build *sdist*, *wheel* and *msi installer* assets.
5. Tag the version, commit, and push.
6. Upload distribution to [PyPI](https://pypi.org).
7. Create a new release on [GitHub](https://github.com) and upload assets.
8. Create a new release on the 
   [Windows Package Manager Repository](https://github.com/microsoft/winget-pkgs).
9. Bump, tag, commit, and push for post-release.

Custom tasks may be added using the plugin framework.

[Read the documentation](https://yabs.readthedocs.io/en/latest/ug_tutorial.html)
for details.


## Preconditions

- Use [git](https://git-scm.com), [PyPI](https://pypi.org),
  and [GitHub](https://github.com).
- Version numbers follow roughly the [Semantic Versioning](https://semver.org) 
  pattern.
- The project's version number is maintained in
  [one of the supported locations](https://yabs.readthedocs.io/)

(See [grunt-yabs](https://github.com/mar10/grunt-yabs) for a node.js variant
if you have a JavaScript based development stack.)

<!-- [![asciicast](https://asciinema.org/a/6jPN5JTNBt2LT52C6R8HZEK1g.svg)](https://asciinema.org/a/6jPN5JTNBt2LT52C6R8HZEK1g) -->

<!-- ![logo](https://raw.githubusercontent.com/mar10/yabs/master/docs/screenshot_ps_dryrun.png) -->

![logo](https://raw.githubusercontent.com/mar10/yabs/master/docs/screenshot_ps_info.png)

![logo](https://raw.githubusercontent.com/mar10/yabs/master/docs/termtosvg_yabs_run.svg)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/mar10/yabs",
    "name": "yabs",
    "maintainer": "Martin Wendt",
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": "yabs@wwwendt.de",
    "keywords": "build, setup, ci, workflow, automation",
    "author": "Martin Wendt",
    "author_email": "yabs@wwwendt.de",
    "download_url": "https://files.pythonhosted.org/packages/38/3c/e7c37e43c24e566e77bf9e540c9a760e554ab27462b7a288ecdf356ac532/yabs-0.6.1.tar.gz",
    "platform": null,
    "description": "# ![logo](https://raw.githubusercontent.com/mar10/yabs/master/docs/sphinx/yabs_48x48.png) yabs\r\n\r\n> Test, Build, Deliver!\r\n\r\n[![Build Status](https://travis-ci.com/mar10/yabs.svg?branch=master)](https://travis-ci.com/github/mar10/yabs)\r\n[![Latest Version](https://img.shields.io/pypi/v/yabs.svg)](https://pypi.python.org/pypi/yabs/)\r\n[![License](https://img.shields.io/pypi/l/yabs.svg)](https://github.com/mar10/yabs/blob/master/LICENSE.txt)\r\n[![Documentation Status](https://readthedocs.org/projects/yabs/badge/?version=latest)](https://yabs.readthedocs.io/)\r\n[![Coverage Status](https://coveralls.io/repos/github/mar10/yabs/badge.svg?branch=master)](https://coveralls.io/github/mar10/yabs?branch=master)\r\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)\r\n[![Released with: Yabs](https://img.shields.io/badge/released%20with-yabs-yellowgreen)](https://github.com/mar10/yabs)\r\n[![StackOverflow: yabs](https://img.shields.io/badge/StackOverflow-yabs-blue.svg)](https://stackoverflow.com/questions/tagged/yabs)\r\n\r\n\r\n## Overview\r\n\r\nBuild and deployment automation for Python projects.\r\n\r\nA typical release workflow may look like this:\r\n\r\n1. Check preconditions: *Is the workspace clean, anything to commit?*,\r\n   *Is GitHub reachable?*, *Are we on the correct branch?*, ...\r\n2. Make sure static code linters and unit tests pass.\r\n3. Bump the project's version number (major, minor, or patch, according to\r\n   [Semantic Versioning](https://semver.org)). <br>\r\n   Then patch the version string into the respective Python module or text file.\r\n4. Build *sdist*, *wheel* and *msi installer* assets.\r\n5. Tag the version, commit, and push.\r\n6. Upload distribution to [PyPI](https://pypi.org).\r\n7. Create a new release on [GitHub](https://github.com) and upload assets.\r\n8. Create a new release on the \r\n   [Windows Package Manager Repository](https://github.com/microsoft/winget-pkgs).\r\n9. Bump, tag, commit, and push for post-release.\r\n\r\nCustom tasks may be added using the plugin framework.\r\n\r\n[Read the documentation](https://yabs.readthedocs.io/en/latest/ug_tutorial.html)\r\nfor details.\r\n\r\n\r\n## Preconditions\r\n\r\n- Use [git](https://git-scm.com), [PyPI](https://pypi.org),\r\n  and [GitHub](https://github.com).\r\n- Version numbers follow roughly the [Semantic Versioning](https://semver.org) \r\n  pattern.\r\n- The project's version number is maintained in\r\n  [one of the supported locations](https://yabs.readthedocs.io/)\r\n\r\n(See [grunt-yabs](https://github.com/mar10/grunt-yabs) for a node.js variant\r\nif you have a JavaScript based development stack.)\r\n\r\n<!-- [![asciicast](https://asciinema.org/a/6jPN5JTNBt2LT52C6R8HZEK1g.svg)](https://asciinema.org/a/6jPN5JTNBt2LT52C6R8HZEK1g) -->\r\n\r\n<!-- ![logo](https://raw.githubusercontent.com/mar10/yabs/master/docs/screenshot_ps_dryrun.png) -->\r\n\r\n![logo](https://raw.githubusercontent.com/mar10/yabs/master/docs/screenshot_ps_info.png)\r\n\r\n![logo](https://raw.githubusercontent.com/mar10/yabs/master/docs/termtosvg_yabs_run.svg)\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Yet Another Build Script",
    "version": "0.6.1",
    "project_urls": {
        "Bug Tracker": "https://github.com/mar10/yabs/issues",
        "Documentation": "https://yabs.readthedocs.io",
        "Download": "https://github.com/mar10/yabs/releases/latest",
        "Homepage": "https://github.com/mar10/yabs",
        "Source Code": "https://github.com/mar10/yabs"
    },
    "split_keywords": [
        "build",
        " setup",
        " ci",
        " workflow",
        " automation"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d31c192ee982f2bfe696324761c20e9ad05607fee11bcbc5572b75e63290b66d",
                "md5": "20dea587195b89a5b8b26501c2a14642",
                "sha256": "8000f1c61695d6c554b353e2249a66de3027467585ca482f9292f0aca3f06afd"
            },
            "downloads": -1,
            "filename": "yabs-0.6.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "20dea587195b89a5b8b26501c2a14642",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 55949,
            "upload_time": "2024-03-24T11:55:22",
            "upload_time_iso_8601": "2024-03-24T11:55:22.828557Z",
            "url": "https://files.pythonhosted.org/packages/d3/1c/192ee982f2bfe696324761c20e9ad05607fee11bcbc5572b75e63290b66d/yabs-0.6.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "383ce7c37e43c24e566e77bf9e540c9a760e554ab27462b7a288ecdf356ac532",
                "md5": "f93fb3818dd0da4b96c9d9bfb7d1c86a",
                "sha256": "275e0e8b75779f0b5e76e84d1e59f84b8cc9d76b099cf1dccbd55956b421b6ff"
            },
            "downloads": -1,
            "filename": "yabs-0.6.1.tar.gz",
            "has_sig": false,
            "md5_digest": "f93fb3818dd0da4b96c9d9bfb7d1c86a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 46905,
            "upload_time": "2024-03-24T11:55:20",
            "upload_time_iso_8601": "2024-03-24T11:55:20.398334Z",
            "url": "https://files.pythonhosted.org/packages/38/3c/e7c37e43c24e566e77bf9e540c9a760e554ab27462b7a288ecdf356ac532/yabs-0.6.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-03-24 11:55:20",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "mar10",
    "github_project": "yabs",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": false,
    "tox": true,
    "lcname": "yabs"
}
        
Elapsed time: 0.21229s