def _verify_package(name, operation, version):
try:
module = pkg_resources.get_distribution(name)
except pkg_resources.DistributionNotFound:
raise MissingPackageError(name)
if not operation:
return
required_version = LooseVersion(version)
installed_version = LooseVersion(module.version)
if operation == '==':
check = required_version == installed_version
elif operation == '>':
check = installed_version > required_version
elif operation == '>=':
check = installed_version > required_version or \
installed_version == required_version
else:
raise NotImplementedError(
'operation \'%s\' is not supported' % operation)
if not check:
raise IncorrectPackageVersionError(name, installed_version, operation,
required_version)
评论列表
文章目录