Fix Python 2 package dependencies and sub-dependencies [#5595].
authorBen Sturmfels <ben@sturm.com.au>
Thu, 30 Apr 2020 05:15:14 +0000 (15:15 +1000)
committerBen Sturmfels <ben@sturm.com.au>
Thu, 30 Apr 2020 06:45:42 +0000 (16:45 +1000)
This fixes the installation process *right now* on Python 2. The problem is that
packages are dropping Python 2 support all over the place and due to
our (deliberate) loose dependency version specifications and the loose
sub-dependency version specifications, it's one horrible mess. But it works
right now.

Next up I'll be pinning all the currently installed Python 2 packages and all
dependencies.

setup.py

index b2f2074e5f4027accf11950c6275958fbed8f000..f1de81fcee8fe09aa839663c6029e7e7a6bb9eed 100644 (file)
--- a/setup.py
+++ b/setup.py
@@ -45,9 +45,14 @@ if PY2:
     pyversion_install_requires.append('sqlalchemy-migrate>=0.9.6')
     pyversion_install_requires.append('mock==1.0.1')  # mock is in the stdlib for 3.3+
     # PyPI version (1.4.2) does not have proper Python 3 support
-    pyversion_install_requires.append('ExifRead')
     pyversion_install_requires.append('Markdown<3.2')
-    pyversion_install_requires.append('billiard<3.6.0,>=3.5.0.2')
+    pyversion_install_requires.append('billiard<3.6.0,>=3.5.0.2') # Celery
+    pyversion_install_requires.append('Sphinx<2.0.0')
+    pyversion_install_requires.append('MarkupSafe<2.0.0') # Jinja2
+    pyversion_install_requires.append('pyparsing<3.0.0') # Sphinx
+    pyversion_install_requires.append('pytest<5.0.0')
+    pyversion_install_requires.append('pygments<2.6.0') # Sphinx?
+    pyversion_install_requires.append('zipp<2.0.0') # jsonschema
 
 install_requires = [
     'waitress',