mirror of
https://github.com/certbot/certbot.git
synced 2026-05-28 04:34:11 -04:00
* pin requests version in py26-oldest * Determine requests security deps dynamically Starting with requests 2.12, pyasn1 and ndg-httpsclient are no longer needed to inject pyopenssl into urllib3. This change allows us to determine whether or not these dependencies are required at install time. If an older version of requests is used, these packages are still installed. If a new version of requests is used, they are not reducing the number of dependencies we have. * Bump requests version in certbot-auto * Use pkg_resources in activate test Due to pip's lack of dependency resolution, the change to use requests[extras] causes errors in acme.util_test because pkg_resources accurately detects the "missing" dependency. There isn't a real problem here. The problem comes from a brand new requests and ancient pyopenssl as well as a unit test for functionality we plan to remove in our next release. I modified the unit test to fix the problem for now. * Use six instead of pkg_resources for test * Require requests<=2.11.1 in py27-oldest test If we don't do this, we get test failures for the certbot package which is actually a good thing! pkg_resources is catching the unlikely but possible problem I describe in #3803 and erroring out saying it is missing the necessary dependencies to run certbot. Good job package resources. * Undo changes to acme.util_test
91 lines
2.4 KiB
Python
91 lines
2.4 KiB
Python
import sys
|
|
|
|
from setuptools import setup
|
|
from setuptools import find_packages
|
|
|
|
|
|
version = '0.10.0.dev0'
|
|
|
|
# Please update tox.ini when modifying dependency version requirements
|
|
install_requires = [
|
|
# load_pem_private/public_key (>=0.6)
|
|
# rsa_recover_prime_factors (>=0.8)
|
|
'cryptography>=0.8',
|
|
# Connection.set_tlsext_host_name (>=0.13)
|
|
'PyOpenSSL>=0.13',
|
|
'pyrfc3339',
|
|
'pytz',
|
|
'requests[security]>=2.4.1', # security extras added in 2.4.1
|
|
# For pkg_resources. >=1.0 so pip resolves it to a version cryptography
|
|
# will tolerate; see #2599:
|
|
'setuptools>=1.0',
|
|
'six',
|
|
]
|
|
|
|
# env markers in extras_require cause problems with older pip: #517
|
|
# Keep in sync with conditional_requirements.py.
|
|
if sys.version_info < (2, 7):
|
|
install_requires.extend([
|
|
# only some distros recognize stdlib argparse as already satisfying
|
|
'argparse',
|
|
'mock<1.1.0',
|
|
])
|
|
else:
|
|
install_requires.append('mock')
|
|
|
|
# dnspython 1.12 is required to support both Python 2 and Python 3.
|
|
dns_extras = [
|
|
'dnspython>=1.12',
|
|
]
|
|
|
|
dev_extras = [
|
|
'nose',
|
|
'pep8',
|
|
'tox',
|
|
]
|
|
|
|
docs_extras = [
|
|
'Sphinx>=1.0', # autodoc_member_order = 'bysource', autodoc_default_flags
|
|
'sphinx_rtd_theme',
|
|
]
|
|
|
|
|
|
setup(
|
|
name='acme',
|
|
version=version,
|
|
description='ACME protocol implementation in Python',
|
|
url='https://github.com/letsencrypt/letsencrypt',
|
|
author="Certbot Project",
|
|
author_email='client-dev@letsencrypt.org',
|
|
license='Apache License 2.0',
|
|
classifiers=[
|
|
'Development Status :: 3 - Alpha',
|
|
'Intended Audience :: Developers',
|
|
'License :: OSI Approved :: Apache Software License',
|
|
'Programming Language :: Python',
|
|
'Programming Language :: Python :: 2',
|
|
'Programming Language :: Python :: 2.6',
|
|
'Programming Language :: Python :: 2.7',
|
|
'Programming Language :: Python :: 3',
|
|
'Programming Language :: Python :: 3.3',
|
|
'Programming Language :: Python :: 3.4',
|
|
'Programming Language :: Python :: 3.5',
|
|
'Topic :: Internet :: WWW/HTTP',
|
|
'Topic :: Security',
|
|
],
|
|
|
|
packages=find_packages(),
|
|
include_package_data=True,
|
|
install_requires=install_requires,
|
|
extras_require={
|
|
'dns': dns_extras,
|
|
'dev': dev_extras,
|
|
'docs': docs_extras,
|
|
},
|
|
entry_points={
|
|
'console_scripts': [
|
|
'jws = acme.jose.jws:CLI.run',
|
|
],
|
|
},
|
|
test_suite='acme',
|
|
)
|