From 3fa5e70507f16c42033b3fb6818cce2329ac9cd1 Mon Sep 17 00:00:00 2001 From: Justin Campbell Date: Fri, 19 Mar 2021 13:52:27 -0400 Subject: [PATCH] Add ability to install all conditional dependencies --- setup.py | 30 ++++++++++++++++++++++-------- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/setup.py b/setup.py index c5079d8..4421ea3 100644 --- a/setup.py +++ b/setup.py @@ -1,5 +1,24 @@ from setuptools import setup, find_packages +# Define Dependencies for Extra Requires +conditional_dependencies = { + "dev":[ + "pylint" + ], + "docs": [ + "mkdocs", + "mkdocs-material", + "mkautodoc" + ], +} + +def get_all_dependencies(): + """Returns a single array of all dependencies.""" + dependencies = [] + for condition in conditional_dependencies.keys(): + dependencies += conditional_dependencies[condition] + return dependencies + setuptools.setup( name="webqueue2_api", version="0.9.1", @@ -18,13 +37,8 @@ "python-ldap @ git+https://github.itap.purdue.edu/ECN/python-ldap/@python-ldap-3.3.1", ], extras_require={ - "dev": [ - "pylint" - ], - "docs": [ - "mkdocs", - "mkdocs-material", - "mkautodoc" - ] + "dev": conditional_dependencies["dev"], + "docs": conditional_dependencies["docs"], + "all": get_all_dependencies() } ) \ No newline at end of file