mirror of
https://github.com/certbot/certbot.git
synced 2026-04-23 15:17:48 -04:00
Fixes https://github.com/certbot/certbot/issues/8580. With this PR, it should now be possible to run the oldest tests natively on Linux, at least when using an older version of Python 3, which hasn't been possible in a long time. Unfortunately, this isn't possible on macOS which I opened https://github.com/certbot/certbot/issues/8589 to track. You can see the full test suite running with these changes at https://dev.azure.com/certbot/certbot/_build/results?buildId=3283&view=results. I took the version numbers for the packages I updated by searching for the oldest version of the dependency I think we should try and support based on the updated comments at the top of `oldest_constraints.txt`. While kind of annoying, I think it'd be a good idea for the reviewer to double check that I didn't make a mistake with the versions I used here. To find these versions, I used https://packages.ubuntu.com, https://packages.debian.org, and a CentOS 7 Docker image with EPEL 7 installed. For the latter, not all packages are available in Python 3 yet (which is something Certbot's EPEL package maintainers are working on) and in that case I didn't worry about the system because I think they can/will package the newest version available. If they end up hitting any issues here when trying to package Certbot on Python 3, we can always work with them to fix it. * remove py27 from oldest name * update min cryptography version * remove run_oldest_tests.sh * upgrade setuptools and pyopenssl * update cffi, pyparsing, and idna * expand oldest_constraints comments * clarify oldest comment * update min configobj version * update min parsedatetime version * quote tox env name * use Python 3.6 in the oldest tests * use Python 3.6 for oldest integration tests * properly pin asn1crypto * update min six version * set basepython for a nicer error message * remove outdated python 2 oldest constraints
76 lines
2.5 KiB
Python
76 lines
2.5 KiB
Python
from distutils.version import LooseVersion
|
|
import sys
|
|
|
|
from setuptools import __version__ as setuptools_version
|
|
from setuptools import find_packages
|
|
from setuptools import setup
|
|
|
|
version = '1.12.0.dev0'
|
|
|
|
# Remember to update local-oldest-requirements.txt when changing the minimum
|
|
# acme/certbot version.
|
|
install_requires = [
|
|
'acme>=0.29.0',
|
|
'certbot>=1.6.0',
|
|
'python-augeas',
|
|
'setuptools>=39.0.1',
|
|
'zope.component',
|
|
'zope.interface',
|
|
]
|
|
|
|
setuptools_known_environment_markers = (LooseVersion(setuptools_version) >= LooseVersion('36.2'))
|
|
if setuptools_known_environment_markers:
|
|
install_requires.append('mock ; python_version < "3.3"')
|
|
elif 'bdist_wheel' in sys.argv[1:]:
|
|
raise RuntimeError('Error, you are trying to build certbot wheels using an old version '
|
|
'of setuptools. Version 36.2+ of setuptools is required.')
|
|
elif sys.version_info < (3,3):
|
|
install_requires.append('mock')
|
|
|
|
dev_extras = [
|
|
'apacheconfig>=0.3.2',
|
|
]
|
|
|
|
setup(
|
|
name='certbot-apache',
|
|
version=version,
|
|
description="Apache plugin for Certbot",
|
|
url='https://github.com/letsencrypt/letsencrypt',
|
|
author="Certbot Project",
|
|
author_email='client-dev@letsencrypt.org',
|
|
license='Apache License 2.0',
|
|
python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*',
|
|
classifiers=[
|
|
'Development Status :: 5 - Production/Stable',
|
|
'Environment :: Plugins',
|
|
'Intended Audience :: System Administrators',
|
|
'License :: OSI Approved :: Apache Software License',
|
|
'Operating System :: POSIX :: Linux',
|
|
'Programming Language :: Python',
|
|
'Programming Language :: Python :: 2',
|
|
'Programming Language :: Python :: 2.7',
|
|
'Programming Language :: Python :: 3',
|
|
'Programming Language :: Python :: 3.6',
|
|
'Programming Language :: Python :: 3.7',
|
|
'Programming Language :: Python :: 3.8',
|
|
'Programming Language :: Python :: 3.9',
|
|
'Topic :: Internet :: WWW/HTTP',
|
|
'Topic :: Security',
|
|
'Topic :: System :: Installation/Setup',
|
|
'Topic :: System :: Networking',
|
|
'Topic :: System :: Systems Administration',
|
|
'Topic :: Utilities',
|
|
],
|
|
|
|
packages=find_packages(),
|
|
include_package_data=True,
|
|
install_requires=install_requires,
|
|
extras_require={
|
|
'dev': dev_extras,
|
|
},
|
|
entry_points={
|
|
'certbot.plugins': [
|
|
'apache = certbot_apache._internal.entrypoint:ENTRYPOINT',
|
|
],
|
|
},
|
|
)
|