version.py 1.28 KB
Newer Older
1
2
# SPDX-License-Identifier: Apache-2.0

3
try:
4
    from ._version import __version__, __version_tuple__
5
except Exception as e:
6
7
    import warnings

8
9
10
11
    warnings.warn(f"Failed to read commit hash:\n{e}",
                  RuntimeWarning,
                  stacklevel=2)

12
13
    __version__ = "dev"
    __version_tuple__ = (0, 0, __version__)
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30


def _prev_minor_version_was(version_str):
    """Check whether a given version matches the previous minor version.

    Return True if version_str matches the previous minor version.

    For example - return True if the current version if 0.7.4 and the
    supplied version_str is '0.6'.

    Used for --show-hidden-metrics-for-version.
    """
    # Match anything if this is a dev tree
    if __version_tuple__[0:2] == (0, 0):
        return True

    # Note - this won't do the right thing when we release 1.0!
31
32
    assert __version_tuple__[0] == 0
    assert isinstance(__version_tuple__[1], int)
33
    return version_str == f"{__version_tuple__[0]}.{__version_tuple__[1] - 1}"
34
35
36
37
38
39
40


def _prev_minor_version():
    """For the purpose of testing, return a previous minor version number."""
    # In dev tree, this will return "0.-1", but that will work fine"
    assert isinstance(__version_tuple__[1], int)
    return f"{__version_tuple__[0]}.{__version_tuple__[1] - 1}"