From b2d8bbf569238ca46d159f21f9d9d4e82d43b8bf Mon Sep 17 00:00:00 2001
From: Stefano Zacchiroli <zack@upsilon.cc>
Date: Tue, 1 Oct 2019 17:56:57 +0200
Subject: [PATCH] setup.py: move CLI dependencies to a dedicated swh-model[cli]
 subpackage

It is now possible to install swh-model without dulwich (and Click, FWIW).

Users who want to use "swh identify" should "pip install swh-model[cli]".
---
 requirements-cli.txt  | 2 ++
 requirements-test.txt | 2 ++
 requirements.txt      | 2 --
 setup.py              | 5 ++++-
 4 files changed, 8 insertions(+), 3 deletions(-)
 create mode 100644 requirements-cli.txt

diff --git a/requirements-cli.txt b/requirements-cli.txt
new file mode 100644
index 00000000..f58c0c8b
--- /dev/null
+++ b/requirements-cli.txt
@@ -0,0 +1,2 @@
+Click
+dulwich
diff --git a/requirements-test.txt b/requirements-test.txt
index e079f8a6..916a7bb3 100644
--- a/requirements-test.txt
+++ b/requirements-test.txt
@@ -1 +1,3 @@
+Click
+dulwich
 pytest
diff --git a/requirements.txt b/requirements.txt
index 236db633..98825fa3 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -2,8 +2,6 @@
 # should match https://pypi.python.org/pypi names. For the full spec or
 # dependency lines, see https://pip.readthedocs.org/en/1.1/requirements.html
 vcversioner
-Click
 attrs
 hypothesis
 python-dateutil
-dulwich
diff --git a/setup.py b/setup.py
index 56048415..6f2eb37c 100755
--- a/setup.py
+++ b/setup.py
@@ -49,7 +49,10 @@ setup(
     setup_requires=['vcversioner'],
     install_requires=(parse_requirements() + parse_requirements('swh') +
                       blake2_requirements),
-    extras_require={'testing': parse_requirements('test')},
+    extras_require={
+        'cli': parse_requirements('cli'),
+        'testing': parse_requirements('test'),
+    },
     vcversioner={},
     include_package_data=True,
     entry_points='''
-- 
GitLab