Skip to main content

Use git repo data for building a version number according PEP-440

Project description

Project Status: Active – The project has reached a stable, usable state and is being actively developed. PyPI PyPI License PyPI Python Version ReadTheDocs Build Coverage pre-commit.ci

Use git repo data (latest tag, current commit hash, etc) for building a version number according PEP 440.

Features:

  • Can be installed & configured through both setup.py and PEP 518’s pyproject.toml

  • Does not require to change source code of the project

  • Tag-, file-, and callback-based versioning schemas are supported

  • Templates for tag, dev and dirty versions are separated

  • Templates support a lot of substitutions including git and environment information

  • Well-documented

See difference between setuptools-git-versioning and other tools.

Limitations:

  • Currently the only supported VCS is Git

  • Only git v2 is supported

  • Currently does not support exporting version to file for runtime use

Documentation

See https://setuptools-git-versioning.readthedocs.io/en/stable/

Contribution Guide

See ./CONTRIBUTING.rst

Install

pyproject.toml

Just add setuptools-git-versioning to build-sytem part of your pyproject.toml

[build-system]
requires = [ "setuptools>=41", "wheel", "setuptools-git-versioning", ]
build-backend = "setuptools.build_meta"

[tool.setuptools-git-versioning]
enabled = true

setup.py

Just add setuptools-git-versioning to setup_requires part of your setup.py

import setuptools

setuptools.setup(
    ...,
    setuptools_git_versioning={
        "enabled": True,
    },
    setup_requires=["setuptools-git-versioning"],
)

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

setuptools-git-versioning-1.9.0.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

setuptools_git_versioning-1.9.0-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file setuptools-git-versioning-1.9.0.tar.gz.

File metadata

  • Download URL: setuptools-git-versioning-1.9.0.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

File hashes

Hashes for setuptools-git-versioning-1.9.0.tar.gz
Algorithm Hash digest
SHA256 2f046dbae351bed096882905a14bf7ce9889cb4c151bc3a8d21dae3db282f22e
MD5 7bf1b0fe1cae5dea361d43cc6f7492cb
BLAKE2b-256 e5426750e38b224f12de1007e2696e14e02433343e2f99f22da0758f27c51804

See more details on using hashes here.

File details

Details for the file setuptools_git_versioning-1.9.0-py3-none-any.whl.

File metadata

  • Download URL: setuptools_git_versioning-1.9.0-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

File hashes

Hashes for setuptools_git_versioning-1.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b402217ed91a2b4be63184481a576c71448e4f5acc098c3d9440ed2220249e5e
MD5 9ea5c0b3f4446d6fb15ab2a53130b0d2
BLAKE2b-256 2346b1d2418123a6665ff394b72703c47ff0e7fd8337ae866ccd1391bc782e64

See more details on using hashes here.

Supported by

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