Skip to main content

A set of plugins for setuptools_scm to enable better version tracking

Project description

A set of plugins for setuptools_scm to enable better version tracking

Installation

pip install pygitversion

Usage

The usage is almost exactly the same as using setuptools_scm, so follow those guidelines. This package merely adds a couple of plugin functions to make the versioning a bit better (eg. having the branch name in the version if applicable).

To summarise: create a pyproject.toml and include (at least) the following lines:

# pyproject.toml
[build-system]
requires = ["setuptools>=30.3.0", "wheel", "setuptools_scm", "pygitversion"]

Then in your setup.py, add the following to the call to setup():

# setup.py
from setuptools import setup
from pygitversion import branch_scheme

setup(
    ...
    use_scm_version={
        "local_scheme": branch_scheme
    },
)

You can now print the version of the package simply by doing:

$ python setup.py --version

To set the version of your code, make your __init__.py have the following:

from pkg_resources import get_distribution, DistributionNotFound
try:
    __version__ = get_distribution(__name__).version
except DistributionNotFound:
    # package is not installed
    pass

And that’s it!

Development

To run the all tests run:

tox

Changelog

1.0.0

  • Move to setuptools_scm

0.1.0 (2019-09-04)

  • First release on PyPI.

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

pygitversion-1.0.1.tar.gz (7.4 kB view hashes)

Uploaded source

Built Distribution

pygitversion-1.0.1-py2.py3-none-any.whl (4.4 kB view hashes)

Uploaded py2 py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page