From c55dd274eace19c20cb47878e2bbc23df269fed3 Mon Sep 17 00:00:00 2001 From: Semyon Proshev Date: Thu, 7 Apr 2016 17:46:13 +0300 Subject: [PATCH] PY-18851 Fixed: RequirementParseError: Invalid requirement, parse error at ... for packages with broken requiremnts Some setuptools versions throws RequirementParseError while getting package dependencies --- python/helpers/packaging_tool.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/python/helpers/packaging_tool.py b/python/helpers/packaging_tool.py index 4e44c56995f1..088269f7abdf 100644 --- a/python/helpers/packaging_tool.py +++ b/python/helpers/packaging_tool.py @@ -46,7 +46,11 @@ def do_list(): except ImportError: error("Python packaging tool 'setuptools' not found", ERROR_NO_SETUPTOOLS) for pkg in pkg_resources.working_set: - requires = ':'.join([str(x) for x in pkg.requires()]) + try: + requirements = pkg.requires() + except Exception: + requirements = [] + requires = ':'.join([str(x) for x in requirements]) sys.stdout.write('\t'.join([pkg.project_name, pkg.version, pkg.location, requires])+chr(10)) sys.stdout.flush()