mirror of
https://github.com/certbot/certbot.git
synced 2026-08-02 00:22:28 +02:00
move certbot optional-dependencies to setup.py
this lets us ensure that `certbot[nginx]` and `certbot[apache]` pull the right versions of their respective shims
This commit is contained in:
+1
-56
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|||||||
|
|
||||||
[project]
|
[project]
|
||||||
name = "certbot"
|
name = "certbot"
|
||||||
dynamic = ["version", "dependencies"]
|
dynamic = ["version", "dependencies", "optional-dependencies"]
|
||||||
description = "ACME client"
|
description = "ACME client"
|
||||||
readme = "README.rst"
|
readme = "README.rst"
|
||||||
license = "Apache-2.0"
|
license = "Apache-2.0"
|
||||||
@@ -32,61 +32,6 @@ classifiers = [
|
|||||||
"Topic :: Utilities",
|
"Topic :: Utilities",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
[project.optional-dependencies]
|
|
||||||
dev = [
|
|
||||||
"apacheconfig>=0.3.2",
|
|
||||||
"azure-devops",
|
|
||||||
"build",
|
|
||||||
"ipdb",
|
|
||||||
# allows us to use newer urllib3 https://github.com/python-poetry/poetry-plugin-export/issues/183
|
|
||||||
"poetry-plugin-export>=1.9.0",
|
|
||||||
# poetry 1.2.0+ is required for it to pin pip, setuptools, and wheel. See
|
|
||||||
# https://github.com/python-poetry/poetry/issues/1584.
|
|
||||||
"poetry>=1.2.0",
|
|
||||||
"towncrier",
|
|
||||||
"twine",
|
|
||||||
]
|
|
||||||
docs = [
|
|
||||||
# If you have Sphinx<1.5.1, you need docutils<0.13.1
|
|
||||||
# https://github.com/sphinx-doc/sphinx/issues/3212
|
|
||||||
"Sphinx>=1.2", # Annotation support
|
|
||||||
"sphinx_rtd_theme",
|
|
||||||
]
|
|
||||||
# Tools like pip, wheel, and tox are listed here to ensure they are properly
|
|
||||||
# pinned and installed during automated testing.
|
|
||||||
test = [
|
|
||||||
"coverage",
|
|
||||||
"mypy",
|
|
||||||
"pip",
|
|
||||||
"pylint",
|
|
||||||
"pytest",
|
|
||||||
"pytest-cov>=4.1.0", # https://github.com/pytest-dev/pytest-cov/pull/558
|
|
||||||
"pytest-xdist",
|
|
||||||
"ruff",
|
|
||||||
"setuptools",
|
|
||||||
"tox",
|
|
||||||
"types-httplib2",
|
|
||||||
"types-pyRFC3339",
|
|
||||||
"types-pywin32",
|
|
||||||
"types-requests",
|
|
||||||
"types-setuptools",
|
|
||||||
"uv",
|
|
||||||
"wheel",
|
|
||||||
]
|
|
||||||
nginx = [
|
|
||||||
# PyOpenSSL>=25.0.0 is just needed to satisfy mypy right now so this dependency can probably be
|
|
||||||
# relaxed to >=24.0.0 if needed.
|
|
||||||
'PyOpenSSL>=25.0.0',
|
|
||||||
'pyparsing>=2.4.7',
|
|
||||||
]
|
|
||||||
apache = [
|
|
||||||
'python-augeas',
|
|
||||||
]
|
|
||||||
all = [
|
|
||||||
"certbot[dev,docs,test]"
|
|
||||||
]
|
|
||||||
|
|
||||||
[project.scripts]
|
[project.scripts]
|
||||||
certbot = "certbot.main:main"
|
certbot = "certbot.main:main"
|
||||||
|
|
||||||
|
|||||||
@@ -40,7 +40,67 @@ install_requires = [
|
|||||||
'pywin32>=300 ; sys_platform == "win32"',
|
'pywin32>=300 ; sys_platform == "win32"',
|
||||||
]
|
]
|
||||||
|
|
||||||
|
extras_require = {
|
||||||
|
"dev": [
|
||||||
|
"apacheconfig>=0.3.2",
|
||||||
|
"azure-devops",
|
||||||
|
"build",
|
||||||
|
"ipdb",
|
||||||
|
# allows us to use newer urllib3 https://github.com/python-poetry/poetry-plugin-export/issues/183
|
||||||
|
"poetry-plugin-export>=1.9.0",
|
||||||
|
# poetry 1.2.0+ is required for it to pin pip, setuptools, and wheel. See
|
||||||
|
# https://github.com/python-poetry/poetry/issues/1584.
|
||||||
|
"poetry>=1.2.0",
|
||||||
|
"towncrier",
|
||||||
|
"twine",
|
||||||
|
],
|
||||||
|
"docs": [
|
||||||
|
# If you have Sphinx<1.5.1, you need docutils<0.13.1
|
||||||
|
# https://github.com/sphinx-doc/sphinx/issues/3212
|
||||||
|
"Sphinx>=1.2", # Annotation support
|
||||||
|
"sphinx_rtd_theme",
|
||||||
|
],
|
||||||
|
# Tools like pip, wheel, and tox are listed here to ensure they are properly
|
||||||
|
# pinned and installed during automated testing.
|
||||||
|
"test": [
|
||||||
|
"coverage",
|
||||||
|
"mypy",
|
||||||
|
"pip",
|
||||||
|
"pylint",
|
||||||
|
"pytest",
|
||||||
|
"pytest-cov>=4.1.0", # https://github.com/pytest-dev/pytest-cov/pull/558
|
||||||
|
"pytest-xdist",
|
||||||
|
"ruff",
|
||||||
|
"setuptools",
|
||||||
|
"tox",
|
||||||
|
"types-httplib2",
|
||||||
|
"types-pyRFC3339",
|
||||||
|
"types-pywin32",
|
||||||
|
"types-requests",
|
||||||
|
"types-setuptools",
|
||||||
|
"uv",
|
||||||
|
"wheel",
|
||||||
|
],
|
||||||
|
"apache": [
|
||||||
|
# If a user installes `certbot[apache]`, we want to include the shim
|
||||||
|
f'certbot-apache>={version}',
|
||||||
|
'python-augeas',
|
||||||
|
],
|
||||||
|
"nginx": [
|
||||||
|
# If a user installes `certbot[nginx]`, we want to include the shim
|
||||||
|
f'certbot-nginx>={version}',
|
||||||
|
# PyOpenSSL>=25.0.0 is just needed to satisfy mypy right now so this dependency can probably be
|
||||||
|
# relaxed to >=24.0.0 if needed.
|
||||||
|
'PyOpenSSL>=25.0.0',
|
||||||
|
'pyparsing>=2.4.7',
|
||||||
|
],
|
||||||
|
"all": [
|
||||||
|
"certbot[dev,docs,test,apache,nginx]"
|
||||||
|
],
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
setup(
|
setup(
|
||||||
install_requires=install_requires,
|
install_requires=install_requires,
|
||||||
|
extras_require=extras_require,
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user