hatch-vcs 0.1.0


pip install hatch-vcs==0.1.0


Meta
Author: Ofek Lev

Classifiers

Development Status
  • 4 - Beta

Programming Language
  • Python
  • Python :: 2.7
  • Python :: 3.10
  • Python :: 3.7
  • Python :: 3.8
  • Python :: 3.9
  • Python :: Implementation :: CPython
  • Python :: Implementation :: PyPy

hatch-vcs

CI/CD CI - Test CD - Build
Package PyPI - Version PyPI - Python Version
Meta code style - black types - Mypy imports - isort License - MIT GitHub Sponsors

This provides a plugin for Hatch that uses your preferred version control system (like Git) to determine project versions.

Table of Contents

Global dependency

Ensure hatch-vcs is defined within the build-system.requires field in your pyproject.toml file.

[build-system]
requires = ["hatchling", "hatch-vcs"]
build-backend = "hatchling.build"

Version source

The version source plugin name is vcs.

  • pyproject.toml

    [tool.hatch.version]
    
  • hatch.toml

    [version]
    

Version source options

Option Type Default Description
tag-pattern str see code A regular expression used to extract the version part from VCS tags. The pattern needs to contain either a single match group, or a group named version, that captures the actual version information.
fallback-version str The version that will be used if no other method for detecting the version is successful. If not specified, unsuccessful version detection will raise an error.
raw-options dict A table of setuptools-scm parameters that will override any of the options listed above. The write_to and write_to_template parameters are ignored.

Build hook

The build hook plugin name is vcs.

  • pyproject.toml

    [tool.hatch.build.hooks.vcs]
    
  • hatch.toml

    [build.hooks.vcs]
    

Build hook options

Option Type Default Description
version-file str REQUIRED The relative path to the file that gets updated with the current version.
template str The template used to overwrite the version-file. See the code for the default template for each file extension.

License

hatch-vcs is distributed under the terms of the MIT license.

Wheel compatibility matrix

Platform Python 2 Python 3
any

Files in release

Extras: None
Dependencies:
hatchling (>=0.9)
setuptools-scm (<6)
setuptools-scm (>=6.4.0)