# HG changeset patch # User Goffi # Date 1605534283 -3600 # Node ID b526b95f11f282984a6c70b041594499bfeb17dc # Parent ccb2a7e66f7d3c18eeaf5a9c015a52f3bbdf0872 tools(utils): fixed error catching when getting repository data with `pkg_resources` diff -r ccb2a7e66f7d -r b526b95f11f2 sat/tools/utils.py --- a/sat/tools/utils.py Sun Nov 15 17:05:47 2020 +0100 +++ b/sat/tools/utils.py Mon Nov 16 14:44:43 2020 +0100 @@ -248,33 +248,35 @@ 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