Coverage for .nox/test/lib/python3.12/site-packages/mkdocs_github_changelog/__init__.py: 71%
28 statements
« prev ^ index » next coverage.py v7.3.4, created at 2023-12-26 13:15 +0000
« prev ^ index » next coverage.py v7.3.4, created at 2023-12-26 13:15 +0000
1"""mkdocs_github_changelog.
3mkdocs extension to autogenerate changelog from github.
4"""
7def __get_version() -> str:
8 """Get version information or return default if unable to do so."""
9 # Default
10 version = '0+unknown'
11 # Development installation only
12 try:
13 # Look here for setuptools scm to update the version - for development environments only
14 from setuptools_scm import get_version # type: ignore
15 try:
16 version = get_version(root='../../', version_scheme='no-guess-dev', relative_to=__file__)
17 except LookupError:
18 pass
19 except ImportError:
20 pass
21 # Development installation without setuptools_scm or installed package
22 # try loading from file
23 if version == '0+unknown':
24 try:
25 from mkdocs_github_changelog._version import __version__ # noqa: F401
26 except ImportError:
27 pass
28 # Development installation without setuptools_scm
29 if version == '0+unknown':
30 # Use the metadata
31 import sys
32 if sys.version_info.major >= 3 and sys.version_info.minor >= 8:
33 from importlib.metadata import PackageNotFoundError
34 from importlib.metadata import version as parse_version
35 else:
36 from importlib_metadata import PackageNotFoundError # type: ignore
37 from importlib_metadata import version as parse_version # type: ignore
38 try:
39 version = parse_version("mkdocs_github_changelog")
40 except PackageNotFoundError:
41 # package is not installed
42 pass
43 return version
46__version__ = __get_version()