summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Nemec <bnemec@redhat.com>2018-08-29 17:38:15 +0000
committerBen Nemec <bnemec@redhat.com>2019-03-25 16:39:59 +0000
commit7f9d653c29cda5e0b504ef24a916e476c81b627e (patch)
treeda4a9e950dd734de54a21fd812e1728d130a1efa
parent08b42cae514c0e47a9358c6e233708d6311a6628 (diff)
downloadpbr-7f9d653c29cda5e0b504ef24a916e476c81b627e.tar.gz
Support provides_extra metadata
This was added to setuptools in [1] so we should support passing it through from pbr. Change-Id: I46493c18756bcb01c53575ab51ec5e5e97670fc3 1: https://github.com/pypa/setuptools/commit/b2ea3c4a20d008622caec445f5b6916ddd420d16 Closes-Bug: 1760938
-rw-r--r--pbr/tests/test_util.py12
-rw-r--r--pbr/util.py4
2 files changed, 15 insertions, 1 deletions
diff --git a/pbr/tests/test_util.py b/pbr/tests/test_util.py
index 8370bf1..6814ac7 100644
--- a/pbr/tests/test_util.py
+++ b/pbr/tests/test_util.py
@@ -160,3 +160,15 @@ class TestKeywordsParsingScenarios(base.BaseTestCase):
kwargs = util.setup_cfg_to_setup_kwargs(config)
self.assertEqual(self.expected_keywords, kwargs['keywords'])
+
+
+class TestProvidesExtras(base.BaseTestCase):
+ def test_provides_extras(self):
+ ini = """
+ [metadata]
+ provides_extras = foo
+ bar
+ """
+ config = config_from_ini(ini)
+ kwargs = util.setup_cfg_to_setup_kwargs(config)
+ self.assertEqual(['foo', 'bar'], kwargs['provides_extras'])
diff --git a/pbr/util.py b/pbr/util.py
index 5bb731b..55d73f8 100644
--- a/pbr/util.py
+++ b/pbr/util.py
@@ -113,6 +113,7 @@ D1_D2_SETUP_ARGS = {
"setup_requires": ("metadata", "setup_requires_dist"),
"python_requires": ("metadata",),
"provides": ("metadata", "provides_dist"), # **
+ "provides_extras": ("metadata",),
"obsoletes": ("metadata", "obsoletes_dist"), # **
"package_dir": ("files", 'packages_root'),
"packages": ("files",),
@@ -147,7 +148,8 @@ MULTI_FIELDS = ("classifiers",
"setup_requires",
"tests_require",
"keywords",
- "cmdclass")
+ "cmdclass",
+ "provides_extras")
# setup() arguments that can have mapping values in setup.cfg
MAP_FIELDS = ("project_urls",)