diff options
-rw-r--r-- | pbr/hooks/backwards.py | 3 | ||||
-rw-r--r-- | pbr/packaging.py | 10 | ||||
-rw-r--r-- | pbr/tests/testpackage/test-requirements.txt | 1 |
3 files changed, 11 insertions, 3 deletions
diff --git a/pbr/hooks/backwards.py b/pbr/hooks/backwards.py index adbacbf..01f07ab 100644 --- a/pbr/hooks/backwards.py +++ b/pbr/hooks/backwards.py @@ -29,4 +29,5 @@ class BackwardsCompatConfig(base.BaseConfig): packaging.append_text_list( self.config, 'tests_require', packaging.parse_requirements( - packaging.TEST_REQUIREMENTS_FILES)) + packaging.TEST_REQUIREMENTS_FILES, + strip_markers=True)) diff --git a/pbr/packaging.py b/pbr/packaging.py index 3bc625d..ebdfb09 100644 --- a/pbr/packaging.py +++ b/pbr/packaging.py @@ -81,7 +81,7 @@ def get_reqs_from_files(requirements_files): return [] -def parse_requirements(requirements_files=None): +def parse_requirements(requirements_files=None, strip_markers=False): if requirements_files is None: requirements_files = get_requirements_files() @@ -104,7 +104,8 @@ def parse_requirements(requirements_files=None): # -r other-requirements.txt if line.startswith('-r'): req_file = line.partition(' ')[2] - requirements += parse_requirements([req_file]) + requirements += parse_requirements( + [req_file], strip_markers=strip_markers) continue try: @@ -130,6 +131,11 @@ def parse_requirements(requirements_files=None): reason = 'Index Location' if line is not None: + if strip_markers: + semi_pos = line.find(';') + if semi_pos < 0: + semi_pos = None + line = line[:semi_pos] requirements.append(line) else: log.info( diff --git a/pbr/tests/testpackage/test-requirements.txt b/pbr/tests/testpackage/test-requirements.txt new file mode 100644 index 0000000..f283aff --- /dev/null +++ b/pbr/tests/testpackage/test-requirements.txt @@ -0,0 +1 @@ +ordereddict;python_version=='2.6' |