From 9b4b99f3e800513b13ccf40511ac73a8ed19b877 Mon Sep 17 00:00:00 2001 From: Brad Warren Date: Thu, 24 Aug 2023 17:05:54 -0700 Subject: [PATCH 1/2] Update dependencies (#9754) This takes care of the dependabot alerts those with access can see at https://github.com/certbot/certbot/security/dependabot. Pinning back `cython` is needed because without it, our full test suite will fail when trying to build `pyyaml` on ARM systems. --- tools/oldest_constraints.txt | 58 ++++++++--------- tools/pinning/current/pyproject.toml | 6 +- tools/pinning/oldest/pyproject.toml | 6 +- tools/requirements.txt | 97 ++++++++++++++-------------- 4 files changed, 88 insertions(+), 79 deletions(-) diff --git a/tools/oldest_constraints.txt b/tools/oldest_constraints.txt index 9f98981d8..fe3dcd52d 100644 --- a/tools/oldest_constraints.txt +++ b/tools/oldest_constraints.txt @@ -2,11 +2,11 @@ # that script. apacheconfig==0.3.2 ; python_full_version < "3.8.0" and python_version >= "3.7" asn1crypto==0.24.0 ; python_full_version >= "3.7.0" and python_full_version < "3.8.0" -astroid==2.15.5 ; python_full_version >= "3.7.2" and python_full_version < "3.8.0" +astroid==2.15.6 ; python_full_version >= "3.7.2" and python_full_version < "3.8.0" boto3==1.15.15 ; python_full_version < "3.8.0" and python_version >= "3.7" botocore==1.18.15 ; python_full_version < "3.8.0" and python_version >= "3.7" cachetools==5.3.1 ; python_version >= "3.7" and python_full_version < "3.8.0" -certifi==2023.5.7 ; python_full_version < "3.8.0" and python_version >= "3.7" +certifi==2023.7.22 ; python_full_version < "3.8.0" and python_version >= "3.7" cffi==1.11.5 ; python_full_version < "3.8.0" and python_version >= "3.7" chardet==3.0.4 ; python_full_version < "3.8.0" and python_version >= "3.7" cloudflare==1.5.1 ; python_full_version < "3.8.0" and python_version >= "3.7" @@ -15,22 +15,22 @@ configargparse==1.5.3 ; python_full_version < "3.8.0" and python_version >= "3.7 configobj==5.0.6 ; python_full_version < "3.8.0" and python_version >= "3.7" coverage==7.2.7 ; python_version >= "3.7" and python_full_version < "3.8.0" cryptography==3.2.1 ; python_full_version < "3.8.0" and python_version >= "3.7" -cython==0.29.35 ; python_full_version >= "3.7.0" and python_full_version < "3.8.0" -dill==0.3.6 ; python_full_version >= "3.7.2" and python_full_version < "3.8.0" -distlib==0.3.6 ; python_version >= "3.7" and python_full_version < "3.8.0" +cython==0.29.36 ; python_full_version >= "3.7.0" and python_full_version < "3.8.0" +dill==0.3.7 ; python_full_version >= "3.7.2" and python_full_version < "3.8.0" +distlib==0.3.7 ; python_version >= "3.7" and python_full_version < "3.8.0" distro==1.0.1 ; python_full_version < "3.8.0" and python_version >= "3.7" dns-lexicon==3.2.1 ; python_full_version < "3.8.0" and python_version >= "3.7" dnspython==1.15.0 ; python_full_version < "3.8.0" and python_version >= "3.7" -exceptiongroup==1.1.1 ; python_version >= "3.7" and python_full_version < "3.8.0" -execnet==1.9.0 ; python_version >= "3.7" and python_full_version < "3.8.0" -filelock==3.12.1 ; python_version >= "3.7" and python_full_version < "3.8.0" +exceptiongroup==1.1.3 ; python_version >= "3.7" and python_full_version < "3.8.0" +execnet==2.0.2 ; python_version >= "3.7" and python_full_version < "3.8.0" +filelock==3.12.2 ; python_version >= "3.7" and python_full_version < "3.8.0" funcsigs==0.4 ; python_full_version >= "3.7.0" and python_full_version < "3.8.0" future==0.18.3 ; python_full_version < "3.8.0" and python_version >= "3.7" google-api-python-client==1.6.5 ; python_full_version < "3.8.0" and python_version >= "3.7" google-auth==2.16.0 ; python_full_version < "3.8.0" and python_version >= "3.7" httplib2==0.9.2 ; python_full_version < "3.8.0" and python_version >= "3.7" idna==2.6 ; python_full_version < "3.8.0" and python_version >= "3.7" -importlib-metadata==6.6.0 ; python_version >= "3.7" and python_version < "3.8" +importlib-metadata==6.7.0 ; python_version >= "3.7" and python_version < "3.8" iniconfig==2.0.0 ; python_version >= "3.7" and python_full_version < "3.8.0" ipaddress==1.0.16 ; python_full_version >= "3.7.0" and python_full_version < "3.8.0" isort==5.11.5 ; python_full_version >= "3.7.2" and python_full_version < "3.8.0" @@ -40,33 +40,33 @@ lazy-object-proxy==1.9.0 ; python_full_version >= "3.7.2" and python_full_versio logger==1.4 ; python_full_version < "3.8.0" and python_version >= "3.7" mccabe==0.7.0 ; python_full_version >= "3.7.2" and python_full_version < "3.8.0" mypy-extensions==1.0.0 ; python_version >= "3.7" and python_full_version < "3.8.0" -mypy==1.3.0 ; python_version >= "3.7" and python_full_version < "3.8.0" +mypy==1.4.1 ; python_version >= "3.7" and python_full_version < "3.8.0" ndg-httpsclient==0.3.2 ; python_full_version >= "3.7.0" and python_full_version < "3.8.0" oauth2client==4.1.3 ; python_full_version < "3.8.0" and python_version >= "3.7" packaging==23.1 ; python_version >= "3.7" and python_full_version < "3.8.0" parsedatetime==2.4 ; python_full_version < "3.8.0" and python_version >= "3.7" pbr==1.8.0 ; python_full_version >= "3.7.0" and python_full_version < "3.8.0" -pip==23.1.2 ; python_version >= "3.7" and python_full_version < "3.8.0" -platformdirs==3.5.3 ; python_full_version < "3.8.0" and python_version >= "3.7" -pluggy==1.0.0 ; python_version >= "3.7" and python_full_version < "3.8.0" +pip==23.2.1 ; python_version >= "3.7" and python_full_version < "3.8.0" +platformdirs==3.10.0 ; python_full_version < "3.8.0" and python_version >= "3.7" +pluggy==1.2.0 ; python_version >= "3.7" and python_full_version < "3.8.0" ply==3.4 ; python_full_version < "3.8.0" and python_version >= "3.7" py==1.11.0 ; python_version >= "3.7" and python_full_version < "3.8.0" pyasn1-modules==0.3.0 ; python_full_version < "3.8.0" and python_version >= "3.7" pyasn1==0.4.8 ; python_full_version < "3.8.0" and python_version >= "3.7" pycparser==2.14 ; python_full_version < "3.8.0" and python_version >= "3.7" -pylint==2.17.4 ; python_full_version >= "3.7.2" and python_full_version < "3.8.0" +pylint==2.17.5 ; python_full_version >= "3.7.2" and python_full_version < "3.8.0" pyopenssl==17.5.0 ; python_full_version < "3.8.0" and python_version >= "3.7" pyparsing==2.2.1 ; python_full_version < "3.8.0" and python_version >= "3.7" pyrfc3339==1.0 ; python_full_version < "3.8.0" and python_version >= "3.7" pytest-cov==4.1.0 ; python_version >= "3.7" and python_full_version < "3.8.0" pytest-xdist==3.3.1 ; python_version >= "3.7" and python_full_version < "3.8.0" -pytest==7.3.2 ; python_version >= "3.7" and python_full_version < "3.8.0" +pytest==7.4.0 ; python_version >= "3.7" and python_full_version < "3.8.0" python-augeas==0.5.0 ; python_full_version < "3.8.0" and python_version >= "3.7" python-dateutil==2.8.2 ; python_full_version < "3.8.0" and python_version >= "3.7" python-digitalocean==1.11 ; python_full_version < "3.8.0" and python_version >= "3.7" pytz==2019.3 ; python_full_version < "3.8.0" and python_version >= "3.7" pywin32==306 ; python_version >= "3.7" and python_full_version < "3.8.0" and sys_platform == "win32" -pyyaml==6.0 ; python_full_version < "3.8.0" and python_version >= "3.7" +pyyaml==6.0.1 ; python_full_version < "3.8.0" and python_version >= "3.7" requests-file==1.5.1 ; python_version >= "3.7" and python_full_version < "3.8.0" requests==2.20.0 ; python_full_version < "3.8.0" and python_version >= "3.7" rsa==4.9 ; python_full_version < "3.8.0" and python_version >= "3.7" @@ -75,24 +75,24 @@ setuptools==41.6.0 ; python_full_version < "3.8.0" and python_version >= "3.7" six==1.11.0 ; python_full_version < "3.8.0" and python_version >= "3.7" tldextract==3.4.4 ; python_version >= "3.7" and python_full_version < "3.8.0" tomli==2.0.1 ; python_full_version < "3.8.0" and python_version >= "3.7" -tomlkit==0.11.8 ; python_full_version >= "3.7.2" and python_full_version < "3.8.0" +tomlkit==0.12.1 ; python_full_version >= "3.7.2" and python_full_version < "3.8.0" tox==1.9.2 ; python_version >= "3.7" and python_full_version < "3.8.0" -typed-ast==1.5.4 ; python_version < "3.8" and python_version >= "3.7" +typed-ast==1.5.5 ; python_version < "3.8" and python_version >= "3.7" types-cryptography==3.3.23.2 ; python_version >= "3.7" and python_full_version < "3.8.0" -types-httplib2==0.22.0.1 ; python_version >= "3.7" and python_full_version < "3.8.0" +types-httplib2==0.22.0.2 ; python_version >= "3.7" and python_full_version < "3.8.0" types-pyopenssl==23.0.0.0 ; python_version >= "3.7" and python_full_version < "3.8.0" -types-pyrfc3339==1.1.1.4 ; python_version >= "3.7" and python_full_version < "3.8.0" -types-python-dateutil==2.8.19.13 ; python_version >= "3.7" and python_full_version < "3.8.0" -types-pytz==2023.3.0.0 ; python_version >= "3.7" and python_full_version < "3.8.0" -types-pywin32==306.0.0.2 ; python_version >= "3.7" and python_full_version < "3.8.0" -types-requests==2.31.0.1 ; python_version >= "3.7" and python_full_version < "3.8.0" -types-setuptools==67.8.0.0 ; python_version >= "3.7" and python_full_version < "3.8.0" -types-six==1.16.21.8 ; python_version >= "3.7" and python_full_version < "3.8.0" -types-urllib3==1.26.25.13 ; python_version >= "3.7" and python_full_version < "3.8.0" -typing-extensions==4.6.3 ; python_version < "3.8" and python_version >= "3.7" +types-pyrfc3339==1.1.1.5 ; python_version >= "3.7" and python_full_version < "3.8.0" +types-python-dateutil==2.8.19.14 ; python_version >= "3.7" and python_full_version < "3.8.0" +types-pytz==2023.3.0.1 ; python_version >= "3.7" and python_full_version < "3.8.0" +types-pywin32==306.0.0.4 ; python_version >= "3.7" and python_full_version < "3.8.0" +types-requests==2.31.0.2 ; python_version >= "3.7" and python_full_version < "3.8.0" +types-setuptools==68.1.0.0 ; python_version >= "3.7" and python_full_version < "3.8.0" +types-six==1.16.21.9 ; python_version >= "3.7" and python_full_version < "3.8.0" +types-urllib3==1.26.25.14 ; python_version >= "3.7" and python_full_version < "3.8.0" +typing-extensions==4.7.1 ; python_version < "3.8" and python_version >= "3.7" uritemplate==3.0.1 ; python_full_version < "3.8.0" and python_version >= "3.7" urllib3==1.24.2 ; python_full_version < "3.8.0" and python_version >= "3.7" -virtualenv==20.23.0 ; python_version >= "3.7" and python_full_version < "3.8.0" +virtualenv==20.24.3 ; python_version >= "3.7" and python_full_version < "3.8.0" wheel==0.33.6 ; python_full_version < "3.8.0" and python_version >= "3.7" wrapt==1.15.0 ; python_full_version >= "3.7.2" and python_full_version < "3.8.0" zipp==3.15.0 ; python_version >= "3.7" and python_version < "3.8" diff --git a/tools/pinning/current/pyproject.toml b/tools/pinning/current/pyproject.toml index dd5b68c0b..44d5dc9d1 100644 --- a/tools/pinning/current/pyproject.toml +++ b/tools/pinning/current/pyproject.toml @@ -41,7 +41,11 @@ windows-installer = {path = "../../../windows-installer"} # https://discuss.python.org/t/how-to-pin-build-dependencies/8238), we list it # as a dependency here to ensure a version of cython is pinned for extra # stability. -cython = "*" +# +# We also pin back cython as is currently required by pyyaml. See +# https://github.com/yaml/pyyaml/pull/702 and +# https://github.com/yaml/pyyaml/issues/601. +cython = "<3.0" # setuptools-rust is a build dependency of cryptography, and since we don't have # a great way of pinning build dependencies, we simply list it here to ensure a # working version. Note: if build dependencies of setuptools-rust break at some diff --git a/tools/pinning/oldest/pyproject.toml b/tools/pinning/oldest/pyproject.toml index 7063e7d0b..540ee6ac4 100644 --- a/tools/pinning/oldest/pyproject.toml +++ b/tools/pinning/oldest/pyproject.toml @@ -87,7 +87,11 @@ urllib3 = "1.24.2" # build dependencies here to ensure they're pinned for extra stability. # cython is a build dependency of pyyaml -cython = "*" +# +# We also pin back cython as is currently required by pyyaml. See +# https://github.com/yaml/pyyaml/pull/702 and +# https://github.com/yaml/pyyaml/issues/601. +cython = "<3.0" # Other dependencies # We add any dependencies that must be specified in this file for any another diff --git a/tools/requirements.txt b/tools/requirements.txt index 5c24f2d69..c02b82313 100644 --- a/tools/requirements.txt +++ b/tools/requirements.txt @@ -10,7 +10,7 @@ apacheconfig==0.3.2 ; python_version >= "3.7" and python_version < "4.0" appnope==0.1.3 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "darwin" astroid==2.13.5 ; python_full_version >= "3.7.2" and python_version < "4.0" attrs==23.1.0 ; python_version >= "3.7" and python_version < "4.0" -azure-core==1.27.1 ; python_version >= "3.7" and python_version < "4.0" +azure-core==1.29.3 ; python_version >= "3.7" and python_version < "4.0" azure-devops==7.1.0b3 ; python_version >= "3.7" and python_version < "4.0" babel==2.12.1 ; python_version >= "3.7" and python_version < "4.0" backcall==0.2.0 ; python_version >= "3.7" and python_version < "4.0" @@ -18,40 +18,41 @@ backports-cached-property==1.0.2 ; python_version >= "3.7" and python_version < bcrypt==4.0.1 ; python_version >= "3.7" and python_version < "4.0" beautifulsoup4==4.12.2 ; python_version >= "3.7" and python_version < "4.0" bleach==6.0.0 ; python_version >= "3.7" and python_version < "4.0" -boto3==1.26.162 ; python_version >= "3.7" and python_version < "4.0" -botocore==1.29.162 ; python_version >= "3.7" and python_version < "4.0" +boto3==1.27.1 ; python_version >= "3.7" and python_version < "4.0" +botocore==1.30.1 ; python_version >= "3.7" and python_version < "4.0" cachecontrol==0.12.14 ; python_version >= "3.7" and python_version < "4.0" cachetools==5.3.1 ; python_version >= "3.7" and python_version < "4.0" cachy==0.3.0 ; python_version >= "3.7" and python_version < "4.0" -certifi==2023.5.7 ; python_version >= "3.7" and python_version < "4.0" +certifi==2023.7.22 ; python_version >= "3.7" and python_version < "4.0" cffi==1.15.1 ; python_version >= "3.7" and python_version < "4.0" -charset-normalizer==3.1.0 ; python_version >= "3.7" and python_version < "4.0" +charset-normalizer==3.2.0 ; python_version >= "3.7" and python_version < "4.0" cleo==1.0.0a5 ; python_version >= "3.7" and python_version < "4.0" -cloudflare==2.11.6 ; python_version >= "3.7" and python_version < "4.0" +cloudflare==2.11.7 ; python_version >= "3.7" and python_version < "4.0" colorama==0.4.6 ; python_version < "4.0" and sys_platform == "win32" and python_version >= "3.7" or python_version >= "3.7" and python_version < "4.0" and platform_system == "Windows" -configargparse==1.5.5 ; python_version >= "3.7" and python_version < "4.0" +configargparse==1.7 ; python_version >= "3.7" and python_version < "4.0" configobj==5.0.8 ; python_version >= "3.7" and python_version < "4.0" coverage==7.2.7 ; python_version >= "3.7" and python_version < "4.0" crashtest==0.3.1 ; python_version >= "3.7" and python_version < "4.0" -cryptography==41.0.1 ; python_version >= "3.7" and python_version < "4.0" -cython==0.29.35 ; python_version >= "3.7" and python_version < "4.0" +cryptography==41.0.3 ; python_version >= "3.7" and python_version < "4.0" +cython==0.29.36 ; python_version >= "3.7" and python_version < "4.0" decorator==5.1.1 ; python_version >= "3.7" and python_version < "4.0" -dill==0.3.6 ; python_full_version >= "3.7.2" and python_version < "4.0" -distlib==0.3.6 ; python_version >= "3.7" and python_version < "4.0" +deprecated==1.2.14 ; python_version >= "3.7" and python_version < "4.0" +dill==0.3.7 ; python_full_version >= "3.7.2" and python_version < "4.0" +distlib==0.3.7 ; python_version >= "3.7" and python_version < "4.0" distro==1.8.0 ; python_version >= "3.7" and python_version < "4.0" -dns-lexicon==3.12.0 ; python_version >= "3.7" and python_version < "4.0" +dns-lexicon==3.13.0 ; python_version >= "3.7" and python_version < "4.0" dnspython==2.3.0 ; python_version >= "3.7" and python_version < "4.0" docutils==0.18.1 ; python_version >= "3.7" and python_version < "4.0" dulwich==0.20.50 ; python_version >= "3.7" and python_version < "4.0" -exceptiongroup==1.1.1 ; python_version >= "3.7" and python_version < "3.11" -execnet==1.9.0 ; python_version >= "3.7" and python_version < "4.0" -fabric==3.1.0 ; python_version >= "3.7" and python_version < "4.0" +exceptiongroup==1.1.3 ; python_version >= "3.7" and python_version < "3.11" +execnet==2.0.2 ; python_version >= "3.7" and python_version < "4.0" +fabric==3.2.1 ; python_version >= "3.7" and python_version < "4.0" filelock==3.12.2 ; python_version >= "3.7" and python_version < "4.0" google-api-core==2.11.1 ; python_version >= "3.7" and python_version < "4.0" -google-api-python-client==2.90.0 ; python_version >= "3.7" and python_version < "4.0" +google-api-python-client==2.97.0 ; python_version >= "3.7" and python_version < "4.0" google-auth-httplib2==0.1.0 ; python_version >= "3.7" and python_version < "4.0" -google-auth==2.21.0 ; python_version >= "3.7" and python_version < "4.0" -googleapis-common-protos==1.59.1 ; python_version >= "3.7" and python_version < "4.0" +google-auth==2.22.0 ; python_version >= "3.7" and python_version < "4.0" +googleapis-common-protos==1.60.0 ; python_version >= "3.7" and python_version < "4.0" html5lib==1.1 ; python_version >= "3.7" and python_version < "4.0" httplib2==0.22.0 ; python_version >= "3.7" and python_version < "4.0" idna==3.4 ; python_version >= "3.7" and python_version < "4.0" @@ -59,19 +60,19 @@ imagesize==1.4.1 ; python_version >= "3.7" and python_version < "4.0" importlib-metadata==4.13.0 ; python_version >= "3.7" and python_version < "4.0" importlib-resources==5.12.0 ; python_version >= "3.7" and python_version < "3.9" iniconfig==2.0.0 ; python_version >= "3.7" and python_version < "4.0" -invoke==2.1.3 ; python_version >= "3.7" and python_version < "4.0" +invoke==2.2.0 ; python_version >= "3.7" and python_version < "4.0" ipdb==0.13.13 ; python_version >= "3.7" and python_version < "4.0" ipython==7.34.0 ; python_version >= "3.7" and python_version < "4.0" isodate==0.6.1 ; python_version >= "3.7" and python_version < "4.0" isort==5.11.5 ; python_full_version >= "3.7.2" and python_version < "4.0" jaraco-classes==3.2.3 ; python_version >= "3.7" and python_version < "4.0" -jedi==0.18.2 ; python_version >= "3.7" and python_version < "4.0" +jedi==0.19.0 ; python_version >= "3.7" and python_version < "4.0" jeepney==0.8.0 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "linux" jinja2==3.1.2 ; python_version >= "3.7" and python_version < "4.0" jmespath==1.0.1 ; python_version >= "3.7" and python_version < "4.0" josepy==1.13.0 ; python_version >= "3.7" and python_version < "4.0" jsonlines==3.1.0 ; python_version >= "3.7" and python_version < "4.0" -jsonpickle==3.0.1 ; python_version >= "3.7" and python_version < "4.0" +jsonpickle==3.0.2 ; python_version >= "3.7" and python_version < "4.0" jsonschema==4.17.3 ; python_version >= "3.7" and python_version < "4.0" keyring==24.1.1 ; python_version >= "3.7" and python_version < "4.0" lazy-object-proxy==1.9.0 ; python_full_version >= "3.7.2" and python_version < "4.0" @@ -88,12 +89,12 @@ mypy-extensions==1.0.0 ; python_version >= "3.7" and python_version < "4.0" mypy==1.4.1 ; python_version >= "3.7" and python_version < "4.0" oauthlib==3.2.2 ; python_version >= "3.7" and python_version < "4.0" packaging==23.1 ; python_version >= "3.7" and python_version < "4.0" -paramiko==3.2.0 ; python_version >= "3.7" and python_version < "4.0" +paramiko==3.3.1 ; python_version >= "3.7" and python_version < "4.0" parsedatetime==2.6 ; python_version >= "3.7" and python_version < "4.0" parso==0.8.3 ; python_version >= "3.7" and python_version < "4.0" pexpect==4.8.0 ; python_version >= "3.7" and python_version < "4.0" pickleshare==0.7.5 ; python_version >= "3.7" and python_version < "4.0" -pip==23.1.2 ; python_version >= "3.7" and python_version < "4.0" +pip==23.2.1 ; python_version >= "3.7" and python_version < "4.0" pkginfo==1.9.6 ; python_version >= "3.7" and python_version < "4.0" pkgutil-resolve-name==1.3.10 ; python_version >= "3.7" and python_version < "3.9" platformdirs==2.6.2 ; python_version < "4.0" and python_version >= "3.7" @@ -102,20 +103,20 @@ ply==3.11 ; python_version >= "3.7" and python_version < "4.0" poetry-core==1.3.2 ; python_version >= "3.7" and python_version < "4.0" poetry-plugin-export==1.2.0 ; python_version >= "3.7" and python_version < "4.0" poetry==1.2.2 ; python_version >= "3.7" and python_version < "4.0" -prompt-toolkit==3.0.38 ; python_version >= "3.7" and python_version < "4.0" -protobuf==4.23.3 ; python_version >= "3.7" and python_version < "4.0" +prompt-toolkit==3.0.39 ; python_version >= "3.7" and python_version < "4.0" +protobuf==4.24.1 ; python_version >= "3.7" and python_version < "4.0" ptyprocess==0.7.0 ; python_version >= "3.7" and python_version < "4.0" py==1.11.0 ; python_version >= "3.7" and python_version < "4.0" pyasn1-modules==0.3.0 ; python_version >= "3.7" and python_version < "4.0" pyasn1==0.5.0 ; python_version >= "3.7" and python_version < "4.0" pycparser==2.21 ; python_version >= "3.7" and python_version < "4.0" -pygments==2.15.1 ; python_version >= "3.7" and python_version < "4.0" +pygments==2.16.1 ; python_version >= "3.7" and python_version < "4.0" pylev==1.4.0 ; python_version >= "3.7" and python_version < "4.0" pylint==2.15.5 ; python_full_version >= "3.7.2" and python_version < "4.0" pynacl==1.5.0 ; python_version >= "3.7" and python_version < "4.0" pynsist==2.7 ; python_version >= "3.7" and python_version < "4.0" pyopenssl==23.2.0 ; python_version >= "3.7" and python_version < "4.0" -pyparsing==3.1.0 ; python_version >= "3.7" and python_version < "4.0" +pyparsing==3.1.1 ; python_version >= "3.7" and python_version < "4.0" pyrfc3339==1.1 ; python_version >= "3.7" and python_version < "4.0" pyrsistent==0.19.3 ; python_version >= "3.7" and python_version < "4.0" pytest-cov==4.1.0 ; python_version >= "3.7" and python_version < "4.0" @@ -127,7 +128,7 @@ python-digitalocean==1.17.0 ; python_version >= "3.7" and python_version < "4.0" pytz==2023.3 ; python_version >= "3.7" and python_version < "4.0" pywin32-ctypes==0.2.2 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "win32" pywin32==306 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "win32" -pyyaml==6.0 ; python_version >= "3.7" and python_version < "4.0" +pyyaml==6.0.1 ; python_version >= "3.7" and python_version < "4.0" readme-renderer==37.3 ; python_version >= "3.7" and python_version < "4.0" requests-download==0.1.2 ; python_version >= "3.7" and python_version < "4.0" requests-file==1.5.1 ; python_version >= "3.7" and python_version < "4.0" @@ -135,18 +136,18 @@ requests-oauthlib==1.3.1 ; python_version >= "3.7" and python_version < "4.0" requests-toolbelt==0.9.1 ; python_version >= "3.7" and python_version < "4.0" requests==2.31.0 ; python_version >= "3.7" and python_version < "4.0" rfc3986==2.0.0 ; python_version >= "3.7" and python_version < "4.0" -rich==13.4.2 ; python_version >= "3.7" and python_version < "4.0" +rich==13.5.2 ; python_version >= "3.7" and python_version < "4.0" rsa==4.9 ; python_version >= "3.7" and python_version < "4" -s3transfer==0.6.1 ; python_version >= "3.7" and python_version < "4.0" +s3transfer==0.6.2 ; python_version >= "3.7" and python_version < "4.0" secretstorage==3.3.3 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "linux" semantic-version==2.10.0 ; python_version >= "3.7" and python_version < "4.0" -setuptools-rust==1.6.0 ; python_version >= "3.7" and python_version < "4.0" +setuptools-rust==1.7.0 ; python_version >= "3.7" and python_version < "4.0" setuptools==67.4.0 ; python_version >= "3.7" and python_version < "4.0" -shellingham==1.5.0.post1 ; python_version >= "3.7" and python_version < "4.0" +shellingham==1.5.3 ; python_version >= "3.7" and python_version < "4.0" six==1.16.0 ; python_version >= "3.7" and python_version < "4.0" snowballstemmer==2.2.0 ; python_version >= "3.7" and python_version < "4.0" soupsieve==2.4.1 ; python_version >= "3.7" and python_version < "4.0" -sphinx-rtd-theme==1.2.2 ; python_version >= "3.7" and python_version < "4.0" +sphinx-rtd-theme==1.3.0 ; python_version >= "3.7" and python_version < "4.0" sphinx==5.3.0 ; python_version >= "3.7" and python_version < "4.0" sphinxcontrib-applehelp==1.0.2 ; python_version >= "3.7" and python_version < "4.0" sphinxcontrib-devhelp==1.0.2 ; python_version >= "3.7" and python_version < "4.0" @@ -157,29 +158,29 @@ sphinxcontrib-qthelp==1.0.3 ; python_version >= "3.7" and python_version < "4.0" sphinxcontrib-serializinghtml==1.1.5 ; python_version >= "3.7" and python_version < "4.0" tldextract==3.4.4 ; python_version >= "3.7" and python_version < "4.0" tomli==2.0.1 ; python_version >= "3.7" and python_full_version <= "3.11.0a6" -tomlkit==0.11.8 ; python_version < "4.0" and python_version >= "3.7" +tomlkit==0.12.1 ; python_version < "4.0" and python_version >= "3.7" tox==3.28.0 ; python_version >= "3.7" and python_version < "4.0" traitlets==5.9.0 ; python_version >= "3.7" and python_version < "4.0" twine==4.0.2 ; python_version >= "3.7" and python_version < "4.0" -typed-ast==1.5.4 ; python_version < "3.8" and python_version >= "3.7" -types-httplib2==0.22.0.1 ; python_version >= "3.7" and python_version < "4.0" -types-pyopenssl==23.2.0.1 ; python_version >= "3.7" and python_version < "4.0" -types-pyrfc3339==1.1.1.4 ; python_version >= "3.7" and python_version < "4.0" -types-python-dateutil==2.8.19.13 ; python_version >= "3.7" and python_version < "4.0" -types-pytz==2023.3.0.0 ; python_version >= "3.7" and python_version < "4.0" -types-pywin32==306.0.0.2 ; python_version >= "3.7" and python_version < "4.0" -types-requests==2.31.0.1 ; python_version >= "3.7" and python_version < "4.0" -types-setuptools==68.0.0.0 ; python_version >= "3.7" and python_version < "4.0" -types-six==1.16.21.8 ; python_version >= "3.7" and python_version < "4.0" -types-urllib3==1.26.25.13 ; python_version >= "3.7" and python_version < "4.0" -typing-extensions==4.6.3 ; python_version >= "3.7" and python_version < "4.0" +typed-ast==1.5.5 ; python_version < "3.8" and python_version >= "3.7" +types-httplib2==0.22.0.2 ; python_version >= "3.7" and python_version < "4.0" +types-pyopenssl==23.2.0.2 ; python_version >= "3.7" and python_version < "4.0" +types-pyrfc3339==1.1.1.5 ; python_version >= "3.7" and python_version < "4.0" +types-python-dateutil==2.8.19.14 ; python_version >= "3.7" and python_version < "4.0" +types-pytz==2023.3.0.1 ; python_version >= "3.7" and python_version < "4.0" +types-pywin32==306.0.0.4 ; python_version >= "3.7" and python_version < "4.0" +types-requests==2.31.0.2 ; python_version >= "3.7" and python_version < "4.0" +types-setuptools==68.1.0.0 ; python_version >= "3.7" and python_version < "4.0" +types-six==1.16.21.9 ; python_version >= "3.7" and python_version < "4.0" +types-urllib3==1.26.25.14 ; python_version >= "3.7" and python_version < "4.0" +typing-extensions==4.7.1 ; python_version >= "3.7" and python_version < "4.0" uritemplate==4.1.1 ; python_version >= "3.7" and python_version < "4.0" urllib3==1.26.16 ; python_version >= "3.7" and python_version < "4.0" virtualenv==20.21.1 ; python_version >= "3.7" and python_version < "4.0" wcwidth==0.2.6 ; python_version >= "3.7" and python_version < "4.0" webencodings==0.5.1 ; python_version >= "3.7" and python_version < "4.0" -wheel==0.40.0 ; python_version >= "3.7" and python_version < "4.0" -wrapt==1.15.0 ; python_full_version >= "3.7.2" and python_version < "4.0" +wheel==0.41.2 ; python_version >= "3.7" and python_version < "4.0" +wrapt==1.15.0 ; python_version < "4.0" and python_version >= "3.7" xattr==0.9.9 ; python_version >= "3.7" and python_version < "4.0" and sys_platform == "darwin" yarg==0.1.9 ; python_version >= "3.7" and python_version < "4.0" zipp==3.15.0 ; python_version >= "3.7" and python_version < "4.0" From 579b39dce17843239a18cd3d759019c639537edd Mon Sep 17 00:00:00 2001 From: Brad Warren Date: Fri, 25 Aug 2023 12:22:14 -0700 Subject: [PATCH 2/2] Fix docs (#9755) * update quickstart and remove os import * simplify theme use * list sphinx_rtd_theme as extension Our docs builds failed last night, presumably because #9754 updated `sphinx_rtd_theme` which changed some unknown thing. Looking into it, our usage of this project was very unconventional. Following the code comment I deleted in this PR to https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally, simple instructions are given to put the following in your `conf.py` file: ``` extensions = [ ... 'sphinx_rtd_theme', ] html_theme = "sphinx_rtd_theme" ``` I did this instead of the more complicated logic we were using and all builds passed locally. I also triggered a build on readthedocs with these changes which also passed. --- acme/docs/conf.py | 10 ++-------- certbot-dns-cloudflare/docs/conf.py | 14 ++++---------- certbot-dns-digitalocean/docs/conf.py | 14 ++++---------- certbot-dns-dnsimple/docs/conf.py | 14 ++++---------- certbot-dns-dnsmadeeasy/docs/conf.py | 14 ++++---------- certbot-dns-gehirn/docs/conf.py | 14 ++++---------- certbot-dns-google/docs/conf.py | 12 +++--------- certbot-dns-linode/docs/conf.py | 14 ++++---------- certbot-dns-luadns/docs/conf.py | 14 ++++---------- certbot-dns-nsone/docs/conf.py | 14 ++++---------- certbot-dns-ovh/docs/conf.py | 14 ++++---------- certbot-dns-rfc2136/docs/conf.py | 14 ++++---------- certbot-dns-route53/docs/conf.py | 14 ++++---------- certbot-dns-sakuracloud/docs/conf.py | 14 ++++---------- certbot/docs/conf.py | 10 ++-------- tools/sphinx-quickstart.sh | 5 ++--- 16 files changed, 57 insertions(+), 148 deletions(-) diff --git a/acme/docs/conf.py b/acme/docs/conf.py index facb88a0a..b94294bd0 100644 --- a/acme/docs/conf.py +++ b/acme/docs/conf.py @@ -37,6 +37,7 @@ extensions = [ 'sphinx.ext.todo', 'sphinx.ext.coverage', 'sphinx.ext.viewcode', + 'sphinx_rtd_theme', ] autodoc_member_order = 'bysource' @@ -122,14 +123,7 @@ todo_include_todos = False # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot-dns-cloudflare/docs/conf.py b/certbot-dns-cloudflare/docs/conf.py index 5fe7a6542..66b5ee88d 100644 --- a/certbot-dns-cloudflare/docs/conf.py +++ b/certbot-dns-cloudflare/docs/conf.py @@ -16,7 +16,7 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -import os +# import os # import sys # sys.path.insert(0, os.path.abspath('.')) @@ -35,7 +35,8 @@ extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', - 'sphinx.ext.viewcode'] + 'sphinx.ext.viewcode', + 'sphinx_rtd_theme'] autodoc_member_order = 'bysource' autodoc_default_flags = ['show-inheritance'] @@ -93,14 +94,7 @@ todo_include_todos = False # a list of builtin themes. # -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot-dns-digitalocean/docs/conf.py b/certbot-dns-digitalocean/docs/conf.py index 6ec61754e..694dbcfb4 100644 --- a/certbot-dns-digitalocean/docs/conf.py +++ b/certbot-dns-digitalocean/docs/conf.py @@ -16,7 +16,7 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -import os +# import os # import sys # sys.path.insert(0, os.path.abspath('.')) @@ -35,7 +35,8 @@ extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', - 'sphinx.ext.viewcode'] + 'sphinx.ext.viewcode', + 'sphinx_rtd_theme'] autodoc_member_order = 'bysource' autodoc_default_flags = ['show-inheritance'] @@ -93,14 +94,7 @@ todo_include_todos = False # a list of builtin themes. # -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot-dns-dnsimple/docs/conf.py b/certbot-dns-dnsimple/docs/conf.py index b22296cec..88358e63f 100644 --- a/certbot-dns-dnsimple/docs/conf.py +++ b/certbot-dns-dnsimple/docs/conf.py @@ -16,7 +16,7 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -import os +# import os # import sys # sys.path.insert(0, os.path.abspath('.')) @@ -35,7 +35,8 @@ extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', - 'sphinx.ext.viewcode'] + 'sphinx.ext.viewcode', + 'sphinx_rtd_theme'] autodoc_member_order = 'bysource' autodoc_default_flags = ['show-inheritance'] @@ -93,14 +94,7 @@ todo_include_todos = False # a list of builtin themes. # -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot-dns-dnsmadeeasy/docs/conf.py b/certbot-dns-dnsmadeeasy/docs/conf.py index 1f9ccd50c..c6c445ebb 100644 --- a/certbot-dns-dnsmadeeasy/docs/conf.py +++ b/certbot-dns-dnsmadeeasy/docs/conf.py @@ -16,7 +16,7 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -import os +# import os # import sys # sys.path.insert(0, os.path.abspath('.')) @@ -35,7 +35,8 @@ extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', - 'sphinx.ext.viewcode'] + 'sphinx.ext.viewcode', + 'sphinx_rtd_theme'] autodoc_member_order = 'bysource' autodoc_default_flags = ['show-inheritance'] @@ -93,14 +94,7 @@ todo_include_todos = False # a list of builtin themes. # -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot-dns-gehirn/docs/conf.py b/certbot-dns-gehirn/docs/conf.py index b0aea2258..1a18fa64a 100644 --- a/certbot-dns-gehirn/docs/conf.py +++ b/certbot-dns-gehirn/docs/conf.py @@ -16,7 +16,7 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -import os +# import os # import sys # sys.path.insert(0, os.path.abspath('.')) @@ -35,7 +35,8 @@ extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', - 'sphinx.ext.viewcode'] + 'sphinx.ext.viewcode', + 'sphinx_rtd_theme'] autodoc_member_order = 'bysource' autodoc_default_flags = ['show-inheritance'] @@ -93,14 +94,7 @@ todo_include_todos = False # a list of builtin themes. # -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot-dns-google/docs/conf.py b/certbot-dns-google/docs/conf.py index 7f8bed7eb..99732880a 100644 --- a/certbot-dns-google/docs/conf.py +++ b/certbot-dns-google/docs/conf.py @@ -35,7 +35,8 @@ extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', - 'sphinx.ext.viewcode'] + 'sphinx.ext.viewcode', + 'sphinx_rtd_theme'] autodoc_member_order = 'bysource' autodoc_default_flags = ['show-inheritance'] @@ -93,14 +94,7 @@ todo_include_todos = False # a list of builtin themes. # -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot-dns-linode/docs/conf.py b/certbot-dns-linode/docs/conf.py index 0778ce1b6..99c899fc1 100644 --- a/certbot-dns-linode/docs/conf.py +++ b/certbot-dns-linode/docs/conf.py @@ -16,7 +16,7 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -import os +# import os # import sys # sys.path.insert(0, os.path.abspath('.')) @@ -35,7 +35,8 @@ extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', - 'sphinx.ext.viewcode'] + 'sphinx.ext.viewcode', + 'sphinx_rtd_theme'] autodoc_member_order = 'bysource' autodoc_default_flags = ['show-inheritance'] @@ -93,14 +94,7 @@ todo_include_todos = False # a list of builtin themes. # -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot-dns-luadns/docs/conf.py b/certbot-dns-luadns/docs/conf.py index 13a920f6b..060310572 100644 --- a/certbot-dns-luadns/docs/conf.py +++ b/certbot-dns-luadns/docs/conf.py @@ -16,7 +16,7 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -import os +# import os # import sys # sys.path.insert(0, os.path.abspath('.')) @@ -35,7 +35,8 @@ extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', - 'sphinx.ext.viewcode'] + 'sphinx.ext.viewcode', + 'sphinx_rtd_theme'] autodoc_member_order = 'bysource' autodoc_default_flags = ['show-inheritance'] @@ -93,14 +94,7 @@ todo_include_todos = False # a list of builtin themes. # -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot-dns-nsone/docs/conf.py b/certbot-dns-nsone/docs/conf.py index d0939d6c6..ce5c26eba 100644 --- a/certbot-dns-nsone/docs/conf.py +++ b/certbot-dns-nsone/docs/conf.py @@ -16,7 +16,7 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -import os +# import os # import sys # sys.path.insert(0, os.path.abspath('.')) @@ -35,7 +35,8 @@ extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', - 'sphinx.ext.viewcode'] + 'sphinx.ext.viewcode', + 'sphinx_rtd_theme'] autodoc_member_order = 'bysource' autodoc_default_flags = ['show-inheritance'] @@ -93,14 +94,7 @@ todo_include_todos = False # a list of builtin themes. # -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot-dns-ovh/docs/conf.py b/certbot-dns-ovh/docs/conf.py index 7f2035420..797cb0a30 100644 --- a/certbot-dns-ovh/docs/conf.py +++ b/certbot-dns-ovh/docs/conf.py @@ -16,7 +16,7 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -import os +# import os # import sys # sys.path.insert(0, os.path.abspath('.')) @@ -35,7 +35,8 @@ extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', - 'sphinx.ext.viewcode'] + 'sphinx.ext.viewcode', + 'sphinx_rtd_theme'] autodoc_member_order = 'bysource' autodoc_default_flags = ['show-inheritance'] @@ -93,14 +94,7 @@ todo_include_todos = False # a list of builtin themes. # -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot-dns-rfc2136/docs/conf.py b/certbot-dns-rfc2136/docs/conf.py index 70b888b02..1f88078cf 100644 --- a/certbot-dns-rfc2136/docs/conf.py +++ b/certbot-dns-rfc2136/docs/conf.py @@ -16,7 +16,7 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -import os +# import os # import sys # sys.path.insert(0, os.path.abspath('.')) @@ -35,7 +35,8 @@ extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', - 'sphinx.ext.viewcode'] + 'sphinx.ext.viewcode', + 'sphinx_rtd_theme'] autodoc_member_order = 'bysource' autodoc_default_flags = ['show-inheritance'] @@ -93,14 +94,7 @@ todo_include_todos = False # a list of builtin themes. # -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot-dns-route53/docs/conf.py b/certbot-dns-route53/docs/conf.py index 7f9a7384d..fe348a438 100644 --- a/certbot-dns-route53/docs/conf.py +++ b/certbot-dns-route53/docs/conf.py @@ -16,7 +16,7 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -import os +# import os # import sys # sys.path.insert(0, os.path.abspath('.')) @@ -35,7 +35,8 @@ extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', - 'sphinx.ext.viewcode'] + 'sphinx.ext.viewcode', + 'sphinx_rtd_theme'] autodoc_member_order = 'bysource' autodoc_default_flags = ['show-inheritance'] @@ -93,14 +94,7 @@ todo_include_todos = False # a list of builtin themes. # -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot-dns-sakuracloud/docs/conf.py b/certbot-dns-sakuracloud/docs/conf.py index 2c329870e..ca9edccaa 100644 --- a/certbot-dns-sakuracloud/docs/conf.py +++ b/certbot-dns-sakuracloud/docs/conf.py @@ -16,7 +16,7 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -import os +# import os # import sys # sys.path.insert(0, os.path.abspath('.')) @@ -35,7 +35,8 @@ extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', - 'sphinx.ext.viewcode'] + 'sphinx.ext.viewcode', + 'sphinx_rtd_theme'] autodoc_member_order = 'bysource' autodoc_default_flags = ['show-inheritance'] @@ -93,14 +94,7 @@ todo_include_todos = False # a list of builtin themes. # -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/certbot/docs/conf.py b/certbot/docs/conf.py index 5102e7a1e..508fcbe81 100644 --- a/certbot/docs/conf.py +++ b/certbot/docs/conf.py @@ -45,6 +45,7 @@ extensions = [ 'sphinx.ext.todo', 'sphinx.ext.coverage', 'sphinx.ext.viewcode', + 'sphinx_rtd_theme', ] if sphinx.version_info >= (1, 6): @@ -133,14 +134,7 @@ suppress_warnings = ['image.nonlocal_uri'] # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally -# on_rtd is whether we are on readthedocs.org -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' -if not on_rtd: # only import and set the theme if we're building docs locally - import sphinx_rtd_theme - html_theme = 'sphinx_rtd_theme' - html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] -# otherwise, readthedocs.org uses their theme by default, so no need to specify it +html_theme = 'sphinx_rtd_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the diff --git a/tools/sphinx-quickstart.sh b/tools/sphinx-quickstart.sh index 8da323aa1..92222db15 100755 --- a/tools/sphinx-quickstart.sh +++ b/tools/sphinx-quickstart.sh @@ -7,13 +7,12 @@ fi PROJECT=$1 -yes "n" | sphinx-quickstart --dot _ --project $PROJECT --author "Certbot Project" -v 0 --release 0 --language en --suffix .rst --master index --ext-autodoc --ext-intersphinx --ext-todo --ext-coverage --ext-viewcode --makefile --batchfile $PROJECT/docs +yes "n" | sphinx-quickstart --dot _ --project $PROJECT --author "Certbot Project" -v 0 --release 0 --language en --suffix .rst --master index --ext-autodoc --ext-intersphinx --ext-todo --ext-coverage --ext-viewcode --extensions sphinx_rtd_theme --makefile --batchfile $PROJECT/docs cd $PROJECT/docs -sed -i -e "s|\# import os|import os|" conf.py sed -i -e "s|\# needs_sphinx = '1.0'|needs_sphinx = '1.0'|" conf.py sed -i -e "s|intersphinx_mapping = {'https://docs.python.org/': None}|intersphinx_mapping = {\n 'python': ('https://docs.python.org/', None),\n 'acme': ('https://acme-python.readthedocs.org/en/latest/', None),\n 'certbot': ('https://eff-certbot.readthedocs.io/en/stable/', None),\n}|" conf.py -sed -i -e "s|html_theme = 'alabaster'|\n# https://docs.readthedocs.io/en/stable/faq.html#i-want-to-use-the-read-the-docs-theme-locally\n# on_rtd is whether we are on readthedocs.org\non_rtd = os.environ.get('READTHEDOCS', None) == 'True'\nif not on_rtd: # only import and set the theme if we're building docs locally\n import sphinx_rtd_theme\n html_theme = 'sphinx_rtd_theme'\n html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]\n# otherwise, readthedocs.org uses their theme by default, so no need to specify it|" conf.py +sed -i -e "s|html_theme = 'alabaster'|html_theme = 'sphinx_rtd_theme'|" conf.py sed -i -e "s|# Add any paths that contain templates here, relative to this directory.|autodoc_member_order = 'bysource'\nautodoc_default_flags = ['show-inheritance']\n\n# Add any paths that contain templates here, relative to this directory.|" conf.py sed -i -e "s|# The name of the Pygments (syntax highlighting) style to use.|default_role = 'py:obj'\n\n# The name of the Pygments (syntax highlighting) style to use.|" conf.py # If the --ext-todo flag is removed from sphinx-quickstart, the line below can be removed.