[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1010897: ITP: python3-versioningit -- PEP 518 driven setuptools plugin for auto-versioning using git/hg



Package: wnpp
Severity: wishlist
Owner: Yaroslav Halchenko <debian@onerussian.com>
X-Debbugs-Cc: debian-devel@lists.debian.org

* Package name    : python3-versioningit
  Version         : 1.1.1
  Upstream Author : John T. Wodder II
* URL             : https://github.com/jwodder/versioningit
* License         : MIT
  Programming Lang: Python
  Description     : PEP 518 driven setuptools plugin for auto-versioning using git/hg

versioningit is yet another setuptools plugin for automatically
determining your package's version based on your version control repository's
tags. Unlike others, it allows easy customization of the version format and
even lets you easily override the separate functions used for version
extraction and calculation.

Features:

- Installed & configured through PEP 518's pyproject.toml
- Supports Git, modern Git archives, and Mercurial
- Formatting of the final version uses format template strings, with fields for basic VCS information and separate template strings for distanced vs. dirty vs. distanced-and-dirty repository states
- Can optionally write the final version to a file for loading at runtime
- Provides custom setuptools commands for inserting the final version into a source file at build time
- The individual methods for VCS querying, tag-to-version calculation, version bumping, version formatting, and writing the version to a file can all be customized using either functions defined alongside one's project code or via publicly-distributed entry points
- Can alternatively be used as a library for use in setup.py or the like, in case you don't want to or can't configure it via pyproject.toml
- The only thing it does is calculate your version and optionally write it to a file; there's no overriding of your sdist contents based on what's in your Git repository, especially not without a way to turn it off, because that would just be rude.


Reply to: