summaryrefslogtreecommitdiff
path: root/coverage/version.py
blob: 1b60626aa5c51b0fac2ac4f68e9efaa07d7e535f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# Licensed under the Apache License: http://www.apache.org/licenses/LICENSE-2.0
# For details: https://bitbucket.org/ned/coveragepy/src/default/NOTICE.txt

"""The version and URL for coverage.py"""
# This file is exec'ed in setup.py, don't import anything!

# Same semantics as sys.version_info.
version_info = (4, 0, 0, 'beta', 2)


def _make_version(major, minor, micro, releaselevel, serial):
    """Create a readable version string from version_info tuple components."""
    assert releaselevel in ['alpha', 'beta', 'candidate', 'final']
    version = "%d.%d" % (major, minor)
    if micro:
        version += ".%d" % (micro,)
    if releaselevel != 'final':
        version += "%s%d" % (releaselevel[0], serial)
    return version


def _make_url(major, minor, micro, releaselevel, serial):
    url = "https://coverage.readthedocs.org"
    if releaselevel != 'final':
        # For pre-releases, use a version-specific URL.
        url += "/en/coverage-" + _make_version(major, minor, micro, releaselevel, serial)
    return url


__version__ = _make_version(*version_info)
__url__ = _make_url(*version_info)