mirror of
https://github.com/certbot/certbot.git
synced 2026-08-01 19:02:52 +02:00
remove python 3.9 support (#10406)
Fixes https://github.com/certbot/certbot/issues/10389. you can compare this to the PR that did this for python 3.8 at https://github.com/certbot/certbot/pull/10077 additional changes: - linux-py310 test is removed from extended tests, since it's now run in standard tests. additionally, openssl will never be < 1.1.1 now, due to https://peps.python.org/pep-0644/. - `letstest/scripts/test_openssl_version.py` was testing functionality that was removed in https://github.com/certbot/certbot/pull/10373 so it was deleted --------- Co-authored-by: Brad Warren <bmw@users.noreply.github.com>
This commit is contained in:
co-authored by
Brad Warren
parent
c519307569
commit
5d05984dd9
@@ -8,12 +8,6 @@ jobs:
|
|||||||
- group: certbot-common
|
- group: certbot-common
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
linux-py39:
|
|
||||||
PYTHON_VERSION: 3.9
|
|
||||||
TOXENV: py39
|
|
||||||
linux-py310:
|
|
||||||
PYTHON_VERSION: 3.10
|
|
||||||
TOXENV: py310
|
|
||||||
linux-py311:
|
linux-py311:
|
||||||
PYTHON_VERSION: 3.11
|
PYTHON_VERSION: 3.11
|
||||||
TOXENV: py311
|
TOXENV: py311
|
||||||
@@ -23,14 +17,11 @@ jobs:
|
|||||||
linux-isolated:
|
linux-isolated:
|
||||||
TOXENV: 'isolated-acme,isolated-certbot,isolated-apache,isolated-cloudflare,isolated-digitalocean,isolated-dnsimple,isolated-dnsmadeeasy,isolated-gehirn,isolated-google,isolated-linode,isolated-luadns,isolated-nsone,isolated-ovh,isolated-rfc2136,isolated-route53,isolated-sakuracloud,isolated-nginx'
|
TOXENV: 'isolated-acme,isolated-certbot,isolated-apache,isolated-cloudflare,isolated-digitalocean,isolated-dnsimple,isolated-dnsmadeeasy,isolated-gehirn,isolated-google,isolated-linode,isolated-luadns,isolated-nsone,isolated-ovh,isolated-rfc2136,isolated-route53,isolated-sakuracloud,isolated-nginx'
|
||||||
linux-integration-certbot-oldest:
|
linux-integration-certbot-oldest:
|
||||||
PYTHON_VERSION: 3.9
|
PYTHON_VERSION: 3.10
|
||||||
TOXENV: integration-certbot-oldest
|
TOXENV: integration-certbot-oldest
|
||||||
linux-integration-nginx-oldest:
|
linux-integration-nginx-oldest:
|
||||||
PYTHON_VERSION: 3.9
|
PYTHON_VERSION: 3.10
|
||||||
TOXENV: integration-nginx-oldest
|
TOXENV: integration-nginx-oldest
|
||||||
linux-py39-integration:
|
|
||||||
PYTHON_VERSION: 3.9
|
|
||||||
TOXENV: integration
|
|
||||||
linux-py310-integration:
|
linux-py310-integration:
|
||||||
PYTHON_VERSION: 3.10
|
PYTHON_VERSION: 3.10
|
||||||
TOXENV: integration
|
TOXENV: integration
|
||||||
|
|||||||
@@ -12,13 +12,13 @@ jobs:
|
|||||||
PIP_USE_PEP517: "true"
|
PIP_USE_PEP517: "true"
|
||||||
linux-oldest:
|
linux-oldest:
|
||||||
IMAGE_NAME: ubuntu-22.04
|
IMAGE_NAME: ubuntu-22.04
|
||||||
PYTHON_VERSION: 3.9
|
PYTHON_VERSION: 3.10
|
||||||
TOXENV: oldest
|
TOXENV: oldest
|
||||||
linux-py39:
|
linux-py310:
|
||||||
# linux unit tests with the oldest python we support
|
# linux unit tests with the oldest python we support
|
||||||
IMAGE_NAME: ubuntu-22.04
|
IMAGE_NAME: ubuntu-22.04
|
||||||
PYTHON_VERSION: 3.9
|
PYTHON_VERSION: 3.10
|
||||||
TOXENV: py39
|
TOXENV: py310
|
||||||
linux-cover:
|
linux-cover:
|
||||||
# linux unit+cover tests with the newest python we support
|
# linux unit+cover tests with the newest python we support
|
||||||
IMAGE_NAME: ubuntu-22.04
|
IMAGE_NAME: ubuntu-22.04
|
||||||
|
|||||||
+1
-2
@@ -32,14 +32,13 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Intended Audience :: Developers',
|
'Intended Audience :: Developers',
|
||||||
'License :: OSI Approved :: Apache Software License',
|
'License :: OSI Approved :: Apache Software License',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -6,7 +6,6 @@ This module is an implementation of the `ACME protocol`_.
|
|||||||
|
|
||||||
"""
|
"""
|
||||||
import sys
|
import sys
|
||||||
import warnings
|
|
||||||
|
|
||||||
# This code exists to keep backwards compatibility with people using acme.jose
|
# This code exists to keep backwards compatibility with people using acme.jose
|
||||||
# before it became the standalone josepy package.
|
# before it became the standalone josepy package.
|
||||||
@@ -20,10 +19,3 @@ for mod in list(sys.modules):
|
|||||||
# preserved (acme.jose.* is josepy.*)
|
# preserved (acme.jose.* is josepy.*)
|
||||||
if mod == 'josepy' or mod.startswith('josepy.'):
|
if mod == 'josepy' or mod.startswith('josepy.'):
|
||||||
sys.modules['acme.' + mod.replace('josepy', 'jose', 1)] = sys.modules[mod]
|
sys.modules['acme.' + mod.replace('josepy', 'jose', 1)] = sys.modules[mod]
|
||||||
|
|
||||||
if sys.version_info[:2] == (3, 9):
|
|
||||||
warnings.warn(
|
|
||||||
"Python 3.9 support will be dropped in the next planned release of "
|
|
||||||
"acme. Please upgrade your Python version.",
|
|
||||||
DeprecationWarning,
|
|
||||||
) # pragma: no cover
|
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -37,7 +37,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
+1
-2
@@ -31,14 +31,13 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 3 - Alpha',
|
'Development Status :: 3 - Alpha',
|
||||||
'Intended Audience :: Developers',
|
'Intended Audience :: Developers',
|
||||||
'License :: OSI Approved :: Apache Software License',
|
'License :: OSI Approved :: Apache Software License',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -18,14 +18,13 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 3 - Alpha',
|
'Development Status :: 3 - Alpha',
|
||||||
'Intended Audience :: Developers',
|
'Intended Audience :: Developers',
|
||||||
'License :: OSI Approved :: Apache Software License',
|
'License :: OSI Approved :: Apache Software License',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -48,7 +48,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -46,7 +46,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -48,7 +48,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -46,7 +46,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -46,7 +46,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -47,7 +47,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -46,7 +46,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -46,7 +46,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -46,7 +46,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -46,7 +46,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -49,7 +49,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -46,7 +46,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -46,7 +46,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ setup(
|
|||||||
author="Certbot Project",
|
author="Certbot Project",
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Environment :: Plugins',
|
'Environment :: Plugins',
|
||||||
@@ -36,7 +36,6 @@ setup(
|
|||||||
'Operating System :: POSIX :: Linux',
|
'Operating System :: POSIX :: Linux',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ dynamic = ["version", "dependencies"]
|
|||||||
description = "ACME client"
|
description = "ACME client"
|
||||||
readme = "README.rst"
|
readme = "README.rst"
|
||||||
license = "Apache-2.0"
|
license = "Apache-2.0"
|
||||||
requires-python = ">=3.9.2"
|
requires-python = ">=3.10"
|
||||||
authors = [
|
authors = [
|
||||||
{ name = "Certbot Project", email = "certbot-dev@eff.org" },
|
{ name = "Certbot Project", email = "certbot-dev@eff.org" },
|
||||||
]
|
]
|
||||||
@@ -19,11 +19,10 @@ classifiers = [
|
|||||||
"Operating System :: POSIX :: Linux",
|
"Operating System :: POSIX :: Linux",
|
||||||
"Programming Language :: Python",
|
"Programming Language :: Python",
|
||||||
"Programming Language :: Python :: 3",
|
"Programming Language :: Python :: 3",
|
||||||
"Programming Language :: Python :: 3.13",
|
|
||||||
"Programming Language :: Python :: 3.9",
|
|
||||||
"Programming Language :: Python :: 3.10",
|
"Programming Language :: Python :: 3.10",
|
||||||
"Programming Language :: Python :: 3.11",
|
"Programming Language :: Python :: 3.11",
|
||||||
"Programming Language :: Python :: 3.12",
|
"Programming Language :: Python :: 3.12",
|
||||||
|
"Programming Language :: Python :: 3.13",
|
||||||
"Topic :: Internet :: WWW/HTTP",
|
"Topic :: Internet :: WWW/HTTP",
|
||||||
"Topic :: Security",
|
"Topic :: Security",
|
||||||
"Topic :: System :: Installation/Setup",
|
"Topic :: System :: Installation/Setup",
|
||||||
|
|||||||
@@ -1,14 +1,4 @@
|
|||||||
"""Certbot client."""
|
"""Certbot client."""
|
||||||
import sys
|
|
||||||
import warnings
|
|
||||||
|
|
||||||
# version number like 1.2.3a0, must have at least 2 parts, like 1.2
|
# version number like 1.2.3a0, must have at least 2 parts, like 1.2
|
||||||
__version__ = '5.0.0.dev0'
|
__version__ = '5.0.0.dev0'
|
||||||
|
|
||||||
|
|
||||||
if sys.version_info[:2] == (3, 9):
|
|
||||||
warnings.warn(
|
|
||||||
"Python 3.9 support will be dropped in the next planned release of "
|
|
||||||
"certbot. Please upgrade your Python version.",
|
|
||||||
DeprecationWarning,
|
|
||||||
) # pragma: no cover
|
|
||||||
|
|||||||
@@ -1864,10 +1864,6 @@ def main(cli_args: Optional[list[str]] = None) -> Optional[Union[str, int]]:
|
|||||||
if config.func != plugins_cmd: # pylint: disable=comparison-with-callable
|
if config.func != plugins_cmd: # pylint: disable=comparison-with-callable
|
||||||
raise
|
raise
|
||||||
|
|
||||||
if sys.version_info[:2] == (3, 9):
|
|
||||||
logger.warning("Python 3.9 support will be dropped in the next planned release "
|
|
||||||
"of Certbot - please upgrade your Python version.")
|
|
||||||
|
|
||||||
with make_displayer(config) as displayer:
|
with make_displayer(config) as displayer:
|
||||||
display_obj.set_display(displayer)
|
display_obj.set_display(displayer)
|
||||||
|
|
||||||
|
|||||||
@@ -48,10 +48,8 @@ eval "$(pyenv init --path)"
|
|||||||
eval "$(pyenv init -)"
|
eval "$(pyenv init -)"
|
||||||
|
|
||||||
# Install and configure Python
|
# Install and configure Python
|
||||||
# Python<=3.9 must be used because Python 3.10 requires too new of a version of
|
pyenv install 3.10
|
||||||
# OpenSSL.
|
pyenv shell 3.10
|
||||||
pyenv install 3.9.10
|
|
||||||
pyenv shell 3.9.10
|
|
||||||
|
|
||||||
tools/venv.py -e acme -e certbot -e certbot-apache -e certbot-ci tox
|
tools/venv.py -e acme -e certbot -e certbot-apache -e certbot-ci tox
|
||||||
PEBBLE_LOGS="acme_server.log"
|
PEBBLE_LOGS="acme_server.log"
|
||||||
@@ -92,18 +90,10 @@ sudo "venv/bin/certbot" -v --debug --text --agree-tos --no-verify-ssl \
|
|||||||
--renew-by-default --redirect --register-unsafely-without-email \
|
--renew-by-default --redirect --register-unsafely-without-email \
|
||||||
--domain "${PUBLIC_HOSTNAME}" --server "${PEBBLE_URL}"
|
--domain "${PUBLIC_HOSTNAME}" --server "${PEBBLE_URL}"
|
||||||
|
|
||||||
# Check that ssl_module detection is working on various systems
|
if ! grep -q SSLSessionTickets /etc/letsencrypt/options-ssl-apache.conf; then
|
||||||
if [ "$OS_TYPE" = "ubuntu" ] ; then
|
echo "modern TLS options were not used"
|
||||||
MOD_SSL_LOCATION="/usr/lib/apache2/modules/mod_ssl.so"
|
exit 1
|
||||||
APACHE_NAME=apache2ctl
|
|
||||||
elif [ "$OS_TYPE" = "centos" ]; then
|
|
||||||
MOD_SSL_LOCATION="/etc/httpd/modules/mod_ssl.so"
|
|
||||||
APACHE_NAME=httpd
|
|
||||||
fi
|
fi
|
||||||
OPENSSL_VERSION=$(strings "$MOD_SSL_LOCATION" | egrep -o -m1 '^OpenSSL ([0-9]\.[^ ]+) ' | tail -c +9)
|
|
||||||
APACHE_VERSION=$(sudo $APACHE_NAME -v | egrep -o 'Apache/([0-9]\.[^ ]+)' | tail -c +8)
|
|
||||||
"venv/bin/python" letstest/scripts/test_openssl_version.py "$OPENSSL_VERSION" "$APACHE_VERSION"
|
|
||||||
|
|
||||||
|
|
||||||
if [ "$OS_TYPE" = "ubuntu" ] ; then
|
if [ "$OS_TYPE" = "ubuntu" ] ; then
|
||||||
export SERVER="${PEBBLE_URL}"
|
export SERVER="${PEBBLE_URL}"
|
||||||
|
|||||||
@@ -1,31 +0,0 @@
|
|||||||
#!/usr/bin/env python
|
|
||||||
# Test script for OpenSSL version checking
|
|
||||||
import sys
|
|
||||||
|
|
||||||
from certbot import util
|
|
||||||
|
|
||||||
|
|
||||||
def main(openssl_version, apache_version):
|
|
||||||
if not openssl_version.strip():
|
|
||||||
raise Exception("No OpenSSL version found.")
|
|
||||||
if not apache_version.strip():
|
|
||||||
raise Exception("No Apache version found.")
|
|
||||||
conf_file_location = "/etc/letsencrypt/options-ssl-apache.conf"
|
|
||||||
with open(conf_file_location) as f:
|
|
||||||
contents = f.read()
|
|
||||||
if util.parse_loose_version(apache_version.strip()) < util.parse_loose_version('2.4.11') or \
|
|
||||||
util.parse_loose_version(openssl_version.strip()) < util.parse_loose_version('1.0.2l'):
|
|
||||||
# should be old version
|
|
||||||
# assert SSLSessionTickets not in conf file
|
|
||||||
if "SSLSessionTickets" in contents:
|
|
||||||
raise Exception("Apache or OpenSSL version is too old, "
|
|
||||||
"but SSLSessionTickets is set.")
|
|
||||||
else:
|
|
||||||
# should be current version
|
|
||||||
# assert SSLSessionTickets in conf file
|
|
||||||
if "SSLSessionTickets" not in contents:
|
|
||||||
raise Exception("Apache and OpenSSL versions are sufficiently new, "
|
|
||||||
"but SSLSessionTickets is not set.")
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
main(*sys.argv[1:])
|
|
||||||
+1
-2
@@ -9,14 +9,13 @@ setup(
|
|||||||
author='Certbot Project',
|
author='Certbot Project',
|
||||||
author_email='certbot-dev@eff.org',
|
author_email='certbot-dev@eff.org',
|
||||||
license='Apache License 2.0',
|
license='Apache License 2.0',
|
||||||
python_requires='>=3.9.2',
|
python_requires='>=3.10',
|
||||||
classifiers=[
|
classifiers=[
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'Intended Audience :: Developers',
|
'Intended Audience :: Developers',
|
||||||
'License :: OSI Approved :: Apache Software License',
|
'License :: OSI Approved :: Apache Software License',
|
||||||
'Programming Language :: Python',
|
'Programming Language :: Python',
|
||||||
'Programming Language :: Python :: 3',
|
'Programming Language :: Python :: 3',
|
||||||
'Programming Language :: Python :: 3.9',
|
|
||||||
'Programming Language :: Python :: 3.10',
|
'Programming Language :: Python :: 3.10',
|
||||||
'Programming Language :: Python :: 3.11',
|
'Programming Language :: Python :: 3.11',
|
||||||
'Programming Language :: Python :: 3.12',
|
'Programming Language :: Python :: 3.12',
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
Python 3.9 support was removed.
|
||||||
@@ -21,11 +21,9 @@
|
|||||||
# from dateutil. See https://github.com/dateutil/dateutil/issues/1314.
|
# from dateutil. See https://github.com/dateutil/dateutil/issues/1314.
|
||||||
# 4) Planning to remove support for checking OCSP via OpenSSL binary.
|
# 4) Planning to remove support for checking OCSP via OpenSSL binary.
|
||||||
# See https://github.com/certbot/certbot/issues/10291.
|
# See https://github.com/certbot/certbot/issues/10291.
|
||||||
# 5) Ignore our own DeprecationWarning about Python 3.9 soon to be dropped.
|
|
||||||
filterwarnings =
|
filterwarnings =
|
||||||
error
|
error
|
||||||
ignore:.*rsyncdir:DeprecationWarning
|
ignore:.*rsyncdir:DeprecationWarning
|
||||||
ignore:'urllib3.contrib.pyopenssl:DeprecationWarning:requests_toolbelt
|
ignore:'urllib3.contrib.pyopenssl:DeprecationWarning:requests_toolbelt
|
||||||
ignore:.*datetime.utcfromtimestamp\(\) is deprecated:DeprecationWarning:dateutil
|
ignore:.*datetime.utcfromtimestamp\(\) is deprecated:DeprecationWarning:dateutil
|
||||||
ignore:enforce_openssl_binary_usage parameter is deprecated:DeprecationWarning
|
ignore:enforce_openssl_binary_usage parameter is deprecated:DeprecationWarning
|
||||||
ignore:Python 3.9 support will be dropped:DeprecationWarning
|
|
||||||
|
|||||||
@@ -6,11 +6,7 @@ authors = ["Certbot Project"]
|
|||||||
license = "Apache License 2.0"
|
license = "Apache License 2.0"
|
||||||
|
|
||||||
[tool.poetry.dependencies]
|
[tool.poetry.dependencies]
|
||||||
# python 3.9.2 is used as a lower bound here because newer versions of
|
python = "^3.10"
|
||||||
# cryptography dropped support for python 3.9.0 and 3.9.1. see
|
|
||||||
# https://github.com/pyca/cryptography/pull/12045. when we drop support for
|
|
||||||
# python 3.9 altogether, this line can be changed to the simpler 'python = "^3.10"'.
|
|
||||||
python = ">=3.9.2,<4.0"
|
|
||||||
|
|
||||||
# Local dependencies
|
# Local dependencies
|
||||||
# Any local packages that have dependencies on other local packages must be
|
# Any local packages that have dependencies on other local packages must be
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ license = "Apache License 2.0"
|
|||||||
[tool.poetry.dependencies]
|
[tool.poetry.dependencies]
|
||||||
# The Python version here should be kept in sync with the one used in our
|
# The Python version here should be kept in sync with the one used in our
|
||||||
# oldest tests in tox.ini.
|
# oldest tests in tox.ini.
|
||||||
python = "<3.10 >= 3.9.2"
|
python = "<3.11 >= 3.10"
|
||||||
|
|
||||||
# Local dependencies
|
# Local dependencies
|
||||||
# Any local packages that have dependencies on other local packages must be
|
# Any local packages that have dependencies on other local packages must be
|
||||||
|
|||||||
+1
-1
@@ -116,7 +116,7 @@ def _check_version(version_str):
|
|||||||
|
|
||||||
version = (int(search.group(1)), int(search.group(2)))
|
version = (int(search.group(1)), int(search.group(2)))
|
||||||
|
|
||||||
if version >= (3, 9):
|
if version >= (3, 10):
|
||||||
return True
|
return True
|
||||||
|
|
||||||
print('Incompatible python version for Certbot found: {0}'.format(version_str))
|
print('Incompatible python version for Certbot found: {0}'.format(version_str))
|
||||||
|
|||||||
@@ -52,10 +52,10 @@ commands =
|
|||||||
commands =
|
commands =
|
||||||
{[base]pytest} acme certbot certbot-dns-cloudflare certbot-dns-digitalocean certbot-dns-dnsimple certbot-dns-dnsmadeeasy certbot-dns-gehirn certbot-dns-google certbot-dns-linode certbot-dns-luadns certbot-dns-nsone certbot-dns-ovh certbot-dns-rfc2136 certbot-dns-route53 certbot-dns-sakuracloud certbot-nginx certbot-apache
|
{[base]pytest} acme certbot certbot-dns-cloudflare certbot-dns-digitalocean certbot-dns-dnsimple certbot-dns-dnsmadeeasy certbot-dns-gehirn certbot-dns-google certbot-dns-linode certbot-dns-luadns certbot-dns-nsone certbot-dns-ovh certbot-dns-rfc2136 certbot-dns-route53 certbot-dns-sakuracloud certbot-nginx certbot-apache
|
||||||
|
|
||||||
[testenv:py3{,9,10,11,12,13}]
|
[testenv:py3{,10,11,12,13}]
|
||||||
commands = {[testenv:py]commands}
|
commands = {[testenv:py]commands}
|
||||||
|
|
||||||
[testenv:py3.{9,10,11,12,13}]
|
[testenv:py3.{10,11,12,13}]
|
||||||
commands = {[testenv:py]commands}
|
commands = {[testenv:py]commands}
|
||||||
|
|
||||||
[testenv:oldest]
|
[testenv:oldest]
|
||||||
@@ -65,7 +65,7 @@ commands = {[testenv:py]commands}
|
|||||||
#
|
#
|
||||||
# This version should be kept in sync with the one declared in
|
# This version should be kept in sync with the one declared in
|
||||||
# tools/pinning/oldest/pyproject.toml.
|
# tools/pinning/oldest/pyproject.toml.
|
||||||
basepython = python3.9
|
basepython = python3.10
|
||||||
setenv = CERTBOT_OLDEST=1
|
setenv = CERTBOT_OLDEST=1
|
||||||
commands = {[testenv:py]commands}
|
commands = {[testenv:py]commands}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user