diff --git a/doc/upgrade.rst b/doc/upgrade.rst index 8b8e569cd..40b047cf8 100644 --- a/doc/upgrade.rst +++ b/doc/upgrade.rst @@ -103,8 +103,6 @@ This version drops Python 2 support. existing virtual environment and replace it by the new one so you won't have to modify your configuration files. -You will also need to upgrade your pip version to 20.0.2 or newer. - 1.14.0 ====== diff --git a/setup.py b/setup.py index 5cd243727..033c6bbe1 100644 --- a/setup.py +++ b/setup.py @@ -9,7 +9,11 @@ https://packaging.python.org/en/latest/distributing.html from os import path -from pip._internal.req import parse_requirements +try: + from pip.req import parse_requirements +except ImportError: + # pip >= 10 + from pip._internal.req import parse_requirements from setuptools import find_packages, setup @@ -19,7 +23,14 @@ def get_requirements(requirements_file): requirements = [] if path.isfile(requirements_file): for req in parse_requirements(requirements_file, session="hack"): - requirements.append("%s" % req.requirement) + try: + if req.requirements.match_markers(): + requirements.append("%s;%s" % (req.req, req.markers)) + else: + requirements.append("%s" % req.req) + except AttributeError: + # pip >= 20.0.2 + requirements.append(req.requirement) return requirements @@ -45,7 +56,7 @@ if __name__ == "__main__": classifiers=[ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", - "Framework :: Django :: 1.11", + "Framework :: Django :: 2.2", "Intended Audience :: System Administrators", "License :: OSI Approved :: ISC License (ISCL)", "Operating System :: OS Independent",