Single module python package to make versioning simple. You add a couple of
configuration parameters to your top-most python module and ``whatsmyversion`` will
determine the version string based on your git history.
Add the following to the top level of your package (package_name/__init__.py
or single_module_package.py) ::
__version__ = whatsmyversion.version(__file__)
Add the following to your setup.py ::
setup = (
version = package_name.__version__
Aaaaand that's it! ::
python -c "import package_name; print(package_name.__version__)"
For example, look at the ``setup.py`` and ``whatsmyversion.py`` of this project for
guidance in setting up your own project! ::
$ python -c "import whatsmyversion; print(whatsmyversion.__version__)"
There are a few configuration options that you can provide to the `version`
function. These are:
``version_prefix`` which is defaults to ``v``
``version_suffix`` which is one of ``a``, ``b``, ``rc``, ``.post``, ``.dev``
and defaults to ``.post``
``use_local_version_id`` which is a boolean flag to include (True) or not
(False) the git hash and defaults to ``True`` because information is power
These three configuration options combine to produce a PEP440 compliant
version string. `PEP440 <https://www.python.org/dev/peps/pep-0440/>`_
* Determine the version of a git repository
* Installed with ``setup.py develop``
* Installed with ``setup.py install``
Not yet working:
- Determine the version of source code downloaded from github
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.