Skip to main content

utility lib to generate python package version infos from mercurial tags

Project description

This module is a simple drop-in to support setup.py in mercurial based projects.

Alternatively it can be a setup time requirement.

Its supposed to generate version numbers from mercurials meta-data. It tries to use the current tag and falls back to the next reachable tagged ancestor and using the distance to it as .post marker.

It uses 4 strategies to archive its task:

  1. try to directly ask hg for the tag/distance

  2. try to infer it from the .hg_archival.txt file

  3. try to use the cache file if it exists

  4. try to read the version from the ‘PKG-INFO’ file sdists contain (this is a nasty abuse)

The most simple usage is:

from setuptools import setup
from hgdistver import get_version
setup(
    ...,
    version=get_version(),
    ...,
)

get_version takes the optional argument cachefile, which causes it to store the version info in a python script instead of abusing PKG-INFO from a sdist.

The setup requirement usage is:

from setuptools import setup
setup(
    ...,
    get_version_from_hg=True,
    setup_requires=['hgdistver'],
    ...,
)

The requirement uses the setup argument cache_hg_version_to instead of cachefile.

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

hgdistver-0.12.tar.gz (6.0 kB view details)

Uploaded Source

File details

Details for the file hgdistver-0.12.tar.gz.

File metadata

  • Download URL: hgdistver-0.12.tar.gz
  • Upload date:
  • Size: 6.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for hgdistver-0.12.tar.gz
Algorithm Hash digest
SHA256 454bdd43422cbbc0fb5c09bd4a4d374bc25b75204b72b5c9cefacc244d3c7cd2
MD5 a58f6b29a75cc687a0be5a85d9da4db7
BLAKE2b-256 f4fe0423a996668710b2c704be53df7cf142c7206f277990b0506655bc4e6e32

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