tools(utils): fixed error catching when getting repository data with pkg_resources

This commit is contained in:
Goffi 2020-11-16 14:44:43 +01:00
commit 6ebc7da1f1

View file

@ -248,33 +248,35 @@ def getRepositoryData(module, as_string=True, is_path=False):
log.debug("Mercurial not available or working, trying package version")
try:
import pkg_resources
pkg_version = pkg_resources.get_distribution(C.APP_NAME_FILE).version
version, local_id = pkg_version.split("+", 1)
except ImportError:
log.warning("pkg_resources not available, can't get package data")
except pkg_resources.DistributionNotFound:
log.warning("can't retrieve package data")
except ValueError:
log.info(
"no local version id in package: {pkg_version}".format(
pkg_version=pkg_version
)
)
else:
version = version.replace(".dev0", "D")
if version != C.APP_VERSION:
log.warning(
"Incompatible version ({version}) and pkg_version ({pkg_version})".format(
version=C.APP_VERSION, pkg_version=pkg_version
try:
pkg_version = pkg_resources.get_distribution(C.APP_NAME_FILE).version
version, local_id = pkg_version.split("+", 1)
except pkg_resources.DistributionNotFound:
log.warning("can't retrieve package data")
except ValueError:
log.info(
"no local version id in package: {pkg_version}".format(
pkg_version=pkg_version
)
)
else:
try:
hg_node, hg_distance = local_id.split(".")
except ValueError:
log.warning("Version doesn't specify repository data")
hg_data = {"node_short": hg_node, "distance": hg_distance}
version = version.replace(".dev0", "D")
if version != C.APP_VERSION:
log.warning(
"Incompatible version ({version}) and pkg_version ({pkg_version})"
.format(
version=C.APP_VERSION, pkg_version=pkg_version
)
)
else:
try:
hg_node, hg_distance = local_id.split(".")
except ValueError:
log.warning("Version doesn't specify repository data")
hg_data = {"node_short": hg_node, "distance": hg_distance}
repos_cache_dict = hg_data