Skip to main content

Facilities for working with VCS repositories

Project description

https://img.shields.io/pypi/v/jaraco.vcs.svg https://img.shields.io/pypi/pyversions/jaraco.vcs.svg tests Ruff Code style: Black https://img.shields.io/badge/skeleton-2023-informational

Usage

jaraco.vcs provides classes for inspecting and working with repositories in the Mercurial and Git version control systems (VCS).

The classes provided are designed to use subprocess invocation to leverage the command-line interfaces of the VCS tools hg and git. An in-process RepoManager for Mercurial exists but has been disabled due to issues that arise when run in certain environments (namely setuptools sandboxing).

Auto Version Numbering

This project adds support for automatically generating project version numbers from a source code repository under development.

To use this feature, the project must follow the following assumptions:

  • Repo tags are used to indicate released versions.

  • Tag names are specified as the version only (i.e. 0.1 or v0.1 and not release-0.1)

  • Released versions currently must conform to the Version in packaging. Any tags that don’t match this scheme will be ignored.

Thereafter, use the RepoManager.get_current_version to determine the version of the local code. If the current revision is tagged with a valid version, that version will be used. Otherwise, the tags in the repo will be searched, the latest release will be found, and the function will infer the upcoming release version.

For example, if the repo contains the tags 0.1, 0.2, and 0.3 and the repo is not on any of those tags, get_current_version will return ‘0.3.1dev’ and get_current_version(increment=’0.1’) will return ‘0.4dev’.

Example:

>>> import jaraco.vcs
>>> jaraco.vcs.repo().get_current_version()
'9.0.1.dev0'

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

jaraco.vcs-1.2.0.tar.gz (16.0 kB view details)

Uploaded Source

Built Distribution

jaraco.vcs-1.2.0-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file jaraco.vcs-1.2.0.tar.gz.

File metadata

  • Download URL: jaraco.vcs-1.2.0.tar.gz
  • Upload date:
  • Size: 16.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for jaraco.vcs-1.2.0.tar.gz
Algorithm Hash digest
SHA256 45bc1ac745112cca7b98c4d286b44045c8e602827752490e8b226ea9e99f1a5c
MD5 1d8872cac3d6b90f25e16426a82c9743
BLAKE2b-256 dd990c26c6f12487cd4b85f3ddf2c986a584b84af44fe7c68fe677d4426a64dc

See more details on using hashes here.

File details

Details for the file jaraco.vcs-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: jaraco.vcs-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for jaraco.vcs-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fa7a73bcdb07bb7d64a61e79b6aeff83524627605befa0e8aab56e80b782469d
MD5 2f0df2abdbfacfeb1e782f637d7292d9
BLAKE2b-256 5f6c1a0caf8a8f435ea0475dc9cbd84436973810c2b35d8968e60028f8fe8a76

See more details on using hashes here.

Supported by

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