| 123456789101112131415161718192021222324252627282930313233343536 |
- # encoding: utf-8
- """
- Utilities for version comparison
- It is a bit ridiculous that we need these.
- """
- # Copyright (c) Jupyter Development Team.
- # Distributed under the terms of the Modified BSD License.
- from distutils.version import LooseVersion
- def check_version(v, min_v, max_v=None):
- """check version string v >= min_v and v < max_v
- Parameters
- ----------
- v : str
- version of the package
- min_v : str
- minimal version supported
- max_v : str
- earliest version not supported
- Note: If dev/prerelease tags result in TypeError for string-number
- comparison, it is assumed that the check passes and the version dependency
- is satisfied. Users on dev branches are responsible for keeping their own
- packages up to date.
- """
-
- try:
- below_max = LooseVersion(v) < LooseVersion(max_v) if max_v is not None else True
- return LooseVersion(v) >= LooseVersion(min_v) and below_max
- except TypeError:
- return True
|