Skip to main content

Get the version number of any python module or package, reliably.

Project description

# python-getversion

(hopefully) universal library to get the package version number of a python module, by combining various strategies (PEP396/version, setuptools/pkg_resources, PEP427/wheel, git…)

[![Python versions](https://img.shields.io/pypi/pyversions/getversion.svg)](https://pypi.python.org/pypi/getversion/) [![Build Status](https://travis-ci.org/smarie/python-getversion.svg?branch=master)](https://travis-ci.org/smarie/python-getversion) [![Tests Status](https://smarie.github.io/python-getversion/junit/junit-badge.svg?dummy=8484744)](https://smarie.github.io/python-getversion/junit/report.html) [![codecov](https://codecov.io/gh/smarie/python-getversion/branch/master/graph/badge.svg)](https://codecov.io/gh/smarie/python-getversion)

[![Documentation](https://img.shields.io/badge/doc-latest-blue.svg)](https://smarie.github.io/python-getversion/) [![PyPI](https://img.shields.io/pypi/v/getversion.svg)](https://pypi.python.org/pypi/getversion/) [![Downloads](https://pepy.tech/badge/getversion)](https://pepy.tech/project/getversion) [![Downloads per week](https://pepy.tech/badge/getversion/week)](https://pepy.tech/project/getversion) [![GitHub stars](https://img.shields.io/github/stars/smarie/python-getversion.svg)](https://github.com/smarie/python-getversion/stargazers)

This is the readme for developers. The documentation for users is available here: [https://smarie.github.io/python-getversion/](https://smarie.github.io/python-getversion/)

## Want to contribute ?

Contributions are welcome ! Simply fork this project on github, commit your contributions, and create pull requests.

Here is a non-exhaustive list of interesting open topics: [https://github.com/smarie/python-getversion/issues](https://github.com/smarie/python-getversion/issues)

## Running the tests

This project uses pytest.

`bash pytest -v getversion/tests/ `

You may need to install requirements for setup beforehand, using

`bash pip install -r ci_tools/requirements-test.txt `

## Packaging

This project uses setuptools_scm to synchronise the version number. Therefore the following command should be used for development snapshots as well as official releases:

`bash python setup.py egg_info bdist_wheel rotate -m.whl -k3 `

You may need to install requirements for setup beforehand, using

`bash pip install -r ci_tools/requirements-setup.txt `

## Generating the documentation page

This project uses mkdocs to generate its documentation page. Therefore building a local copy of the doc page may be done using:

`bash mkdocs build -f docs/mkdocs.yml `

You may need to install requirements for doc beforehand, using

`bash pip install -r ci_tools/requirements-doc.txt `

## Generating the test reports

The following commands generate the html test report and the associated badge.

`bash pytest --junitxml=junit.xml -v getversion/tests/ ant -f ci_tools/generate-junit-html.xml python ci_tools/generate-junit-badge.py `

### PyPI Releasing memo

This project is now automatically deployed to PyPI when a tag is created. Anyway, for manual deployment we can use:

`bash twine upload dist/* -r pypitest twine upload dist/* `

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

getversion-0.5.0.tar.gz (40.1 kB view details)

Uploaded Source

Built Distribution

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

getversion-0.5.0-py3-none-any.whl (11.3 kB view details)

Uploaded Python 3

File details

Details for the file getversion-0.5.0.tar.gz.

File metadata

  • Download URL: getversion-0.5.0.tar.gz
  • Upload date:
  • Size: 40.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.5.6

File hashes

Hashes for getversion-0.5.0.tar.gz
Algorithm Hash digest
SHA256 6d805404408659f296e0a7c4994e7fb859ba009b3e7cb781173038fcbd046ddb
MD5 f766fc9e4bf2e059b5ea7de4679aecb0
BLAKE2b-256 a2dfb255033fca4939a405ae95e0c9df9cbca713b9d9c28aefb75f207ec4bd18

See more details on using hashes here.

File details

Details for the file getversion-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: getversion-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 11.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.5.6

File hashes

Hashes for getversion-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2b342c0a00eda1fc3b548a226fe0f04b1b93a667af78039338a884aec70bd8ed
MD5 91b52510c8e0ed12c5526b59afbf42c5
BLAKE2b-256 6d9559fa63c34030b440d926eaed10ef19034895b11817e3018fb7b643b98f08

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