tools(utils): fixed error catching when getting repository data with pkg_resources
This commit is contained in:
parent
2556a2c332
commit
6ebc7da1f1
1 changed files with 23 additions and 21 deletions
|
|
@ -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
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue