Skip to main content

Check if pyproject.toml version was bumped

Project description

Check Bump

Build PyPI Code style: black pylint NoPrint

About

Want to add version bump checks to your CI/CD pipeline? This packages makes it easy. Simply execute check-bump within a directory where your pyproject.toml is located.

If there was a version bump, process will finish with exit code 0 - read stdout for the new version. Otherwise, process will finish with exit code 1.

Requirements

This package requires tomlkit package.

Usage

Command

Simply execute check-bump within a directory where your pyproject.toml is located. Or provide a path using --path argument.

user$ check-bump --help
usage: check-bump [-h] {toml,regex,touch} ...

Detect and retrieve version bump

options:
  -h, --help          show this help message and exit

Methods:
  {toml,regex,touch}  Different methods for parsing files
    toml              Parsing toml file
    regex             Regex file parsing
    touch             Touch file check

Github Actions

Inputs

method

Required Select which method to use for detecting version bumps.

path

Optional Relative path of versioning file. Example: 'python_src/pyproject.toml'

prefix

Optional Prefix to provide for version output. Example: 'v'

Outputs

bump

always Whether there was a bump or not. Values: 'true'|'false'

version

optional Current (if bumped) version with prefix. If there was no version bump - no output is provided.

Example usage

- name: Check bump
  id: vbump
  uses: rgryta/Check-Bump@main
  with:
    method: 'toml'
    prefix: 'v'

And then you can later reference like:

- name: Tag repository
  if: steps.vbump.outputs.bump == 'true'
  run: |
    echo "I was bumped to version: ${{ steps.vbump.outputs.version }}"

Development

Installation

Install virtual environment and check_bump package in editable mode with dev dependencies.

python -m venv venv
source venv/bin/activate
pip install -e .[dev]

How to?

Automate as much as we can, see configuration in pyproject.toml file to see what are the flags used.

staging format  # Reformat the code
staging lint    # Check for linting issues
staging test    # Run unit tests and coverage report

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

check_bump-1.1.0.tar.gz (7.3 kB view hashes)

Uploaded Source

Built Distribution

check_bump-1.1.0-py3-none-any.whl (8.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page