From 0763576a36684d458a4cb0a07af55cbc7ee46b2c Mon Sep 17 00:00:00 2001 From: "Michael R. Crusoe" <1330696+mr-c@users.noreply.github.com> Date: Wed, 4 Jan 2023 16:21:01 +0100 Subject: [PATCH] support Python 3.11 with Sphinx 5.3+ (#1395) * support Python 3.11 with Sphinx 5.3+ * Update tox.ini Co-authored-by: Michael R. Crusoe <1330696+mr-c@users.noreply.github.com> Co-authored-by: Benjamin Balder Bach Co-authored-by: Benjamin Balder Bach --- .circleci/config.yml | 12 +++++++++++- docs/changelog.rst | 2 ++ setup.cfg | 3 ++- tox.ini | 7 +++++-- 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index a9b5ce727..dccc3e83b 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -79,13 +79,23 @@ jobs: steps: - run-tox: version: py310 - sphinx-version: "42,43,44,45,50,51,52,60,latest" + sphinx-version: "42,43,44,45,50,51,52,53,60,latest" + py311: + docker: + - image: 'cimg/python:3.11' + steps: + - run-tox: + version: py311 + sphinx-version: "53,60,latest" workflows: version: 2 tests: jobs: - build + - py311: + requires: + - build - py310: requires: - build diff --git a/docs/changelog.rst b/docs/changelog.rst index 419102871..d6e8c3df4 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -13,6 +13,8 @@ Dependency Changes ------------------ * docutils 0.18 is supported. (#1381) +* Python 3.11 is officially supported and tested. (#1395) +* Python 3.4 and 3.5 are officially not supported (#1395) Note for users of Sphinx<3 -------------------------- diff --git a/setup.cfg b/setup.cfg index 2effb74d5..ff461db8c 100644 --- a/setup.cfg +++ b/setup.cfg @@ -34,6 +34,7 @@ classifiers = Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 Programming Language :: Python :: 3.10 + Programming Language :: Python :: 3.11 Operating System :: OS Independent Topic :: Documentation Topic :: Software Development :: Documentation @@ -42,7 +43,7 @@ classifiers = include_package_data = True zip_safe = False packages = sphinx_rtd_theme -python_requires = >=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.* +python_requires = >=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.* install_requires = sphinx >=1.6,<7 docutils <0.19 diff --git a/tox.ini b/tox.ini index a2a6ced17..5f9fa7ca6 100644 --- a/tox.ini +++ b/tox.ini @@ -4,9 +4,11 @@ envlist = py{27}-sphinx{17,18}{-html4,-html5,}{-qa,} py{36,37,38,39}-sphinx{17,18,20,21,22,23,24,30,31,32,33,34,35,40,41,42,43,44,45,50,51,52}{-html4,-html5,}{-qa,} # Python 3.10 working from Sphinx 4.2 and up - py{310}-sphinx{42,43,44,45,50,51,52,latest}{-html4,-html5}{-qa,} + py{310}-sphinx{42,43,44,45,50,51,52,53,latest}{-html4,-html5}{-qa,} # Sphinx 6+ has simplified docutils and Python support py{38,39,10}-sphinx{60}{-html5,}{-qa,} + # Python 3.11 working from Sphinx 5.3 and up + py{311}-sphinx{53,60,latest}{html5}{-qa,} [testenv] setenv = @@ -37,7 +39,8 @@ deps = sphinx50: Sphinx>=5.0,<5.1 sphinx51: Sphinx>=5.1,<5.2 sphinx52: Sphinx>=5.2,<5.3 - sphinx60: Sphinx==6.0.0 + sphinx53: Sphinx>=5.3,<5.4 + sphinx60: Sphinx>=6.0,<6.1 # All these Sphinx versions actually break since docutils 0.18, so we need to add this upper bound # Projects using these Sphinx versions will have to do the same # See: https://github.com/readthedocs/sphinx_rtd_theme/pull/1304