1# Copyright (c) 2019 MetPy Developers.
2# Distributed under the terms of the BSD 3-Clause License.
3# SPDX-License-Identifier: BSD-3-Clause
4"""Tools for versioning."""
5
6
7def get_version():
8    """Get MetPy's version.
9
10    Either get it from package metadata, or get it using version control information if
11    a development install.
12    """
13    try:
14        from setuptools_scm import get_version
15        return get_version(root='../..', relative_to=__file__,
16                           version_scheme='post-release')
17    except (ImportError, LookupError):
18        try:
19            from importlib.metadata import PackageNotFoundError, version
20        except ImportError:  # Can remove when we require Python > 3.7
21            from importlib_metadata import PackageNotFoundError, version
22
23        try:
24            return version(__package__)
25        except PackageNotFoundError:
26            return 'Unknown'
27