diff --git a/.circleci/config.yml b/.circleci/config.yml index 8d8fa1777..a9b5ce727 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -65,19 +65,21 @@ jobs: steps: - run-tox: version: py38 + sphinx-version: "17,18,20,21,22,23,24,30,31,32,33,34,35,40,41,42,43,44,45,50,51,52,60,latest" py39: docker: - image: 'cimg/python:3.9' steps: - run-tox: version: py39 + sphinx-version: "17,18,20,21,22,23,24,30,31,32,33,34,35,40,41,42,43,44,45,50,51,52,60,latest" py310: docker: - image: 'cimg/python:3.10' steps: - run-tox: version: py310 - sphinx-version: "42,43,44,45,50,51,52,latest" + sphinx-version: "42,43,44,45,50,51,52,60,latest" workflows: version: 2 diff --git a/docs/requirements.txt b/docs/requirements.txt index aaa922b78..7424b7ebd 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1 +1 @@ -sphinx>=3.0 +sphinx==6.0.0 diff --git a/setup.cfg b/setup.cfg index f5cf4779b..2effb74d5 100644 --- a/setup.cfg +++ b/setup.cfg @@ -44,8 +44,9 @@ zip_safe = False packages = sphinx_rtd_theme python_requires = >=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.* install_requires = - sphinx >=1.6,<6 + sphinx >=1.6,<7 docutils <0.19 + sphinxcontrib-jquery >=3.0.0 tests_require = pytest diff --git a/src/theme.js b/src/theme.js index 504fa642b..db546b4a3 100644 --- a/src/theme.js +++ b/src/theme.js @@ -1,3 +1,4 @@ +// jQuery is included via the sphinxcontrib-jquery extension that we depend on var jQuery = (typeof(window) != 'undefined') ? window.jQuery : require('jquery'); // Sphinx theme nav state diff --git a/tox.ini b/tox.ini index 1fcc90055..a2a6ced17 100644 --- a/tox.ini +++ b/tox.ini @@ -2,12 +2,14 @@ envlist = # Python 2.7 support was removed in Sphinx 2 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,latest}{-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}{-html4,-html5,latest}{-qa,} + py{310}-sphinx{42,43,44,45,50,51,52,latest}{-html4,-html5}{-qa,} + # Sphinx 6+ has simplified docutils and Python support + py{38,39,10}-sphinx{60}{-html5,}{-qa,} [testenv] -setev = +setenv = LANG=C deps = . @@ -35,6 +37,7 @@ deps = sphinx50: Sphinx>=5.0,<5.1 sphinx51: Sphinx>=5.1,<5.2 sphinx52: Sphinx>=5.2,<5.3 + sphinx60: Sphinx==6.0.0 # 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